.activation-redeemer form[data-v-c66551d7]{gap:12px;margin-top:16px;display:grid}.activation-redeemer label[data-v-c66551d7]{color:var(--ink);gap:7px;font-weight:650;display:grid}.activation-redeemer input[data-v-c66551d7]{border:1px solid var(--line);width:100%;min-width:0;min-height:54px;color:var(--ink);letter-spacing:.04em;text-transform:uppercase;background:#fff;border-radius:12px;padding:0 14px;font-size:18px}.activation-redeemer button[data-v-c66551d7]{background:var(--cinnabar);color:#fff;border:0;border-radius:12px;min-height:54px;font-size:18px;font-weight:700}.activation-redeemer button[data-v-c66551d7]:disabled{cursor:wait;opacity:.56}.activation-redeemer.prominent[data-v-c66551d7]{padding:clamp(20px,5vw,32px)}.activation-redeemer.prominent h2[data-v-c66551d7]{font-size:clamp(23px,6vw,30px)}.activation-success[data-v-c66551d7]{color:#235f40;background:#edf7ef;border-radius:14px;gap:9px;margin-top:18px;padding:16px;display:grid}.activation-success>strong[data-v-c66551d7]{font-size:21px}.activation-success p[data-v-c66551d7],.activation-success ul[data-v-c66551d7]{color:inherit;margin:0}.activation-success ul[data-v-c66551d7]{gap:5px;padding-left:1.25em;font-size:17px;display:grid}.activation-success nav[data-v-c66551d7]{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:4px;display:grid}.activation-success a[data-v-c66551d7]{background:#fff;border:1px solid;border-radius:10px;place-items:center;min-height:48px;padding:8px 12px;font-weight:700;display:grid}.activation-error[data-v-c66551d7]{margin-top:14px;line-height:1.6}@media (prefers-reduced-motion:reduce){.activation-redeemer[data-v-c66551d7] *{scroll-behavior:auto!important;transition:none!important}}.activation-prompt-backdrop[data-v-1b426b77]{z-index:100;background:#16120e8a;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.activation-prompt[data-v-1b426b77]{background:var(--paper);border-radius:20px;outline:0;width:min(100%,560px);max-height:calc(100dvh - 32px);padding:clamp(18px,5vw,28px);overflow:auto;box-shadow:0 24px 70px #140f0a40}.activation-prompt>header[data-v-1b426b77]{grid-template-columns:1fr 48px;align-items:start;gap:12px;display:grid}.activation-prompt header span[data-v-1b426b77]{color:var(--cinnabar);font-size:14px;font-weight:700}.activation-prompt h2[data-v-1b426b77]{margin:3px 0 0;font-size:clamp(22px,6vw,28px);line-height:1.25}.activation-prompt header>button[data-v-1b426b77]{border:1px solid var(--line);width:48px;height:48px;color:var(--muted);background:#fff;border-radius:50%;font-size:28px;line-height:1}.activation-prompt-description[data-v-1b426b77]{color:var(--muted);margin:14px 0 0;font-size:17px;line-height:1.65}.activation-prompt-notice[data-v-1b426b77],.activation-prompt-account[data-v-1b426b77]{border-radius:10px;margin:14px 0 0;padding:12px 14px;font-size:16px;line-height:1.55}.activation-prompt-notice[data-v-1b426b77]{color:#8b2f2a;background:#fff0ed}.activation-prompt-account[data-v-1b426b77]{color:#77551d;background:#fff7e8;font-weight:700}.activation-prompt-login[data-v-1b426b77]{border:1px solid var(--line);background:#fff;border-radius:14px;gap:12px;margin-top:16px;padding:18px;display:grid}.activation-prompt-login h3[data-v-1b426b77],.activation-prompt-login p[data-v-1b426b77]{margin:0}.activation-prompt-login p[data-v-1b426b77]{color:var(--muted);line-height:1.6}.activation-prompt-login label[data-v-1b426b77]{gap:7px;font-weight:650;display:grid}.activation-prompt-login input[data-v-1b426b77]{border:1px solid var(--line);text-transform:uppercase;border-radius:10px;width:100%;min-width:0;min-height:54px;padding:0 13px;font-size:18px}.activation-prompt-login>button[data-v-1b426b77]{background:var(--cinnabar);color:#fff;border:0;border-radius:11px;min-height:54px;font-size:18px;font-weight:750}@media (width<=390px){.activation-prompt-backdrop[data-v-1b426b77]{padding:10px}.activation-prompt[data-v-1b426b77]{max-height:calc(100dvh - 20px);padding:16px}}@media (prefers-reduced-motion:reduce){.activation-prompt[data-v-1b426b77],.activation-prompt-backdrop[data-v-1b426b77]{scroll-behavior:auto!important;transition:none!important}}.import-progress[data-v-3d7ec305]{color:var(--muted);gap:8px;margin-top:16px;font-size:14px;display:grid}.import-progress progress[data-v-3d7ec305]{width:100%;height:10px;accent-color:var(--cinnabar)}.import-issues[data-v-3d7ec305]{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.import-issues h3[data-v-3d7ec305]{margin:0 0 10px;font-size:16px}.import-issues ol[data-v-3d7ec305]{gap:10px;max-height:360px;margin:0;padding-left:24px;display:grid;overflow:auto}.import-issues li[data-v-3d7ec305]{background:var(--paper);border-radius:10px;gap:3px;padding:10px 12px;display:grid}.import-issues span[data-v-3d7ec305],.import-issues code[data-v-3d7ec305]{color:var(--muted);font-size:13px}.import-warnings[data-v-3d7ec305]{color:#704a17;background:#fff7df;border-radius:10px;gap:5px;margin-top:16px;padding:12px;display:grid}.review-filters[data-v-3d7ec305],.review-pagination[data-v-3d7ec305],.review-actions[data-v-3d7ec305]{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.review-filters button.active[data-v-3d7ec305]{color:#fff;background:var(--ink)}.review-grid[data-v-3d7ec305]{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:14px;display:grid}.review-card[data-v-3d7ec305]{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:5px;min-width:0;padding:10px;display:grid}.review-card img[data-v-3d7ec305],.review-placeholder[data-v-3d7ec305]{aspect-ratio:1;object-fit:contain;background:var(--paper);border-radius:8px;width:100%}.review-placeholder[data-v-3d7ec305]{color:var(--muted);place-items:center;display:grid}.review-card-media[data-v-3d7ec305]{min-width:0}.review-card-meta[data-v-3d7ec305]{gap:4px;display:grid}.review-card span[data-v-3d7ec305],.review-card small[data-v-3d7ec305]{overflow-wrap:anywhere;color:var(--muted)}.review-card code[data-v-3d7ec305]{width:fit-content}.review-card code[data-status=success][data-v-3d7ec305]{color:#25744a}.review-card code[data-status=duplicate][data-v-3d7ec305]{color:#755b14}.review-card code[data-status=damaged][data-v-3d7ec305],.review-card code[data-status=unrecognized][data-v-3d7ec305]{color:var(--cinnabar)}.review-corrected[data-v-3d7ec305]{font-weight:700;color:#25744a!important}.review-editor[data-v-3d7ec305]{border-top:1px solid var(--line);gap:8px;margin-top:6px;padding-top:10px;display:grid}.review-editor label[data-v-3d7ec305]:not(.review-include){grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px;display:grid}.review-editor input[data-v-3d7ec305],.review-editor select[data-v-3d7ec305]{width:100%;min-width:0}.review-include[data-v-3d7ec305]{align-items:center;gap:8px;display:flex}.review-include input[data-v-3d7ec305]{width:auto}.review-editor button[data-v-3d7ec305]{min-height:40px}.review-retry[data-v-3d7ec305]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.review-pagination[data-v-3d7ec305]{justify-content:space-between}.review-actions[data-v-3d7ec305]{border-top:1px solid var(--line);padding-top:16px}.favorite-glyph-control[data-v-a577692f]{gap:8px;display:grid}.favorite-glyph-control button[data-v-a577692f]{width:100%}.related-glyphs[data-v-46692e6f]{gap:14px;margin-top:24px;display:grid}.related-glyphs h2[data-v-46692e6f],.related-glyphs h3[data-v-46692e6f]{margin:0}.related-glyph-group[data-v-46692e6f]{gap:8px;display:grid}.related-glyph-group h3[data-v-46692e6f]{color:var(--muted);font-size:.9rem;font-weight:600}.related-glyph-links[data-v-46692e6f]{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px;display:grid}.related-glyph-links a[data-v-46692e6f]{color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:3px;padding:12px;text-decoration:none;display:grid}.related-glyph-links strong[data-v-46692e6f]{font-size:1.45rem}.related-glyph-links span[data-v-46692e6f],.related-glyph-links small[data-v-46692e6f]{color:var(--muted)}.pending-activation-message[data-v-53625dcc]{color:#235f40;background:#edf7ef;border-radius:10px;margin:0 0 14px;padding:13px 14px;font-size:16px;font-weight:700;line-height:1.55}.activated-feature-list[data-v-53625dcc]{border-top:1px solid var(--line);margin-top:14px;padding-top:13px}.activated-feature-list strong[data-v-53625dcc]{color:#235f40}.activated-feature-list ul[data-v-53625dcc]{color:var(--muted);gap:5px;margin:8px 0 0;padding-left:1.3em;display:grid}.current-download-access[data-v-53625dcc]{color:var(--muted);gap:5px;margin:10px 0 0;padding-left:1.3em;line-height:1.55;display:grid}.permission-card button[data-v-86f00f98]{background:var(--cinnabar);color:#fff;border:0;border-radius:10px;justify-self:start;min-height:48px;padding:0 18px;font-weight:700}.saved-content[data-v-041c66d3]{gap:18px;display:grid}.saved-glyph-grid[data-v-041c66d3]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.saved-glyph-grid article[data-v-041c66d3]{gap:8px;display:grid}.saved-glyph-grid a[data-v-041c66d3],.saved-glyph-grid article>div[data-v-041c66d3]{color:inherit;gap:6px;text-decoration:none;display:grid}.saved-glyph-grid img[data-v-041c66d3]{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px;width:100%}.draft-list[data-v-041c66d3]{gap:10px;display:grid}.draft-list article[data-v-041c66d3],.draft-list article>div[data-v-041c66d3]:last-child{justify-content:space-between;align-items:center;gap:12px;display:flex}@media (width<=560px){.draft-list article[data-v-041c66d3]{flex-direction:column;align-items:flex-start}}.batch-row[data-v-a1c5f838]{border-bottom:1px solid #50413224;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.batch-row>div[data-v-a1c5f838]{gap:4px;display:grid}.admin-editor textarea[data-v-a1c5f838]{width:100%}.feature-picker[data-v-a1c5f838]{border:1px solid var(--line);border-radius:12px;gap:10px;min-width:0;margin:0;padding:14px;display:grid}.feature-picker legend[data-v-a1c5f838]{padding:0 6px;font-weight:700}.feature-picker>label[data-v-a1c5f838]{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;grid-template-columns:28px 1fr;align-items:center;gap:10px;min-height:64px;padding:10px 12px;display:grid}.feature-picker>label.selected[data-v-a1c5f838]{border-color:var(--cinnabar);background:var(--cinnabar-soft)}.feature-picker input[data-v-a1c5f838]{width:22px;height:22px;accent-color:var(--cinnabar);margin:0}.feature-picker span[data-v-a1c5f838]{gap:3px;display:grid}.feature-picker small[data-v-a1c5f838]{color:var(--muted);line-height:1.45}.feature-picker p[data-v-a1c5f838]{color:var(--muted);margin:2px 0 0;line-height:1.55}@media (width<=620px){.batch-row[data-v-a1c5f838]{flex-direction:column;align-items:flex-start}}.relation-row[data-v-ad8d73ef]{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.relation-row>div[data-v-ad8d73ef]{gap:4px;display:grid}.relation-row span[data-v-ad8d73ef],.relation-row small[data-v-ad8d73ef]{color:var(--muted)}@media (width<=620px){.relation-row[data-v-ad8d73ef]{flex-direction:column;align-items:flex-start}}.missing-glyph-layout[data-v-096879ba]{max-width:980px;display:block}.missing-glyph-intro[data-v-096879ba]{justify-content:space-between;align-items:start;gap:16px;display:flex}.missing-glyph-intro h2[data-v-096879ba]{margin:0;font-size:22px}.missing-glyph-intro p[data-v-096879ba]{color:var(--muted);margin:8px 0 0;line-height:1.65}.missing-glyph-intro button[data-v-096879ba],.missing-glyph-filters button[data-v-096879ba],.missing-glyph-editor button[data-v-096879ba],.missing-glyph-pagination button[data-v-096879ba]{border:1px solid var(--cinnabar);background:var(--surface);min-height:44px;color:var(--cinnabar);font:inherit;border-radius:9px;padding:0 16px}.missing-glyph-intro button[data-v-096879ba]{flex:none}.missing-glyph-intro button[data-v-096879ba]:disabled,.missing-glyph-editor button[data-v-096879ba]:disabled,.missing-glyph-pagination button[data-v-096879ba]:disabled{cursor:not-allowed;opacity:.55}.missing-glyph-filters[data-v-096879ba]{grid-template-columns:minmax(160px,1fr) auto repeat(3,minmax(130px,.55fr));align-items:end;gap:10px;margin-top:20px;display:grid}.missing-glyph-filters label[data-v-096879ba]{min-width:0;color:var(--muted);gap:6px;font-size:13px;display:grid}.missing-glyph-query-error[data-v-096879ba]{color:var(--cinnabar);grid-column:1/-1}.missing-glyph-filters input[data-v-096879ba],.missing-glyph-filters select[data-v-096879ba],.missing-glyph-editor select[data-v-096879ba],.missing-glyph-editor textarea[data-v-096879ba]{border:1px solid var(--line);width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;background:#fff;border-radius:9px;padding:9px 11px}.missing-glyph-summary[data-v-096879ba]{color:var(--muted);justify-content:space-between;gap:12px;margin:18px 2px 10px;font-size:13px;display:flex}.missing-glyph-list[data-v-096879ba]{gap:12px;display:grid}.missing-glyph-card[data-v-096879ba]{border:1px solid var(--line);background:var(--paper);border-radius:12px;min-width:0;padding:16px}.missing-glyph-card[aria-busy=true][data-v-096879ba]{opacity:.72}.missing-glyph-heading[data-v-096879ba]{justify-content:space-between;align-items:center;gap:12px;display:flex}.missing-glyph-heading h2[data-v-096879ba]{margin:0;font-family:Songti SC,STSong,serif;font-size:36px;line-height:1}.missing-glyph-status[data-v-096879ba]{color:var(--muted);background:#eee9e2;border-radius:999px;flex:none;padding:5px 9px;font-size:12px}.missing-glyph-status.status-pending[data-v-096879ba]{background:var(--cinnabar-soft);color:var(--cinnabar)}.missing-glyph-status.status-requested[data-v-096879ba]{color:#84600c;background:#fff0cc}.missing-glyph-status.status-collected[data-v-096879ba]{color:#28764c;background:#e4f3e8}.missing-glyph-stats[data-v-096879ba]{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0;display:grid}.missing-glyph-stats div[data-v-096879ba]{background:#fff;border-radius:9px;min-width:0;padding:10px}.missing-glyph-stats dt[data-v-096879ba]{color:var(--muted);font-size:12px}.missing-glyph-stats dd[data-v-096879ba]{overflow-wrap:anywhere;margin:4px 0 0;font-weight:650}.missing-glyph-stats div[data-v-096879ba]:nth-last-child(-n+2){grid-column:span 2}.missing-glyph-stats div:nth-last-child(-n+2) dd[data-v-096879ba]{font-size:13px;font-weight:500}.missing-glyph-editor[data-v-096879ba]{grid-template-columns:92px minmax(0,170px) 92px minmax(180px,1fr) auto;align-items:center;gap:8px;display:grid}.missing-glyph-editor label[data-v-096879ba]{color:var(--muted);font-size:13px}.missing-glyph-editor textarea[data-v-096879ba]{resize:vertical;min-height:44px;max-height:128px}.missing-glyph-resolved[data-v-096879ba]{color:var(--muted);margin:10px 0 0;font-size:12px}.missing-glyph-warning[data-v-096879ba]{color:#765710;background:#fff0cc;border-radius:8px;margin:10px 0 0;padding:9px 10px;font-size:13px;line-height:1.5}.missing-glyph-pagination[data-v-096879ba]{justify-content:center;align-items:center;gap:14px;margin-top:18px;display:flex}.missing-glyph-pagination span[data-v-096879ba]{color:var(--muted);font-size:13px}@media (width<=760px){.missing-glyph-filters[data-v-096879ba]{grid-template-columns:minmax(0,1fr) auto}.missing-glyph-filters>label[data-v-096879ba]:not(.missing-glyph-query){grid-column:span 1}.missing-glyph-editor[data-v-096879ba]{grid-template-columns:88px minmax(0,1fr);align-items:start}.missing-glyph-editor button[data-v-096879ba]{grid-column:1/-1}}@media (width<=520px){.missing-glyph-intro[data-v-096879ba]{display:grid}.missing-glyph-intro button[data-v-096879ba]{width:100%}.missing-glyph-filters[data-v-096879ba]{grid-template-columns:minmax(0,1fr) auto}.missing-glyph-filters>label[data-v-096879ba]:not(.missing-glyph-query){grid-column:1/-1}.missing-glyph-stats[data-v-096879ba]{grid-template-columns:repeat(2,minmax(0,1fr))}.missing-glyph-stats div[data-v-096879ba]:nth-last-child(-n+2){grid-column:1/-1}.missing-glyph-editor[data-v-096879ba]{grid-template-columns:1fr}.missing-glyph-editor button[data-v-096879ba]{grid-column:auto;width:100%}.missing-glyph-pagination[data-v-096879ba]{justify-content:space-between;gap:6px}.missing-glyph-pagination button[data-v-096879ba]{padding:0 12px}}.activation-content[data-v-0949c32b]{width:min(100% - 32px,640px);padding:24px 0 44px}.activation-login-card[data-v-0949c32b],.activation-help-card[data-v-0949c32b]{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:18px;margin-top:16px;padding:clamp(20px,5vw,28px)}.activation-account-message[data-v-0949c32b]{color:#77551d;background:#fff7e8;border-radius:12px;margin:0 0 12px;padding:13px 15px;font-size:17px;font-weight:700;line-height:1.55}.activation-login-card[data-v-0949c32b]{grid-template-columns:48px 1fr;align-items:center;gap:14px;display:grid}.activation-login-card h2[data-v-0949c32b],.activation-help-card h2[data-v-0949c32b]{margin:0 0 8px;font-size:22px}.activation-login-card p[data-v-0949c32b],.activation-help-card p[data-v-0949c32b]{color:var(--muted);margin:0;font-size:17px;line-height:1.7}.activation-step[data-v-0949c32b]{background:var(--cinnabar-soft);width:48px;height:48px;color:var(--cinnabar);border-radius:50%;place-items:center;font-size:22px;font-weight:800;display:grid}.activation-login-card a[data-v-0949c32b]{background:var(--cinnabar);color:#fff;border-radius:12px;grid-column:1/-1;place-items:center;min-height:56px;font-size:18px;font-weight:750;display:grid}.activation-help-card ol[data-v-0949c32b]{gap:10px;margin:14px 0;padding-left:1.5em;font-size:17px;line-height:1.6;display:grid}@media (width<=390px){.activation-content[data-v-0949c32b]{width:min(100% - 24px,640px)}}@media (prefers-reduced-motion:reduce){.activation-view[data-v-0949c32b] *{scroll-behavior:auto!important;transition:none!important}}:root{color:#1c1b19;font-synthesis:none;text-rendering:optimizelegibility;--paper:#f7f4ee;--surface:#fff;--ink:#1c1b19;--muted:#6f6a63;--line:#e6e0d7;--cinnabar:#b33a32;--cinnabar-soft:#f6e8e5;--shadow:0 8px 28px #2d231814;background:#f7f4ee;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh}.page-with-nav{min-height:100vh;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.home-view{place-items:start center;padding-inline:16px;display:grid}.home-content{width:min(100%,740px);min-height:calc(100svh - 76px - env(safe-area-inset-bottom));flex-direction:column;padding:clamp(30px,7vh,72px) 0 clamp(24px,4vh,42px);display:flex}.brand-logo{object-fit:contain;width:min(248px,72vw);height:auto;margin:0 auto;display:block}.home-hero{text-align:center;width:min(100%,640px);margin:0 auto}.home-hero>p{color:var(--muted);margin:14px 0 22px;font-size:15px;line-height:1.7}.home-hero .glyph-search{border-radius:999px;min-height:62px;padding-left:20px}.home-hero .glyph-search button{border-radius:999px;min-width:82px;min-height:50px}.home-unlock-message{color:#28764c;margin:10px 4px 0;font-size:14px;line-height:1.55}.home-section-tabs{gap:2px;width:min(100%,640px);margin:20px auto 0;padding-bottom:4px;display:flex;overflow-x:auto}.home-section-tabs>*{min-width:64px;min-height:44px;color:var(--muted);text-align:center;flex:1 0 auto;place-items:center;padding:0 12px;font-size:14px;display:grid;position:relative}.home-section-tabs>.active{color:var(--cinnabar);font-weight:700}.home-section-tabs>.active:after{background:var(--cinnabar);content:"";border-radius:2px;height:2px;position:absolute;bottom:3px;left:16px;right:16px}.daily-calligraphy{width:min(100%,700px);margin:auto auto 0;padding-top:clamp(32px,8vh,82px)}.daily-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.daily-heading span{color:var(--cinnabar);font-size:12px}.daily-heading h2{margin:3px 0 0;font-family:Songti SC,STSong,serif;font-size:22px}.daily-heading>a{min-height:44px;color:var(--muted);padding:12px 2px 0 12px;font-size:13px}.daily-article-card{border:1px solid var(--line);background:var(--surface);min-height:122px;box-shadow:var(--shadow);border-radius:20px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;display:grid}.daily-article-card.has-cover{grid-template-columns:104px minmax(0,1fr) auto}.daily-article-card img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:104px}.daily-article-card time{color:var(--muted);font-size:12px}.daily-article-card h3{margin:4px 0 5px;font-size:18px}.daily-article-card p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.daily-article-card>span{color:var(--muted);font-size:28px}.daily-placeholder{border:1px dashed var(--line);min-height:92px;color:var(--muted);text-align:center;border-radius:18px;margin:0;padding:24px 18px;line-height:1.6}.glyph-search{border:1px solid var(--line);background:var(--surface);min-height:56px;box-shadow:var(--shadow);border-radius:16px;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:5px 6px 5px 16px;display:grid}.search-symbol{border:2px solid var(--muted);opacity:.72;border-radius:50%;width:18px;height:18px;position:relative}.search-symbol:after{background:var(--muted);content:"";border-radius:2px;width:7px;height:2px;position:absolute;bottom:-3px;right:-5px;transform:rotate(45deg)}.glyph-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:17px}.glyph-search input::placeholder{color:#aaa39a}.glyph-search button{background:var(--cinnabar);color:#fff;cursor:pointer;border:0;border-radius:12px;min-width:72px;min-height:46px;font-weight:650}.glyph-search button:focus-visible,.app-nav a:focus-visible{outline-offset:3px;outline:3px solid #b33a324d}.form-error{color:var(--cinnabar)!important;margin:10px 4px 0!important;font-size:14px!important}.app-nav{z-index:40;min-height:calc(66px + env(safe-area-inset-bottom));padding:6px 8px max(6px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff7;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #2d231817}.app-nav-items{grid-template-columns:repeat(5,minmax(0,1fr));width:100%;margin:0 auto;display:grid}.app-nav a{min-height:48px;color:var(--muted);place-content:center;place-items:center;gap:3px;font-size:12px;display:grid}.app-nav-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:24px;height:24px}.app-nav a.router-link-active{color:var(--cinnabar);font-weight:700}.app-nav.keyboard-open{display:none}.simple-view{background:var(--paper);width:min(100%,760px);margin:0 auto}.simple-header{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:48px 1fr 48px;align-items:center;min-height:62px;padding:0 12px;display:grid}.simple-header a{font-size:40px;line-height:1}.simple-header h1{text-align:center;margin:0;font-size:19px}.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}.page-header{z-index:12;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;grid-template-columns:48px 1fr 48px;align-items:center;min-height:62px;padding:0 12px;display:grid;position:sticky;top:0}.page-header h1{text-align:center;margin:0;font-size:19px}.back-link{place-items:center;width:44px;height:44px;font-size:40px;line-height:1;display:grid}.text-button{min-width:44px;min-height:44px;color:var(--cinnabar);cursor:pointer;background:0 0;border:0;padding:0}.content-column{width:min(100% - 32px,760px);margin:0 auto}.results-content,.library-content,.detail-content{padding-top:20px}.compact-search{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:1fr auto;gap:8px;padding:6px;display:grid}.compact-search input{background:0 0;border:0;outline:0;min-width:0;padding:0 12px;font-size:22px}.compact-search button,.generate-button{background:var(--cinnabar);color:#fff;border:0;border-radius:10px;min-width:80px;min-height:46px;font-weight:700}.status-message{text-align:center;color:var(--muted);margin:42px 0}.error-message{color:var(--cinnabar)}.empty-card{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:14px;margin-top:24px;padding:30px 20px}.empty-card strong{font-size:18px}.empty-card p{color:var(--muted);margin:8px 0 0}.result-group{margin-top:26px}.result-filters{border:1px solid var(--line);background:#ffffffbd;border-radius:16px;gap:12px;margin-top:16px;padding:16px;display:grid}.search-usage{color:var(--muted);text-align:right;margin:8px 4px 0;font-size:13px}.result-group .section-heading small{color:var(--cinnabar);margin-bottom:3px;font-size:12px;display:block}.result-switch-card button,.results-content>.empty-card button{border:1px solid var(--cinnabar);background:var(--surface);min-height:46px;color:var(--cinnabar);border-radius:999px;margin-top:16px;padding:0 18px;font-weight:700}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h2{margin:0;font-size:19px}.section-heading>span{color:var(--muted);font-size:13px}.section-heading>button{min-height:40px;color:var(--cinnabar);background:0 0;border:0}.glyph-card-grid,.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.glyph-card,.library-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:6px;padding:10px;display:grid;box-shadow:0 4px 16px #2d23180d}.glyph-card img,.library-card img{aspect-ratio:1;object-fit:contain;background:#fbfaf7;border-radius:9px;width:100%}.glyph-card span,.library-card span{font-size:14px;font-weight:650}.library-card small{color:var(--muted)}.detail-content{max-width:620px}.detail-image-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;padding:18px;display:grid}.detail-image-card img{object-fit:contain;width:100%;max-height:58vh}.detail-meta{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.detail-meta div{background:var(--surface);border-radius:12px;gap:5px;padding:14px;display:grid}.detail-meta span{color:var(--muted);font-size:13px}.variant-navigation{text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:18px;display:grid}.variant-navigation a{min-height:44px;color:var(--cinnabar);line-height:44px}.variant-navigation a:last-child{justify-self:end}.alternative-strip{gap:10px;margin-top:14px;padding-bottom:8px;display:flex;overflow-x:auto}.alternative-strip a{background:var(--surface);border:2px solid #0000;border-radius:11px;flex:0 0 88px;padding:5px}.alternative-strip a.active{border-color:var(--cinnabar)}.alternative-strip img{aspect-ratio:1;object-fit:contain;width:100%}.download-disabled,.download-link{border:0;border-radius:12px;place-items:center;width:100%;min-height:48px;margin-top:18px;display:grid}.download-disabled{color:var(--muted);background:#ece8e1}.download-link{background:var(--cinnabar);color:#fff;font-weight:700}.download-link:disabled{cursor:wait;opacity:.62}.field-label{color:var(--muted);gap:8px;font-size:14px;display:grid}.field-label select,.layout-settings select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:10px;padding:0 14px}.library-filters{border:1px solid var(--line);background:#ffffffbd;border-radius:16px;gap:12px;margin-bottom:20px;padding:16px;display:grid}.library-filter-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.library-filter-heading span,.library-active-note{color:var(--muted);font-size:13px}.script-style-tabs{scrollbar-width:thin;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.script-style-tabs button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--muted);border-radius:999px;flex:none;padding:0 18px}.script-style-tabs button.active{border-color:var(--cinnabar);background:var(--cinnabar-soft);color:var(--cinnabar);font-weight:700}.library-collection-select{border-top:1px solid var(--line);padding-top:2px}.library-collection-select>span{padding-top:10px}.library-active-note{margin:-2px 0 0}.library-grid{margin-bottom:20px}.library-pagination{color:var(--muted);justify-items:center;gap:10px;margin:8px 0 28px;font-size:14px;display:grid}.library-pagination button{border:1px solid var(--cinnabar);background:var(--surface);min-width:140px;min-height:44px;color:var(--cinnabar);border-radius:22px}.library-pagination button:disabled{opacity:.58}.collection-switcher{margin-top:20px}.collection-switcher h2{margin:0 0 10px;font-size:18px}.collection-switcher>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.collection-switcher a{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:64px 1fr;align-items:center;gap:3px 10px;padding:8px;display:grid}.collection-switcher a.active{border-color:var(--cinnabar);background:var(--cinnabar-soft)}.collection-switcher img{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:8px;grid-row:1/3;width:64px}.collection-switcher span{align-self:end;font-size:14px;font-weight:700}.collection-switcher small{color:var(--muted);align-self:start}.collection-view{background:var(--paper);min-height:100vh}.collection-form{max-width:640px;padding-top:22px;padding-bottom:42px}.input-note{color:var(--muted);margin:0 2px 10px;font-size:14px}.text-input-card{border:1px solid var(--line);background:var(--surface);min-height:250px;box-shadow:var(--shadow);border-radius:16px;display:block;position:relative;overflow:hidden}.text-input-card textarea{resize:vertical;width:100%;min-height:250px;color:var(--ink);background:0 0;border:0;outline:0;padding:22px 20px 48px;font-size:18px;line-height:1.65}.text-input-card small{color:var(--muted);position:absolute;bottom:14px;right:18px}.punctuation-button{background:var(--cinnabar-soft);min-height:44px;color:var(--cinnabar);border:0;border-radius:22px;margin:10px 0 14px auto;padding:0 18px;display:block}.selection-card{border:1px solid var(--line);background:#ffffffb8;border-radius:14px;gap:12px;padding:18px;display:grid}.collection-script-tabs{margin-inline:-4px}.collection-error{text-align:center}.draft-actions{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.draft-actions button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--cinnabar);border-radius:20px;padding:0 16px}.draft-actions .draft-delete{color:var(--muted)}.draft-actions button:disabled{cursor:wait;opacity:.55}.draft-select{color:var(--muted);grid-template-columns:82px minmax(0,1fr);align-items:center;gap:10px;margin-top:12px;font-size:13px;display:grid}.draft-select select{min-width:0}.draft-message{color:var(--muted);text-align:right;margin:8px 2px 0;font-size:13px}.result-draft-actions,.result-draft-select{margin-top:8px}.generate-button{width:min(100%,340px);min-height:52px;margin:26px auto 0;font-size:17px;display:block}.generate-button:disabled{opacity:.58}.quick-texts{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.quick-texts button{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--cinnabar);border-radius:21px;padding:0 16px}.collection-view.has-result{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.collection-result-layout{width:min(100% - 24px,1120px);margin:0 auto;padding:16px 0 24px}.result-side-panel{display:none}.jizi-workspace{min-width:0}.jizi-canvas-scroll{border:1px solid var(--line);-webkit-overflow-scrolling:touch;background:#ece8e1;border-radius:16px;margin-top:12px;padding:12px;overflow:auto}.jizi-canvas{gap:var(--cell-gap);width:max-content;min-width:100%;padding:var(--canvas-padding);background-color:var(--canvas-background);box-shadow:var(--shadow);background-position:50%;background-size:cover;display:grid}.jizi-canvas.pattern-dots{background-image:radial-gradient(#5848371a 1px,#0000 1px);background-size:18px 18px}.jizi-canvas.horizontal{grid-template-columns:repeat(var(--line-count), minmax(72px, 96px))}.jizi-canvas.vertical{grid-template-rows:repeat(var(--line-count), minmax(72px, 96px));direction:rtl;grid-auto-flow:column;min-width:0;margin:0 auto}.glyph-cell{aspect-ratio:1;width:clamp(72px,22vw,96px);color:var(--cinnabar);direction:ltr;background-color:#ffffff85;border:1px solid #b33a3247;place-items:center;display:grid;position:relative;overflow:hidden}.glyph-cell img{width:var(--glyph-scale);height:var(--glyph-scale);object-fit:contain}.glyph-cell.selected{outline:2px solid var(--cinnabar);outline-offset:-2px}.glyph-cell.missing{border-style:dashed;font-size:14px}.glyph-cell small{color:var(--muted)}.grid-field .glyph-cell,.grid-rice .glyph-cell,.grid-palace .glyph-cell,.grid-rice-palace .glyph-cell{background-image:linear-gradient(90deg,#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px)),linear-gradient(#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px))}.grid-rice .glyph-cell,.grid-rice-palace .glyph-cell{background-image:linear-gradient(45deg,#0000 calc(50% - .5px),#b33a322e 50%,#0000 calc(50% + .5px)),linear-gradient(-45deg,#0000 calc(50% - .5px),#b33a322e 50%,#0000 calc(50% + .5px)),linear-gradient(90deg,#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px)),linear-gradient(#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px))}.grid-palace .glyph-cell:after,.grid-rice-palace .glyph-cell:after{content:"";pointer-events:none;border:1px dashed #b33a323d;position:absolute;inset:28%}.grid-nine .glyph-cell{background-image:linear-gradient(90deg,#0000 33%,#b33a3233 33% calc(33% + 1px),#0000 calc(33% + 1px) 66%,#b33a3233 66% calc(66% + 1px),#0000 calc(66% + 1px)),linear-gradient(#0000 33%,#b33a3233 33% calc(33% + 1px),#0000 calc(33% + 1px) 66%,#b33a3233 66% calc(66% + 1px),#0000 calc(66% + 1px))}.grid-none .glyph-cell{border-color:#0000}.result-toolbar{z-index:31;min-height:calc(72px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fffffffa;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #2d231812}.result-toolbar button{min-height:56px;color:var(--muted);background:0 0;border:0}.result-toolbar button.active,.result-toolbar .download-button{color:var(--cinnabar);font-weight:700}.result-toolbar button:disabled{opacity:.52}.tool-drawer{z-index:30;right:0;bottom:calc(72px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#f3f0eb;max-height:56vh;padding:18px 16px;position:fixed;left:0;overflow-y:auto;box-shadow:0 -10px 34px #2d23181f}.grid-options{grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:10px;max-width:640px;margin:0 auto;display:grid}.grid-options button{min-height:86px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:11px;place-items:center;gap:8px;display:grid}.grid-options button.active{border-color:var(--cinnabar);background:var(--surface);color:var(--cinnabar)}.grid-preview{aspect-ratio:1;border:1px solid var(--cinnabar);width:42px;position:relative}.grid-preview-none{opacity:.35;border-style:dashed}.grid-preview-field{background:linear-gradient(to right, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(to bottom, transparent 49%, var(--cinnabar) 50%, transparent 51%)}.grid-preview-rice{background:linear-gradient(45deg, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(-45deg, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(to right, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(to bottom, transparent 49%, var(--cinnabar) 50%, transparent 51%)}.grid-preview-palace{background:linear-gradient(to right, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(to bottom, transparent 49%, var(--cinnabar) 50%, transparent 51%)}.grid-preview-rice-palace{background:linear-gradient(45deg, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(-45deg, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(to right, transparent 49%, var(--cinnabar) 50%, transparent 51%), linear-gradient(to bottom, transparent 49%, var(--cinnabar) 50%, transparent 51%)}.grid-preview-palace:after,.grid-preview-rice-palace:after{border:1px dashed var(--cinnabar);content:"";position:absolute;inset:28%}.grid-preview-nine{background:linear-gradient(to right, transparent 32%, var(--cinnabar) 33%, transparent 34%, transparent 65%, var(--cinnabar) 66%, transparent 67%), linear-gradient(to bottom, transparent 32%, var(--cinnabar) 33%, transparent 34%, transparent 65%, var(--cinnabar) 66%, transparent 67%)}.layout-settings{gap:14px;min-width:0;max-width:640px;margin:0 auto;display:grid}.setting-row{grid-template-columns:92px minmax(0,1fr) 38px;align-items:center;gap:10px;min-width:0;display:grid}.setting-row>span{font-size:14px}.setting-row output{color:var(--muted);text-align:right}.readonly-setting{grid-template-columns:92px minmax(0,1fr)}.readonly-setting strong{font-weight:600}.segmented{grid-template-columns:92px 1fr 1fr}.segmented.three-options{grid-template-columns:72px repeat(3,minmax(0,1fr))}.segmented button,.file-setting button{border:1px solid var(--line);background:var(--surface);border-radius:9px;min-height:40px}.segmented button.active{border-color:var(--cinnabar);color:var(--cinnabar)}.export-summary{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.practice-preview{gap:10px;display:grid}.practice-preview-heading,.practice-page-label{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.practice-preview-heading strong{color:var(--ink);font-size:14px}.practice-preview-strip{scroll-snap-type:x proximity;grid-auto-columns:minmax(250px,390px);grid-auto-flow:column;gap:14px;padding:2px 2px 10px;display:grid;overflow-x:auto}.practice-preview-item{scroll-snap-align:start;gap:6px;display:grid}.practice-page{border:1px solid var(--line);background:#fff;position:relative;overflow:hidden;box-shadow:0 5px 16px #2d23181a}.practice-preview-cell{color:#b33a328c;border:1px solid #b33a3252;place-items:center;display:grid;position:absolute;overflow:hidden}.practice-preview-cell img{width:var(--practice-glyph-size);height:var(--practice-glyph-size);object-fit:contain}.practice-cell-trace img{opacity:.2}.practice-grid-none{border-color:#0000}.practice-grid-field,.practice-grid-rice,.practice-grid-palace,.practice-grid-rice-palace{background-image:linear-gradient(90deg,#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px)),linear-gradient(#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px))}.practice-grid-rice,.practice-grid-rice-palace{background-image:linear-gradient(45deg,#0000 calc(50% - .5px),#b33a3229 50%,#0000 calc(50% + .5px)),linear-gradient(-45deg,#0000 calc(50% - .5px),#b33a3229 50%,#0000 calc(50% + .5px)),linear-gradient(90deg,#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px)),linear-gradient(#0000 calc(50% - .5px),#b33a3233 50%,#0000 calc(50% + .5px))}.practice-grid-palace:after,.practice-grid-rice-palace:after{content:"";pointer-events:none;border:1px dashed #b33a323d;position:absolute;inset:28%}.practice-grid-nine{background-image:linear-gradient(90deg,#0000 33%,#b33a3233 33% calc(33% + 1px),#0000 calc(33% + 1px) 66%,#b33a3233 66% calc(66% + 1px),#0000 calc(66% + 1px)),linear-gradient(#0000 33%,#b33a3233 33% calc(33% + 1px),#0000 calc(33% + 1px) 66%,#b33a3233 66% calc(66% + 1px),#0000 calc(66% + 1px))}.practice-missing-marker{border:1px dashed #b33a327a;position:absolute;inset:18%}.practice-missing-marker:before,.practice-missing-marker:after{content:"";background:#b33a327a;width:135%;height:1px;position:absolute;top:50%;left:50%}.practice-missing-marker:before{transform:translate(-50%,-50%)rotate(45deg)}.practice-missing-marker:after{transform:translate(-50%,-50%)rotate(-45deg)}.practice-preview-watermark{object-fit:contain;opacity:1;width:auto;max-width:32%;height:auto;max-height:16%;position:absolute}.practice-preview-watermark.watermark-top-left{top:var(--practice-watermark-y);left:var(--practice-watermark-x)}.practice-preview-watermark.watermark-top-right{top:var(--practice-watermark-y);right:var(--practice-watermark-x)}.practice-preview-watermark.watermark-center{top:50%;left:50%;transform:translate(-50%,-50%)}.practice-preview-watermark.watermark-bottom-left{bottom:var(--practice-watermark-y);left:var(--practice-watermark-x)}.practice-preview-watermark.watermark-bottom-right{right:var(--practice-watermark-x);bottom:var(--practice-watermark-y)}.export-download-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.export-download-actions>button{border:1px solid var(--cinnabar);background:var(--surface);min-height:48px;color:var(--cinnabar);border-radius:24px;font-weight:700}.pdf-download-button{background:var(--cinnabar)!important;color:#fff!important;border-color:#0000!important}.pdf-download-button:disabled{opacity:.58}@media (width<=520px){.export-download-actions{grid-template-columns:1fr}}.file-setting{grid-template-columns:92px minmax(0,1fr) auto}.file-setting input[type=file]{width:100%;min-width:0}.variant-sheet-backdrop{z-index:50;background:#1c1b195c;align-items:flex-end;display:flex;position:fixed;inset:0}.variant-sheet{width:100%;max-height:70vh;padding:18px 16px calc(22px + env(safe-area-inset-bottom));background:var(--paper);border-radius:18px 18px 0 0;overflow-y:auto}.variant-sheet-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;display:grid}.variant-sheet-grid button{background:var(--surface);border:2px solid #0000;border-radius:10px;padding:5px}.variant-sheet-grid button.active{border-color:var(--cinnabar)}.variant-sheet-grid img{aspect-ratio:1;object-fit:contain;width:100%}.admin-import-content{max-width:680px;padding:24px 0 48px}.admin-import-content>p{color:var(--muted);margin:0 0 18px;line-height:1.7}.admin-import-form{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;gap:18px;padding:20px;display:grid}.admin-import-form input[type=file],.admin-import-form input[type=password]{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;min-height:48px;padding:11px 12px}.import-result{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:22px;padding:20px}.import-result dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 0;display:grid}.import-result dl div{background:var(--paper);border-radius:10px;padding:12px}.import-result dt{color:var(--muted);font-size:13px}.import-result dd{margin:4px 0 0;font-size:20px;font-weight:700}.single-glyph-upload{margin-top:28px}.single-glyph-upload .admin-import-form{box-shadow:none;margin-top:12px}.account-content{max-width:640px;padding:22px 0 40px}.profile-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;grid-template-columns:54px 1fr auto;align-items:center;gap:12px;padding:18px;display:grid}.profile-avatar{background:var(--cinnabar-soft);width:54px;height:54px;color:var(--cinnabar);border-radius:50%;place-items:center;font-family:Songti SC,STSong,serif;font-size:24px;display:grid}.profile-card strong{font-size:18px}.profile-card p{color:var(--muted);margin:4px 0 0}.profile-card>span{color:var(--cinnabar);font-size:13px}.account-card,.auth-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:16px;padding:20px}.account-card h2{margin:0 0 10px;font-size:18px}.account-card p{color:var(--muted);margin:0;line-height:1.7}.account-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;min-height:48px;display:flex}.account-row span{color:var(--muted);font-size:26px}.product-list,.order-list{gap:10px;margin-top:12px;display:grid}.product-list>div,.order-list>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding-top:10px;display:flex}.product-list p{margin:3px 0 0;font-size:13px}.product-list button{border:1px solid var(--cinnabar);min-height:40px;color:var(--cinnabar);background:0 0;border-radius:9px;padding:0 12px}.product-list>div>span,.order-list span{color:var(--muted);font-size:13px}.sign-out-button{border:1px solid var(--line);width:100%;min-height:48px;color:var(--muted);background:0 0;border-radius:12px;margin-top:18px}.auth-tabs{background:var(--paper);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;display:grid}.auth-tabs button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:9px}.auth-tabs button.active{background:var(--surface);color:var(--cinnabar);font-weight:700;box-shadow:0 3px 12px #2d231812}.auth-form{gap:16px;margin-top:20px;display:grid}.auth-form>label:not(.agreement-row){color:var(--muted);gap:8px;font-size:14px;display:grid}.auth-form input:not([type=checkbox]){border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:10px;padding:0 13px;font-size:16px}.code-field{grid-template-columns:1fr auto;gap:8px;display:grid}.code-field button{border:1px solid var(--cinnabar);min-width:108px;color:var(--cinnabar);background:0 0;border-radius:10px}.agreement-row{color:var(--muted);align-items:flex-start;gap:8px;font-size:13px;line-height:1.6;display:flex}.agreement-row input{flex:none;width:18px;height:18px;margin-top:2px}.agreement-row a{color:var(--cinnabar)}.development-code,.auth-message,.auth-error{margin:0;font-size:14px}.development-code{color:var(--muted)}.auth-message{color:#28764c}.auth-error{color:var(--cinnabar)}.legal-content{max-width:720px;padding:28px 0 54px;line-height:1.85}.legal-content h2{margin-top:0;font-size:22px}.legal-content h3{margin:26px 0 8px;font-size:18px}.legal-content p{color:var(--muted)}.courses-content,.course-detail-content{max-width:880px;padding:22px 0 44px}.teacher-section+.teacher-section{margin-top:30px}.teacher-heading{grid-template-columns:58px 1fr;align-items:center;gap:12px;display:grid}.teacher-avatar{background:var(--cinnabar-soft);width:58px;height:58px;color:var(--cinnabar);border-radius:18px;place-items:center;font-family:Songti SC,STSong,serif;font-size:26px;display:grid}.teacher-avatar-image,.course-cover-image,.article-cover-image,.article-detail-cover{object-fit:cover}.teacher-avatar-image{display:block}.teacher-heading h2,.teacher-heading p{margin:0}.teacher-heading h2{font-size:20px}.teacher-heading p{color:var(--muted);margin-top:4px;font-size:14px}.course-grid{gap:12px;margin-top:14px;display:grid}.course-card,.course-intro{border:1px solid var(--line);background:var(--surface);border-radius:15px;grid-template-columns:108px 1fr;align-items:center;gap:16px;padding:14px;display:grid}.course-cover{aspect-ratio:4/3;width:100%;color:var(--cinnabar);background:linear-gradient(145deg,#f6e8e5,#ece2d6);border-radius:11px;place-items:center;font-family:Songti SC,STSong,serif;font-size:34px;display:grid}.course-cover-image{display:block}.article-cover-image{border-radius:12px;width:100%;max-height:220px}.article-detail-cover{border-radius:16px;width:100%;max-height:420px;margin-bottom:20px}.course-card h3,.course-card p,.course-intro h2,.course-intro p{margin:0}.course-card h3{font-size:17px}.course-card p,.course-intro p{color:var(--muted);margin-top:6px;line-height:1.6}.course-card small{color:var(--cinnabar);margin-top:8px;display:block}.course-intro{grid-template-columns:140px 1fr}.course-intro span{color:var(--cinnabar);font-size:14px}.course-intro h2{margin-top:4px;font-size:24px}.video-card{border:1px solid var(--line);background:#151515;border-radius:15px;margin-top:18px;overflow:hidden}.video-card video{background:#000;width:100%;max-height:58vh;display:block}.video-card h3{color:#fff;margin:0;padding:12px 16px;font-size:15px}.chapter-list{margin-top:22px}.permission-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:10px;margin-top:22px;padding:20px;display:grid}.permission-card p{color:var(--muted);margin:0;line-height:1.7}.permission-card a{color:var(--cinnabar);justify-self:start;font-weight:700}.chapter-list h2{margin:0 0 10px;font-size:19px}.chapter-list button{border:0;border-top:1px solid var(--line);background:var(--surface);width:100%;min-height:62px;color:var(--ink);text-align:left;grid-template-columns:78px 1fr auto;align-items:center;gap:10px;padding:10px 14px;display:grid}.chapter-list button:first-of-type{border-radius:12px 12px 0 0}.chapter-list button:last-child{border-radius:0 0 12px 12px}.chapter-list span,.chapter-list em{color:var(--muted);font-size:13px;font-style:normal}.chapter-list em{color:var(--cinnabar)}.articles-content{max-width:760px;padding:20px 0 44px}.category-tabs{gap:8px;padding-bottom:8px;display:flex;overflow-x:auto}.category-tabs button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--muted);border-radius:20px;flex:none;padding:0 16px}.category-tabs button.active{border-color:var(--cinnabar);background:var(--cinnabar-soft);color:var(--cinnabar)}.article-list{gap:12px;margin-top:12px;display:grid}.article-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:18px;display:block}.article-card>span,.article-content>span{color:var(--cinnabar);font-size:13px}.article-card h2{margin:8px 0 0;font-size:20px}.article-card p{color:var(--muted);margin:8px 0 0;line-height:1.7}.article-card time,.article-content time{color:#999289;margin-top:12px;font-size:13px;display:block}.article-content{max-width:720px;padding:32px 0 60px}.article-content h1{margin:10px 0 0;font-family:Songti SC,STSong,serif;font-size:clamp(28px,6vw,42px);line-height:1.35}.article-summary{color:var(--muted);margin:16px 0 0;font-size:17px;line-height:1.75}.article-body{white-space:pre-wrap;margin-top:30px;font-size:17px;line-height:1.95}.admin-view{background:#f2eee8;min-height:100vh}.admin-layout{gap:14px;width:min(100% - 24px,1180px);margin:18px auto 40px;display:grid}.admin-tabs{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.admin-tabs button,.admin-tabs a{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--muted);border-radius:10px;flex:none;padding:0 14px;line-height:40px}.admin-tabs button.active,.admin-tabs a.router-link-active{border-color:var(--cinnabar);background:var(--cinnabar-soft);color:var(--cinnabar)}.admin-panel{border:1px solid var(--line);background:var(--surface);border-radius:16px;min-width:0;padding:18px}.admin-workspace{border:0;min-width:0;margin:0;padding:0}.admin-workspace[disabled]{cursor:wait}.membership-records{gap:8px;display:grid}.membership-records>div{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:4px;padding:12px;display:grid}.membership-records span{color:var(--muted);font-size:13px}.admin-panel>h2{margin:26px 0 10px;font-size:19px}.admin-message{color:#28764c;background:#edf7ef;border-radius:10px;margin:0 0 14px;padding:10px 12px}.admin-metrics{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.admin-metrics div{background:var(--paper);border-radius:12px;gap:4px;padding:16px;display:grid}.admin-metrics strong{color:var(--cinnabar);font-size:28px}.admin-metrics span,.admin-list span{color:var(--muted);font-size:13px}.admin-list{gap:8px;display:grid}.admin-list>div,.admin-list>button{border:1px solid var(--line);width:100%;min-height:58px;color:var(--ink);text-align:left;background:#fff;border-radius:10px;gap:5px;padding:11px 13px;display:grid}.inline-admin-form{grid-template-columns:1fr auto;gap:8px;margin-bottom:12px;display:grid}.inline-admin-form input,.admin-editor input,.admin-editor select,.admin-editor textarea{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border-radius:9px;padding:9px 11px}.inline-admin-form button,.admin-editor>button,.permission-actions button{border:1px solid var(--cinnabar);background:var(--surface);min-height:44px;color:var(--cinnabar);border-radius:9px;padding:0 16px}.admin-columns{gap:12px;display:grid}.admin-editor{background:var(--paper);border-radius:12px;align-content:start;gap:10px;margin-top:16px;padding:16px;display:grid}.admin-editor h2,.admin-editor h3{margin:0;font-size:18px}.admin-editor textarea{resize:vertical;min-height:96px}.permission-actions{flex-wrap:wrap;gap:8px;display:flex}.permission-check{align-items:center;gap:8px;min-height:42px;display:flex}.permission-check input{width:18px;height:18px}.settings-editor label{color:var(--muted);gap:6px;font-size:14px;display:grid}@media (width>=760px){.admin-layout{grid-template-columns:164px minmax(0,1fr);margin-top:84px}.admin-tabs{align-content:start;display:grid;position:sticky;top:80px;overflow:visible}.admin-metrics{grid-template-columns:repeat(4,1fr)}.admin-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.article-admin-columns{grid-template-columns:minmax(220px,.7fr) minmax(360px,1.3fr)}}@media (width<=520px){.course-card,.course-intro{grid-template-columns:88px 1fr}.chapter-list button{grid-template-columns:1fr auto}.chapter-list button>span{grid-column:1/-1}}.empty-state{min-height:60vh;color:var(--muted);place-items:center;display:grid}.not-found-view{place-items:center;min-height:100vh;padding:24px;display:grid}.not-found-card{border:1px solid var(--line);background:var(--surface);text-align:center;max-width:460px;box-shadow:var(--shadow);border-radius:18px;justify-items:center;gap:12px;padding:42px 28px;display:grid}.not-found-card>span{color:var(--cinnabar);font-family:Songti SC,STSong,serif;font-size:54px}.not-found-card h1,.not-found-card p{margin:0}.not-found-card p{color:var(--muted)}.not-found-card a{background:var(--cinnabar);color:#fff;border-radius:10px;margin-top:8px;padding:12px 24px}@media (width>=768px){.page-with-nav{padding-bottom:104px}.home-content{min-height:calc(100svh - 86px);padding-top:clamp(42px,8vh,76px)}.brand-logo{width:300px}.page-header{margin-top:0;top:0}.app-nav{padding:8px max(20px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));bottom:0;left:0;right:0}.app-nav-items{width:min(100%,680px)}.app-nav a{min-height:54px;font-size:13px}.glyph-card-grid,.library-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.collection-form{padding-top:22px}.collection-result-layout{padding-top:20px}}@media (width>=1024px){.collection-view.has-result{padding-bottom:30px}.collection-result-layout{grid-template-columns:300px minmax(0,1fr);gap:24px;display:grid}.result-side-panel{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-content:start;gap:16px;padding:18px;display:grid}.result-side-panel p{color:var(--muted);margin:0;line-height:1.7}.result-side-panel button{border:1px solid var(--cinnabar);min-height:44px;color:var(--cinnabar);background:0 0;border-radius:10px}.result-toolbar,.tool-drawer{border:1px solid var(--line);width:min(100% - 348px,772px);box-shadow:none;border-radius:14px;margin:0 max(12px,50% - 560px) 16px auto;position:static}.result-toolbar{min-height:64px;padding:0}.tool-drawer{max-height:none;margin-bottom:10px}.variant-sheet{width:min(680px,100%);margin:0 auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
