html{--mat-sys-background: light-dark(#fff8f2, #17130a);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#faefdf, #353025);--mat-sys-inverse-primary: light-dark(#f6be1f, #785a00);--mat-sys-inverse-surface: light-dark(#353025, #ece1d1);--mat-sys-on-background: light-dark(#201b11, #ece1d1);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #3f2e00);--mat-sys-on-primary-container: light-dark(#5a4300, #ffdf9a);--mat-sys-on-primary-fixed: light-dark(#251a00, #251a00);--mat-sys-on-primary-fixed-variant: light-dark(#5a4300, #5a4300);--mat-sys-on-secondary: light-dark(#ffffff, #3f2e00);--mat-sys-on-secondary-container: light-dark(#59440d, #ffdf9a);--mat-sys-on-secondary-fixed: light-dark(#251a00, #251a00);--mat-sys-on-secondary-fixed-variant: light-dark(#59440d, #59440d);--mat-sys-on-surface: light-dark(#201b11, #ece1d1);--mat-sys-on-surface-variant: light-dark(#4f4633, #efe1c7);--mat-sys-on-tertiary: light-dark(#ffffff, #3f2e00);--mat-sys-on-tertiary-container: light-dark(#5a4300, #ffdf9a);--mat-sys-on-tertiary-fixed: light-dark(#251a00, #251a00);--mat-sys-on-tertiary-fixed-variant: light-dark(#5a4300, #5a4300);--mat-sys-outline: light-dark(#817660, #9b8f79);--mat-sys-outline-variant: light-dark(#d3c5ac, #4f4633);--mat-sys-primary: light-dark(#785a00, #f6be1f);--mat-sys-primary-container: light-dark(#ffdf9a, #5a4300);--mat-sys-primary-fixed: light-dark(#ffdf9a, #ffdf9a);--mat-sys-primary-fixed-dim: light-dark(#f6be1f, #f6be1f);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#725b23, #e2c380);--mat-sys-secondary-container: light-dark(#ffdf9a, #59440d);--mat-sys-secondary-fixed: light-dark(#ffdf9a, #ffdf9a);--mat-sys-secondary-fixed-dim: light-dark(#e2c380, #e2c380);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fff8f2, #17130a);--mat-sys-surface-bright: light-dark(#fff8f2, #3e382d);--mat-sys-surface-container: light-dark(#f7ecdc, #241f15);--mat-sys-surface-container-high: light-dark(#f2e7d7, #2f291f);--mat-sys-surface-container-highest: light-dark(#ece1d1, #3a3429);--mat-sys-surface-container-low: light-dark(#fdf2e2, #201b11);--mat-sys-surface-container-lowest: light-dark(#ffffff, #120e05);--mat-sys-surface-dim: light-dark(#e3d9c9, #17130a);--mat-sys-surface-tint: light-dark(#785a00, #f6be1f);--mat-sys-surface-variant: light-dark(#efe1c7, #4f4633);--mat-sys-tertiary: light-dark(#785a00, #f6be1f);--mat-sys-tertiary-container: light-dark(#ffdf9a, #5a4300);--mat-sys-tertiary-fixed: light-dark(#ffdf9a, #ffdf9a);--mat-sys-tertiary-fixed-dim: light-dark(#f6be1f, #f6be1f);--mat-sys-neutral-variant20: #382f1e;--mat-sys-neutral10: #201b11;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-fab-container-color: var(--tt-accent);--mat-fab-foreground-color: var(--tt-on-accent);--mat-fab-state-layer-color: var(--tt-on-accent);--mat-button-filled-container-color: var(--tt-accent);--mat-button-filled-label-text-color: var(--tt-on-accent)}:root{--tt-text: #3f2d00;--tt-text-2: #5c4300;--tt-muted: #7a5b00;--tt-ink-rgb: 122, 91, 0;--tt-paper-rgb: 255, 255, 255;--tt-paper: #fff;--tt-accent: #ffc629;--tt-on-accent: #3f2d00;--tt-card: rgba(var(--tt-paper-rgb), .85);--tt-border: rgba(var(--tt-ink-rgb), .15);--tt-field-bg: var(--tt-paper)}html.dark-theme{--tt-text: #ffe9b0;--tt-text-2: #f0d58c;--tt-muted: #d3ac52;--tt-ink-rgb: 255, 223, 155;--tt-paper-rgb: 42, 34, 12;--tt-paper: #2a220c;--tt-card: rgba(var(--tt-paper-rgb), .8);--tt-border: rgba(var(--tt-ink-rgb), .18)}html{background:linear-gradient(135deg,#fffbf5,#fff8e8,#fff5dc)}body{color-scheme:light;color:var(--mat-sys-on-surface);font:var(--mat-sys-body-medium);margin:0}html.dark-theme{color-scheme:dark;background:linear-gradient(135deg,#1a1608,#221c0c,#2a2110)}html.dark-theme body{color-scheme:dark;color:var(--tt-text)}*,*:before,*:after{box-sizing:border-box}html,body{min-height:100%;margin:0;font-family:Roboto,Helvetica Neue,sans-serif}.mat-mdc-dialog-container{--mdc-dialog-container-color: var(--tt-paper);--mdc-dialog-container-shape: 16px}.mat-mdc-dialog-surface{background:var(--tt-paper)!important;border-radius:16px!important;overflow:hidden!important}.page{max-width:1120px;margin:0 auto;padding:0 1.5rem 3rem}.page .hero{padding:3rem 0 2.5rem;max-width:760px}.page .eyebrow{margin:0 0 .75rem;font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--tt-muted)}.page h1{margin:0;font-family:"Source Serif 4",Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:600;line-height:1.08;letter-spacing:-.01em;color:var(--tt-text)}.page .lede{margin:1.25rem 0 0;max-width:620px;font-size:1.15rem;line-height:1.6;color:var(--tt-text-2)}.page .stats{display:flex;gap:2.5rem;margin:2rem 0 0}.page .stats div{display:flex;flex-direction:column-reverse}.page .stats dt{font-size:.8rem;color:var(--tt-muted)}.page .stats dd{margin:0;font-family:"Source Serif 4",Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:2rem;font-weight:600;line-height:1.15;color:var(--tt-text)}.page .controls{display:flex;flex-direction:column;gap:.75rem;padding:1rem 0;border-bottom:1px solid var(--tt-border)}.page .search-field{display:flex;align-items:center;gap:.5rem;max-width:480px;padding:0 .85rem;border:1px solid var(--tt-border);border-radius:999px;background:var(--tt-field-bg)}.page .search-field mat-icon{color:var(--tt-muted)}.page .search-field input{flex:1;min-width:0;padding:.7rem 0;border:0;outline:none;background:transparent;color:var(--tt-text);font:inherit;font-size:1rem}.page .search-field:focus-within{border-color:#ffc629cc}.page .lang-filters{display:flex;flex-wrap:wrap;gap:.4rem}.page .lang-filter{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .8rem;border:1px solid var(--tt-border);border-radius:999px;background:transparent;color:var(--tt-text-2);font:inherit;font-size:.85rem;cursor:pointer}.page .lang-filter .count{font-size:.75rem;color:var(--tt-muted)}.page .lang-filter:hover{border-color:#ffc629b3}.page .lang-filter.active{border-color:var(--tt-accent);background:var(--tt-accent);color:var(--tt-on-accent)}.page .lang-filter.active .count{color:var(--tt-on-accent);opacity:.7}.page .shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:2.25rem 1.75rem;padding:2rem 0}.page .work-card{min-width:0}.page .work-summary{display:flex;flex-direction:column;gap:.85rem;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.page .work-summary:hover .cover,.page .work-summary:focus-visible .cover{transform:translateY(-4px);box-shadow:0 12px 24px #00000038}.page .work-summary:focus-visible{outline:none}.page .work-summary:focus-visible .cover{outline:3px solid rgba(255,198,41,.8);outline-offset:3px}.page .cover{position:relative;display:flex;flex-direction:column;justify-content:center;gap:.7rem;aspect-ratio:2/3;padding:1.4rem 1rem 1.4rem 1.4rem;border-radius:3px 8px 8px 3px;background:linear-gradient(90deg,#00000047 0,#ffffff14 6%,#0000 9%),var(--cover);box-shadow:0 6px 14px #00000029;color:#f6ecd6;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.page .cover:after{content:"";position:absolute;inset:10px 10px 10px 16px;border:1px solid rgba(246,236,214,.35);border-radius:2px;pointer-events:none}.page .cover-rank{position:absolute;top:1.1rem;left:1.4rem;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;opacity:.75}.page .cover-title{font-family:"Source Serif 4",Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1.2rem;font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.page .cover-rule{width:2rem;height:2px;background:#e9c46a}.page .cover-author{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85}.page .meta{display:flex;flex-direction:column;gap:.2rem}.page .work-title{font-family:"Source Serif 4",Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1.05rem;font-weight:600;line-height:1.3;color:var(--tt-text)}.page .work-author{font-size:.85rem;color:var(--tt-muted)}.page .work-langs{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.35rem}.page .lang-chip{padding:.05rem .45rem;border-radius:999px;background:#ffc62926;color:var(--tt-text-2);font-size:.72rem}.page .state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;padding:3rem 1rem;color:var(--tt-text-2);text-align:center}.page .state mat-icon{font-size:40px;width:40px;height:40px;opacity:.6}.page .spin{animation:spin 1.5s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page .credit{padding-top:1.5rem;border-top:1px solid var(--tt-border);font-size:.85rem;color:var(--tt-muted)}.page .credit a{color:inherit}.page .section{padding:2.5rem 0;border-top:1px solid var(--tt-border)}.page .section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.page .section-head h2{margin:0;font-family:"Source Serif 4",Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:600;color:var(--tt-text)}.page .text-link{display:inline-flex;align-items:center;gap:.2rem;padding:0;border:0;background:none;color:var(--tt-text-2);font:inherit;font-weight:500;text-decoration:underline;text-decoration-color:#ffc629e6;text-decoration-thickness:2px;text-underline-offset:4px;cursor:pointer}.page .text-link mat-icon{font-size:18px;width:18px;height:18px}.page .text-link:hover{color:var(--tt-text)}@media (max-width: 600px){.page .hero{padding:1.5rem 0}.page .lede{font-size:1rem}.page .stats{gap:1.5rem}.page .stats dd{font-size:1.5rem}.page .lang-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:none}.page .lang-filter{flex-shrink:0}.page .shelf{grid-template-columns:repeat(2,1fr);gap:1.5rem 1rem}.page .cover{padding:1.6rem 1.1rem 1.2rem 1.6rem;gap:.5rem}.page .cover-rank{top:1rem;left:1.6rem;font-size:.55rem}.page .cover-title{font-size:.9rem}.page .cover-author{font-size:.6rem}}@media (display-mode: standalone){.page .hero{padding:.5rem 0 1rem}.page h1{font-size:1.6rem}.page .lede,.page .stats,.page .site-only{display:none!important}}.page .prose{max-width:720px;padding-bottom:1rem;color:var(--tt-text-2);font-size:1.02rem;line-height:1.7}.page .prose h2{margin:2.5rem 0 .75rem;font-family:"Source Serif 4",Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1.5rem;font-weight:600;line-height:1.25;color:var(--tt-text)}.page .prose h3{margin:1.75rem 0 .5rem;font-size:1.05rem;color:var(--tt-text)}.page .prose p,.page .prose ul,.page .prose ol{margin:0 0 1rem}.page .prose li+li{margin-top:.35rem}.page .prose a{color:var(--tt-text);text-decoration-color:#ffc629e6;text-decoration-thickness:2px;text-underline-offset:3px}.page .prose strong{color:var(--tt-text)}.page .prose table{width:100%;margin:0 0 1rem;border-collapse:collapse;font-size:.9rem}.page .prose table th,.page .prose table td{padding:.5rem .6rem;border-bottom:1px solid var(--tt-border);text-align:left;vertical-align:top}.page .prose table th{color:var(--tt-text);font-weight:600}.page .prose .table-scroll{overflow-x:auto}.page .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;counter-reset:step}.page .steps li{counter-increment:step;color:var(--tt-text-2);line-height:1.55}.page .steps li:before{content:counter(step);display:grid;place-items:center;width:2.2rem;height:2.2rem;margin-bottom:.75rem;border-radius:50%;background:var(--tt-accent);color:var(--tt-on-accent);font-family:"Source Serif 4",Iowan Old Style,Palatino Linotype,Georgia,serif;font-weight:600;font-size:1.1rem}.page .steps li strong{display:block;margin-bottom:.25rem;color:var(--tt-text);font-size:1.05rem}@media (max-width: 600px){.page{padding:0 1rem 2rem}}
