:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ledger-paper:#f5f3f0;--ledger-sheet:#fffcf9;--ledger-surface:#ebe7e3;--ledger-surface-muted:#e0dad4;--ledger-ink:#17150f;--ledger-muted:#6b655c;--ledger-line:#e7e2dd;--ledger-accent:#bd4900;--ledger-accent-text:#bd4900;--ledger-accent-bright:#ef6820;--ledger-accent-line:#bd4900;--ledger-subcolor:#3d5a80;--ledger-on-accent:#fff;--ledger-float:#fffdfb;--ledger-shadow:#17150f1f;--type-display:1.5rem;--type-lead:1.2rem;--type-body:.95rem;--type-small:.85rem;--type-caption:.75rem;--type-input:16px;--font-sans:"Inter Variable", Inter, "Hiragino Sans", "Noto Sans JP", "Yu Gothic UI", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ledger-paper:#141210;--ledger-sheet:#201d1a;--ledger-surface:#2c2825;--ledger-surface-muted:#37322e;--ledger-ink:#f8f6f3;--ledger-muted:#aca69d;--ledger-line:#332e2a;--ledger-accent:#bd4900;--ledger-accent-text:#ff9a55;--ledger-accent-bright:#ef6820;--ledger-accent-line:#ef6820;--ledger-subcolor:#6f8fbd;--ledger-on-accent:#fff;--ledger-float:#332e2a;--ledger-shadow:#00000080}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ledger-paper:#141210;--ledger-sheet:#201d1a;--ledger-surface:#2c2825;--ledger-surface-muted:#37322e;--ledger-ink:#f8f6f3;--ledger-muted:#aca69d;--ledger-line:#332e2a;--ledger-accent:#bd4900;--ledger-accent-text:#ff9a55;--ledger-accent-bright:#ef6820;--ledger-accent-line:#ef6820;--ledger-subcolor:#6f8fbd;--ledger-on-accent:#fff;--ledger-float:#332e2a;--ledger-shadow:#00000080}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ledger-paper:#f5f3f0;--ledger-sheet:#fffcf9;--ledger-surface:#ebe7e3;--ledger-surface-muted:#e0dad4;--ledger-ink:#17150f;--ledger-muted:#6b655c;--ledger-line:#e7e2dd;--ledger-accent:#bd4900;--ledger-accent-text:#bd4900;--ledger-accent-bright:#ef6820;--ledger-accent-line:#bd4900;--ledger-subcolor:#3d5a80;--ledger-on-accent:#fff;--ledger-float:#fffdfb;--ledger-shadow:#1111131f}.expression-specimen{overflow-wrap:anywhere;color:var(--ledger-ink);background:var(--ledger-sheet);box-shadow:none;border-radius:12px;padding:1.2rem 1.35rem 1.15rem;position:relative}.expression-specimen--compact{padding-top:1.05rem;padding-bottom:1rem}.expression-specimen__corner{position:absolute;top:1.15rem;right:1.35rem}.expression-specimen__english{color:var(--ledger-ink);font:700 var(--type-lead)/1.4 var(--font-sans);margin:0;padding-right:3rem}.expression-specimen__rule{background:var(--ledger-ink);opacity:.13;height:1px;margin:.9rem 0}.expression-specimen__meaning{color:var(--ledger-ink);font-size:var(--type-small);margin:.5rem 0 0}.expression-specimen__example{color:var(--ledger-muted);font:400 var(--type-caption)/1.6 var(--font-sans);margin:.65rem 0 0}.example-with-audio{justify-content:space-between;align-items:flex-start;gap:.65rem;display:flex}.example-audio-wrap{flex:0 0 2rem;position:relative}.example-audio-button{color:#fff;background:var(--ledger-accent);cursor:pointer;border:0;border-radius:50%;place-items:center;width:2rem;height:2rem;display:inline-grid}.example-audio-button:focus-visible{outline-offset:2px;outline:2px solid}.example-audio-error{width:max-content;max-width:8rem;color:var(--ledger-muted);font-size:.7rem;position:absolute;top:2.15rem;right:0}.example-audio-fallback{color:var(--ledger-accent-text);place-items:center;margin-top:.2rem;font-size:.85rem;text-decoration:none;display:inline-grid}.expression-missing{width:100%;color:var(--ledger-accent-text);font:500 var(--type-caption)/1.6 var(--font-sans);text-align:left;background:color-mix(in srgb, var(--ledger-accent) 10%, var(--ledger-sheet));border:0;border-radius:8px;margin:.65rem 0 0;padding:.5rem .65rem;display:block}button.expression-missing{cursor:pointer}button.expression-missing:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px}.example-accordion{margin:.55rem 0 0}.example-accordion summary{cursor:pointer;color:var(--ledger-muted);font:500 .72rem/1.6 var(--font-sans);-webkit-user-select:none;user-select:none;align-items:baseline;gap:.4em;list-style:none;display:inline-flex}.example-accordion summary::-webkit-details-marker{display:none}.example-accordion .example{margin-top:.45rem;display:block}.example-accordion summary:before{content:"▸";transition:transform .15s;display:inline-block}.example-accordion[open] summary:before{transform:rotate(90deg)}.example-accordion summary:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px;border-radius:3px}@media (prefers-reduced-motion:reduce){.example-accordion summary:before{transition:none}}.slot-chip{color:var(--ledger-muted);font:500 .72em/1.75 var(--font-sans);letter-spacing:0;vertical-align:.08em;white-space:nowrap;background:color-mix(in srgb, var(--ledger-ink) 5%, var(--ledger-sheet));border:1.5px dashed color-mix(in srgb, var(--ledger-ink) 30%, transparent);border-radius:6px;align-items:center;gap:.3em;margin:0 .08em;padding:0 .5em;display:inline-flex;position:relative}.slot-chip--concrete{color:var(--ledger-accent-text);background:color-mix(in srgb, var(--ledger-accent) 7%, var(--ledger-sheet));border-color:color-mix(in srgb, var(--ledger-accent) 45%, transparent)}.slot-chip__icon{flex:none;width:.95em;height:.95em}.slot-chip__tip{z-index:3;width:max-content;max-width:240px;color:var(--ledger-sheet);font:.85em/1.5 var(--font-sans);white-space:normal;background:var(--ledger-ink);border-radius:6px;padding:.45rem .65rem;display:none;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 6px 18px #0000002e}.slot-chip:hover .slot-chip__tip,.slot-chip:focus-visible .slot-chip__tip{display:block}.slot-chip:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:1px}.expression-specimen__example-ja{color:var(--ledger-muted);font-size:var(--type-caption);margin:.15rem 0 0;line-height:1.7}.expression-specimen--practice .expression-specimen__english{font:500 var(--type-body)/1.45 var(--font-sans)}.expression-specimen--practice .expression-specimen__meaning{color:var(--ledger-muted);font-size:var(--type-caption);margin:.15rem 0 0}.expression-specimen--practice .expression-specimen__example{color:var(--ledger-ink);font:700 var(--type-display)/1.55 var(--font-sans);letter-spacing:-.012em;margin:1.5rem 0 0}.expression-specimen--practice .expression-specimen__example-ja{color:var(--ledger-muted);font-size:var(--type-small);margin:.5rem 0 0;line-height:1.7}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.design-lab{--lab-light-bg:#f7f7f8;--lab-light-surface:#fff;--lab-light-secondary:#ececef;--lab-light-text:#111113;--lab-dark-bg:#09090b;--lab-dark-surface:#171719;--lab-dark-text:#f7f7f8;--lab-accent:#c24b00;--lab-radius:18px;min-height:100vh;color:var(--lab-light-text);background:var(--lab-light-bg);padding:3rem 1.5rem 7rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.design-lab *{box-sizing:border-box}.design-lab button,.design-lab a{font:inherit;cursor:pointer}.design-lab-shell{width:min(100%,72rem);margin:0 auto}.design-lab-hero{gap:1.5rem;padding:clamp(2rem,7vw,5rem) 0;display:grid}.design-lab-eyebrow,.design-lab-section-heading>p{color:color-mix(in srgb, var(--lab-light-text) 58%, transparent);letter-spacing:.14em;margin:0;font:700 .68rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-hero h1{letter-spacing:-.075em;max-width:13ch;margin:0;font-size:clamp(3rem,8vw,7rem);line-height:.88}.design-lab-hero>p:last-child{max-width:40rem;margin:0;line-height:1.8}.design-lab-section{padding:clamp(3rem,7vw,5rem) 0}.design-lab-section-heading{gap:.65rem;margin-bottom:1.75rem;display:grid}.design-lab-section-heading h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.35rem,3vw,2rem);line-height:1.15}.design-lab [data-appearance=light]{color:var(--lab-light-text);background:var(--lab-light-surface)}.design-lab [data-appearance=dark]{color:var(--lab-dark-text);background:var(--lab-dark-bg)}.design-lab-appearance-study,.design-lab-navigation-study,.design-lab-home-study{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;display:grid}.design-lab-appearance-study article{border-radius:var(--lab-radius);border:0;min-height:18rem;padding:1.5rem;display:grid}.design-lab-appearance-study article>span,.design-lab-appearance-study article>small,.design-lab-appearance-study i{letter-spacing:.12em;font:700 .68rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-appearance-study strong,.design-lab-number-study strong,.design-lab-home-study__total strong{font-variant-numeric:tabular-nums;letter-spacing:-.08em;font-size:clamp(4rem,12vw,8rem);line-height:.88}.design-lab-appearance-study i,.design-lab-home-study__action{color:#fff;background:var(--lab-accent);border:0;border-radius:999px;place-self:end start}.design-lab-appearance-study i{padding:.65rem .8rem;font-style:normal}.design-lab-number-study{gap:.75rem;padding:clamp(1.5rem,5vw,3rem);display:grid}.design-lab-number-study span{font-size:clamp(1.1rem,2vw,1.5rem);font-weight:700}.design-lab-number-study small{color:color-mix(in srgb, var(--lab-light-text) 58%, transparent)}.design-lab-content-study{background:var(--lab-light-surface);border-radius:var(--lab-radius);max-width:42rem;box-shadow:none;border:0;padding:clamp(1.5rem,5vw,3rem)}.design-lab-content-study>span{font-size:.75rem;font-weight:700}.design-lab-content-study h3{letter-spacing:-.055em;margin:2.5rem 0 .75rem;font-size:clamp(2rem,6vw,4rem);line-height:1}.design-lab-content-study p{margin:0}.design-lab-content-study small{color:color-mix(in srgb, var(--lab-light-text) 65%, transparent);margin-top:2.5rem;display:block}.design-lab-navigation-study article{border-radius:var(--lab-radius);min-width:0;min-height:16rem;box-shadow:none;border:0;align-content:space-between;gap:2rem;padding:1.25rem;display:grid}.design-lab-navigation-study article[data-appearance=dark]{background:var(--lab-dark-surface)}.design-lab-navigation-study h3{margin:0;font-size:.85rem}.design-lab-navigation-study__preview{border-radius:var(--lab-radius);min-height:11rem;position:relative;overflow:hidden}.design-lab-navigation-study__backdrop{background:color-mix(in srgb, currentColor 6%, transparent);align-content:start;gap:.45rem;min-height:11rem;padding:1.25rem 1rem 5.5rem;display:grid}.design-lab-navigation-study__backdrop small{letter-spacing:.12em;opacity:.6;font:700 .62rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-navigation-study__backdrop strong{letter-spacing:-.04em;font-size:clamp(1.25rem,4vw,2rem);line-height:1}.design-lab-navigation-study__backdrop span{opacity:.72}.design-lab-navigation-study__list{grid-template-columns:repeat(var(--navigation-count), minmax(0, 1fr));gap:.25rem;min-width:0;display:grid}.design-lab-navigation-study__mobile{box-shadow:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:0;border-radius:999px;padding:.4rem;position:absolute;bottom:.65rem;left:.65rem;right:.65rem}.design-lab-navigation-study article[data-appearance=light] .design-lab-navigation-study__mobile[data-surface=translucent-neutral]{background:#ffffffc7}.design-lab-navigation-study article[data-appearance=dark] .design-lab-navigation-study__mobile[data-surface=translucent-neutral]{background:#171719d1}.design-lab-navigation-study__desktop{align-self:end}.design-lab-navigation-study__item{min-width:0;min-height:3.5rem;color:inherit;text-align:center;background:0 0;border:0;border-radius:999px;place-items:center;gap:.2rem;padding:.5rem;text-decoration:none;display:grid}.design-lab-navigation-study__label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.68rem;font-weight:700;overflow:hidden}.design-lab-navigation-study__item[aria-current=page]{color:#fff;background:var(--lab-accent)}.design-lab-home-study__candidate{background:var(--lab-light-secondary);border-radius:calc(var(--lab-radius) + 4px);box-shadow:none;border:0;overflow:hidden}.design-lab-home-study__candidate>header{gap:.35rem;padding:1rem;display:grid}.design-lab-home-study__candidate>header span{color:color-mix(in srgb, var(--lab-light-text) 60%, transparent);font-size:.75rem}.design-lab-home-study__screen{background:var(--lab-light-bg);gap:1rem;padding:1rem;display:grid}.design-lab-home-study__total{gap:.75rem;padding:1rem 0;display:grid}.design-lab-home-study__total>span{font-size:.75rem;font-weight:700}.design-lab-home-study__action{width:100%;min-height:3.25rem;padding:.8rem 1rem;font-weight:700}.design-lab-home-study__summary{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.design-lab-home-study__summary span{background:var(--lab-light-surface);border-radius:var(--lab-radius);padding:1rem}.design-lab-home-study__heatmap{grid-template-columns:repeat(7,1fr);gap:.25rem;display:grid}.design-lab-home-study__heatmap i{aspect-ratio:1;background:var(--lab-light-secondary);border-radius:.2rem}.design-lab-home-study__heatmap i[data-level="1"]{background:color-mix(in srgb, var(--lab-accent) 24%, var(--lab-light-secondary))}.design-lab-home-study__heatmap i[data-level="2"]{background:color-mix(in srgb, var(--lab-accent) 52%, var(--lab-light-secondary))}.design-lab-home-study__heatmap i[data-level="3"]{background:var(--lab-accent)}.design-lab-home-study__stairs{height:6rem;box-shadow:none;border:0;align-items:flex-end;padding:0 .5rem;display:flex}.design-lab-home-study__stairs i{background:var(--lab-light-secondary);border-radius:.35rem .35rem 0 0;flex:1}.design-lab-home-study__stairs i:first-child{height:22%}.design-lab-home-study__stairs i:nth-child(2){height:36%}.design-lab-home-study__stairs i:nth-child(3){height:50%}.design-lab-home-study__stairs i:nth-child(4){height:64%}.design-lab-home-study__stairs i:nth-child(5){height:78%}.design-lab-home-study__stairs i:nth-child(6){background:var(--lab-accent);height:94%}.design-lab-accent-study{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.design-lab-accent-study__candidate{background:var(--lab-light-surface);border-radius:var(--lab-radius);align-content:start;gap:1rem;padding:1.25rem;display:grid}.design-lab-accent-study__candidate header{gap:.3rem;display:grid}.design-lab-accent-study__candidate header strong{font:700 1.1rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-accent-study__candidate header span{color:color-mix(in srgb, var(--lab-light-text) 62%, transparent);font-size:.8rem;line-height:1.6}.design-lab-accent-study__fill{color:#fff;background:var(--candidate-fill);border:0;border-radius:999px;min-height:3.25rem;padding:.8rem 1rem;font-weight:700}.design-lab-accent-study__ratios{gap:.35rem;margin:0;display:grid}.design-lab-accent-study__ratios>div{justify-content:space-between;gap:1rem;display:flex}.design-lab-accent-study__ratios dt{color:color-mix(in srgb, var(--lab-light-text) 62%, transparent);font-size:.78rem}.design-lab-accent-study__ratios dd{font-variant-numeric:tabular-nums;margin:0;font:700 .78rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-accent-study__ratios dd[data-weak=true]{color:#b00020;text-decoration:line-through}.design-lab-accent-study__text{color:var(--candidate-fill);margin:0;font-size:.85rem;font-weight:600}.design-lab-section-heading>p.design-lab-parts__lead{max-width:44rem;color:color-mix(in srgb, var(--lab-light-text) 65%, transparent);letter-spacing:0;font:400 .9rem/1.8 inherit}.design-lab-parts{gap:2.5rem;display:grid}.design-lab-parts__part-heading{gap:.3rem;margin-bottom:.9rem;display:grid}.design-lab-parts__part-heading h3{letter-spacing:-.02em;margin:0;font-size:1rem}.design-lab-parts__part-heading p{color:color-mix(in srgb, var(--lab-light-text) 62%, transparent);margin:0;font-size:.8rem;line-height:1.7}.design-lab-parts__pair{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem;display:grid}.design-lab-parts__frame{border-radius:var(--lab-radius);overflow:hidden}.design-lab-parts__appearance{letter-spacing:.14em;opacity:.55;margin:0;padding:.85rem 1rem .35rem;font:700 .62rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-parts__stage{padding:.75rem 1rem 1.25rem}.design-lab-parts__stage .expression-specimen+.expression-specimen{margin-top:.8rem}.design-lab-parts__frame[data-appearance=light],.design-lab-parts__frame[data-appearance=dark]{color:var(--ledger-ink);background:var(--ledger-paper)}.design-lab-palette{gap:3rem;display:grid}.design-lab-palette__group{gap:1.5rem;display:grid}.design-lab-palette__group>header{gap:.4rem;max-width:44rem;display:grid}.design-lab-palette__group h3{letter-spacing:-.02em;margin:0;font-size:1.05rem}.design-lab-palette__group header p{color:color-mix(in srgb, var(--lab-light-text) 65%, transparent);margin:0;font-size:.82rem;line-height:1.8}.design-lab-palette__case{gap:.9rem;display:grid}.design-lab-palette__case-heading{gap:.3rem;display:grid}.design-lab-palette__case-heading h4{letter-spacing:-.01em;margin:0;font-size:.95rem}.design-lab-palette__case-heading p{max-width:44rem;color:color-mix(in srgb, var(--lab-light-text) 62%, transparent);margin:0;font-size:.78rem;line-height:1.7}.design-lab-palette__case-heading code,.design-lab-palette__group header code{font:500 .74rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-palette__pair,.design-lab-palette__floors,.design-lab-palette__subcolors{grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));align-items:start;gap:1rem;display:grid}.design-lab-palette__stage{color:var(--ledger-ink);background:var(--ledger-paper);border-radius:var(--lab-radius);padding:.75rem 1rem 1.25rem;overflow:hidden}.design-lab-palette__appearance{letter-spacing:.14em;opacity:.55;margin:0 0 .5rem;font:700 .62rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-palette__accent{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.9rem;display:flex}.design-lab-palette__accent-surface{border-radius:999px;padding:.45rem .8rem;font-size:.74rem}.design-lab-palette__accent-text{font-size:.74rem;font-weight:600}.design-lab-palette__accent-bright{border-radius:999px;flex:3rem;min-width:3rem;height:3px}.design-lab-palette__ground-subcolors{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.design-lab-palette__ground-subcolors span{border-radius:999px;padding:.35rem .7rem;font-size:.7rem}.design-lab-palette__swatches{gap:.3rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.design-lab-palette__swatches li{grid-template-columns:1rem 1fr auto;align-items:center;gap:.5rem;font-size:.7rem;display:grid}.design-lab-palette__swatches i{width:1rem;height:1rem;box-shadow:inset 0 0 0 1px var(--ledger-line);border-radius:3px}.design-lab-palette__swatches li[data-accent=true]:first-of-type{border-top:1px solid var(--ledger-line);margin-top:.45rem;padding-top:.45rem}.design-lab-palette__swatches code{opacity:.7;font:500 .68rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-palette__ratios{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.design-lab-palette__ratios li{background:color-mix(in srgb, var(--lab-light-text) 5%, transparent);border-radius:6px;grid-template-columns:1fr auto auto;align-items:baseline;gap:.6rem;padding:.3rem .5rem;font-size:.72rem;display:grid}.design-lab-palette__ratios strong{font:600 .74rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.design-lab-palette__ratios small{opacity:.7;font-size:.66rem}.design-lab-palette__ratios li[data-ok=false]{background:#c0392b1f}.design-lab-palette__subcolor-pair{flex-wrap:wrap;gap:.5rem;display:flex}.design-lab-palette__subcolor-pair span{border-radius:8px;padding:.6rem .9rem;font-size:.76rem}.design-lab button:focus-visible,.design-lab a:focus-visible{outline:3px solid var(--lab-accent);outline-offset:3px}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.design-lab-navigation-study article[data-appearance=light] .design-lab-navigation-study__mobile[data-fallback-surface=opaque-neutral]{background:var(--lab-light-surface)}.design-lab-navigation-study article[data-appearance=dark] .design-lab-navigation-study__mobile[data-fallback-surface=opaque-neutral]{background:var(--lab-dark-surface)}}@media (width<=40rem){.design-lab{padding:1.25rem 1rem 7rem}.design-lab-home-study,.design-lab-navigation-study{grid-template-columns:1fr}.design-lab-navigation-study__mobile{bottom:.5rem;left:.5rem;right:.5rem}}@media (prefers-reduced-motion:reduce){.design-lab *,.design-lab :before,.design-lab :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.design-lab-typeface{gap:1.6rem;display:grid}.design-lab-typeface__frame header{margin-bottom:.7rem}.design-lab-typeface__frame h3{margin:0;font-size:.95rem}.design-lab-typeface__frame header p{opacity:.7;margin:.15rem 0 .3rem;font-size:.78rem}.design-lab-typeface__frame code{opacity:.55;word-break:break-all;font-size:.68rem}.design-lab-typeface__stage{background:var(--ledger-paper);border-radius:14px;gap:.9rem;padding:1.1rem;display:grid}.design-lab-typeface__numbers{align-items:baseline;gap:.6rem;display:flex}.design-lab-typeface__numbers strong{color:var(--ledger-ink);font:800 2.6rem/1 var(--font-sans);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.design-lab-typeface__numbers span{color:var(--ledger-muted);font:400 .8rem/1.4 var(--font-sans)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--ledger-paper);--fg:var(--ledger-ink);--danger:#a94436;--heat-0:var(--ledger-surface);--heat-1:color-mix(in srgb, var(--ledger-accent-bright) 24%, var(--heat-0));--heat-2:color-mix(in srgb, var(--ledger-accent-bright) 47%, var(--heat-0));--heat-3:color-mix(in srgb, var(--ledger-accent-bright) 72%, var(--heat-0));--heat-4:var(--ledger-accent-bright)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme]){--danger:#e08d7c}}[data-theme=dark]{--danger:#e08d7c}*{box-sizing:border-box}body{color:var(--fg);background:var(--bg);font-family:var(--font-sans);margin:0}input,textarea,select{font-family:var(--font-sans);font-size:var(--type-input)}.center{max-width:40rem;color:var(--ledger-muted);text-align:center;margin:6rem auto;padding:0 1rem}.login{text-align:center;max-width:24rem;margin:22vh auto 0;padding:0 1.25rem}.brand{color:var(--ledger-ink);font:750 1.4rem/1.2 var(--font-sans);margin:0}.tagline{color:var(--ledger-muted);margin:.4rem 0 2rem}.login-button{color:var(--ledger-on-accent);background:var(--ledger-accent);border:0;border-radius:10px;padding:.72rem 2rem;font-weight:650;text-decoration:none;display:inline-block}.ledger{max-width:44rem;margin:0 auto;padding:1.7rem 1.5rem 4rem}.account-corner{justify-content:flex-end;margin-bottom:.35rem;display:flex}.logout{color:var(--ledger-accent-text);white-space:nowrap;font-size:.8rem;text-decoration:none}.page-enter{animation:.22s ease-out both page-enter}@keyframes page-enter{0%{opacity:0}to{opacity:1}}.login-button,.tab,.pager button,.next-button,.chip{transition:color .16s,background-color .16s,border-color .16s,transform .1s}.login-button:active,.tab:active,.pager button:not(:disabled):active,.next-button:active,.chip:active{transform:translateY(2px)}.ledger .expression-specimen+.expression-specimen,.ledger .editable-expression-card+.editable-expression-card,.ledger .expression-list-item+.expression-list-item{margin-top:.8rem}.empty{color:var(--ledger-muted);padding:1rem 0}.empty-state{text-align:center;justify-items:center;gap:.35rem;padding:3.5rem 1rem;display:grid}.empty-state__title{color:var(--ledger-ink);font-size:var(--type-body);margin:0;font-weight:600}.empty-state__hint{max-width:22rem;color:var(--ledger-muted);font-size:var(--type-small);margin:0 0 1.1rem;line-height:1.7}.empty-state__action{color:var(--ledger-on-accent);font:inherit;font-size:var(--type-small);background:var(--ledger-accent);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:.4rem;padding:.6rem 1.15rem;font-weight:600;display:inline-flex}.empty-state__action:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:3px}.tabbar{grid-template-columns:repeat(var(--tab-count,4), minmax(0, 1fr));gap:.25rem;margin-bottom:1.55rem;display:grid}.tab{color:var(--ledger-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:.65rem .05rem}.tab.active{color:var(--ledger-ink);border-bottom-color:var(--ledger-accent-line)}@media (width<=40rem){.tabbar{inset:auto .75rem calc(.75rem + env(safe-area-inset-bottom,0px)) .75rem;z-index:8;background:color-mix(in srgb, var(--ledger-float) 82%, transparent);box-shadow:0 6px 24px var(--ledger-shadow);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);border-radius:999px;gap:.15rem;margin:0;padding:.3rem;position:fixed}.tab{border-bottom:0;border-radius:999px;min-height:2.9rem;padding:.35rem .1rem;font-size:.72rem;font-weight:600}.tab.active{color:var(--ledger-on-accent);background:var(--ledger-accent)}.practice{--practice-chrome:8.5rem}.ledger{padding-bottom:6.5rem}.ledger:has(.player-bar) .tabbar{bottom:calc(5.2rem + env(safe-area-inset-bottom,0px))}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){@media (width<=40rem){.tabbar{background:var(--ledger-float)}}}.section-title{color:var(--ledger-muted);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:baseline;margin:1.6rem 0 .75rem;font:.62rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.section-title small{color:var(--ledger-muted);font:.75rem/1.3 var(--font-sans);letter-spacing:0;text-transform:none}.heatmap-wrap{padding:4px 0;overflow-x:auto}.heatmap{gap:3px;width:max-content;display:flex}.heat-col{flex-direction:column;gap:3px;display:flex}.heat-cell{background:var(--heat-0);border-radius:3px;width:12px;height:12px}.heat-cell[data-level="1"]{background:var(--heat-1)}.heat-cell[data-level="2"]{background:var(--heat-2)}.heat-cell[data-level="3"]{background:var(--heat-3)}.heat-cell[data-level="4"]{background:var(--heat-4)}.heat-cell.future{background:0 0}.heat-legend{width:max-content;min-width:100%;color:var(--ledger-muted);justify-content:flex-end;align-items:center;gap:3px;margin-top:6px;font-size:.7rem;display:flex}.heat-legend span:first-child{margin-right:3px}.heat-legend span:last-child{margin-left:3px}.pager{justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.pager button,.next-button,.chip{color:var(--ledger-ink);font:inherit;font-size:var(--type-small);background:var(--ledger-surface);cursor:pointer;border:0;border-radius:8px;padding:.42rem 1.1rem}.pager button:disabled{opacity:.4;cursor:default}.pager-status{color:var(--ledger-muted);font-size:.9rem}.notes-toolbar{justify-content:space-between;align-items:center;gap:.75rem;min-height:2rem;margin-bottom:1rem;display:flex}.chips{scrollbar-width:none;flex:auto;gap:8px;min-width:0;padding-right:.25rem;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.notes-toolbar .chip{flex:none}.chip.active{color:var(--ledger-on-accent);background:var(--ledger-accent);font-weight:650}@media (width<=32rem){.ledger{padding-left:1rem;padding-right:1rem}}.account-page{flex-direction:column;gap:1rem;display:flex}.account-email{color:var(--ledger-muted);overflow-wrap:anywhere;margin:0 0 .35rem;font-size:.78rem}.account-open{flex:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.editable-expression-card,.expression-list-item{position:relative}.expression-list-item__open{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;padding:0;position:absolute;inset:0}.expression-list-item__open:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px}.expression-list-item .example-audio-wrap,.expression-list-item .example-accordion{z-index:2;position:relative}.expression-detail__bar{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1.1rem;display:flex}.expression-detail__controls{gap:.35rem;display:flex}.expression-detail__confirm{color:var(--ledger-muted);align-items:center;gap:.4rem;font-size:.78rem;display:flex}.expression-detail__lead{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem;display:flex}.expression-detail__lead .expression-specimen__english{font-size:var(--type-display);padding-right:0}.expression-detail__lead .expression-specimen__meaning{color:var(--ledger-muted);font-size:var(--type-body);margin-top:.45rem}.expression-detail__lead .expression-stage{flex:none;width:2.6rem;margin:.35rem 0 0}.bottom-sheet__scrim{z-index:40;background:color-mix(in srgb, var(--ledger-ink) 34%, transparent);position:fixed;inset:0}.bottom-sheet__panel{z-index:41;width:min(44rem,100%);max-height:min(88vh, var(--visual-viewport-height,100vh), 44rem);padding:.6rem 1.15rem calc(1.3rem + env(safe-area-inset-bottom,0px));background:var(--ledger-float);box-shadow:0 -8px 32px var(--ledger-shadow);border-radius:1.25rem 1.25rem 0 0;outline:none;flex-direction:column;margin:0 auto;display:flex;position:fixed;inset:auto 0 0;overflow-y:auto}.edit-modal__panel{width:min(38rem,100vw - 3rem);max-height:min(82vh,44rem);box-shadow:0 18px 48px var(--ledger-shadow);border-radius:1rem;padding:1.1rem 1.35rem 1.35rem;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.bottom-sheet__handle{background:var(--ledger-surface-muted);border-radius:999px;flex:none;width:2.25rem;height:.25rem;margin:0 auto .7rem}.bottom-sheet__bar{align-items:center;gap:.6rem;margin-bottom:.9rem;display:flex}.bottom-sheet__bar-slot{flex:none;display:flex}.bottom-sheet__bar-slot--end{margin-left:auto}.bottom-sheet__bar .bottom-sheet__title{text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.bottom-sheet__title{color:var(--ledger-muted);letter-spacing:.1em;text-transform:uppercase;margin:0;font:.62rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace}@media (prefers-reduced-motion:reduce){.bottom-sheet__panel,.bottom-sheet__scrim{transition:none!important}}.bottom-sheet__panel .expression-editor{box-shadow:none;background:0 0;padding:0}.example-editor__actions{display:flex}.example-editor__confirm{color:var(--ledger-muted);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.76rem;display:flex}.example-editor__confirm span{flex:12rem}.example-editor__delete{margin-right:auto}.expression-detail__example{position:relative}.expression-detail__example-open{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;padding:0;position:absolute;inset:0}.expression-detail__example-open:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px}.expression-detail__example .example-audio-wrap{z-index:2;position:relative}.expression-detail__examples-heading{justify-content:space-between;align-items:center;margin-bottom:.55rem;display:flex}.expression-detail__examples-heading h2{color:var(--ledger-muted);letter-spacing:.1em;text-transform:uppercase;margin:0;font:.62rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace}.expression-detail__examples{gap:.6rem;display:grid}.example-editor{gap:.7rem;display:grid}.example-editor__row{align-items:flex-end;gap:.5rem;display:flex}.example-editor__row .expression-editor__field{flex:auto;min-width:0}.expression-detail__examples .expression-specimen__example{color:var(--ledger-ink);font:600 var(--type-body)/1.7 var(--font-sans);margin:0}.expression-detail__examples .expression-specimen__example-ja{color:var(--ledger-muted);font-size:var(--type-small);margin:.4rem 0 0}.expression-detail__error{color:#a1473e;margin:.7rem 0 0;font-size:.76rem}.round-control{width:2rem;height:2rem;color:var(--ledger-muted);font:inherit;background:var(--ledger-surface);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;transition:opacity .16s,transform .1s,border-color .16s;display:grid}.round-control:not(:disabled):active{transform:translateY(1px)}.round-control:focus-visible{outline:2px solid color-mix(in srgb, var(--ledger-accent) 70%, transparent);outline-offset:2px}.round-control:disabled{cursor:default;opacity:.5}.round-control--primary{color:var(--ledger-on-accent);background:var(--ledger-accent)}.round-control--danger{color:#fff;background:#a1473e}.round-control--danger-quiet{color:#a1473e}.control-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:.85rem;height:.85rem;animation:.7s linear infinite control-spin}@keyframes control-spin{to{transform:rotate(360deg)}}.expression-editor{gap:.9rem;display:grid}.add-open-bar{justify-content:flex-end;margin-bottom:.8rem;display:flex}.add-open{width:100%;color:var(--ledger-accent-text);font:inherit;font-size:var(--type-small);border:1px dashed var(--ledger-line);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:.4rem;margin-bottom:.8rem;padding:.85rem;transition:border-color .16s;display:flex}.add-open:hover{border-color:var(--ledger-accent-bright)}.add-open:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px}.add-form{margin-bottom:.8rem}.add-form__hint{color:var(--ledger-muted);font-size:var(--type-caption);margin:-.5rem 0 0;line-height:1.6}.add-form__error{color:var(--danger);font-size:var(--type-small);margin:0}.add-form__actions{align-items:center;gap:.7rem;display:flex}.add-save{color:var(--ledger-on-accent);font:inherit;background:var(--ledger-accent);cursor:pointer;border:0;border-radius:.6rem;padding:.6rem 1.4rem;font-weight:700}.add-save:disabled{color:var(--ledger-muted);background:var(--ledger-surface);cursor:default}.expression-editor__field{color:var(--ledger-muted);gap:.35rem;font-size:.76rem;display:grid}.expression-editor__field input,.expression-editor__field textarea{width:100%;color:var(--ledger-ink);background:var(--ledger-sheet);border:1px solid var(--ledger-line);border-radius:6px;padding:.58rem .65rem}.expression-editor__field textarea{resize:vertical;min-height:5.5rem}.expression-editor__english{font:650 1.05rem/1.45 var(--font-sans)}.expression-editor__slots,.expression-editor__examples{border:0;min-width:0;padding:0}.expression-editor__slots{flex-wrap:wrap;gap:.35rem;display:flex}.expression-editor__slots button{color:var(--ledger-muted);background:color-mix(in srgb, var(--ledger-ink) 4%, var(--ledger-sheet));border:1px dashed var(--ledger-line);cursor:pointer;border-radius:6px;padding:.2rem .45rem;font:.72rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.expression-editor__examples{gap:.65rem;display:grid}.expression-editor__examples legend{color:var(--ledger-ink);margin-bottom:.5rem;font-size:.78rem}.expression-editor__messages{min-height:1.2rem;color:var(--ledger-muted);font-size:.78rem}.expression-editor__messages p{margin:0}.expression-editor__messages [role=alert]{color:#a1473e}.expression-editor__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.expression-editor__example-row{gap:.55rem;display:grid}.expression-editor__example-field{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem;display:grid}.audio-range-toggle.is-active{color:var(--ledger-on-accent);background:var(--ledger-accent);border-color:var(--ledger-accent)}.audio-trimmer{background:var(--ledger-paper);border:1px solid var(--ledger-line);border-radius:1rem;gap:.65rem;min-width:0;padding:.75rem;animation:.16s ease-out audio-range-reveal;display:grid}.audio-trimmer__viewport{touch-action:pan-y;cursor:grab;border-radius:.65rem;min-width:0;position:relative;overflow:hidden}.audio-trimmer__viewport:active{cursor:grabbing}.audio-trimmer__waveform{min-height:5rem}.audio-trimmer__controls{justify-content:center;align-items:center;gap:.45rem;display:flex}.audio-trimmer__controls .round-control:nth-child(2){width:2.5rem;height:2.5rem}.audio-trimmer__skeleton{height:3.7rem;color:var(--ledger-muted);opacity:.18;justify-content:space-around;align-items:center;animation:1.6s ease-in-out infinite skeleton-pulse;display:flex;position:absolute;inset:.65rem 0}.audio-trimmer__skeleton i{background:currentColor;border-radius:2px;width:2px;min-height:.4rem}.audio-trimmer__error{color:var(--danger);text-align:center;margin:0;font-size:.78rem}.audio-trimmer__waveform ::part(region){background:color-mix(in srgb, var(--ledger-accent) 20%, transparent);border-block:2px solid var(--ledger-accent)}.audio-trimmer__waveform ::part(region-handle){border-color:var(--ledger-accent)!important;width:.65rem!important}.audio-trimmer__waveform ::part(cursor){background:#c4853a}@keyframes audio-range-reveal{0%{opacity:0;transform:translateY(-.25rem)}to{opacity:1;transform:none}}@media (width<=35rem){.audio-trimmer{gap:.55rem;padding:.6rem}}.skeleton-line{background:color-mix(in srgb, var(--ledger-ink) 9%, var(--ledger-sheet));border-radius:3px;height:.72rem;margin:.65rem 0;animation:1.6s ease-in-out infinite skeleton-pulse;display:block}.skeleton-line--short{width:28%}.skeleton-line--medium{width:55%}.skeleton-line--long{width:86%;height:1.35rem}.skeleton-line--inline{vertical-align:-.12em;height:1em;margin:0;display:inline-block}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}.skeleton-heatmap{grid-template-columns:repeat(13,12px);gap:3px;margin:1rem 0 1.6rem;display:grid}.skeleton-heatmap i{background:var(--heat-0);border-radius:3px;width:12px;height:12px}@media (prefers-reduced-motion:reduce){.page-enter,.ledger .expression-specimen{animation:none}.login-button,.tab,.pager button,.next-button,.chip{transition-duration:.01ms}.skeleton-line{animation:none}.start-manual summary:before{transition:none}.audio-trimmer,.audio-trimmer__skeleton{animation:none}}.note-specimen__title{font-size:1.1rem}.note-specimen__category{color:var(--ledger-muted);letter-spacing:.04em;background:var(--ledger-surface);border-radius:999px;margin-bottom:.6rem;padding:.1rem .55rem;font-size:.7rem;display:inline-block}.note-specimen__body{color:var(--ledger-ink);white-space:pre-wrap;margin:0;font-size:.85rem;line-height:1.75}.note-editor__body{resize:vertical;min-height:12rem;line-height:1.75}.voice.has-player{padding-bottom:8.5rem}@media (width<=40rem){.voice.has-player{padding-bottom:13rem}}.voice h2{font:700 1.15rem/1.4 var(--font-sans);overflow-wrap:anywhere;margin:.5rem 0 .25rem}.voice section h2{margin:2rem 0 .75rem;font-size:1.05rem}.voice .subtitle{color:var(--ledger-muted);margin:0 0 1.5rem}.voice button{font:inherit;cursor:pointer;background:var(--ledger-surface);color:inherit;border:0;border-radius:8px;padding:.4rem .9rem;transition:color .16s,background-color .16s,transform .1s}.voice button:not(:disabled):active{transform:translateY(2px)}.voice button:disabled{opacity:.45;cursor:default}.voice button.primary{background:var(--ledger-accent);color:var(--ledger-on-accent)}.voice .link-button{color:var(--ledger-accent-text);background:0 0;border:none;padding:.2rem .3rem}.voice .back{margin-bottom:.5rem}.voice .muted{color:var(--ledger-muted)}.voice .small{font-size:.85rem}.voice .error{color:var(--danger)}.voice .notice{background:var(--ledger-sheet);border-radius:10px;padding:.9rem 1rem}.voice .notice-error{background:color-mix(in srgb, var(--danger) 12%, var(--ledger-sheet))}.upload-button{background:var(--ledger-accent);color:var(--ledger-on-accent);border:1px solid var(--ledger-accent);cursor:pointer;border-radius:6px;margin-bottom:1rem;padding:.55rem 1.1rem;font-weight:600;transition:background-color .16s,transform .1s;display:inline-block}.upload-button:active{transform:translateY(2px)}.upload-button.disabled{opacity:.6;cursor:wait}.upload-button input{display:none}.recording-list{flex-direction:column;gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.recording-card{background:var(--ledger-sheet);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.voice .recording-main{text-align:left;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:.25rem;padding:0;display:flex}.recording-name{font:700 1rem/1.4 var(--font-sans);overflow-wrap:anywhere}.recording-meta{color:var(--ledger-muted);font-variant-numeric:tabular-nums;font-size:.85rem}.recording-side{flex-direction:column;align-items:flex-end;gap:.3rem;max-width:14rem;display:flex}.recording-confirm{flex-basis:100%;gap:.35rem;display:grid}.recording-confirm p{color:var(--ledger-muted);font-size:var(--type-small);margin:0;line-height:1.7}.recording-confirm strong{color:var(--ledger-ink)}.recording-confirm__actions{align-items:center;gap:1rem;display:flex}.add-form__actions .link-button,.recording-confirm__actions .link-button:not(.danger){color:var(--ledger-muted)}.status{background:var(--ledger-surface);border-radius:999px;padding:.15rem .6rem;font-size:.8rem}.status-ready{color:var(--ledger-accent-text);background:color-mix(in srgb, var(--ledger-accent) 12%, var(--ledger-sheet))}.status-processing,.status-uploaded{color:#8a6018;background:color-mix(in srgb, #b07d2a 16%, var(--ledger-sheet))}.status-failed{color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, var(--ledger-sheet))}.speaker-bar{flex-wrap:wrap;gap:.5rem;display:flex}.speaker-chip{background:var(--ledger-surface);border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .8rem;display:flex}.speaker-chip.hidden-speaker{opacity:.55}.speaker-chip.editing{gap:.4rem}.speaker-chip.editing input{color:inherit;background:var(--ledger-paper);border:1px solid var(--ledger-line);border-radius:4px;width:9rem;padding:.2rem .5rem}.speaker-visibility{cursor:pointer;align-items:center;gap:.4rem;display:flex}.speaker-visibility input{accent-color:var(--ledger-accent)}.voice .small-button{padding:.2rem .6rem;font-size:.85rem}.script{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.transcript-help{margin:-.35rem 0 .55rem}.script-row{border-radius:4px;grid-template-columns:2.4rem minmax(0,1fr) 2.4rem;align-items:start;gap:.4rem;padding:.25rem .15rem;transition:background-color .16s,box-shadow .16s;display:grid}.script-row:hover{background:var(--ledger-sheet)}.script-row.playing{background:color-mix(in srgb, var(--ledger-accent) 13%, transparent);box-shadow:inset 2px 0 0 var(--ledger-accent)}.script-name{min-width:2.5rem;color:var(--ledger-accent-text);flex-shrink:0;font-weight:600}.script-playback .script-name{-webkit-user-select:none;user-select:none;min-width:0;margin-bottom:.05rem;font-size:.76rem;display:block}.script-text{overflow-wrap:anywhere;flex:1}.script-playback .script-text{display:block}.script-time{font-variant-numeric:tabular-nums;flex-shrink:0}.script-playback{cursor:pointer;-webkit-user-select:text;user-select:text;min-width:0;padding:.42rem .2rem;line-height:1.7;position:relative}.script-playback .script-text{cursor:text}.script-playback:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px;border-radius:4px}.script-copy-control{position:relative}.script-copy-feedback{width:1.35rem;height:1.35rem;color:var(--ledger-sheet);pointer-events:none;background:var(--ledger-ink);opacity:0;border-radius:999px;place-items:center;transition:opacity .16s,transform .16s;display:grid;position:absolute;inset:-.35rem 0 auto auto;transform:translateY(3px)}.script-copy-feedback.visible{opacity:1;transform:none}.script-copy-feedback.error{background:#a1473e}.player-bar{background:var(--ledger-sheet);border-top:1px solid var(--ledger-line);box-shadow:0 -8px 24px var(--ledger-shadow);z-index:10;position:fixed;inset:auto 0 0}.player-inner{flex-direction:column;gap:.5rem;max-width:44rem;margin:0 auto;padding:.7rem 1rem .85rem;display:flex}.player-line{align-items:baseline;gap:.6rem;display:flex}.player-speaker{color:var(--ledger-accent-text);flex-shrink:0}.player-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.player-close{color:var(--ledger-muted);flex-shrink:0}.player-controls{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.player-toggle{min-width:2.6rem}.player-seek{min-width:8rem;accent-color:var(--ledger-accent);flex:1}.player-time{font-variant-numeric:tabular-nums;flex-shrink:0}.player-rates{align-items:center;gap:.25rem;display:flex}.voice .rate-chip{border-radius:999px;padding:.2rem .55rem;font-size:.8rem}.voice .rate-chip.selected,.voice .loop-chip.selected{background:var(--ledger-accent);border-color:var(--ledger-accent);color:var(--ledger-on-accent)}.voice .loop-chip{border-radius:999px;padding:.2rem .55rem}.rate-fine{align-items:center;gap:.35rem;margin-left:.35rem;display:flex}.rate-fine input{width:6rem;accent-color:var(--ledger-accent)}.rate-value{font-variant-numeric:tabular-nums;min-width:3.2rem}.list-header{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.favorites-link{white-space:nowrap}.favorite-row{align-items:baseline;gap:.15rem;display:flex}.voice .favorites-script .script-line{text-align:left;background:0 0;border:none;border-radius:4px;flex:1;align-items:baseline;gap:.6rem;width:100%;padding:.45rem .6rem;line-height:1.7;display:flex}.voice .favorites-script .script-line:hover{background:var(--ledger-sheet)}.voice .favorites-script .script-line.playing{background:color-mix(in srgb, var(--ledger-accent) 13%, transparent);box-shadow:inset 2px 0 0 var(--ledger-accent)}.voice .script-copy-button,.voice .script-row .star{border-radius:50%;place-items:center;width:2.15rem;height:2.15rem;margin-top:.45rem;padding:0;display:grid}.voice .script-row .star{color:var(--ledger-muted);background:var(--ledger-sheet)}.voice .favorite-row .star{color:var(--ledger-muted);background:0 0;border:none;flex-shrink:0;padding:.45rem .4rem;font-size:1rem;line-height:1.7}.voice .script-row .star.active,.voice .favorite-row .star.active{color:#b08b2e}@media (prefers-color-scheme:dark){.voice .script-row .star.active,.voice .favorite-row .star.active{color:#d8b45e}}.favorite-source{margin-top:.1rem;display:block}@media (prefers-reduced-motion:reduce){.recording-card{animation:none}.voice button,.upload-button,.script-row,.script-copy-feedback{transition-duration:.01ms}}.diary-day{margin-bottom:1.6rem}.entry-specimen__en{color:var(--ledger-ink);font:400 1rem/1.75 var(--font-sans);white-space:pre-wrap;margin:0}.entry-editor__en{resize:vertical;min-height:7.5rem}.diary-sidenotes{margin:.6rem 0 0;padding:0;list-style:none}.diary-sidenotes li{align-items:baseline;gap:.5em;padding:.18rem .2rem;font-size:.8rem;display:flex}.diary-sidenotes__kind{color:var(--ledger-muted);letter-spacing:.06em;flex:none;font-size:.68rem}.diary-sidenotes__text{color:var(--ledger-ink);overflow-wrap:anywhere}.editable-expression-card .entry-specimen__en:before{content:"";float:right;width:5.4rem;height:2.3rem}.home-pick{margin-top:1.05rem;position:relative}.home-pick__reason{z-index:1;color:var(--ledger-accent-text);background:var(--ledger-paper);border:1px dashed var(--ledger-accent);border-radius:999px;margin:0 0 -.55rem .9rem;padding:.12rem .6rem;font-size:.68rem;display:inline-block;position:relative}.home-numbers{gap:.6rem;margin:1.4rem 0 0;display:flex}.home-numbers>div{background:var(--ledger-surface);border:1px solid color-mix(in srgb, var(--ledger-ink) 60%, var(--ledger-line));border-radius:12px;flex:1;gap:.15rem;padding:.6rem .75rem;display:grid}.home-numbers strong{font:750 1.15rem/1 ui-monospace,monospace}.home-numbers span{color:var(--ledger-muted);letter-spacing:.08em;font:650 .58rem/1.2 ui-monospace,monospace}.getting-started{background:var(--ledger-sheet);border-radius:12px;margin-bottom:2rem;padding:1.1rem 1.1rem 1.3rem}.copy-prompt{width:100%;min-height:3.25rem;color:var(--ledger-on-accent);font:inherit;background:var(--ledger-accent);cursor:pointer;border:0;border-radius:.6rem;margin:.2rem 0 1rem;padding:.85rem 1rem;font-weight:700}.start-manual{margin:0 0 1rem}.start-manual summary{color:var(--ledger-muted);font-size:var(--type-small);cursor:pointer;list-style:none}.start-manual summary::-webkit-details-marker{display:none}.start-manual summary:before{content:"▸";margin-right:.35em;transition:transform .15s;display:inline-block}.start-manual[open] summary:before{transform:rotate(90deg)}.start-manual summary:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px;border-radius:4px}.start-lead{margin:.6rem 0;font-size:.92rem;line-height:1.75}.start-note{color:var(--ledger-muted);margin:1rem 0 0;font-size:.82rem;line-height:1.7}.start-url{background:color-mix(in srgb, var(--ledger-ink) 6%, transparent);border-radius:.45rem;align-items:center;gap:.5rem;margin:.9rem 0;padding:.55rem .7rem;display:flex}.start-url code{white-space:nowrap;flex:1;font-size:.85rem;overflow-x:auto}.copy-url{width:2rem;height:2rem;color:var(--ledger-muted);background:var(--ledger-surface);cursor:pointer;border:0;border-radius:.5rem;flex:none;font-size:.95rem}.copy-url:active{transform:translateY(1px)}.start-steps{counter-reset:step;margin:.9rem 0;padding-left:1.5rem}.start-steps li{margin-bottom:.35rem;font-size:.9rem;line-height:1.7}.start-steps .step-check{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.5rem;gap:.55rem;padding:.35rem .4rem;display:flex}.start-steps .step-check:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:1px}.step-mark{width:1.3rem;height:1.3rem;color:var(--ledger-on-accent);background:var(--ledger-surface);border-radius:.35rem;flex:0 0 1.3rem;place-items:center;margin-top:.15rem;font-size:.8rem;display:grid}.start-steps .is-done .step-mark{background:var(--ledger-accent)}.start-steps .is-done .step-body{color:var(--ledger-muted)}.step-body small{color:var(--ledger-muted);font-size:var(--type-caption);line-height:1.6;display:block}.step-body .start-url{margin:.45rem 0 .2rem}.landing{max-width:30rem;margin:0 auto;padding:3.5rem 1.25rem 3rem}.landing-head{margin-bottom:1.6rem}.landing-lead{margin:0 0 1.6rem;font-size:.95rem;line-height:1.85}.landing-points{margin:0 0 2rem;padding:0;list-style:none}.landing-points li{border-left:3px solid var(--ledger-line);flex-direction:column;gap:.15rem;margin-bottom:1rem;padding-left:.9rem;display:flex}.landing-points strong{font-size:.95rem}.landing-points span{color:var(--ledger-muted);font-size:.84rem;line-height:1.65}.landing-note{color:var(--ledger-muted);margin:1rem 0 0;font-size:.82rem;line-height:1.7}.legal-links{gap:1rem;margin-top:2rem;display:flex}.legal-links a{color:var(--ledger-muted);font-size:.8rem}.account-settings{margin-top:1.6rem}.account-page .getting-started{margin-bottom:0}.link-button{color:var(--ledger-accent-text);font:inherit;cursor:pointer;background:0 0;border:0;padding:.35rem 0}.link-button:focus-visible{outline:2px solid var(--ledger-accent);outline-offset:2px;border-radius:4px}.link-button.danger{color:var(--danger);text-underline-offset:.25em;padding:.5rem 0;text-decoration:underline}.delete-panel{border:1px solid var(--danger);border-radius:.6rem;margin-top:.6rem;padding:1rem}.delete-warning{margin:0 0 .6rem;font-size:.88rem;line-height:1.7}.delete-list{color:var(--ledger-muted);margin:0 0 .9rem;padding-left:1.2rem;font-size:.84rem}.delete-label{font-size:.84rem;line-height:1.9;display:block}.delete-confirm:focus-visible{outline:2px solid var(--danger);outline-offset:1px}.delete-confirm{width:100%;color:var(--ledger-ink);background:var(--ledger-sheet);border:1px solid var(--ledger-line);border-radius:.4rem;margin-top:.3rem;padding:.5rem .6rem;display:block}.delete-actions{justify-content:flex-end;align-items:center;gap:1rem;margin-top:1rem;display:flex}.delete-submit{color:var(--ledger-paper);background:var(--danger);cursor:pointer;border:none;border-radius:.4rem;padding:.5rem .9rem;font-size:.85rem}.delete-submit:disabled{opacity:.45;cursor:not-allowed}.home-total{align-items:baseline;gap:.6rem;margin:.5rem 0 1.6rem;display:flex}.home-total strong{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:3.2rem;line-height:1}.home-total span{color:var(--ledger-muted);font-size:var(--type-small)}.home-counts{gap:1.5rem;margin-bottom:1.6rem;display:flex}.home-counts div{flex-direction:column;display:flex}.home-counts strong{font-variant-numeric:tabular-nums;font-size:1.4rem}.home-counts span{color:var(--ledger-muted);letter-spacing:.04em;font-size:.72rem}.home-practice{width:100%;min-height:3.25rem;color:var(--ledger-on-accent);font:inherit;background:var(--ledger-accent);cursor:pointer;border:0;border-radius:.6rem;padding:.85rem 1rem;font-weight:700}.home-rest{color:var(--ledger-muted);font-size:var(--type-small);margin:0}.practice-card{padding-bottom:1.15rem}.practice-hint{color:var(--ledger-muted);margin:1.3rem 0 .8rem;font-size:.82rem;line-height:1.7}.practice-actions{align-items:center;gap:.7rem;display:flex}.answer-ok,.answer-ng{font:inherit;font-size:var(--type-body);cursor:pointer;border:0;border-radius:.6rem;padding:.66rem 1.1rem}.answer-ok{color:var(--ledger-on-accent);background:var(--ledger-accent);flex:1;font-weight:700}.answer-ng{min-width:5.5rem;color:var(--ledger-muted);background:var(--ledger-surface)}.practice{flex-direction:column;display:flex}.practice-skeleton{flex-direction:column;flex:1;display:flex}.practice-skeleton .answer-ok,.practice-skeleton .answer-ng{min-height:2.75rem;display:block}:is(.practice:has(.practice-card),.practice:has(.practice-steps)){min-height:calc(100vh - var(--practice-chrome,10rem));min-height:calc(100dvh - var(--practice-chrome,10rem))}.practice-finished{color:var(--ledger-muted);margin:auto 0 0;padding:0}.step-ladder{align-items:flex-end;gap:.2rem;display:flex}.step-ladder i{background:var(--ledger-surface);border-radius:.15rem .15rem 0 0;flex:.55rem;min-width:2px;max-width:.55rem}.step-ladder i.is-filled{background:color-mix(in srgb, var(--ledger-accent-bright) var(--rung-mix,100%), var(--ledger-surface))}.expression-stage{max-width:4.6rem;height:.9rem;margin:.7rem 0 0}.expression-specimen__corner .expression-stage{width:2.6rem;margin:0}.practice-steps{height:3rem;margin:auto 0 0}.practice-finished+.practice-steps{margin-top:.9rem}.stage-distribution{margin:0 0 1.4rem}.stage-distribution ol{grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.stage-distribution li{justify-items:center;gap:.3rem;display:grid}.stage-distribution__bar{align-items:flex-end;width:100%;height:2.6rem;display:flex}.stage-distribution__bar i{background:var(--ledger-surface);border-radius:.2rem .2rem 0 0;width:100%;max-width:2.1rem;margin:0 auto}.stage-distribution__bar i.is-filled{background:color-mix(in srgb, var(--ledger-accent-bright) var(--rung-mix,100%), var(--ledger-surface))}.stage-distribution strong{color:var(--ledger-ink);font-size:var(--type-small);font-variant-numeric:tabular-nums;font-weight:650}.stage-distribution__ends{color:var(--ledger-muted);font-size:var(--type-caption);justify-content:space-between;margin:.35rem 0 0;display:flex}.design-lab-parts__ladders{align-items:flex-end;gap:1.4rem;width:100%;display:flex}.cumulative-stairs{align-items:flex-end;gap:1px;height:3.4rem;margin:.9rem 0 1.4rem;display:flex}.cumulative-stairs i{border-top:3px solid var(--ledger-accent-bright);background:0 0;border-radius:2px 2px 0 0;flex:1 1 0;min-width:2px}.today-trace{margin-top:0}
