@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/instrument-sans-latin.6219bc4bfd-CclBWeUS.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/instrument-sans-latin-ext.21fac8da55-oUstOPQL.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/assets/source-serif-4-latin.2a24bad466-DuZxYNfE.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/assets/source-serif-4-latin-ext.c9299a7160-BMOY6OSg.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/jetbrains-mono-latin.2c32b9b3ee-Db4Uuiha.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/jetbrains-mono-latin-ext.9c38cb2d0d-Bnd2h4Br.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--font-sans: "Instrument Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif: "Source Serif 4", ui-serif, Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1.0625rem;--text-lg: clamp(1.0625rem, .99rem + .31vw, 1.1875rem);--text-h3: 1.25rem;--text-h2: clamp(1.75rem, 1.21rem + 2.25vw, 2.5rem);--text-h1: clamp(2.125rem, 1.14rem + 4.1vw, 3.4rem);--leading-tight: 1.08;--leading-snug: 1.3;--leading-body: 1.6;--track-h1: -.03em;--track-h2: -.03em;--track-h3: -.05em;--track-label: .12em;--forest: 158.7 58.5% 10.4%;--forest-line: 157.7 47.9% 14.3%;--forest-text-muted: 95 9% 70%;--cream: 52 34.9% 91.6%;--lime: 73.5 86.3% 68.6%;--paper: 0 0% 100%;--paper-line: 49.1 18% 88%;--paper-muted: 51.4 25.9% 94.7%;--paper-text: 158 58% 10%;--paper-text-muted: 155 13% 35%;--ok: 160 58% 28%;--no: 0 0% 62%;--part: 40 95% 38%;--content: 69rem;--measure: 46ch;--gutter: 16px;--band-pad: clamp(3rem, 1.8rem + 5vw, 5.5rem);--rule: 1px;--header-h: 74px}@media (max-width: 639px){:root{--text-h1: clamp(1.4rem, 8.5vw - 2.8px, 2.125rem)}}@media (min-width: 640px){:root{--gutter: 24px}}@media (min-width: 1024px){:root{--gutter: 32px}}:root{--canvas: 48 24% 96.5%;--card: 0 0% 100%;--ink: var(--paper-text);--ink-2: var(--paper-text-muted);--ink-3: 150 7% 54%;--line: var(--paper-line);--line-2: 48 14% 82%;--hover: 48 24% 93%;--ok-soft: 152 48% 94%;--bad: 2 64% 46%;--bad-soft: 5 85% 96.5%;--warn: 40 92% 46%;--warn-soft: 46 96% 91%;--radius-lg: 18px;--radius: 14px;--radius-md: 10px;--radius-sm: 7px;--shadow-sm: 0 1px 2px hsl(160 40% 12% / .05);--shadow-md: 0 1px 2px hsl(160 40% 12% / .04), 0 10px 28px -14px hsl(160 40% 12% / .24);--shadow-lg: 0 28px 70px -24px hsl(160 40% 8% / .45);--ease: cubic-bezier(.2, .8, .2, 1);--spring: cubic-bezier(.34, 1.45, .64, 1);--fast: .14s;--sidebar: 252px;--topbar: 56px;--tabbar: 62px;--pad: 16px}@media (min-width: 640px){:root{--pad: 24px}}@media (min-width: 1280px){:root{--pad: 40px}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;color-scheme:light;-webkit-tap-highlight-color:transparent}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;background:hsl(var(--canvas));color:hsl(var(--ink));-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;font-weight:500;line-height:1.2;color:hsl(var(--ink))}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}dl,dt,dd{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{max-width:100%;height:auto}svg{width:1em;height:1em;flex:none}:where(a,button,input,summary,[tabindex]):focus-visible{outline:2px solid hsl(var(--forest));outline-offset:2px}.on-forest :where(a,button):focus-visible{outline-color:hsl(var(--lime))}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.stack{display:flex;flex-direction:column;gap:var(--gap, 1rem);min-width:0}.hstack{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap, .75rem);min-width:0}.spread{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.grow{flex:1 1 auto;min-width:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nowrap{white-space:nowrap}.clamp-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.center{text-align:center}.title{font-size:clamp(1.625rem,1.3rem + 1.2vw,2rem);letter-spacing:-.03em;line-height:1.12}.h2{font-size:1.125rem;letter-spacing:-.02em}.h3{font-size:1rem;letter-spacing:-.01em}.muted{color:hsl(var(--ink-2))}.fine{font-size:var(--text-sm);color:hsl(var(--ink-2));line-height:1.5}.tiny{font-size:var(--text-xs);color:hsl(var(--ink-2))}.ink{color:hsl(var(--ink))}.num{font-variant-numeric:tabular-nums}.eyebrow{font-size:var(--text-sm);font-weight:500;color:hsl(var(--ink-2))}.shell{min-height:100dvh}@media (min-width: 1024px){.shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}}.shell__main{min-width:0;display:flex;flex-direction:column;min-height:100dvh}.sidebar{display:none;view-transition-name:sidebar}@media (min-width: 1024px){.sidebar{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem .875rem 1rem;background:hsl(var(--forest));color:hsl(var(--cream));overflow-y:auto}}.sidebar__brand{padding:.25rem .625rem .5rem}.sidebar__nav{display:flex;flex-direction:column;gap:2px}.sidebar__label{padding:.875rem .75rem .375rem;font-size:var(--text-xs);font-weight:500;color:hsl(var(--forest-text-muted) / .75)}.side-link{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:var(--radius-md);color:hsl(var(--forest-text-muted));font-size:.9375rem;font-weight:500;transition:background-color var(--fast) ease,color var(--fast) ease}.side-link svg{width:1.125rem;height:1.125rem}.side-link:hover{background:hsl(var(--cream) / .06);color:hsl(var(--cream))}.side-link[aria-current]{background:hsl(var(--cream) / .1);color:hsl(var(--cream))}.side-link[aria-current] .side-link__icon{color:hsl(var(--lime))}.side-link__icon{display:inline-grid;place-items:center;width:1.5rem}.side-link .tile{--tile-size: 1.5rem;border-radius:6px}.side-link__count{margin-inline-start:auto;font-size:var(--text-xs);color:hsl(var(--forest-text-muted) / .8)}.sidebar__foot{margin-top:auto;display:flex;flex-direction:column;gap:.5rem}.sidebar__account{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border-radius:var(--radius-md);color:hsl(var(--cream));min-width:0;transition:background-color var(--fast) ease}.sidebar__account:hover{background:hsl(var(--cream) / .06)}.sidebar__account .tiny{color:hsl(var(--forest-text-muted))}.wordmark{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:500;letter-spacing:-.02em;flex:none}.wordmark__mark{display:inline-grid;place-items:center;width:1.625rem;height:1.625rem;border-radius:7px;background:hsl(var(--lime));color:hsl(var(--forest))}.wordmark__mark svg{display:block;width:72%;height:72%}.avatar{display:inline-grid;place-items:center;width:2rem;height:2rem;flex:none;overflow:hidden;border-radius:999px;background:hsl(var(--lime));color:hsl(var(--forest));font-size:var(--text-sm);font-weight:600;line-height:1}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar--lg{width:3rem;height:3rem;font-size:1.125rem}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:.5rem;height:var(--topbar);padding-inline:calc(var(--pad) - .5rem);background:hsl(var(--canvas) / .86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);box-shadow:inset 0 -1px hsl(var(--line) / .9);view-transition-name:topbar}.topbar .wordmark{padding-inline-start:.5rem}.topbar__title{font-size:1rem;font-weight:500;letter-spacing:-.01em}.topbar__end{display:flex;align-items:center;gap:.125rem;margin-inline-start:auto}@media (min-width: 1024px){.topbar{display:none}}.tabbar{position:fixed;inset:auto 0 0 0;z-index:40;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:.375rem .25rem calc(.375rem + env(safe-area-inset-bottom));background:hsl(var(--card) / .92);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);box-shadow:inset 0 1px hsl(var(--line));view-transition-name:tabbar}@media (min-width: 1024px){.tabbar{display:none}}.tab{display:flex;flex-direction:column;align-items:center;gap:.1875rem;padding:.125rem 0;font-size:.6875rem;font-weight:500;color:hsl(var(--ink-3));min-width:0}.tab__icon{display:grid;place-items:center;width:3.25rem;height:1.875rem;border-radius:999px;transition:background-color .2s var(--ease),transform .2s var(--spring)}.tab__icon svg{width:1.25rem;height:1.25rem}.tab[aria-current]{color:hsl(var(--ink))}.tab[aria-current] .tab__icon{background:hsl(var(--lime))}.tab:active .tab__icon{transform:scale(.92)}.page{flex:1 1 auto;min-width:0;padding:clamp(1.25rem,.9rem + 1.5vw,2.5rem) var(--pad) calc(var(--tabbar) + 2.5rem + env(safe-area-inset-bottom))}@media (min-width: 1024px){.page{padding-bottom:4rem}}.page__inner{max-width:68rem;margin-inline:auto;display:flex;flex-direction:column;gap:1.75rem;min-width:0}.page__inner--narrow{max-width:46rem}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 1rem}.page-head__sub{margin-top:.375rem}.backlink{display:none;align-self:flex-start;align-items:center;gap:.375rem;margin:-.5rem 0 -.75rem -.625rem;padding:.375rem .625rem;border:0;border-radius:var(--radius-md);background:transparent;color:hsl(var(--ink-2));font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background-color var(--fast) ease,color var(--fast) ease}.backlink svg{width:1rem;height:1rem;transition:transform .2s var(--ease)}.backlink:hover{background:hsl(var(--hover));color:hsl(var(--ink))}.backlink:hover svg{transform:translate(-2px)}@media (min-width: 1024px){.backlink{display:inline-flex}}.section{display:flex;flex-direction:column;gap:.75rem;min-width:0}.section__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.notice{display:flex;align-items:center;gap:.5rem;margin:.75rem var(--pad) 0;padding:.625rem .875rem;border-radius:var(--radius-md);background:hsl(var(--warn-soft));font-size:var(--text-sm)}.notice svg{width:1rem;height:1rem}.card{background:hsl(var(--card));border-radius:var(--radius);box-shadow:0 0 0 1px hsl(var(--line)),var(--shadow-sm);min-width:0}.card--pad{padding:clamp(1.125rem,.9rem + 1vw,1.5rem)}.card--link{display:block;color:inherit;transition:box-shadow .18s var(--ease),transform .18s var(--ease),background-color var(--fast) ease}@media (hover: hover){.card--link:hover{box-shadow:0 0 0 1px hsl(var(--line-2)),var(--shadow-md);transform:translateY(-1px)}}.card--link:active{transform:scale(.985);transition-duration:80ms}.on-forest{--ink: var(--cream);--ink-2: var(--forest-text-muted);--ink-3: var(--forest-text-muted);--line: 150 30% 22%;--ok: var(--lime);--no: 95 9% 45%;--bad: 4 72% 64%;background:hsl(var(--forest));color:hsl(var(--cream))}.list{display:flex;flex-direction:column;gap:.5rem;min-width:0}.rowlink{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.875rem;padding:.875rem 1rem;color:inherit;transition:background-color var(--fast) ease}.rowlink+.rowlink{box-shadow:0 -1px hsl(var(--line))}.rowlink:first-child{border-radius:var(--radius) var(--radius) 0 0}.rowlink:last-child{border-radius:0 0 var(--radius) var(--radius)}.rowlink:only-child{border-radius:var(--radius)}@media (hover: hover){a.rowlink:hover{background:hsl(var(--hover) / .6)}}.rowlink__title{font-weight:500}.rowlink__meta{font-size:var(--text-sm);color:hsl(var(--ink-2))}.rowlink__end{display:flex;align-items:center;gap:.5rem;color:hsl(var(--ink-3))}.rowlink__end>svg{width:1.125rem;height:1.125rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.625rem;padding:.5rem 1.125rem;border:0;border-radius:var(--radius-md);background:hsl(var(--card));box-shadow:inset 0 0 0 1px hsl(var(--line-2));color:hsl(var(--ink));font-size:var(--text-base);font-weight:500;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background-color var(--fast) ease,box-shadow var(--fast) ease,transform .12s var(--ease),color var(--fast) ease}.btn:hover:not(:disabled){background:hsl(var(--hover))}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn svg{width:1.125rem;height:1.125rem}.btn--primary{background:hsl(var(--lime));box-shadow:none;color:hsl(var(--forest))}.btn--primary:hover:not(:disabled){background:#cdf250}.btn--strong{background:hsl(var(--forest));box-shadow:none;color:hsl(var(--cream))}.btn--strong:hover:not(:disabled){background:#143d2f}.btn--ghost{background:transparent;box-shadow:none;color:hsl(var(--ink-2))}.btn--ghost:hover:not(:disabled){background:hsl(var(--hover));color:hsl(var(--ink))}.btn--danger{color:hsl(var(--bad))}.on-forest .btn{background:transparent;box-shadow:inset 0 0 0 1px hsl(var(--cream) / .25);color:hsl(var(--cream))}.on-forest .btn:hover:not(:disabled){background:hsl(var(--cream) / .08)}.on-forest .btn--primary{background:hsl(var(--lime));box-shadow:none;color:hsl(var(--forest))}.on-forest .btn--primary:hover:not(:disabled){background:#cdf250}.btn--sm{min-height:2.125rem;padding:.375rem .75rem;font-size:var(--text-sm);border-radius:var(--radius-sm)}.btn--sm svg{width:1rem;height:1rem}.btn--lg{min-height:3.125rem;padding:.75rem 1.5rem;font-size:1rem;border-radius:12px}.btn--block{width:100%}.iconbtn{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;flex:none;padding:0;border:0;border-radius:999px;background:transparent;color:hsl(var(--ink-2));cursor:pointer;transition:background-color var(--fast) ease,color var(--fast) ease,transform .12s var(--ease)}.iconbtn:hover{background:hsl(var(--ink) / .06);color:hsl(var(--ink))}.iconbtn:active{transform:scale(.92)}.iconbtn[aria-current]{color:hsl(var(--ink));background:hsl(var(--ink) / .07)}.iconbtn--toggle{transition:background-color var(--fast) ease,color var(--fast) ease,transform .12s var(--ease)}.iconbtn--toggle[aria-pressed=true]{background:hsl(var(--lime));color:hsl(var(--forest))}.iconbtn--toggle[aria-pressed=true]:hover{background:hsl(var(--lime) / .8);color:hsl(var(--forest))}.iconbtn svg{width:1.25rem;height:1.25rem}.link{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:hsl(var(--ink) / .3);background:none;border:0;padding:0;cursor:pointer;font:inherit;color:inherit}.link:hover{text-decoration-color:hsl(var(--ink))}.chip{display:inline-flex;align-items:center;gap:.3rem;padding:.1875rem .5rem;border-radius:999px;background:hsl(var(--hover));color:hsl(var(--ink-2));font-size:var(--text-xs);font-weight:500;line-height:1.4;white-space:nowrap}.chip svg{width:.875rem;height:.875rem}.chip--free{background:hsl(var(--lime));color:hsl(var(--forest))}.chip--warn{background:hsl(var(--warn-soft));color:#774b0d}.chip--ok{background:hsl(var(--ok-soft));color:hsl(var(--ok))}.chip--bad{background:hsl(var(--bad-soft));color:hsl(var(--bad))}.score{display:inline-flex;align-items:center;gap:.25rem;min-width:3.125rem;justify-content:center;padding:.25rem .5rem;border-radius:999px;font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em;background:hsl(var(--ok-soft));color:hsl(var(--ok))}.score[data-tone=bad]{background:hsl(var(--bad-soft));color:hsl(var(--bad))}.score[data-tone=perfect]{background:hsl(var(--ok));color:hsl(var(--card))}.score svg{width:1.125rem;height:.9rem}.meter{display:block;height:.375rem;border-radius:999px;background:hsl(var(--ink) / .08);overflow:hidden}.meter>span{display:block;height:100%;border-radius:inherit;background:hsl(var(--ok));transform-origin:left;animation:meter-in .7s var(--ease) both}@keyframes meter-in{0%{transform:scaleX(0)}}.tabs{display:grid;grid-template-columns:repeat(var(--tabs, 2),minmax(0,1fr));gap:4px;padding:4px;border-radius:calc(var(--radius) + 2px);background:hsl(var(--ink) / .06);max-width:34rem}.tab-btn{display:flex;flex-direction:column;align-items:flex-start;gap:.125rem;min-width:0;padding:.625rem .875rem;border:0;border-radius:var(--radius-md);background:transparent;color:hsl(var(--ink-2));text-align:left;cursor:pointer;transition:background-color .2s var(--ease),color .2s var(--ease),box-shadow .2s var(--ease)}.tab-btn:hover{color:hsl(var(--ink))}.tab-btn[aria-selected=true]{background:hsl(var(--card));color:hsl(var(--ink));box-shadow:var(--shadow-md)}.tab-btn__label{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:500}.tab-btn__label .tile{--tile-size: 1.25rem;border-radius:5px}.tab-btn__meta{font-size:var(--text-xs);color:hsl(var(--ink-2))}.filters{display:flex;flex-wrap:wrap;gap:.375rem}.filter{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:0;border-radius:999px;background:transparent;box-shadow:inset 0 0 0 1px hsl(var(--line-2));color:hsl(var(--ink-2));font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background-color var(--fast) ease,color var(--fast) ease,box-shadow var(--fast) ease}.filter svg{width:1rem;height:1rem}.filter:hover{color:hsl(var(--ink))}.filter[aria-pressed=true]{background:hsl(var(--forest));box-shadow:none;color:hsl(var(--cream))}.segs{display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:3px;border-radius:var(--radius-md);background:hsl(var(--ink) / .06)}.seg{padding:.375rem .75rem;border:0;border-radius:var(--radius-sm);background:transparent;color:hsl(var(--ink-2));font-size:var(--text-sm);font-weight:500;white-space:nowrap;cursor:pointer;transition:background-color var(--fast) ease,color var(--fast) ease,box-shadow var(--fast) ease}.seg:hover{color:hsl(var(--ink))}.seg[aria-pressed=true]{background:hsl(var(--card));color:hsl(var(--ink));box-shadow:var(--shadow-md)}.switch{position:relative;flex:none;width:2.875rem;height:1.75rem;padding:0;border:0;border-radius:999px;background:hsl(var(--ink) / .14);cursor:pointer;transition:background-color .2s var(--ease)}.switch:after{content:"";position:absolute;top:3px;left:3px;width:1.375rem;height:1.375rem;border-radius:999px;background:hsl(var(--card));box-shadow:0 1px 3px #0f241d40;transition:transform .26s var(--spring),background-color .2s var(--ease)}.switch[aria-checked=true]{background:hsl(var(--lime))}.switch[aria-checked=true]:after{transform:translate(1.125rem);background:hsl(var(--forest))}.input{font:inherit;font-size:var(--text-base);padding:.625rem .875rem;border:0;border-radius:var(--radius-md);background:hsl(var(--card));box-shadow:inset 0 0 0 1px hsl(var(--line-2));color:hsl(var(--ink));min-width:0;transition:box-shadow var(--fast) ease}.input:focus{outline:none;box-shadow:inset 0 0 0 2px hsl(var(--forest))}.input::placeholder{color:hsl(var(--ink-3))}.search{position:relative;display:flex;align-items:center}.search svg{position:absolute;left:.75rem;width:1rem;height:1rem;color:hsl(var(--ink-3));pointer-events:none}.search .input{padding-left:2.25rem;width:100%}.tile{display:inline-grid;place-items:center;width:var(--tile-size, 2.5rem);height:var(--tile-size, 2.5rem);flex:none;border-radius:10px;background:hsl(var(--cream));color:var(--tile-ink, hsl(var(--forest)))}.tile svg{display:block;width:58%;height:58%}.tile--soft{background:color-mix(in srgb,var(--tile-ink, #0f3b2e) 11%,white)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:var(--pad);background:hsl(var(--forest) / .42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:fade-in .18s ease both}.dialog{width:min(26rem,100%);padding:1.5rem;border-radius:var(--radius-lg);background:hsl(var(--card));box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:.5rem;animation:pop-in .26s var(--spring) both}.dialog__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem;flex-wrap:wrap}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:scale(.94) translateY(8px)}}.empty{padding:clamp(2rem,1.5rem + 3vw,3.5rem) var(--pad);text-align:center;color:hsl(var(--ink-2));display:flex;flex-direction:column;align-items:center;gap:.5rem}.empty__title{font-size:1.0625rem;font-weight:500;color:hsl(var(--ink))}.spin{width:1.5rem;height:1.5rem;border-radius:999px;border:2.5px solid hsl(var(--ink) / .12);border-top-color:hsl(var(--forest));animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.module{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.125rem}.module__name{display:block;font-size:1.0625rem;font-weight:500;letter-spacing:-.015em}.module__meta{display:flex;align-items:center;gap:.75rem;margin-top:.375rem;font-size:var(--text-sm);color:hsl(var(--ink-2))}.module__meta .meter{flex:1 1 auto;max-width:12rem}.module__end{display:flex;align-items:center;gap:.75rem;color:hsl(var(--ink-3))}.module__end>svg{width:1.25rem;height:1.25rem;transition:transform .2s var(--ease)}@media (hover: hover){.module:hover .module__end>svg{transform:translate(3px);color:hsl(var(--ink))}}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:1rem 1.5rem}.stat{display:flex;flex-direction:column;gap:.125rem;min-width:0}.stat__v{font-size:clamp(1.375rem,1.2rem + .6vw,1.75rem);font-weight:500;letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums;color:hsl(var(--ink))}.stat__k{font-size:var(--text-sm);color:hsl(var(--ink-2))}.quiz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}@media (min-width: 640px){.quiz-grid{grid-template-columns:repeat(auto-fill,minmax(13.5rem,1fr))}}@media (max-width: 639px){.quiz-card{padding:.75rem .875rem;gap:.5rem}}.quiz-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.875rem 1rem}.quiz-card__title{font-weight:500;font-size:.9375rem;letter-spacing:-.01em}.quiz-card__meta{font-size:var(--text-sm);color:hsl(var(--ink-2))}.quiz-card[data-locked]{background:hsl(var(--card) / .6)}.quiz-card[data-locked] .quiz-card__title{color:hsl(var(--ink-2))}.lockmark{color:hsl(var(--ink-3));display:inline-grid;place-items:center}.lockmark svg{width:1.125rem;height:1.125rem}.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.topic-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.875rem;padding:.875rem 1rem}.topic-row__n{display:grid;place-items:center;min-width:2rem;height:2rem;padding-inline:.25rem;border-radius:8px;background:hsl(var(--hover));font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;color:hsl(var(--ink-2))}.topic-row__text{font-family:var(--font-serif);font-size:1rem;line-height:1.45}.topic-row[data-locked] .topic-row__text{color:hsl(var(--ink-2))}.topic-row[data-locked] .topic-row__body,.prompt__text[data-locked]{filter:blur(6px);opacity:.8;user-select:none;-webkit-user-select:none}.topic-row__body{display:grid;gap:.2rem;min-width:0}.topic-row__en{font-size:var(--text-sm);line-height:1.45;color:hsl(var(--ink-2));animation:en-in .22s var(--ease) both}.donemark{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:999px;color:hsl(var(--ink) / .18)}.donemark svg{width:1.375rem;height:1.375rem}.donemark[data-done]{background:hsl(var(--ok));color:hsl(var(--card))}.donemark[data-done] svg{width:.9375rem;height:.9375rem;stroke-width:3}.intro{display:flex;flex-direction:column;gap:1.25rem;padding:clamp(1.5rem,1rem + 2vw,2.25rem)}.intro__head{display:flex;align-items:center;gap:.875rem}.intro__facts{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}.intro__fact{display:flex;flex-direction:column}.intro__fact b{font-size:1.25rem;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.intro__actions{display:flex;flex-wrap:wrap;gap:.625rem}.intro__actions>.btn{flex:1 1 14rem}.lockbox{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:1.75rem 1.25rem;border-radius:var(--radius);background:hsl(var(--hover) / .7);text-align:center}.lockbox__icon{display:grid;place-items:center;width:2.5rem;height:2.5rem;margin-bottom:.375rem;border-radius:50%;background:hsl(var(--card));box-shadow:0 0 0 1px hsl(var(--line));color:hsl(var(--ink-2))}.lockbox__icon svg{width:1.125rem;height:1.125rem}.lockbox__title{font-size:var(--text-md);font-weight:500}.lockbox__price{font-size:var(--text-base);color:hsl(var(--ink-2))}.lockbox__nowrap{white-space:nowrap}.lockbox__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem}.lockbox__fine{max-width:30rem;margin-top:.5rem}.giftbox{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:1.75rem 1.25rem 0;border-radius:var(--radius);background:linear-gradient(180deg,hsl(var(--lime) / .3),hsl(var(--lime) / .12));box-shadow:inset 0 0 0 1px hsl(var(--lime) / .55);text-align:center;overflow:hidden}.giftbox__icon,.invite__icon{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:12px;background:hsl(var(--lime));color:hsl(var(--forest));transform:rotate(-4deg);box-shadow:0 6px 16px -8px #6a8217b3}.giftbox__icon{margin-bottom:.5rem}.giftbox__icon svg,.invite__icon svg{width:1.375rem;height:1.375rem}.giftbox__title{font-size:1.125rem;font-weight:600;letter-spacing:-.015em}.giftbox__say{max-width:25rem;color:hsl(var(--ink-2));text-wrap:balance}.giftbox__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem}.giftbox__actions:has(>:nth-child(2)){display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));width:min(22rem,100%)}.giftbox .giftbar{width:min(22rem,100%)}.giftbox__problem{margin-top:.5rem;font-size:var(--text-sm);font-weight:500;color:hsl(var(--bad))}.giftbox__or{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.25rem .5rem;align-self:stretch;margin:1.25rem -1.25rem 0;padding:.625rem 1rem;background:hsl(var(--card) / .6);box-shadow:0 -1px hsl(var(--lime) / .55);font-size:var(--text-sm);color:hsl(var(--ink-2))}.giftbar{display:grid;gap:.375rem;justify-items:center;width:min(14rem,100%);margin-top:.875rem}.giftbar .meter{width:100%}.giftmark{display:inline-grid;place-items:center;width:1.875rem;height:1.875rem;border-radius:9px;background:hsl(var(--lime));color:hsl(var(--forest));transform:rotate(-4deg)}.giftmark svg{width:1.0625rem;height:1.0625rem}.quiz-card[data-locked]:has(.giftmark){background:hsl(var(--card))}.invite{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem .875rem;padding:.875rem 1rem;background:linear-gradient(90deg,hsl(var(--lime) / .3),hsl(var(--lime) / .1));box-shadow:0 0 0 1px hsl(var(--lime) / .6),var(--shadow-sm)}.invite__text{display:flex;flex-direction:column;gap:.125rem;min-width:0}.invite__title{font-weight:600;letter-spacing:-.01em}.invite__say{font-size:var(--text-sm);color:hsl(var(--ink-2));line-height:1.45}.invite__action{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}@media (max-width: 559px){.invite{grid-template-columns:auto minmax(0,1fr)}.invite__action:has(>:nth-child(2)){grid-column:1 / -1;justify-content:stretch}.invite__action:has(>:nth-child(2))>.btn{flex:1 1 0}.invite__action:not(:has(>:nth-child(2))){grid-column:2;justify-content:flex-start}}.invite-panel{display:flex;flex-direction:column;gap:1rem;padding:clamp(1.125rem,.9rem + 1vw,1.5rem)}.invite-panel__head{display:flex;align-items:center;gap:.875rem}.invite-panel__head .invite__say{font-size:var(--text-base);color:hsl(var(--ink))}.invite-panel__link{display:flex;align-items:center;min-width:0;padding:.75rem .875rem;border-radius:var(--radius-md);background:hsl(var(--hover));box-shadow:inset 0 0 0 1px hsl(var(--line))}.invite-panel__url{font-family:var(--font-mono);font-size:var(--text-sm);color:hsl(var(--ink))}.invite-panel__actions{display:flex;flex-wrap:wrap;gap:.5rem}.invite-panel__actions>.btn{flex:1 1 10rem}.invite-panel__count{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding-top:1rem;box-shadow:0 -1px hsl(var(--line))}.invite-panel__count .giftbar{justify-items:start;margin-top:0}.picker{display:flex;flex-direction:column;margin-top:.75rem;color:hsl(var(--ink))}.picker__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem 0}.picker__row+.picker__row{box-shadow:0 -1px hsl(var(--line))}.picker__text{display:flex;flex-direction:column;min-width:0}.picker__title{font-weight:500}.picker__meta{font-size:var(--text-sm);color:hsl(var(--ink-2))}.runner{height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;background:hsl(var(--card))}.runner__top{display:flex;align-items:center;gap:.75rem;height:3.75rem;padding-inline:calc(var(--pad) - .5rem) var(--pad)}.runner__count{font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;color:hsl(var(--ink-2));min-width:3rem;text-align:right}.progress{flex:1 1 auto;display:flex;gap:3px;height:1.5rem;align-items:center;min-width:0}.progress__seg{flex:1 1 0;min-width:0;height:.4375rem;padding:0;border:0;border-radius:999px;background:hsl(var(--ink) / .1);cursor:pointer;transition:background-color .24s var(--ease),transform .24s var(--spring)}.progress__seg:hover{background:hsl(var(--ink) / .22)}.progress__seg[data-state=answered]{background:hsl(var(--forest) / .55)}.progress__seg[data-state=skipped]{background:hsl(var(--ink) / .24)}.progress__seg[data-state=correct]{background:hsl(var(--ok))}.progress__seg[data-state=wrong]{background:hsl(var(--bad))}.progress__seg[data-current]{transform:scaleY(1.75)}.progress__seg[data-current][data-state=todo]{background:hsl(var(--forest))}.runner__body{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.runner__col{max-width:42rem;margin-inline:auto;padding:clamp(1rem,4vh,3rem) var(--pad) 2rem}.runner__split{display:grid;gap:0;min-height:100%}.runner__pane{padding:clamp(1rem,.7rem + 1.6vw,2rem) var(--pad);min-width:0}@media (min-width: 1024px){.runner[data-split] .runner__body{overflow:hidden}.runner__split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:100%;min-height:0}.runner__pane{overflow-y:auto;overflow-x:hidden;height:100%;overscroll-behavior:contain}.runner__pane:first-child{background:hsl(var(--canvas))}}.runner__foot{position:relative;padding-bottom:env(safe-area-inset-bottom);box-shadow:inset 0 1px hsl(var(--line));background:hsl(var(--card));transition:background-color .22s var(--ease),box-shadow .22s var(--ease)}.runner__foot[data-tone=ok]{background:hsl(var(--ok-soft));box-shadow:none}.runner__foot[data-tone=bad]{background:hsl(var(--bad-soft));box-shadow:none}.runner__nav{display:flex;align-items:center;gap:.625rem;max-width:42rem;margin-inline:auto;padding:.75rem var(--pad)}.runner__nav .btn--strong{min-width:8.5rem}@media (min-width: 1024px){.runner[data-split] .runner__nav{max-width:none;margin-inline:50% 0;padding-inline:var(--pad)}}.feedback{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:0;animation:rise-in .28s var(--spring) both}.feedback__icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;flex:none;border-radius:999px;color:hsl(var(--card));background:hsl(var(--ok));animation:pop-in .32s var(--spring) both}.feedback__icon svg{width:1.25rem;height:1.25rem;stroke-width:2.75}.feedback[data-tone=bad] .feedback__icon{background:hsl(var(--bad))}.feedback__text{display:flex;flex-direction:column;min-width:0;line-height:1.3}.feedback__text>*{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feedback__text b{font-weight:600;color:hsl(var(--ok))}.feedback[data-tone=bad] .feedback__text b{color:hsl(var(--bad))}.feedback__text span{font-size:var(--text-sm);color:hsl(var(--ink-2))}.feedback__timer{position:absolute;top:0;left:0;height:3px;width:100%;background:hsl(var(--ok));transform-origin:left;animation:drain var(--ms, 1.2s) linear both}@keyframes drain{to{transform:scaleX(0)}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}}@media (max-width: 639px){.runner__nav{gap:.5rem}.runner__nav .btn--strong{min-width:6.5rem;padding-inline:1rem}.runner__nav .btn--ghost{padding-inline:.75rem}.feedback{gap:.5rem}.feedback__icon{width:2rem;height:2rem}}@media (max-width: 374px){.feedback__icon{display:none}}@media (max-width: 359px){.runner__nav .btn--strong{min-width:0}.runner__nav .iconbtn{width:2.25rem}}.q-anim{animation:q-in-forward .34s var(--ease) both}.q-anim[data-dir=back]{animation-name:q-in-back}@keyframes q-in-forward{0%{opacity:0;transform:translate(28px)}}@keyframes q-in-back{0%{opacity:0;transform:translate(-28px)}}.qnote{display:inline-flex;margin-bottom:.875rem}.qcontext{font-family:var(--font-serif);font-size:1.0625rem;line-height:1.55;color:hsl(var(--ink-2));margin-bottom:1rem;white-space:pre-wrap}.qtext{font-size:clamp(1.25rem,1.1rem + .8vw,1.625rem);font-weight:500;letter-spacing:-.02em;line-height:1.3;margin-bottom:1.25rem;overflow-wrap:break-word}.qtext--en{margin:-.75rem 0 1.25rem;font-size:var(--text-base);line-height:1.45;color:hsl(var(--ink-2));overflow-wrap:break-word;animation:en-in .22s var(--ease) both}.qcontext--en{font-family:var(--font-sans);font-size:var(--text-sm);margin-top:-.625rem;animation:en-in .22s var(--ease) both}.opt__en{display:block;margin-top:.125rem;font-size:var(--text-sm);font-weight:400;line-height:1.4;color:hsl(var(--ink-2));animation:en-in .22s var(--ease) both}@keyframes en-in{0%{opacity:0;transform:translateY(-3px)}}.opts{display:grid;gap:.5rem}.opts--compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--opt-min, 9.5rem)),1fr))}.opt{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.875rem;min-width:0;overflow-wrap:break-word;padding:.875rem 1rem;border:0;border-radius:12px;background:hsl(var(--card));box-shadow:inset 0 0 0 1.5px hsl(var(--line-2));text-align:left;font-size:1.0625rem;line-height:1.45;color:hsl(var(--ink));cursor:pointer;transition:box-shadow .16s var(--ease),background-color .16s var(--ease),transform .12s var(--ease),opacity .2s var(--ease)}.opts--compact .opt{grid-template-columns:auto minmax(0,1fr)}.opts--compact .opt__end{grid-column:2}@media (hover: hover){.opt:hover:not(:disabled){box-shadow:inset 0 0 0 1.5px hsl(var(--ink) / .35);background:hsl(var(--canvas))}}.opt:active:not(:disabled){transform:scale(.985)}.opt:disabled{cursor:default}.opt__key{display:grid;place-items:center;width:1.875rem;height:1.875rem;flex:none;border-radius:8px;background:hsl(var(--hover));font-size:.8125rem;font-weight:600;color:hsl(var(--ink-2));transition:background-color .16s var(--ease),color .16s var(--ease)}.opt__end{display:flex;align-items:center;gap:.5rem}.opt__end svg{width:1.25rem;height:1.25rem;stroke-width:2.5}.opt__note{font-size:var(--text-xs);font-weight:500;color:hsl(var(--ink-2))}.opt[data-bare]{grid-template-columns:minmax(0,1fr) auto;justify-items:center;font-size:1.125rem;font-weight:600}.opt[data-bare] .opt__key{display:none}.opt[data-bare] .opt__end{position:absolute;right:.75rem}.opt[data-bare] .opt__note{display:none}.opt[data-picked]{box-shadow:inset 0 0 0 2px hsl(var(--forest));background:hsl(var(--canvas))}.opt[data-picked] .opt__key{background:hsl(var(--forest));color:hsl(var(--cream))}.opt[data-mark=correct]{box-shadow:inset 0 0 0 2px hsl(var(--ok));background:hsl(var(--ok-soft))}.opt[data-mark=correct] .opt__key{background:hsl(var(--ok));color:#fff}.opt[data-mark=correct] .opt__end{color:hsl(var(--ok))}.opt[data-mark=wrong]{box-shadow:inset 0 0 0 2px hsl(var(--bad));background:hsl(var(--bad-soft))}.opt[data-mark=wrong] .opt__key{background:hsl(var(--bad));color:#fff}.opt[data-mark=wrong] .opt__end{color:hsl(var(--bad))}.opt[data-dim]{opacity:.55}.opt[data-mark=correct][data-fresh]{animation:opt-pop .42s var(--spring)}.opt[data-mark=wrong][data-fresh]{animation:opt-shake .38s var(--ease)}@keyframes opt-pop{40%{transform:scale(1.025)}}@keyframes opt-shake{20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.opt[data-same]{background:hsl(var(--warn-soft))}.opt[data-same] .opt__key{background:hsl(var(--warn) / .35);color:hsl(var(--ink))}.doc{display:flex;flex-direction:column;gap:.75rem;min-width:0}.doc__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.doc__body{font-family:var(--font-serif);font-size:clamp(1.0625rem,1rem + .25vw,1.1875rem);line-height:1.7;color:hsl(var(--ink));white-space:pre-wrap;overflow-wrap:break-word}.doc__body--en{animation:en-in .22s var(--ease) both}.doc__tools{display:flex;align-items:center;gap:.5rem}.doc__lang .seg{padding:.25rem .625rem;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em}.doc__text{display:flex;flex-direction:column;gap:1.25rem;min-width:0}.doc__part{display:flex;flex-direction:column;gap:.25rem;min-width:0}.doc__label{font-size:var(--text-sm);font-weight:600;color:hsl(var(--ink-2))}.doc--card{padding:1.125rem 1.25rem;border-radius:var(--radius);background:hsl(var(--canvas));margin-bottom:1.25rem}@media (max-width: 1023px){.doc[data-clipped] .doc__body,.doc[data-clipped] .doc__text{max-height:9rem;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 5rem,transparent);mask-image:linear-gradient(to bottom,#000 5rem,transparent)}.doc[data-clipped] .doc__text .doc__body{max-height:none;overflow:visible;-webkit-mask-image:none;mask-image:none}}@media (min-width: 1024px){.only-narrow{display:none!important}}.only-wide{display:none}@media (min-width: 1024px){.only-wide{display:inline-flex}}.shots{display:grid;gap:.5rem;margin-bottom:1.25rem}.shots button{padding:0;border:0;border-radius:var(--radius);overflow:hidden;background:hsl(var(--canvas));cursor:zoom-in;display:block;box-shadow:0 0 0 1px hsl(var(--line))}.shots img{display:block;width:100%}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:var(--pad);background:hsl(var(--forest) / .92);border:0;cursor:zoom-out;animation:fade-in .18s ease both}.lightbox img{max-width:100%;max-height:90dvh;width:auto;border-radius:var(--radius);animation:pop-in .26s var(--spring) both}.player{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem .625rem .625rem;margin-bottom:1.5rem;border-radius:999px;background:hsl(var(--canvas));box-shadow:inset 0 0 0 1px hsl(var(--line))}.player__play{display:grid;place-items:center;width:2.75rem;height:2.75rem;flex:none;border:0;border-radius:999px;background:hsl(var(--forest));color:hsl(var(--cream));cursor:pointer;transition:transform .16s var(--spring),background-color var(--fast) ease}.player__play:hover{background:#143d2f}.player__play:active{transform:scale(.9)}.player__play svg{width:1.25rem;height:1.25rem}.player__play[data-playing]{animation:pulse 2s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 6px hsl(var(--lime) / .45)}}.player__seek{flex:1 1 auto;height:1.75rem;display:flex;align-items:center;cursor:pointer;min-width:3rem;touch-action:none}.player__track{position:relative;width:100%;height:.375rem;border-radius:999px;background:hsl(var(--ink) / .12)}.player__fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:hsl(var(--forest))}.player__fill:after{content:"";position:absolute;right:-.4375rem;top:50%;width:.875rem;height:.875rem;margin-top:-.4375rem;border-radius:999px;background:hsl(var(--forest));box-shadow:0 0 0 3px hsl(var(--card))}.player__time{font-size:var(--text-xs);font-weight:500;font-variant-numeric:tabular-nums;color:hsl(var(--ink-2));flex:none}.player__speed{flex:none;min-width:2.75rem;padding:.3125rem .5rem;border:0;border-radius:999px;background:hsl(var(--card));box-shadow:inset 0 0 0 1px hsl(var(--line-2));font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:hsl(var(--ink));cursor:pointer}.player__speed:hover{background:hsl(var(--hover))}.player .iconbtn{width:2.25rem;height:2.25rem}@media (max-width: 379px){.player__time{display:none}}.explain{display:flex;flex-direction:column;gap:.5rem;margin-top:1.25rem;animation:rise-in .32s var(--ease) both}.note{padding:1rem 1.125rem;border-radius:var(--radius);background:hsl(var(--canvas));font-size:var(--text-base);line-height:1.6;white-space:pre-wrap}.note--en{color:hsl(var(--ink-2))}.note__k{display:block;margin-bottom:.25rem;font-size:var(--text-sm);font-weight:600;color:hsl(var(--ink-2))}.result{display:grid;gap:1.5rem;align-items:center;padding:clamp(1.25rem,1rem + 1.5vw,2rem)}@media (min-width: 720px){.result{grid-template-columns:auto minmax(0,1fr)}}.ring{position:relative;width:8.5rem;height:8.5rem;flex:none;justify-self:center}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring__track{stroke:hsl(var(--ink) / .08)}.ring__fill{stroke:hsl(var(--ok));transition:stroke-dashoffset .9s var(--ease)}.ring[data-tone=bad] .ring__fill{stroke:hsl(var(--bad))}.ring__value{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:2.125rem;font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.result__main{display:flex;flex-direction:column;gap:1rem;min-width:0}.result__stats{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}.jumps{display:flex;flex-wrap:wrap;gap:.375rem}.jumps button{width:2.125rem;height:2.125rem;border:0;border-radius:8px;font-size:var(--text-xs);font-weight:600;cursor:pointer;background:hsl(var(--hover));color:hsl(var(--ink-2));transition:transform .14s var(--spring),filter var(--fast) ease}.jumps button:hover{transform:translateY(-2px)}.jumps button[data-state=correct]{background:hsl(var(--ok-soft));color:hsl(var(--ok))}.jumps button[data-state=wrong]{background:hsl(var(--bad-soft));color:hsl(var(--bad))}.review-item{padding:clamp(1.125rem,.9rem + 1vw,1.5rem);scroll-margin-top:calc(var(--topbar) + 1rem)}.review-item__head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.875rem}.review-item .qtext{font-size:1.125rem;margin-bottom:.875rem}.review-item .player{margin-bottom:1rem}.prose{max-width:44rem;font-size:1.0625rem;line-height:1.7;color:hsl(var(--ink));overflow-wrap:break-word}.prose>*+*{margin-top:1rem}.prose h2,.prose h3,.prose h4,.prose h5{font-family:var(--font-sans);font-weight:500;line-height:1.25;letter-spacing:-.02em}.prose h2{font-size:clamp(1.25rem,1.1rem + .7vw,1.5rem);margin-top:2rem}.prose h3{font-size:1.1875rem;margin-top:1.75rem}.prose h4,.prose h5{font-size:1.0625rem;margin-top:1.5rem}.prose>:first-child{margin-top:0}.prose ul,.prose ol{padding-inline-start:1.25rem}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li{margin-top:.375rem}.prose li::marker{color:hsl(var(--ink-3))}.prose strong,.prose b{font-weight:600}.prose hr{border:0;height:1px;background:hsl(var(--line));margin-block:2rem}.prose blockquote{margin-inline:0;padding-inline-start:1rem;box-shadow:inset 3px 0 hsl(var(--line-2));color:hsl(var(--ink-2))}.prose img{display:block;margin-block:1.25rem;border-radius:var(--radius)}.prose a{text-decoration:underline;text-underline-offset:2px}.prose table{display:block;width:100%;overflow-x:auto;overscroll-behavior-x:contain;border-collapse:collapse;font-size:var(--text-base);font-family:var(--font-sans)}.prose td,.prose th{white-space:nowrap;padding:.5rem .875rem;text-align:left;border-bottom:1px solid hsl(var(--line))}.prose thead th{font-weight:500;font-size:var(--text-sm);color:hsl(var(--ink-2))}.prose table :where(td,th):not(:first-child){font-variant-numeric:tabular-nums}.prose--fr{font-family:var(--font-serif)}.prose--guide{--tick: hsl(var(--ok))}.prose--guide .g-kicker{display:flex;flex-wrap:wrap;gap:.25rem .5rem;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;line-height:1.5;color:hsl(var(--ink-3))}.prose--guide .g-kicker span+span:before{content:"·";margin-inline-end:.5rem}.prose--guide h3{font-size:clamp(1.25rem,1.15rem + .45vw,1.4375rem);letter-spacing:-.025em;margin-top:2.5rem;padding-top:2rem;border-top:1px solid hsl(var(--line))}.prose--guide>h3:first-child,.prose--guide .g-kicker+h3{border-top:0;padding-top:0}.prose--guide .g-kicker+h3{margin-top:.75rem}.prose--guide h4{font-size:1.0625rem;margin-top:1.75rem;color:hsl(var(--forest))}.prose--guide h5{font-family:inherit;font-size:inherit;font-weight:600;letter-spacing:0;line-height:inherit;margin-top:1.25rem}.prose--guide :where(h3,h4,h5)+*{margin-top:.625rem}.prose--guide hr{margin-block:2.25rem}.prose--guide .g-label{margin-top:1.25rem;font-weight:600}.prose--guide :is(.g-label,h5)+:is(ul,ol,p){margin-top:.25rem}.prose--guide li{padding-inline-start:.125rem}.prose--guide li>ul{margin-top:.25rem}.prose--guide .g-ticks{list-style:none;padding:0}.prose--guide .g-ticks li{position:relative;padding-inline-start:1.75rem}.prose--guide .g-ticks li:before{content:"";position:absolute;inset-inline-start:0;top:.3em;width:1.125rem;height:1.125rem;border-radius:50%;background:hsl(var(--ok-soft)) center / .75rem no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231e7156' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}.prose--guide .g-arrows{list-style:"→  "}.prose--guide .g-arrows li::marker{color:hsl(var(--ok))}.prose--guide .g-meta{display:inline-flex;align-items:center;gap:.4rem;width:fit-content;padding:.2rem .7rem .2rem .55rem;border-radius:999px;background:hsl(var(--paper-muted));box-shadow:inset 0 0 0 1px hsl(var(--line));font-size:var(--text-sm);line-height:1.6}.prose--guide .g-meta strong{font-weight:600}.prose--guide :is(.g-note,.g-alert){position:relative;padding:.875rem 1rem .875rem 2.75rem;border-radius:var(--radius-md);background:hsl(var(--line) / .45)}.prose--guide :is(.g-note,.g-alert):before{content:"";position:absolute;inset-inline-start:1rem;top:1.05rem;width:1.125rem;height:1.125rem;background:currentColor;color:hsl(var(--ink-3));-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat}.prose--guide .g-note--warn,.prose--guide .g-alert{background:hsl(var(--warn-soft))}.prose--guide .g-note--warn:before,.prose--guide .g-alert:before{color:hsl(var(--part))}.prose--guide .g-note--no{background:hsl(var(--bad-soft))}.prose--guide .g-note--no:before{color:hsl(var(--bad))}.prose--guide .g-note--calm{font-style:italic;color:hsl(var(--ink-2))}.prose--guide .g-alert+.g-alert{margin-top:.5rem}.prose--guide .g-note--warn,.prose--guide .g-alert{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5 1.5 21h21L12 2.5Zm-1.2 7h2.4l-.3 6h-1.8l-.3-6Zm1.2 7.6a1.4 1.4 0 1 1 0 2.8 1.4 1.4 0 0 1 0-2.8Z'/%3E%3C/svg%3E")}.prose--guide .g-note--time{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='13' r='8.5'/%3E%3Cpath d='M12 8.5V13l3 2M9.5 2.5h5'/%3E%3C/svg%3E")}.prose--guide .g-note--no{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='m8.5 8.5 7 7m0-7-7 7'/%3E%3C/svg%3E")}.prose--guide .g-note--write{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h4L19.5 8.5a2.8 2.8 0 0 0-4-4L4 16v4Z'/%3E%3C/svg%3E")}.prose--guide .g-note--calm{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M3 12c2-3 4-3 6 0s4 3 6 0 4-3 6 0'/%3E%3C/svg%3E")}.prose--guide blockquote{padding:1rem 1.25rem;border-radius:var(--radius-md);box-shadow:none;background:hsl(var(--forest));color:hsl(var(--cream));font-family:var(--font-serif);font-size:1.125rem;line-height:1.55}.prose--guide blockquote strong{font-weight:500}.prose--guide table{margin-top:1.25rem}.topic-doc{overflow:hidden}.topic-doc__img{display:grid;place-items:center;padding:.75rem;background:hsl(var(--paper-muted))}.topic-doc__img img{width:auto;max-width:100%;max-height:min(60vh,32rem);border-radius:var(--radius-sm)}.topic-doc__cap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-top:1px solid hsl(var(--line))}.topic-doc__title{min-width:0;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;line-height:1.5;text-transform:uppercase;color:hsl(var(--ink-2))}.topic-doc__open{display:inline-flex;align-items:center;gap:.3rem;flex:none;font-size:var(--text-sm);font-weight:500;color:hsl(var(--ok))}.topic-doc__open svg{width:.875rem;height:.875rem;transition:transform .2s var(--ease)}.topic-doc__open:hover svg{transform:translate(2px)}.topic-label{font-family:var(--font-serif);font-size:1.0625rem;line-height:1.4;color:hsl(var(--ink-2))}.prose--topic :is(.t-asks,.t-counters){list-style:none;padding:0}.prose--topic :is(.t-asks,.t-counters) li{margin:0}.prose--topic .t-asks{background:hsl(var(--card));border-radius:var(--radius);box-shadow:0 0 0 1px hsl(var(--line)),var(--shadow-sm)}.prose--topic .t-asks li{display:grid;gap:.125rem;padding:.875rem clamp(1rem,.8rem + 1vw,1.375rem)}.prose--topic .t-asks li+li{border-top:1px solid hsl(var(--line))}.prose--topic .t-ask__key{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;line-height:1.4;color:hsl(var(--ok))}.prose--topic .t-ask__q{line-height:1.55}.prose--topic .t-counters{display:flex;flex-direction:column;gap:.625rem;counter-reset:counter}.prose--topic .t-counters li{counter-increment:counter;padding:1rem clamp(1rem,.8rem + 1vw,1.375rem) 1.125rem;background:hsl(var(--card));border-radius:var(--radius);box-shadow:0 0 0 1px hsl(var(--line)),var(--shadow-sm)}.prose--topic .t-obj{position:relative;padding-inline-start:2.25rem;font-weight:600;line-height:1.45}.prose--topic .t-obj:before{content:counter(counter);position:absolute;inset-inline-start:0;top:.05em;display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:hsl(var(--warn-soft));color:#774b0d;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600}.prose--topic .t-reply{position:relative;margin-top:.5rem;padding-inline-start:2.25rem}.prose--topic .t-reply:before{content:"";position:absolute;inset-inline-start:.2rem;top:.25em;width:1.125rem;height:1.125rem;background:hsl(var(--ok));-webkit-mask:var(--reply) center / contain no-repeat;mask:var(--reply) center / contain no-repeat;--reply: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4v7a4 4 0 0 0 4 4h10'/%3E%3Cpath d='m15 11 4 4-4 4'/%3E%3C/svg%3E")}.topic-sheet{padding:clamp(1.25rem,.75rem + 2.2vw,2.5rem)}.prose--topic .t-quote{padding-inline-start:1rem;box-shadow:inset 3px 0 hsl(var(--ok) / .55);font-style:italic;color:hsl(var(--ink-2))}.prose--letter .t-salute{font-weight:600}.prose--letter .t-close{margin-top:1.75rem}.prose--letter .t-sign{text-align:end;font-style:italic}.prose--topic .t-en{display:none}.prose--en .t-en{display:block;margin-top:.3rem;font-family:var(--font-sans);font-size:var(--text-base);font-style:normal;font-weight:400;line-height:1.5;letter-spacing:0;color:hsl(var(--ink-2));animation:en-in .22s var(--ease) both}.prose--en :is(.t-ask__q,.t-reply) .t-en{font-size:var(--text-sm)}.prose--en .t-ask__key .t-en{display:inline;margin-inline-start:.4rem;font-size:var(--text-sm);font-weight:500;color:hsl(var(--ink-3))}.prose--en .t-obj .t-en{font-weight:500}.prose--en .t-quote .t-en{color:hsl(var(--ink-2))}.prompt__en{margin-top:.625rem;font-size:var(--text-base);line-height:1.5;color:hsl(var(--cream) / .72);animation:en-in .22s var(--ease) both}.prompt{padding:clamp(1.375rem,1rem + 1.5vw,2rem);border-radius:var(--radius)}.prompt__text{font-family:var(--font-serif);font-size:clamp(1.25rem,1.1rem + .8vw,1.625rem);line-height:1.45;font-weight:400;color:hsl(var(--cream))}.dock{position:sticky;bottom:calc(var(--tabbar) + env(safe-area-inset-bottom) + .75rem);z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;padding:.5rem;border-radius:calc(var(--radius) + 4px);background:hsl(var(--card) / .94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 0 0 1px hsl(var(--line)),var(--shadow-md)}@media (min-width: 1024px){.dock{bottom:1.25rem}}.dock>:first-child{justify-self:start}.dock>:last-child{justify-self:end}.btn--done{background:hsl(var(--ok));box-shadow:none;color:#fff}.btn--done:hover:not(:disabled){background:#1a6149}.settings-group{display:flex;flex-direction:column}.set-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem 1.25rem;padding:1rem 1.125rem}.set-row+.set-row{box-shadow:0 -1px hsl(var(--line))}@media (max-width: 559px){.set-row--stack{grid-template-columns:minmax(0,1fr)}}.set-row__k{display:flex;flex-direction:column;gap:.125rem;min-width:0}.set-row__title{font-weight:500}.set-row__note{font-size:var(--text-sm);color:hsl(var(--ink-2))}.set-row__icon{display:grid;place-items:center;width:2rem;height:2rem;border-radius:8px;background:hsl(var(--hover));color:hsl(var(--ink-2))}.set-row__icon svg{width:1.125rem;height:1.125rem}.member{display:flex;flex-direction:column;gap:1.125rem;padding:clamp(1.125rem,.9rem + 1vw,1.5rem)}.member__head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.875rem}.member__badge{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:12px;background:hsl(var(--lime));color:hsl(var(--forest))}.member__badge svg{width:1.375rem;height:1.375rem}.member__badge--muted{background:hsl(var(--hover));color:hsl(var(--ink-2))}.member__badge--ghost{background:hsl(var(--ink) / .06)}.member__name{display:flex;flex-direction:column;gap:.25rem;min-width:0}.member__plan{font-size:1.125rem;font-weight:600;letter-spacing:-.015em;line-height:1.25}.member__sub{font-size:var(--text-sm);color:hsl(var(--ink-2));line-height:1.4}.member__fact{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.25rem 1rem;padding:.875rem 1rem 1rem;border-radius:var(--radius-md);background:hsl(var(--ink) / .05)}.member__k{grid-column:1 / -1;font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--ink-2))}.member__v{font-size:clamp(1.25rem,1.1rem + .6vw,1.5rem);font-weight:600;letter-spacing:-.025em;line-height:1.2;font-variant-numeric:tabular-nums}.member__aside{font-size:var(--text-sm);color:hsl(var(--ink-2));text-align:right;white-space:nowrap}.member__fact .meter{grid-column:1 / -1;margin-top:.5rem}.member__say{font-size:var(--text-sm);color:hsl(var(--ink-2));line-height:1.55;max-width:36rem}.member__say--bad{color:hsl(var(--bad));font-weight:500}.member__actions{display:flex;flex-wrap:wrap;gap:.625rem}.member__actions:empty{display:none}.member__fine{font-size:var(--text-xs);color:hsl(var(--ink-2));line-height:1.5;max-width:36rem}.member__problem{font-size:var(--text-sm);font-weight:500;color:hsl(var(--bad))}.on-forest .chip--bad{color:#a72925}@media (max-width: 559px){.member__actions>.btn{flex:1 1 100%}.member__fact{grid-template-columns:minmax(0,1fr)}.member__aside{text-align:left}}.receipt__end{display:flex;align-items:center;gap:.625rem}.receipt__amount{font-weight:600;font-variant-numeric:tabular-nums}.receipt__amount--void{text-decoration:line-through;color:hsl(var(--ink-3));font-weight:500}.skel{display:block;height:1rem;border-radius:6px;background:linear-gradient(90deg,hsl(var(--ink) / .06),hsl(var(--ink) / .12),hsl(var(--ink) / .06));background-size:200% 100%;animation:skel 1.3s ease-in-out infinite}.skel--sm{height:.75rem}@keyframes skel{to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skel{animation:none}}.spin--btn{width:1rem;height:1rem;border-width:2px;border-color:currentColor;border-top-color:transparent;opacity:.8}.plans{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}@media (min-width: 640px){.plans{grid-template-columns:repeat(2,minmax(0,1fr))}}.plan{display:flex;flex-direction:column;gap:.75rem;padding:clamp(1.375rem,1.1rem + 1vw,1.75rem);border-radius:var(--radius-lg);background:hsl(var(--card));box-shadow:0 0 0 1px hsl(var(--line)),var(--shadow-sm)}.plan--featured{background:hsl(var(--forest));box-shadow:var(--shadow-md)}.plan__flag{display:flex;min-height:1.5rem}@media (max-width: 639px){.plan__flag:empty{display:none}}.plan__flag .chip{border-radius:6px}.plan--featured .plan__flag .chip{background:hsl(var(--lime));color:hsl(var(--forest))}.plan__price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem;margin-top:.25rem}.plan__amount{font-size:clamp(2rem,1.6rem + 1.2vw,2.5rem);font-weight:500;letter-spacing:-.03em;line-height:1.05}.plan__per{color:hsl(var(--ink-2))}.plan__cta{width:100%;margin-block:.25rem .5rem}.plan__list{display:flex;flex-direction:column;gap:.5rem}.plan__row{--row-lh: 1.45;display:grid;grid-template-columns:1.125rem minmax(0,1fr) auto;align-items:baseline;gap:.5rem;line-height:var(--row-lh)}.plan__value{white-space:nowrap;font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:hsl(var(--ink-2));text-align:end}.plan__row:has(.plan__mark--no) .plan__label{color:hsl(var(--ink-2))}.plan__mark{display:inline-grid;place-items:center;width:1.125rem;height:calc(var(--row-lh) * 1em);align-self:start}.plan__mark svg{display:block;width:100%;height:1.125rem}.plan__mark--yes{color:hsl(var(--ok))}.plan__mark--no{color:hsl(var(--no))}.plan__note{margin-top:auto;padding-top:.5rem;font-size:var(--text-sm);color:hsl(var(--ink-2))}.plans-incl{display:flex;flex-direction:column;align-items:flex-start;gap:.875rem;padding:1.125rem 1.25rem 1.25rem}.plans-incl .chip{background:hsl(var(--lime));color:hsl(var(--forest));border-radius:6px}.plans-incl .plan__list{align-self:stretch}@media (min-width: 560px){.plans-incl__modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 2rem}}.plans-incl__extras{padding-top:.875rem;box-shadow:0 -1px hsl(var(--line))}.hint{position:relative;display:inline-block}.hint__term{display:inline-flex;align-items:center;gap:.25rem;padding:0;border:0;background:none;font:inherit;color:inherit;cursor:help;text-decoration:underline dotted;text-underline-offset:3px;text-decoration-color:hsl(var(--ink) / .4)}.hint__term svg{width:.875rem;height:.875rem;color:hsl(var(--ink-2))}.hint__bubble{position:absolute;top:calc(100% + .375rem);left:0;z-index:20;width:max-content;max-width:13rem;padding:.625rem .75rem;border-radius:var(--radius-md);background:hsl(var(--forest));color:hsl(var(--cream));font-size:var(--text-sm);line-height:1.45;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease,visibility .14s}.hint__term:hover+.hint__bubble,.hint__term:focus-visible+.hint__bubble,.hint[data-open] .hint__bubble{opacity:1;visibility:visible;transform:none}.on-forest .hint__bubble{background:hsl(var(--cream));color:hsl(var(--forest))}::view-transition-group(sidebar),::view-transition-group(topbar),::view-transition-group(tabbar){z-index:3}::view-transition-old(root),::view-transition-new(root){animation-duration:0s}html[data-nav] ::view-transition-old(root),html[data-nav] ::view-transition-new(root){animation-timing-function:cubic-bezier(.2,.8,.2,1);animation-fill-mode:both}html[data-nav=forward]::view-transition-old(root){animation:.38s var(--ease) both vt-push-out}html[data-nav=forward]::view-transition-new(root){animation:.38s var(--ease) both vt-push-in}html[data-nav=back]::view-transition-old(root){animation:.34s var(--ease) both vt-pop-out;z-index:2}html[data-nav=back]::view-transition-new(root){animation:.34s var(--ease) both vt-pop-in}html[data-nav=fade]::view-transition-old(root){animation:.16s ease both vt-fade-out}html[data-nav=fade]::view-transition-new(root){animation:.24s var(--ease) 40ms both vt-fade-in}html[data-nav=up]::view-transition-old(root){animation:.26s ease both vt-fade-out}html[data-nav=up]::view-transition-new(root){animation:.42s var(--ease) both vt-up-in}html[data-nav=down]::view-transition-old(root){animation:.3s var(--ease) both vt-down-out;z-index:2}html[data-nav=down]::view-transition-new(root){animation:.3s ease both vt-fade-in}@keyframes vt-push-in{0%{transform:translate(100%)}}@keyframes vt-push-out{to{transform:translate(-30%);filter:brightness(.94)}}@keyframes vt-pop-in{0%{transform:translate(-30%);filter:brightness(.94)}}@keyframes vt-pop-out{to{transform:translate(100%)}}@keyframes vt-fade-in{0%{opacity:0;transform:translateY(6px)}}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-up-in{0%{transform:translateY(14%);opacity:0}}@keyframes vt-down-out{to{transform:translateY(14%);opacity:0}}@media (min-width: 1024px){@keyframes vt-push-in{0%{transform:translate(48px);opacity:0}}@keyframes vt-push-out{to{transform:translate(-24px);opacity:0}}@keyframes vt-pop-in{0%{transform:translate(-48px);opacity:0}}@keyframes vt-pop-out{to{transform:translate(32px);opacity:0}}html[data-nav=forward]::view-transition-old(root),html[data-nav=back]::view-transition-old(root){animation-duration:.2s}html[data-nav=forward]::view-transition-new(root),html[data-nav=back]::view-transition-new(root){animation-duration:.32s}}.enter>*{animation:rise-in .38s var(--ease) both}.enter>:nth-child(2){animation-delay:30ms}.enter>:nth-child(3){animation-delay:60ms}.enter>:nth-child(4){animation-delay:90ms}.enter>:nth-child(5){animation-delay:.12s}.enter>:nth-child(n+6){animation-delay:.15s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important}}:root{--pumpkin: 26 96% 58%}.plan__was-row{margin-top:.5rem;margin-bottom:-.5rem;font-size:var(--text-md);line-height:1.4}.plan__was{color:hsl(var(--ink-2));text-decoration-thickness:1.5px}.sale{position:relative;display:grid;grid-template-areas:"title" "clock";gap:.375rem;padding:1rem 1.25rem 1.125rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.sale:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(hsl(var(--cream) / .09) 1px,transparent 1px);background-size:18px 18px;-webkit-mask-image:linear-gradient(to left,#000 10%,transparent 70%);mask-image:linear-gradient(to left,#000 10%,transparent 70%)}.sale>*{position:relative}.sale__title{grid-area:title;display:inline-flex;align-items:center;gap:.3em;font-size:clamp(1.25rem,.95rem + 1.1vw,1.75rem);letter-spacing:-.02em;line-height:1.15;color:hsl(var(--pumpkin))}.sale__title svg{flex:none;width:1.1em;height:1.1em;transform:translateY(-.07em)}.sale__clock{grid-area:clock;display:flex;flex-direction:column;gap:.5rem}.sale__label{font-size:var(--text-md);font-weight:500;letter-spacing:-.02em}.sale__inline{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.sale__cells{display:none}@media (min-width: 760px){.sale{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title clock";align-items:center;column-gap:2rem;padding:1.375rem 1.75rem}.sale__inline{display:none}.sale__label{font-size:var(--text-xs);font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:hsl(var(--ink-2))}.sale__cells{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:.375rem}}.sale__unit{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:hsl(var(--ink-2))}.sale__cell{display:flex;flex-direction:column;align-items:center;gap:.3rem;min-width:3.75rem;padding:.75rem .375rem .625rem;border-radius:var(--radius-md);background:hsl(var(--cream) / .06);box-shadow:inset 0 0 0 1px hsl(var(--cream) / .12)}.sale__n{font-size:clamp(1.5rem,1.2rem + 1vw,2rem);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1}.sale__cell:last-child .sale__n{color:hsl(var(--pumpkin))}
