:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#fff;--surface:#f6f6f8;--fg:#1b1b1f;--muted:#5d5d6b;--line:#e2e2e8;--accent:#b4432f;--on-accent:#fff;--pass:#2e7d46;--fail:#b4432f;font-family:ui-sans-serif,system-ui,Hiragino Sans,Noto Sans JP,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1b1b1f;--surface:#232329;--fg:#ececf0;--muted:#9a9aa8;--line:#32323c;--accent:#e08268;--on-accent:#1b1b1f;--pass:#5cc27a;--fail:#e08268}}html{font-size:calc(100% * var(--text-scale,1))}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%;margin:0}.app{flex-direction:column;min-height:100dvh;display:flex}.topbar{padding:.75rem 1rem;padding-top:max(.75rem, env(safe-area-inset-top));border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{color:var(--fg);cursor:pointer;background:0 0;border:0;padding:0;font-size:1.15rem;font-weight:600}.brand span{color:var(--muted);letter-spacing:.04em;margin-left:.4rem;font-size:.8rem;font-weight:400}.topbar nav{gap:.25rem;display:flex}.topbar nav button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.4rem .7rem;font-size:.9rem}.topbar nav button[aria-current=true]{color:var(--fg);background:color-mix(in srgb, var(--fg) 8%, transparent)}main{flex:1;width:100%;max-width:44rem;margin:0 auto;padding:1.5rem 1rem 3rem}.prose h1{margin:0 0 .75rem;font-size:1.5rem}.prose h2{letter-spacing:.02em;margin:1.75rem 0 .5rem;font-size:1rem}.prose p,.prose li{color:var(--muted);line-height:1.6}.prose a{color:var(--accent)}.prose ul:not([class]){padding-left:1.1rem}.facts{grid-template-columns:max-content 1fr;gap:.4rem 1.25rem;margin-top:1.5rem;font-size:.92rem;display:grid}.facts dt{color:var(--fg);font-weight:600}.facts dd{color:var(--muted);margin:0}@media (width<=30rem){.facts{grid-template-columns:1fr;gap:.15rem}.facts dd{margin-bottom:.6rem}}button.primary,button.ghost{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.6rem 1rem}button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600}button.primary:disabled{opacity:.4;cursor:default}button.ghost{color:var(--fg);border-color:var(--line);background:0 0}button.small{padding:.35rem .7rem;font-size:.85rem}.actions{flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;display:flex}.jp{font-family:var(--jp-font,"Hiragino Sans", "Yu Gothic UI", "Noto Sans JP", Meiryo, sans-serif)}.hint{color:var(--accent);margin:.75rem 0 0;font-size:.9rem}.counts{gap:.75rem;margin-bottom:2rem;display:flex}.count{flex-direction:column;align-items:flex-start;gap:.1rem;min-width:8rem;padding:1rem 1.5rem;display:flex}.count strong{font-size:2rem;line-height:1}.count span{opacity:.85;font-size:.85rem}.decks{margin:0 0 1.5rem;padding:0;list-style:none}.deck{border:1px solid var(--line);border-radius:10px;align-items:center;gap:.75rem;margin-bottom:.6rem;padding:.75rem 1rem;display:flex}.deck-name{color:var(--fg);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;gap:.2rem;padding:0;display:flex}.gloss{color:var(--muted);font-size:.85rem}.pos{color:var(--muted);font-size:.75rem;font-style:italic}.review{flex-direction:column;max-width:34rem;margin:0 auto;display:flex}.review-meta{color:var(--muted);letter-spacing:.04em;justify-content:space-between;font-size:.8rem;display:flex}.prompt{font-size:calc(clamp(3rem, 18vw, 5rem) * var(--prompt-scale,1));text-align:center;word-break:break-word;margin:1.5rem 0 2rem;line-height:1.15}.review.is-pass .prompt{color:var(--pass)}.review.is-fail .prompt{color:var(--fail)}.answers{flex-direction:column;gap:1rem;display:flex}.answer-row{flex-direction:column;gap:.75rem;display:flex}.answers label{flex-direction:column;gap:.3rem;display:flex}.answers label>span{color:var(--muted);letter-spacing:.05em;font-size:.78rem}input.answer{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:8px;width:100%;padding:.65rem .8rem;font-size:1.25rem}input.answer:focus{outline:2px solid var(--accent);outline-offset:1px}input.search{margin-bottom:1rem;font-size:1rem}.new-deck{flex-wrap:nowrap;align-items:stretch}.new-deck input.search{flex:1;min-width:0;margin-bottom:0}.new-deck button{flex:none}.feedback{flex-direction:column;display:flex}.verdict{margin:0 0 .75rem;font-size:1.1rem;font-weight:600}.review.is-pass .verdict{color:var(--pass)}.review.is-fail .verdict{color:var(--fail)}.answer-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:.25rem 0 .35rem;font-size:.72rem;font-weight:600}.your-answer{grid-template-columns:auto 1fr;align-items:baseline;gap:.3rem .9rem;margin:0 0 1rem;display:grid}.your-answer dt{color:var(--muted);font-size:.8rem}.your-answer dd{flex-wrap:wrap;align-items:baseline;gap:.2rem .7rem;margin:0;display:flex}.your-answer .typed{font-size:1.1rem}.your-answer .typed.jp{font-size:1.2rem}.your-answer .status{font-size:.82rem}.your-answer .is-ok .status{color:var(--pass)}.your-answer .is-wrong .typed{color:var(--fail);text-decoration:line-through;text-decoration-thickness:1px}.your-answer .is-wrong .status{color:var(--fail)}.your-answer .is-near .typed{-webkit-text-decoration:underline wavy var(--accent);text-decoration:underline wavy var(--accent);text-underline-offset:4px}.your-answer .is-near .status{color:var(--accent)}.truth{margin:0;padding:0;list-style:none}.truth li{border-top:1px solid var(--line);flex-direction:column;gap:.15rem;padding:.6rem 0;display:flex}.truth .jp{font-size:1.3rem}.overrides{border-top:1px solid var(--line);flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.overrides button{padding:.4rem .7rem;font-size:.85rem}.hits{margin:0;padding:0;list-style:none}.hits li{border-top:1px solid var(--line);align-items:center;gap:.75rem;padding:.7rem 0;display:flex}.hit-main{flex-direction:column;flex:1;gap:.15rem;display:flex}.hit-main .hw{font-size:1.35rem}.hit-main .reading{color:var(--muted);font-size:.95rem}.tag{color:var(--accent);border:1px solid var(--accent);border-radius:999px;align-self:flex-start;margin-top:.2rem;padding:.05rem .5rem;font-size:.72rem}.hits .empty{color:var(--muted);font-size:.9rem;display:block}.hits code{font-size:.85em}.loading p{margin:0 0 .5rem}.bar{background:var(--line);border-radius:999px;height:4px;overflow:hidden}.bar>div{background:var(--accent);height:100%}.choices{flex-direction:column;gap:.6rem;margin:1rem 0 0;display:flex}.choice{text-align:left;font:inherit;color:var(--fg);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;gap:.3rem;padding:.85rem 1rem;display:flex}.choice.is-selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.choice strong{font-size:.98rem}.choice span{color:var(--muted);font-size:.88rem;line-height:1.45}.choice em{color:var(--muted);font-size:.8rem;font-style:italic}.choice.is-selected strong:after{content:" ✓";color:var(--accent)}.small-print{margin-top:2rem;font-size:.78rem}.topbar nav button.unsynced{color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:.25rem .6rem;font-size:.78rem}.signin{flex-direction:column;gap:.75rem;max-width:22rem;margin-top:1rem;display:flex}.signin label{flex-direction:column;gap:.3rem;display:flex}.signin label>span{color:var(--muted);letter-spacing:.05em;font-size:.78rem}.signin .answer{font-size:1rem}.prompt-row{justify-content:center;align-items:center;gap:.75rem;display:flex}.prompt-row .prompt{margin-bottom:1.25rem}button.ghost.speak{border-radius:999px;padding:.4rem .7rem;font-size:1.1rem;line-height:1}.transition{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.6rem;margin:0 0 1rem;font-size:.9rem;display:flex}.transition.up strong{color:var(--pass)}.transition.down strong{color:var(--fail)}.transition strong{letter-spacing:.02em;font-size:.85rem}.problems{margin:.75rem 0 0;padding:0;list-style:none}.dashboard{flex-direction:column;gap:.75rem;margin-bottom:1.75rem;display:flex}.dash-row{grid-template-columns:minmax(13.5rem,1fr) minmax(0,1.75fr);gap:.75rem;display:grid}@media (width<=40rem){.dash-row{grid-template-columns:1fr}.cal-day{aspect-ratio:auto;height:1.65rem}.cal-day.is-studied,.cal-day.is-today{justify-self:center;width:1.65rem}}.dash-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;min-width:0;padding:.85rem 1rem .9rem}.dash-card h2{margin:0 0 .2rem;font-size:1rem}.dash-card.fill-chart{flex-direction:column;display:flex}.dash-card.fill-chart .colchart{flex-direction:column;flex:1;display:flex}.dash-card.fill-chart .cols{flex:1;grid-template-rows:1fr}.dash-card.fill-chart .plot{flex:1;height:auto;min-height:6.6rem}.dash-card .gloss{margin:0 0 .6rem;font-size:.82rem}.calendar{font-size:.78rem}.cal-head{justify-content:space-between;align-items:center;margin:.15rem 0 .35rem;display:flex}.cal-head span{font-size:.85rem}button.ghost.cal-nav{border-color:#0000;padding:.05rem .55rem;font-size:1rem;line-height:1.2}.cal-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.cal-dow{color:var(--muted);padding-bottom:.1rem;font-size:.68rem}.cal-day{aspect-ratio:1;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;display:flex}.cal-day.is-studied{background:var(--accent);color:var(--on-accent);font-weight:600}.cal-day.is-today{box-shadow:inset 0 0 0 1.5px var(--fg);color:var(--fg)}.cal-day.is-today.is-studied{box-shadow:inset 0 0 0 1.5px var(--on-accent);color:var(--on-accent)}.days-studied{text-align:right;color:var(--muted);margin:.6rem 0 .1rem;font-size:.85rem}.days-studied strong{color:var(--fg);margin-right:.2rem;font-size:1.6rem}.streak-card .gloss{text-align:right;margin:0}.colchart{color:var(--muted);font-size:.72rem}.colchart .cols{gap:0;margin:0;padding:0;list-style:none;display:grid}.colchart .cols li{cursor:default;flex-direction:column;align-items:center;min-width:0;display:flex}.colchart .num{height:1.1rem;color:var(--fg);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;line-height:1.1rem}.colchart .plot{border-bottom:1px solid var(--line);flex-direction:column;justify-content:flex-end;align-items:center;width:100%;height:6.6rem;display:flex}.colchart .bar{background:var(--accent);border-radius:4px 4px 0 0;width:calc(100% - 3px);max-width:1.35rem}.colchart .bar.is-zero{height:0}.colchart .cols li:hover .bar{filter:brightness(1.15)}[data-level=apprentice]{--lv:var(--lv-apprentice);--lv-on:var(--lv-apprentice-on)}[data-level=guru]{--lv:var(--lv-guru);--lv-on:var(--lv-guru-on)}[data-level=master]{--lv:var(--lv-master);--lv-on:var(--lv-master-on)}[data-level=enlightened]{--lv:var(--lv-enlightened);--lv-on:var(--lv-enlightened-on)}[data-level=burned]{--lv:var(--lv-burned);--lv-on:var(--lv-burned-on)}:root[data-levels=on] .colchart .bar[data-level]{background:var(--lv)}.colchart .bar.stack{background:0 0;flex-direction:column-reverse;display:flex;overflow:hidden}.colchart .seg{background:var(--accent);flex:1 1 0;min-height:1px}:root[data-levels=on] .colchart .seg{background:var(--lv)}:root[data-levels=on] .colchart .seg+.seg{margin-bottom:2px}.level-legend{display:none}:root[data-levels=on] .level-legend{color:var(--muted);flex-wrap:wrap;gap:.2rem .8rem;margin:.45rem 0 0;padding:0;font-size:.72rem;list-style:none;display:flex}.level-legend li{align-items:center;gap:.3rem;display:flex}.level-legend .dot{background:var(--lv);border-radius:2px;width:.6rem;height:.6rem}:root[data-levels=on] .lv-name[data-level]{background:var(--lv);color:var(--lv-on);white-space:nowrap;border-radius:999px;padding:.05rem .5rem;font-size:.85em;font-weight:600}.colchart .cols li:hover .num{font-weight:600}.colchart .label{white-space:nowrap;font-variant-numeric:tabular-nums;height:1.1rem;line-height:1.2rem;overflow:visible}.colchart .groups{gap:0;margin-top:.1rem;display:grid}.colchart .groups span{text-align:center;white-space:nowrap;border-top:1px solid var(--line);margin:0 3px;padding-top:.15rem}.problems li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:.6rem;padding:.5rem 0;display:flex}.problems .jp{color:var(--fg);font-size:1.15rem}.chips{flex-wrap:wrap;gap:.35rem;display:flex}.chip{font:inherit;color:var(--muted);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:.15rem .55rem;font-size:.78rem}.chip:hover{border-color:var(--accent);color:var(--accent)}.deck{background:var(--surface);position:relative}.deck .cover{object-fit:cover;border:1px solid var(--line);border-radius:10px;flex:none;width:3.25rem;height:3.25rem}.deck-actions{flex-wrap:wrap;gap:.4rem;display:flex}.default-cover{box-sizing:border-box;background:var(--fg);color:var(--bg);letter-spacing:.02em;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:1.05rem;font-weight:600;line-height:1;display:inline-flex;border-color:var(--fg)!important}.cover-preview.default-cover{font-size:1.3rem}.deck-head{flex-wrap:wrap;align-items:center;gap:.9rem;margin-bottom:.5rem;display:flex}.deck-head .cover-preview{width:3.5rem;height:3.5rem}.deck-head-text{flex:1;min-width:10rem}.deck-head h1{margin:0}.deck-head .gloss{margin:.15rem 0 0}.deck-tabs{margin:.75rem 0 1rem}.card-tools{align-items:stretch;gap:.5rem;display:flex}.card-tools input.search{flex:1;min-width:0;margin:0}.card-tools button{flex:none}.add-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-top:.6rem;padding:.75rem}.add-panel .hits{margin-bottom:0}table.cards{border-collapse:collapse;width:100%;margin-top:.9rem;font-size:.9rem}table.cards th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:0 .5rem .35rem;font-size:.72rem;font-weight:600}table.cards td{border-bottom:1px solid var(--line);vertical-align:middle;padding:.45rem .5rem}table.cards .word{font-size:1.15rem;display:block}table.cards .reading{color:var(--muted);font-size:.8rem;display:block}table.cards .meaning{color:var(--muted)}table.cards .stage{white-space:nowrap;color:var(--muted);font-size:.8rem}table.cards td:last-child{text-align:right;width:1%}table.cards tr.is-new td{background:color-mix(in srgb, var(--accent) 9%, transparent)}table.cards .tag.new{margin:0}.pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.6rem;display:flex}.pager .gloss{margin:0}.pager-buttons{align-items:center;gap:.5rem;display:flex}dialog.confirm{border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:12px;width:min(24rem,100vw - 2rem);padding:1.1rem 1.25rem 1rem;box-shadow:0 12px 40px #00000040}dialog.confirm::backdrop{background:#00000073}dialog.confirm h2{margin:0 0 .6rem;font-size:1.1rem}dialog.confirm p{margin:0 0 .6rem}dialog.confirm .jp{font-size:1.3rem}dialog.confirm .actions{justify-content:flex-end;margin-top:1rem}:root[data-motion=on] dialog.confirm[open]{animation:.14s ease-out confirm-in}@keyframes confirm-in{0%{opacity:0;transform:translateY(6px)scale(.98)}}kbd{font:inherit;font-variant-numeric:tabular-nums;border:1px solid var(--line);background:var(--surface);color:var(--fg);white-space:nowrap;border-bottom-width:2px;border-radius:6px;padding:.1rem .45rem;font-size:.8rem}.controls h3{margin:1.4rem 0 .3rem}.controls .toggle{margin:.6rem 0 .4rem}.controls section.is-off{opacity:.5}table.keys{border-collapse:collapse;width:100%;font-size:.9rem}table.keys td{border-bottom:1px solid var(--line);padding:.35rem .4rem}table.keys .key-cell{white-space:nowrap;text-align:right;width:1%}table.keys .reset-cell{text-align:right;width:3.5rem}button.key-button{font:inherit;cursor:pointer;color:var(--fg);text-align:right;background:0 0;border:1px dashed #0000;border-radius:8px;min-width:5.5rem;padding:.2rem .3rem}button.key-button:hover:not(:disabled){border-color:var(--line)}button.key-button.is-recording{border-color:var(--accent);color:var(--accent);font-size:.85rem}button.key-button:disabled{cursor:default}.shortcuts-dialog{width:min(28rem,100vw - 2rem)}.shortcuts-dialog h3{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:.9rem 0 .3rem;font-size:.8rem}.shortcut-list{gap:.3rem;margin:0;display:grid}.shortcut-list>div{grid-template-columns:7.5rem 1fr;align-items:baseline;gap:.6rem;display:grid}.shortcut-list dt{text-align:right}.shortcut-list dd{margin:0;font-size:.9rem}.update-banner{left:50%;bottom:max(1rem, env(safe-area-inset-bottom));z-index:20;background:var(--surface);width:max-content;max-width:calc(100vw - 2rem);color:var(--fg);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;padding:.6rem .8rem .6rem 1rem;font-size:.9rem;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 28px #00000038}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=30rem){table.cards th:nth-child(3),table.cards td.stage{display:none}}.deck-settings{flex-direction:column;gap:1rem;margin-top:.5rem;display:flex}.field{flex-direction:column;gap:.35rem;display:flex}.field>span:first-child{color:var(--muted);letter-spacing:.05em;font-size:.78rem}.field .row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.field .row .answer{max-width:18rem;font-size:1rem}.field .row .answer.narrow{max-width:5.5rem}.field .row .gloss{flex:1;min-width:12rem}.cover-preview{object-fit:cover;border:1px solid var(--line);border-radius:8px;width:4.5rem;height:4.5rem}button.ghost.danger{color:var(--accent);border-color:var(--accent)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.prose h3{margin:1.5rem 0 .4rem;font-size:.92rem}@keyframes kotoba-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(2px)}}@keyframes kotoba-pop{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes kotoba-glow{0%{text-shadow:0 0 #0000}30%{text-shadow:0 0 14px}to{text-shadow:0 0 #0000}}@keyframes kotoba-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}:root[data-motion=on] .review.is-fail .prompt{animation:.38s ease-out kotoba-shake}:root[data-motion=on] .review.is-pass .prompt{animation:.32s ease-out kotoba-pop}:root[data-motion=on] .transition strong.milestone{animation:1.4s ease-out kotoba-glow}:root[data-motion=on] main>*{animation:.18s ease-out kotoba-fade-in}:root[data-motion=on] .bar>div,:root[data-motion=on] .colchart .bar{transition:height .25s ease-out}:root[data-motion=on] button{transition:transform 80ms ease-out,background-color .15s,border-color .15s}:root[data-motion=on] button:active:not(:disabled){transform:scale(.97)}.auto-advance{color:var(--muted);margin:.75rem 0 0;font-size:.8rem}.auto-advance .countdown{background:var(--accent);transform-origin:0;height:2px;margin-top:.35rem;display:block;transform:scaleX(0)}@keyframes kotoba-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}:root[data-motion=on] .auto-advance .countdown{animation:linear forwards kotoba-countdown}main.wide{max-width:68rem}.tabs{border-bottom:1px solid var(--line);gap:.25rem;margin:0 0 1.5rem;display:flex}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.55rem .9rem}.tabs button[aria-selected=true]{color:var(--fg);border-bottom-color:var(--accent);font-weight:600}.prefs>section{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:.5rem}.prefs>section:first-child{border-top:0;margin-top:0;padding-top:0}.prefs .section-note{margin:-.4rem 0 .4rem;font-size:.82rem}.prefs-appearance{grid-template-columns:minmax(0,1fr) 21rem;align-items:start;gap:2rem;display:grid}.pref-row{grid-template-columns:12rem minmax(0,1fr);gap:.5rem 1.5rem;padding:.9rem 0;display:grid}.pref-label{flex-direction:column;gap:.25rem;display:flex}.pref-label strong{font-size:.92rem}.pref-label .gloss{font-size:.8rem;line-height:1.45}.pref-control{flex-direction:column;align-items:flex-start;gap:.6rem;display:flex}.segmented{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.segmented button{font:inherit;background:var(--surface);color:var(--muted);border:0;border-right:1px solid var(--line);cursor:pointer;padding:.45rem .8rem;font-size:.85rem}.segmented button:last-child{border-right:0}.segmented button.is-selected{background:var(--accent);color:var(--on-accent)}.swatches{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.5rem;width:100%;display:grid}.swatch{font:inherit;cursor:pointer;border:2px solid;border-radius:10px;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem .4rem;display:flex}.swatch .glyph{font-size:1.8rem;line-height:1.1}.swatch .swatch-name{text-align:center;font-size:.72rem}.token-list{width:100%;margin:0;padding:0;list-style:none}.token-list li{grid-template-columns:2.4rem minmax(0,1fr) auto auto;align-items:center;gap:.6rem;padding:.3rem 0;display:grid}.token-list input[type=color]{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;width:2.2rem;height:2.2rem;padding:0}.token-list code{color:var(--muted);font-size:.75rem}.token-name{font-size:.88rem}.warn{color:var(--fail);font-weight:700}.contrast-warning{border:1px solid var(--fail);color:var(--fg);border-radius:8px;width:100%;padding:.6rem .8rem;font-size:.85rem}.contrast-warning ul{color:var(--muted);margin:.35rem 0 0;padding-left:1.1rem}.font-choices{grid-template-columns:1fr 1fr;gap:.5rem;width:100%;display:grid}.font-sample{font-size:1.6rem;color:var(--fg)!important}.toggle{cursor:pointer;align-items:center;gap:.6rem;font-size:.9rem;display:inline-flex}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle .track{background:var(--line);border-radius:999px;flex:none;width:2.3rem;height:1.3rem;position:relative}.toggle .thumb{background:var(--bg);border-radius:50%;width:1rem;height:1rem;position:absolute;top:.15rem;left:.15rem}.toggle input:checked+.track{background:var(--accent)}.toggle input:checked+.track .thumb{left:1.15rem}.toggle input:focus-visible+.track{outline:2px solid var(--accent);outline-offset:2px}:root[data-motion=on] .toggle .thumb{transition:left .15s ease-out}.slider{align-items:center;gap:.75rem;width:100%;max-width:22rem;display:flex}.slider input[type=range]{accent-color:var(--accent);flex:1}.slider output{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;min-width:3.2rem;font-size:.85rem}.preview-wrap{position:sticky;top:1rem}.preview{background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:14px;padding:.9rem;box-shadow:0 6px 24px #0000001f}.preview-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;margin-bottom:.75rem;padding-bottom:.6rem;display:flex}.preview .brand{cursor:default;font-size:1rem}.preview .decks{margin-bottom:.9rem}.preview .deck{margin-bottom:0}.preview .review{max-width:none}.preview .preview-prompt{font-size:calc(2.6rem * var(--prompt-scale,1));margin:.4rem 0 .8rem}.preview .truth .jp{font-size:1.05rem}.preview .answer{margin-top:.75rem;font-size:.95rem}.preview-levels{margin-top:.9rem}.preview-levels .colchart .plot{height:4.1rem}.preview button[tabindex="-1"]{cursor:default}@media (width<=56rem){.prefs-appearance{grid-template-columns:1fr;gap:1rem}.preview-wrap{z-index:2;order:-1;top:.5rem}.preview{max-height:46vh;overflow:auto}.pref-row{grid-template-columns:1fr;gap:.5rem}}.deck{flex-wrap:wrap}.deck-name{flex:12rem;min-width:0}.deck-actions{flex:none}.topbar{flex-wrap:wrap;row-gap:.4rem}.topbar nav{flex-wrap:wrap}@media (width<=30rem){.brand span{display:none}.topbar nav button{padding:.4rem .55rem}}
