.app[data-v-ba3783f4]{min-height:100vh;display:flex;flex-direction:column;background:var(--brand-paper)}.offline-bar[data-v-ba3783f4]{position:fixed;top:0;left:0;right:0;padding:var(--sp-3) var(--sp-4);background:#fff3cd;color:#856404;font-size:var(--fs-small);text-align:center;border-bottom:1px solid #FFEEBA;z-index:200;font-family:var(--font-cn)}.app-main[data-v-ba3783f4]{flex:1;overflow-y:auto;padding-bottom:calc(64px + env(safe-area-inset-bottom))}.app-main[data-v-ba3783f4]{padding-top:env(safe-area-inset-top)}.offline-bar~.app-main[data-v-ba3783f4]{padding-top:calc(48px + env(safe-area-inset-top))}.bottom-nav[data-v-ba3783f4]{position:fixed;bottom:0;left:0;right:0;height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;background:var(--color-surface, #fff);border-top:1px solid var(--brand-border);z-index:100}.nav-item[data-v-ba3783f4]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:64px;text-decoration:none;color:var(--brand-ink-light);transition:color var(--motion-normal) var(--ease-out)}.nav-item.router-link-active[data-v-ba3783f4]{color:var(--brand-primary)}.nav-icon[data-v-ba3783f4]{font-size:22px;font-family:var(--font-cn)}.nav-label[data-v-ba3783f4]{font-size:var(--fs-small);font-family:var(--font-cn)}:root{--brand-primary: #4A7C8C;--brand-primary-light: #E3EDF0;--brand-primary-dark: #355A66;--brand-accent: #D4915D;--brand-accent-light: #FBF0E6;--brand-paper: #F7F5F2;--brand-ink: #2C3E42;--brand-ink-light: #6B7A7E;--brand-border: #E5E1DB;--color-success: #6B9E78;--color-success-light: #EAF3EC;--color-highlight-bg: #FFF3D6;--color-highlight-text: #8A6A1F;--color-error: #C4756B;--color-surface: #FFFFFF;--color-text-hint: #9AA5A8;--color-primary: var(--brand-primary);--color-primary-light: var(--brand-primary-light);--color-bg: var(--brand-paper);--color-border: var(--brand-border);--color-text-primary: var(--brand-ink);--color-text-secondary: var(--brand-ink-light);--font-en: "Lexend", "Atkinson Hyperlegible", system-ui, sans-serif;--font-cn: -apple-system, "PingFang SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif;--font-brand: "Source Han Serif SC", "Noto Serif SC", "Songti SC", serif;--fs-display: 32px;--fs-h1: 26px;--fs-h2: 22px;--fs-body: 18px;--fs-small: 16px;--fs-tiny: 14px;--lh-tight: 1.3;--lh-normal: 1.6;--lh-loose: 1.9;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--touch-min: 48px;--touch-kid: 56px;--shadow-card: 0 1px 3px rgba(44, 62, 66, .06);--shadow-float: 0 4px 16px rgba(44, 62, 66, .1);--motion-fast: .15s;--motion-normal: .2s;--ease-out: cubic-bezier(.2, 0, 0, 1)}.kid-mode{--fs-body: 20px;--fs-small: 18px;--fs-display: 36px;--touch-min: 56px;--brand-primary: #5A8FA0;--brand-paper: #FAF8F5}@media (prefers-color-scheme: dark){:root{--brand-paper: #2C3E42;--brand-ink: #E3EDF0;--brand-ink-light: #9AA5A8;--brand-border: #355A66;--brand-primary-light: #355A66;--color-surface: #355A66}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-cn);color:var(--brand-ink);background:var(--brand-paper);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased}button{font-family:inherit;border:none;background:none;cursor:pointer}a{color:var(--brand-primary);text-decoration:none}.pressable:active{transform:scale(.98);transition:transform var(--motion-fast) var(--ease-out)}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.page{max-width:720px;margin:0 auto;padding:var(--sp-5) var(--sp-4);min-height:100%}.page-header{padding:var(--sp-4) 0;font-size:var(--fs-h2);font-weight:var(--fw-medium)}.card{background:var(--color-surface);border:1px solid var(--brand-border);border-radius:var(--radius-lg);padding:var(--sp-5);box-shadow:var(--shadow-card)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 var(--sp-6);background:var(--brand-primary);color:#fff;font-size:var(--fs-body);font-weight:var(--fw-medium);border-radius:var(--radius-md);min-width:var(--touch-min)}.btn-primary:active{transform:scale(.98)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 var(--sp-5);background:var(--color-surface);color:var(--brand-primary);font-size:var(--fs-body);border:1px solid var(--brand-border);border-radius:var(--radius-md);min-width:var(--touch-min)}.btn-secondary:active{transform:scale(.98)}
