@layer reset{*,:before,:after{box-sizing:border-box}body{margin:0}img,svg{max-inline-size:100%;display:block}button,input,select{font:inherit}h1,h2,h3,p{overflow-wrap:break-word;margin-block:0}}@layer tokens{@font-face{font-family:Noto Serif SC Fallback;font-weight:500;src:local(Noto Serif CJK SC),local(NotoSerifCJKsc-Regular),local(Source Han Serif SC),local(SourceHanSerifSC-Regular),local(Songti SC Regular),local(STSongti-SC-Regular),local(STSong),local(SimSun);size-adjust:100%;ascent-override:115.1%;descent-override:28.6%;line-gap-override:0%}@font-face{font-family:Noto Serif SC Fallback;font-weight:700;src:local(Noto Serif CJK SC Bold),local(NotoSerifCJKsc-Bold),local(Source Han Serif SC Bold),local(SourceHanSerifSC-Bold),local(Songti SC Bold),local(STSongti-SC-Bold);size-adjust:100%;ascent-override:115.1%;descent-override:28.6%;line-gap-override:0%}@font-face{font-family:Noto Serif TC Fallback;font-weight:500;src:local(Noto Serif CJK TC),local(NotoSerifCJKtc-Regular),local(Source Han Serif TC),local(SourceHanSerifTC-Regular),local(Songti TC Regular),local(STSongti-TC-Regular),local(PMingLiU),local(MingLiU);size-adjust:100%;ascent-override:115.1%;descent-override:28.6%;line-gap-override:0%}@font-face{font-family:Noto Serif TC Fallback;font-weight:700;src:local(Noto Serif CJK TC Bold),local(NotoSerifCJKtc-Bold),local(Source Han Serif TC Bold),local(SourceHanSerifTC-Bold),local(Songti TC Bold),local(STSongti-TC-Bold);size-adjust:100%;ascent-override:115.1%;descent-override:28.6%;line-gap-override:0%}:root{--color-bg:#faf8f4;--color-surface:#fff;--color-surface-hover:#f3efe7;--color-text:#1f2328;--color-muted:#5c6470;--color-faint:#646b78;--color-border:#e3ddd1;--color-border-strong:#c9c1b2;--color-accent:#b4332a;--color-accent-strong:#93251e;--color-accent-soft:#f7e8e6;--color-jade:#1f7a5c;--color-jade-soft:#e3f1ec;--color-on-accent:#fff;--tone-1:#c43d3d;--tone-2:#94600e;--tone-3:#2e7d44;--tone-4:#2b5dab;--tone-5:var(--color-faint);--tone-chip-5:#646b78;--ytone-1:#c43d3d;--ytone-2:#94600e;--ytone-3:#2e7d44;--ytone-4:#2b5dab;--ytone-5:#7b4fa6;--ytone-6:#1f7a8c;--font-latin:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-hans:"Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-hant:"Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;--font-display-hans:"Noto Serif SC", "Noto Serif SC Fallback", "Songti SC", "SimSun", serif;--font-display-hant:"Noto Serif TC", "Noto Serif TC Fallback", "Songti TC", "PMingLiU", serif;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-hero:clamp(2.25rem, 6vw, 3.5rem);--leading-body:1.6;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--radius-sm:8px;--radius-lg:16px;--radius-full:999px;--shadow-sm:0 1px 2px #1f23280f;--shadow-md:0 2px 8px #1f232814, 0 1px 2px #1f23280f;--shadow-lg:0 8px 24px #1f23281f;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-base:.22s;--z-raised:1;--z-popover:90;--z-header:100;--z-overlay:1000;--container:64rem;--aside-w:18rem;color-scheme:light}@media (width>=1200px){:root{--container:75rem}}:root[data-theme=dark]{--color-bg:#16181b;--color-surface:#1f2226;--color-surface-hover:#2a2d33;--color-text:#e8e6e1;--color-muted:#a3aab4;--color-faint:#8f97a1;--color-border:#34373d;--color-border-strong:#4a4e55;--color-accent:#e0685c;--color-accent-strong:#eb8a80;--color-accent-soft:#341f1d;--color-jade:#4cc39e;--color-jade-soft:#1d3329;--color-on-accent:#1a0c0a;--tone-1:#ef8a8a;--tone-2:#f0b35e;--tone-3:#7ccd8a;--tone-4:#8db4f5;--tone-chip-5:#8f97a1;--ytone-1:#ef8a8a;--ytone-2:#f0b35e;--ytone-3:#7ccd8a;--ytone-4:#8db4f5;--ytone-5:#c9a2e8;--ytone-6:#6fc7d6;--shadow-sm:0 1px 2px #0006;--shadow-md:0 2px 8px #00000080, 0 1px 2px #0006;--shadow-lg:0 8px 24px #0009;color-scheme:dark}}@layer base{html{scroll-behavior:smooth}body{font-family:var(--font-latin);font-size:var(--text-base);line-height:var(--leading-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}:lang(zh-Hans){font-family:var(--font-hans)}:lang(zh-Hant){font-family:var(--font-hant)}h1{font-size:var(--text-3xl);letter-spacing:-.01em;margin-block-end:var(--space-3);line-height:1.2}h2{font-size:var(--text-xl);margin-block:var(--space-4) var(--space-3);line-height:1.3}p{margin-block-end:var(--space-3)}ul,ol{padding-inline-start:1.2em}a{color:var(--color-accent);text-underline-offset:.15em;text-decoration-thickness:1px}a:hover{color:var(--color-accent-strong)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}button{cursor:pointer}::selection{background:var(--color-accent-soft)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}}@layer layout{.site-header{z-index:var(--z-header);background:color-mix(in srgb, var(--color-bg) 88%, transparent);border-block-end:1px solid var(--color-border);position:sticky;inset-block-start:0}.site-header:before{content:"";z-index:-1;backdrop-filter:blur(8px);position:absolute;inset:0}.site-header__inner{max-inline-size:var(--container);padding:var(--space-2) var(--space-3);align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin-inline:auto;display:flex}.site-header__brand{align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--text-lg);color:var(--color-text);text-decoration:none;display:inline-flex}.site-header__seal{border-radius:var(--radius-sm);background:var(--color-accent);block-size:2.1rem;inline-size:2.1rem;color:var(--color-on-accent);font-family:var(--font-display-hans);place-items:center;font-size:1.25rem;font-weight:500;display:inline-grid}.site-header__nav{align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;margin-inline-start:auto;display:flex}.site-header__actions{align-items:center;gap:var(--space-1);display:flex}.site-header__burger{border-radius:var(--radius-sm);block-size:40px;inline-size:40px;color:var(--color-muted);background:0 0;border:none;place-items:center;padding:0;display:none}.site-header__burger:hover,.site-header__burger:focus-visible{background:var(--color-surface-hover);color:var(--color-text)}.site-header__burger svg{block-size:1.3rem;inline-size:1.3rem}.site-header__burger-close,:root[data-nav=open] .site-header__burger-open{display:none}:root[data-nav=open] .site-header__burger-close{display:block}.site-header__backdrop{display:none}.site-header__link{padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease-out);font-weight:500;text-decoration:none}.site-header__link:hover,.site-header__link:focus-visible{color:var(--color-text);background:var(--color-surface-hover)}.site-header__link--active{color:var(--color-accent);background:var(--color-accent-soft)}.nav-badge{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface-hover);block-size:1.5em;min-inline-size:1.5em;color:var(--color-text);font-variant-numeric:tabular-nums;place-items:center;margin-inline-start:.3em;padding-inline:.3em;font-size:.78em;display:inline-grid}.nav-badge[hidden],.site-header__link--mobile{display:none}.nav-group{position:relative}.nav-group__trigger{padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);color:var(--color-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:.2em;font-weight:500;display:inline-flex}.nav-group__trigger:hover,.nav-group__trigger:focus-visible{color:var(--color-text);background:var(--color-surface-hover)}.nav-group__trigger--active{color:var(--color-accent);background:var(--color-accent-soft)}.nav-group__chevron{block-size:.9em;inline-size:.9em;transition:transform var(--duration-fast) var(--ease-out)}.nav-group__trigger[aria-expanded=true] .nav-group__chevron{transform:rotate(180deg)}.nav-group__menu{z-index:var(--z-overlay);min-inline-size:12rem;padding:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);display:none;position:absolute;inset-block-start:calc(100% + var(--space-1));inset-inline-start:0}.nav-group__trigger[aria-expanded=true]+.nav-group__menu{gap:2px;display:grid}.nav-group__item{padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap;transition:background var(--duration-fast) var(--ease-out);text-decoration:none}.nav-group__item:hover,.nav-group__item:focus-visible{color:var(--color-text);background:var(--color-surface-hover)}.nav-group__item--active{color:var(--color-accent);background:var(--color-accent-soft)}.settings{position:relative}.settings__backdrop,.settings__close{display:none}.settings__trigger{border-radius:var(--radius-sm);block-size:40px;inline-size:40px;color:var(--color-muted);cursor:pointer;place-items:center;list-style:none;display:grid}.settings__trigger::-webkit-details-marker{display:none}.settings__trigger:hover,.settings[open] .settings__trigger{background:var(--color-surface-hover);color:var(--color-text)}.settings__trigger svg{block-size:1.2rem;inline-size:1.2rem}.settings__panel{z-index:var(--z-overlay);gap:var(--space-2);min-inline-size:14rem;max-block-size:calc(100vh - var(--header-h,57px) - var(--space-3));padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-1));inset-inline-end:0;overflow-y:auto}.settings__group{gap:var(--space-1);border:none;margin:0;padding:0;display:grid}.settings__group--data{border-block-start:1px solid var(--color-border);padding-block-start:var(--space-2)}.settings__panel .segmented__track{display:flex}.settings__panel .segmented__option{flex:1 1 0;min-inline-size:0}.settings__panel legend{text-transform:uppercase;letter-spacing:.04em;color:var(--color-faint);margin-block-end:var(--space-1);padding:0;font-size:.75rem;font-weight:600}.settings__option{align-items:center;gap:var(--space-2);min-block-size:32px;font-size:var(--text-sm);display:flex}.settings__option input{accent-color:var(--color-accent)}.settings__hint{max-inline-size:14rem;color:var(--color-faint);margin:0;font-size:.75rem;line-height:1.5}.settings__option--stack{gap:var(--space-1);align-items:start;display:grid}.settings__select{min-block-size:36px;inline-size:100%;max-inline-size:14rem;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm)}.settings__preview{justify-self:start}.site-main{max-inline-size:var(--container);padding:var(--space-5) var(--space-3) var(--space-6);min-block-size:60dvh;margin-inline:auto}.site-footer{border-block-start:1px solid var(--color-border);background:var(--color-surface)}.site-footer__inner{max-inline-size:var(--container);padding:var(--space-4) var(--space-3);align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-muted);flex-direction:column;margin-inline:auto;display:flex}.site-footer__note{margin:0}.site-footer__copyright{color:var(--color-faint);margin:0}.site-footer__links{gap:var(--space-3);flex-wrap:wrap;display:flex}.site-footer__links a{color:var(--color-muted)}.site-footer__links a:hover{color:var(--color-accent)}@media (width<=991px){.site-header__inner{flex-wrap:nowrap}.site-header__actions{margin-inline-start:auto}.site-header__burger{display:grid}.site-header__nav{z-index:var(--z-overlay);align-items:stretch;gap:var(--space-1);inline-size:min(19rem,85vw);padding:var(--space-4) var(--space-3);background:var(--color-surface);border-inline-start:1px solid var(--color-border);box-shadow:var(--shadow-lg);visibility:hidden;transition:transform var(--duration-base) var(--ease-out), visibility var(--duration-base);flex-flow:column;margin:0;position:fixed;inset-block-start:var(--header-h,57px);inset-block-end:0;inset-inline-end:0;overflow-y:auto;transform:translate(100%)}:root[data-nav=open] .site-header__nav{visibility:visible;transition-duration:var(--duration-base), 0s;transform:none}.site-header__link{padding:var(--space-2) var(--space-3);font-size:var(--text-base,1rem)}.site-header__link--mobile{display:block}.nav-group__trigger{inline-size:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-base,1rem);justify-content:space-between}.nav-group__menu{min-inline-size:0;padding:0 0 var(--space-1) var(--space-3);box-shadow:none;background:0 0;border:none;border-radius:0;position:static}.nav-group__item{padding:var(--space-2) var(--space-3);font-size:var(--text-base,1rem)}.site-header__backdrop{inset:var(--header-h,57px) 0 0;z-index:calc(var(--z-overlay) - 1);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out);background:#00000059;display:block;position:fixed}:root[data-nav=open] .site-header__backdrop{opacity:1;pointer-events:auto}.settings__panel{z-index:var(--z-overlay);border:none;border-inline-start:1px solid var(--color-border);inline-size:min(19rem,85vw);padding-block:var(--space-4);animation:drawer-in var(--duration-base) var(--ease-out);border-radius:0;align-content:start;position:fixed;inset-block-start:var(--header-h,57px);inset-block-end:0;inset-inline-end:0;overflow-y:auto}.settings__backdrop{inset:var(--header-h,57px) 0 0;z-index:calc(var(--z-overlay) - 1);background:#00000059;display:block;position:fixed}.settings__close{border-radius:var(--radius-sm);block-size:40px;inline-size:40px;color:var(--color-muted);background:0 0;border:none;place-items:center;padding:0;display:grid;position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2)}.settings__close:hover,.settings__close:focus-visible{background:var(--color-surface-hover);color:var(--color-text)}.settings__close svg{block-size:1.2rem;inline-size:1.2rem}}@keyframes drawer-in{0%{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.site-header__nav,.site-header__backdrop{transition:none}.settings__panel{animation:none}}@media (width<=480px){.site-main{padding-block-start:var(--space-4)}}}@layer components{.support-link{align-items:center;gap:var(--space-1);display:inline-flex}.support-link__icon{block-size:1em;inline-size:1em;color:var(--color-accent);flex:none}.basket-chip{align-items:center;gap:var(--space-1);min-block-size:44px;padding-inline:var(--space-2);border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease-out);font-weight:500;text-decoration:none;display:inline-flex}.basket-chip:hover,.basket-chip:focus-visible{background:var(--color-surface-hover);color:var(--color-text)}.basket-chip__icon{block-size:1.3rem;inline-size:1.3rem;display:none}.basket-chip__count{border-radius:var(--radius-full);background:var(--color-accent);block-size:1.5em;min-inline-size:1.5em;color:var(--color-on-accent);place-content:center;place-items:center;padding-inline:.25em;font-size:.78em;font-weight:600;display:inline-grid}@media (width<=991px){.basket-chip__icon{display:block}.basket-chip__label{display:none}}.basket-manager__empty{color:var(--color-muted)}.basket-manager__list{max-inline-size:44rem;margin-block-end:var(--space-3)}.basket-item{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-3);display:flex}.basket-item__word{gap:var(--space-1) var(--space-3);color:inherit;flex-wrap:wrap;flex:1;align-items:baseline;text-decoration:none;display:flex}.basket-item__speak,.basket-item__remove{flex-shrink:0;align-self:center}.basket-item__word:hover{color:inherit}.basket-item__hanzi{font-size:1.3rem}.basket-item__pinyin{color:var(--color-accent)}.basket-item__meaning{color:var(--color-muted);font-size:var(--text-sm);flex-basis:100%}.basket-item__order{align-self:center;gap:var(--space-1);flex-shrink:0;display:inline-flex}.basket-item__move--up svg{transform:rotate(180deg)}.basket-item__move:disabled{opacity:.35;cursor:default}.basket-manager__order{align-items:center;gap:var(--space-2);max-inline-size:44rem;flex-wrap:wrap;margin-block-end:var(--space-3);display:flex}.basket-manager__order-label{font-weight:600;font-size:var(--text-sm)}.basket-manager__order-hint,.basket-manager__note{color:var(--color-muted);font-size:var(--text-sm)}.basket-manager__note{max-inline-size:44rem;margin-block:0 var(--space-2)}.basket-manager__sample{margin-block-start:var(--space-3)}.sheet-source{gap:var(--space-2);max-inline-size:44rem;padding:var(--space-3);border:1px solid var(--color-border);border-inline-start:4px solid var(--color-accent);border-radius:var(--radius-lg);background:var(--color-surface);margin-block-end:var(--space-4);display:grid}.sheet-source__text{margin:0;font-weight:600}.sheet-source__not-found{color:var(--color-muted);font-size:var(--text-sm);margin:0}.sheet-source__token{color:var(--color-text)}.sheet-source__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.sheet-source__status{color:var(--color-muted);margin:0}.basket-manager__status{align-items:center;gap:var(--space-2);flex-wrap:wrap;max-inline-size:44rem;display:flex}.basket-manager__status:has(.basket-manager__undo),.basket-manager__status:has(.basket-manager__message:not(:empty)){margin-block-end:var(--space-3)}.basket-manager__message{color:var(--color-muted);margin:0}.basket-manager__confirm{gap:var(--space-2);max-inline-size:44rem;padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);display:grid}.basket-manager__confirm p{margin:0}.basket-manager__confirm-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}:where(.icon-btn){border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);block-size:36px;inline-size:36px;color:var(--color-muted);font-size:var(--text-base);transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);place-items:center;padding:0;line-height:1;display:grid}:where(.icon-btn) svg{block-size:1rem;inline-size:1rem}:where(.icon-btn--sm){block-size:32px;inline-size:32px}:where(.icon-btn--sm) svg{block-size:.9rem;inline-size:.9rem}:where(.icon-btn--ghost){background:0 0;border-color:#0000}:where(.icon-btn--labelled){gap:var(--space-1);inline-size:auto;padding-inline:var(--space-3);font-size:var(--text-sm);grid-auto-flow:column;font-weight:500}:where(.icon-btn):where(:hover,:focus-visible){background:var(--color-surface-hover);color:var(--color-text)}:where(.icon-btn[aria-pressed=true],.icon-btn[data-done]){border-color:var(--color-jade);background:var(--color-jade-soft);color:var(--color-jade)}:where(.icon-btn[aria-pressed=true],.icon-btn[data-done]):where(:hover,:focus-visible){background:var(--color-surface-hover)}:where(.icon-btn [data-icon=check]),:where(.icon-btn[aria-pressed=true],.icon-btn[data-done]) :where([data-icon=plus],[data-icon=copy]){display:none}:where(.icon-btn[aria-pressed=true],.icon-btn[data-done]) :where([data-icon=check]){display:block}:where(.btn,.reader-page__annotate,.sheet-config__generate,.settings__preview,.basket-manager__clear,.data-backup__button,.storage-notice__dismiss,.audio-dl__button){justify-content:center;align-items:center;gap:var(--space-2);min-block-size:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);font-weight:600;text-decoration:none;display:inline-flex}:where(.btn--pill,.reader-page__annotate,.sheet-config__generate,.settings__preview,.data-backup__button,.storage-notice__dismiss,.audio-dl__button){border-radius:var(--radius-full)}:where(.btn--primary,.reader-page__annotate,.sheet-config__generate,.basket-manager__clear--danger,.data-backup__button--primary,.audio-dl__button--primary){border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}:where(.btn--danger,.data-backup__button--danger){border-color:var(--color-accent);color:var(--color-accent)}:where(.btn,.reader-page__annotate,.sheet-config__generate,.settings__preview,.basket-manager__clear,.data-backup__button,.storage-notice__dismiss,.audio-dl__button):where(:hover,:focus-visible):where(:not(:disabled)){background:var(--color-surface-hover);color:var(--color-text)}:where(.btn--primary,.reader-page__annotate,.sheet-config__generate,.basket-manager__clear--danger,.data-backup__button--primary,.audio-dl__button--primary):where(:hover,:focus-visible):where(:not(:disabled)){border-color:var(--color-accent-strong);background:var(--color-accent-strong);color:var(--color-on-accent)}:where(.btn--danger,.data-backup__button--danger):where(:hover,:focus-visible):where(:not(:disabled)){color:var(--color-accent)}:where(.icon-btn.btn[data-done]){border-color:var(--color-jade);background:var(--color-jade-soft);color:var(--color-jade)}:where(.btn,.reader-page__annotate,.sheet-config__generate,.settings__preview,.basket-manager__clear,.data-backup__button,.storage-notice__dismiss,.audio-dl__button):where(:active:not(:disabled)){transform:scale(.98)}:where(.btn,.reader-page__annotate,.sheet-config__generate,.settings__preview,.basket-manager__clear,.data-backup__button,.storage-notice__dismiss,.audio-dl__button):where(:disabled){opacity:.45;cursor:not-allowed}:where(.card,.list-card,.poem-card,.graded-card,.recipe-card,.book-card,.discover-card,.daily-idiom__card,.upcoming__card,.feature-card,.events__card,.blog-card,.resource-card){padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:inherit}:where(a.card,.card--link,.list-card,.poem-card,.graded-card,.recipe-card,.discover-card,.daily-idiom__card,.upcoming__card,.feature-card,.blog-card){transition:box-shadow var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);text-decoration:none}:where(a.card,.card--link,.list-card,.poem-card,.graded-card,.recipe-card,.discover-card,.daily-idiom__card,.upcoming__card,.feature-card):where(:hover,:focus-visible),:where(.blog-card):where(:hover,:focus-within){border-color:var(--color-border-strong);box-shadow:var(--shadow-md);color:inherit;transform:translateY(-2px)}:where(.row-list,.basket-manager__list){border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);margin:0;padding:0;list-style:none;overflow:hidden}:where(.row-list__item){align-items:center;display:flex}:where(.row-list__item,.basket-item)+:where(.row-list__item,.basket-item){border-block-start:1px solid var(--color-border)}:where(.row-list__link){min-block-size:44px;min-inline-size:0;padding:var(--space-2) var(--space-3);color:inherit;transition:background var(--duration-fast) var(--ease-out);flex:1;text-decoration:none}:where(.row-list__link):where(:hover,:focus-visible){background:var(--color-surface-hover);color:inherit}:where(.row-list__actions){align-items:center;gap:var(--space-1);padding-inline-end:var(--space-2);display:flex}@media (width<=480px){:where(.row-list__item){flex-wrap:wrap}:where(.row-list__item) :where(.row-list__link){flex-basis:100%}:where(.row-list__item) :where(.row-list__actions){margin-inline-start:auto;padding-block-end:var(--space-2)}}:where(.segmented){gap:var(--space-1);border:none;margin:0;padding:0;display:grid}:where(.segmented__legend){margin-block-end:var(--space-1);padding:0}:where(.segmented__track){border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);align-items:stretch;gap:2px;padding:2px;display:inline-flex}:where(.segmented__option){min-block-size:40px;min-inline-size:2rem;padding-inline:var(--space-3);border-radius:var(--radius-full);color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;font-weight:500;line-height:1;text-decoration:none;display:inline-flex;position:relative}:where(.segmented--sm .segmented__option){min-block-size:28px;padding-inline:var(--space-2);font-size:var(--text-xs)}:where(.segmented__input){opacity:0;block-size:100%;inline-size:100%;cursor:inherit;margin:0;position:absolute;inset:0}:where(.segmented__option):where(:hover,:focus-visible){background:var(--color-surface-hover);color:var(--color-text)}:where(.segmented__option):where(:has(:checked),[aria-current]){background:var(--color-accent);color:var(--color-on-accent)}:where(.segmented__option[aria-current]){cursor:default}:where(.segmented__option:has(:disabled)){opacity:.5;cursor:not-allowed}:where(.segmented__option:has(:disabled)):hover{color:var(--color-muted);background:0 0}:where(.segmented__option:has(:focus-visible)){outline:2px solid var(--color-accent);outline-offset:2px}:where(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--color-accent)}:where(.level-badge){border:1px solid var(--color-border-strong);border-radius:var(--radius-full);color:var(--color-muted);transition:background var(--duration-fast) var(--ease-out);padding:.15em .65em;font-size:.75rem;font-weight:500;text-decoration:none;display:inline-block}:where(.level-badge--sm){white-space:nowrap;padding:0 .5em;font-size:.6875rem;line-height:1.5}:where(a.level-badge):hover,:where(a.level-badge):focus-visible{background:var(--color-surface-hover);color:var(--color-text)}:root[data-speech=off] [data-action=speak],:root[data-clipboard=off] [data-action=copy]{display:none}:root[data-scroll-lock] body{overflow:hidden}@media (pointer:coarse){:where(.icon-btn,.btn,.reader-page__annotate,.sheet-config__generate,.settings__preview,.basket-manager__clear,.data-backup__button,.storage-notice__dismiss,.audio-dl__button,.segmented__option){min-block-size:44px;min-inline-size:44px}}.data-backup{gap:var(--space-2);display:grid}.data-backup--page{max-inline-size:40rem}.data-backup__intro,.data-backup__counts,.data-backup__note{color:var(--color-muted);margin:0}.data-backup--panel .data-backup__intro,.data-backup--panel .data-backup__counts,.data-backup--panel .data-backup__note,.data-backup--panel .data-backup__message,.data-backup--panel .data-backup__install{max-inline-size:16rem;font-size:.75rem;line-height:1.5}.data-backup__counts{color:var(--color-text);font-weight:500}.data-backup__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.data-backup__confirm{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);display:grid}.data-backup__summary{margin:0;font-weight:600}.data-backup__summary:focus{outline:none}.data-backup__status{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.data-backup__message{color:var(--color-jade);margin:0}.data-backup__message--error{color:var(--color-accent)}.data-backup__install{gap:var(--space-2);padding:var(--space-2) var(--space-3);border-inline-start:3px solid var(--color-jade);border-radius:var(--radius-sm);background:var(--color-jade-soft);color:var(--color-text);justify-items:start;display:grid}.data-backup__install p{margin:0}.site-main__aside{gap:var(--space-4);max-inline-size:44rem;align-content:start;margin-block-start:var(--space-5);display:grid}@media (width>=1200px){.site-main--aside{grid-template-columns:minmax(0, 1fr) var(--aside-w);column-gap:var(--space-5);align-items:start;display:grid}.site-main__aside{align-self:stretch;max-inline-size:none;margin-block-start:0}}@media print{.site-main--aside{display:block}.site-main__aside{margin-block-start:var(--space-5)}}.storage-notice{inset-inline:var(--space-3);z-index:var(--z-overlay);pointer-events:none;justify-items:center;display:grid;position:fixed;inset-block-end:var(--space-3)}.storage-notice__box{align-items:center;gap:var(--space-2) var(--space-3);max-inline-size:40rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg);pointer-events:auto;flex-wrap:wrap;display:flex}.storage-notice__text{font-size:var(--text-sm);flex:16rem;margin:0}.hanzi{align-items:baseline;gap:.5em;display:inline-flex}.hanzi__form--trad{color:var(--color-faint);font-size:.8em}:root[data-script=trad] .hanzi__form--trad{color:inherit;order:-1;font-size:1em}:root[data-script=trad] .hanzi__form--simp{color:var(--color-faint);font-size:.8em}.hanzi--preferred{display:inline}.hanzi--preferred .hanzi__form--trad,:root[data-script=trad] .hanzi--preferred .hanzi__form--simp{display:none}:root[data-script=trad] .hanzi--preferred .hanzi__form--trad{color:inherit;font-size:1em;display:inline}.reading--yue,:root[data-lang=yue] .reading--cmn:has(+.reading--yue){display:none}:root[data-lang=yue] .reading--yue{display:inline}.zhuyin{color:var(--color-muted);letter-spacing:.06em;font-size:.85em}.title-zh{color:var(--color-accent);font-weight:500}.hanzi-display:lang(zh-Hans),.hanzi-display :lang(zh-Hans){font-family:var(--font-display-hans)}.hanzi-display:lang(zh-Hant),.hanzi-display :lang(zh-Hant){font-family:var(--font-display-hant)}:root[data-tones] .tone-1{color:var(--tone-1)}:root[data-tones] .tone-2{color:var(--tone-2)}:root[data-tones] .tone-3{color:var(--tone-3)}:root[data-tones] .tone-4{color:var(--tone-4)}:root[data-tones] .tone-5{color:var(--tone-5)}:root[data-tones] .ytone-1{color:var(--ytone-1)}:root[data-tones] .ytone-2{color:var(--ytone-2)}:root[data-tones] .ytone-3{color:var(--ytone-3)}:root[data-tones] .ytone-4{color:var(--ytone-4)}:root[data-tones] .ytone-5{color:var(--ytone-5)}:root[data-tones] .ytone-6{color:var(--ytone-6)}}@layer utilities{.prose{max-inline-size:70ch}.visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.skip-link{z-index:var(--z-overlay);padding:var(--space-2) var(--space-3);background:var(--color-surface);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);position:absolute;inset-block-start:var(--space-2);inset-inline-start:var(--space-2);transform:translateY(-200%)}.skip-link:focus-visible{transform:none}:root[data-script=trad] .only-simp,:root:not([data-script=trad]) .only-trad{display:none}}
