:root{--bg-canvas:#eef1f6;--bg-surface:#f8f9fd;--bg-elevated:#fbfbfe;--bg-inset:#e7eaf1;--text-primary:#14161c;--text-secondary:#4b5162;--text-tertiary:#656b77;--text-disabled:#9aa1ae;--text-on-fill:#fff;--border:#dfe3eb;--border-hairline:#ebedf3;--border-strong:#7e8696;--accent:#4a50c8;--accent-hover:#3f45b4;--accent-press:#353a9e;--accent-fill:#5c63df;--accent-fill-hover:#5057d2;--accent-fill-press:#464cbf;--accent-on-fill:#fff;--accent-soft:#ecebfa;--accent-ring:color-mix(in srgb, var(--accent) 34%, transparent);--grad-brand:linear-gradient(135deg, #5560d4 0%, #764ba2 100%);--grad-brand-control:linear-gradient(135deg, #5c63df 0%, #6a3f94 100%);--text-on-brand:#f7f7fb;--text-on-brand-2:#eeeef7;--success:#17734a;--success-bg:#e4f3ea;--warning:#8a5a00;--warning-bg:#fbf0dc;--danger:#b0232a;--danger-bg:#fbe9ea;--info:#0f5fa8;--info-bg:#e5effa;--cat-club-bg:#eeedf8;--cat-club-fg:#534ab7;--cat-wechat-bg:#e7f4ec;--cat-wechat-fg:#1b7a43;--cat-service-bg:#faeeda;--cat-service-fg:#854f0b;--cat-teacher-bg:#e6f0fb;--cat-teacher-fg:#185fa5;--cat-map-bg:#e8f5f3;--cat-map-fg:#0f6e5c;--cat-guide-bg:#fbeaea;--cat-guide-fg:#a32b2b;--cat-calendar-bg:#f0eafb;--cat-calendar-fg:#5b3fa8;--cat-library-bg:#eaf3e6;--cat-library-fg:#3b6b1b;--cat-medical-bg:#fde8ef;--cat-medical-fg:#b0235c;--cat-aihot-bg:#e3f2fb;--cat-aihot-fg:#14688f;--cat-news-bg:#fdf0e3;--cat-news-fg:#9a5518;--cat-xhs-bg:#fdeef4;--cat-xhs-fg:#b0255f;--cat-fallback-bg:var(--bg-inset);--cat-fallback-fg:var(--text-tertiary);--tag-neutral-bg:var(--bg-inset);--tag-neutral-fg:var(--text-tertiary);--tag-success-bg:var(--success-bg);--tag-success-fg:var(--success);--tag-warning-bg:var(--warning-bg);--tag-warning-fg:var(--warning);--tag-danger-bg:var(--danger-bg);--tag-danger-fg:var(--danger);--tag-pending-bg:#fdf0dc;--tag-pending-fg:#8a5a00;--font-ui:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable Text", "Segoe UI", system-ui, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI Variable Display", "Segoe UI", system-ui, "PingFang SC", "Microsoft YaHei UI", sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Code", Consolas, monospace;--text-caption:11px;--text-footnote:12px;--text-subhead:13px;--text-body:15px;--text-callout:16px;--text-title3:17px;--text-title2:20px;--text-title1:24px;--text-display:34px;--text-display-lg:44px;--leading-tight:1.25;--leading-snug:1.4;--leading-body:1.65;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px;--space-9:64px;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--shadow-1:0 1px 2px #1018280d, 0 1px 3px #1018280a;--shadow-2:0 1px 2px #1018280a, 0 4px 12px #1018280f;--shadow-3:0 2px 6px #1018280f, 0 12px 28px #1018281a;--shadow-4:0 4px 10px #10182814, 0 24px 56px #10182829;--duration-fast:.2s;--duration-base:.3s;--duration-slow:.4s;--ease-standard:cubic-bezier(.32, .72, 0, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--z-sticky:10;--z-dropdown:20;--z-sheet:40;--z-modal:50;--z-toast:60;--tap-min:44px;--hairline:.5px;--measure:68ch;--tabbar-base:70px;--tabbar-space:calc(var(--tabbar-base) + env(safe-area-inset-bottom))}[data-theme=dark]{--bg-canvas:#0e1015;--bg-surface:#171a21;--bg-elevated:#1e222b;--bg-inset:#12151b;--text-primary:#f2f4f8;--text-secondary:#b8becb;--text-tertiary:#8b93a3;--text-disabled:#626a7a;--text-on-fill:#10131a;--border:#2a2e38;--border-hairline:#22262f;--border-strong:#6b7383;--accent:#a5aaff;--accent-hover:#b6baff;--accent-press:#9298f5;--accent-fill:#8186ff;--accent-fill-hover:#8f94ff;--accent-fill-press:#6e74e8;--accent-on-fill:#10131a;--accent-soft:#1e2044;--accent-ring:color-mix(in srgb, var(--accent) 40%, transparent);--grad-brand:linear-gradient(135deg, #6b72f0 0%, #8a55b8 100%);--grad-brand-control:linear-gradient(135deg, #8186ff 0%, #9b6ad0 100%);--text-on-brand:#10131a;--text-on-brand-2:#2a2f3d;--success:#5fcb93;--success-bg:#12261c;--warning:#e0a94a;--warning-bg:#2a2110;--danger:#f08a8a;--danger-bg:#2c1618;--info:#7fb2f0;--info-bg:#121e2e;--cat-club-bg:#1e1f33;--cat-club-fg:#b3aefa;--cat-wechat-bg:#142618;--cat-wechat-fg:#7fd3a0;--cat-service-bg:#2a2113;--cat-service-fg:#e3b769;--cat-teacher-bg:#12202f;--cat-teacher-fg:#84b6ee;--cat-map-bg:#10262a;--cat-map-fg:#6fcbb5;--cat-guide-bg:#2c1719;--cat-guide-fg:#f08a8a;--cat-calendar-bg:#201a33;--cat-calendar-fg:#b9a3f2;--cat-library-bg:#172315;--cat-library-fg:#9bcb72;--cat-medical-bg:#2a1420;--cat-medical-fg:#f295b8;--cat-aihot-bg:#10222c;--cat-aihot-fg:#7ec8e8;--cat-news-bg:#2a1d10;--cat-news-fg:#e0a267;--cat-xhs-bg:#2a1020;--cat-xhs-fg:#f090bd;--tag-pending-bg:#2a2110;--tag-pending-fg:#e0a94a;--shadow-1:0 1px 2px #0000004d, 0 0 0 var(--hairline) var(--border-hairline);--shadow-2:0 1px 2px #00000057, 0 4px 14px #00000061, 0 0 0 var(--hairline) var(--border-hairline);--shadow-3:0 2px 6px #0006, 0 12px 30px #00000075, 0 0 0 var(--hairline) var(--border-hairline);--shadow-4:0 4px 10px #00000075, 0 24px 60px #0000008a, 0 0 0 var(--hairline) var(--border-hairline)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-canvas:#0e1015;--bg-surface:#171a21;--bg-elevated:#1e222b;--bg-inset:#12151b;--text-primary:#f2f4f8;--text-secondary:#b8becb;--text-tertiary:#8b93a3;--text-disabled:#626a7a;--text-on-fill:#10131a;--border:#2a2e38;--border-hairline:#22262f;--border-strong:#6b7383;--accent:#a5aaff;--accent-hover:#b6baff;--accent-press:#9298f5;--accent-fill:#8186ff;--accent-fill-hover:#8f94ff;--accent-fill-press:#6e74e8;--accent-on-fill:#10131a;--accent-soft:#1e2044;--accent-ring:color-mix(in srgb, var(--accent) 40%, transparent);--grad-brand:linear-gradient(135deg, #6b72f0 0%, #8a55b8 100%);--grad-brand-control:linear-gradient(135deg, #8186ff 0%, #9b6ad0 100%);--text-on-brand:#10131a;--text-on-brand-2:#2a2f3d;--success:#5fcb93;--success-bg:#12261c;--warning:#e0a94a;--warning-bg:#2a2110;--danger:#f08a8a;--danger-bg:#2c1618;--info:#7fb2f0;--info-bg:#121e2e;--cat-club-bg:#1e1f33;--cat-club-fg:#b3aefa;--cat-wechat-bg:#142618;--cat-wechat-fg:#7fd3a0;--cat-service-bg:#2a2113;--cat-service-fg:#e3b769;--cat-teacher-bg:#12202f;--cat-teacher-fg:#84b6ee;--cat-map-bg:#10262a;--cat-map-fg:#6fcbb5;--cat-guide-bg:#2c1719;--cat-guide-fg:#f08a8a;--cat-calendar-bg:#201a33;--cat-calendar-fg:#b9a3f2;--cat-library-bg:#172315;--cat-library-fg:#9bcb72;--cat-medical-bg:#2a1420;--cat-medical-fg:#f295b8;--cat-aihot-bg:#10222c;--cat-aihot-fg:#7ec8e8;--cat-news-bg:#2a1d10;--cat-news-fg:#e0a267;--cat-xhs-bg:#2a1020;--cat-xhs-fg:#f090bd;--tag-pending-bg:#2a2110;--tag-pending-fg:#e0a94a;--shadow-1:0 1px 2px #0000004d, 0 0 0 var(--hairline) var(--border-hairline);--shadow-2:0 1px 2px #00000057, 0 4px 14px #00000061, 0 0 0 var(--hairline) var(--border-hairline);--shadow-3:0 2px 6px #0006, 0 12px 30px #00000075, 0 0 0 var(--hairline) var(--border-hairline);--shadow-4:0 4px 10px #00000075, 0 24px 60px #0000008a, 0 0 0 var(--hairline) var(--border-hairline)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg-canvas);color:var(--text-primary);font-family:var(--font-ui);font-size:var(--text-body);line-height:var(--leading-body);letter-spacing:.1px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);margin:0}img,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-primary);text-wrap:balance;margin:0;font-weight:600}h1{font-size:var(--text-title1);line-height:var(--leading-tight);letter-spacing:-.02em}h2{font-size:var(--text-title2);letter-spacing:-.015em;line-height:1.3}h3{font-size:var(--text-title3);line-height:var(--leading-snug);letter-spacing:-.01em}p{margin:0}code{font-family:var(--font-mono);border-radius:var(--radius-xs);color:var(--text-primary);font-size:var(--text-footnote);background:var(--bg-inset);padding:2px 6px;line-height:1.4;display:inline-flex}::selection{background:var(--accent-ring);color:var(--text-primary)}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}.u-tnum{font-variant-numeric:tabular-nums}.u-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.u-prose{max-width:var(--measure);color:var(--text-secondary);line-height:1.7}.j-card{background:var(--bg-surface);border:var(--hairline) solid var(--border-hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.j-badge{align-items:center;gap:var(--space-1);padding:3px var(--space-2);border-radius:var(--radius-pill);background:var(--bg-inset);color:var(--text-secondary);font-size:var(--text-caption);font-variant-numeric:tabular-nums;font-weight:600;display:inline-flex}.j-badge--accent{background:var(--accent-soft);color:var(--accent)}.j-badge--success{background:var(--success-bg);color:var(--success)}.j-badge--warning{background:var(--warning-bg);color:var(--warning)}.j-badge--danger{background:var(--danger-bg);color:var(--danger)}.j-badge--info{background:var(--info-bg);color:var(--info)}.j-empty{place-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);text-align:center;color:var(--text-tertiary);display:grid}.j-empty strong{color:var(--text-primary);font-size:var(--text-callout);display:block}.j-skeleton{background:linear-gradient(90deg, var(--bg-inset) 25%, var(--border-hairline) 37%, var(--bg-inset) 63%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.4s ease-in-out infinite j-shimmer}@keyframes j-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.j-skeleton{background:var(--bg-inset);animation:none}}@media (width>=768px){:root{--text-title1:28px;--text-display:var(--text-display-lg)}}.ath[data-v-36148c5c]{z-index:var(--z-sheet);padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.ath-card[data-v-36148c5c]{background:var(--bg-elevated);border:var(--hairline) solid var(--border-hairline);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-4);padding:var(--space-4) var(--space-4) var(--space-3);position:relative}.ath-close[data-v-36148c5c]{top:var(--space-2);right:var(--space-2);color:var(--text-tertiary);cursor:pointer;min-width:var(--tap-min);min-height:var(--tap-min);transition:color var(--duration-fast) var(--ease-standard);background:0 0;border:none;justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex;position:absolute}.ath-close[data-v-36148c5c]:hover{color:var(--text-primary)}.ath-head[data-v-36148c5c]{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.ath-name[data-v-36148c5c]{font-size:var(--text-callout);color:var(--text-primary);letter-spacing:-.01em;margin:0;font-weight:600}.ath-sub[data-v-36148c5c]{font-size:var(--text-caption);color:var(--text-tertiary);margin:2px 0 0}.ath-steps[data-v-36148c5c]{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ath-steps li[data-v-36148c5c]{align-items:center;gap:var(--space-2);font-size:var(--text-footnote);color:var(--text-secondary);display:flex}.ath-step-num[data-v-36148c5c]{background:var(--accent-soft);width:20px;height:20px;color:var(--accent);font-size:var(--text-caption);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:flex}.ath-share-icon[data-v-36148c5c]{width:20px;height:20px;stroke:var(--accent);flex:none}.ath-more[data-v-36148c5c]{margin-top:var(--space-3);width:100%;color:var(--accent);font-size:var(--text-footnote);cursor:pointer;min-height:var(--tap-min);background:0 0;border:none;justify-content:center;align-items:center;font-weight:600;display:flex}.ath-slide-enter-active[data-v-36148c5c],.ath-slide-leave-active[data-v-36148c5c]{transition:transform var(--duration-base) var(--ease-out), opacity var(--duration-base) var(--ease-out)}.ath-slide-enter-from[data-v-36148c5c],.ath-slide-leave-to[data-v-36148c5c]{opacity:0;transform:translateY(100%)}@media (prefers-reduced-motion:reduce){.ath-slide-enter-active[data-v-36148c5c],.ath-slide-leave-active[data-v-36148c5c]{transition:opacity var(--duration-fast) var(--ease-out)}.ath-slide-enter-from[data-v-36148c5c],.ath-slide-leave-to[data-v-36148c5c]{transform:none}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-canvas);color:var(--text-primary)}#app{width:100%;min-height:100dvh}.error-view-wrap{min-height:60vh;padding:var(--space-6) var(--space-4);justify-content:center;align-items:center;display:flex}
