:root{--font-display:"Cormorant Garamond", "Georgia", "Palatino Linotype", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:var(--font-ui);--heading-letter-spacing:-.03em;--heading-transform:none;--heading-weight:600;--sanctuary-mark:"✦";--radius-button:var(--radius-pill);--radius-card:var(--radius-2xl);--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:1px;--page-pattern:none;--page-sparkle:none;--page-sparkle-opacity:0;--primary-btn-bg:linear-gradient(165deg, color-mix(in srgb, var(--accent-hover) 80%, white), var(--button-primary-bg) 50%, var(--brand-orange));--primary-btn-shadow:0 2px 4px color-mix(in srgb, var(--text) 8%, transparent), 0 10px 24px color-mix(in srgb, var(--accent) 28%, transparent);--nav-link-active-bg:linear-gradient(180deg, var(--nav-link-active-top), var(--nav-link-active-bottom));--site-max-width:1120px;--page-gutter:clamp(16px, 4vw, 32px);--section-gap:24px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--radius-xs:7px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:22px;--radius-2xl:24px;--radius-3xl:26px;--radius-shell:30px;--radius-pill:999px;--radius-circle:50%;--transition-fast:.18s ease;--transition-med:.25s ease;--transition-slow:.35s ease;--lift-sm:translateY(-1px);--lift-md:translateY(-2px);--button-padding-sm:8px 12px;--button-padding-md:10px 16px;--button-padding-lg:12px 18px;--input-padding:10px 12px;--card-padding:22px;--card-padding-lg:24px;--modal-padding:26px;--page-overlay:linear-gradient(#00000024, #00000024);--page-glow-left:radial-gradient(circle at top left, var(--accent-soft), transparent 30%);--page-glow-right:radial-gradient(circle at top right, var(--accent-muted), transparent 26%);--page-gradient:linear-gradient(135deg, var(--page-bg-soft) 0%, var(--page-bg) 45%, var(--surface-muted) 100%);--page-grain-opacity:.3;--page-grain-blend:multiply;--theme-color-meta:var(--page-bg);--shell-sidebar-bg:linear-gradient(180deg, var(--surface-raised) 0%, var(--surface) 100%);--shell-sidebar-accent:radial-gradient(ellipse at 50% 0%, var(--accent-soft), transparent 60%);--shell-sidebar-border:var(--border-color);--shell-nook-bg:var(--accent-soft);--shell-nook-border:var(--border-color);--shell-logo-shadow:var(--shadow-soft);--shell-logo-glow:none;--spotlight-text:var(--brand-cream);--spotlight-text-soft:color-mix(in srgb, var(--brand-cream) 80%, transparent);--spotlight-overlay:linear-gradient(125deg, #1a1208eb, #281e10b3);--spotlight-backdrop-opacity:.5;--spotlight-border:var(--border-color);--spotlight-glow:var(--shadow-strong);--reading-zone-bg:var(--surface-raised);--reading-zone-border:var(--border-color);--app-bg:var(--page-bg);--app-bg-soft:var(--page-bg-soft);--surface-bg:var(--surface);--surface-bg-soft:var(--surface-soft);--surface-bg-muted:var(--surface-muted);--surface-bg-raised:var(--surface-raised);--card-bg:var(--surface);--card-bg-soft:var(--surface-soft);--card-border:var(--border-color);--card-radius:var(--radius-card);--card-gradient:linear-gradient(180deg, var(--card-sheen-top), var(--card-sheen-bottom));--card-sheen-top:#ffffff14;--card-sheen-bottom:#00000005;--card-inner-highlight:0 2px 0 #ffffff2e inset;--card-shadow:var(--card-inner-highlight), var(--shadow-soft);--nav-bg:var(--surface);--nav-bg-soft:var(--surface-soft);--nav-border:var(--border-color);--nav-shadow:var(--shadow-soft);--nav-link-bg:var(--button-bg);--nav-link-bg-hover:var(--button-bg-hover);--nav-link-text:var(--button-text);--nav-link-border:var(--button-border);--nav-link-active-top:var(--accent-hover);--nav-link-active-bottom:var(--accent);--nav-link-active-text:var(--text-inverse);--nav-link-active-border:var(--accent);--nav-link-active-shadow:0 2px 4px #0000001a, inset 0 1px 0 #ffffff73;--button-bg:var(--surface);--button-bg-hover:var(--surface-soft);--button-text:var(--text);--button-border:var(--border-color);--button-shadow:var(--shadow-soft);--button-primary-bg:var(--accent);--button-primary-bg-hover:var(--accent-hover);--button-primary-text:var(--text-inverse);--button-secondary-bg:var(--success-soft);--button-secondary-bg-hover:var(--accent-soft);--button-secondary-text:var(--success);--button-danger-bg:var(--danger);--button-danger-bg-hover:var(--danger);--button-danger-text:var(--danger-soft);--input-bg:var(--surface-raised);--input-border:var(--border-color);--input-focus:var(--accent);--input-text:var(--text);--input-placeholder:var(--text-soft);--form-field-bg:var(--input-bg);--form-field-border:var(--input-border);--form-field-text:var(--input-text);--form-field-placeholder:var(--input-placeholder);--modal-bg:var(--surface);--modal-border:var(--border-color);--modal-shadow:var(--shadow-strong);--modal-overlay:#0000007a;--chip-bg:var(--surface-muted);--chip-text:var(--text);--chip-border:var(--border-color);--badge-bg:var(--chip-bg);--badge-text:var(--chip-text);--badge-border:var(--chip-border);--card-text:var(--text);--level-badge-bg:linear-gradient(180deg, var(--level-badge-top), var(--level-badge-bottom));--level-badge-top:var(--accent-hover);--level-badge-bottom:var(--accent);--level-badge-shadow:inset 0 1px 0 #ffffff4d, var(--shadow-soft);--progress-track:color-mix(in srgb, var(--surface-muted) 80%, var(--text) 4%);--progress-fill:linear-gradient(90deg, var(--brand-orange), var(--accent), var(--accent-hover));--glow-accent:0 0 24px var(--accent-soft);--glow-muted:0 0 18px var(--accent-muted);--focus-ring:0 0 0 3px var(--accent-soft);--sunflower-gold:var(--brand-gold);--sunflower-orange:var(--brand-orange);--forest-green:var(--brand-green);--leaf-green:var(--brand-leaf);--warm-cream:var(--brand-cream);--cream:var(--brand-cream);--paper:var(--surface);--paper-soft:var(--surface-soft);--paper-warm:var(--surface-muted);--sunflower:var(--accent);--sage:var(--brand-leaf);--sage-dark:var(--brand-green);--ink:var(--text);--muted:var(--text-soft);--line:var(--border-color);--chip:var(--chip-bg);--danger-bg:var(--button-danger-bg);--danger-text:var(--button-danger-text)}@media (max-width:768px){:root{--space-6:1.2rem;--space-5:1rem;--space-4:.8rem;--space-3:.65rem}}*{box-sizing:border-box}html{background:var(--page-bg);min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;font-family:var(--font-ui);-webkit-font-smoothing:antialiased;color:var(--text);background:var(--page-overlay), var(--page-pattern), var(--page-sparkle), var(--app-background-image,none), var(--page-glow-left), var(--page-glow-right), var(--page-gradient);background-position:50%;background-size:cover,cover,auto,auto,auto;background-attachment:fixed;margin:0;font-size:1rem;font-weight:400;transition:background .35s,color .2s}body:before{content:"";z-index:0;pointer-events:none;opacity:var(--page-grain-opacity,.3);mix-blend-mode:var(--page-grain-blend,multiply);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");position:fixed;top:0;bottom:0;left:0;right:0}body:after{content:"";z-index:0;pointer-events:none;opacity:var(--page-firefly-opacity,0);background:radial-gradient(circle at 18% 72%, var(--accent-soft), transparent 8%), radial-gradient(circle at 82% 28%, var(--accent-muted), transparent 6%), radial-gradient(circle at 55% 88%, var(--accent-soft), transparent 5%);position:fixed;top:0;bottom:0;left:0;right:0}button,input,select,textarea{font-family:inherit}button{transition:opacity .15s,transform .15s,background .15s,border-color .15s,box-shadow .15s}button:hover{opacity:.94}a{color:inherit}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--heading-weight,600);letter-spacing:var(--heading-letter-spacing,-.03em);text-transform:var(--heading-transform,none);line-height:1.12}p{line-height:1.6}.page-header h2{margin-bottom:10px;font-size:clamp(1.8rem,3vw,2.4rem)}.page-header p{max-width:680px;font-size:1.02rem}.section-subtext{color:var(--text-soft);font-size:.92rem;line-height:1.5}.soft-label{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:700}.card,.goal-card,.insight-card,.chart-card,.book-card,.achievement-card,.nav-link,.wrap-chart-card,.wrap-highlight,.wrap-stat-card{transition:transform .18s,border-color .18s,background .18s,box-shadow .18s}.goal-card:hover,.insight-card:hover,.chart-card:hover,.achievement-card:hover,.book-card:hover,.wrap-chart-card:hover,.wrap-highlight:hover,.wrap-stat-card:hover{border-color:var(--border-strong)}button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}select:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.65}.sr-only{white-space:nowrap;clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted-text{color:var(--text-soft)}.section-card{padding:var(--card-padding-lg);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface);box-shadow:var(--shadow-soft)}.section-card h2,.section-card h3{color:var(--text)}.section-card p{color:var(--text-soft)}.update-notes-box{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface-soft);box-shadow:var(--shadow-soft);gap:8px;padding:16px;display:grid}.update-note-line:not(:last-child){border-bottom:1px solid #ffffff0a;padding-bottom:8px}.upgraded-controls{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}:root,:root[data-theme=forest-light],[data-theme=forest-light]{--font-display:"Fraunces", "Cormorant Garamond", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:-.02em;--heading-weight:600;--sanctuary-mark:"🌻";--brand-gold:#f4b002;--brand-orange:#c76605;--brand-green:#2d4a0f;--brand-leaf:#5f7a1a;--brand-cream:#fff8dc;--brand-bark:#3d2e1a;--page-bg:#d8c9a4;--page-bg-soft:#f9f3e4;--surface:#faf6ec;--surface-soft:#f0e8d6;--surface-raised:#fffefb;--surface-muted:#e2d8c4;--text:#1a1208;--text-soft:#5a4a32;--text-inverse:#fffdf6;--accent:var(--brand-gold);--accent-hover:#ffc933;--accent-strong:var(--brand-orange);--accent-soft:#f4b00238;--accent-muted:#5f7a1a2e;--success:var(--brand-green);--success-soft:#e4ecd0;--danger:#a94438;--danger-soft:#fff3ec;--border-color:#2d4a0f33;--border-strong:#2d4a0f61;--shadow-soft:0 1px 2px #1a12080a, 0 8px 24px #1a120812;--shadow:0 4px 12px #1a12080f, 0 16px 40px #2d4a0f14;--shadow-strong:0 12px 32px #1a12081a, 0 32px 64px #2d4a0f1f;--focus-ring:#f4b002b8;--overlay:#261a0c94;--radius-button:var(--radius-pill);--radius-card:22px;--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 80% 50% at 0% -8%, #ffd7642e, transparent 62%), radial-gradient(ellipse 55% 42% at 100% 0%, #5f7a1a17, transparent 58%), radial-gradient(ellipse 48% 38% at 100% 100%, #2d4a0f0f, transparent 52%), radial-gradient(ellipse 50% 40% at 0% 100%, #f4b00212, transparent 54%);--page-sparkle:none;--page-overlay:linear-gradient(180deg, #fffcf566 0%, #fffcf524 30%, transparent 65%);--page-glow-left:radial-gradient(ellipse 65% 48% at -10% 8%, #f4b00224, transparent 65%);--page-glow-right:radial-gradient(ellipse 50% 42% at 110% 10%, #5f7a1a17, transparent 62%);--page-gradient:linear-gradient(168deg, #fffcf7 0%, #faf6eb 38%, #f2e9d8 72%, #e6dac4 100%);--page-grain-opacity:.14;--page-grain-blend:multiply;--page-firefly-opacity:.14;--card-sheen-top:#ffffff85;--card-sheen-bottom:#3d2e1a0d;--card-inner-highlight:0 1px 0 #ffffffa6 inset;--button-primary-text:var(--text-inverse);--primary-btn-bg:linear-gradient(168deg, #ffe082 0%, #f4b002 42%, #e8940a 78%, #c76605 100%);--primary-btn-shadow:0 2px 4px #1a120814, 0 10px 28px #f4b00252, inset 0 1px 0 #ffffff73;--nav-link-active-top:#ffe082;--nav-link-active-bottom:var(--brand-gold);--nav-link-active-text:var(--brand-bark);--nav-link-active-border:#c7660538;--nav-link-active-shadow:0 2px 6px #f4b00238, inset 0 1px 0 #ffffff8c;--chip-bg:color-mix(in srgb, var(--surface-muted) 85%, var(--brand-gold) 8%);--progress-fill:linear-gradient(90deg, var(--brand-green), var(--brand-leaf), var(--brand-gold), var(--accent-hover));--shell-sidebar-bg:linear-gradient(180deg, #fffefb 0%, #faf6ec 55%, #f3ead8 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 65% at 50% -10%, #f4b0021f, transparent 60%);--shell-sidebar-border:#2d4a0f1f;--shell-nook-bg:radial-gradient(ellipse 120% 80% at 50% 0%, #fff8dcbf, transparent 55%), linear-gradient(148deg, #fff8dceb, #ebe2cbf2);--shell-nook-border:#c7660538;--shell-logo-shadow:0 10px 32px #40301424;--shell-logo-glow:drop-shadow(0 4px 14px #f4b00247) drop-shadow(0 1px 0 #fff6);--spotlight-text:#fffdf6;--spotlight-text-soft:#fffdf6d6;--spotlight-overlay:linear-gradient(125deg, #1a1208eb 0%, #2d4a0fc7 48%, #3d2e1aad 100%);--spotlight-backdrop-opacity:.5;--spotlight-border:#f4b00252;--spotlight-glow:var(--shadow-strong);--spotlight-label-color:var(--accent-hover);--reading-zone-bg:radial-gradient(ellipse 120% 75% at 50% -30%, #fff8dcb8, transparent 54%), radial-gradient(ellipse 50% 40% at 100% 100%, #5f7a1a1a, transparent 52%), radial-gradient(ellipse 42% 36% at 0% 85%, #f4b00214, transparent 50%), linear-gradient(175deg, #fffefb 0%, #faf6ec 48%, #f0e8d6 100%);--reading-zone-border:color-mix(in srgb, var(--brand-gold) 28%, var(--border-color));--theme-color-meta:#f9f3e4}:root:not([data-theme]) .page-header h2,:root[data-theme=forest-light] .page-header h2,[data-theme=forest-light] .page-header h2{background:linear-gradient(118deg, var(--brand-green) 0%, color-mix(in srgb, var(--brand-green) 62%, var(--brand-bark)) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}:root[data-theme=forest-light] .page-header p,[data-theme=forest-light] .page-header p{color:var(--text-soft);font-size:1.04rem}:root:not([data-theme]) .home-hero-tagline,:root[data-theme=forest-light] .home-hero-tagline,[data-theme=forest-light] .home-hero-tagline{color:color-mix(in srgb, var(--brand-green) 42%, var(--text))}:root:not([data-theme]) .card,:root:not([data-theme]) .goal-card,:root:not([data-theme]) .chart-card,:root[data-theme=forest-light] .card,[data-theme=forest-light] .card,:root[data-theme=forest-light] .goal-card,[data-theme=forest-light] .goal-card,:root[data-theme=forest-light] .chart-card,[data-theme=forest-light] .chart-card{border-color:color-mix(in srgb, var(--brand-green) 12%, var(--border-color));box-shadow:var(--card-shadow), 0 0 0 1px #ffffff59}:root:not([data-theme]) .card:hover,:root:not([data-theme]) .goal-card:hover,:root[data-theme=forest-light] .card:hover,[data-theme=forest-light] .card:hover,:root[data-theme=forest-light] .goal-card:hover,[data-theme=forest-light] .goal-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 35%, var(--border-strong));box-shadow:var(--card-shadow), 0 0 0 1px #f4b0021f, 0 12px 32px #f4b00214}:root:not([data-theme]) .sidebar-nav-link.active,:root:not([data-theme]) .sidebar-nav-link[aria-current=page],:root[data-theme=forest-light] .sidebar-nav-link.active,[data-theme=forest-light] .sidebar-nav-link.active,:root[data-theme=forest-light] .sidebar-nav-link[aria-current=page],[data-theme=forest-light] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #ffe08259, #f4b0021f), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 45%, var(--border-color));box-shadow:var(--nav-link-active-shadow)}:root[data-theme=forest-light] .filter-chip,[data-theme=forest-light] .filter-chip,:root[data-theme=forest-light] .status-chip,[data-theme=forest-light] .status-chip{border-radius:var(--radius-chip);background:linear-gradient(180deg, #ffffff59, var(--chip-bg))}:root:not([data-theme]) body:after,:root[data-theme=forest-light] body:after,[data-theme=forest-light] body:after{background:radial-gradient(circle at 12% 82%,#f4b00212,#0000 10%),radial-gradient(circle at 88% 18%,#ffe0820f,#0000 8%)}@media (prefers-reduced-motion:no-preference){:root:not([data-theme]) body:after,:root[data-theme=forest-light] body:after,[data-theme=forest-light] body:after{animation:28s ease-in-out infinite alternate forest-light-pollen}}@keyframes forest-light-pollen{0%{opacity:calc(var(--page-firefly-opacity,.14) * .65);transform:translateY(0)}to{opacity:var(--page-firefly-opacity,.14);transform:translateY(-3px)}}:root:not([data-theme]) .auth-logo-stage,:root[data-theme=forest-light] .auth-logo-stage,[data-theme=forest-light] .auth-logo-stage{width:-moz-fit-content;width:fit-content;max-width:100%;display:inline-block;position:relative}:root:not([data-theme]) .auth-logo-stage:before,:root[data-theme=forest-light] .auth-logo-stage:before,[data-theme=forest-light] .auth-logo-stage:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(72% 68% at 48% 42%,#ffe0826b,#f4b00229 48%,#0000 72%);position:absolute;top:-14%;bottom:-6%;left:-10%;right:-10%}:root:not([data-theme]) .auth-logo,:root[data-theme=forest-light] .auth-logo,[data-theme=forest-light] .auth-logo{z-index:1;position:relative}:root:not([data-theme]) .auth-hero h1 em,:root[data-theme=forest-light] .auth-hero h1 em,[data-theme=forest-light] .auth-hero h1 em{color:color-mix(in srgb, var(--brand-green) 58%, var(--text));font-style:italic}:root:not([data-theme]) .auth-feature-card,:root[data-theme=forest-light] .auth-feature-card,[data-theme=forest-light] .auth-feature-card{border-color:color-mix(in srgb, var(--brand-green) 14%, var(--border-color));background:linear-gradient(180deg, #ffffff6b, transparent 38%), color-mix(in srgb, var(--surface-raised) 92%, var(--accent-soft));transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast)}:root:not([data-theme]) .auth-feature-card:hover,:root[data-theme=forest-light] .auth-feature-card:hover,[data-theme=forest-light] .auth-feature-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 32%, var(--border-color));box-shadow:var(--shadow-soft), 0 0 0 1px #f4b0021a;transform:translateY(-2px)}:root:not([data-theme]) .auth-feature-card span,:root[data-theme=forest-light] .auth-feature-card span,[data-theme=forest-light] .auth-feature-card span{filter:drop-shadow(0 2px 6px #f4b00233)}:root:not([data-theme]) .auth-card,:root[data-theme=forest-light] .auth-card,[data-theme=forest-light] .auth-card{box-shadow:0 24px 60px #2d4a0f1a,0 8px 24px #1a12080f,inset 0 1px #ffffff8c}:root:not([data-theme]) .auth-card:after,:root[data-theme=forest-light] .auth-card:after,[data-theme=forest-light] .auth-card:after{content:"";background:linear-gradient(90deg, var(--brand-green), var(--brand-gold), var(--brand-orange));opacity:.85;pointer-events:none;border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:24px;right:24px}:root:not([data-theme]) .home-hero,:root[data-theme=forest-light] .home-hero,[data-theme=forest-light] .home-hero{box-shadow:var(--shadow), inset 0 1px 0 #ffffffa6, 0 0 0 1px #f4b0021a;position:relative;overflow:hidden}:root:not([data-theme]) .home-hero:before,:root[data-theme=forest-light] .home-hero:before,[data-theme=forest-light] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(55% 45% at 100% 0,#f4b00224,#0000 62%),radial-gradient(40% 35% at 0 100%,#5f7a1a14,#0000 58%);position:absolute;top:0;bottom:0;left:0;right:0}:root:not([data-theme]) .home-hero-top,:root[data-theme=forest-light] .home-hero-top,[data-theme=forest-light] .home-hero-top,:root:not([data-theme]) .home-reading-card,:root[data-theme=forest-light] .home-reading-card,[data-theme=forest-light] .home-reading-card,:root:not([data-theme]) .home-glance,:root[data-theme=forest-light] .home-glance,[data-theme=forest-light] .home-glance{z-index:1;position:relative}:root:not([data-theme]) .home-hero-tagline,:root[data-theme=forest-light] .home-hero-tagline,[data-theme=forest-light] .home-hero-tagline{display:inline-block}:root:not([data-theme]) .home-hero-tagline:after,:root[data-theme=forest-light] .home-hero-tagline:after,[data-theme=forest-light] .home-hero-tagline:after{content:"";background:linear-gradient(90deg, var(--brand-green), var(--brand-gold));opacity:.85;border-radius:999px;width:52px;height:3px;margin-top:10px;display:block}:root:not([data-theme]) .home-reading-card,:root[data-theme=forest-light] .home-reading-card,[data-theme=forest-light] .home-reading-card{border-color:color-mix(in srgb, var(--brand-gold) 22%, var(--border-color));background:linear-gradient(180deg, #ffffff8c, transparent 28%), color-mix(in srgb, var(--surface-raised) 94%, var(--accent-soft));box-shadow:inset 0 1px #ffffffb3,0 10px 28px #2d4a0f0f}:root:not([data-theme]) .reading-spotlight-inner,:root[data-theme=forest-light] .reading-spotlight-inner,[data-theme=forest-light] .reading-spotlight-inner{box-shadow:inset 0 1px #ffffff8c}:root:not([data-theme]) .reading-spotlight-label,:root[data-theme=forest-light] .reading-spotlight-label,[data-theme=forest-light] .reading-spotlight-label{letter-spacing:.12em;font-weight:800}:root:not([data-theme]) .home-glance--inset,:root[data-theme=forest-light] .home-glance--inset,[data-theme=forest-light] .home-glance--inset{border-top-color:color-mix(in srgb, var(--brand-green) 16%, var(--border-color))}:root:not([data-theme]) .home-glance-stat,:root[data-theme=forest-light] .home-glance-stat,[data-theme=forest-light] .home-glance-stat{background:linear-gradient(180deg, #ffffff61, transparent 42%), color-mix(in srgb, var(--surface-raised) 90%, var(--accent-soft));transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);padding-left:46px;box-shadow:inset 0 1px #ffffff73}:root:not([data-theme]) .home-glance-stat:hover,:root[data-theme=forest-light] .home-glance-stat:hover,[data-theme=forest-light] .home-glance-stat:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff80,0 8px 20px #f4b00214}:root:not([data-theme]) .home-glance-icon,:root[data-theme=forest-light] .home-glance-icon,[data-theme=forest-light] .home-glance-icon{background:linear-gradient(180deg, #ffffffa6, color-mix(in srgb, var(--accent-soft) 85%, transparent));border-radius:9px;place-items:center;width:28px;height:28px;font-size:.92rem;display:grid;top:10px;left:10px;box-shadow:inset 0 1px #ffffff8c}:root:not([data-theme]) .home-glance-value,:root[data-theme=forest-light] .home-glance-value,[data-theme=forest-light] .home-glance-value{color:color-mix(in srgb, var(--brand-green) 35%, var(--text))}:root:not([data-theme]) .home-glance-stat:first-child,:root[data-theme=forest-light] .home-glance-stat:first-child,[data-theme=forest-light] .home-glance-stat:first-child{border-left:3px solid var(--brand-orange)}:root:not([data-theme]) .home-glance-stat:nth-child(2),:root[data-theme=forest-light] .home-glance-stat:nth-child(2),[data-theme=forest-light] .home-glance-stat:nth-child(2){border-left:3px solid var(--brand-green)}:root:not([data-theme]) .home-glance-stat:nth-child(3),:root[data-theme=forest-light] .home-glance-stat:nth-child(3),[data-theme=forest-light] .home-glance-stat:nth-child(3){border-left:3px solid var(--brand-gold)}:root:not([data-theme]) .home-glance-stat:nth-child(4),:root[data-theme=forest-light] .home-glance-stat:nth-child(4),[data-theme=forest-light] .home-glance-stat:nth-child(4){border-left:3px solid var(--brand-leaf)}:root:not([data-theme]) .home-glance-stat--audio,:root[data-theme=forest-light] .home-glance-stat--audio,[data-theme=forest-light] .home-glance-stat--audio{background:linear-gradient(180deg, #ffffff61, transparent 42%), color-mix(in srgb, var(--accent-soft) 28%, var(--surface-raised))}:root:not([data-theme]) .primary-btn,:root[data-theme=forest-light] .primary-btn,[data-theme=forest-light] .primary-btn{text-shadow:0 1px #ffffff38}:root:not([data-theme]) .primary-btn:hover:not(:disabled),:root[data-theme=forest-light] .primary-btn:hover:not(:disabled),[data-theme=forest-light] .primary-btn:hover:not(:disabled){box-shadow:0 4px 8px #1a12081a,0 14px 32px #f4b00261,inset 0 1px #ffffff80}:root:not([data-theme]) .app-sanctuary-nook,:root[data-theme=forest-light] .app-sanctuary-nook,[data-theme=forest-light] .app-sanctuary-nook{box-shadow:var(--shadow-soft), inset 0 1px 0 #ffffff8c;position:relative;overflow:hidden}:root:not([data-theme]) .app-sanctuary-nook:before,:root[data-theme=forest-light] .app-sanctuary-nook:before,[data-theme=forest-light] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(80% 60% at 50% -20%,#f4b00224,#0000 60%);position:absolute;top:0;bottom:0;left:0;right:0}:root:not([data-theme]) .app-sanctuary-sunflower,:root[data-theme=forest-light] .app-sanctuary-sunflower,[data-theme=forest-light] .app-sanctuary-sunflower{filter:drop-shadow(0 2px 8px #f4b00259)}:root:not([data-theme]) .progress-fill,:root:not([data-theme]) .bar-fill,:root[data-theme=forest-light] .progress-fill,[data-theme=forest-light] .progress-fill,:root[data-theme=forest-light] .bar-fill,[data-theme=forest-light] .bar-fill{box-shadow:inset 0 1px #ffffff59}:root:not([data-theme]) .app-footer-cozy,:root[data-theme=forest-light] .app-footer-cozy,[data-theme=forest-light] .app-footer-cozy{opacity:.92}:root:not([data-theme]) .app-footer-sunflower,:root[data-theme=forest-light] .app-footer-sunflower,[data-theme=forest-light] .app-footer-sunflower{filter:drop-shadow(0 2px 8px #f4b00247)}:root[data-theme=forest-dark],[data-theme=forest-dark]{--font-display:"Fraunces", "Cormorant Garamond", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:-.02em;--heading-weight:600;--sanctuary-mark:"🌙";--brand-gold:#f4b002;--brand-orange:#e8940a;--brand-green:#8faa3a;--brand-leaf:#c3ce50;--brand-cream:#fff3c4;--brand-moss:#0e1608;--brand-bark:#1a1208;--page-bg:#060a04;--page-bg-soft:#0a1006;--surface:#182410;--surface-soft:#121c0b;--surface-raised:#243318;--surface-muted:#2f4220;--text:#f5edd4;--text-soft:#c9bc8e;--text-inverse:#141e0c;--accent:var(--brand-gold);--accent-hover:#ffd35a;--accent-strong:#ffb833;--accent-soft:#f4b0022e;--accent-muted:#c3ce5029;--success:var(--brand-leaf);--success-soft:#b8c94e29;--danger:#e07a6a;--danger-soft:#e07a6a2e;--border-color:#f4b00229;--border-strong:#f4b0025c;--shadow-soft:0 2px 8px #00000061, 0 12px 32px #00000047;--shadow:0 8px 28px #00000073, 0 20px 48px #00000052;--shadow-strong:0 16px 48px #00000094, 0 32px 72px #0000006b;--focus-ring:#f4b002c7;--overlay:#040802d6;--radius-button:var(--radius-pill);--radius-card:22px;--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 70% 45% at 50% -8%, #fff3c412, transparent 58%), radial-gradient(ellipse 55% 40% at 0% 100%, #f4b0020f, transparent 52%), radial-gradient(ellipse 50% 38% at 100% 90%, #8faa3a0d, transparent 50%);--page-sparkle:none;--page-overlay:linear-gradient(180deg, #fff3c40a 0%, #0000002e 45%, #0000006b 100%);--page-glow-left:radial-gradient(ellipse 60% 48% at -8% 12%, #f4b0021f, transparent 62%);--page-glow-right:radial-gradient(ellipse 52% 42% at 108% 18%, #c3ce5014, transparent 58%);--page-gradient:linear-gradient(168deg, #080c05 0%, #0a1006 32%, #10180a 68%, #162010 100%);--page-grain-opacity:.16;--page-grain-blend:soft-light;--page-firefly-opacity:.72;--card-sheen-top:#fff8dc0f;--card-sheen-bottom:#00000047;--card-inner-highlight:0 1px 0 #fff3c41a inset;--button-primary-text:var(--text-inverse);--primary-btn-bg:linear-gradient(168deg, #ffe082 0%, #f4b002 38%, #e8940a 72%, #a86a00 100%);--primary-btn-shadow:0 4px 14px #f4b00252, 0 0 28px #f4b00224, inset 0 1px 0 #fff3c461;--nav-link-active-top:#ffd35a;--nav-link-active-bottom:var(--brand-gold);--nav-link-active-text:var(--brand-cream);--nav-link-active-border:#f4b00252;--nav-link-active-shadow:0 2px 8px #f4b0023d, 0 0 16px #f4b0021f, inset 0 1px 0 #fff3c438;--chip-bg:color-mix(in srgb, var(--surface-muted) 88%, var(--brand-gold) 6%);--progress-fill:linear-gradient(90deg, var(--brand-green), var(--brand-leaf), var(--brand-gold), var(--accent-hover));--shell-sidebar-bg:linear-gradient(180deg, #1a2610 0%, #121c0b 52%, #0a1006 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% -12%, #f4b00224, transparent 58%);--shell-sidebar-border:#f4b0021a;--shell-nook-bg:radial-gradient(ellipse 110% 75% at 50% 0%, #f4b00224, transparent 55%), linear-gradient(148deg, #243318f2, #121c0bfa);--shell-nook-border:#f4b0023d;--shell-logo-shadow:0 8px 32px #00000080;--shell-logo-glow:drop-shadow(0 0 18px #f4b00247) drop-shadow(0 4px 12px #0006);--spotlight-text:#fff8e8;--spotlight-text-soft:#fff8e8cc;--spotlight-overlay:linear-gradient(125deg, #040802f0 0%, #0e1608d6 48%, #182410bd 100%);--spotlight-backdrop-opacity:.5;--spotlight-border:#f4b00247;--spotlight-glow:0 24px 60px #0000008c, 0 0 48px #f4b0021a;--spotlight-label-color:var(--accent-hover);--reading-zone-bg:radial-gradient(ellipse 100% 65% at 50% -15%, #f4b0021f, transparent 54%), radial-gradient(ellipse 45% 38% at 100% 100%, #8faa3a14, transparent 50%), radial-gradient(ellipse 40% 34% at 0% 90%, #f4b0020f, transparent 48%), linear-gradient(175deg, #1e2c14 0%, #182410 48%, #121c0b 100%);--reading-zone-border:color-mix(in srgb, var(--brand-gold) 32%, var(--border-color));--theme-color-meta:#0a1006}:root[data-theme=forest-dark] body:after,[data-theme=forest-dark] body:after{background:radial-gradient(circle at 14% 78%,#f4b0023d,#0000 9%),radial-gradient(circle at 82% 28%,#ffd35a2e,#0000 7%),radial-gradient(circle at 48% 92%,#c3ce5024,#0000 6%),radial-gradient(circle at 68% 52%,#f4b0021f,#0000 5%),radial-gradient(circle at 28% 34%,#fff3c41a,#0000 4%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=forest-dark] body:after,[data-theme=forest-dark] body:after{animation:14s ease-in-out infinite alternate forest-dark-fireflies}}@keyframes forest-dark-fireflies{0%{opacity:calc(var(--page-firefly-opacity,.72) * .55);transform:translateY(0)}to{opacity:var(--page-firefly-opacity,.72);transform:translateY(-4px)}}:root[data-theme=forest-dark] .page-header h2,[data-theme=forest-dark] .page-header h2{background:linear-gradient(118deg, var(--brand-cream) 0%, var(--accent-hover) 55%, var(--brand-gold) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}:root[data-theme=forest-dark] .page-header p,[data-theme=forest-dark] .page-header p{color:var(--text-soft);font-size:1.04rem}:root[data-theme=forest-dark] .card,[data-theme=forest-dark] .card,:root[data-theme=forest-dark] .goal-card,[data-theme=forest-dark] .goal-card,:root[data-theme=forest-dark] .chart-card,[data-theme=forest-dark] .chart-card{border-color:color-mix(in srgb, var(--brand-gold) 14%, var(--border-color));box-shadow:var(--card-shadow), 0 0 0 1px #f4b0020d}:root[data-theme=forest-dark] .card:hover,[data-theme=forest-dark] .card:hover,:root[data-theme=forest-dark] .goal-card:hover,[data-theme=forest-dark] .goal-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 38%, var(--border-strong));box-shadow:var(--card-shadow), 0 0 0 1px #f4b0021f, 0 12px 32px #f4b0020f}:root[data-theme=forest-dark] .primary-btn,[data-theme=forest-dark] .primary-btn{text-shadow:0 1px #ffffff2e;box-shadow:var(--primary-btn-shadow)}:root[data-theme=forest-dark] .primary-btn:hover:not(:disabled),[data-theme=forest-dark] .primary-btn:hover:not(:disabled){box-shadow:0 6px 18px #f4b00261,0 0 32px #f4b00233,inset 0 1px #fff3c46b}:root[data-theme=forest-dark] .sidebar-nav-link.active,[data-theme=forest-dark] .sidebar-nav-link.active,:root[data-theme=forest-dark] .sidebar-nav-link[aria-current=page],[data-theme=forest-dark] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #f4b00238, #f4b0020f), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 42%, var(--border-color));box-shadow:var(--nav-link-active-shadow)}:root[data-theme=forest-dark] .app-sanctuary-nook,[data-theme=forest-dark] .app-sanctuary-nook{box-shadow:var(--shadow-soft), 0 0 24px #f4b00214;position:relative;overflow:hidden}:root[data-theme=forest-dark] .app-sanctuary-nook:before,[data-theme=forest-dark] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(85% 65% at 50% -25%,#f4b0022e,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=forest-dark] .app-sanctuary-sunflower,[data-theme=forest-dark] .app-sanctuary-sunflower{filter:drop-shadow(0 0 10px #f4b00259)}:root[data-theme=forest-dark] .auth-logo-stage,[data-theme=forest-dark] .auth-logo-stage{width:-moz-fit-content;width:fit-content;max-width:100%;display:inline-block;position:relative}:root[data-theme=forest-dark] .auth-logo,[data-theme=forest-dark] .auth-logo{z-index:1;position:relative}:root[data-theme=forest-dark] .auth-logo-stage:before,[data-theme=forest-dark] .auth-logo-stage:before{background:radial-gradient(70% 65% at 50% 42%,#fff3c41f,#f4b00238 42%,#0000 72%)}:root[data-theme=forest-dark] .auth-hero h1 em,[data-theme=forest-dark] .auth-hero h1 em{color:color-mix(in srgb, var(--accent-hover) 72%, var(--brand-cream));font-style:italic}:root[data-theme=forest-dark] .auth-feature-card,[data-theme=forest-dark] .auth-feature-card{border-color:color-mix(in srgb, var(--brand-gold) 18%, var(--border-color));background:linear-gradient(180deg, #fff3c40f, transparent 40%), color-mix(in srgb, var(--surface-raised) 90%, var(--accent-soft))}:root[data-theme=forest-dark] .auth-feature-card:hover,[data-theme=forest-dark] .auth-feature-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 38%, var(--border-color));box-shadow:var(--shadow-soft), 0 0 20px #f4b0021a}:root[data-theme=forest-dark] .auth-feature-card span,[data-theme=forest-dark] .auth-feature-card span{filter:drop-shadow(0 0 8px #f4b00247)}:root[data-theme=forest-dark] .auth-card,[data-theme=forest-dark] .auth-card{box-shadow:0 24px 60px #00000073,0 0 40px #f4b0020f,inset 0 1px #fff3c414}:root[data-theme=forest-dark] .auth-card:after,[data-theme=forest-dark] .auth-card:after{content:"";background:linear-gradient(90deg, var(--brand-leaf), var(--brand-gold), var(--accent-hover));opacity:.9;pointer-events:none;border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:24px;right:24px}:root[data-theme=forest-dark] .home-hero,[data-theme=forest-dark] .home-hero{box-shadow:var(--shadow), inset 0 1px 0 #fff3c414, 0 0 0 1px #f4b00214;position:relative;overflow:hidden}:root[data-theme=forest-dark] .home-hero:before,[data-theme=forest-dark] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(60% 42% at 50% -5%,#fff3c414,#0000 58%),radial-gradient(45% 38% at 100% 100%,#f4b00214,#0000 55%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=forest-dark] .home-hero-top,[data-theme=forest-dark] .home-hero-top,:root[data-theme=forest-dark] .home-reading-card,[data-theme=forest-dark] .home-reading-card,:root[data-theme=forest-dark] .home-glance,[data-theme=forest-dark] .home-glance{z-index:1;position:relative}:root[data-theme=forest-dark] .home-hero-tagline,[data-theme=forest-dark] .home-hero-tagline{color:color-mix(in srgb, var(--brand-cream) 55%, var(--text));display:inline-block}:root[data-theme=forest-dark] .home-hero-tagline:after,[data-theme=forest-dark] .home-hero-tagline:after{content:"";background:linear-gradient(90deg, var(--brand-leaf), var(--brand-gold));opacity:.9;border-radius:999px;width:52px;height:3px;margin-top:10px;display:block}:root[data-theme=forest-dark] .home-reading-card,[data-theme=forest-dark] .home-reading-card{border-color:color-mix(in srgb, var(--brand-gold) 28%, var(--border-color));background:linear-gradient(180deg, #fff3c40d, transparent 32%), color-mix(in srgb, var(--surface-raised) 92%, var(--accent-soft));box-shadow:inset 0 1px #fff3c41a,0 10px 32px #00000047,0 0 24px #f4b0020f}:root[data-theme=forest-dark] .reading-spotlight-label,[data-theme=forest-dark] .reading-spotlight-label{letter-spacing:.12em;color:var(--accent-hover);font-weight:800}:root[data-theme=forest-dark] .home-glance--inset,[data-theme=forest-dark] .home-glance--inset{border-top-color:color-mix(in srgb, var(--brand-gold) 18%, var(--border-color))}:root[data-theme=forest-dark] .home-glance-stat,[data-theme=forest-dark] .home-glance-stat{background:linear-gradient(180deg, #fff3c40d, transparent 42%), color-mix(in srgb, var(--surface-raised) 88%, var(--accent-soft));transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);padding-left:46px;box-shadow:inset 0 1px #fff3c414}:root[data-theme=forest-dark] .home-glance-stat:hover,[data-theme=forest-dark] .home-glance-stat:hover{transform:translateY(-1px);box-shadow:inset 0 1px #fff3c41a,0 8px 24px #f4b0021a}:root[data-theme=forest-dark] .home-glance-icon,[data-theme=forest-dark] .home-glance-icon{background:linear-gradient(180deg, #fff3c41f, color-mix(in srgb, var(--accent-soft) 90%, transparent));border-radius:9px;place-items:center;width:28px;height:28px;font-size:.92rem;display:grid;top:10px;left:10px;box-shadow:inset 0 1px #fff3c426,0 0 12px #f4b00214}:root[data-theme=forest-dark] .home-glance-value,[data-theme=forest-dark] .home-glance-value{color:color-mix(in srgb, var(--brand-cream) 45%, var(--text))}:root[data-theme=forest-dark] .home-glance-stat:first-child,[data-theme=forest-dark] .home-glance-stat:first-child{border-left:3px solid var(--brand-orange)}:root[data-theme=forest-dark] .home-glance-stat:nth-child(2),[data-theme=forest-dark] .home-glance-stat:nth-child(2){border-left:3px solid var(--brand-green)}:root[data-theme=forest-dark] .home-glance-stat:nth-child(3),[data-theme=forest-dark] .home-glance-stat:nth-child(3){border-left:3px solid var(--brand-gold)}:root[data-theme=forest-dark] .home-glance-stat:nth-child(4),[data-theme=forest-dark] .home-glance-stat:nth-child(4){border-left:3px solid var(--brand-leaf)}:root[data-theme=forest-dark] .home-glance-stat--audio,[data-theme=forest-dark] .home-glance-stat--audio{background:linear-gradient(180deg, #fff3c40d, transparent 42%), color-mix(in srgb, var(--accent-soft) 32%, var(--surface-raised))}:root[data-theme=forest-dark] .progress-fill,[data-theme=forest-dark] .progress-fill,:root[data-theme=forest-dark] .bar-fill,[data-theme=forest-dark] .bar-fill{box-shadow:inset 0 1px #fff3c433,0 0 12px #f4b00226}:root[data-theme=forest-dark] .app-footer-sunflower,[data-theme=forest-dark] .app-footer-sunflower{filter:drop-shadow(0 0 10px #f4b00252)}:root[data-theme=old-library],[data-theme=old-library]{--font-display:"Libre Baskerville", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:.03em;--heading-weight:700;--heading-transform:none;--sanctuary-mark:"🕯";--brand-gold:#c89b3c;--brand-orange:#8a4a24;--brand-green:#4a5c32;--brand-leaf:#6f7340;--brand-cream:#f3dfb1;--brand-ink:#24140c;--brand-brass:#e0b552;--brand-leather:#6b3a22;--brand-paper:#f7e8c0;--page-bg:#120804;--page-bg-soft:#1a0e08;--surface:#2a1810;--surface-soft:#1f120c;--surface-raised:#f7e8c0;--surface-muted:#3a2418;--text:#f3dfb1;--text-soft:#c9ad7a;--text-inverse:#24140c;--card-text:#24140c;--card-text-soft:#5c4830;--accent:#c89b3c;--accent-hover:#e0b552;--accent-strong:#8a4a24;--accent-soft:#c89b3c38;--accent-muted:#7a2f1b47;--success:#8faa5a;--success-soft:#8faa5a2e;--danger:#c45a3a;--danger-soft:#c45a3a2e;--border-color:#c89b3c3d;--border-strong:#c89b3c6b;--shadow-soft:0 2px 10px #00000061, 0 12px 28px #c89b3c0f;--shadow:0 8px 24px #0000007a, 0 20px 44px #c89b3c14;--shadow-strong:0 16px 40px #00000094, 0 32px 64px #c89b3c1a;--focus-ring:#e0b5529e;--overlay:#080402d6;--card-bg:var(--surface-raised);--card-bg-soft:#f0dcae;--chip-bg:linear-gradient(180deg, #3a2418, #2a1810);--chip-text:var(--text);--radius-button:10px;--radius-card:14px;--radius-chip:8px;--radius-nav:10px;--card-border-style:solid;--card-border-width:2px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 55% 42% at 50% -8%, #e0b55238, transparent 58%), radial-gradient(ellipse 38% 28% at 50% 0%, #ffe49c1f, transparent 52%), radial-gradient(ellipse 18% 52% at 0% 50%, #2a1810b8, transparent 62%), radial-gradient(ellipse 18% 52% at 100% 50%, #2a1810b8, transparent 62%), linear-gradient(90deg, #120804d1 0%, #2a181059 6%, transparent 16%, transparent 84%, #2a181059 94%, #120804d1 100%);--page-sparkle:radial-gradient(1px 1px at 18% 28%, #ffe49cd9, transparent), radial-gradient(1px 1px at 32% 42%, #e0b552bf, transparent), radial-gradient(1.5px 1.5px at 48% 22%, #fff8dcb3, transparent), radial-gradient(1px 1px at 62% 38%, #c89b3ca6, transparent), radial-gradient(1px 1px at 74% 18%, #ffe49c99, transparent), radial-gradient(1px 1px at 28% 58%, #e0b5528c, transparent), radial-gradient(1px 1px at 56% 52%, #fff8dc80, transparent), radial-gradient(1px 1px at 82% 48%, #c89b3c7a, transparent), radial-gradient(1px 1px at 42% 68%, #ffe49c6b, transparent), radial-gradient(1.5px 1.5px at 68% 62%, #e0b55261, transparent);--page-overlay:linear-gradient(180deg, #2a18108c 0%, #12080447 38%, #1208041f 62%, #e0b5520f 100%);--page-glow-left:linear-gradient(90deg, #120804e0 0%, #6b3a226b 8%, #e0b5521a 14%, transparent 28%);--page-glow-right:linear-gradient(270deg, #120804d9 0%, #6b3a2261 8%, #e0b55214 14%, transparent 28%);--page-gradient:linear-gradient(180deg, #2a1810 0%, #1a0e08 55%, #120804 100%);--page-grain-opacity:.32;--page-grain-blend:soft-light;--page-firefly-opacity:.72;--card-sheen-top:#fff8dc8c;--card-sheen-bottom:#24140c14;--card-inner-highlight:0 1px 0 #fff8dc9e inset;--button-primary-text:var(--brand-ink);--primary-btn-bg:linear-gradient(155deg, #ffe4a8 0%, #e0b552 28%, #c89b3c 52%, #8a4a24 82%, #5c3018 100%);--primary-btn-shadow:0 4px 16px #c89b3c52, inset 0 1px 0 #fff8dc6b;--nav-link-active-top:#ffe4a8;--nav-link-active-bottom:#c89b3c;--nav-link-active-text:var(--brand-ink);--nav-link-active-border:#c89b3c6b;--nav-link-active-shadow:0 4px 14px #c89b3c3d, inset 0 1px 0 #fff8dc7a;--progress-fill:linear-gradient(90deg, #6b3a22, #c89b3c, #f3dfb1);--shell-sidebar-bg:linear-gradient(180deg, #2a1810 0%, #1f120c 48%, #120804 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #c89b3c29, transparent 58%);--shell-sidebar-border:#c89b3c2e;--shell-nook-bg:radial-gradient(ellipse 110% 80% at 50% 100%, #e0b5522e, transparent 55%), linear-gradient(148deg, #2a1810fa, #1a0e08f5);--shell-nook-border:#c89b3c52;--shell-logo-shadow:0 12px 36px #c89b3c24;--shell-logo-glow:drop-shadow(0 0 16px #e0b55261) drop-shadow(0 4px 12px #c89b3c38);--spotlight-text:#f7e8c0;--spotlight-text-soft:#f7e8c0db;--spotlight-overlay:linear-gradient(125deg, #120804f0 0%, #6b3a22d1 42%, #c89b3c7a 100%);--spotlight-backdrop-opacity:.52;--spotlight-border:#e0b55261;--spotlight-glow:0 20px 48px #00000073, 0 0 36px #c89b3c24;--spotlight-label-color:#e0b552;--reading-zone-bg:radial-gradient(ellipse 90% 55% at 50% 0%, #e0b55224, transparent 58%), linear-gradient(175deg, #faf3df, #f2e4c4 48%, #e8d4a8);--reading-zone-border:color-mix(in srgb, var(--brand-gold) 38%, #8a4a2438);--theme-color-meta:#1a0e08}:root[data-theme=old-library] :-webkit-any(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}:root[data-theme=old-library] :is(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}[data-theme=old-library] :-webkit-any(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}[data-theme=old-library] :is(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}:root[data-theme=old-library] body:after,[data-theme=old-library] body:after{background:radial-gradient(14% 88% at 50% -8%,#e0b5522e,#0000 72%),radial-gradient(circle at 24% 32%,#ffe49c59 0,#0000 2.2%),radial-gradient(circle at 38% 48%,#e0b55247 0,#0000 1.8%),radial-gradient(circle at 52% 24%,#fff8dc52 0,#0000 2%),radial-gradient(circle at 66% 42%,#c89b3c42 0,#0000 1.6%),radial-gradient(circle at 72% 28%,#ffe49c38 0,#0000 1.4%),radial-gradient(circle at 44% 58%,#e0b55233 0,#0000 1.2%),radial-gradient(circle at 58% 62%,#fff8dc2e 0,#0000 1.1%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=old-library] body:after,[data-theme=old-library] body:after{animation:14s ease-in-out infinite alternate library-dust-drift}}@keyframes library-dust-drift{0%{opacity:calc(var(--page-firefly-opacity,.72) * .55);transform:translateY(0)}to{opacity:var(--page-firefly-opacity,.72);transform:translateY(-10px)}}:root[data-theme=old-library] .page-header h2,[data-theme=old-library] .page-header h2{font-family:var(--font-display);color:var(--brand-cream);text-shadow:0 2px 16px #0000006b}:root[data-theme=old-library] .page-header p,[data-theme=old-library] .page-header p{color:var(--text-soft);font-style:italic}:root[data-theme=old-library] .card,[data-theme=old-library] .card,:root[data-theme=old-library] .goal-card,[data-theme=old-library] .goal-card,:root[data-theme=old-library] .chart-card,[data-theme=old-library] .chart-card,:root[data-theme=old-library] .insight-card,[data-theme=old-library] .insight-card{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #8a4a2447);background:linear-gradient(180deg, #fff8dc9e, #f0dcae38), var(--card-bg);box-shadow:var(--card-shadow), inset 0 0 0 1px #fff8dc73, 0 0 24px #c89b3c0f}:root[data-theme=old-library] .card h2,[data-theme=old-library] .card h2,:root[data-theme=old-library] .card h3,[data-theme=old-library] .card h3{color:var(--brand-ink)}:root[data-theme=old-library] .card p,[data-theme=old-library] .card p{color:var(--card-text-soft)}:root[data-theme=old-library] .primary-btn,[data-theme=old-library] .primary-btn,:root[data-theme=old-library] .primary-submit,[data-theme=old-library] .primary-submit{font-family:var(--font-display);letter-spacing:.04em;text-shadow:0 1px #ffffff47}:root[data-theme=old-library] .secondary-btn,[data-theme=old-library] .secondary-btn{border:1px solid color-mix(in srgb, var(--brand-gold) 32%, var(--border-color));color:var(--card-text);background:linear-gradient(#faf3df,#f0dcae)}:root[data-theme=old-library] .app-sidebar,[data-theme=old-library] .app-sidebar{color:var(--text);--text-soft:#c9ad7a}:root[data-theme=old-library] .sidebar-nav-link,[data-theme=old-library] .sidebar-nav-link{color:#ddd0b0}:root[data-theme=old-library] .sidebar-nav-link:hover,[data-theme=old-library] .sidebar-nav-link:hover{color:var(--brand-cream);background:#c89b3c1a}:root[data-theme=old-library] .sidebar-nav-link.active,[data-theme=old-library] .sidebar-nav-link.active,:root[data-theme=old-library] .sidebar-nav-link[aria-current=page],[data-theme=old-library] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #ffe49c6b, #c89b3c2e), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 42%, var(--border-color));box-shadow:var(--nav-link-active-shadow)}:root[data-theme=old-library] .app-sanctuary-nook,[data-theme=old-library] .app-sanctuary-nook{box-shadow:var(--shadow-soft), 0 0 28px #c89b3c1a;position:relative;overflow:hidden}:root[data-theme=old-library] .app-sanctuary-nook:before,[data-theme=old-library] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#e0b55238,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=old-library] .app-sanctuary-name,[data-theme=old-library] .app-sanctuary-name{font-family:var(--font-display);background:linear-gradient(120deg,#ffe4a8,#c89b3c);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic}:root[data-theme=old-library] .app-sanctuary-tagline,[data-theme=old-library] .app-sanctuary-tagline{color:#c9ad7a}:root[data-theme=old-library] .app-user-card,[data-theme=old-library] .app-user-card{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #8a4a2447);background:linear-gradient(180deg, #fff8dcc7, #f0dcae6b), var(--surface-raised);box-shadow:inset 0 1px #fff8dcb8}:root[data-theme=old-library] .app-user-card .app-user-meta strong,[data-theme=old-library] .app-user-card .app-user-meta strong{color:var(--brand-ink);font-weight:800}:root[data-theme=old-library] .app-user-avatar,[data-theme=old-library] .app-user-avatar{color:var(--brand-ink);background:linear-gradient(#ffe49cb8,#c89b3c61)}:root[data-theme=old-library] .auth-feature-card,[data-theme=old-library] .auth-feature-card,:root[data-theme=old-library] .auth-card,[data-theme=old-library] .auth-card{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #8a4a2447);background:linear-gradient(180deg, #fff8dc94, #f0dcae47), var(--surface-raised);box-shadow:0 24px 56px #0000006b}:root[data-theme=old-library] .auth-card:after,[data-theme=old-library] .auth-card:after{content:"";opacity:.92;pointer-events:none;background:linear-gradient(90deg,#6b3a22,#c89b3c,#ffe4a8,#c89b3c);border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:24px;right:24px}:root[data-theme=old-library] .auth-eyebrow,[data-theme=old-library] .auth-eyebrow{color:#8a5a18;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem}:root[data-theme=old-library] .auth-card h2,[data-theme=old-library] .auth-card h2{color:var(--brand-ink)}:root[data-theme=old-library] .auth-form label,[data-theme=old-library] .auth-form label{color:var(--brand-ink);font-family:var(--font-ui);font-weight:700}:root[data-theme=old-library] .auth-card .text-button,[data-theme=old-library] .auth-card .text-button,:root[data-theme=old-library] .auth-card .support-email-link,[data-theme=old-library] .auth-card .support-email-link{color:#8a4a24}:root[data-theme=old-library] .home-greeting strong,[data-theme=old-library] .home-greeting strong{color:var(--brand-ink);background:0 0;-webkit-background-clip:unset;background-clip:unset}:root[data-theme=old-library] .home-hero,[data-theme=old-library] .home-hero{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #8a4a2447);background:radial-gradient(ellipse 75% 50% at 50% 0%, #e0b55224, transparent 58%), linear-gradient(180deg, #fff8dc9e, #f0dcae47), var(--surface-raised);box-shadow:var(--shadow), inset 0 1px 0 #fff8dc8c}:root[data-theme=old-library] .home-hero-tagline,[data-theme=old-library] .home-hero-tagline{color:var(--brand-ink);font-family:var(--font-display);font-style:italic}:root[data-theme=old-library] .home-hero-tagline:after,[data-theme=old-library] .home-hero-tagline:after{content:" 🕯"}:root[data-theme=old-library] .home-reading-card,[data-theme=old-library] .home-reading-card{border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #8a4a243d);background:linear-gradient(180deg, #fff8dc85, #f0dcae2e), var(--surface-raised)}:root[data-theme=old-library] .home-glance-stat,[data-theme=old-library] .home-glance-stat{background:linear-gradient(180deg, #fff8dc7a, #f0dcae1f), var(--surface-raised)}:root[data-theme=old-library] .home-glance-value,[data-theme=old-library] .home-glance-value{color:var(--brand-ink);background:0 0;-webkit-background-clip:unset;background-clip:unset}:root[data-theme=old-library] .home-panel,[data-theme=old-library] .home-panel,:root[data-theme=old-library] .onboarding-guide,[data-theme=old-library] .onboarding-guide{border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #8a4a243d);background:linear-gradient(180deg, #fff8dc85, #f0dcae2e), var(--surface-raised)}:root[data-theme=old-library] .home-panel-head h2,[data-theme=old-library] .home-panel-head h2,:root[data-theme=old-library] .onboarding-guide-head h2,[data-theme=old-library] .onboarding-guide-head h2{color:var(--brand-ink)}:root[data-theme=old-library] .reading-spotlight,[data-theme=old-library] .reading-spotlight{color:var(--card-text)}:root[data-theme=old-library] .reading-spotlight-backdrop,[data-theme=old-library] .reading-spotlight-backdrop{display:none}:root[data-theme=old-library] .reading-spotlight-inner,[data-theme=old-library] .reading-spotlight-inner{border:2px solid color-mix(in srgb, var(--brand-gold) 36%, #8a4a243d);background:radial-gradient(ellipse 80% 55% at 50% 0%, #e0b55229, transparent 58%), linear-gradient(175deg, #fff8dc9e, #f0dcae47), var(--surface-raised);box-shadow:inset 0 1px #fff8dc9e,0 8px 28px #00000038}:root[data-theme=old-library] .reading-spotlight-label,[data-theme=old-library] .reading-spotlight-label{color:#8a5a18;font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-weight:700}:root[data-theme=old-library] .reading-spotlight-copy h2,[data-theme=old-library] .reading-spotlight-copy h2{color:var(--brand-ink)}:root[data-theme=old-library] .reading-spotlight-author,[data-theme=old-library] .reading-spotlight-author,:root[data-theme=old-library] .reading-spotlight-detail,[data-theme=old-library] .reading-spotlight-detail{color:var(--card-text-soft)}:root[data-theme=old-library] .reading-spotlight-meta span,[data-theme=old-library] .reading-spotlight-meta span{color:var(--card-text-soft);border-color:color-mix(in srgb, var(--brand-gold) 24%, #8a4a242e);background:#fff8dc8c}:root[data-theme=old-library] .reading-spotlight-bar,[data-theme=old-library] .reading-spotlight-bar{background:#8a4a2424}:root[data-theme=old-library] .home-goals-tabs,[data-theme=old-library] .home-goals-tabs{border-color:color-mix(in srgb, var(--brand-gold) 22%, #8a4a242e);background:#fff8dc85}:root[data-theme=old-library] .home-goals-tabs button,[data-theme=old-library] .home-goals-tabs button{color:var(--card-text-soft)}:root[data-theme=old-library] .home-goals-tabs button.is-active,[data-theme=old-library] .home-goals-tabs button.is-active{color:var(--brand-ink);background:var(--surface-raised);box-shadow:inset 0 1px #fff8dca6}:root[data-theme=old-library] .home-goal-bar,[data-theme=old-library] .home-goal-bar{border-color:color-mix(in srgb, var(--brand-gold) 20%, #8a4a2429);background:#fff8dc94}:root[data-theme=old-library] .home-goal-bar-label,[data-theme=old-library] .home-goal-bar-label,:root[data-theme=old-library] .home-goal-bar-head strong,[data-theme=old-library] .home-goal-bar-head strong{color:var(--brand-ink)}:root[data-theme=old-library] .home-goal-bar-target,[data-theme=old-library] .home-goal-bar-target,:root[data-theme=old-library] .home-goal-bar-percent,[data-theme=old-library] .home-goal-bar-percent,:root[data-theme=old-library] .home-glance-label,[data-theme=old-library] .home-glance-label{color:var(--card-text-soft)}:root[data-theme=old-library] .home-session-row strong,[data-theme=old-library] .home-session-row strong{color:var(--brand-ink)}:root[data-theme=old-library] .home-session-row p,[data-theme=old-library] .home-session-row p,:root[data-theme=old-library] .home-session-row time,[data-theme=old-library] .home-session-row time{color:var(--card-text-soft)}:root[data-theme=old-library] .home-text-link,[data-theme=old-library] .home-text-link{color:#8a4a24}:root[data-theme=old-library] .settings-header p,[data-theme=old-library] .settings-header p{color:var(--text-soft)}:root[data-theme=old-library] .settings-contents,[data-theme=old-library] .settings-contents{border:1px solid color-mix(in srgb, var(--brand-gold) 28%, #8a4a243d);box-shadow:var(--shadow-soft), inset 0 1px 0 #fff8dc0f;background:radial-gradient(80% 60% at 50% 0,#e0b5521a,#0000 58%),linear-gradient(#3a2418,#2a1810)}:root[data-theme=old-library] .settings-contents p,[data-theme=old-library] .settings-contents p{color:var(--brand-gold);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}:root[data-theme=old-library] .settings-contents a,[data-theme=old-library] .settings-contents a{color:var(--text);background:#1208046b;border-color:#c89b3c24}:root[data-theme=old-library] .settings-contents a:hover,[data-theme=old-library] .settings-contents a:hover{border-color:color-mix(in srgb, var(--brand-gold) 42%, var(--border-color));background:#c89b3c24}:root[data-theme=old-library] .settings-card.settings-card,[data-theme=old-library] .settings-card.settings-card{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #8a4a2447);background:linear-gradient(180deg, #fff8dc9e, #f0dcae38), var(--surface-raised);box-shadow:var(--shadow), inset 0 1px 0 #fff8dc8c;position:relative;overflow:hidden}:root[data-theme=old-library] .settings-card.settings-card:before,[data-theme=old-library] .settings-card.settings-card:before{content:"";pointer-events:none;background:radial-gradient(55% 42% at 50% 0,#e0b5521f,#0000 58%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=old-library] .settings-card-header h3,[data-theme=old-library] .settings-card-header h3{z-index:1;color:var(--brand-ink);font-family:var(--font-display);position:relative}:root[data-theme=old-library] .settings-card-header p,[data-theme=old-library] .settings-card-header p{z-index:1;color:var(--card-text-soft);position:relative}:root[data-theme=old-library] .settings-card .soft-label,[data-theme=old-library] .settings-card .soft-label{color:#8a5a18;letter-spacing:.14em}:root[data-theme=old-library] .settings-profile-hero,[data-theme=old-library] .settings-profile-hero{z-index:1;border:1px solid color-mix(in srgb, var(--brand-gold) 24%, #8a4a2433);background:linear-gradient(#fff8dc6b,#f0dcae24),#f0dcae;position:relative}:root[data-theme=old-library] .settings-card input,[data-theme=old-library] .settings-card select,[data-theme=old-library] .settings-card textarea,:root[data-theme=old-library] .settings-card label,[data-theme=old-library] .settings-card label{color:var(--card-text)}:root[data-theme=old-library] .settings-card input,[data-theme=old-library] .settings-card select,[data-theme=old-library] .settings-card textarea{border-color:color-mix(in srgb, var(--brand-gold) 28%, #8a4a2438);color:var(--card-text);background:#fff8dcb8}:root[data-theme=old-library] .theme-picker legend,[data-theme=old-library] .theme-picker legend{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=old-library] .theme-picker-note,[data-theme=old-library] .theme-picker-note{color:var(--card-text-soft)}:root[data-theme=old-library] .theme-picker-card,[data-theme=old-library] .theme-picker-card{color:var(--text);border:1px solid color-mix(in srgb, var(--brand-gold) 22%, #8a4a2447);box-shadow:var(--shadow-soft), inset 0 1px 0 #fff8dc0f;background:radial-gradient(80% 70% at 50% 0,#e0b5521f,#0000 58%),linear-gradient(#3a2418,#2a1810)}:root[data-theme=old-library] .theme-picker-card strong,[data-theme=old-library] .theme-picker-card strong{color:var(--brand-gold);font-family:var(--font-display);font-size:.88rem}:root[data-theme=old-library] .theme-picker-card span:last-child,[data-theme=old-library] .theme-picker-card span:last-child{color:var(--text-soft)}:root[data-theme=old-library] .theme-picker-card:hover,[data-theme=old-library] .theme-picker-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 45%, var(--border-color));box-shadow:var(--shadow-soft), 0 0 24px #e0b5521f}:root[data-theme=old-library] .theme-picker-card.is-selected,[data-theme=old-library] .theme-picker-card.is-selected{border-color:var(--brand-gold);outline-color:var(--brand-gold);box-shadow:0 0 0 1px #e0b55252, 0 0 28px #c89b3c2e, var(--shadow-soft)}:root[data-theme=old-library] .settings-data-panel,[data-theme=old-library] .settings-data-panel,:root[data-theme=old-library] .settings-warning-card,[data-theme=old-library] .settings-warning-card,:root[data-theme=old-library] .settings-goal-group,[data-theme=old-library] .settings-goal-group{border-color:color-mix(in srgb, var(--brand-gold) 22%, #8a4a242e);background:#fff8dc7a}:root[data-theme=old-library] .settings-data-panel h4,[data-theme=old-library] .settings-data-panel h4,:root[data-theme=old-library] .settings-warning-card strong,[data-theme=old-library] .settings-warning-card strong,:root[data-theme=old-library] .settings-goal-group h4,[data-theme=old-library] .settings-goal-group h4{color:var(--brand-ink)}:root[data-theme=old-library] .settings-data-panel p,[data-theme=old-library] .settings-data-panel p,:root[data-theme=old-library] .settings-warning-card p,[data-theme=old-library] .settings-warning-card p{color:var(--card-text-soft)}:root[data-theme=wood],[data-theme=wood]{--font-display:"Bitter", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:.02em;--heading-weight:700;--heading-transform:none;--sanctuary-mark:"🔥";--brand-gold:#e8983a;--brand-orange:#d4622a;--brand-green:#5a7a48;--brand-leaf:#6b8f5a;--brand-cream:#f5e6c8;--brand-ink:#1a0e06;--brand-hearth:#ff8c42;--brand-dusk:#4a6a58;--page-bg:#120804;--page-bg-soft:#1a1008;--surface:#352418;--surface-soft:#2a1810;--surface-raised:#4a3428;--surface-muted:#221408;--text:#f5e6c8;--text-soft:#b8a088;--text-inverse:#1a0e06;--card-text:#f5e6c8;--card-text-soft:#b8a088;--accent:#e8983a;--accent-hover:#f5b04a;--accent-strong:#d4622a;--accent-soft:#e8983a47;--accent-muted:#5a7a4838;--success:#6b8f5a;--success-soft:#6b8f5a38;--danger:#c44a38;--danger-soft:#c44a3838;--border-color:#d4a06433;--border-strong:#e8983a57;--shadow-soft:0 2px 12px #0000006b;--shadow:0 8px 28px #00000085;--shadow-strong:0 16px 44px #0000009e;--focus-ring:#e8983a8c;--overlay:#080402e6;--card-bg:#4a3428;--card-bg-soft:#3a2818;--chip-bg:#3a2818;--chip-text:var(--text);--input-bg:#1208049e;--input-border:#d4a06438;--input-text:var(--text);--input-placeholder:#b8a088b8;--form-field-bg:#1208049e;--form-field-border:#d4a06438;--form-field-text:var(--text);--form-field-placeholder:#b8a088b8;--radius-button:6px;--radius-card:8px;--radius-chip:6px;--radius-nav:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:14px;--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 55% 48% at 12% 92%, #ff642833, transparent 58%), radial-gradient(ellipse 40% 32% at 88% 8%, #4a6a5824, transparent 52%), radial-gradient(ellipse 80% 60% at 50% 50%, #4a342814, transparent 68%);--page-sparkle:none;--page-overlay:linear-gradient(180deg, #4a6a580f 0%, transparent 35%, #ff642814 100%);--page-glow-left:linear-gradient(90deg, #080402bf 0%, #ff64281a 12%, transparent 28%);--page-glow-right:linear-gradient(270deg, #080402b8 0%, #4a6a581a 12%, transparent 28%);--page-gradient:linear-gradient(168deg, #2a1810 0%, #1a1008 48%, #120804 100%);--page-grain-opacity:.48;--page-grain-blend:multiply;--page-firefly-opacity:.55;--card-sheen-top:#ffdcb40f;--card-sheen-bottom:#00000038;--card-inner-highlight:0 1px 0 #ffdcb414 inset;--button-primary-text:#1a0e06;--primary-btn-bg:linear-gradient(180deg, #ffe0a8 0%, #f5b04a 35%, #e8983a 65%, #c45f1a 100%);--primary-btn-shadow:0 4px 14px #ff642852, inset 0 1px 0 #ffebc861;--nav-link-active-top:#6b5040;--nav-link-active-bottom:#5c4032;--nav-link-active-text:var(--text);--nav-link-active-border:#e8983a6b;--nav-link-active-shadow:0 0 20px #ff642824, inset 0 1px 0 #ffdcb41a;--progress-fill:linear-gradient(90deg, #5a7a48, #e8983a, #f5e6c8);--shell-sidebar-bg:linear-gradient(180deg, #3a2818 0%, #2a1810 52%, #1a1008 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #ff642829, transparent 58%);--shell-sidebar-border:#5c403273;--shell-nook-bg:radial-gradient(ellipse 100% 80% at 50% 100%, #ff642838, transparent 55%), linear-gradient(148deg, #3a2818, #221408);--shell-nook-border:#e8983a52;--shell-logo-glow:drop-shadow(0 0 14px #ff783252);--spotlight-text:#f5e6c8;--spotlight-text-soft:#f5e6c8d1;--spotlight-overlay:linear-gradient(125deg, #120804eb 0%, #3a2818d9 45%, #ff642861 100%);--spotlight-backdrop-opacity:.48;--spotlight-border:#d4a06447;--spotlight-glow:0 16px 40px #0000007a;--spotlight-label-color:#e8983a;--reading-zone-bg:linear-gradient(175deg, #524038 0%, #4a3428 48%, #3a2818 100%);--reading-zone-border:#d4a0643d;--theme-color-meta:#1a1008}:root[data-theme=wood] body:after,[data-theme=wood] body:after{background:radial-gradient(22% 55% at 10% 92%,#ff642838,#0000 68%),radial-gradient(14% 38% at 14% 88%,#ffa05024,#0000 62%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=wood] body:after,[data-theme=wood] body:after{animation:6s ease-in-out infinite alternate wood-hearth-flicker}}@keyframes wood-hearth-flicker{0%{opacity:calc(var(--page-firefly-opacity,.55) * .65)}to{opacity:var(--page-firefly-opacity,.55)}}:root[data-theme=wood] .card,[data-theme=wood] .card,:root[data-theme=wood] .form-card,[data-theme=wood] .form-card,:root[data-theme=wood] .goal-card,[data-theme=wood] .goal-card,:root[data-theme=wood] .chart-card,[data-theme=wood] .chart-card,:root[data-theme=wood] .insight-card,[data-theme=wood] .insight-card,:root[data-theme=wood] .heatmap-card,[data-theme=wood] .heatmap-card,:root[data-theme=wood] .settings-card,[data-theme=wood] .settings-card{box-shadow:var(--card-shadow), inset 0 1px 0 #ffdcb412;color:var(--text);background:linear-gradient(#ffdcb40d 0%,#0000 28%),linear-gradient(#524038 0%,#4a3428 55%,#3a2818 100%);border-color:#d4a06433}:root[data-theme=wood] .page-header h2,[data-theme=wood] .page-header h2{color:var(--brand-cream);text-shadow:0 2px 14px #ff64282e}:root[data-theme=wood] .page-header p,[data-theme=wood] .page-header p{color:var(--text-soft)}:root[data-theme=wood] .primary-btn,[data-theme=wood] .primary-btn,:root[data-theme=wood] .primary-submit,[data-theme=wood] .primary-submit{font-family:var(--font-display);border:1px solid #d4a06452}:root[data-theme=wood] .secondary-btn,[data-theme=wood] .secondary-btn{color:var(--text);background:linear-gradient(#4a3428,#3a2818);border:1px solid #d4a0643d}:root[data-theme=wood] .app-sidebar,[data-theme=wood] .app-sidebar{color:var(--text);box-shadow:inset -2px 0 #00000047}:root[data-theme=wood] .sidebar-nav-link,[data-theme=wood] .sidebar-nav-link{color:var(--text-soft)}:root[data-theme=wood] .sidebar-nav-link:hover,[data-theme=wood] .sidebar-nav-link:hover{color:var(--text);background:#ff642814}:root[data-theme=wood] .sidebar-nav-link.active,[data-theme=wood] .sidebar-nav-link.active,:root[data-theme=wood] .sidebar-nav-link[aria-current=page],[data-theme=wood] .sidebar-nav-link[aria-current=page]{color:var(--text);box-shadow:var(--nav-link-active-shadow);background:linear-gradient(#5c4032,#4a3428);border-color:#e8983a61}:root[data-theme=wood] .app-sanctuary-nook,[data-theme=wood] .app-sanctuary-nook{border-color:#e8983a47;box-shadow:0 0 28px #ff64281a}:root[data-theme=wood] .app-sanctuary-nook:before,[data-theme=wood] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#ff64283d,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=wood] .app-sanctuary-name,[data-theme=wood] .app-sanctuary-name{color:#ffe0a8;font-family:var(--font-display);text-shadow:0 0 18px #ff642838}:root[data-theme=wood] .app-sanctuary-tagline,[data-theme=wood] .app-sanctuary-tagline{color:var(--text-soft)}:root[data-theme=wood] .app-user-card,[data-theme=wood] .app-user-card{color:var(--text);background:linear-gradient(#524038,#4a3428);border-color:#d4a06438}:root[data-theme=wood] .app-user-avatar,[data-theme=wood] .app-user-avatar{color:var(--brand-ink);background:linear-gradient(#f5b04a,#e8983a);border:1px solid #d4a06452}:root[data-theme=wood] .auth-feature-card,[data-theme=wood] .auth-feature-card,:root[data-theme=wood] .auth-card,[data-theme=wood] .auth-card{color:var(--text);background:linear-gradient(#524038,#4a3428 55%,#3a2818);border-color:#d4a06438}:root[data-theme=wood] .auth-card h2,[data-theme=wood] .auth-card h2,:root[data-theme=wood] .auth-form label,[data-theme=wood] .auth-form label,:root[data-theme=wood] .auth-feature-card strong,[data-theme=wood] .auth-feature-card strong{color:var(--text)}:root[data-theme=wood] .auth-eyebrow,[data-theme=wood] .auth-eyebrow{color:#e8983a}:root[data-theme=wood] .auth-feature-card p,[data-theme=wood] .auth-feature-card p,:root[data-theme=wood] .auth-card .muted-text,[data-theme=wood] .auth-card .muted-text{color:var(--text-soft)}:root[data-theme=wood] .home-hero,[data-theme=wood] .home-hero,:root[data-theme=wood] .home-reading-card,[data-theme=wood] .home-reading-card,:root[data-theme=wood] .home-panel,[data-theme=wood] .home-panel,:root[data-theme=wood] .home-glance-stat,[data-theme=wood] .home-glance-stat,:root[data-theme=wood] .onboarding-guide,[data-theme=wood] .onboarding-guide,:root[data-theme=wood] .home-welcome-card,[data-theme=wood] .home-welcome-card{color:var(--text);background:linear-gradient(#ffdcb40d 0%,#0000 24%),linear-gradient(#524038 0%,#4a3428 55%,#3a2818 100%);border-color:#d4a06433}:root[data-theme=wood] .home-hero,[data-theme=wood] .home-hero{position:relative;overflow:hidden}:root[data-theme=wood] .home-hero:before,[data-theme=wood] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(50% 40% at 0 100%,#ff64281f,#0000 58%),radial-gradient(40% 32% at 100% 0,#4a6a5814,#0000 52%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=wood] .home-greeting,[data-theme=wood] .home-greeting{color:var(--text-soft)}:root[data-theme=wood] .home-greeting strong,[data-theme=wood] .home-greeting strong{color:var(--text);background:0 0;-webkit-background-clip:unset;background-clip:unset}:root[data-theme=wood] .home-hero-tagline,[data-theme=wood] .home-hero-tagline{color:var(--text);font-family:var(--font-display)}:root[data-theme=wood] .home-hero-tagline:after,[data-theme=wood] .home-hero-tagline:after{content:" 🔥"}:root[data-theme=wood] .home-goals-tabs,[data-theme=wood] .home-goals-tabs{background:#12080459;border-color:#d4a0642e}:root[data-theme=wood] .home-goals-tabs button,[data-theme=wood] .home-goals-tabs button{color:var(--text-soft)}:root[data-theme=wood] .home-goals-tabs button.is-active,[data-theme=wood] .home-goals-tabs button.is-active{color:var(--text);background:#5c4032}:root[data-theme=wood] .home-goal-bar,[data-theme=wood] .home-goal-bar{background:#12080452;border-color:#d4a06429}:root[data-theme=wood] .home-glance-value,[data-theme=wood] .home-glance-value{color:#ffe0a8;background:0 0;-webkit-background-clip:unset;background-clip:unset}:root[data-theme=wood] .month-card,[data-theme=wood] .month-card{background:linear-gradient(#3a2818,#2a1810);border-color:#d4a06429}:root[data-theme=wood] .calendar-day,[data-theme=wood] .calendar-day{color:var(--text-soft);background:#1208048c}:root[data-theme=wood] .calendar-day.read-light,[data-theme=wood] .calendar-day.read-light{color:var(--text);background:#e8983a52}:root[data-theme=wood] .reading-log-item,[data-theme=wood] .reading-log-item{background:#12080447;border-color:#d4a06429}:root[data-theme=wood] .settings-contents,[data-theme=wood] .settings-contents{background:linear-gradient(#3a2818,#2a1810);border-color:#d4a06433}:root[data-theme=wood] .settings-contents p,[data-theme=wood] .settings-contents p{color:#e8983a;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}:root[data-theme=wood] .settings-contents a,[data-theme=wood] .settings-contents a{color:var(--text);background:#1208046b;border-color:#d4a06424}:root[data-theme=wood] .settings-profile-hero,[data-theme=wood] .settings-profile-hero{background:#12080447;border-color:#d4a06433}:root[data-theme=wood] .theme-picker-card,[data-theme=wood] .theme-picker-card{color:var(--text);background:linear-gradient(#3a2818,#2a1810);border-color:#d4a06433}:root[data-theme=wood] .theme-picker-card strong,[data-theme=wood] .theme-picker-card strong{color:#ffe0a8}:root[data-theme=wood] .theme-picker-card span:last-child,[data-theme=wood] .theme-picker-card span:last-child{color:var(--text-soft)}:root[data-theme=wood] .theme-picker-card.is-selected,[data-theme=wood] .theme-picker-card.is-selected{border-color:var(--accent);outline-color:var(--accent)}:root[data-theme=wood] .settings-data-panel,[data-theme=wood] .settings-data-panel,:root[data-theme=wood] .settings-warning-card,[data-theme=wood] .settings-warning-card,:root[data-theme=wood] .settings-goal-group,[data-theme=wood] .settings-goal-group{background:#12080452;border-color:#d4a06429}:root[data-theme=wood] input,[data-theme=wood] input,:root[data-theme=wood] select,[data-theme=wood] select,:root[data-theme=wood] textarea,[data-theme=wood] textarea{color:var(--text);background:#1208048c;border-color:#d4a06438}:root[data-theme=wood] label,[data-theme=wood] label{color:var(--text-soft)}:root[data-theme=fire],[data-theme=fire]{--font-display:"Bitter", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:.03em;--heading-weight:700;--heading-transform:none;--sanctuary-mark:"🔥";--brand-gold:#ffb347;--brand-orange:#ff6b2b;--brand-green:#8b2500;--brand-leaf:#e85d04;--brand-cream:#fff0d4;--brand-ember:#ff4500;--page-bg:#120806;--page-bg-soft:#1a0e0a;--surface:#221410;--surface-soft:#1a0e0a;--surface-raised:#322018;--surface-muted:#3a2218;--text:#fff0d4;--text-soft:#c9a88a;--text-inverse:#1a0e0a;--accent:#ff6b2b;--accent-hover:#ff8c42;--accent-strong:#ff4500;--accent-soft:#ff6b2b38;--accent-muted:#ffb3472e;--success:#e85d04;--success-soft:#e85d0429;--danger:#f44;--danger-soft:#ff44442e;--border-color:#ff6b2b33;--border-strong:#ff8c4261;--shadow-soft:0 2px 10px #0000006b, 0 12px 28px #ff450014;--shadow:0 8px 24px #0000007a, 0 20px 44px #ff45001a;--shadow-strong:0 16px 40px #00000094, 0 32px 64px #ff450024;--focus-ring:#ff8c42b8;--overlay:#080402e0;--radius-button:var(--radius-pill);--radius-card:20px;--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 95% 62% at 50% 112%, #ff450061, transparent 58%), radial-gradient(ellipse 35% 48% at 50% 98%, #ffb34747, transparent 52%), radial-gradient(ellipse 12% 28% at 48% 94%, #ffe0a033, transparent 55%), radial-gradient(ellipse 10% 24% at 54% 92%, #ff8c422e, transparent 52%), radial-gradient(ellipse 50% 38% at 50% -15%, #50281e59, transparent 58%), radial-gradient(ellipse 40% 28% at 18% 96%, #ff6b2b2e, transparent 54%), radial-gradient(ellipse 38% 26% at 82% 94%, #ff8c4229, transparent 52%), radial-gradient(ellipse 24% 18% at 10% 42%, #ff450012, transparent 58%), radial-gradient(ellipse 22% 16% at 90% 38%, #ff8c420f, transparent 56%);--page-sparkle:radial-gradient(1px 1px at 22% 76%, #ffb347d9, transparent), radial-gradient(1px 1px at 56% 88%, #ff6b2bcc, transparent), radial-gradient(1px 1px at 74% 62%, #ff8c42bf, transparent), radial-gradient(1px 1px at 36% 52%, #ffe0a0a6, transparent), radial-gradient(1.5px 1.5px at 84% 74%, #ff6b2bb3, transparent), radial-gradient(1px 1px at 14% 42%, #ffb34799, transparent), radial-gradient(1px 1px at 46% 32%, #ff8c428c, transparent), radial-gradient(1px 1px at 68% 24%, #ffc87873, transparent), radial-gradient(1px 1px at 32% 68%, #ffb34780, transparent), radial-gradient(1.5px 1.5px at 50% 78%, #ffe0a08c, transparent);--page-overlay:linear-gradient(180deg, #0e0604b8 0%, #1a0e0a61 32%, #1208062e 58%, #ff45001a 82%, #ff6b2b29 100%);--page-glow-left:linear-gradient(90deg, #3c18088c 0%, #8b250047 6%, #ff6b2b24 12%, #ffb34714 18%, transparent 32%);--page-glow-right:linear-gradient(270deg, #3c180885 0%, #8b250042 6%, #ff6b2b1f 12%, #ff8c4212 18%, transparent 32%);--page-gradient:linear-gradient(168deg, #0a0402 0%, #0e0604 22%, #140a06 48%, #1a0e0a 72%, #241610 100%);--page-grain-opacity:.12;--page-grain-blend:soft-light;--page-firefly-opacity:.78;--card-sheen-top:#fff0d40f;--card-sheen-bottom:#00000052;--card-inner-highlight:0 1px 0 #ffb3471a inset;--button-primary-text:var(--text-inverse);--primary-btn-bg:linear-gradient(155deg, #ffd080 0%, #ff8c42 22%, #ff6b2b 50%, #e85d04 78%, #8b2500 100%);--primary-btn-shadow:0 4px 16px #ff450061, 0 0 28px #ff6b2b2e, inset 0 1px 0 #ffe0a059;--nav-link-active-top:#ffb347;--nav-link-active-bottom:#ff6b2b;--nav-link-active-text:var(--text-inverse);--nav-link-active-border:#ff8c4273;--nav-link-active-shadow:0 4px 16px #ff450047, 0 0 20px #ff6b2b1f, inset 0 1px 0 #ffe0a047;--chip-bg:linear-gradient(180deg, #3a2218, #2c1812);--progress-fill:linear-gradient(90deg, #8b2500, #ff4500, #ff8c42, #ffb347);--shell-sidebar-bg:linear-gradient(180deg, #2c1812 0%, #221410 45%, #1a0e0a 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #ff6b2b33, transparent 58%);--shell-sidebar-border:#ff6b2b2e;--shell-nook-bg:radial-gradient(ellipse 110% 80% at 50% 100%, #ff6b2b38, transparent 55%), linear-gradient(148deg, #2c1812fa, #1a0e0af5);--shell-nook-border:#ff8c4252;--shell-logo-shadow:0 12px 36px #ff450029;--shell-logo-glow:drop-shadow(0 0 16px #ff6b2b73) drop-shadow(0 4px 12px #ff450040);--spotlight-text:#fff0d4;--spotlight-text-soft:#fff0d4d6;--spotlight-overlay:linear-gradient(125deg, #080402f0 0%, #8b2500d1 45%, #ff45008c 100%);--spotlight-backdrop-opacity:.52;--spotlight-border:#ff8c425c;--spotlight-glow:0 20px 48px #00000073, 0 0 36px #ff6b2b2e;--spotlight-label-color:#ffb347;--reading-zone-bg:radial-gradient(ellipse 105% 65% at 50% 115%, #ff6b2b3d, transparent 52%), radial-gradient(ellipse 50% 38% at 50% -12%, #ffb3470f, transparent 55%), linear-gradient(175deg, #322018, #281810 48%, #1a0e0a);--reading-zone-border:color-mix(in srgb, var(--brand-orange) 38%, var(--border-color));--theme-color-meta:#1a0e0a}:root[data-theme=fire] body:after,[data-theme=fire] body:after{background:radial-gradient(12% 92% at 0 88%,#ff6b2b33,#0000 72%),radial-gradient(12% 92% at 100% 88%,#ff8c422e,#0000 72%),radial-gradient(circle at 50% 98%,#ffb3476b 0,#0000 5%),radial-gradient(circle at 46% 94%,#ffe0a047 0,#0000 3%),radial-gradient(circle at 54% 94%,#ff8c423d 0,#0000 2.8%),radial-gradient(circle at 16% 86%,#ff6b2b47 0,#0000 2.6%),radial-gradient(circle at 84% 84%,#ffb34742 0,#0000 2.4%),radial-gradient(circle at 28% 74%,#ffc87833 0,#0000 1.6%),radial-gradient(circle at 72% 70%,#ff8c422e 0,#0000 1.4%),radial-gradient(circle at 40% 58%,#ffb34724 0,#0000 1.2%),radial-gradient(circle at 60% 44%,#ff6b2b1f 0,#0000 1%),radial-gradient(circle at 20% 36%,#ffc8781a 0,#0000 .9%),radial-gradient(circle at 80% 30%,#ffb3471a 0,#0000 .9%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=fire] body:after,[data-theme=fire] body:after{animation:10s ease-in-out infinite alternate fire-ember-rise}}@keyframes fire-ember-rise{0%{opacity:calc(var(--page-firefly-opacity,.78) * .52);transform:translateY(0)translate(0)}to{opacity:var(--page-firefly-opacity,.78);transform:translateY(-6px)translate(2px)}}:root[data-theme=fire] .page-header h2,[data-theme=fire] .page-header h2{background:linear-gradient(118deg,#ffd080 0%,#ffb347 28%,#ff8c42 52%,#ff6b2b 78%,#ff4500 100%);color:#0000;text-shadow:none;filter:drop-shadow(0 0 18px #ff6b2b38);-webkit-background-clip:text;background-clip:text}:root[data-theme=fire] .page-header p,[data-theme=fire] .page-header p{color:var(--text-soft);letter-spacing:.02em;font-size:1.04rem}:root[data-theme=fire] .card,[data-theme=fire] .card,:root[data-theme=fire] .goal-card,[data-theme=fire] .goal-card,:root[data-theme=fire] .chart-card,[data-theme=fire] .chart-card,:root[data-theme=fire] .insight-card,[data-theme=fire] .insight-card{border-color:color-mix(in srgb, var(--accent) 22%, var(--border-color));box-shadow:var(--card-shadow), 0 0 0 1px #ff6b2b0f}:root[data-theme=fire] .card:hover,[data-theme=fire] .card:hover,:root[data-theme=fire] .goal-card:hover,[data-theme=fire] .goal-card:hover{border-color:color-mix(in srgb, var(--accent) 42%, var(--border-strong));box-shadow:var(--card-shadow), 0 0 0 1px #ff8c4224, 0 12px 32px #ff45001a}:root[data-theme=fire] .primary-btn,[data-theme=fire] .primary-btn,:root[data-theme=fire] .primary-submit,[data-theme=fire] .primary-submit{text-shadow:0 1px #ffffff2e;letter-spacing:.03em;position:relative;overflow:hidden}:root[data-theme=fire] .primary-btn:after,[data-theme=fire] .primary-btn:after,:root[data-theme=fire] .primary-submit:after,[data-theme=fire] .primary-submit:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#fff0b459 50%,#0000 65%);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-120%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=fire] .primary-btn:after,[data-theme=fire] .primary-btn:after,:root[data-theme=fire] .primary-submit:after,[data-theme=fire] .primary-submit:after{animation:2.8s ease-in-out infinite fire-flame-shimmer}}@keyframes fire-flame-shimmer{0%,to{opacity:.85;transform:translate(-120%)}50%{opacity:1;transform:translate(120%)}}:root[data-theme=fire] .primary-btn:hover:not(:disabled),[data-theme=fire] .primary-btn:hover:not(:disabled){box-shadow:0 8px 22px #ff45006b,0 0 0 1px #ffb34761,0 0 32px #ff6b2b38,inset 0 1px #ffe0a061}:root[data-theme=fire] .secondary-btn,[data-theme=fire] .secondary-btn{border:1px solid color-mix(in srgb, var(--accent) 32%, var(--border-color));background:linear-gradient(180deg, #3a2218, var(--chip-bg));color:var(--text)}:root[data-theme=fire] .sidebar-nav-link.active,[data-theme=fire] .sidebar-nav-link.active,:root[data-theme=fire] .sidebar-nav-link[aria-current=page],[data-theme=fire] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #ff8c4247, #ff450024), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 42%, var(--border-color));box-shadow:var(--nav-link-active-shadow)}:root[data-theme=fire] .app-sanctuary-nook,[data-theme=fire] .app-sanctuary-nook{box-shadow:var(--shadow-soft), 0 0 28px #ff6b2b1f;position:relative;overflow:hidden}:root[data-theme=fire] .app-sanctuary-nook:before,[data-theme=fire] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#ff6b2b3d,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=fire] .app-sanctuary-name,[data-theme=fire] .app-sanctuary-name{background:linear-gradient(120deg,#ffb347,#ff8c42);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:700}:root[data-theme=fire] .app-sanctuary-nook:after,[data-theme=fire] .app-sanctuary-nook:after{letter-spacing:.38em;color:color-mix(in srgb, var(--brand-gold) 65%, transparent);font-size:.55rem}:root[data-theme=fire] .app-sanctuary-sunflower,[data-theme=fire] .app-sanctuary-sunflower{filter:drop-shadow(0 0 12px #ff6b2b73)}:root[data-theme=fire] .auth-logo-stage,[data-theme=fire] .auth-logo-stage{width:-moz-fit-content;width:fit-content;max-width:100%;display:inline-block;position:relative}:root[data-theme=fire] .auth-logo,[data-theme=fire] .auth-logo{z-index:1;position:relative}:root[data-theme=fire] .auth-logo-stage:before,[data-theme=fire] .auth-logo-stage:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(72% 68% at 48% 55%,#ff8c4252,#ff45002e 48%,#0000 72%);position:absolute;top:-14%;bottom:-6%;left:-10%;right:-10%}:root[data-theme=fire] .auth-hero h1 em,[data-theme=fire] .auth-hero h1 em{color:color-mix(in srgb, var(--accent-hover) 72%, var(--brand-cream));font-style:italic}:root[data-theme=fire] .auth-feature-card,[data-theme=fire] .auth-feature-card{border-color:color-mix(in srgb, var(--accent) 22%, var(--border-color));background:linear-gradient(180deg, #ffb3470f, transparent 38%), color-mix(in srgb, var(--surface-raised) 92%, var(--accent-soft))}:root[data-theme=fire] .auth-feature-card:hover,[data-theme=fire] .auth-feature-card:hover{border-color:color-mix(in srgb, var(--accent) 38%, var(--border-color));box-shadow:var(--shadow-soft), 0 0 24px #ff6b2b24}:root[data-theme=fire] .auth-card,[data-theme=fire] .auth-card{box-shadow:0 24px 56px #00000073,0 0 40px #ff450014,inset 0 1px #ffb3471a}:root[data-theme=fire] .auth-card:after,[data-theme=fire] .auth-card:after{content:"";opacity:.92;pointer-events:none;background:linear-gradient(90deg,#8b2500,#ff4500,#ffb347,#ff4500) 0 0/200% 100%;border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:24px;right:24px}@media (prefers-reduced-motion:no-preference){:root[data-theme=fire] .auth-card:after,[data-theme=fire] .auth-card:after{animation:5s linear infinite fire-bar-shift}}@keyframes fire-bar-shift{0%{background-position:0%}to{background-position:200%}}:root[data-theme=fire] .auth-eyebrow,[data-theme=fire] .auth-eyebrow{color:var(--accent-hover);letter-spacing:.16em}:root[data-theme=fire] .auth-feature-card span,[data-theme=fire] .auth-feature-card span{filter:drop-shadow(0 0 8px #ff6b2b47)}:root[data-theme=fire] .home-greeting,[data-theme=fire] .home-greeting{color:var(--text-soft)}:root[data-theme=fire] .home-greeting strong,[data-theme=fire] .home-greeting strong{background:linear-gradient(120deg,#ffb347,#ff8c42);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600}:root[data-theme=fire] .home-hero,[data-theme=fire] .home-hero{box-shadow:var(--shadow), inset 0 1px 0 #ffb3471a, 0 0 0 1px #ff6b2b1f, 0 0 36px #ff450014;position:relative;overflow:hidden}:root[data-theme=fire] .home-hero:before,[data-theme=fire] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(75% 48% at 50% 112%,#ff6b2b47,#0000 58%),radial-gradient(30% 22% at 50% 100%,#ffe0a01f,#0000 55%),radial-gradient(50% 35% at 50% -8%,#ffb3470d,#0000 55%);position:absolute;top:0;bottom:0;left:0;right:0}@media (prefers-reduced-motion:no-preference){:root[data-theme=fire] .home-hero:before,[data-theme=fire] .home-hero:before{animation:4.5s ease-in-out infinite alternate fire-hearth-flicker}}@keyframes fire-hearth-flicker{0%{opacity:.82}to{opacity:1}}:root[data-theme=fire] .home-hero-top,[data-theme=fire] .home-hero-top,:root[data-theme=fire] .home-reading-card,[data-theme=fire] .home-reading-card,:root[data-theme=fire] .home-glance,[data-theme=fire] .home-glance{z-index:1;position:relative}:root[data-theme=fire] .home-hero-tagline,[data-theme=fire] .home-hero-tagline{color:color-mix(in srgb, var(--brand-gold) 48%, var(--text));display:inline-block}:root[data-theme=fire] .home-hero-tagline:after,[data-theme=fire] .home-hero-tagline:after{content:" 🔥";margin-left:2px;font-size:.88em;display:inline}:root[data-theme=fire] .home-hero-tagline:before,[data-theme=fire] .home-hero-tagline:before{content:"";opacity:.92;background:linear-gradient(90deg,#8b2500,#ff4500,#ffb347,#ff4500) 0 0/200% 100%;border-radius:999px;width:64px;height:3px;margin-bottom:10px;display:block;box-shadow:0 0 16px #ff6b2b66}@media (prefers-reduced-motion:no-preference){:root[data-theme=fire] .home-hero-tagline:before,[data-theme=fire] .home-hero-tagline:before{animation:4s linear infinite fire-bar-shift}}:root[data-theme=fire] .home-reading-card,[data-theme=fire] .home-reading-card{border-color:color-mix(in srgb, var(--accent) 28%, var(--border-color));background:linear-gradient(180deg, #ffb34714, transparent 30%), color-mix(in srgb, var(--surface-raised) 94%, var(--accent-soft));box-shadow:inset 0 1px #ffb34724,0 10px 32px #00000052,0 0 28px #ff450014}:root[data-theme=fire] .reading-spotlight-inner,[data-theme=fire] .reading-spotlight-inner{border-color:color-mix(in srgb, var(--brand-orange) 32%, var(--reading-zone-border));box-shadow:inset 0 1px #ffb3471f,0 0 20px #ff6b2b14}:root[data-theme=fire] .reading-spotlight-label,[data-theme=fire] .reading-spotlight-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-hover);font-weight:800}:root[data-theme=fire] .home-glance--inset,[data-theme=fire] .home-glance--inset{border-top-color:color-mix(in srgb, var(--accent) 18%, var(--border-color))}:root[data-theme=fire] .home-glance-stat,[data-theme=fire] .home-glance-stat{background:linear-gradient(180deg, #ffb3470f, transparent 42%), color-mix(in srgb, var(--surface-raised) 88%, var(--accent-soft));transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);padding-left:46px;box-shadow:inset 0 1px #ffb34714}:root[data-theme=fire] .home-glance-stat:hover,[data-theme=fire] .home-glance-stat:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffb3471f,0 8px 24px #ff45001a}:root[data-theme=fire] .home-glance-icon,[data-theme=fire] .home-glance-icon{background:linear-gradient(180deg, #ffb34724, color-mix(in srgb, var(--accent-soft) 90%, transparent));border-radius:9px;place-items:center;width:28px;height:28px;font-size:.92rem;display:grid;top:10px;left:10px;box-shadow:inset 0 1px #ffb34726,0 0 12px #ff6b2b1a}:root[data-theme=fire] .home-glance-value,[data-theme=fire] .home-glance-value{background:linear-gradient(120deg,#ffb347,#ff8c42);color:#0000;-webkit-background-clip:text;background-clip:text}:root[data-theme=fire] .home-columns .goal-card,[data-theme=fire] .home-columns .goal-card,:root[data-theme=fire] .home-columns .card,[data-theme=fire] .home-columns .card{border-color:color-mix(in srgb, var(--accent) 26%, var(--border-color))}:root[data-theme=fire] .dock-link--accent,[data-theme=fire] .dock-link--accent{background:var(--primary-btn-bg);box-shadow:var(--primary-btn-shadow)}:root[data-theme=fire] .app-footer-cozy p,[data-theme=fire] .app-footer-cozy p{color:color-mix(in srgb, var(--brand-gold) 38%, var(--text-soft))}:root[data-theme=fire] .home-glance-stat:first-child,[data-theme=fire] .home-glance-stat:first-child{border-left:3px solid #ff4500}:root[data-theme=fire] .home-glance-stat:nth-child(2),[data-theme=fire] .home-glance-stat:nth-child(2){border-left:3px solid var(--brand-orange)}:root[data-theme=fire] .home-glance-stat:nth-child(3),[data-theme=fire] .home-glance-stat:nth-child(3){border-left:3px solid var(--brand-gold)}:root[data-theme=fire] .home-glance-stat:nth-child(4),[data-theme=fire] .home-glance-stat:nth-child(4){border-left:3px solid var(--brand-leaf)}:root[data-theme=fire] .filter-chip,[data-theme=fire] .filter-chip,:root[data-theme=fire] .status-chip,[data-theme=fire] .status-chip{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border-color));background:linear-gradient(180deg, #3a2218, var(--chip-bg))}:root[data-theme=fire] .progress-fill,[data-theme=fire] .progress-fill,:root[data-theme=fire] .bar-fill,[data-theme=fire] .bar-fill{box-shadow:inset 0 1px #ffe0a040,0 0 14px #ff6b2b38}:root[data-theme=fire] .app-footer-sunflower,[data-theme=fire] .app-footer-sunflower{filter:drop-shadow(0 0 10px #ff6b2b61)}:root[data-theme=mythical],[data-theme=mythical]{--font-display:"Cinzel", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:.08em;--heading-weight:600;--heading-transform:uppercase;--sanctuary-mark:"✧";--brand-gold:#f4cf6a;--brand-orange:#c77dff;--brand-green:#9be7c1;--brand-leaf:#77bfa3;--brand-cream:#f6e9ff;--brand-ink:#201036;--brand-violet:#9d5fd8;--brand-aurora:#5a8fd8;--page-bg:#0f0818;--page-bg-soft:#180f2d;--surface:#2e1b52;--surface-soft:#241640;--surface-raised:#f6e9ff;--surface-muted:#3c2467;--text:#f8edff;--text-soft:#d7c5eb;--text-inverse:#201036;--card-text:#201036;--card-text-soft:#4a3868;--accent:#f4cf6a;--accent-hover:#ffe49a;--accent-strong:#c77dff;--accent-soft:#f4cf6a2e;--accent-muted:#c77dff33;--success:#9be7c1;--success-soft:#9be7c129;--danger:#ff7a90;--danger-soft:#ff7a902e;--border-color:#f4cf6a38;--border-strong:#f4cf6a6b;--shadow-soft:0 2px 10px #00000061, 0 12px 28px #c77dff14;--shadow:0 8px 24px #0000007a, 0 20px 44px #c77dff1f;--shadow-strong:0 16px 40px #00000094, 0 32px 64px #c77dff29;--focus-ring:#f4cf6a9e;--overlay:#080410db;--card-bg:var(--surface-raised);--card-bg-soft:#ede0ff;--chip-bg:linear-gradient(180deg, #452b78, #2e1b52);--chip-text:var(--text);--radius-button:var(--radius-pill);--radius-card:18px;--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:2px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 62% 48% at 50% 42%, #9d5fd82e, transparent 58%), radial-gradient(ellipse 48% 38% at 50% 52%, transparent 40%, #f4cf6a1a 42%, transparent 44%), radial-gradient(ellipse 38% 28% at 18% 12%, #5a8fd838, transparent 58%), radial-gradient(ellipse 38% 28% at 82% 18%, #c77dff33, transparent 56%), radial-gradient(ellipse 52% 38% at 50% 108%, #9be7c11f, transparent 58%), linear-gradient(168deg, #29164b8c 0%, #180f2d47 42%, #0f08181f 100%);--page-sparkle:radial-gradient(1px 1px at 14% 22%, #f4cf6af2, transparent), radial-gradient(1px 1px at 28% 38%, #c77dffe6, transparent), radial-gradient(1.5px 1.5px at 42% 18%, #ffffffd9, transparent), radial-gradient(1px 1px at 56% 32%, #9be7c1cc, transparent), radial-gradient(1px 1px at 68% 48%, #f4cf6abf, transparent), radial-gradient(1px 1px at 82% 28%, #c77dffb3, transparent), radial-gradient(1px 1px at 22% 58%, #ffffffa6, transparent), radial-gradient(1px 1px at 48% 62%, #f4cf6a99, transparent), radial-gradient(1.5px 1.5px at 74% 72%, #c77dff8c, transparent), radial-gradient(1px 1px at 36% 78%, #9be7c180, transparent), radial-gradient(2px 2px at 50% 50%, #f4cf6a59, transparent);--page-overlay:linear-gradient(180deg, #29164b85 0%, #180f2d47 38%, #9be7c10f 100%);--page-glow-left:linear-gradient(90deg, #0f0818e0 0%, #5a8fd82e 10%, #c77dff1a 16%, transparent 30%);--page-glow-right:linear-gradient(270deg, #0f0818d9 0%, #c77dff29 10%, #f4cf6a14 16%, transparent 30%);--page-gradient:linear-gradient(165deg, #29164b 0%, #180f2d 45%, #0f0818 100%);--page-grain-opacity:.2;--page-grain-blend:soft-light;--page-firefly-opacity:.92;--card-sheen-top:#ffffff8c;--card-sheen-bottom:#20103614;--card-inner-highlight:0 1px 0 #ffffff9e inset;--button-primary-text:var(--brand-ink);--primary-btn-bg:linear-gradient(135deg, #ffe49a 0%, #f4cf6a 32%, #c77dff 68%, #9d5fd8 100%);--primary-btn-shadow:0 4px 16px #c77dff52, 0 0 28px #f4cf6a24, inset 0 1px 0 #ffffff6b;--nav-link-active-top:#ffe49a;--nav-link-active-bottom:#f4cf6a;--nav-link-active-text:var(--brand-ink);--nav-link-active-border:#c77dff61;--nav-link-active-shadow:0 4px 14px #c77dff3d, 0 0 20px #f4cf6a1f, inset 0 1px 0 #ffffff7a;--progress-fill:linear-gradient(90deg, #c77dff, #f4cf6a, #9be7c1);--shell-sidebar-bg:linear-gradient(180deg, #2e1b52 0%, #241640 48%, #180f2d 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #c77dff2e, transparent 58%);--shell-sidebar-border:#f4cf6a29;--shell-nook-bg:radial-gradient(ellipse 110% 80% at 50% 100%, #c77dff2e, transparent 55%), linear-gradient(148deg, #2e1b52fa, #180f2df5);--shell-nook-border:#f4cf6a47;--shell-logo-shadow:0 12px 36px #c77dff29;--shell-logo-glow:drop-shadow(0 0 20px #c77dff6b) drop-shadow(0 4px 12px #f4cf6a47);--spotlight-text:#f6e9ff;--spotlight-text-soft:#f6e9ffdb;--spotlight-overlay:linear-gradient(125deg, #0f0818f0 0%, #5a8fd8b8 38%, #c77dff8c 72%, #f4cf6a6b 100%);--spotlight-backdrop-opacity:.54;--spotlight-border:#f4cf6a61;--spotlight-glow:0 20px 48px #00000073, 0 0 36px #c77dff2e;--spotlight-label-color:#f4cf6a;--reading-zone-bg:radial-gradient(ellipse 90% 55% at 50% 0%, #c77dff24, transparent 58%), linear-gradient(175deg, #faf5ff, #f6e9ff 48%, #ede0ff);--reading-zone-border:color-mix(in srgb, var(--brand-gold) 32%, #c77dff47);--input-bg:#ffffffb8;--input-border:color-mix(in srgb, var(--brand-gold) 28%, #c77dff38);--input-text:var(--card-text);--input-placeholder:#4a38688c;--form-field-bg:#ffffffb8;--form-field-border:color-mix(in srgb, var(--brand-gold) 28%, #c77dff38);--form-field-text:var(--card-text);--form-field-placeholder:#4a38688c;--theme-color-meta:#0f0818}:root[data-theme=mythical] :-webkit-any(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}:root[data-theme=mythical] :is(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}[data-theme=mythical] :-webkit-any(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}[data-theme=mythical] :is(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.settings-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}:root[data-theme=mythical] body:after,[data-theme=mythical] body:after{background:radial-gradient(38% 38% at 50% 52%,#c77dff1f,#0000 58%),radial-gradient(circle at 12% 28%,#f4cf6a73 0,#0000 2.4%),radial-gradient(circle at 88% 22%,#c77dff66 0,#0000 2.2%),radial-gradient(circle at 24% 68%,#ffffff59 0,#0000 1.6%),radial-gradient(circle at 72% 58%,#9be7c147 0,#0000 1.4%),radial-gradient(circle at 48% 38%,#f4cf6a38 0,#0000 1.2%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=mythical] body:after,[data-theme=mythical] body:after{animation:11s ease-in-out infinite alternate mythical-stardust}}@keyframes mythical-stardust{0%{opacity:calc(var(--page-firefly-opacity,.92) * .52);transform:translateY(0)scale(1)}to{opacity:var(--page-firefly-opacity,.92);transform:translateY(-8px)scale(1.02)}}:root[data-theme=mythical] .page-header h2,[data-theme=mythical] .page-header h2{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(118deg,#f8edff 0%,#f4cf6a 28%,#c77dff 52%,#9be7c1 78%,#f4cf6a 100%);color:#0000;filter:drop-shadow(0 0 20px #c77dff47);-webkit-background-clip:text;background-clip:text;font-size:clamp(1.65rem,2.8vw,2.2rem)}:root[data-theme=mythical] .page-header p,[data-theme=mythical] .page-header p{color:var(--text-soft);font-style:italic}:root[data-theme=mythical] .card,[data-theme=mythical] .card,:root[data-theme=mythical] .goal-card,[data-theme=mythical] .goal-card,:root[data-theme=mythical] .chart-card,[data-theme=mythical] .chart-card,:root[data-theme=mythical] .insight-card,[data-theme=mythical] .insight-card{border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #c77dff47);background:linear-gradient(180deg, #ffffff94, #ede0ff38), var(--card-bg);box-shadow:var(--card-shadow), inset 0 0 0 1px #ffffff73, 0 0 32px #c77dff14}:root[data-theme=mythical] .card h2,[data-theme=mythical] .card h2,:root[data-theme=mythical] .card h3,[data-theme=mythical] .card h3{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=mythical] .primary-btn,[data-theme=mythical] .primary-btn,:root[data-theme=mythical] .primary-submit,[data-theme=mythical] .primary-submit{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;box-shadow:var(--primary-btn-shadow), 0 0 24px #c77dff2e;font-size:.88rem}:root[data-theme=mythical] .secondary-btn,[data-theme=mythical] .secondary-btn{border:1px solid color-mix(in srgb, var(--brand-gold) 32%, #c77dff47);color:var(--card-text);background:linear-gradient(#faf5ff,#ede0ff)}:root[data-theme=mythical] .app-sidebar,[data-theme=mythical] .app-sidebar{color:var(--text);--text-soft:#d7c5eb}:root[data-theme=mythical] .sidebar-nav-link,[data-theme=mythical] .sidebar-nav-link{color:#e8d8f8}:root[data-theme=mythical] .sidebar-nav-link:hover,[data-theme=mythical] .sidebar-nav-link:hover{color:#faf5ff;background:#c77dff1f}:root[data-theme=mythical] .sidebar-nav-link.active,[data-theme=mythical] .sidebar-nav-link.active,:root[data-theme=mythical] .sidebar-nav-link[aria-current=page],[data-theme=mythical] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #ffe49c6b, #c77dff2e), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 42%, #c77dff52);box-shadow:var(--nav-link-active-shadow);text-shadow:none}:root[data-theme=mythical] .app-sanctuary-nook,[data-theme=mythical] .app-sanctuary-nook{box-shadow:var(--shadow-soft), 0 0 32px #c77dff24;position:relative;overflow:hidden}:root[data-theme=mythical] .app-sanctuary-nook:before,[data-theme=mythical] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#c77dff38,#0000 62%),radial-gradient(60% 45% at 50% -20%,#f4cf6a1f,#0000 58%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=mythical] .app-sanctuary-name,[data-theme=mythical] .app-sanctuary-name{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(120deg,#f4cf6a,#c77dff,#9be7c1);color:#0000;-webkit-background-clip:text;background-clip:text}:root[data-theme=mythical] .app-sanctuary-tagline,[data-theme=mythical] .app-sanctuary-tagline{color:#d7c5eb}:root[data-theme=mythical] .app-user-card,[data-theme=mythical] .app-user-card{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #c77dff47);background:linear-gradient(180deg, #ffffffb8, #ede0ff6b), var(--surface-raised);box-shadow:0 0 24px #c77dff1a}:root[data-theme=mythical] .app-user-card .app-user-meta strong,[data-theme=mythical] .app-user-card .app-user-meta strong{color:var(--brand-ink);font-weight:800}:root[data-theme=mythical] .auth-card,[data-theme=mythical] .auth-card,:root[data-theme=mythical] .auth-feature-card,[data-theme=mythical] .auth-feature-card{border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #c77dff47);background:linear-gradient(180deg, #ffffff94, #ede0ff47), var(--surface-raised)}:root[data-theme=mythical] .auth-card:after,[data-theme=mythical] .auth-card:after{content:"";opacity:.95;pointer-events:none;background:linear-gradient(90deg,#9d5fd8,#f4cf6a,#9be7c1,#c77dff) 0 0/200% 100%;border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:24px;right:24px}@media (prefers-reduced-motion:no-preference){:root[data-theme=mythical] .auth-card:after,[data-theme=mythical] .auth-card:after{animation:5s linear infinite mythical-rune-shift}}@keyframes mythical-rune-shift{0%{background-position:0%}to{background-position:200%}}:root[data-theme=mythical] .auth-eyebrow,[data-theme=mythical] .auth-eyebrow{color:#7a4a9a;letter-spacing:.16em;text-transform:uppercase;font-family:var(--font-display)}:root[data-theme=mythical] .auth-card h2,[data-theme=mythical] .auth-card h2,:root[data-theme=mythical] .auth-form label,[data-theme=mythical] .auth-form label{color:var(--brand-ink)}:root[data-theme=mythical] .home-hero,[data-theme=mythical] .home-hero{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #c77dff47);background:radial-gradient(ellipse 75% 50% at 100% 0%, #c77dff1f, transparent 58%), linear-gradient(180deg, #ffffff94, #ede0ff47), var(--surface-raised);box-shadow:var(--shadow), 0 0 48px #c77dff1a}:root[data-theme=mythical] .home-greeting strong,[data-theme=mythical] .home-greeting strong{color:var(--brand-ink);background:0 0;-webkit-background-clip:unset;background-clip:unset}:root[data-theme=mythical] .home-hero-tagline,[data-theme=mythical] .home-hero-tagline{color:var(--brand-ink);font-family:var(--font-display);letter-spacing:.04em}:root[data-theme=mythical] .home-hero-tagline:after,[data-theme=mythical] .home-hero-tagline:after{content:" ✧"}:root[data-theme=mythical] .home-reading-card,[data-theme=mythical] .home-reading-card,:root[data-theme=mythical] .home-panel,[data-theme=mythical] .home-panel,:root[data-theme=mythical] .home-glance-stat,[data-theme=mythical] .home-glance-stat,:root[data-theme=mythical] .onboarding-guide,[data-theme=mythical] .onboarding-guide{border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #c77dff3d);background:linear-gradient(180deg, #ffffff85, #ede0ff2e), var(--surface-raised)}:root[data-theme=mythical] .home-glance-value,[data-theme=mythical] .home-glance-value{background:linear-gradient(120deg,#9d5fd8,#f4cf6a);color:#0000;-webkit-background-clip:text;background-clip:text}:root[data-theme=mythical] .home-panel-head h2,[data-theme=mythical] .home-panel-head h2,:root[data-theme=mythical] .onboarding-guide-head h2,[data-theme=mythical] .onboarding-guide-head h2{color:var(--brand-ink);font-family:var(--font-display);letter-spacing:.04em}:root[data-theme=mythical] .home-hero,[data-theme=mythical] .home-hero{position:relative;overflow:hidden}:root[data-theme=mythical] .home-hero:before,[data-theme=mythical] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(55% 42% at 100% 0,#c77dff29,#0000 58%),radial-gradient(42% 38% at 0 100%,#5a8fd81a,#0000 55%),radial-gradient(38% 28% at 50% 0,#f4cf6a14,#0000 52%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=mythical] .home-greeting,[data-theme=mythical] .home-greeting{color:var(--card-text-soft);font-family:var(--font-ui)}:root[data-theme=mythical] .home-hero-tagline:before,[data-theme=mythical] .home-hero-tagline:before{content:"";opacity:.92;background:linear-gradient(90deg,#9d5fd8,#f4cf6a,#9be7c1,#c77dff) 0 0/200% 100%;border-radius:2px;width:72px;height:3px;margin-bottom:10px;display:block;box-shadow:0 0 16px #c77dff52}@media (prefers-reduced-motion:no-preference){:root[data-theme=mythical] .home-hero-tagline:before,[data-theme=mythical] .home-hero-tagline:before{animation:4.5s linear infinite mythical-rune-shift}}:root[data-theme=mythical] .reading-spotlight,[data-theme=mythical] .reading-spotlight{color:var(--card-text)}:root[data-theme=mythical] .reading-spotlight-backdrop,[data-theme=mythical] .reading-spotlight-backdrop{display:none}:root[data-theme=mythical] .reading-spotlight-inner,[data-theme=mythical] .reading-spotlight-inner{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #c77dff47);background:radial-gradient(ellipse 70% 50% at 0% 0%, #c77dff1f, transparent 58%), linear-gradient(175deg, #ffffff94, #ede0ff47), var(--surface-raised);box-shadow:inset 0 1px #ffffff8c,0 8px 32px #c77dff1f}:root[data-theme=mythical] .reading-spotlight-label,[data-theme=mythical] .reading-spotlight-label{color:#6b3a9a;font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-weight:700}:root[data-theme=mythical] .reading-spotlight-copy h2,[data-theme=mythical] .reading-spotlight-copy h2{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=mythical] .reading-spotlight-author,[data-theme=mythical] .reading-spotlight-author,:root[data-theme=mythical] .reading-spotlight-detail,[data-theme=mythical] .reading-spotlight-detail{color:var(--card-text-soft)}:root[data-theme=mythical] .reading-spotlight-meta span,[data-theme=mythical] .reading-spotlight-meta span{color:var(--card-text-soft);border-color:color-mix(in srgb, var(--brand-gold) 22%, #c77dff2e);background:#ffffff7a}:root[data-theme=mythical] .reading-spotlight-bar,[data-theme=mythical] .reading-spotlight-bar{background:#6b3a9a24}:root[data-theme=mythical] .home-goals-tabs,[data-theme=mythical] .home-goals-tabs{border-color:color-mix(in srgb, var(--brand-gold) 20%, #c77dff2e);background:#ffffff6b}:root[data-theme=mythical] .home-goals-tabs button,[data-theme=mythical] .home-goals-tabs button{color:var(--card-text-soft)}:root[data-theme=mythical] .home-goals-tabs button.is-active,[data-theme=mythical] .home-goals-tabs button.is-active{color:var(--brand-ink);background:var(--surface-raised);box-shadow:inset 0 1px #ffffff8c}:root[data-theme=mythical] .home-goal-bar,[data-theme=mythical] .home-goal-bar{border-color:color-mix(in srgb, var(--brand-gold) 18%, #c77dff24);background:#ffffff73}:root[data-theme=mythical] .home-goal-bar-label,[data-theme=mythical] .home-goal-bar-label,:root[data-theme=mythical] .home-goal-bar-head strong,[data-theme=mythical] .home-goal-bar-head strong{color:var(--brand-ink)}:root[data-theme=mythical] .home-goal-bar-target,[data-theme=mythical] .home-goal-bar-target,:root[data-theme=mythical] .home-goal-bar-percent,[data-theme=mythical] .home-goal-bar-percent,:root[data-theme=mythical] .home-glance-label,[data-theme=mythical] .home-glance-label{color:var(--card-text-soft)}:root[data-theme=mythical] .home-session-row strong,[data-theme=mythical] .home-session-row strong{color:var(--brand-ink)}:root[data-theme=mythical] .home-session-row p,[data-theme=mythical] .home-session-row p,:root[data-theme=mythical] .home-session-row time,[data-theme=mythical] .home-session-row time{color:var(--card-text-soft)}:root[data-theme=mythical] .home-text-link,[data-theme=mythical] .home-text-link{color:#7a48b8}:root[data-theme=mythical] .home-welcome-card,[data-theme=mythical] .home-welcome-card,:root[data-theme=mythical] .home-reading-idle,[data-theme=mythical] .home-reading-idle{border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #c77dff3d);background:linear-gradient(180deg, #ffffff85, #ede0ff2e), var(--surface-raised)}:root[data-theme=mythical] .auth-feature-card strong,[data-theme=mythical] .auth-feature-card strong{color:var(--brand-ink);font-family:var(--font-ui);text-transform:none}:root[data-theme=mythical] .auth-feature-card p,[data-theme=mythical] .auth-feature-card p,:root[data-theme=mythical] .auth-card .muted-text,[data-theme=mythical] .auth-card .muted-text{color:var(--card-text-soft)}:root[data-theme=mythical] .auth-card .text-button,[data-theme=mythical] .auth-card .text-button,:root[data-theme=mythical] .auth-card .support-email-link,[data-theme=mythical] .auth-card .support-email-link{color:#7a48b8}:root[data-theme=mythical] .month-card,[data-theme=mythical] .month-card{background:linear-gradient(180deg, #ffffff14, #ede0ff0a), var(--surface-soft);border-color:color-mix(in srgb, var(--brand-gold) 18%, #c77dff29)}:root[data-theme=mythical] .month-card h4,[data-theme=mythical] .month-card h4{color:var(--text)}:root[data-theme=mythical] .calendar-day,[data-theme=mythical] .calendar-day{color:var(--text-soft);background:#0f081873}:root[data-theme=mythical] .calendar-day.read-light,[data-theme=mythical] .calendar-day.read-light{color:var(--text);background:#c77dff52}:root[data-theme=mythical] .reading-log-item,[data-theme=mythical] .reading-log-item{border-color:color-mix(in srgb, var(--brand-gold) 16%, #c77dff24);background:#ffffff0f}:root[data-theme=mythical] .settings-header p,[data-theme=mythical] .settings-header p{color:var(--text-soft)}:root[data-theme=mythical] .settings-contents,[data-theme=mythical] .settings-contents{border:1px solid color-mix(in srgb, var(--brand-gold) 24%, #c77dff47);box-shadow:var(--shadow-soft), inset 0 1px 0 #f4cf6a0f;background:radial-gradient(80% 60% at 50% 0,#c77dff24,#0000 58%),linear-gradient(#2e1b52,#241640)}:root[data-theme=mythical] .settings-contents p,[data-theme=mythical] .settings-contents p{color:var(--brand-gold);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}:root[data-theme=mythical] .settings-contents a,[data-theme=mythical] .settings-contents a{color:var(--text);background:#0f08186b;border-color:#c77dff24}:root[data-theme=mythical] .settings-contents a:hover,[data-theme=mythical] .settings-contents a:hover{border-color:color-mix(in srgb, var(--brand-gold) 42%, #c77dff52);background:#c77dff24}:root[data-theme=mythical] .settings-card.settings-card,[data-theme=mythical] .settings-card.settings-card{border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #c77dff47);background:radial-gradient(ellipse 55% 42% at 100% 0%, #c77dff1a, transparent 58%), linear-gradient(180deg, #ffffff94, #ede0ff38), var(--surface-raised);box-shadow:var(--shadow), inset 0 1px 0 #ffffff8c;position:relative;overflow:hidden}:root[data-theme=mythical] .settings-card.settings-card:before,[data-theme=mythical] .settings-card.settings-card:before{content:"";pointer-events:none;background:radial-gradient(42% 32% at 0 100%,#5a8fd814,#0000 58%),radial-gradient(38% 28% at 50% 0,#f4cf6a0f,#0000 52%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=mythical] .settings-card-header h3,[data-theme=mythical] .settings-card-header h3{z-index:1;color:var(--brand-ink);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;position:relative}:root[data-theme=mythical] .settings-card-header p,[data-theme=mythical] .settings-card-header p{z-index:1;color:var(--card-text-soft);position:relative}:root[data-theme=mythical] .settings-card .soft-label,[data-theme=mythical] .settings-card .soft-label{color:#6b3a9a;letter-spacing:.14em}:root[data-theme=mythical] .settings-profile-hero,[data-theme=mythical] .settings-profile-hero{z-index:1;border:1px solid color-mix(in srgb, var(--brand-gold) 22%, #c77dff33);background:linear-gradient(#ffffff6b,#ede0ff24),#ede0ff;position:relative}:root[data-theme=mythical] .settings-card input,[data-theme=mythical] .settings-card select,[data-theme=mythical] .settings-card textarea,:root[data-theme=mythical] .settings-card label,[data-theme=mythical] .settings-card label{color:var(--card-text)}:root[data-theme=mythical] .settings-card input,[data-theme=mythical] .settings-card select,[data-theme=mythical] .settings-card textarea{border-color:color-mix(in srgb, var(--brand-gold) 24%, #c77dff33);color:var(--card-text);background:#ffffffb8}:root[data-theme=mythical] .theme-picker legend,[data-theme=mythical] .theme-picker legend{color:var(--brand-ink);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase}:root[data-theme=mythical] .theme-picker-note,[data-theme=mythical] .theme-picker-note{color:var(--card-text-soft)}:root[data-theme=mythical] .theme-picker-card,[data-theme=mythical] .theme-picker-card{color:var(--text);border:1px solid color-mix(in srgb, var(--brand-gold) 20%, #c77dff47);box-shadow:var(--shadow-soft), inset 0 1px 0 #f4cf6a0f;background:radial-gradient(80% 70% at 50% 0,#c77dff24,#0000 58%),linear-gradient(#352060,#2e1b52)}:root[data-theme=mythical] .theme-picker-card strong,[data-theme=mythical] .theme-picker-card strong{color:var(--brand-gold);font-family:var(--font-display);letter-spacing:.04em;font-size:.88rem}:root[data-theme=mythical] .theme-picker-card span:last-child,[data-theme=mythical] .theme-picker-card span:last-child{color:var(--text-soft)}:root[data-theme=mythical] .theme-picker-card:hover,[data-theme=mythical] .theme-picker-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 42%, #c77dff61);box-shadow:var(--shadow-soft), 0 0 24px #c77dff29}:root[data-theme=mythical] .theme-picker-card.is-selected,[data-theme=mythical] .theme-picker-card.is-selected{border-color:var(--brand-gold);outline-color:var(--brand-gold);box-shadow:0 0 0 1px #c77dff52, 0 0 28px #f4cf6a2e, var(--shadow-soft)}:root[data-theme=mythical] .settings-data-panel,[data-theme=mythical] .settings-data-panel,:root[data-theme=mythical] .settings-warning-card,[data-theme=mythical] .settings-warning-card,:root[data-theme=mythical] .settings-goal-group,[data-theme=mythical] .settings-goal-group{border-color:color-mix(in srgb, var(--brand-gold) 18%, #c77dff29);background:#ffffff6b}:root[data-theme=mythical] .settings-data-panel h4,[data-theme=mythical] .settings-data-panel h4,:root[data-theme=mythical] .settings-warning-card strong,[data-theme=mythical] .settings-warning-card strong,:root[data-theme=mythical] .settings-goal-group h4,[data-theme=mythical] .settings-goal-group h4{color:var(--brand-ink)}:root[data-theme=mythical] .settings-data-panel p,[data-theme=mythical] .settings-data-panel p,:root[data-theme=mythical] .settings-warning-card p,[data-theme=mythical] .settings-warning-card p{color:var(--card-text-soft)}:root[data-theme=mythical] .card input,[data-theme=mythical] .card input,:root[data-theme=mythical] .card select,[data-theme=mythical] .card select,:root[data-theme=mythical] .card textarea,[data-theme=mythical] .card textarea,:root[data-theme=mythical] .form-card input,[data-theme=mythical] .form-card input,:root[data-theme=mythical] .form-card select,[data-theme=mythical] .form-card select,:root[data-theme=mythical] .form-card textarea,[data-theme=mythical] .form-card textarea{border-color:color-mix(in srgb, var(--brand-gold) 24%, #c77dff33);color:var(--card-text);background:#ffffffb8}:root[data-theme=mythical] .card label,[data-theme=mythical] .card label,:root[data-theme=mythical] .form-card label,[data-theme=mythical] .form-card label{color:var(--card-text-soft)}:root[data-theme=water],[data-theme=water]{--font-display:"Lora", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:-.01em;--heading-weight:600;--heading-transform:none;--sanctuary-mark:"🫧";--brand-gold:#f6d36d;--brand-orange:#f0a25f;--brand-green:#217c8c;--brand-leaf:#4ea7b8;--brand-cream:#eafaff;--brand-sea:#8cc9d6;--brand-deep:#145a66;--page-bg:#9fd4e2;--page-bg-soft:#e8f8fc;--surface:#dff5f8e6;--surface-soft:#b9e4ecd6;--surface-raised:#fafefff5;--surface-muted:#8cc9d6;--text:#0a2a32;--text-soft:#3f6670;--text-inverse:#f5fdff;--accent:#217c8c;--accent-hover:#2a96a8;--accent-strong:#145a66;--accent-soft:#4ea7b83d;--accent-muted:#f6d36d52;--success:#217c8c;--success-soft:#217c8c29;--danger:#b0525e;--danger-soft:#ffe1e5;--border-color:#217c8c3d;--border-strong:#217c8c70;--shadow-soft:0 2px 10px #145a661a, 0 12px 28px #4ea7b81f;--shadow:0 8px 24px #145a6624, 0 20px 44px #4ea7b81a;--shadow-strong:0 16px 40px #0d2f382e, 0 32px 64px #217c8c1f;--focus-ring:#4ea7b89e;--overlay:#0a2a328c;--radius-button:var(--radius-pill);--radius-card:22px;--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 90% 42% at 50% -18%, #ffffffb8, transparent 62%), radial-gradient(ellipse 28% 22% at 72% 8%, #f6d36d61, transparent 68%), radial-gradient(ellipse 18% 14% at 68% 6%, #ffffff8c, transparent 72%), radial-gradient(ellipse 55% 38% at 50% 108%, #217c8c47, transparent 58%), radial-gradient(ellipse 38% 28% at 50% 102%, #4ea7b838, transparent 54%), radial-gradient(ellipse 22% 18% at 12% 88%, #b9e4ec59, transparent 58%), radial-gradient(ellipse 22% 18% at 88% 86%, #8cc9d652, transparent 56%), radial-gradient(ellipse 30% 20% at 8% 42%, #4ea7b81a, transparent 58%), radial-gradient(ellipse 28% 18% at 92% 38%, #f6d36d14, transparent 56%), radial-gradient(ellipse 40% 12% at 50% 72%, #ffffff2e, transparent 62%);--page-sparkle:radial-gradient(1px 1px at 18% 72%, #ffffffe6, transparent), radial-gradient(1px 1px at 42% 84%, #b9e4ecd9, transparent), radial-gradient(1px 1px at 64% 68%, #f6d36dbf, transparent), radial-gradient(1px 1px at 78% 52%, #ffffffb3, transparent), radial-gradient(1.5px 1.5px at 28% 58%, #4ea7b8a6, transparent), radial-gradient(1px 1px at 52% 38%, #fffc, transparent), radial-gradient(1px 1px at 86% 78%, #b9e4ecb3, transparent), radial-gradient(1px 1px at 12% 34%, #f6d36d8c, transparent), radial-gradient(1px 1px at 70% 24%, #ffffffa6, transparent), radial-gradient(1.5px 1.5px at 36% 88%, #4ea7b899, transparent);--page-overlay:linear-gradient(180deg, #ffffff6b 0%, #ecfbff2e 28%, #cfeaf114 55%, #a8d8e624 100%);--page-glow-left:linear-gradient(90deg, #145a6638 0%, #217c8c24 6%, #4ea7b81a 12%, #b9e4ec14 18%, transparent 32%);--page-glow-right:linear-gradient(270deg, #145a6633 0%, #217c8c1f 6%, #4ea7b817 12%, #f6d36d0f 18%, transparent 32%);--page-gradient:linear-gradient(168deg, #f5fdff 0%, #ecfbff 22%, #e0f4f8 48%, #cfeaf1 72%, #a8d8e6 100%);--page-grain-opacity:.1;--page-grain-blend:overlay;--page-firefly-opacity:.68;--card-sheen-top:#ffffff94;--card-sheen-bottom:#217c8c0d;--card-inner-highlight:0 1px 0 #ffffffb8 inset;--button-primary-text:var(--text-inverse);--primary-btn-bg:linear-gradient(155deg, #b9e4ec 0%, #4ea7b8 22%, #217c8c 52%, #145a66 82%, #0a2a32 100%);--primary-btn-shadow:0 4px 16px #217c8c52, 0 0 24px #4ea7b824, inset 0 1px 0 #ffffff6b;--nav-link-active-top:#b9e4ec;--nav-link-active-bottom:#217c8c;--nav-link-active-text:var(--text-inverse);--nav-link-active-border:#f6d36d61;--nav-link-active-shadow:0 4px 14px #217c8c42, 0 0 20px #4ea7b81f, inset 0 1px 0 #ffffff61;--chip-bg:linear-gradient(180deg, #e8f8fc, #b9e4ec);--progress-fill:linear-gradient(90deg, #b9e4ec, #4ea7b8, #217c8c, #f6d36d);--shell-sidebar-bg:linear-gradient(180deg, #f5fdff 0%, #e8f8fc 45%, #d8eef8 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #4ea7b82e, transparent 58%);--shell-sidebar-border:#4ea7b847;--shell-nook-bg:radial-gradient(ellipse 110% 80% at 50% 100%, #4ea7b838, transparent 55%), linear-gradient(148deg, #fafefffa, #dff5f8f5);--shell-nook-border:#4ea7b861;--shell-logo-shadow:0 12px 36px #217c8c24;--shell-logo-glow:drop-shadow(0 0 16px #4ea7b86b) drop-shadow(0 4px 12px #217c8c2e);--spotlight-text:#f5fdff;--spotlight-text-soft:#f5fdffdb;--spotlight-overlay:linear-gradient(125deg, #0a2a32eb 0%, #145a66c7 42%, #217c8c9e 100%);--spotlight-backdrop-opacity:.44;--spotlight-border:#b9e4ec6b;--spotlight-glow:0 20px 48px #145a6638, 0 0 32px #4ea7b829;--spotlight-label-color:#f6d36d;--reading-zone-bg:radial-gradient(ellipse 105% 65% at 50% 115%, #4ea7b838, transparent 52%), radial-gradient(ellipse 50% 38% at 50% -12%, #ffffff8c, transparent 55%), linear-gradient(175deg, #f5fdff, #e8f8fc 48%, #cfeaf1);--reading-zone-border:color-mix(in srgb, var(--brand-leaf) 38%, var(--border-color));--theme-color-meta:#cfeaf1}:root[data-theme=water] body:after,[data-theme=water] body:after{background:radial-gradient(10% 88% at 0 92%,#4ea7b82e,#0000 72%),radial-gradient(10% 88% at 100% 90%,#b9e4ec29,#0000 72%),radial-gradient(circle at 50% 98%,#ffffff6b 0,#0000 4%),radial-gradient(circle at 44% 92%,#b9e4ec59 0,#0000 2.8%),radial-gradient(circle at 58% 94%,#ffffff47 0,#0000 2.4%),radial-gradient(circle at 22% 82%,#4ea7b852 0,#0000 2.2%),radial-gradient(circle at 78% 78%,#f6d36d3d 0,#0000 2%),radial-gradient(circle at 34% 68%,#ffffff38 0,#0000 1.4%),radial-gradient(circle at 66% 58%,#b9e4ec33 0,#0000 1.2%),radial-gradient(circle at 48% 48%,#ffffff29 0,#0000 1%),radial-gradient(circle at 18% 38%,#4ea7b824 0,#0000 .9%),radial-gradient(circle at 82% 32%,#f6d36d1f 0,#0000 .9%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=water] body:after,[data-theme=water] body:after{animation:12s ease-in-out infinite alternate water-bubble-rise}}@keyframes water-bubble-rise{0%{opacity:calc(var(--page-firefly-opacity,.68) * .55);transform:translateY(0)translate(0)}to{opacity:var(--page-firefly-opacity,.68);transform:translateY(-8px)translate(3px)}}:root[data-theme=water] .page-header h2,[data-theme=water] .page-header h2{font-family:var(--font-display);background:linear-gradient(118deg,#145a66 0%,#217c8c 28%,#4ea7b8 52%,#8cc9d6 72%,#f6d36d 100%);color:#0000;filter:drop-shadow(0 2px 12px #4ea7b82e);-webkit-background-clip:text;background-clip:text;font-style:italic}:root[data-theme=water] .page-header p,[data-theme=water] .page-header p{color:var(--text-soft);letter-spacing:.02em;font-size:1.04rem}:root[data-theme=water] .card,[data-theme=water] .card,:root[data-theme=water] .goal-card,[data-theme=water] .goal-card,:root[data-theme=water] .chart-card,[data-theme=water] .chart-card,:root[data-theme=water] .insight-card,[data-theme=water] .insight-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-color:color-mix(in srgb, var(--accent) 26%, var(--border-color));background:linear-gradient(180deg, #ffffff85, #ffffff1f), var(--card-gradient,none), var(--card-bg,var(--surface-raised));box-shadow:var(--card-shadow), 0 0 0 1px #ffffff61, 0 0 24px #4ea7b814}:root[data-theme=water] .card:hover,[data-theme=water] .card:hover,:root[data-theme=water] .goal-card:hover,[data-theme=water] .goal-card:hover{border-color:color-mix(in srgb, var(--accent) 42%, var(--border-strong));box-shadow:var(--card-shadow), 0 0 0 1px #ffffff85, 0 14px 36px #217c8c24}:root[data-theme=water] .primary-btn,[data-theme=water] .primary-btn,:root[data-theme=water] .primary-submit,[data-theme=water] .primary-submit{text-shadow:0 1px #ffffff38;letter-spacing:.03em;position:relative;overflow:hidden}:root[data-theme=water] .primary-btn:after,[data-theme=water] .primary-btn:after,:root[data-theme=water] .primary-submit:after,[data-theme=water] .primary-submit:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff61 50%,#0000 65%);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-120%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=water] .primary-btn:after,[data-theme=water] .primary-btn:after,:root[data-theme=water] .primary-submit:after,[data-theme=water] .primary-submit:after{animation:3.2s ease-in-out infinite water-ripple-shimmer}}@keyframes water-ripple-shimmer{0%,to{opacity:.85;transform:translate(-120%)}50%{opacity:1;transform:translate(120%)}}:root[data-theme=water] .primary-btn:hover:not(:disabled),[data-theme=water] .primary-btn:hover:not(:disabled){box-shadow:0 8px 22px #217c8c61,0 0 0 1px #b9e4ec73,0 0 28px #4ea7b833,inset 0 1px #ffffff73}:root[data-theme=water] .secondary-btn,[data-theme=water] .secondary-btn{border:1px solid color-mix(in srgb, var(--accent) 32%, var(--border-color));background:linear-gradient(180deg, #f5fdff, var(--chip-bg));color:var(--text)}:root[data-theme=water] .sidebar-nav-link.active,[data-theme=water] .sidebar-nav-link.active,:root[data-theme=water] .sidebar-nav-link[aria-current=page],[data-theme=water] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #b9e4ec8c, #217c8c2e), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 38%, var(--border-color));box-shadow:var(--nav-link-active-shadow)}:root[data-theme=water] .app-sanctuary-nook,[data-theme=water] .app-sanctuary-nook{box-shadow:var(--shadow-soft), 0 0 28px #4ea7b824;position:relative;overflow:hidden}:root[data-theme=water] .app-sanctuary-nook:before,[data-theme=water] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#4ea7b838,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=water] .app-sanctuary-name,[data-theme=water] .app-sanctuary-name{background:linear-gradient(120deg,#217c8c,#4ea7b8);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:700}:root[data-theme=water] .app-sanctuary-nook:after,[data-theme=water] .app-sanctuary-nook:after{letter-spacing:.38em;color:color-mix(in srgb, var(--brand-leaf) 65%, transparent);font-size:.55rem}:root[data-theme=water] .app-sanctuary-sunflower,[data-theme=water] .app-sanctuary-sunflower{filter:drop-shadow(0 0 12px #4ea7b861)}:root[data-theme=water] .auth-logo-stage,[data-theme=water] .auth-logo-stage{width:-moz-fit-content;width:fit-content;max-width:100%;display:inline-block;position:relative}:root[data-theme=water] .auth-logo,[data-theme=water] .auth-logo{z-index:1;position:relative}:root[data-theme=water] .auth-logo-stage:before,[data-theme=water] .auth-logo-stage:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(72% 68% at 48% 55%,#b9e4ec6b,#4ea7b838 48%,#0000 72%);position:absolute;top:-14%;bottom:-6%;left:-10%;right:-10%}:root[data-theme=water] .auth-hero h1 em,[data-theme=water] .auth-hero h1 em{color:color-mix(in srgb, var(--accent-hover) 72%, var(--brand-cream));font-style:italic}:root[data-theme=water] .auth-feature-card,[data-theme=water] .auth-feature-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-color:color-mix(in srgb, var(--accent) 22%, var(--border-color));background:linear-gradient(180deg, #ffffff7a, #ffffff1f), color-mix(in srgb, var(--surface-raised) 92%, var(--accent-soft))}:root[data-theme=water] .auth-feature-card:hover,[data-theme=water] .auth-feature-card:hover{border-color:color-mix(in srgb, var(--accent) 38%, var(--border-color));box-shadow:var(--shadow-soft), 0 0 24px #4ea7b829}:root[data-theme=water] .auth-card,[data-theme=water] .auth-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 24px 56px #145a662e,0 0 40px #4ea7b81a,inset 0 1px #ffffff8c}:root[data-theme=water] .auth-card:after,[data-theme=water] .auth-card:after{content:"";opacity:.92;pointer-events:none;background:linear-gradient(90deg,#145a66,#4ea7b8,#f6d36d,#4ea7b8) 0 0/200% 100%;border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:24px;right:24px}@media (prefers-reduced-motion:no-preference){:root[data-theme=water] .auth-card:after,[data-theme=water] .auth-card:after{animation:5s linear infinite water-wave-shift}}@keyframes water-wave-shift{0%{background-position:0%}to{background-position:200%}}:root[data-theme=water] .auth-eyebrow,[data-theme=water] .auth-eyebrow{color:var(--accent-hover);letter-spacing:.16em}:root[data-theme=water] .auth-feature-card span,[data-theme=water] .auth-feature-card span{filter:drop-shadow(0 0 8px #4ea7b847)}:root[data-theme=water] .home-greeting,[data-theme=water] .home-greeting{color:var(--text-soft)}:root[data-theme=water] .home-greeting strong,[data-theme=water] .home-greeting strong{background:linear-gradient(120deg,#217c8c,#4ea7b8);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600}:root[data-theme=water] .home-hero,[data-theme=water] .home-hero{box-shadow:var(--shadow), inset 0 1px 0 #ffffff8c, 0 0 0 1px #4ea7b824, 0 0 36px #4ea7b81a;position:relative;overflow:hidden}:root[data-theme=water] .home-hero:before,[data-theme=water] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(75% 48% at 50% 112%,#4ea7b838,#0000 58%),radial-gradient(30% 22% at 50% 100%,#ffffff47,#0000 55%),radial-gradient(50% 35% at 50% -8%,#f6d36d1f,#0000 55%);position:absolute;top:0;bottom:0;left:0;right:0}@media (prefers-reduced-motion:no-preference){:root[data-theme=water] .home-hero:before,[data-theme=water] .home-hero:before{animation:5s ease-in-out infinite alternate water-surface-shimmer}}@keyframes water-surface-shimmer{0%{opacity:.78}to{opacity:1}}:root[data-theme=water] .home-hero-top,[data-theme=water] .home-hero-top,:root[data-theme=water] .home-reading-card,[data-theme=water] .home-reading-card,:root[data-theme=water] .home-glance,[data-theme=water] .home-glance{z-index:1;position:relative}:root[data-theme=water] .home-hero-tagline,[data-theme=water] .home-hero-tagline{color:color-mix(in srgb, var(--brand-deep) 42%, var(--text));font-style:italic;display:inline-block}:root[data-theme=water] .home-hero-tagline:after,[data-theme=water] .home-hero-tagline:after{content:" 🫧";margin-left:2px;font-size:.88em;display:inline}:root[data-theme=water] .home-hero-tagline:before,[data-theme=water] .home-hero-tagline:before{content:"";opacity:.92;background:linear-gradient(90deg,#145a66,#4ea7b8,#f6d36d,#4ea7b8) 0 0/200% 100%;border-radius:999px;width:64px;height:3px;margin-bottom:10px;display:block;box-shadow:0 0 16px #4ea7b852}@media (prefers-reduced-motion:no-preference){:root[data-theme=water] .home-hero-tagline:before,[data-theme=water] .home-hero-tagline:before{animation:4.5s linear infinite water-wave-shift}}:root[data-theme=water] .home-reading-card,[data-theme=water] .home-reading-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-color:color-mix(in srgb, var(--accent) 28%, var(--border-color));background:linear-gradient(180deg, #ffffff6b, transparent 30%), color-mix(in srgb, var(--surface-raised) 94%, var(--accent-soft));box-shadow:inset 0 1px #ffffff8c,0 10px 32px #145a661f,0 0 28px #4ea7b81a}:root[data-theme=water] .reading-spotlight-inner,[data-theme=water] .reading-spotlight-inner{border-color:color-mix(in srgb, var(--brand-leaf) 32%, var(--reading-zone-border));box-shadow:inset 0 1px #ffffffa6,0 0 20px #4ea7b81a}:root[data-theme=water] .reading-spotlight-label,[data-theme=water] .reading-spotlight-label{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-strong);font-weight:700}:root[data-theme=water] .home-glance--inset,[data-theme=water] .home-glance--inset{border-top-color:color-mix(in srgb, var(--accent) 18%, var(--border-color))}:root[data-theme=water] .home-glance-stat,[data-theme=water] .home-glance-stat{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(180deg, #ffffff61, transparent 42%), color-mix(in srgb, var(--surface-raised) 88%, var(--accent-soft));transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);padding-left:46px;box-shadow:inset 0 1px #ffffff7a}:root[data-theme=water] .home-glance-stat:hover,[data-theme=water] .home-glance-stat:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff94,0 8px 24px #217c8c1f}:root[data-theme=water] .home-glance-icon,[data-theme=water] .home-glance-icon{background:linear-gradient(180deg, #ffffff8c, color-mix(in srgb, var(--accent-soft) 90%, transparent));border-radius:9px;place-items:center;width:28px;height:28px;font-size:.92rem;display:grid;top:10px;left:10px;box-shadow:inset 0 1px #ffffff9e,0 0 12px #4ea7b824}:root[data-theme=water] .home-glance-value,[data-theme=water] .home-glance-value{background:linear-gradient(120deg,#217c8c,#4ea7b8);color:#0000;-webkit-background-clip:text;background-clip:text}:root[data-theme=water] .home-columns .goal-card,[data-theme=water] .home-columns .goal-card,:root[data-theme=water] .home-columns .card,[data-theme=water] .home-columns .card{border-color:color-mix(in srgb, var(--accent) 26%, var(--border-color))}:root[data-theme=water] .dock-link--accent,[data-theme=water] .dock-link--accent{background:var(--primary-btn-bg);box-shadow:var(--primary-btn-shadow)}:root[data-theme=water] .app-footer-cozy p,[data-theme=water] .app-footer-cozy p{color:color-mix(in srgb, var(--brand-deep) 38%, var(--text-soft))}:root[data-theme=water] .home-glance-stat:first-child,[data-theme=water] .home-glance-stat:first-child{border-left:3px solid #145a66}:root[data-theme=water] .home-glance-stat:nth-child(2),[data-theme=water] .home-glance-stat:nth-child(2){border-left:3px solid var(--brand-green)}:root[data-theme=water] .home-glance-stat:nth-child(3),[data-theme=water] .home-glance-stat:nth-child(3){border-left:3px solid var(--brand-leaf)}:root[data-theme=water] .home-glance-stat:nth-child(4),[data-theme=water] .home-glance-stat:nth-child(4){border-left:3px solid var(--brand-gold)}:root[data-theme=water] .filter-chip,[data-theme=water] .filter-chip,:root[data-theme=water] .status-chip,[data-theme=water] .status-chip{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border-color));background:linear-gradient(180deg, #f5fdff, var(--chip-bg))}:root[data-theme=water] .progress-fill,[data-theme=water] .progress-fill,:root[data-theme=water] .bar-fill,[data-theme=water] .bar-fill{box-shadow:inset 0 1px #ffffff59,0 0 14px #4ea7b833}:root[data-theme=water] .app-footer-sunflower,[data-theme=water] .app-footer-sunflower{filter:drop-shadow(0 0 10px #4ea7b852)}:root[data-theme=fantasy],[data-theme=fantasy]{--font-display:"Cinzel", "Spectral", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:.08em;--heading-weight:600;--heading-transform:uppercase;--sanctuary-mark:"🐉";--brand-gold:#ffd166;--brand-orange:#ef7b45;--brand-green:#4a7c59;--brand-leaf:#6fa87a;--brand-cream:#faf3df;--brand-ink:#2b180e;--brand-stone:#2a3142;--brand-dragon:#dc4a2a;--brand-arcane:#9d7cd8;--brand-torch:#ff965f;--brand-moss:#3d5a42;--page-bg:#0e1118;--page-bg-soft:#161b28;--surface:#222838;--surface-soft:#1a2030;--surface-raised:#faf3df;--surface-muted:#2e3548;--text:#ece6d8;--text-soft:#a89f92;--text-inverse:#1a1210;--card-text:#2b180e;--card-text-soft:#5c4a38;--accent:#ffd166;--accent-hover:#ffe49a;--accent-strong:#ef7b45;--accent-soft:#ffd16633;--accent-muted:#9d7cd838;--success:#6fa87a;--success-soft:#6fa87a2e;--danger:#dc4a2a;--danger-soft:#dc4a2a2e;--border-color:#ffd16638;--border-strong:#ffd1666b;--shadow-soft:0 2px 10px #00000061, 0 12px 28px #9d7cd814;--shadow:0 8px 24px #0000007a, 0 20px 44px #ffd16614;--shadow-strong:0 16px 40px #00000094, 0 32px 64px #9d7cd81f;--focus-ring:#ffd1669e;--overlay:#080a10d1;--card-bg:var(--surface-raised);--card-bg-soft:#f2e4c4;--chip-bg:linear-gradient(180deg, #2e3548, #222838);--chip-text:var(--text);--radius-button:10px;--radius-card:12px;--radius-chip:8px;--radius-nav:10px;--card-border-style:solid;--card-border-width:2px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 58% 58% at 50% 52%, #9d7cd829, transparent 58%), radial-gradient(ellipse 46% 46% at 50% 52%, transparent 40%, #ffd1661a 42%, transparent 44%), radial-gradient(ellipse 38% 38% at 50% 52%, transparent 46%, #9d7cd824 48%, transparent 50%), radial-gradient(ellipse 62% 52% at 0% 100%, #080a10f2, transparent 58%), radial-gradient(ellipse 62% 52% at 100% 100%, #080a10eb, transparent 58%), radial-gradient(ellipse 36% 32% at 3% 96%, #ef7b456b, transparent 62%), radial-gradient(ellipse 36% 32% at 97% 94%, #ffd1665c, transparent 60%), radial-gradient(ellipse 22% 20% at 5% 90%, #ff965f52, transparent 58%), radial-gradient(ellipse 22% 20% at 95% 88%, #ffd16647, transparent 56%), radial-gradient(ellipse 52% 36% at 50% -18%, #9d7cd82e, transparent 62%), linear-gradient(90deg, #0e1118b8 0%, #1a203061 5%, transparent 14%, transparent 86%, #1a203061 95%, #0e1118b8 100%);--page-sparkle:radial-gradient(1px 1px at 14% 72%, #ffd166e6, transparent), radial-gradient(1px 1px at 28% 58%, #9d7cd8d9, transparent), radial-gradient(1px 1px at 42% 82%, #ef7b45cc, transparent), radial-gradient(1px 1px at 56% 44%, #ffe49cbf, transparent), radial-gradient(1.5px 1.5px at 68% 68%, #9d7cd8cc, transparent), radial-gradient(1px 1px at 82% 54%, #ffd166b3, transparent), radial-gradient(1px 1px at 22% 32%, #ef7b4599, transparent), radial-gradient(1px 1px at 74% 28%, #ffd166a6, transparent), radial-gradient(1px 1px at 48% 18%, #9d7cd88c, transparent), radial-gradient(1.5px 1.5px at 36% 88%, #ffe49c99, transparent), radial-gradient(2px 2px at 50% 50%, #9d7cd859, transparent), radial-gradient(1px 1px at 88% 78%, #ffd16680, transparent);--page-overlay:linear-gradient(180deg, #161b288c 0%, #0e111847 35%, #0e11181f 62%, #ef7b4514 100%);--page-glow-left:linear-gradient(90deg, #0e1118d9 0%, #2a31428c 4%, #ef7b452e 9%, #ffd1661a 14%, #9d7cd80f 18%, transparent 32%);--page-glow-right:linear-gradient(270deg, #0e1118d1 0%, #2a314285 4%, #ffd16624 9%, #9d7cd814 14%, #ef7b450f 18%, transparent 32%);--page-gradient:linear-gradient(168deg, #1a2030 0%, #161b28 28%, #121722 55%, #0e1118 100%);--page-grain-opacity:.22;--page-grain-blend:soft-light;--page-firefly-opacity:.92;--card-sheen-top:#fff8dd8c;--card-sheen-bottom:#2b180814;--card-inner-highlight:0 1px 0 #fff8dda6 inset;--button-primary-text:var(--brand-ink);--primary-btn-bg:linear-gradient(155deg, #fff0c9 0%, #ffd166 22%, #ef7b45 52%, #b84a1f 82%, #6b2810 100%);--primary-btn-shadow:0 4px 16px #ffd16652, 0 0 28px #9d7cd824, inset 0 1px 0 #fff8dd7a;--nav-link-active-top:#ffe49a;--nav-link-active-bottom:#ffd166;--nav-link-active-text:var(--brand-ink);--nav-link-active-border:#9d7cd861;--nav-link-active-shadow:0 4px 14px #ffd16647, 0 0 0 1px #9d7cd838, inset 0 1px 0 #fff8dd6b;--progress-fill:linear-gradient(90deg, #9d7cd8, #4a7c59, #ffd166, #ef7b45);--shell-sidebar-bg:linear-gradient(180deg, #222838 0%, #1a2030 45%, #121722 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #ef7b452e, transparent 58%);--shell-sidebar-border:#ffd16629;--shell-nook-bg:radial-gradient(ellipse 110% 80% at 50% 100%, #ffd1662e, transparent 55%), radial-gradient(ellipse 80% 55% at 50% 0%, #9d7cd81f, transparent 58%), linear-gradient(148deg, #222838fa, #161b28f5);--shell-nook-border:#ffd16652;--shell-logo-shadow:0 12px 36px #9d7cd829;--shell-logo-glow:drop-shadow(0 0 18px #ffd1666b) drop-shadow(0 4px 12px #9d7cd847);--spotlight-text:#faf3df;--spotlight-text-soft:#faf3dfdb;--spotlight-overlay:linear-gradient(125deg, #0e1118f5 0%, #2a3142e0 38%, #9d7cd88c 72%, #ef7b457a 100%);--spotlight-backdrop-opacity:.54;--spotlight-border:#ffd16661;--spotlight-glow:0 20px 48px #00000073, 0 0 36px #9d7cd82e;--spotlight-label-color:#ffd166;--reading-zone-bg:radial-gradient(ellipse 105% 65% at 50% 115%, #ef7b451f, transparent 52%), radial-gradient(ellipse 55% 42% at 50% -15%, #9d7cd814, transparent 55%), linear-gradient(175deg, #faf3df, #f2e4c4 48%, #e8d4a8);--reading-zone-border:color-mix(in srgb, var(--brand-gold) 38%, #9d7cd838);--theme-color-meta:#0e1118}:root[data-theme=fantasy] :-webkit-any(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.theme-picker-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}:root[data-theme=fantasy] :is(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.theme-picker-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}[data-theme=fantasy] :-webkit-any(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.theme-picker-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}[data-theme=fantasy] :is(.app-user-card,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.auth-card,.auth-modal,.auth-feature-card,.card,.goal-card,.chart-card,.insight-card,.home-hero,.home-reading-card,.home-panel,.home-welcome-card,.home-reading-idle,.onboarding-guide,.home-glance-stat,.settings-profile-hero,.theme-picker-card){--text:var(--card-text);--text-soft:var(--card-text-soft);color:var(--card-text)}:root[data-theme=fantasy] body:after,[data-theme=fantasy] body:after{background:radial-gradient(16% 92% at 0 100%,#ef7b453d,#0000 72%),radial-gradient(16% 92% at 100% 100%,#ffd16638,#0000 72%),radial-gradient(38% 38%,#9d7cd814,#0000 62%),radial-gradient(circle at 6% 92%,#ff965f6b 0,#0000 4.5%),radial-gradient(circle at 94% 90%,#ffd1665c 0,#0000 4%),radial-gradient(circle at 16% 78%,#ffd1664d 0,#0000 2.6%),radial-gradient(circle at 84% 72%,#9d7cd847 0,#0000 2.4%),radial-gradient(circle at 32% 58%,#ffe49c38 0,#0000 1.5%),radial-gradient(circle at 68% 48%,#9d7cd833 0,#0000 1.3%),radial-gradient(circle at 48% 38%,#ffd16629 0,#0000 1.1%),radial-gradient(circle at 24% 28%,#ef7b4524 0,#0000 1%),radial-gradient(circle at 76% 22%,#9d7cd824 0,#0000 1%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=fantasy] body:after,[data-theme=fantasy] body:after{animation:12s ease-in-out infinite alternate fantasy-arcane-drift}}@keyframes fantasy-arcane-drift{0%{opacity:calc(var(--page-firefly-opacity,.82) * .48);transform:translateY(0)translate(0)}to{opacity:var(--page-firefly-opacity,.82);transform:translateY(-8px)translate(3px)}}:root[data-theme=fantasy] .page-header h2,[data-theme=fantasy] .page-header h2{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(118deg,#ece6d8 0%,#ffd166 28%,#ef7b45 52%,#9d7cd8 78%,#ffd166 100%);color:#0000;filter:drop-shadow(0 0 20px #ffd16647);-webkit-background-clip:text;background-clip:text}:root[data-theme=fantasy] .page-header p,[data-theme=fantasy] .page-header p{color:var(--text-soft);letter-spacing:.04em;font-size:1.02rem;font-style:italic}:root[data-theme=fantasy] .card,[data-theme=fantasy] .card,:root[data-theme=fantasy] .goal-card,[data-theme=fantasy] .goal-card,:root[data-theme=fantasy] .chart-card,[data-theme=fantasy] .chart-card,:root[data-theme=fantasy] .insight-card,[data-theme=fantasy] .insight-card{color:var(--card-text);border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #9d7cd847);background:linear-gradient(180deg, #fff8dd9e, #f2e4c438), var(--card-gradient,none), var(--card-bg,var(--surface-raised));box-shadow:var(--card-shadow), inset 0 0 0 1px #fff8dd73, 0 0 0 1px #9d7cd814, 0 0 32px #ffd1660f}:root[data-theme=fantasy] .card:hover,[data-theme=fantasy] .card:hover,:root[data-theme=fantasy] .goal-card:hover,[data-theme=fantasy] .goal-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 52%, var(--brand-arcane));box-shadow:var(--card-shadow), inset 0 0 0 1px #fff8dd8c, 0 0 0 1px #9d7cd82e, 0 14px 36px #ffd16624}:root[data-theme=fantasy] .card h2,[data-theme=fantasy] .card h2,:root[data-theme=fantasy] .card h3,[data-theme=fantasy] .card h3,:root[data-theme=fantasy] .card h4,[data-theme=fantasy] .card h4,:root[data-theme=fantasy] .goal-card h3,[data-theme=fantasy] .goal-card h3{color:var(--card-text)}:root[data-theme=fantasy] .card p,[data-theme=fantasy] .card p,:root[data-theme=fantasy] .goal-card p,[data-theme=fantasy] .goal-card p{color:var(--card-text-soft)}:root[data-theme=fantasy] .primary-btn,[data-theme=fantasy] .primary-btn,:root[data-theme=fantasy] .primary-submit,[data-theme=fantasy] .primary-submit{border:1px solid color-mix(in srgb, var(--brand-gold) 48%, var(--brand-arcane));text-shadow:0 1px #ffffff47;letter-spacing:.06em;text-transform:uppercase;font-family:var(--font-display);font-size:.88rem;position:relative;overflow:hidden}:root[data-theme=fantasy] .primary-btn:after,[data-theme=fantasy] .primary-btn:after,:root[data-theme=fantasy] .primary-submit:after,[data-theme=fantasy] .primary-submit:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#fff8dd7a 50%,#0000 65%);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-120%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=fantasy] .primary-btn:after,[data-theme=fantasy] .primary-btn:after,:root[data-theme=fantasy] .primary-submit:after,[data-theme=fantasy] .primary-submit:after{animation:3.4s ease-in-out infinite fantasy-seal-shimmer}}@keyframes fantasy-seal-shimmer{0%,to{opacity:.85;transform:translate(-120%)}50%{opacity:1;transform:translate(120%)}}:root[data-theme=fantasy] .primary-btn:hover:not(:disabled),[data-theme=fantasy] .primary-btn:hover:not(:disabled){box-shadow:0 8px 22px #ffd16661,0 0 0 1px #9d7cd861,0 0 32px #ffd16633,inset 0 1px #fff8dd8c}:root[data-theme=fantasy] .secondary-btn,[data-theme=fantasy] .secondary-btn{border:1px solid color-mix(in srgb, var(--brand-gold) 32%, var(--border-color));color:var(--card-text);background:linear-gradient(#faf3df,#f2e4c4)}:root[data-theme=fantasy] .sidebar-nav-link.active,[data-theme=fantasy] .sidebar-nav-link.active,:root[data-theme=fantasy] .sidebar-nav-link[aria-current=page],[data-theme=fantasy] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #ffe49c6b, #ffd16638), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 48%, var(--brand-arcane));box-shadow:var(--nav-link-active-shadow);color:var(--card-text)}:root[data-theme=fantasy] .app-sanctuary-nook,[data-theme=fantasy] .app-sanctuary-nook{box-shadow:var(--shadow-soft), 0 0 32px #9d7cd824, 0 0 48px #ffd16614;position:relative;overflow:hidden}:root[data-theme=fantasy] .app-sanctuary-nook:before,[data-theme=fantasy] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#ef7b4538,#0000 62%),radial-gradient(60% 45% at 50% -20%,#9d7cd829,#0000 58%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=fantasy] .app-sanctuary-name,[data-theme=fantasy] .app-sanctuary-name{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(120deg,#ffd166,#ef7b45,#9d7cd8);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:700}:root[data-theme=fantasy] .app-sanctuary-nook:after,[data-theme=fantasy] .app-sanctuary-nook:after{letter-spacing:.42em;color:color-mix(in srgb, var(--brand-gold) 72%, transparent);font-size:.52rem}:root[data-theme=fantasy] .app-sanctuary-sunflower,[data-theme=fantasy] .app-sanctuary-sunflower{filter:drop-shadow(0 0 14px #ffd1666b)}:root[data-theme=fantasy] .app-sidebar,[data-theme=fantasy] .app-sidebar{color:var(--text);--text-soft:#cfc6b8}:root[data-theme=fantasy] .sidebar-nav-label,[data-theme=fantasy] .sidebar-nav-label{color:#b8afa3}:root[data-theme=fantasy] .sidebar-nav-link,[data-theme=fantasy] .sidebar-nav-link{color:#ddd5c8}:root[data-theme=fantasy] .sidebar-nav-link:hover,[data-theme=fantasy] .sidebar-nav-link:hover{color:#faf3df;background:#ffd16614}:root[data-theme=fantasy] .sidebar-nav-link svg,[data-theme=fantasy] .sidebar-nav-link svg{opacity:.88}:root[data-theme=fantasy] .app-user-card,[data-theme=fantasy] .app-user-card{border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #9d7cd847);background:linear-gradient(180deg, #fff8ddc7, #f2e4c46b), var(--surface-raised);box-shadow:inset 0 1px #fff8ddb8,0 6px 20px #00000052}:root[data-theme=fantasy] .app-user-card:hover,[data-theme=fantasy] .app-user-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 48%, var(--brand-arcane));box-shadow:inset 0 1px #fff8ddd1,0 8px 24px #ffd16624}:root[data-theme=fantasy] .app-user-card .app-user-meta strong,[data-theme=fantasy] .app-user-card .app-user-meta strong{color:var(--brand-ink);font-weight:800}:root[data-theme=fantasy] .app-user-avatar,[data-theme=fantasy] .app-user-avatar{color:var(--brand-ink);border:1px solid color-mix(in srgb, var(--brand-gold) 38%, transparent);background:linear-gradient(#ffe49cc7,#ffd1666b)}:root[data-theme=fantasy] .app-signout,[data-theme=fantasy] .app-signout{color:#cfc6b8}:root[data-theme=fantasy] .app-signout:hover,[data-theme=fantasy] .app-signout:hover{color:#ffb4a0}:root[data-theme=fantasy] .auth-logo-stage,[data-theme=fantasy] .auth-logo-stage{width:-moz-fit-content;width:fit-content;max-width:100%;display:inline-block;position:relative}:root[data-theme=fantasy] .auth-logo,[data-theme=fantasy] .auth-logo{z-index:1;position:relative}:root[data-theme=fantasy] .auth-logo-stage:before,[data-theme=fantasy] .auth-logo-stage:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(72% 68% at 48% 55%,#ffd16647,#9d7cd82e 48%,#0000 72%);position:absolute;top:-14%;bottom:-6%;left:-10%;right:-10%}:root[data-theme=fantasy] .auth-hero h1,[data-theme=fantasy] .auth-hero h1{font-family:var(--font-display);letter-spacing:.06em}:root[data-theme=fantasy] .auth-hero h1 em,[data-theme=fantasy] .auth-hero h1 em{color:color-mix(in srgb, var(--brand-gold) 82%, var(--brand-arcane));font-style:normal}:root[data-theme=fantasy] .auth-feature-card,[data-theme=fantasy] .auth-feature-card{color:var(--card-text);border:2px solid color-mix(in srgb, var(--brand-gold) 28%, #9d7cd83d);background:linear-gradient(180deg, #fff8dd8c, #f2e4c42e), color-mix(in srgb, var(--surface-raised) 92%, var(--accent-soft));box-shadow:inset 0 0 0 1px #fff8dd61}:root[data-theme=fantasy] .auth-feature-card:hover,[data-theme=fantasy] .auth-feature-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 45%, var(--brand-arcane));box-shadow:var(--shadow-soft), inset 0 0 0 1px #fff8dd7a, 0 0 28px #9d7cd829}:root[data-theme=fantasy] .auth-card,[data-theme=fantasy] .auth-card{color:var(--card-text);border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #9d7cd847);background:linear-gradient(180deg, #fff8dd94, #f2e4c447), var(--surface-raised);box-shadow:0 24px 56px #0000006b,0 0 48px #9d7cd81f,inset 0 1px #fff8dd8c,inset 0 0 0 1px #ffffff38}:root[data-theme=fantasy] .auth-card:after,[data-theme=fantasy] .auth-card:after{content:"";opacity:.95;pointer-events:none;background:linear-gradient(90deg,#9d7cd8,#ffd166,#ef7b45,#dc4a2a,#ffd166) 0 0/200% 100%;border-radius:0 0 4px 4px;height:3px;position:absolute;top:0;left:24px;right:24px}@media (prefers-reduced-motion:no-preference){:root[data-theme=fantasy] .auth-card:after,[data-theme=fantasy] .auth-card:after{animation:5.5s linear infinite fantasy-rune-shift}}@keyframes fantasy-rune-shift{0%{background-position:0%}to{background-position:200%}}:root[data-theme=fantasy] .auth-eyebrow,[data-theme=fantasy] .auth-eyebrow{color:#6b4a12;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-family:var(--font-display);font-weight:700}:root[data-theme=fantasy] .auth-feature-card span,[data-theme=fantasy] .auth-feature-card span{filter:drop-shadow(0 0 10px #ffd16652)}:root[data-theme=fantasy] .auth-feature-card strong,[data-theme=fantasy] .auth-feature-card strong{color:var(--brand-ink);font-family:var(--font-ui);text-transform:none;letter-spacing:.01em;font-weight:800}:root[data-theme=fantasy] .auth-feature-grid .auth-feature-card:first-child strong,[data-theme=fantasy] .auth-feature-grid .auth-feature-card:first-child strong{color:#2d4a34}:root[data-theme=fantasy] .auth-feature-grid .auth-feature-card:nth-child(2) strong,[data-theme=fantasy] .auth-feature-grid .auth-feature-card:nth-child(2) strong{color:#5c4518}:root[data-theme=fantasy] .auth-feature-grid .auth-feature-card:nth-child(3) strong,[data-theme=fantasy] .auth-feature-grid .auth-feature-card:nth-child(3) strong{color:#7a3818}:root[data-theme=fantasy] .auth-feature-card p,[data-theme=fantasy] .auth-feature-card p{color:var(--card-text-soft)}:root[data-theme=fantasy] .auth-card h2,[data-theme=fantasy] .auth-card h2,:root[data-theme=fantasy] .auth-modal h2,[data-theme=fantasy] .auth-modal h2{color:var(--brand-ink);background:0 0;-webkit-background-clip:unset;background-clip:unset;filter:none;text-shadow:none}:root[data-theme=fantasy] .auth-card .muted-text,[data-theme=fantasy] .auth-card .muted-text,:root[data-theme=fantasy] .auth-modal .muted-text,[data-theme=fantasy] .auth-modal .muted-text{color:var(--card-text-soft)}:root[data-theme=fantasy] .auth-form label,[data-theme=fantasy] .auth-form label{color:var(--brand-ink);font-family:var(--font-ui);text-transform:none;letter-spacing:.01em;font-weight:700}:root[data-theme=fantasy] .auth-card .form-message,[data-theme=fantasy] .auth-card .form-message,:root[data-theme=fantasy] .auth-modal .form-message,[data-theme=fantasy] .auth-modal .form-message{color:var(--card-text)}:root[data-theme=fantasy] .auth-login-message,[data-theme=fantasy] .auth-login-message{color:var(--card-text);border:1px solid color-mix(in srgb, var(--brand-gold) 24%, transparent);background:#fff8ddb8}:root[data-theme=fantasy] .auth-card .text-button,[data-theme=fantasy] .auth-card .text-button,:root[data-theme=fantasy] .auth-modal .text-button,[data-theme=fantasy] .auth-modal .text-button{color:#9a4a18}:root[data-theme=fantasy] .auth-card .text-button:hover,[data-theme=fantasy] .auth-card .text-button:hover,:root[data-theme=fantasy] .auth-modal .text-button:hover,[data-theme=fantasy] .auth-modal .text-button:hover{color:#7a3818}:root[data-theme=fantasy] .auth-card .support-email-link,[data-theme=fantasy] .auth-card .support-email-link,:root[data-theme=fantasy] .auth-modal .support-email-link,[data-theme=fantasy] .auth-modal .support-email-link{color:#9a4a18}:root[data-theme=fantasy] .auth-signup-prompt p,[data-theme=fantasy] .auth-signup-prompt p,:root[data-theme=fantasy] .auth-support-note,[data-theme=fantasy] .auth-support-note,:root[data-theme=fantasy] .auth-field-hint,[data-theme=fantasy] .auth-field-hint,:root[data-theme=fantasy] .auth-signup-success-steps,[data-theme=fantasy] .auth-signup-success-steps,:root[data-theme=fantasy] .auth-signup-success-tip,[data-theme=fantasy] .auth-signup-success-tip,:root[data-theme=fantasy] .auth-signup-success-support,[data-theme=fantasy] .auth-signup-success-support,:root[data-theme=fantasy] .auth-card .soft-label,[data-theme=fantasy] .auth-card .soft-label,:root[data-theme=fantasy] .auth-modal .soft-label,[data-theme=fantasy] .auth-modal .soft-label{color:var(--card-text-soft)}:root[data-theme=fantasy] .auth-modal,[data-theme=fantasy] .auth-modal{color:var(--card-text);border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #9d7cd847);background:linear-gradient(180deg, #fff8dd94, #f2e4c447), var(--surface-raised);box-shadow:0 28px 80px #0000006b,0 0 48px #9d7cd81f,inset 0 1px #fff8dd8c}:root[data-theme=fantasy] .auth-modal-close,[data-theme=fantasy] .auth-modal-close{color:var(--brand-ink);background:#fff8dda6}:root[data-theme=fantasy] .auth-modal-close:hover,[data-theme=fantasy] .auth-modal-close:hover{background:#ffd16659}:root[data-theme=fantasy] .home-greeting,[data-theme=fantasy] .home-greeting{color:var(--card-text-soft);font-family:var(--font-ui)}:root[data-theme=fantasy] .home-greeting strong,[data-theme=fantasy] .home-greeting strong{background:0 0;-webkit-background-clip:unset;background-clip:unset;color:var(--brand-ink);font-weight:700}:root[data-theme=fantasy] .home-hero,[data-theme=fantasy] .home-hero{color:var(--card-text);background:radial-gradient(ellipse 75% 50% at 100% 0%, #ffd16624, transparent 58%), linear-gradient(180deg, #fff8dd9e, #f2e4c447), var(--surface-raised);border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #9d7cd847);box-shadow:var(--shadow), inset 0 1px 0 #fff8dd8c, 0 0 0 1px #9d7cd81f, 0 0 48px #ffd1661a;position:relative;overflow:hidden}:root[data-theme=fantasy] .home-hero:before,[data-theme=fantasy] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(38% 42% at 0 100%,#ef7b4547,#0000 58%),radial-gradient(38% 42% at 100% 100%,#ffd16638,#0000 56%),radial-gradient(55% 38% at 50% -12%,#9d7cd824,#0000 55%);position:absolute;top:0;bottom:0;left:0;right:0}@media (prefers-reduced-motion:no-preference){:root[data-theme=fantasy] .home-hero:before,[data-theme=fantasy] .home-hero:before{animation:4.2s ease-in-out infinite alternate fantasy-torch-flicker}}@keyframes fantasy-torch-flicker{0%{opacity:.72}to{opacity:1}}:root[data-theme=fantasy] .home-hero-top,[data-theme=fantasy] .home-hero-top,:root[data-theme=fantasy] .home-reading-card,[data-theme=fantasy] .home-reading-card,:root[data-theme=fantasy] .home-glance,[data-theme=fantasy] .home-glance{z-index:1;position:relative}:root[data-theme=fantasy] .home-hero-tagline,[data-theme=fantasy] .home-hero-tagline{color:var(--brand-ink);font-family:var(--font-display);letter-spacing:.03em;text-transform:none;font-size:clamp(1.35rem,2.4vw,1.85rem);font-style:normal;font-weight:600;display:inline-block}:root[data-theme=fantasy] .home-hero-tagline:after,[data-theme=fantasy] .home-hero-tagline:after{content:" 🐉";text-transform:none;margin-left:2px;font-size:.88em;display:inline}:root[data-theme=fantasy] .home-hero-tagline:before,[data-theme=fantasy] .home-hero-tagline:before{content:"";opacity:.95;background:linear-gradient(90deg,#9d7cd8,#ffd166,#ef7b45,#ffd166) 0 0/200% 100%;border-radius:2px;width:72px;height:3px;margin-bottom:10px;display:block;box-shadow:0 0 18px #ffd16661}@media (prefers-reduced-motion:no-preference){:root[data-theme=fantasy] .home-hero-tagline:before,[data-theme=fantasy] .home-hero-tagline:before{animation:4.5s linear infinite fantasy-rune-shift}}:root[data-theme=fantasy] .home-reading-card,[data-theme=fantasy] .home-reading-card{color:var(--card-text);border:2px solid color-mix(in srgb, var(--brand-gold) 30%, #9d7cd83d);background:linear-gradient(180deg, #fff8dd85, #f2e4c42e), var(--surface-raised);box-shadow:inset 0 1px #fff8dd8c,inset 0 0 0 1px #ffffff38,0 10px 32px #00000047,0 0 32px #9d7cd81a}:root[data-theme=fantasy] .reading-spotlight-inner,[data-theme=fantasy] .reading-spotlight-inner{border:2px solid color-mix(in srgb, var(--brand-gold) 36%, var(--reading-zone-border));box-shadow:inset 0 1px #fff8dd8c,0 0 24px #9d7cd81f}:root[data-theme=fantasy] .reading-spotlight-label,[data-theme=fantasy] .reading-spotlight-label{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-ink);font-weight:700}:root[data-theme=fantasy] .home-glance--inset,[data-theme=fantasy] .home-glance--inset{border-top-color:color-mix(in srgb, var(--brand-gold) 22%, var(--border-color))}:root[data-theme=fantasy] .home-glance-stat,[data-theme=fantasy] .home-glance-stat{color:var(--card-text);background:linear-gradient(180deg, #fff8dd7a, #f2e4c41f), var(--surface-raised);transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);padding-left:46px;box-shadow:inset 0 1px #fff8dd7a}:root[data-theme=fantasy] .home-glance-stat:hover,[data-theme=fantasy] .home-glance-stat:hover{transform:translateY(-1px);box-shadow:inset 0 1px #fff8dd94,0 8px 24px #ffd16624}:root[data-theme=fantasy] .home-glance-icon,[data-theme=fantasy] .home-glance-icon{background:linear-gradient(180deg, #ffe49c73, color-mix(in srgb, var(--accent-soft) 90%, transparent));border-radius:8px;place-items:center;width:28px;height:28px;font-size:.92rem;display:grid;top:10px;left:10px;box-shadow:inset 0 1px #fff8dd6b,0 0 14px #9d7cd824}:root[data-theme=fantasy] .home-glance-value,[data-theme=fantasy] .home-glance-value{background:linear-gradient(120deg,#b84a1f,#ffd166);color:#0000;-webkit-background-clip:text;background-clip:text}:root[data-theme=fantasy] .home-glance-label,[data-theme=fantasy] .home-glance-label{color:var(--card-text-soft)}:root[data-theme=fantasy] .home-glance-sub,[data-theme=fantasy] .home-glance-sub{color:#9a4a18}:root[data-theme=fantasy] .home-goal-bar-label,[data-theme=fantasy] .home-goal-bar-label,:root[data-theme=fantasy] .home-goal-bar-target,[data-theme=fantasy] .home-goal-bar-target,:root[data-theme=fantasy] .home-goals-tabs button,[data-theme=fantasy] .home-goals-tabs button{color:var(--card-text-soft)}:root[data-theme=fantasy] .home-goals-tabs button.is-active,[data-theme=fantasy] .home-goals-tabs button.is-active{color:var(--brand-ink)}:root[data-theme=fantasy] .home-goal-bar,[data-theme=fantasy] .home-goal-bar{background:#fff8dd73}:root[data-theme=fantasy] .home-session-row strong,[data-theme=fantasy] .home-session-row strong,:root[data-theme=fantasy] .reading-shelf-label,[data-theme=fantasy] .reading-shelf-label{color:var(--brand-ink)}:root[data-theme=fantasy] .reading-shelf-author,[data-theme=fantasy] .reading-shelf-author{color:var(--card-text-soft)}:root[data-theme=fantasy] .home-columns .goal-card,[data-theme=fantasy] .home-columns .goal-card,:root[data-theme=fantasy] .home-columns .card,[data-theme=fantasy] .home-columns .card{border-color:color-mix(in srgb, var(--brand-gold) 30%, #9d7cd83d)}:root[data-theme=fantasy] .dock-link--accent,[data-theme=fantasy] .dock-link--accent{background:var(--primary-btn-bg);box-shadow:var(--primary-btn-shadow)}:root[data-theme=fantasy] .app-footer-cozy p,[data-theme=fantasy] .app-footer-cozy p{color:color-mix(in srgb, var(--brand-gold) 42%, var(--text-soft))}:root[data-theme=fantasy] .home-glance-stat:first-child,[data-theme=fantasy] .home-glance-stat:first-child{border-left:3px solid var(--brand-arcane)}:root[data-theme=fantasy] .home-glance-stat:nth-child(2),[data-theme=fantasy] .home-glance-stat:nth-child(2){border-left:3px solid var(--brand-gold)}:root[data-theme=fantasy] .home-glance-stat:nth-child(3),[data-theme=fantasy] .home-glance-stat:nth-child(3){border-left:3px solid var(--brand-orange)}:root[data-theme=fantasy] .home-glance-stat:nth-child(4),[data-theme=fantasy] .home-glance-stat:nth-child(4){border-left:3px solid var(--brand-dragon)}:root[data-theme=fantasy] .filter-chip,[data-theme=fantasy] .filter-chip,:root[data-theme=fantasy] .status-chip,[data-theme=fantasy] .status-chip{color:var(--card-text);border:1px solid color-mix(in srgb, var(--brand-gold) 28%, var(--border-color));background:linear-gradient(#faf3df,#f2e4c4)}:root[data-theme=fantasy] .progress-fill,[data-theme=fantasy] .progress-fill,:root[data-theme=fantasy] .bar-fill,[data-theme=fantasy] .bar-fill{box-shadow:inset 0 1px #fff8dd59,0 0 16px #ffd1663d}:root[data-theme=fantasy] .app-footer-sunflower,[data-theme=fantasy] .app-footer-sunflower{filter:drop-shadow(0 0 12px #ffd16661)}:root[data-theme=fantasy] .settings-header p,[data-theme=fantasy] .settings-header p{color:var(--text-soft)}:root[data-theme=fantasy] .settings-contents,[data-theme=fantasy] .settings-contents{border:1px solid color-mix(in srgb, var(--brand-gold) 28%, #9d7cd83d);box-shadow:var(--shadow-soft), inset 0 1px 0 #ffd16614;background:radial-gradient(80% 60% at 50% 0,#9d7cd81a,#0000 58%),linear-gradient(#2a3142,#222838)}:root[data-theme=fantasy] .settings-contents p,[data-theme=fantasy] .settings-contents p{color:var(--brand-gold);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}:root[data-theme=fantasy] .settings-contents a,[data-theme=fantasy] .settings-contents a{color:var(--text);background:#0e11186b;border-color:#ffd1661f}:root[data-theme=fantasy] .settings-contents a:hover,[data-theme=fantasy] .settings-contents a:hover{border-color:color-mix(in srgb, var(--brand-gold) 42%, var(--brand-arcane));background:#9d7cd824}:root[data-theme=fantasy] .settings-card.settings-card,[data-theme=fantasy] .settings-card.settings-card{position:relative;overflow:hidden}:root[data-theme=fantasy] .settings-card.settings-card:before,[data-theme=fantasy] .settings-card.settings-card:before{content:"";pointer-events:none;background:radial-gradient(55% 42% at 0 100%,#ef7b451a,#0000 58%),radial-gradient(55% 42% at 100% 100%,#ffd16614,#0000 56%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=fantasy] .settings-card-header h3,[data-theme=fantasy] .settings-card-header h3{z-index:1;color:var(--card-text);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;position:relative}:root[data-theme=fantasy] .settings-card-header p,[data-theme=fantasy] .settings-card-header p{z-index:1;color:var(--card-text-soft);position:relative}:root[data-theme=fantasy] .settings-card .soft-label,[data-theme=fantasy] .settings-card .soft-label{color:color-mix(in srgb, var(--brand-arcane) 72%, var(--brand-ink));letter-spacing:.16em}:root[data-theme=fantasy] .settings-profile-hero,[data-theme=fantasy] .settings-profile-hero{z-index:1;border:1px solid color-mix(in srgb, var(--brand-gold) 24%, #9d7cd833);background:linear-gradient(#fff8dd59,#f2e4c41f),#f2e4c4;position:relative}:root[data-theme=fantasy] .settings-profile-hero strong,[data-theme=fantasy] .settings-profile-hero strong{color:var(--card-text)}:root[data-theme=fantasy] .settings-profile-hero p,[data-theme=fantasy] .settings-profile-hero p{color:var(--card-text-soft)}:root[data-theme=fantasy] .theme-picker legend,[data-theme=fantasy] .theme-picker legend{color:var(--card-text);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase}:root[data-theme=fantasy] .theme-picker-note,[data-theme=fantasy] .theme-picker-note{color:var(--card-text-soft)}:root[data-theme=fantasy] .theme-picker-card,[data-theme=fantasy] .theme-picker-card{color:var(--text);border:1px solid color-mix(in srgb, var(--brand-gold) 22%, #9d7cd847);box-shadow:var(--shadow-soft), inset 0 1px 0 #ffd1660f;background:radial-gradient(80% 70% at 50% 0,#9d7cd81f,#0000 58%),linear-gradient(#2a3142,#1a2030)}:root[data-theme=fantasy] .theme-picker-card strong,[data-theme=fantasy] .theme-picker-card strong{color:var(--brand-gold);font-family:var(--font-display);letter-spacing:.04em;font-size:.82rem}:root[data-theme=fantasy] .theme-picker-card span:last-child,[data-theme=fantasy] .theme-picker-card span:last-child{color:var(--text-soft)}:root[data-theme=fantasy] .theme-picker-card:hover,[data-theme=fantasy] .theme-picker-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 45%, var(--brand-arcane));box-shadow:var(--shadow-soft), 0 0 24px #9d7cd824}:root[data-theme=fantasy] .theme-picker-card.is-selected,[data-theme=fantasy] .theme-picker-card.is-selected{border-color:var(--brand-gold);outline-color:var(--brand-gold);box-shadow:0 0 0 1px #9d7cd852, 0 0 28px #ffd1662e, var(--shadow-soft)}:root[data-theme=fantasy] .settings-card input,[data-theme=fantasy] .settings-card select,[data-theme=fantasy] .settings-card textarea,:root[data-theme=fantasy] .settings-card label,[data-theme=fantasy] .settings-card label{color:var(--card-text)}:root[data-theme=fantasy] .settings-card input,[data-theme=fantasy] .settings-card select,[data-theme=fantasy] .settings-card textarea{border-color:color-mix(in srgb, var(--brand-gold) 28%, #2b180838);color:var(--card-text);background:#fff8ddb8}:root[data-theme=fantasy] .settings-data-panel,[data-theme=fantasy] .settings-data-panel,:root[data-theme=fantasy] .settings-warning-card,[data-theme=fantasy] .settings-warning-card,:root[data-theme=fantasy] .settings-goal-group,[data-theme=fantasy] .settings-goal-group{border-color:color-mix(in srgb, var(--brand-gold) 22%, #9d7cd833);color:var(--card-text);background:linear-gradient(#fff8dd47,#f2e4c41a),#f2e4c4}:root[data-theme=fantasy] .settings-data-panel h4,[data-theme=fantasy] .settings-data-panel h4,:root[data-theme=fantasy] .settings-warning-card strong,[data-theme=fantasy] .settings-warning-card strong,:root[data-theme=fantasy] .settings-goal-group h4,[data-theme=fantasy] .settings-goal-group h4{color:var(--card-text)}:root[data-theme=fantasy] .settings-data-panel p,[data-theme=fantasy] .settings-data-panel p,:root[data-theme=fantasy] .settings-warning-card p,[data-theme=fantasy] .settings-warning-card p{color:var(--card-text-soft)}:root[data-theme=fantasy] .app-sanctuary-tagline,[data-theme=fantasy] .app-sanctuary-tagline{color:#cfc6b8}:root[data-theme=fantasy] .home-welcome-card,[data-theme=fantasy] .home-welcome-card{color:var(--card-text);border:2px dashed color-mix(in srgb, var(--brand-gold) 42%, var(--brand-arcane));background:linear-gradient(#ffffff6b,#fff8dd2e),#f5ecd4;box-shadow:inset 0 1px #fff8dda6}:root[data-theme=fantasy] .home-welcome-card h2,[data-theme=fantasy] .home-welcome-card h2{color:var(--brand-ink);font-family:var(--font-display);letter-spacing:.04em;text-transform:none;font-size:1.45rem}:root[data-theme=fantasy] .home-welcome-card p,[data-theme=fantasy] .home-welcome-card p{color:var(--card-text-soft)}:root[data-theme=fantasy] .home-reading-idle,[data-theme=fantasy] .home-reading-idle{color:var(--card-text);background:linear-gradient(180deg, #fff8dd7a, #f2e4c429), var(--surface-raised)}:root[data-theme=fantasy] .home-reading-idle p,[data-theme=fantasy] .home-reading-idle p{color:var(--card-text-soft)}:root[data-theme=fantasy] .home-panel,[data-theme=fantasy] .home-panel{color:var(--card-text);background:linear-gradient(180deg, #fff8dd85, #f2e4c42e), var(--surface-raised)}:root[data-theme=fantasy] .home-panel-head h2,[data-theme=fantasy] .home-panel-head h2,:root[data-theme=fantasy] .home-panel h2,[data-theme=fantasy] .home-panel h2,:root[data-theme=fantasy] .home-panel h3,[data-theme=fantasy] .home-panel h3{color:var(--brand-ink)}:root[data-theme=fantasy] .home-panel-sub,[data-theme=fantasy] .home-panel-sub,:root[data-theme=fantasy] .home-activity-empty,[data-theme=fantasy] .home-activity-empty,:root[data-theme=fantasy] .home-session-row p,[data-theme=fantasy] .home-session-row p,:root[data-theme=fantasy] .home-session-row time,[data-theme=fantasy] .home-session-row time{color:var(--card-text-soft)}:root[data-theme=fantasy] .home-text-link,[data-theme=fantasy] .home-text-link{color:#9a4a18}:root[data-theme=fantasy] .onboarding-guide,[data-theme=fantasy] .onboarding-guide{color:var(--card-text);border:2px solid color-mix(in srgb, var(--brand-gold) 32%, #9d7cd847);background:linear-gradient(180deg, #fff8dd94, #f2e4c438), var(--surface-raised);box-shadow:var(--shadow-soft), inset 0 1px 0 #fff8dd8c}:root[data-theme=fantasy] .onboarding-guide .soft-label,[data-theme=fantasy] .onboarding-guide .soft-label{color:color-mix(in srgb, var(--brand-arcane) 55%, var(--brand-ink))}:root[data-theme=fantasy] .onboarding-guide-head h2,[data-theme=fantasy] .onboarding-guide-head h2{color:var(--brand-ink);font-family:var(--font-display);letter-spacing:.04em;text-transform:none}:root[data-theme=fantasy] .onboarding-guide-sub,[data-theme=fantasy] .onboarding-guide-sub{color:var(--card-text-soft)}:root[data-theme=fantasy] .onboarding-step,[data-theme=fantasy] .onboarding-step{border-color:color-mix(in srgb, var(--brand-gold) 24%, #9d7cd82e);background:#fff8dd8c}:root[data-theme=fantasy] .onboarding-step-body a,[data-theme=fantasy] .onboarding-step-body a{color:#9a4a18;text-underline-offset:2px;font-weight:700;text-decoration:underline}:root[data-theme=fantasy] .onboarding-step-body a:hover,[data-theme=fantasy] .onboarding-step-body a:hover{color:var(--brand-dragon)}:root[data-theme=fantasy] .onboarding-step-body strong,[data-theme=fantasy] .onboarding-step-body strong{color:var(--brand-ink)}:root[data-theme=fantasy] .onboarding-step-body p,[data-theme=fantasy] .onboarding-step-body p{color:var(--card-text-soft)}:root[data-theme=fantasy] .onboarding-step-status,[data-theme=fantasy] .onboarding-step-status{color:var(--brand-ink);background:#ffd16647}:root[data-theme=fantasy] .onboarding-banner,[data-theme=fantasy] .onboarding-banner{color:var(--card-text);border-color:color-mix(in srgb, var(--brand-gold) 32%, #9d7cd83d);background:linear-gradient(180deg, #fff8dd85, #f2e4c42e), var(--surface-raised)}:root[data-theme=fantasy] .onboarding-banner-copy strong,[data-theme=fantasy] .onboarding-banner-copy strong{color:var(--brand-ink)}:root[data-theme=fantasy] .onboarding-banner-copy p,[data-theme=fantasy] .onboarding-banner-copy p{color:var(--card-text-soft)}:root[data-theme=fantasy] .onboarding-dismiss,[data-theme=fantasy] .onboarding-dismiss{color:#9a4a18}:root[data-theme=fantasy] .home-hero h2,[data-theme=fantasy] .home-hero h2{background:0 0;-webkit-background-clip:unset;background-clip:unset;filter:none;color:var(--brand-ink)}:root[data-theme=horror],[data-theme=horror]{--font-display:"Spectral", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:.14em;--heading-weight:700;--heading-transform:uppercase;--sanctuary-mark:"🔪";--brand-gold:#8a1818;--brand-orange:#c41e1e;--brand-green:#3d4a32;--brand-leaf:#5a6a48;--brand-cream:#d4c4bc;--brand-ink:#080606;--brand-ash:#141010;--brand-blood:#c41e1e;--brand-blood-deep:#6b0f0f;--page-bg:#030202;--page-bg-soft:#080606;--surface:#121010;--surface-soft:#0a0808;--surface-raised:#1a1414;--surface-muted:#221818;--text:#d4c4bc;--text-soft:#8a7570;--text-inverse:#080606;--card-text:#d4c4bc;--card-text-soft:#8a7570;--accent:#c41e1e;--accent-hover:#e82828;--accent-strong:#8b0000;--accent-soft:#c41e1e47;--accent-muted:#c41e1e24;--success:#6a7a5a;--success-soft:#6a7a5a2e;--danger:#e82828;--danger-soft:#e8282838;--border-color:#c41e1e47;--border-strong:#c41e1e85;--shadow-soft:0 2px 12px #0000009e, 0 8px 24px #c41e1e0f;--shadow:0 8px 28px #000000b8, 0 16px 40px #c41e1e14;--shadow-strong:0 16px 44px #000000d1, 0 24px 56px #c41e1e1f;--focus-ring:#e828289e;--overlay:#020101f0;--card-bg:#1a1414;--card-bg-soft:#141010;--chip-bg:linear-gradient(180deg, #221818, #121010);--chip-text:var(--text);--input-bg:#030202b8;--input-border:#c41e1e52;--input-text:var(--text);--input-placeholder:#8a7570b8;--form-field-bg:#030202b8;--form-field-border:#c41e1e52;--form-field-text:var(--text);--form-field-placeholder:#8a7570b8;--radius-button:4px;--radius-card:6px;--radius-chip:4px;--radius-nav:4px;--radius-lg:6px;--radius-xl:8px;--radius-2xl:8px;--radius-3xl:10px;--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:repeating-linear-gradient(0deg, #ffffff05 0, #ffffff05 1px, transparent 1px, transparent 2px), repeating-linear-gradient(92deg, transparent 0, transparent 48px, #c41e1e03 48px, #c41e1e03 49px), radial-gradient(ellipse 48% 38% at 50% 108%, #c41e1e52, transparent 58%), radial-gradient(ellipse 32% 24% at 50% 98%, #e828282e, transparent 52%), radial-gradient(ellipse 22% 62% at 0% 50%, #000000d1, transparent 62%), radial-gradient(ellipse 22% 62% at 100% 50%, #000000d1, transparent 62%);--page-sparkle:none;--page-overlay:linear-gradient(180deg, #080606b8 0%, #03020261 48%, #c41e1e1a 100%);--page-glow-left:linear-gradient(90deg, #030202f5 0%, #1a141494 8%, #c41e1e1f 14%, transparent 28%);--page-glow-right:linear-gradient(270deg, #030202f0 0%, #1a14148c 8%, #c41e1e14 14%, transparent 28%);--page-gradient:linear-gradient(180deg, #0a0808 0%, #060404 55%, #030202 100%);--page-grain-opacity:.52;--page-grain-blend:overlay;--page-firefly-opacity:.38;--card-sheen-top:#c41e1e0f;--card-sheen-bottom:#0000006b;--card-inner-highlight:0 1px 0 #c41e1e14 inset;--button-primary-text:#f8ece8;--primary-btn-bg:linear-gradient(180deg, #e82828 0%, #c41e1e 48%, #6b0f0f 100%);--primary-btn-shadow:0 4px 18px #c41e1e6b, inset 0 1px 0 #ffb4b424;--nav-link-active-top:#e82828;--nav-link-active-bottom:#8b0000;--nav-link-active-text:#f8ece8;--nav-link-active-border:#c41e1e85;--nav-link-active-shadow:0 0 22px #c41e1e47, inset 0 1px 0 #ffb4b41a;--progress-fill:linear-gradient(90deg, #6b0f0f, #c41e1e, #8a1818);--shell-sidebar-bg:linear-gradient(180deg, #141010 0%, #0a0808 52%, #030202 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #c41e1e38, transparent 58%);--shell-sidebar-border:#c41e1e38;--shell-nook-bg:radial-gradient(ellipse 100% 80% at 50% 100%, #c41e1e3d, transparent 55%), linear-gradient(148deg, #1a1414, #080606);--shell-nook-border:#c41e1e61;--shell-logo-glow:drop-shadow(0 0 16px #c41e1e61);--spotlight-text:#d4c4bc;--spotlight-text-soft:#d4c4bcd1;--spotlight-overlay:linear-gradient(125deg, #030202f5 0%, #1a1414eb 38%, #c41e1eb8 100%);--spotlight-backdrop-opacity:.72;--spotlight-border:#c41e1e7a;--spotlight-glow:0 20px 48px #000000ad;--spotlight-label-color:#e82828;--reading-zone-bg:linear-gradient(175deg, #221818 0%, #1a1414 48%, #121010 100%);--reading-zone-border:#c41e1e52;--theme-color-meta:#030202}:root[data-theme=horror] body:before,[data-theme=horror] body:before{opacity:.48;mix-blend-mode:overlay}:root[data-theme=horror] body:after,[data-theme=horror] body:after{background:radial-gradient(18% 92% at 50% 108%,#c41e1e47,#0000 72%),radial-gradient(circle at 50% 96%,#e8282852 0,#0000 5%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=horror] body:after,[data-theme=horror] body:after{animation:4.5s ease-in-out infinite alternate horror-flicker}}@keyframes horror-flicker{0%,to{opacity:calc(var(--page-firefly-opacity,.38) * .62)}46%{opacity:var(--page-firefly-opacity,.38)}48%{opacity:calc(var(--page-firefly-opacity,.38) * .22)}50%{opacity:calc(var(--page-firefly-opacity,.38) * .92)}52%{opacity:calc(var(--page-firefly-opacity,.38) * .38)}}:root[data-theme=horror] .card,[data-theme=horror] .card,:root[data-theme=horror] .form-card,[data-theme=horror] .form-card,:root[data-theme=horror] .goal-card,[data-theme=horror] .goal-card,:root[data-theme=horror] .chart-card,[data-theme=horror] .chart-card,:root[data-theme=horror] .insight-card,[data-theme=horror] .insight-card,:root[data-theme=horror] .heatmap-card,[data-theme=horror] .heatmap-card,:root[data-theme=horror] .settings-card,[data-theme=horror] .settings-card{box-shadow:var(--card-shadow), inset 0 1px 0 #c41e1e0f, inset 0 -24px 48px #00000047;color:var(--text);background:linear-gradient(#c41e1e0f 0%,#0000 22%),linear-gradient(#221818 0%,#1a1414 55%,#121010 100%);border-color:#c41e1e47}:root[data-theme=horror] .card h2,[data-theme=horror] .card h2,:root[data-theme=horror] .card h3,[data-theme=horror] .card h3{color:var(--text);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase}:root[data-theme=horror] .page-header h2,[data-theme=horror] .page-header h2{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:#f8ece8;text-shadow:0 0 24px #c41e1e7a,0 2px 8px #000000b8;font-weight:700}:root[data-theme=horror] .page-header p,[data-theme=horror] .page-header p{color:var(--text-soft)}:root[data-theme=horror] .primary-btn,[data-theme=horror] .primary-btn,:root[data-theme=horror] .primary-submit,[data-theme=horror] .primary-submit{letter-spacing:.1em;text-transform:uppercase;font-size:.84rem;font-family:var(--font-display);border-radius:4px}:root[data-theme=horror] .secondary-btn,[data-theme=horror] .secondary-btn{color:var(--text);background:linear-gradient(#221818,#141010);border:1px solid #c41e1e61;border-radius:4px}:root[data-theme=horror] .app-sidebar,[data-theme=horror] .app-sidebar{color:var(--text)}:root[data-theme=horror] .sidebar-nav-link,[data-theme=horror] .sidebar-nav-link{color:#a89890;border-radius:4px}:root[data-theme=horror] .sidebar-nav-link:hover,[data-theme=horror] .sidebar-nav-link:hover{color:var(--text);background:#c41e1e24}:root[data-theme=horror] .sidebar-nav-link.active,[data-theme=horror] .sidebar-nav-link.active,:root[data-theme=horror] .sidebar-nav-link[aria-current=page],[data-theme=horror] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #e82828d1, #8b0000eb), var(--surface-muted);box-shadow:var(--nav-link-active-shadow);color:#f8ece8;--text:#f8ece8;--text-soft:#f8ece8c7;border-color:#c41e1e94}:root[data-theme=horror] .sidebar-nav-link.active svg,[data-theme=horror] .sidebar-nav-link.active svg{color:#f8ece8}:root[data-theme=horror] .app-sanctuary-nook,[data-theme=horror] .app-sanctuary-nook{position:relative;overflow:hidden}:root[data-theme=horror] .app-sanctuary-nook:before,[data-theme=horror] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#c41e1e47,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=horror] .app-sanctuary-name,[data-theme=horror] .app-sanctuary-name{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:#f8ece8;text-shadow:0 0 18px #c41e1e6b}:root[data-theme=horror] .app-sanctuary-tagline,[data-theme=horror] .app-sanctuary-tagline{color:var(--text-soft)}:root[data-theme=horror] .app-user-card,[data-theme=horror] .app-user-card{color:var(--text);background:linear-gradient(#221818,#1a1414);border-color:#c41e1e52}:root[data-theme=horror] .app-user-card .app-user-meta strong,[data-theme=horror] .app-user-card .app-user-meta strong{color:var(--text);font-weight:800}:root[data-theme=horror] .app-user-avatar,[data-theme=horror] .app-user-avatar{color:var(--brand-ink);background:linear-gradient(#e82828,#8b0000);border:1px solid #c41e1e6b}:root[data-theme=horror] .app-signout,[data-theme=horror] .app-signout{color:var(--text-soft)}:root[data-theme=horror] .app-signout:hover,[data-theme=horror] .app-signout:hover{color:var(--danger)}:root[data-theme=horror] .auth-feature-card,[data-theme=horror] .auth-feature-card,:root[data-theme=horror] .auth-card,[data-theme=horror] .auth-card{color:var(--text);background:linear-gradient(#c41e1e14 0%,#0000 28%),linear-gradient(#221818 0%,#1a1414 55%,#121010 100%);border-color:#c41e1e52}:root[data-theme=horror] .auth-card:after,[data-theme=horror] .auth-card:after{content:"";opacity:.88;pointer-events:none;background:linear-gradient(90deg,#0000,#c41e1e,#e82828,#c41e1e,#0000);border-radius:0 0 2px 2px;height:2px;position:absolute;top:0;left:18px;right:18px}:root[data-theme=horror] .auth-card h2,[data-theme=horror] .auth-card h2,:root[data-theme=horror] .auth-form label,[data-theme=horror] .auth-form label,:root[data-theme=horror] .auth-feature-card strong,[data-theme=horror] .auth-feature-card strong{color:var(--text)}:root[data-theme=horror] .auth-eyebrow,[data-theme=horror] .auth-eyebrow{color:#e82828;letter-spacing:.18em;text-transform:uppercase}:root[data-theme=horror] .auth-feature-card p,[data-theme=horror] .auth-feature-card p,:root[data-theme=horror] .auth-card .muted-text,[data-theme=horror] .auth-card .muted-text{color:var(--text-soft)}:root[data-theme=horror] .auth-card .text-button,[data-theme=horror] .auth-card .text-button,:root[data-theme=horror] .auth-card .support-email-link,[data-theme=horror] .auth-card .support-email-link{color:#e82828}:root[data-theme=horror] .home-hero,[data-theme=horror] .home-hero,:root[data-theme=horror] .home-reading-card,[data-theme=horror] .home-reading-card,:root[data-theme=horror] .home-panel,[data-theme=horror] .home-panel,:root[data-theme=horror] .home-glance-stat,[data-theme=horror] .home-glance-stat,:root[data-theme=horror] .onboarding-guide,[data-theme=horror] .onboarding-guide,:root[data-theme=horror] .home-welcome-card,[data-theme=horror] .home-welcome-card,:root[data-theme=horror] .home-reading-idle,[data-theme=horror] .home-reading-idle{color:var(--text);box-shadow:var(--card-shadow), inset 0 -32px 64px #00000052;background:linear-gradient(#c41e1e12 0%,#0000 24%),linear-gradient(#221818 0%,#1a1414 55%,#121010 100%);border-color:#c41e1e47}:root[data-theme=horror] .home-hero,[data-theme=horror] .home-hero{position:relative;overflow:hidden}:root[data-theme=horror] .home-hero:before,[data-theme=horror] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(55% 42% at 50% 108%,#c41e1e2e,#0000 58%),radial-gradient(38% 28% at 0 0,#0000006b,#0000 52%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=horror] .home-greeting,[data-theme=horror] .home-greeting{color:var(--text-soft)}:root[data-theme=horror] .home-greeting strong,[data-theme=horror] .home-greeting strong{color:var(--text);background:0 0;-webkit-background-clip:unset;background-clip:unset}:root[data-theme=horror] .home-hero-tagline,[data-theme=horror] .home-hero-tagline{color:#e82828;font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;text-shadow:0 0 28px #c41e1e85,0 2px 12px #000000b8;font-size:clamp(1.35rem,2.4vw,1.85rem);font-style:normal;font-weight:700;position:relative}:root[data-theme=horror] .home-hero-tagline:before,[data-theme=horror] .home-hero-tagline:before{content:"";background:linear-gradient(90deg,#0000,#c41e1e 18%,#e82828 50%,#8b0000 82%,#0000);border-radius:1px;width:88px;height:3px;margin-bottom:10px;display:block;transform:skew(-12deg);box-shadow:0 0 14px #c41e1e7a}:root[data-theme=horror] .home-hero-tagline:after,[data-theme=horror] .home-hero-tagline:after{content:" 🔪"}:root[data-theme=horror] .home-panel-head h2,[data-theme=horror] .home-panel-head h2,:root[data-theme=horror] .onboarding-guide-head h2,[data-theme=horror] .onboarding-guide-head h2{color:var(--text);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase}:root[data-theme=horror] .home-glance-value,[data-theme=horror] .home-glance-value{color:#e82828;text-shadow:0 0 18px #c41e1e61;background:0 0;-webkit-background-clip:unset;background-clip:unset}:root[data-theme=horror] .home-glance-label,[data-theme=horror] .home-glance-label{color:var(--text-soft)}:root[data-theme=horror] .reading-spotlight,[data-theme=horror] .reading-spotlight{color:var(--text)}:root[data-theme=horror] .reading-spotlight-backdrop,[data-theme=horror] .reading-spotlight-backdrop{opacity:.82}:root[data-theme=horror] .reading-spotlight-backdrop:after,[data-theme=horror] .reading-spotlight-backdrop:after{background:linear-gradient(125deg,#030202eb 0%,#1a1414c7 42%,#c41e1e8c 100%)}:root[data-theme=horror] .reading-spotlight-inner,[data-theme=horror] .reading-spotlight-inner{background:linear-gradient(#c41e1e1a 0%,#0000 32%),linear-gradient(#221818,#141010);border:1px solid #c41e1e6b;box-shadow:inset 0 1px #c41e1e1f,0 12px 36px #00000094}:root[data-theme=horror] .reading-spotlight-label,[data-theme=horror] .reading-spotlight-label{color:#e82828;font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;font-weight:700}:root[data-theme=horror] .reading-spotlight-copy h2,[data-theme=horror] .reading-spotlight-copy h2{color:var(--text);font-family:var(--font-display)}:root[data-theme=horror] .reading-spotlight-author,[data-theme=horror] .reading-spotlight-author,:root[data-theme=horror] .reading-spotlight-detail,[data-theme=horror] .reading-spotlight-detail{color:var(--text-soft)}:root[data-theme=horror] .reading-spotlight-meta span,[data-theme=horror] .reading-spotlight-meta span{color:var(--text-soft);background:#0302027a;border-color:#c41e1e47}:root[data-theme=horror] .reading-spotlight-bar,[data-theme=horror] .reading-spotlight-bar{background:#0302028c}:root[data-theme=horror] .home-goals-tabs,[data-theme=horror] .home-goals-tabs{background:#0302027a;border-color:#c41e1e38}:root[data-theme=horror] .home-goals-tabs button,[data-theme=horror] .home-goals-tabs button{color:var(--text-soft)}:root[data-theme=horror] .home-goals-tabs button.is-active,[data-theme=horror] .home-goals-tabs button.is-active{color:var(--text);background:#2a2020;box-shadow:inset 0 0 0 1px #c41e1e47}:root[data-theme=horror] .home-goal-bar,[data-theme=horror] .home-goal-bar{background:#0302026b;border-color:#c41e1e2e}:root[data-theme=horror] .home-goal-bar-label,[data-theme=horror] .home-goal-bar-label,:root[data-theme=horror] .home-goal-bar-head strong,[data-theme=horror] .home-goal-bar-head strong{color:var(--text)}:root[data-theme=horror] .home-goal-bar-target,[data-theme=horror] .home-goal-bar-target,:root[data-theme=horror] .home-goal-bar-percent,[data-theme=horror] .home-goal-bar-percent{color:var(--text-soft)}:root[data-theme=horror] .home-session-row strong,[data-theme=horror] .home-session-row strong{color:var(--text)}:root[data-theme=horror] .home-session-row p,[data-theme=horror] .home-session-row p,:root[data-theme=horror] .home-session-row time,[data-theme=horror] .home-session-row time{color:var(--text-soft)}:root[data-theme=horror] .home-text-link,[data-theme=horror] .home-text-link{color:#e82828}:root[data-theme=horror] .month-card,[data-theme=horror] .month-card{background:linear-gradient(#1a1414,#121010);border-color:#c41e1e38}:root[data-theme=horror] .month-card h4,[data-theme=horror] .month-card h4{color:var(--text)}:root[data-theme=horror] .calendar-day,[data-theme=horror] .calendar-day{color:var(--text-soft);background:#0302029e}:root[data-theme=horror] .calendar-day.read-light,[data-theme=horror] .calendar-day.read-light{color:var(--text);background:#c41e1e6b}:root[data-theme=horror] .reading-log-item,[data-theme=horror] .reading-log-item{background:#03020261;border-color:#c41e1e33}:root[data-theme=horror] .settings-header p,[data-theme=horror] .settings-header p{color:var(--text-soft)}:root[data-theme=horror] .settings-contents,[data-theme=horror] .settings-contents{box-shadow:var(--shadow-soft), inset 0 1px 0 #c41e1e14;background:radial-gradient(80% 60% at 50% 0,#c41e1e24,#0000 58%),linear-gradient(#1a1414,#0a0808);border-color:#c41e1e52}:root[data-theme=horror] .settings-contents p,[data-theme=horror] .settings-contents p{color:#e82828;font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}:root[data-theme=horror] .settings-contents a,[data-theme=horror] .settings-contents a{color:var(--text);background:#0302027a;border-color:#c41e1e2e;border-radius:4px}:root[data-theme=horror] .settings-contents a:hover,[data-theme=horror] .settings-contents a:hover{background:#c41e1e29;border-color:#c41e1e6b}:root[data-theme=horror] .settings-card.settings-card,[data-theme=horror] .settings-card.settings-card{background:linear-gradient(#c41e1e14 0%,#0000 28%),linear-gradient(#221818 0%,#1a1414 55%,#121010 100%);border-color:#c41e1e52}:root[data-theme=horror] .settings-card-header h3,[data-theme=horror] .settings-card-header h3{color:var(--text);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase}:root[data-theme=horror] .settings-card-header p,[data-theme=horror] .settings-card-header p{color:var(--text-soft)}:root[data-theme=horror] .settings-card .soft-label,[data-theme=horror] .settings-card .soft-label{color:#e82828;letter-spacing:.14em}:root[data-theme=horror] .settings-profile-hero,[data-theme=horror] .settings-profile-hero{background:#0302026b;border-color:#c41e1e47}:root[data-theme=horror] .theme-picker legend,[data-theme=horror] .theme-picker legend{color:var(--text);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase}:root[data-theme=horror] .theme-picker-note,[data-theme=horror] .theme-picker-note{color:var(--text-soft)}:root[data-theme=horror] .theme-picker-card,[data-theme=horror] .theme-picker-card{color:var(--text);background:radial-gradient(80% 70% at 50% 0,#c41e1e24,#0000 58%),linear-gradient(#1a1414,#0a0808);border-color:#c41e1e47;border-radius:6px}:root[data-theme=horror] .theme-picker-card strong,[data-theme=horror] .theme-picker-card strong{color:#e82828;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;font-size:.88rem}:root[data-theme=horror] .theme-picker-card span:last-child,[data-theme=horror] .theme-picker-card span:last-child{color:var(--text-soft)}:root[data-theme=horror] .theme-picker-card:hover,[data-theme=horror] .theme-picker-card:hover{border-color:#c41e1e7a;box-shadow:0 0 24px #c41e1e24}:root[data-theme=horror] .theme-picker-card.is-selected,[data-theme=horror] .theme-picker-card.is-selected{box-shadow:0 0 0 1px #c41e1e61, 0 0 28px #c41e1e38, var(--shadow-soft);border-color:#e82828;outline-color:#e82828}:root[data-theme=horror] .settings-data-panel,[data-theme=horror] .settings-data-panel,:root[data-theme=horror] .settings-warning-card,[data-theme=horror] .settings-warning-card,:root[data-theme=horror] .settings-goal-group,[data-theme=horror] .settings-goal-group{background:#0302026b;border-color:#c41e1e33}:root[data-theme=horror] .settings-data-panel h4,[data-theme=horror] .settings-data-panel h4,:root[data-theme=horror] .settings-warning-card strong,[data-theme=horror] .settings-warning-card strong,:root[data-theme=horror] .settings-goal-group h4,[data-theme=horror] .settings-goal-group h4{color:var(--text)}:root[data-theme=horror] .settings-data-panel p,[data-theme=horror] .settings-data-panel p,:root[data-theme=horror] .settings-warning-card p,[data-theme=horror] .settings-warning-card p{color:var(--text-soft)}:root[data-theme=horror] input,[data-theme=horror] input,:root[data-theme=horror] select,[data-theme=horror] select,:root[data-theme=horror] textarea,[data-theme=horror] textarea{color:var(--text);background:#0302029e;border-color:#c41e1e52;border-radius:4px}:root[data-theme=horror] label,[data-theme=horror] label{color:var(--text-soft)}:root[data-theme=retro-90s],[data-theme=retro-90s]{--font-display:"Times New Roman", Times, Georgia, serif;--font-ui:Arial, Helvetica, "Segoe UI", sans-serif;--heading-letter-spacing:0;--heading-transform:none;--heading-weight:700;--sanctuary-mark:"*";--brand-gold:#ff0;--brand-orange:#ff8000;--brand-green:green;--brand-leaf:teal;--brand-cream:#fff;--brand-ink:#000;--brand-pink:#f0f;--brand-purple:purple;--win95-face:silver;--win95-light:#dfdfdf;--win95-dark:gray;--win95-darker:#404040;--win95-desktop:teal;--win95-navy:navy;--win95-title-end:#1084d0;--win95-link:#00f;--win95-visited:purple;--page-bg:teal;--page-bg-soft:teal;--surface:silver;--surface-soft:silver;--surface-raised:#fff;--surface-muted:#a0a0a0;--text:#000;--text-soft:#404040;--text-inverse:#fff;--card-text:#000;--card-text-soft:#404040;--accent:navy;--accent-hover:#0000a8;--accent-strong:navy;--accent-soft:#0000801f;--accent-muted:#00808029;--success:green;--success-soft:#0080001f;--danger:red;--danger-soft:#ffe0e0;--border-color:gray;--border-strong:#404040;--shadow-soft:none;--shadow:none;--shadow-strong:none;--focus-ring:navy;--overlay:#0000008c;--card-bg:#fff;--card-bg-soft:silver;--chip-bg:silver;--chip-text:#000;--input-bg:#fff;--input-border:gray;--input-text:#000;--input-placeholder:gray;--form-field-bg:#fff;--form-field-border:gray;--form-field-text:#000;--form-field-placeholder:gray;--radius-lg:0;--radius-xl:0;--radius-2xl:0;--radius-3xl:0;--radius-card:0;--radius-button:0;--radius-nav:0;--radius-chip:0;--radius-pill:0;--card-inner-highlight:none;--card-border-width:2px;--card-border-style:solid;--app-background-image:none;--page-pattern:radial-gradient(1px 1px at 12% 18%, #ffffffd9, transparent), radial-gradient(1px 1px at 28% 42%, #ffffffb3, transparent), radial-gradient(1.5px 1.5px at 44% 12%, #ffffffe6, transparent), radial-gradient(1px 1px at 58% 68%, #ffffffa6, transparent), radial-gradient(1px 1px at 72% 32%, #ffffffbf, transparent), radial-gradient(1px 1px at 86% 58%, #fff9, transparent), radial-gradient(1px 1px at 22% 78%, #ffffff8c, transparent), radial-gradient(1px 1px at 38% 88%, #ffffff80, transparent), radial-gradient(1px 1px at 64% 82%, #ffffff73, transparent), radial-gradient(1px 1px at 92% 22%, #fffc, transparent), linear-gradient(180deg, teal 0%, #006868 100%);--page-sparkle:none;--page-overlay:none;--page-glow-left:none;--page-glow-right:none;--page-gradient:linear-gradient(180deg, teal 0%, #006868 100%);--page-grain-opacity:0;--page-grain-blend:normal;--page-firefly-opacity:0;--button-primary-text:#000;--primary-btn-bg:silver;--primary-btn-shadow:none;--nav-link-active-top:silver;--nav-link-active-bottom:silver;--nav-link-active-text:#000;--nav-link-active-border:gray;--nav-link-active-shadow:none;--progress-fill:navy;--shell-sidebar-bg:silver;--shell-sidebar-accent:none;--shell-sidebar-border:gray;--shell-nook-bg:silver;--shell-nook-border:gray;--shell-logo-shadow:none;--shell-logo-glow:none;--spotlight-text:#000;--spotlight-text-soft:#404040;--spotlight-overlay:linear-gradient(125deg, #c0c0c0f5 0%, #ffffffeb 100%);--spotlight-backdrop-opacity:.55;--spotlight-border:gray;--spotlight-glow:none;--spotlight-label-color:navy;--reading-zone-bg:#fff;--reading-zone-border:gray;--theme-color-meta:teal}:root[data-theme=retro-90s] body:after,[data-theme=retro-90s] body:after{background:0 0}:root[data-theme=retro-90s] .page-header h2,[data-theme=retro-90s] .page-header h2{font-family:var(--font-ui);letter-spacing:0;text-transform:none;color:#fff;background:linear-gradient(90deg, var(--win95-navy) 0%, var(--win95-title-end) 100%);border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);text-shadow:none;margin:0 0 8px;padding:3px 10px;font-size:13px;font-weight:700;display:inline-block}:root[data-theme=retro-90s] .page-header p,[data-theme=retro-90s] .page-header p{color:#000;font-family:var(--font-ui);font-size:12px;font-weight:400}:root[data-theme=retro-90s] .card,[data-theme=retro-90s] .card,:root[data-theme=retro-90s] .form-card,[data-theme=retro-90s] .form-card,:root[data-theme=retro-90s] .goal-card,[data-theme=retro-90s] .goal-card,:root[data-theme=retro-90s] .chart-card,[data-theme=retro-90s] .chart-card,:root[data-theme=retro-90s] .insight-card,[data-theme=retro-90s] .insight-card,:root[data-theme=retro-90s] .heatmap-card,[data-theme=retro-90s] .heatmap-card,:root[data-theme=retro-90s] .settings-card,[data-theme=retro-90s] .settings-card{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face);box-shadow:none;color:#000;border-radius:0}:root[data-theme=retro-90s] .card h2,[data-theme=retro-90s] .card h2,:root[data-theme=retro-90s] .card h3,[data-theme=retro-90s] .card h3{color:#000;font-family:var(--font-display);font-weight:700}:root[data-theme=retro-90s] .card:hover,[data-theme=retro-90s] .card:hover,:root[data-theme=retro-90s] .goal-card:hover,[data-theme=retro-90s] .goal-card:hover{transform:none}:root[data-theme=retro-90s] .primary-btn,[data-theme=retro-90s] .primary-btn,:root[data-theme=retro-90s] .primary-submit,[data-theme=retro-90s] .primary-submit,:root[data-theme=retro-90s] .secondary-btn,[data-theme=retro-90s] .secondary-btn{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);box-shadow:none;background:var(--win95-face);color:#000;font-family:var(--font-ui);letter-spacing:0;text-transform:none;border-radius:0;min-height:23px;padding:2px 12px;font-size:12px;font-weight:400}:root[data-theme=retro-90s] .primary-btn:hover:not(:disabled),[data-theme=retro-90s] .primary-btn:hover:not(:disabled),:root[data-theme=retro-90s] .primary-submit:hover:not(:disabled),[data-theme=retro-90s] .primary-submit:hover:not(:disabled),:root[data-theme=retro-90s] .secondary-btn:hover:not(:disabled),[data-theme=retro-90s] .secondary-btn:hover:not(:disabled){box-shadow:none;background:#d4d4d4;transform:none}:root[data-theme=retro-90s] .primary-btn:active:not(:disabled),[data-theme=retro-90s] .primary-btn:active:not(:disabled),:root[data-theme=retro-90s] .primary-submit:active:not(:disabled),[data-theme=retro-90s] .primary-submit:active:not(:disabled),:root[data-theme=retro-90s] .secondary-btn:active:not(:disabled),[data-theme=retro-90s] .secondary-btn:active:not(:disabled){border-color:var(--win95-darker) var(--win95-light) var(--win95-light) var(--win95-darker);padding:3px 11px 1px 13px}:root[data-theme=retro-90s] .filter-chip,[data-theme=retro-90s] .filter-chip{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);box-shadow:none;background:var(--win95-face);font-family:var(--font-ui);border-radius:0;font-size:11px;font-weight:400}:root[data-theme=retro-90s] a,[data-theme=retro-90s] a{color:var(--win95-link);text-decoration:underline}:root[data-theme=retro-90s] a:visited,[data-theme=retro-90s] a:visited{color:var(--win95-visited)}:root[data-theme=retro-90s] .app-sidebar,[data-theme=retro-90s] .app-sidebar{border-right:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);box-shadow:none;background:var(--win95-face)}:root[data-theme=retro-90s] .sidebar-nav-link,[data-theme=retro-90s] .sidebar-nav-link{color:#000;font-family:var(--font-ui);border-radius:0;font-size:12px;font-weight:400}:root[data-theme=retro-90s] .sidebar-nav-link:hover,[data-theme=retro-90s] .sidebar-nav-link:hover{color:#fff;background:navy}:root[data-theme=retro-90s] .sidebar-nav-link.active,[data-theme=retro-90s] .sidebar-nav-link.active,:root[data-theme=retro-90s] .sidebar-nav-link[aria-current=page],[data-theme=retro-90s] .sidebar-nav-link[aria-current=page]{color:#000;background:var(--win95-face);box-shadow:none;border:1px dotted #000}:root[data-theme=retro-90s] .sidebar-nav-link.active svg,[data-theme=retro-90s] .sidebar-nav-link.active svg{color:#000}:root[data-theme=retro-90s] .app-sanctuary-nook,[data-theme=retro-90s] .app-sanctuary-nook{border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);box-shadow:none;background:#fff;border-radius:0}:root[data-theme=retro-90s] .app-sanctuary-name,[data-theme=retro-90s] .app-sanctuary-name{font-family:var(--font-display);text-transform:none;letter-spacing:0;color:navy;font-style:italic;font-weight:700}:root[data-theme=retro-90s] .app-sanctuary-tagline,[data-theme=retro-90s] .app-sanctuary-tagline{color:#404040;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .app-sanctuary-nook:after,[data-theme=retro-90s] .app-sanctuary-nook:after{color:#f0f;letter-spacing:.12em;font-weight:400}:root[data-theme=retro-90s] .app-user-card,[data-theme=retro-90s] .app-user-card{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face);box-shadow:none;border-radius:0}:root[data-theme=retro-90s] .app-user-card:hover,[data-theme=retro-90s] .app-user-card:hover{box-shadow:none;transform:none}:root[data-theme=retro-90s] .app-user-card .app-user-meta strong,[data-theme=retro-90s] .app-user-card .app-user-meta strong{color:#000;font-family:var(--font-ui);font-size:12px;font-weight:700}:root[data-theme=retro-90s] .app-user-avatar,[data-theme=retro-90s] .app-user-avatar{border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);color:navy;background:#fff;border-radius:0;font-weight:700}:root[data-theme=retro-90s] .app-signout,[data-theme=retro-90s] .app-signout{color:var(--win95-link);font-family:var(--font-ui);font-size:11px;text-decoration:underline}:root[data-theme=retro-90s] .app-signout:hover,[data-theme=retro-90s] .app-signout:hover{color:var(--win95-link)}:root[data-theme=retro-90s] .auth-feature-card,[data-theme=retro-90s] .auth-feature-card,:root[data-theme=retro-90s] .auth-card,[data-theme=retro-90s] .auth-card{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face);box-shadow:none;border-radius:0}:root[data-theme=retro-90s] .auth-card:after,[data-theme=retro-90s] .auth-card:after{content:"";pointer-events:none;background:linear-gradient(90deg, var(--win95-navy) 0%, var(--win95-title-end) 100%);border-bottom:1px solid var(--win95-darker);height:18px;position:absolute;top:0;left:0;right:0}:root[data-theme=retro-90s] .auth-card:before,[data-theme=retro-90s] .auth-card:before{content:"Sunflower Stories — Sign In";z-index:1;pointer-events:none;font-family:var(--font-ui);color:#fff;font-size:11px;font-weight:700;position:absolute;top:2px;left:6px}:root[data-theme=retro-90s] .auth-card,[data-theme=retro-90s] .auth-card{padding-top:28px}:root[data-theme=retro-90s] .auth-eyebrow,[data-theme=retro-90s] .auth-eyebrow{color:navy;font-family:var(--font-ui);letter-spacing:0;text-transform:none;font-size:11px;font-weight:700}:root[data-theme=retro-90s] .auth-card h2,[data-theme=retro-90s] .auth-card h2{font-family:var(--font-display);color:#000}:root[data-theme=retro-90s] .auth-form label,[data-theme=retro-90s] .auth-form label,:root[data-theme=retro-90s] .auth-feature-card strong,[data-theme=retro-90s] .auth-feature-card strong{color:#000;font-family:var(--font-ui)}:root[data-theme=retro-90s] .auth-feature-card p,[data-theme=retro-90s] .auth-feature-card p,:root[data-theme=retro-90s] .auth-card .muted-text,[data-theme=retro-90s] .auth-card .muted-text{color:#404040;font-family:var(--font-ui);font-size:12px}:root[data-theme=retro-90s] .auth-card .text-button,[data-theme=retro-90s] .auth-card .text-button,:root[data-theme=retro-90s] .auth-card .support-email-link,[data-theme=retro-90s] .auth-card .support-email-link{color:var(--win95-link);text-decoration:underline}:root[data-theme=retro-90s] .auth-hero h1 em,[data-theme=retro-90s] .auth-hero h1 em{color:#f0f;font-style:italic}:root[data-theme=retro-90s] .home-hero,[data-theme=retro-90s] .home-hero,:root[data-theme=retro-90s] .home-reading-card,[data-theme=retro-90s] .home-reading-card,:root[data-theme=retro-90s] .home-panel,[data-theme=retro-90s] .home-panel,:root[data-theme=retro-90s] .home-glance-stat,[data-theme=retro-90s] .home-glance-stat,:root[data-theme=retro-90s] .onboarding-guide,[data-theme=retro-90s] .onboarding-guide,:root[data-theme=retro-90s] .home-welcome-card,[data-theme=retro-90s] .home-welcome-card,:root[data-theme=retro-90s] .home-reading-idle,[data-theme=retro-90s] .home-reading-idle{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face);box-shadow:none;color:#000;border-radius:0}:root[data-theme=retro-90s] .home-hero,[data-theme=retro-90s] .home-hero{padding:2px}:root[data-theme=retro-90s] .home-hero>:not(.home-hero-tagline),[data-theme=retro-90s] .home-hero>:not(.home-hero-tagline){padding-left:6px;padding-right:6px}:root[data-theme=retro-90s] .home-greeting,[data-theme=retro-90s] .home-greeting{color:#404040;font-family:var(--font-ui);padding-top:6px;font-size:12px}:root[data-theme=retro-90s] .home-greeting strong,[data-theme=retro-90s] .home-greeting strong{color:navy;background:0 0;-webkit-background-clip:unset;background-clip:unset;font-weight:700}:root[data-theme=retro-90s] .home-hero-tagline,[data-theme=retro-90s] .home-hero-tagline{color:#fff;font-family:var(--font-ui);text-transform:none;letter-spacing:0;background:linear-gradient(90deg, var(--win95-navy) 0%, var(--win95-title-end) 100%);border-bottom:1px solid var(--win95-darker);margin:0 -2px;padding:3px 8px;font-size:12px;font-style:normal;font-weight:700}:root[data-theme=retro-90s] .home-hero-tagline:after,[data-theme=retro-90s] .home-hero-tagline:after{content:" *~*~*";color:#ff0;font-weight:400}:root[data-theme=retro-90s] .home-reading-card,[data-theme=retro-90s] .home-reading-card{padding:2px;overflow:hidden}:root[data-theme=retro-90s] .reading-spotlight-inner,[data-theme=retro-90s] .reading-spotlight-inner{border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);box-shadow:none;background:#fff;border-radius:0}:root[data-theme=retro-90s] .reading-spotlight-label,[data-theme=retro-90s] .reading-spotlight-label{color:navy;font-family:var(--font-ui);letter-spacing:0;text-transform:none;font-size:11px;font-weight:700}:root[data-theme=retro-90s] .reading-spotlight-copy h2,[data-theme=retro-90s] .reading-spotlight-copy h2{color:#000;font-family:var(--font-display)}:root[data-theme=retro-90s] .reading-spotlight-author,[data-theme=retro-90s] .reading-spotlight-author,:root[data-theme=retro-90s] .reading-spotlight-detail,[data-theme=retro-90s] .reading-spotlight-detail{color:#404040;font-family:var(--font-ui);font-size:12px}:root[data-theme=retro-90s] .reading-spotlight-meta span,[data-theme=retro-90s] .reading-spotlight-meta span{color:#000;font-family:var(--font-ui);background:silver;border:1px solid gray;border-radius:0;font-size:11px}:root[data-theme=retro-90s] .reading-spotlight-bar,[data-theme=retro-90s] .reading-spotlight-bar{border:1px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);background:#fff;border-radius:0}:root[data-theme=retro-90s] .home-panel,[data-theme=retro-90s] .home-panel{padding:2px;overflow:hidden}:root[data-theme=retro-90s] .home-panel-head,[data-theme=retro-90s] .home-panel-head{background:linear-gradient(90deg, var(--win95-navy) 0%, var(--win95-title-end) 100%);margin:0;padding:3px 6px}:root[data-theme=retro-90s] .home-panel-head h2,[data-theme=retro-90s] .home-panel-head h2{color:#fff;font-family:var(--font-ui);text-transform:none;letter-spacing:0;font-size:11px;font-weight:700}:root[data-theme=retro-90s] .home-panel-sub,[data-theme=retro-90s] .home-panel-sub{color:#ccc;font-size:10px}:root[data-theme=retro-90s] .home-panel-head .home-text-link,[data-theme=retro-90s] .home-panel-head .home-text-link{color:#ff0;text-decoration:underline}:root[data-theme=retro-90s] .home-panel>:not(.home-panel-head),[data-theme=retro-90s] .home-panel>:not(.home-panel-head){padding:8px}:root[data-theme=retro-90s] .home-text-link,[data-theme=retro-90s] .home-text-link{color:var(--win95-link);font-family:var(--font-ui);font-size:11px;text-decoration:underline}:root[data-theme=retro-90s] .home-glance-stat,[data-theme=retro-90s] .home-glance-stat{border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);background:#fff;padding:8px}:root[data-theme=retro-90s] .home-glance-stat:nth-child(n),[data-theme=retro-90s] .home-glance-stat:nth-child(n){border-top:2px solid;border-top-color:var(--win95-dark)}:root[data-theme=retro-90s] .home-glance-value,[data-theme=retro-90s] .home-glance-value{color:navy;font-family:var(--font-ui);background:0 0;-webkit-background-clip:unset;background-clip:unset;font-weight:700}:root[data-theme=retro-90s] .home-glance-label,[data-theme=retro-90s] .home-glance-label{color:#404040;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .home-goals-tabs,[data-theme=retro-90s] .home-goals-tabs{background:var(--win95-face);border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);border-radius:0}:root[data-theme=retro-90s] .home-goals-tabs button,[data-theme=retro-90s] .home-goals-tabs button{color:#000;font-family:var(--font-ui);border-radius:0;font-size:11px}:root[data-theme=retro-90s] .home-goals-tabs button.is-active,[data-theme=retro-90s] .home-goals-tabs button.is-active{color:#000;background:#fff;border:1px dotted #000}:root[data-theme=retro-90s] .home-goal-bar,[data-theme=retro-90s] .home-goal-bar{border:1px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);background:#fff;border-radius:0}:root[data-theme=retro-90s] .home-goal-bar-label,[data-theme=retro-90s] .home-goal-bar-label,:root[data-theme=retro-90s] .home-goal-bar-head strong,[data-theme=retro-90s] .home-goal-bar-head strong{color:#000;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .home-goal-bar-target,[data-theme=retro-90s] .home-goal-bar-target,:root[data-theme=retro-90s] .home-goal-bar-percent,[data-theme=retro-90s] .home-goal-bar-percent{color:#404040;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .home-session-row strong,[data-theme=retro-90s] .home-session-row strong{color:#000;font-family:var(--font-ui);font-size:12px}:root[data-theme=retro-90s] .home-session-row p,[data-theme=retro-90s] .home-session-row p,:root[data-theme=retro-90s] .home-session-row time,[data-theme=retro-90s] .home-session-row time{color:#404040;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .settings-contents,[data-theme=retro-90s] .settings-contents{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face);box-shadow:none;border-radius:0}:root[data-theme=retro-90s] .settings-contents p,[data-theme=retro-90s] .settings-contents p{color:navy;font-family:var(--font-ui);letter-spacing:0;text-transform:none;font-size:11px;font-weight:700}:root[data-theme=retro-90s] .settings-contents a,[data-theme=retro-90s] .settings-contents a{color:#000;background:var(--win95-face);border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);font-family:var(--font-ui);border-radius:0;font-size:11px;text-decoration:none}:root[data-theme=retro-90s] .settings-contents a:hover,[data-theme=retro-90s] .settings-contents a:hover{color:#fff;background:navy}:root[data-theme=retro-90s] .settings-card.settings-card,[data-theme=retro-90s] .settings-card.settings-card{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face)}:root[data-theme=retro-90s] .settings-card-header h3,[data-theme=retro-90s] .settings-card-header h3{color:#fff;font-family:var(--font-ui);letter-spacing:0;text-transform:none;background:linear-gradient(90deg, var(--win95-navy) 0%, var(--win95-title-end) 100%);padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}:root[data-theme=retro-90s] .settings-card-header p,[data-theme=retro-90s] .settings-card-header p{color:#404040;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .settings-card .soft-label,[data-theme=retro-90s] .settings-card .soft-label{color:navy;font-family:var(--font-ui);letter-spacing:0;font-size:11px}:root[data-theme=retro-90s] .settings-profile-hero,[data-theme=retro-90s] .settings-profile-hero{border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);background:#fff}:root[data-theme=retro-90s] .theme-picker legend,[data-theme=retro-90s] .theme-picker legend{color:#000;font-family:var(--font-display);font-size:14px}:root[data-theme=retro-90s] .theme-picker-note,[data-theme=retro-90s] .theme-picker-note{color:#404040;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .theme-picker-card,[data-theme=retro-90s] .theme-picker-card{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face);color:#000;box-shadow:none;border-radius:0}:root[data-theme=retro-90s] .theme-picker-card strong,[data-theme=retro-90s] .theme-picker-card strong{color:navy;font-family:var(--font-ui);letter-spacing:0;text-transform:none;font-size:11px;font-weight:700}:root[data-theme=retro-90s] .theme-picker-card span:last-child,[data-theme=retro-90s] .theme-picker-card span:last-child{color:#404040;font-family:var(--font-ui);font-size:10px}:root[data-theme=retro-90s] .theme-picker-card:hover,[data-theme=retro-90s] .theme-picker-card:hover{box-shadow:none;background:#d4d4d4}:root[data-theme=retro-90s] .theme-picker-card.is-selected,[data-theme=retro-90s] .theme-picker-card.is-selected{box-shadow:none;border:1px dotted #000;outline:none}:root[data-theme=retro-90s] .settings-data-panel,[data-theme=retro-90s] .settings-data-panel,:root[data-theme=retro-90s] .settings-warning-card,[data-theme=retro-90s] .settings-warning-card,:root[data-theme=retro-90s] .settings-goal-group,[data-theme=retro-90s] .settings-goal-group{border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);background:#fff}:root[data-theme=retro-90s] .month-card,[data-theme=retro-90s] .month-card{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);background:var(--win95-face)}:root[data-theme=retro-90s] .month-card h4,[data-theme=retro-90s] .month-card h4{color:#000;font-family:var(--font-ui);font-size:12px}:root[data-theme=retro-90s] .calendar-day,[data-theme=retro-90s] .calendar-day{color:#404040;font-family:var(--font-ui);background:#fff;border:1px solid gray;border-radius:0;font-size:10px}:root[data-theme=retro-90s] .calendar-day.read-light,[data-theme=retro-90s] .calendar-day.read-light{color:#fff;background:navy}:root[data-theme=retro-90s] .reading-log-item,[data-theme=retro-90s] .reading-log-item{background:#fff;border:1px solid gray}:root[data-theme=retro-90s] input,[data-theme=retro-90s] input,:root[data-theme=retro-90s] select,[data-theme=retro-90s] select,:root[data-theme=retro-90s] textarea,[data-theme=retro-90s] textarea{border:2px solid;border-color:var(--win95-dark) var(--win95-light) var(--win95-light) var(--win95-dark);color:#000;font-family:var(--font-ui);background:#fff;border-radius:0;font-size:12px}:root[data-theme=retro-90s] label,[data-theme=retro-90s] label{color:#000;font-family:var(--font-ui);font-size:11px}:root[data-theme=retro-90s] .dock-link--accent,[data-theme=retro-90s] .dock-link--accent{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);box-shadow:none}:root[data-theme=retro-90s] .app-mobile-bar,[data-theme=retro-90s] .app-mobile-bar{border-bottom:2px solid var(--win95-darker);background:var(--win95-face)}:root[data-theme=retro-90s] .app-dock,[data-theme=retro-90s] .app-dock{border:2px solid;border-color:var(--win95-light) var(--win95-darker) var(--win95-darker) var(--win95-light);box-shadow:none;background:var(--win95-face)}:root[data-theme=retro-90s] .dock-link.active,[data-theme=retro-90s] .dock-link.active,:root[data-theme=retro-90s] .dock-link[aria-current=page],[data-theme=retro-90s] .dock-link[aria-current=page]{background:var(--win95-face);color:#000;border:1px dotted #000;border-radius:0}:root[data-theme=rainy-day],[data-theme=rainy-day]{--font-display:"Fraunces", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--heading-letter-spacing:-.01em;--heading-weight:600;--heading-transform:none;--sanctuary-mark:"🌧";--brand-gold:#e8b86d;--brand-orange:#d4954a;--brand-green:#5a7a6a;--brand-leaf:#6b8f7a;--brand-cream:#faf7f2;--brand-ink:#2c3440;--brand-slate:#5a6573;--brand-rain:#7d8fa3;--brand-mist:#a8b4c2;--brand-lamp:#f0c878;--page-bg:#8a9bab;--page-bg-soft:#a8b4c2;--surface:#f5f2eceb;--surface-soft:#e8e4dce0;--surface-raised:#faf7f2;--surface-muted:#c8d0da;--text:#2c3440;--text-soft:#5a6573;--text-inverse:#faf7f2;--card-text:#2c3440;--card-text-soft:#5a6573;--accent:#c9923a;--accent-hover:#d4a054;--accent-strong:#a67c2e;--accent-soft:#c9923a38;--accent-muted:#7d8fa333;--success:#5a7a6a;--success-soft:#5a7a6a29;--danger:#b0525e;--danger-soft:#f5e4e6;--border-color:#5a657338;--border-strong:#5a657361;--shadow-soft:0 2px 12px #2c34401a, 0 8px 24px #5a65731f;--shadow:0 8px 28px #2c344024, 0 16px 40px #5a65731a;--shadow-strong:0 16px 44px #2c34402e, 0 24px 56px #5a65731f;--focus-ring:#c9923a8c;--overlay:#2c34408c;--card-bg:var(--surface-raised);--card-bg-soft:#f3efe8;--chip-bg:linear-gradient(180deg, #f5f2ec, #e8e4dc);--chip-text:var(--text);--input-bg:#ffffffd1;--input-border:#5a657347;--input-text:var(--text);--input-placeholder:#5a65739e;--form-field-bg:#ffffffd1;--form-field-border:#5a657347;--form-field-text:var(--text);--form-field-placeholder:#5a65739e;--radius-button:var(--radius-pill);--radius-card:18px;--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:repeating-linear-gradient(168deg, transparent 0, transparent 18px, #ffffff0a 18px, #ffffff0a 19px), repeating-linear-gradient(172deg, transparent 0, transparent 28px, #ffffff08 28px, #ffffff08 29px), radial-gradient(ellipse 55% 42% at 18% 88%, #f0c87838, transparent 58%), radial-gradient(ellipse 48% 38% at 82% 78%, #e8b86d1f, transparent 55%), radial-gradient(ellipse 90% 55% at 50% -8%, #a8b4c28c, transparent 62%), radial-gradient(ellipse 70% 45% at 50% 108%, #44526247, transparent 58%), linear-gradient(180deg, #9aa8b8 0%, #8a9bab 38%, #7d8fa3 72%, #6b7d91 100%);--page-sparkle:none;--page-overlay:linear-gradient(180deg, #a8b4c252 0%, #8a9bab2e 42%, #5a657314 100%);--page-glow-left:linear-gradient(90deg, #2c344047 0%, #f0c8781f 8%, #7d8fa314 14%, transparent 28%);--page-glow-right:linear-gradient(270deg, #2c344038 0%, #7d8fa31a 10%, transparent 24%);--page-gradient:linear-gradient(180deg, #9aa8b8 0%, #8a9bab 48%, #7d8fa3 100%);--page-grain-opacity:.14;--page-grain-blend:soft-light;--page-firefly-opacity:.72;--card-sheen-top:#ffffff8c;--card-sheen-bottom:#5a65730a;--card-inner-highlight:0 1px 0 #ffffffa6 inset;--button-primary-text:var(--text-inverse);--primary-btn-bg:linear-gradient(180deg, #f0c878 0%, #c9923a 48%, #a67c2e 100%);--primary-btn-shadow:0 4px 16px #c9923a52, inset 0 1px 0 #ffffff61;--nav-link-active-top:#f5e6c8;--nav-link-active-bottom:#c9923a;--nav-link-active-text:#2c3440;--nav-link-active-border:#c9923a61;--nav-link-active-shadow:0 4px 14px #c9923a38, inset 0 1px 0 #ffffff7a;--progress-fill:linear-gradient(90deg, #7d8fa3, #c9923a, #f0c878);--shell-sidebar-bg:linear-gradient(180deg, #f5f2ec 0%, #ebe6de 48%, #e0dbd2 100%);--shell-sidebar-accent:radial-gradient(ellipse 120% 70% at 50% 110%, #c9923a24, transparent 58%);--shell-sidebar-border:#5a657333;--shell-nook-bg:radial-gradient(ellipse 100% 80% at 50% 100%, #c9923a2e, transparent 55%), linear-gradient(148deg, #faf7f2fa, #f3efe8f5);--shell-nook-border:#c9923a47;--shell-logo-shadow:0 8px 28px #5a657324;--shell-logo-glow:drop-shadow(0 0 12px #f0c87847);--spotlight-text:#2c3440;--spotlight-text-soft:#2c3440c7;--spotlight-overlay:linear-gradient(125deg, #5a6573e0 0%, #445262b8 42%, #c9923a61 100%);--spotlight-backdrop-opacity:.42;--spotlight-border:#c9923a52;--spotlight-glow:0 16px 40px #2c34402e;--spotlight-label-color:#a67c2e;--reading-zone-bg:radial-gradient(ellipse 70% 50% at 0% 100%, #f0c87824, transparent 58%), linear-gradient(175deg, #faf7f2, #f3efe8 48%, #ebe6de);--reading-zone-border:color-mix(in srgb, var(--brand-gold) 28%, var(--border-color));--theme-color-meta:#8a9bab}:root[data-theme=rainy-day] body:after,[data-theme=rainy-day] body:after{background:repeating-linear-gradient(168deg,#0000 0 14px,#ffffff0f 14px 15px),repeating-linear-gradient(172deg,#0000 0 22px,#ffffff0a 22px 23px),radial-gradient(38% 28% at 16% 82%,#f0c8782e,#0000 58%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=rainy-day] body:after,[data-theme=rainy-day] body:after{animation:8s linear infinite rainy-day-fall}}@keyframes rainy-day-fall{0%{opacity:calc(var(--page-firefly-opacity,.72) * .72);transform:translateY(0)}to{opacity:var(--page-firefly-opacity,.72);transform:translateY(18px)}}:root[data-theme=rainy-day] .page-header h2,[data-theme=rainy-day] .page-header h2{font-family:var(--font-display);color:var(--brand-ink);text-shadow:0 2px 14px #f0c87847;font-style:italic}:root[data-theme=rainy-day] .page-header p,[data-theme=rainy-day] .page-header p{color:var(--text-soft)}:root[data-theme=rainy-day] .card,[data-theme=rainy-day] .card,:root[data-theme=rainy-day] .form-card,[data-theme=rainy-day] .form-card,:root[data-theme=rainy-day] .goal-card,[data-theme=rainy-day] .goal-card,:root[data-theme=rainy-day] .chart-card,[data-theme=rainy-day] .chart-card,:root[data-theme=rainy-day] .insight-card,[data-theme=rainy-day] .insight-card,:root[data-theme=rainy-day] .heatmap-card,[data-theme=rainy-day] .heatmap-card{border-color:color-mix(in srgb, var(--brand-gold) 18%, var(--border-color));background:linear-gradient(180deg, #ffffff85, #ffffff14), var(--surface-raised);box-shadow:var(--card-shadow), inset 0 1px 0 #ffffff8c, 0 0 0 1px #ffffff47}:root[data-theme=rainy-day] .card h2,[data-theme=rainy-day] .card h2,:root[data-theme=rainy-day] .card h3,[data-theme=rainy-day] .card h3{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=rainy-day] .primary-btn,[data-theme=rainy-day] .primary-btn,:root[data-theme=rainy-day] .primary-submit,[data-theme=rainy-day] .primary-submit{letter-spacing:.02em;text-shadow:0 1px #ffffff38}:root[data-theme=rainy-day] .secondary-btn,[data-theme=rainy-day] .secondary-btn{border:1px solid color-mix(in srgb, var(--brand-gold) 24%, var(--border-color));color:var(--text);background:linear-gradient(#faf7f2,#f3efe8)}:root[data-theme=rainy-day] .app-sidebar,[data-theme=rainy-day] .app-sidebar{color:var(--text)}:root[data-theme=rainy-day] .sidebar-nav-link,[data-theme=rainy-day] .sidebar-nav-link{color:var(--text-soft)}:root[data-theme=rainy-day] .sidebar-nav-link:hover,[data-theme=rainy-day] .sidebar-nav-link:hover{color:var(--brand-ink);background:#c9923a1f}:root[data-theme=rainy-day] .sidebar-nav-link.active,[data-theme=rainy-day] .sidebar-nav-link.active,:root[data-theme=rainy-day] .sidebar-nav-link[aria-current=page],[data-theme=rainy-day] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #f5e6c8e0, #c9923a38), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 32%, var(--border-color));box-shadow:var(--nav-link-active-shadow);color:var(--brand-ink)}:root[data-theme=rainy-day] .sidebar-nav-link.active svg,[data-theme=rainy-day] .sidebar-nav-link.active svg{color:var(--brand-ink)}:root[data-theme=rainy-day] .app-sanctuary-nook,[data-theme=rainy-day] .app-sanctuary-nook{box-shadow:var(--shadow-soft);position:relative;overflow:hidden}:root[data-theme=rainy-day] .app-sanctuary-nook:before,[data-theme=rainy-day] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 70% at 50% 110%,#f0c87833,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=rainy-day] .app-sanctuary-name,[data-theme=rainy-day] .app-sanctuary-name{font-family:var(--font-display);color:var(--brand-ink);font-style:italic;font-weight:600}:root[data-theme=rainy-day] .app-sanctuary-tagline,[data-theme=rainy-day] .app-sanctuary-tagline{color:var(--text-soft)}:root[data-theme=rainy-day] .app-sanctuary-nook:after,[data-theme=rainy-day] .app-sanctuary-nook:after{color:var(--brand-rain);letter-spacing:.22em}:root[data-theme=rainy-day] .app-user-card,[data-theme=rainy-day] .app-user-card{border:1px solid color-mix(in srgb, var(--brand-gold) 22%, var(--border-color));background:linear-gradient(180deg, #ffffff8c, #f3efe86b), var(--surface-raised);box-shadow:var(--shadow-soft)}:root[data-theme=rainy-day] .app-user-card .app-user-meta strong,[data-theme=rainy-day] .app-user-card .app-user-meta strong{color:var(--brand-ink);font-weight:700}:root[data-theme=rainy-day] .app-user-avatar,[data-theme=rainy-day] .app-user-avatar{border:1px solid color-mix(in srgb, var(--brand-gold) 28%, var(--border-color));color:var(--brand-ink);background:linear-gradient(#f5e6c8,#e8b86d)}:root[data-theme=rainy-day] .auth-feature-card,[data-theme=rainy-day] .auth-feature-card,:root[data-theme=rainy-day] .auth-card,[data-theme=rainy-day] .auth-card{border:1px solid color-mix(in srgb, var(--brand-gold) 22%, var(--border-color));background:radial-gradient(ellipse 55% 42% at 0% 100%, #f0c8781f, transparent 58%), linear-gradient(180deg, #ffffff94, #f3efe847), var(--surface-raised);box-shadow:var(--shadow)}:root[data-theme=rainy-day] .auth-eyebrow,[data-theme=rainy-day] .auth-eyebrow{color:#a67c2e;letter-spacing:.12em;text-transform:uppercase}:root[data-theme=rainy-day] .auth-card h2,[data-theme=rainy-day] .auth-card h2,:root[data-theme=rainy-day] .auth-form label,[data-theme=rainy-day] .auth-form label,:root[data-theme=rainy-day] .auth-feature-card strong,[data-theme=rainy-day] .auth-feature-card strong{color:var(--brand-ink)}:root[data-theme=rainy-day] .auth-feature-card p,[data-theme=rainy-day] .auth-feature-card p,:root[data-theme=rainy-day] .auth-card .muted-text,[data-theme=rainy-day] .auth-card .muted-text{color:var(--text-soft)}:root[data-theme=rainy-day] .auth-card .text-button,[data-theme=rainy-day] .auth-card .text-button,:root[data-theme=rainy-day] .auth-card .support-email-link,[data-theme=rainy-day] .auth-card .support-email-link{color:#a67c2e}:root[data-theme=rainy-day] .home-hero,[data-theme=rainy-day] .home-hero{border-color:color-mix(in srgb, var(--brand-gold) 22%, var(--border-color));background:radial-gradient(ellipse 50% 42% at 12% 100%, #f0c8782e, transparent 58%), linear-gradient(180deg, #ffffff94, #f3efe838), var(--surface-raised);box-shadow:var(--shadow), inset 0 1px 0 #ffffff8c;position:relative;overflow:hidden}:root[data-theme=rainy-day] .home-hero:before,[data-theme=rainy-day] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(42% 32% at 100% 0,#7d8fa31f,#0000 55%),radial-gradient(38% 28% at 0 0,#a8b4c21a,#0000 52%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=rainy-day] .home-greeting,[data-theme=rainy-day] .home-greeting{color:var(--text-soft)}:root[data-theme=rainy-day] .home-greeting strong,[data-theme=rainy-day] .home-greeting strong{color:var(--brand-ink);background:0 0;-webkit-background-clip:unset;background-clip:unset;font-weight:600}:root[data-theme=rainy-day] .home-hero-tagline,[data-theme=rainy-day] .home-hero-tagline{color:var(--brand-ink);font-family:var(--font-display);font-style:italic}:root[data-theme=rainy-day] .home-hero-tagline:before,[data-theme=rainy-day] .home-hero-tagline:before{content:"";opacity:.88;background:linear-gradient(90deg,#7d8fa3,#c9923a,#f0c878);border-radius:999px;width:64px;height:3px;margin-bottom:10px;display:block;box-shadow:0 0 14px #f0c87852}:root[data-theme=rainy-day] .home-hero-tagline:after,[data-theme=rainy-day] .home-hero-tagline:after{content:" 🌧"}:root[data-theme=rainy-day] .home-reading-card,[data-theme=rainy-day] .home-reading-card,:root[data-theme=rainy-day] .home-panel,[data-theme=rainy-day] .home-panel,:root[data-theme=rainy-day] .home-glance-stat,[data-theme=rainy-day] .home-glance-stat,:root[data-theme=rainy-day] .onboarding-guide,[data-theme=rainy-day] .onboarding-guide,:root[data-theme=rainy-day] .home-welcome-card,[data-theme=rainy-day] .home-welcome-card,:root[data-theme=rainy-day] .home-reading-idle,[data-theme=rainy-day] .home-reading-idle{border-color:color-mix(in srgb, var(--brand-gold) 18%, var(--border-color));background:linear-gradient(180deg, #ffffff7a, #ffffff0f), var(--surface-raised);box-shadow:var(--card-shadow), inset 0 1px 0 #ffffff85}:root[data-theme=rainy-day] .home-panel-head h2,[data-theme=rainy-day] .home-panel-head h2,:root[data-theme=rainy-day] .onboarding-guide-head h2,[data-theme=rainy-day] .onboarding-guide-head h2{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=rainy-day] .home-glance-value,[data-theme=rainy-day] .home-glance-value{color:#a67c2e;background:0 0;-webkit-background-clip:unset;background-clip:unset;font-weight:700}:root[data-theme=rainy-day] .home-glance-label,[data-theme=rainy-day] .home-glance-label{color:var(--text-soft)}:root[data-theme=rainy-day] .home-glance-stat:first-child,[data-theme=rainy-day] .home-glance-stat:first-child{border-left:3px solid #7d8fa3}:root[data-theme=rainy-day] .home-glance-stat:nth-child(2),[data-theme=rainy-day] .home-glance-stat:nth-child(2){border-left:3px solid #c9923a}:root[data-theme=rainy-day] .home-glance-stat:nth-child(3),[data-theme=rainy-day] .home-glance-stat:nth-child(3){border-left:3px solid #5a7a6a}:root[data-theme=rainy-day] .home-glance-stat:nth-child(4),[data-theme=rainy-day] .home-glance-stat:nth-child(4){border-left:3px solid #a8b4c2}:root[data-theme=rainy-day] .reading-spotlight-inner,[data-theme=rainy-day] .reading-spotlight-inner{border:1px solid color-mix(in srgb, var(--brand-gold) 28%, var(--border-color));background:radial-gradient(ellipse 60% 45% at 0% 100%, #f0c87824, transparent 58%), var(--reading-zone-bg);box-shadow:inset 0 1px #ffffff8c,0 8px 28px #5a65731f}:root[data-theme=rainy-day] .reading-spotlight-label,[data-theme=rainy-day] .reading-spotlight-label{color:#a67c2e;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;font-weight:600}:root[data-theme=rainy-day] .reading-spotlight-copy h2,[data-theme=rainy-day] .reading-spotlight-copy h2{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=rainy-day] .reading-spotlight-author,[data-theme=rainy-day] .reading-spotlight-author,:root[data-theme=rainy-day] .reading-spotlight-detail,[data-theme=rainy-day] .reading-spotlight-detail{color:var(--text-soft)}:root[data-theme=rainy-day] .reading-spotlight-meta span,[data-theme=rainy-day] .reading-spotlight-meta span{color:var(--text-soft);border-color:color-mix(in srgb, var(--brand-gold) 18%, var(--border-color));background:#ffffff9e}:root[data-theme=rainy-day] .reading-spotlight-bar,[data-theme=rainy-day] .reading-spotlight-bar{background:#7d8fa32e}:root[data-theme=rainy-day] .home-goals-tabs,[data-theme=rainy-day] .home-goals-tabs{border-color:color-mix(in srgb, var(--brand-gold) 16%, var(--border-color));background:#ffffff7a}:root[data-theme=rainy-day] .home-goals-tabs button,[data-theme=rainy-day] .home-goals-tabs button{color:var(--text-soft)}:root[data-theme=rainy-day] .home-goals-tabs button.is-active,[data-theme=rainy-day] .home-goals-tabs button.is-active{color:var(--brand-ink);background:var(--surface-raised);box-shadow:inset 0 1px #ffffff8c}:root[data-theme=rainy-day] .home-goal-bar,[data-theme=rainy-day] .home-goal-bar{border-color:color-mix(in srgb, var(--brand-gold) 14%, var(--border-color));background:#ffffff85}:root[data-theme=rainy-day] .home-goal-bar-label,[data-theme=rainy-day] .home-goal-bar-label,:root[data-theme=rainy-day] .home-goal-bar-head strong,[data-theme=rainy-day] .home-goal-bar-head strong{color:var(--brand-ink)}:root[data-theme=rainy-day] .home-goal-bar-target,[data-theme=rainy-day] .home-goal-bar-target,:root[data-theme=rainy-day] .home-goal-bar-percent,[data-theme=rainy-day] .home-goal-bar-percent{color:var(--text-soft)}:root[data-theme=rainy-day] .home-session-row strong,[data-theme=rainy-day] .home-session-row strong{color:var(--brand-ink)}:root[data-theme=rainy-day] .home-session-row p,[data-theme=rainy-day] .home-session-row p,:root[data-theme=rainy-day] .home-session-row time,[data-theme=rainy-day] .home-session-row time{color:var(--text-soft)}:root[data-theme=rainy-day] .home-text-link,[data-theme=rainy-day] .home-text-link{color:#a67c2e}:root[data-theme=rainy-day] .month-card,[data-theme=rainy-day] .month-card{border-color:color-mix(in srgb, var(--brand-gold) 16%, var(--border-color));background:linear-gradient(180deg, #ffffff6b, transparent), var(--surface-raised)}:root[data-theme=rainy-day] .month-card h4,[data-theme=rainy-day] .month-card h4{color:var(--brand-ink)}:root[data-theme=rainy-day] .calendar-day,[data-theme=rainy-day] .calendar-day{color:var(--text-soft);background:#ffffff8c}:root[data-theme=rainy-day] .calendar-day.read-light,[data-theme=rainy-day] .calendar-day.read-light{color:var(--brand-ink);background:#c9923a52}:root[data-theme=rainy-day] .reading-log-item,[data-theme=rainy-day] .reading-log-item{border-color:color-mix(in srgb, var(--brand-gold) 14%, var(--border-color));background:#ffffff7a}:root[data-theme=rainy-day] .settings-header p,[data-theme=rainy-day] .settings-header p{color:var(--text-soft)}:root[data-theme=rainy-day] .settings-contents,[data-theme=rainy-day] .settings-contents{border:1px solid color-mix(in srgb, var(--brand-gold) 20%, var(--border-color));box-shadow:var(--shadow-soft);background:radial-gradient(80% 60% at 50% 0,#7d8fa31f,#0000 58%),linear-gradient(#ebe6de,#e0dbd2)}:root[data-theme=rainy-day] .settings-contents p,[data-theme=rainy-day] .settings-contents p{color:#a67c2e;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}:root[data-theme=rainy-day] .settings-contents a,[data-theme=rainy-day] .settings-contents a{color:var(--text);border-color:color-mix(in srgb, var(--brand-gold) 16%, var(--border-color));background:#ffffff7a}:root[data-theme=rainy-day] .settings-contents a:hover,[data-theme=rainy-day] .settings-contents a:hover{border-color:color-mix(in srgb, var(--brand-gold) 32%, var(--border-color));background:#f0c8782e}:root[data-theme=rainy-day] .settings-card.settings-card,[data-theme=rainy-day] .settings-card.settings-card{border:1px solid color-mix(in srgb, var(--brand-gold) 22%, var(--border-color));background:radial-gradient(ellipse 55% 42% at 0% 100%, #f0c8781a, transparent 58%), linear-gradient(180deg, #ffffff94, #f3efe838), var(--surface-raised);box-shadow:var(--shadow)}:root[data-theme=rainy-day] .settings-card-header h3,[data-theme=rainy-day] .settings-card-header h3{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=rainy-day] .settings-card-header p,[data-theme=rainy-day] .settings-card-header p{color:var(--text-soft)}:root[data-theme=rainy-day] .settings-card .soft-label,[data-theme=rainy-day] .settings-card .soft-label{color:#a67c2e;letter-spacing:.12em}:root[data-theme=rainy-day] .settings-profile-hero,[data-theme=rainy-day] .settings-profile-hero{border:1px solid color-mix(in srgb, var(--brand-gold) 18%, var(--border-color));background:#ffffff8c}:root[data-theme=rainy-day] .theme-picker legend,[data-theme=rainy-day] .theme-picker legend{color:var(--brand-ink);font-family:var(--font-display)}:root[data-theme=rainy-day] .theme-picker-note,[data-theme=rainy-day] .theme-picker-note{color:var(--text-soft)}:root[data-theme=rainy-day] .theme-picker-card,[data-theme=rainy-day] .theme-picker-card{color:var(--text-inverse);box-shadow:var(--shadow-soft);background:radial-gradient(80% 70% at 50% 0,#a8b4c22e,#0000 58%),linear-gradient(#6b7d91,#5a6573);border:1px solid #f0c87838}:root[data-theme=rainy-day] .theme-picker-card strong,[data-theme=rainy-day] .theme-picker-card strong{color:var(--brand-lamp);font-family:var(--font-display);font-size:.88rem}:root[data-theme=rainy-day] .theme-picker-card span:last-child,[data-theme=rainy-day] .theme-picker-card span:last-child{color:#faf7f2d1}:root[data-theme=rainy-day] .theme-picker-card:hover,[data-theme=rainy-day] .theme-picker-card:hover{box-shadow:var(--shadow-soft), 0 0 20px #f0c8781f;border-color:#f0c8786b}:root[data-theme=rainy-day] .theme-picker-card.is-selected,[data-theme=rainy-day] .theme-picker-card.is-selected{border-color:var(--brand-lamp);outline-color:var(--brand-lamp);box-shadow:0 0 0 1px #f0c87852, 0 0 24px #c9923a2e, var(--shadow-soft)}:root[data-theme=rainy-day] .settings-data-panel,[data-theme=rainy-day] .settings-data-panel,:root[data-theme=rainy-day] .settings-warning-card,[data-theme=rainy-day] .settings-warning-card,:root[data-theme=rainy-day] .settings-goal-group,[data-theme=rainy-day] .settings-goal-group{border-color:color-mix(in srgb, var(--brand-gold) 14%, var(--border-color));background:#ffffff7a}:root[data-theme=rainy-day] .settings-data-panel h4,[data-theme=rainy-day] .settings-data-panel h4,:root[data-theme=rainy-day] .settings-warning-card strong,[data-theme=rainy-day] .settings-warning-card strong,:root[data-theme=rainy-day] .settings-goal-group h4,[data-theme=rainy-day] .settings-goal-group h4{color:var(--brand-ink)}:root[data-theme=rainy-day] .settings-data-panel p,[data-theme=rainy-day] .settings-data-panel p,:root[data-theme=rainy-day] .settings-warning-card p,[data-theme=rainy-day] .settings-warning-card p{color:var(--text-soft)}:root[data-theme=rainy-day] input,[data-theme=rainy-day] input,:root[data-theme=rainy-day] select,[data-theme=rainy-day] select,:root[data-theme=rainy-day] textarea,[data-theme=rainy-day] textarea{border-color:color-mix(in srgb, var(--brand-gold) 18%, var(--border-color));color:var(--text);background:#ffffffd1}:root[data-theme=rainy-day] label,[data-theme=rainy-day] label{color:var(--text-soft)}:root[data-theme=rainy-day] .filter-chip,[data-theme=rainy-day] .filter-chip{border:1px solid color-mix(in srgb, var(--brand-gold) 18%, var(--border-color));background:linear-gradient(#faf7f2,#f3efe8)}:root[data-theme=rainy-day] .dock-link--accent,[data-theme=rainy-day] .dock-link--accent{box-shadow:var(--primary-btn-shadow)}:root[data-theme=princess],[data-theme=princess]{--font-display:"Lora", "Playfair Display", "Georgia", serif;--font-ui:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-script:"Dancing Script", "Lora", cursive;--heading-letter-spacing:.01em;--heading-weight:600;--heading-transform:none;--sanctuary-mark:"👑";--brand-gold:gold;--brand-orange:#e91e8c;--brand-green:#9c27b0;--brand-leaf:#f48fb1;--brand-cream:#fff5f9;--brand-rose:#fce4ef;--brand-amethyst:#7b1fa2;--page-bg:#efc0d8;--page-bg-soft:#fff0f6;--surface:#fff5f9;--surface-soft:#fce4ef;--surface-raised:#fffbfd;--surface-muted:#f3b8cc;--text:#4a1040;--text-soft:#8e4578;--text-inverse:#fff9fc;--accent:#e91e8c;--accent-hover:#f06292;--accent-strong:#ad1457;--accent-soft:#e91e8c33;--accent-muted:#ffd70042;--success:#9c27b0;--success-soft:#9c27b024;--danger:#c62828;--danger-soft:#ffe4f0;--border-color:#ad145738;--border-strong:#ffd7006b;--shadow-soft:0 2px 8px #e91e8c1a, 0 12px 28px #ad145714;--shadow:0 8px 24px #e91e8c24, 0 20px 44px #9c27b01a;--shadow-strong:0 16px 40px #ad14572e, 0 32px 64px #e91e8c1f;--focus-ring:#e91e8c8c;--overlay:#4a10408c;--radius-button:var(--radius-pill);--radius-card:26px;--radius-chip:var(--radius-pill);--radius-nav:var(--radius-pill);--card-border-style:solid;--card-border-width:1px;--app-background-image:none;--page-pattern:radial-gradient(ellipse 115% 58% at 50% -30%, #ffda7857, transparent 62%), radial-gradient(ellipse 38% 28% at 50% -6%, #ffffff80, transparent 68%), radial-gradient(ellipse 6% 42% at 44% -4%, #ffd70024, transparent 72%), radial-gradient(ellipse 6% 42% at 50% -4%, #fff3, transparent 72%), radial-gradient(ellipse 6% 42% at 56% -4%, #ffd7001f, transparent 72%), linear-gradient(90deg, transparent 0%, transparent 5%, #ffffff24 6.5%, transparent 8.5%, transparent 12%, #00000009 13%, transparent 15%), linear-gradient(270deg, transparent 0%, transparent 5%, #ffffff1f 6.5%, transparent 8.5%, transparent 12%, #00000008 13%, transparent 15%), radial-gradient(ellipse 82% 36% at 50% 112%, #ffb6c13d, transparent 58%);--page-sparkle:radial-gradient(1px 1px at 7% 12%, #fffffff2, transparent), radial-gradient(1px 1px at 4% 48%, #ffd700b3, transparent), radial-gradient(1px 1px at 9% 78%, #ba68c8a6, transparent), radial-gradient(1px 1px at 19% 71%, #ffd700d9, transparent), radial-gradient(1px 1px at 33% 28%, #ffffffbf, transparent), radial-gradient(1px 1px at 48% 8%, #ffd700cc, transparent), radial-gradient(1px 1px at 52% 18%, #ffffffe6, transparent), radial-gradient(1px 1px at 48% 86%, #ffb6c1d9, transparent), radial-gradient(1px 1px at 61% 15%, #ffffffe6, transparent), radial-gradient(1px 1px at 76% 54%, #ffd700bf, transparent), radial-gradient(1px 1px at 89% 83%, #fffc, transparent), radial-gradient(1px 1px at 96% 44%, #ffd700a6, transparent), radial-gradient(1px 1px at 93% 18%, #f48fb1bf, transparent), radial-gradient(1.5px 1.5px at 42% 44%, #fff0faa6, transparent), radial-gradient(1.5px 1.5px at 14% 38%, #ffd70099, transparent), radial-gradient(1.5px 1.5px at 68% 36%, #ffffffd9, transparent), radial-gradient(2px 2px at 50% 12%, #ffd7008c, transparent), radial-gradient(1px 1px at 54% 62%, #fff9, transparent);--page-overlay:linear-gradient(180deg, #ffffff52 0%, #fff8fc24 24%, #fce4ef0d 50%, #f3c8dc14 100%);--page-glow-left:linear-gradient(90deg, #58187052 0%, #7b1fa23d 4%, #9c27b029 9%, #ba68c81a 14%, #ffffff14 18%, #9c27b00a 22%, transparent 34%);--page-glow-right:linear-gradient(270deg, #680e3e47 0%, #880e4f33 5%, #c2185b24 10%, #f48fb117 15%, #ffffff12 19%, #e91e8c0a 23%, transparent 36%);--page-gradient:linear-gradient(168deg, #fffaff 0%, #fff8fc 18%, #fff0f6 40%, #fce4ef 68%, #efc0d8 100%);--page-grain-opacity:.05;--page-grain-blend:overlay;--page-firefly-opacity:.62;--card-sheen-top:#ffffff9e;--card-sheen-bottom:#e91e8c0a;--card-inner-highlight:0 1px 0 #ffffffbf inset;--button-primary-text:var(--text-inverse);--primary-btn-bg:linear-gradient(135deg, #ffc1e3 0%, #ff80ab 18%, #e91e8c 48%, #ad1457 82%, #880e4f 100%);--primary-btn-shadow:0 4px 14px #e91e8c52, 0 0 0 1px #ffd70059, inset 0 1px 0 #ffffff73;--nav-link-active-top:#ffc1e3;--nav-link-active-bottom:#e91e8c;--nav-link-active-text:var(--text-inverse);--nav-link-active-border:#ffd70073;--nav-link-active-shadow:0 4px 14px #e91e8c47, 0 0 0 1px #ffd70038, inset 0 1px 0 #fff6;--chip-bg:linear-gradient(180deg, #fff5f9, #fce4ef);--progress-fill:linear-gradient(90deg, #f48fb1, #e91e8c, gold, #fff59d);--shell-sidebar-bg:linear-gradient(180deg, #fffbfd 0%, #fff0f6 45%, #fce4ef 100%);--shell-sidebar-accent:radial-gradient(ellipse 130% 75% at 50% -10%, #ffd7002e, transparent 58%);--shell-sidebar-border:#ffd70047;--shell-nook-bg:radial-gradient(ellipse 120% 80% at 50% 0%, #ffd70033, transparent 55%), linear-gradient(148deg, #fffbfdfa, #fce4eff5);--shell-nook-border:#ffd7006b;--shell-logo-shadow:0 12px 36px #e91e8c24;--shell-logo-glow:drop-shadow(0 0 16px #ffd70073) drop-shadow(0 4px 12px #e91e8c33);--spotlight-text:#fff9fc;--spotlight-text-soft:#fff9fcd6;--spotlight-overlay:linear-gradient(125deg, #4a1040eb 0%, #880e4fc7 45%, #ad1457a6 100%);--spotlight-backdrop-opacity:.48;--spotlight-border:#ffd70061;--spotlight-glow:0 20px 48px #ad145733, 0 0 32px #ffd7001f;--spotlight-label-color:gold;--reading-zone-bg:radial-gradient(ellipse 110% 70% at 50% -25%, #ffffffbf, transparent 52%), radial-gradient(ellipse 55% 42% at 100% 100%, #ffd70024, transparent 50%), radial-gradient(ellipse 48% 38% at 0% 90%, #e91e8c14, transparent 48%), linear-gradient(175deg, #fffbfd, #fff0f6 50%, #fce4ef);--reading-zone-border:color-mix(in srgb, var(--brand-gold) 42%, var(--border-color));--theme-color-meta:#fff0f6}:root[data-theme=princess] body:after,[data-theme=princess] body:after{background:radial-gradient(9% 88% at 0%,#ba68c847,#0000 72%),radial-gradient(9% 88% at 100%,#f48fb13d,#0000 72%),radial-gradient(circle at 50% 6%,#ffd70052 0,#0000 3.5%),radial-gradient(circle at 14% 22%,#ffffff9e 0,#0000 2.2%),radial-gradient(circle at 76% 16%,#ffd7007a 0,#0000 1.8%),radial-gradient(circle at 90% 68%,#ffffff80 0,#0000 2%),radial-gradient(circle at 44% 88%,#f48fb157 0,#0000 2.4%),radial-gradient(circle at 58% 48%,#ffd70047 0,#0000 1.6%),radial-gradient(circle at 24% 55%,#ffffff70 0,#0000 1.4%),radial-gradient(circle at 68% 78%,#ffd7003d 0,#0000 1.5%),radial-gradient(circle at 36% 34%,#ffffff61 0,#0000 1.2%),radial-gradient(circle at 82% 44%,#e91e8c2e 0,#0000 2%),radial-gradient(circle at 3% 32%,#ffd70038 0,#0000 1.8%),radial-gradient(circle at 97% 62%,#ffffff59 0,#0000 1.6%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=princess] body:after,[data-theme=princess] body:after{animation:14s ease-in-out infinite alternate princess-sparkle-drift}}@keyframes princess-sparkle-drift{0%{opacity:calc(var(--page-firefly-opacity,.62) * .62);transform:translateY(0)}to{opacity:var(--page-firefly-opacity,.62);transform:translateY(-3px)}}:root[data-theme=princess] .page-header h2,[data-theme=princess] .page-header h2{font-family:var(--font-display);background:linear-gradient(118deg,#880e4f 0%,#e91e8c 35%,#f06292 55%,gold 85%,#fff59d 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic}:root[data-theme=princess] .page-header p,[data-theme=princess] .page-header p{color:var(--text-soft);font-size:1.06rem;font-family:var(--font-script);font-style:normal}:root[data-theme=princess] .card,[data-theme=princess] .card,:root[data-theme=princess] .goal-card,[data-theme=princess] .goal-card,:root[data-theme=princess] .chart-card,[data-theme=princess] .chart-card,:root[data-theme=princess] .insight-card,[data-theme=princess] .insight-card{border-color:color-mix(in srgb, var(--brand-gold) 28%, var(--border-color));box-shadow:var(--card-shadow), 0 0 0 1px #ffd70033, 0 0 28px #e91e8c0f}:root[data-theme=princess] .card:hover,[data-theme=princess] .card:hover,:root[data-theme=princess] .goal-card:hover,[data-theme=princess] .goal-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 48%, var(--border-strong));box-shadow:var(--card-shadow), 0 0 0 1px #ffd70052, 0 14px 36px #e91e8c1f}:root[data-theme=princess] .primary-btn,[data-theme=princess] .primary-btn,:root[data-theme=princess] .primary-submit,[data-theme=princess] .primary-submit{text-shadow:0 1px #ffffff47;letter-spacing:.04em;position:relative;overflow:hidden}:root[data-theme=princess] .primary-btn:after,[data-theme=princess] .primary-btn:after,:root[data-theme=princess] .primary-submit:after,[data-theme=princess] .primary-submit:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 38%,#ffffff6b 50%,#0000 62%);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-120%)}@media (prefers-reduced-motion:no-preference){:root[data-theme=princess] .primary-btn:after,[data-theme=princess] .primary-btn:after,:root[data-theme=princess] .primary-submit:after,[data-theme=princess] .primary-submit:after{animation:3.5s ease-in-out infinite princess-btn-shimmer}}@keyframes princess-btn-shimmer{0%,to{transform:translate(-120%)}45%,55%{transform:translate(120%)}}:root[data-theme=princess] .primary-btn:hover:not(:disabled),[data-theme=princess] .primary-btn:hover:not(:disabled){box-shadow:0 6px 20px #e91e8c61,0 0 0 1px #ffd70073,0 0 24px #ffd7002e,inset 0 1px #ffffff80}:root[data-theme=princess] .secondary-btn,[data-theme=princess] .secondary-btn{border:1px solid color-mix(in srgb, var(--brand-gold) 35%, var(--border-color));background:linear-gradient(180deg, #fff5f9, var(--chip-bg))}:root[data-theme=princess] .sidebar-nav-link.active,[data-theme=princess] .sidebar-nav-link.active,:root[data-theme=princess] .sidebar-nav-link[aria-current=page],[data-theme=princess] .sidebar-nav-link[aria-current=page]{background:linear-gradient(135deg, #ffc1e38c, #e91e8c2e), var(--surface-raised);border-color:color-mix(in srgb, var(--brand-gold) 50%, var(--border-color));box-shadow:var(--nav-link-active-shadow)}:root[data-theme=princess] .app-sanctuary-nook,[data-theme=princess] .app-sanctuary-nook{box-shadow:var(--shadow-soft), 0 0 28px #ffd70024;position:relative;overflow:hidden}:root[data-theme=princess] .app-sanctuary-nook:before,[data-theme=princess] .app-sanctuary-nook:before{content:"";pointer-events:none;background:radial-gradient(90% 65% at 50% -30%,#ffd70038,#0000 58%),radial-gradient(circle at 88% 12%,#ffffff59,#0000 8%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=princess] .app-sanctuary-name,[data-theme=princess] .app-sanctuary-name{font-family:var(--font-script);background:linear-gradient(120deg,#ad1457,#e91e8c,gold);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.14rem;font-style:normal;font-weight:600}:root[data-theme=princess] .app-sanctuary-sunflower,[data-theme=princess] .app-sanctuary-sunflower{filter:drop-shadow(0 0 8px #ffd70080)}:root[data-theme=princess] .app-sanctuary-nook:after,[data-theme=princess] .app-sanctuary-nook:after{letter-spacing:.5em;color:color-mix(in srgb, var(--brand-gold) 70%, transparent);font-size:.55rem}:root[data-theme=princess] .auth-logo-stage,[data-theme=princess] .auth-logo-stage{width:-moz-fit-content;width:fit-content;max-width:100%;display:inline-block;position:relative}:root[data-theme=princess] .auth-logo,[data-theme=princess] .auth-logo{z-index:1;position:relative}:root[data-theme=princess] .auth-logo-stage:before,[data-theme=princess] .auth-logo-stage:before{background:radial-gradient(75% 70% at 50% 40%,#ffd70059,#e91e8c2e 45%,#0000 72%)}:root[data-theme=princess] .auth-hero h1 em,[data-theme=princess] .auth-hero h1 em{font-family:var(--font-script);background:linear-gradient(120deg,#e91e8c,gold);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.1em;font-style:normal}:root[data-theme=princess] .auth-feature-card,[data-theme=princess] .auth-feature-card{border-color:color-mix(in srgb, var(--brand-gold) 30%, var(--border-color));background:linear-gradient(180deg, #ffffff8c, transparent 40%), color-mix(in srgb, var(--surface-raised) 92%, var(--accent-soft))}:root[data-theme=princess] .auth-feature-card:hover,[data-theme=princess] .auth-feature-card:hover{border-color:color-mix(in srgb, var(--brand-gold) 55%, var(--border-color));box-shadow:var(--shadow-soft), 0 0 24px #ffd7002e}:root[data-theme=princess] .auth-feature-card span,[data-theme=princess] .auth-feature-card span{filter:drop-shadow(0 2px 8px #e91e8c33)}:root[data-theme=princess] .auth-card,[data-theme=princess] .auth-card{box-shadow:0 24px 60px #e91e8c24,0 0 40px #ffd7001a,inset 0 1px #ffffffa6}:root[data-theme=princess] .auth-card:after,[data-theme=princess] .auth-card:after{content:"";opacity:.95;pointer-events:none;background:linear-gradient(90deg,gold,#e91e8c,#9c27b0,gold) 0 0/200% 100%;border-radius:0 0 4px 4px;height:4px;position:absolute;top:0;left:20px;right:20px}@media (prefers-reduced-motion:no-preference){:root[data-theme=princess] .auth-card:after,[data-theme=princess] .auth-card:after{animation:6s linear infinite princess-gilt-shift}}@keyframes princess-gilt-shift{0%{background-position:0%}to{background-position:200%}}:root[data-theme=princess] .auth-eyebrow,[data-theme=princess] .auth-eyebrow{font-family:var(--font-script);color:var(--accent-strong);letter-spacing:.12em;font-size:1.05rem}:root[data-theme=princess] .home-greeting,[data-theme=princess] .home-greeting{font-style:italic}:root[data-theme=princess] .home-greeting strong,[data-theme=princess] .home-greeting strong{font-family:var(--font-display);background:linear-gradient(120deg, var(--accent-strong), var(--accent));color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:600}:root[data-theme=princess] .home-hero,[data-theme=princess] .home-hero{box-shadow:var(--shadow), inset 0 1px 0 #ffffffbf, 0 0 0 1px #ffd70038, 0 0 40px #e91e8c14;position:relative;overflow:hidden}:root[data-theme=princess] .home-hero:before,[data-theme=princess] .home-hero:before{content:"";pointer-events:none;background:radial-gradient(65% 50% at 50% -8%,#ffd7002e,#0000 58%),radial-gradient(40% 35% at 100% 100%,#e91e8c1a,#0000 55%);position:absolute;top:0;bottom:0;left:0;right:0}:root[data-theme=princess] .home-hero-top,[data-theme=princess] .home-hero-top,:root[data-theme=princess] .home-reading-card,[data-theme=princess] .home-reading-card,:root[data-theme=princess] .home-glance,[data-theme=princess] .home-glance{z-index:1;position:relative}:root[data-theme=princess] .home-hero-tagline,[data-theme=princess] .home-hero-tagline{font-family:var(--font-script);color:color-mix(in srgb, var(--accent-strong) 55%, var(--text));font-size:clamp(1.35rem,2.4vw,1.7rem);font-style:normal;font-weight:600;display:inline-block}:root[data-theme=princess] .home-hero-tagline:after,[data-theme=princess] .home-hero-tagline:after{content:" 💕";margin-left:2px;font-size:.92em;display:inline}:root[data-theme=princess] .home-hero-tagline:before,[data-theme=princess] .home-hero-tagline:before{content:"";background:linear-gradient(90deg,gold,#e91e8c,gold) 0 0/200% 100%;border-radius:999px;width:72px;height:4px;margin-bottom:10px;display:block}@media (prefers-reduced-motion:no-preference){:root[data-theme=princess] .home-hero-tagline:before,[data-theme=princess] .home-hero-tagline:before{animation:5s linear infinite princess-gilt-shift}}:root[data-theme=princess] .home-reading-card,[data-theme=princess] .home-reading-card{border-color:color-mix(in srgb, var(--brand-gold) 38%, var(--border-color));background:linear-gradient(180deg, #ffffff9e, transparent 30%), color-mix(in srgb, var(--surface-raised) 94%, var(--accent-soft));box-shadow:inset 0 1px #fffc,0 10px 32px #e91e8c1a,0 0 0 1px #ffd70026}:root[data-theme=princess] .reading-spotlight-inner,[data-theme=princess] .reading-spotlight-inner{border-color:color-mix(in srgb, var(--brand-gold) 35%, var(--reading-zone-border));box-shadow:inset 0 1px #ffffffa6,0 0 20px #ffd70014}:root[data-theme=princess] .reading-spotlight-label,[data-theme=princess] .reading-spotlight-label{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-strong);font-style:italic;font-weight:800}:root[data-theme=princess] .home-glance--inset,[data-theme=princess] .home-glance--inset{border-top-color:color-mix(in srgb, var(--brand-gold) 28%, var(--border-color))}:root[data-theme=princess] .home-glance-stat,[data-theme=princess] .home-glance-stat{background:linear-gradient(180deg, #ffffff7a, transparent 42%), color-mix(in srgb, var(--surface-raised) 88%, var(--accent-soft));transition:transform var(--transition-fast), box-shadow var(--transition-fast);padding-left:46px;box-shadow:inset 0 1px #ffffff8c}:root[data-theme=princess] .home-glance-stat:hover,[data-theme=princess] .home-glance-stat:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffffa6,0 8px 24px #e91e8c1f,0 0 16px #ffd7001a}:root[data-theme=princess] .home-glance-icon,[data-theme=princess] .home-glance-icon{background:linear-gradient(180deg, #ffffffbf, color-mix(in srgb, var(--accent-soft) 80%, transparent));border-radius:9px;place-items:center;width:28px;height:28px;font-size:.92rem;display:grid;top:10px;left:10px;box-shadow:inset 0 1px #ffffffb3,0 0 10px #ffd70026}:root[data-theme=princess] .home-glance-value,[data-theme=princess] .home-glance-value{font-family:var(--font-display);background:linear-gradient(120deg,#ad1457,#e91e8c);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic}:root[data-theme=princess] .home-glance-stat:first-child,[data-theme=princess] .home-glance-stat:first-child{border-left:4px solid #ff9800}:root[data-theme=princess] .home-glance-stat:nth-child(2),[data-theme=princess] .home-glance-stat:nth-child(2){border-left:4px solid var(--brand-orange)}:root[data-theme=princess] .home-glance-stat:nth-child(3),[data-theme=princess] .home-glance-stat:nth-child(3){border-left:4px solid var(--brand-gold)}:root[data-theme=princess] .home-glance-stat:nth-child(4),[data-theme=princess] .home-glance-stat:nth-child(4){border-left:4px solid var(--brand-green)}:root[data-theme=princess] .home-glance-stat--audio,[data-theme=princess] .home-glance-stat--audio{background:linear-gradient(180deg, #ffffff7a, transparent 42%), color-mix(in srgb, var(--accent-soft) 32%, var(--surface-raised))}:root[data-theme=princess] .home-columns .goal-card,[data-theme=princess] .home-columns .goal-card,:root[data-theme=princess] .home-columns .card,[data-theme=princess] .home-columns .card{border-color:color-mix(in srgb, var(--brand-gold) 32%, var(--border-color))}:root[data-theme=princess] .filter-chip,[data-theme=princess] .filter-chip,:root[data-theme=princess] .status-chip,[data-theme=princess] .status-chip{border:1px solid color-mix(in srgb, var(--brand-gold) 22%, var(--border-color));background:linear-gradient(180deg, #fff8fc, var(--chip-bg))}:root[data-theme=princess] .progress-fill,[data-theme=princess] .progress-fill,:root[data-theme=princess] .bar-fill,[data-theme=princess] .bar-fill{box-shadow:inset 0 1px #fff6,0 0 14px #ffd70038}:root[data-theme=princess] .dock-link--accent,[data-theme=princess] .dock-link--accent{background:var(--primary-btn-bg);box-shadow:var(--primary-btn-shadow)}:root[data-theme=princess] .app-footer-sunflower,[data-theme=princess] .app-footer-sunflower{filter:drop-shadow(0 0 8px #ffd70066)}:root[data-theme=princess] .app-footer-cozy,[data-theme=princess] .app-footer-cozy{font-style:italic}:root[data-theme=princess] .app-footer-cozy p,[data-theme=princess] .app-footer-cozy p{color:color-mix(in srgb, var(--accent-strong) 40%, var(--text-soft))}:root[data-theme],[data-theme]{--button-primary-bg:var(--accent);--button-primary-bg-hover:var(--accent-hover)}button,.nav-link,.profile-avatar-link,.shelf-toggle{cursor:pointer}button:disabled{cursor:not-allowed}.nav-link{border-radius:var(--radius-nav);min-height:38px;color:var(--text-soft);white-space:nowrap;box-shadow:none;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:8px 14px;font-size:.9rem;font-weight:800;text-decoration:none;display:inline-flex}.nav-link:hover{background:var(--nav-link-bg-hover);color:var(--text);transform:var(--lift-sm)}.nav-link.active,.nav-link[aria-current=page]{color:var(--nav-link-active-text);background:var(--nav-link-active-bg);border-color:var(--nav-link-active-border);box-shadow:var(--nav-link-active-shadow)}.profile-action-btn{border:1px solid var(--button-border);border-radius:var(--radius-pill);background:var(--button-bg);min-width:88px;height:40px;color:var(--button-text);box-shadow:var(--button-shadow);justify-content:center;align-items:center;padding:0 14px;font-size:.88rem;font-weight:800;text-decoration:none;display:inline-flex}.profile-action-btn:hover{background:var(--button-bg-hover);transform:var(--lift-sm)}.profile-action-btn.active{background:var(--button-primary-bg);color:var(--button-primary-text);border-color:var(--button-primary-bg)}.primary-submit,.primary-btn{width:100%;min-height:44px;padding:var(--button-padding-lg);border-radius:var(--radius-button);background:var(--primary-btn-bg);color:var(--button-primary-text);font-family:var(--font-ui);letter-spacing:.02em;box-shadow:var(--primary-btn-shadow);border:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.primary-submit:hover:not(:disabled),.primary-btn:hover:not(:disabled){background:var(--button-primary-bg-hover);transform:var(--lift-sm)}.secondary-btn,.action-btn-secondary{border-radius:var(--radius-pill);background:var(--chip-bg);color:var(--chip-text);border:none;font-weight:800}.secondary-btn{width:100%;margin-top:var(--space-2);padding:var(--button-padding-md)}.secondary-btn:hover:not(:disabled),.action-btn-secondary:hover:not(:disabled){background:var(--surface-soft);transform:var(--lift-sm)}.danger-btn,.danger-action-btn,.action-btn-delete{border-radius:var(--radius-pill);background:var(--button-danger-bg);color:var(--button-danger-text);border:none;font-weight:800}.danger-btn:hover:not(:disabled),.danger-action-btn:hover:not(:disabled),.action-btn-delete:hover:not(:disabled){background:var(--button-danger-bg-hover);transform:var(--lift-sm)}.edit-btn,.delete-btn{width:100%;padding:var(--button-padding-sm);border-radius:var(--radius-sm);border:none;font-size:.85rem;font-weight:800}.edit-btn{margin-bottom:var(--space-2);background:var(--button-secondary-bg);color:var(--button-secondary-text)}.edit-btn:hover:not(:disabled){background:var(--button-secondary-bg-hover);transform:var(--lift-sm)}.delete-btn{background:var(--button-danger-bg);color:var(--button-danger-text)}.delete-btn:hover:not(:disabled){background:var(--button-danger-bg-hover);transform:var(--lift-sm)}.log-actions,.button-row{gap:var(--space-2);margin-top:var(--space-3);align-items:center;display:flex}.action-btn{border-radius:var(--radius-pill);border:none;flex:1;min-height:42px;padding:10px 16px;font-size:.92rem;font-weight:800;transition:transform .18s,background .18s,box-shadow .18s}.action-btn:hover:not(:disabled){transform:var(--lift-sm)}.action-btn-edit:hover:not(:disabled),.edit-log-btn:hover:not(:disabled){background:var(--button-secondary-bg-hover)}.edit-log-btn,.delete-log-btn{padding:var(--button-padding-sm);border-radius:var(--radius-pill);border:none;font-weight:800}.delete-log-btn{background:var(--button-danger-bg);color:var(--button-danger-text)}.delete-log-btn:hover:not(:disabled){background:var(--button-danger-bg-hover);transform:var(--lift-sm)}.text-link{color:var(--text-soft);font:inherit;text-align:left;background:0 0;border:none;padding:0;font-style:italic}.text-link:hover{color:var(--text);text-decoration:underline}.pagination-controls{justify-content:center;align-items:center;gap:var(--space-3);margin:var(--space-7) 0 0;display:flex}.pagination-controls button{border:1px solid var(--button-border);border-radius:var(--radius-pill);background:var(--button-bg);color:var(--button-text);padding:.65rem 1rem;font-weight:800}.pagination-controls button:hover:not(:disabled){background:var(--button-bg-hover);transform:var(--lift-sm)}.pagination-controls span{color:var(--text);font-weight:800}.book-card .card-actions{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:1fr;display:grid}.book-card-action{border-radius:var(--radius-pill);border:none;width:100%;min-height:34px;padding:8px 12px;font-size:.88rem;font-weight:800}.book-card-action-edit{background:var(--button-secondary-bg);color:var(--button-secondary-text)}.book-card-action-details{background:var(--chip-bg);color:var(--chip-text)}.book-card-action:hover:not(:disabled){transform:var(--lift-sm)}.nav-link:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.primary-submit:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.primary-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.secondary-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.danger-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.danger-action-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.edit-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.delete-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.edit-log-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.delete-log-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.profile-action-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.action-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.book-card-action:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.pagination-controls button:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}@media (max-width:768px){.nav-link{min-height:36px;padding:8px 12px;font-size:.86rem}.form-submit-bar button,.primary-submit,.primary-btn,.secondary-btn,.danger-btn,.danger-action-btn{width:100%}.profile-action-btn{min-width:76px;height:38px;padding:0 12px;font-size:.82rem}}@media (max-width:480px){.nav-link{text-align:center;width:100%}.button-row,.log-actions{flex-direction:column;align-items:stretch}}:root{--chip-padding-y:5px;--chip-padding-x:11px;--chip-font-size:.78rem;--chip-font-weight:700;--chip-line-height:1.2;--page-stack-gap:var(--section-gap)}.library-page,.reading-log-page,.add-book-page,.insights-page,.achievements-page,.shelves-page,.wrapup-page{gap:var(--page-stack-gap);display:grid}.page-header,.library-header,.reading-log-header,.add-book-header{margin-bottom:0}.filter-chip,.genre-chip,.format-chip,.edition-chip,.modal-status-chip{min-height:calc(var(--chip-padding-y) * 2 + var(--chip-font-size) * var(--chip-line-height));padding:var(--chip-padding-y) var(--chip-padding-x);border-radius:var(--chip-radius,var(--radius-chip));font-family:var(--font-ui);font-size:var(--chip-font-size);font-weight:var(--chip-font-weight);line-height:var(--chip-line-height);white-space:nowrap;justify-content:center;align-items:center;gap:4px;display:inline-flex}.active-filter-chips{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.filter-chip{border:1px solid color-mix(in srgb, var(--chip-border,var(--border-color)) 80%, transparent);background:var(--chip-bg);color:var(--chip-text)}.genre-chip{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border-color));color:var(--accent-strong,var(--accent));cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast);background:0 0;text-decoration:none}.genre-chip:hover{background:var(--accent-soft);transform:var(--lift-sm)}.format-chip,.edition-chip{border:1px solid var(--chip-border,var(--border-color));background:var(--chip-bg);color:var(--chip-text)}.toolbar-btn{border:1px solid var(--button-border,var(--border-color));border-radius:var(--radius-pill);background:var(--button-bg,var(--surface));min-height:36px;color:var(--button-text,var(--text));font-family:var(--font-ui);transition:background var(--transition-fast), transform var(--transition-fast);flex-shrink:0;padding:7px 14px;font-size:.82rem;font-weight:700}.toolbar-btn:hover:not(:disabled){background:var(--button-bg-hover,var(--surface-soft));transform:var(--lift-sm)}.toolbar-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.library-summary{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.action-btn{font-family:var(--font-ui);font-weight:700}.action-btn-secondary{background:var(--chip-bg);min-height:42px;color:var(--chip-text);padding:10px 16px}.action-btn-secondary:hover:not(:disabled){background:var(--surface-soft)}.action-btn-edit,.edit-log-btn{background:var(--button-secondary-bg);color:var(--button-secondary-text)}.action-btn-delete,.delete-log-btn{background:var(--button-danger-bg);color:var(--button-danger-text)}.button-row{gap:var(--space-2)}.empty-state{border-radius:var(--radius-xl);padding:clamp(28px,5vw,40px) clamp(20px,4vw,32px)}.empty-state h3{margin:0 0 var(--space-2);font-size:clamp(1.15rem,3vw,1.35rem)}.empty-state p{max-width:42ch;margin:0 auto;line-height:1.55}.empty-state-actions,.onboarding-empty-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.empty-state-actions .primary-btn,.empty-state-actions .secondary-btn,.onboarding-empty-actions .primary-btn,.onboarding-empty-actions .secondary-btn{width:auto;min-width:min(100%,168px);max-width:100%;margin-top:0}.empty-state>.primary-btn,.empty-state>.secondary-btn{width:auto;min-width:min(100%,200px);max-width:320px;margin:var(--space-4) auto 0}.library-controls input,.library-controls select,.achievement-filters select{border-radius:var(--radius-md);min-height:42px;font-family:var(--font-ui);padding:10px 14px;font-size:.94rem}.achievement-filters select{border-radius:var(--radius-md);font-weight:600}.genre-chip:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.toolbar-btn:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}.filter-chip:focus-visible{box-shadow:0 0 0 4px var(--focus-ring)}@media (max-width:768px){:root{--page-stack-gap:18px}.library-summary{flex-direction:column;align-items:stretch}.library-summary .toolbar-btn{width:100%}.empty-state-actions,.onboarding-empty-actions{flex-direction:column;align-items:stretch}.empty-state-actions .primary-btn,.empty-state-actions .secondary-btn,.onboarding-empty-actions .primary-btn,.onboarding-empty-actions .secondary-btn,.empty-state>.primary-btn{width:100%;min-width:0;max-width:none}}.cozy-icon{flex-shrink:0;display:inline-flex}.cozy-icon-medallion{border:1px solid var(--cozy-icon-border,color-mix(in srgb, var(--accent) 28%, var(--border-color)));background:radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--cozy-icon-bg-soft,var(--accent-soft)) 85%, white), var(--cozy-icon-bg,color-mix(in srgb, var(--accent-soft) 55%, var(--surface-raised))));box-shadow:inset 0 1px 0 #ffffff59, 0 4px 12px color-mix(in srgb, var(--cozy-icon-shadow,var(--accent)) 12%, transparent);color:var(--cozy-icon-fg,var(--accent-strong,var(--accent)));border-radius:50%;place-items:center;display:grid}.cozy-icon-svg{width:58%;height:58%;display:block}.cozy-icon-emoji{filter:drop-shadow(0 1px 2px #00000014);font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;line-height:1}.cozy-icon--xs .cozy-icon-medallion{width:28px;height:28px}.cozy-icon--xs .cozy-icon-emoji{font-size:.95rem}.cozy-icon--sm .cozy-icon-medallion{width:36px;height:36px}.cozy-icon--sm .cozy-icon-emoji{font-size:1.1rem}.cozy-icon--md .cozy-icon-medallion{width:46px;height:46px}.cozy-icon--md .cozy-icon-emoji{font-size:1.35rem}.cozy-icon--lg .cozy-icon-medallion{width:58px;height:58px}.cozy-icon--lg .cozy-icon-emoji{font-size:1.65rem}.cozy-icon--xl .cozy-icon-medallion{width:72px;height:72px}.cozy-icon--xl .cozy-icon-emoji{font-size:2rem}.cozy-icon--tone-streak{--cozy-icon-bg:color-mix(in srgb, #ff9f43 24%, var(--surface-raised));--cozy-icon-bg-soft:#ffd4a8;--cozy-icon-border:color-mix(in srgb, #ff8a3d 42%, var(--border-color));--cozy-icon-fg:#c45a12;--cozy-icon-shadow:#ff8a3d}.cozy-icon--tone-pages{--cozy-icon-bg:color-mix(in srgb, #6ea8ff 22%, var(--surface-raised));--cozy-icon-bg-soft:#c8dcff;--cozy-icon-border:color-mix(in srgb, #5b93ef 40%, var(--border-color));--cozy-icon-fg:#2f5fbf;--cozy-icon-shadow:#5b93ef}.cozy-icon--tone-days{--cozy-icon-bg:color-mix(in srgb, #ffd166 24%, var(--surface-raised));--cozy-icon-bg-soft:#ffe8a3;--cozy-icon-border:color-mix(in srgb, #f4b400 42%, var(--border-color));--cozy-icon-fg:#9a6b00;--cozy-icon-shadow:#f4b400}.cozy-icon--tone-audio{--cozy-icon-bg:color-mix(in srgb, #b197fc 24%, var(--surface-raised));--cozy-icon-bg-soft:#ddd0ff;--cozy-icon-border:color-mix(in srgb, #9775fa 42%, var(--border-color));--cozy-icon-fg:#6741d9;--cozy-icon-shadow:#9775fa}.cozy-icon--tone-books{--cozy-icon-bg:color-mix(in srgb, #69db7c 22%, var(--surface-raised));--cozy-icon-bg-soft:#c7f5ce;--cozy-icon-border:color-mix(in srgb, #51cf66 40%, var(--border-color));--cozy-icon-fg:#2f9e44;--cozy-icon-shadow:#51cf66}.cozy-icon--tone-finished{--cozy-icon-bg:color-mix(in srgb, #63e6be 22%, var(--surface-raised));--cozy-icon-bg-soft:#c3fae8;--cozy-icon-border:color-mix(in srgb, #38d9a9 40%, var(--border-color));--cozy-icon-fg:#0ca678;--cozy-icon-shadow:#38d9a9}.cozy-icon--tone-sessions{--cozy-icon-bg:color-mix(in srgb, #91a7ff 22%, var(--surface-raised));--cozy-icon-bg-soft:#dbe4ff;--cozy-icon-border:color-mix(in srgb, #748ffc 40%, var(--border-color));--cozy-icon-fg:#3b5bdb;--cozy-icon-shadow:#748ffc}.cozy-icon--tone-mood{--cozy-icon-bg:color-mix(in srgb, #ff8787 22%, var(--surface-raised));--cozy-icon-bg-soft:#ffc9c9;--cozy-icon-border:color-mix(in srgb, #fa5252 38%, var(--border-color));--cozy-icon-fg:#c92a2a;--cozy-icon-shadow:#fa5252}.cozy-icon--tone-trophy{--cozy-icon-bg:color-mix(in srgb, #ffe066 26%, var(--surface-raised));--cozy-icon-bg-soft:#fff3bf;--cozy-icon-border:color-mix(in srgb, #fab005 44%, var(--border-color));--cozy-icon-fg:#b8860b;--cozy-icon-shadow:#fab005}.cozy-icon--tone-sunflower{--cozy-icon-bg:color-mix(in srgb, var(--accent-soft) 70%, #fff8dc);--cozy-icon-bg-soft:#fff3bf;--cozy-icon-border:color-mix(in srgb, var(--accent) 45%, var(--border-color));--cozy-icon-fg:var(--accent-strong,var(--accent));--cozy-icon-shadow:var(--accent)}.cozy-icon--tone-xp{--cozy-icon-bg:color-mix(in srgb, #da77f2 22%, var(--surface-raised));--cozy-icon-bg-soft:#eebefa;--cozy-icon-border:color-mix(in srgb, #be4bdb 40%, var(--border-color));--cozy-icon-fg:#9c36b5;--cozy-icon-shadow:#be4bdb}.cozy-icon--tone-goals,.cozy-icon--tone-target{--cozy-icon-bg:color-mix(in srgb, #74c0fc 22%, var(--surface-raised));--cozy-icon-bg-soft:#d0ebff;--cozy-icon-border:color-mix(in srgb, #339af0 40%, var(--border-color));--cozy-icon-fg:#1864ab;--cozy-icon-shadow:#339af0}.cozy-icon--tone-locked{--cozy-icon-bg:color-mix(in srgb, var(--text-soft) 12%, var(--surface-raised));--cozy-icon-bg-soft:color-mix(in srgb, var(--surface-soft) 80%, white);--cozy-icon-border:color-mix(in srgb, var(--text-soft) 28%, var(--border-color));--cozy-icon-fg:var(--text-soft);--cozy-icon-shadow:var(--text-soft)}.cozy-icon--tone-mystery{--cozy-icon-bg:color-mix(in srgb, #868e96 18%, var(--surface-raised));--cozy-icon-bg-soft:#dee2e6;--cozy-icon-border:color-mix(in srgb, #495057 32%, var(--border-color));--cozy-icon-fg:#495057;--cozy-icon-shadow:#868e96}.cozy-icon--tone-rose{--cozy-icon-bg:color-mix(in srgb, #ff8fb1 24%, var(--surface-raised));--cozy-icon-bg-soft:#ffdeeb;--cozy-icon-border:color-mix(in srgb, #f06595 40%, var(--border-color));--cozy-icon-fg:#c2255c;--cozy-icon-shadow:#f06595}.cozy-icon--tone-leaf{--cozy-icon-bg:color-mix(in srgb, #8ce99a 22%, var(--surface-raised));--cozy-icon-bg-soft:#d8f5e1;--cozy-icon-border:color-mix(in srgb, #40c057 38%, var(--border-color));--cozy-icon-fg:#2b8a3e;--cozy-icon-shadow:#40c057}.cozy-icon--tone-flame{--cozy-icon-bg:color-mix(in srgb, #ff922b 24%, var(--surface-raised));--cozy-icon-bg-soft:#ffd8a8;--cozy-icon-border:color-mix(in srgb, #fd7e14 42%, var(--border-color));--cozy-icon-fg:#d9480f;--cozy-icon-shadow:#fd7e14}.cozy-icon--tone-paperback,.cozy-icon--tone-hardback,.cozy-icon--tone-ebook{--cozy-icon-bg:color-mix(in srgb, #69db7c 22%, var(--surface-raised));--cozy-icon-bg-soft:#c7f5ce;--cozy-icon-border:color-mix(in srgb, #51cf66 40%, var(--border-color));--cozy-icon-fg:#2f9e44;--cozy-icon-shadow:#51cf66}.cozy-icon--tone-progress{--cozy-icon-bg:color-mix(in srgb, #74c0fc 22%, var(--surface-raised));--cozy-icon-bg-soft:#d0ebff;--cozy-icon-border:color-mix(in srgb, #339af0 40%, var(--border-color));--cozy-icon-fg:#1864ab;--cozy-icon-shadow:#339af0}.cozy-icon--tone-star,.cozy-icon--tone-crown,.cozy-icon--tone-gem{--cozy-icon-bg:color-mix(in srgb, #ffe066 26%, var(--surface-raised));--cozy-icon-bg-soft:#fff3bf;--cozy-icon-border:color-mix(in srgb, #fab005 44%, var(--border-color));--cozy-icon-fg:#b8860b;--cozy-icon-shadow:#fab005}.cozy-icon--tone-note,.cozy-icon--tone-rainbow,.cozy-icon--tone-reread{--cozy-icon-bg:color-mix(in srgb, #91a7ff 22%, var(--surface-raised));--cozy-icon-bg-soft:#dbe4ff;--cozy-icon-border:color-mix(in srgb, #748ffc 40%, var(--border-color));--cozy-icon-fg:#3b5bdb;--cozy-icon-shadow:#748ffc}.achievement-badge{flex-shrink:0}.achievement-badge.is-unlocked .cozy-icon-medallion{transform:scale(1.02)}.achievement-badge.is-locked{filter:grayscale(.35);opacity:.88}.achievement-badge--legendary.is-unlocked .cozy-icon-medallion,.achievement-badge--epic.is-unlocked .cozy-icon-medallion{box-shadow:inset 0 1px 0 #fff6, 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent), 0 6px 18px color-mix(in srgb, var(--accent) 24%, transparent)}.achievement-badge--secret.is-unlocked .cozy-icon-medallion{box-shadow:inset 0 1px 0 #ffffff59, 0 0 0 1px color-mix(in srgb, var(--success) 20%, transparent), 0 6px 18px color-mix(in srgb, var(--success) 22%, transparent)}.achievement-badge--rare.is-unlocked .cozy-icon-medallion{box-shadow:inset 0 1px 0 #ffffff59, 0 5px 14px color-mix(in srgb, var(--cozy-icon-shadow) 18%, transparent)}.stat-tile{gap:10px;display:grid;position:relative}.stat-tile-copy{min-width:0}.stat-tile-label{font-family:var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft);font-size:.76rem;font-weight:700;display:block}.stat-tile-value{font-family:var(--font-display);color:var(--text);font-size:1.45rem;font-weight:600;line-height:1.05;display:block}.stat-tile-sub{font-family:var(--font-ui);color:var(--accent-strong);margin-top:2px;font-size:.68rem;display:block}.stat-tile-helper{font-family:var(--font-ui);color:var(--text-soft);margin:4px 0 0;font-size:.82rem;line-height:1.45}.stat-tile--card,.stat-tile--insight{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px 16px;display:grid}.stat-tile--card .cozy-icon,.stat-tile--insight .cozy-icon{position:static;top:auto;left:auto}.stat-tile--card .stat-tile-value,.stat-tile--insight .stat-tile-value{margin-top:4px;font-size:1.55rem}.stat-tile--card .stat-tile-helper,.stat-tile--insight .stat-tile-helper{margin-top:6px}.stat-tile--glance{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface-raised) 88%, var(--accent-soft));border:1px solid color-mix(in srgb, var(--accent) 10%, transparent);grid-template-columns:36px minmax(0,1fr);align-items:start;gap:10px;padding:12px}.stat-tile--glance .stat-tile-value{font-size:1.45rem}.stat-tile--glance .stat-tile-label{text-transform:none;letter-spacing:0;font-size:.74rem;font-weight:600}.stat-tile--wrap{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface-raised);grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;padding:14px 16px}.stat-tile--wrap .stat-tile-label{letter-spacing:.06em;font-size:.72rem}.stat-tile--wrap .stat-tile-value{font-size:1.35rem}.stat-tile--wrap .stat-tile-helper{font-size:.78rem}.stat-tile--mobile{background:var(--surface-raised);border:1px solid color-mix(in srgb, var(--border-color) 80%, transparent);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:6px;min-width:92px;padding:12px 10px;display:flex}.stat-tile--mobile .stat-tile-copy{gap:2px;display:grid}.stat-tile--mobile .stat-tile-value{font-size:1.15rem}.stat-tile--mobile .stat-tile-label{text-transform:none;letter-spacing:0;font-size:.68rem}.stat-tile--inline{align-items:center;gap:8px;display:inline-flex}.stat-tile--inline .stat-tile-copy{display:inline}.stat-tile--inline .stat-tile-label{font-size:inherit;text-transform:none;letter-spacing:0;color:inherit;display:inline}.stat-tile--streak{background:color-mix(in srgb, #ff9f43 12%, var(--surface-raised))}.stat-tile--audio{background:color-mix(in srgb, #b197fc 14%, var(--surface-raised))}.level-badge .cozy-icon-medallion{width:84px;height:84px}.latest-achievement-card .achievement-badge{flex-shrink:0}.latest-achievement-card__main{align-items:flex-start;gap:14px;min-width:0;display:flex}.stat-tile.insight-card,.stat-tile.goal-card{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.insights-page .stat-tile.goal-card,.insights-page .stat-tile.insight-card,.achievement-summary .stat-tile.insight-card{flex-direction:unset;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.achievement-pin-summary-card__main{align-items:center;gap:10px;min-width:0;display:flex}.achievement-pin-summary-card__main strong{min-width:0}.home-goal-bar-label{align-items:center;gap:8px;display:inline-flex}.home-pinned-badge{align-items:center;gap:12px;display:flex}.home-target-body{align-items:flex-start}.home-target-icon-wrap{flex-shrink:0}.wrap-stat-card{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;display:grid}.home-mobile-stats-track{gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.home-mobile-achievement,.home-achievement-strip{align-items:center;gap:12px;display:flex}.xp-breakdown-row{align-items:center;gap:10px;display:flex}.xp-breakdown-row .cozy-icon--xs .cozy-icon-medallion{width:24px;height:24px}@media (max-width:768px){.stat-tile--card,.stat-tile--insight{gap:10px;padding:12px 14px}.stat-tile--card .cozy-icon--md .cozy-icon-medallion,.stat-tile--insight .cozy-icon--md .cozy-icon-medallion{width:40px;height:40px}.stat-tile--glance{grid-template-columns:32px minmax(0,1fr);padding:10px}.stat-tile--glance .stat-tile-value{font-size:1.25rem}}input,select,textarea{border:1px solid var(--form-field-border);background:var(--form-field-bg);color:var(--form-field-text)}input::placeholder,textarea::placeholder{color:var(--form-field-placeholder);opacity:.72}input:disabled,select:disabled,textarea:disabled{background:var(--surface-muted);color:var(--text-soft)}.inline-edit-form,.reading-log-edit-form,.reading-log-form,.add-book-form,.settings-card{gap:var(--space-4);flex-direction:column;display:flex}.inline-edit-form input,.inline-edit-form select,.inline-edit-form textarea,.reading-log-edit-form input,.reading-log-edit-form select,.reading-log-edit-form textarea,.add-book-form input,.add-book-form select,.add-book-form textarea,.reading-log-form input,.reading-log-form select,.reading-log-form textarea,.settings-card input,.settings-card select,.settings-card textarea{border-radius:var(--radius-md);width:100%;min-width:0;padding:11px 13px;font-size:.95rem}.inline-edit-form textarea,.reading-log-edit-form textarea{resize:vertical;min-height:90px}.form-card{padding:var(--space-5);border:1px solid var(--card-border);border-radius:var(--radius-2xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--card-bg);box-shadow:var(--card-shadow)}.featured-form-card{border-color:var(--border-strong);background:radial-gradient(circle at top left, var(--accent-soft), transparent 24%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--card-bg)}.form-card-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.form-icon,.achievement-icon{border-radius:var(--radius-circle);background:var(--accent-soft);flex:none;place-items:center;display:grid}.form-icon{width:42px;height:42px;font-size:1.15rem}.form-card-header h3{color:var(--text);margin:0;font-size:1.2rem;line-height:1.15}.form-card-header p{color:var(--text-soft);margin:3px 0 0;font-size:.9rem;line-height:1.35}.form-grid{gap:var(--space-4);margin-bottom:var(--space-4);display:grid}.form-grid:last-child{margin-bottom:0}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.add-book-form label,.reading-log-form label,.settings-card label{gap:var(--space-2);min-width:0;color:var(--text);flex-direction:column;font-size:.9rem;font-weight:800;display:flex}.add-book-form input,.add-book-form select{height:46px}.add-book-form textarea{resize:vertical;min-height:115px}.add-book-form small,.reading-log-form small,.settings-card small{color:var(--text-soft);font-size:.76rem;font-weight:500;line-height:1.35}.form-error{color:var(--danger-text);margin-top:.35rem;font-size:.85rem;font-weight:700;display:block}.isbn-fetch-card{padding:var(--space-4) var(--space-5)}.isbn-fetch-row{gap:var(--space-3);grid-template-columns:1fr minmax(220px,auto);align-items:start;display:grid}.isbn-fetch-row .form-error{grid-column:1/-1}.isbn-fetch-row .primary-btn{width:auto;min-width:220px;height:46px}.form-submit-bar{z-index:10;justify-content:flex-end;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:color-mix(in srgb, var(--surface) 90%, transparent);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;position:sticky;bottom:12px}.form-submit-bar button{border:1px solid var(--button-border);border-radius:var(--radius-pill);background:var(--button-bg);min-height:42px;color:var(--button-text);padding:10px 18px;font-weight:800}.form-submit-bar button:hover:not(:disabled){background:var(--button-bg-hover);transform:var(--lift-sm)}.form-submit-bar .primary-submit{background:var(--button-primary-bg);width:auto;color:var(--button-primary-text);border-color:#0000}.form-submit-bar .primary-submit:hover:not(:disabled){background:var(--button-primary-bg-hover)}.checkbox-row,.checkbox-label{align-items:center;gap:var(--space-2);flex-direction:row!important;display:flex!important}.checkbox-row input,.checkbox-label input{width:auto;accent-color:var(--accent)}@media (max-width:1100px){.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.isbn-fetch-row{grid-template-columns:1fr}.isbn-fetch-row .primary-btn{width:100%;min-width:0}}@media (max-width:900px){.form-grid.two,.form-grid.three{grid-template-columns:1fr}.form-submit-bar{border-radius:var(--radius-xl);flex-direction:column}}@media (max-width:768px){.form-card{padding:var(--space-4);border-radius:var(--radius-lg)}.form-submit-bar{align-items:stretch}.form-submit-bar .primary-submit{width:100%}}.cover-upload-preview{width:96px;height:144px;margin-top:var(--space-3);object-fit:cover;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-soft);box-shadow:var(--shadow-soft);display:block}.success-text{color:var(--success);font-weight:800}@media (max-width:768px){.isbn-fetch-row{grid-template-columns:1fr}.isbn-fetch-row button{width:100%}}.book-cover-frame{aspect-ratio:2/3;border-radius:var(--radius-md);background:linear-gradient(165deg, var(--brand-cream) 0%, var(--surface-soft) 45%, color-mix(in srgb, var(--brand-green) 12%, var(--surface-muted)) 100%);width:100%;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent), 0 12px 28px color-mix(in srgb, var(--text) 12%, transparent);position:relative;overflow:hidden}.book-cover-frame img{object-fit:cover;width:100%;height:100%;display:block}.book-cover-fallback{text-align:center;background:radial-gradient(circle at 50% 30%, var(--accent-soft), transparent 55%), linear-gradient(180deg, color-mix(in srgb, var(--brand-cream) 90%, white), var(--surface-soft));flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;padding:14px;display:flex}.book-cover-fallback-art{border-radius:var(--radius-circle);background:color-mix(in srgb, var(--surface-raised) 85%, transparent);width:72px;height:72px;box-shadow:var(--shadow-soft);place-items:center;display:grid;position:relative}.book-cover-fallback-sunflower{filter:drop-shadow(0 2px 8px color-mix(in srgb, var(--accent) 50%, transparent));font-size:2rem;line-height:1}.book-cover-fallback-book{opacity:.4;font-size:.9rem;position:absolute;bottom:4px;right:6px}.book-cover-fallback-title{font-family:var(--font-display);color:var(--text);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0;font-size:.72rem;font-style:italic;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}[data-theme=forest-dark] .book-cover-fallback,html[data-theme-mode=dark] .book-cover-fallback{background:radial-gradient(circle at 50% 25%, var(--accent-soft), transparent 50%), linear-gradient(180deg, var(--surface-muted), var(--surface-soft))}[data-theme=forest-dark] .book-cover-fallback-art,html[data-theme-mode=dark] .book-cover-fallback-art{background:#0003}.card,.form-card,.goal-card,.insight-card,.level-card,.achievement-card,.shelf-section,.chart-card,.wrap-section,.wrap-stat-card,.wrap-highlight,.wrap-chart-card{background:var(--card-gradient), var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--card-shadow);color:var(--card-text)}.card{padding:var(--card-padding);border-radius:var(--radius-card);border-width:var(--card-border-width);border-style:var(--card-border-style)}.page-header{margin-bottom:22px}.page-header h2,.settings-card h3,.xp-breakdown h3,.achievement-section-title,.monthly-insights-section h3,.reading-log-form h3,.reading-log-layout h3,.heatmap-card h3,.recent-activity-section h3,.shelf-header h3,.book-content h3,.form-card-header h3,.book-modal h2{color:var(--text)}.card h3,.card h2,.card h4,.form-card h3,.form-card-header h3,.goal-card h3,.reading-log-form h3,.reading-log-layout h3,.heatmap-card h3,.recent-activity-section h3,.shelf-header h3,.book-content h3,.chart-card h4,.insight-card h4,.wrap-section h3{color:inherit}.page-header h2{margin:0 0 8px;font-size:clamp(1.5rem,2vw,1.9rem);line-height:1.15}.page-header p,.empty-text,.goal-card p,.book-stats,.notes-preview,.modal-stat,.book-read-dates p{color:var(--text-soft)}.empty-state{text-align:center;border:1px dashed var(--border-color);border-radius:var(--radius-xl);background:var(--surface);color:var(--text-soft);padding:40px}.empty-state h3{color:var(--text);margin-top:0}.book-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.book-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface);height:100%;box-shadow:var(--shadow-soft);flex-direction:column;display:flex;position:relative;overflow:hidden}.book-card:hover{transform:var(--lift-md)}.book-cover{aspect-ratio:2/3;object-fit:cover;background:var(--surface-soft);width:100%;max-height:260px;padding:.25rem;display:block}.book-content{background:var(--surface);flex-direction:column;flex:1;padding:14px 14px 12px;display:flex}.book-content h3{margin:0 0 5px;font-size:.98rem;line-height:1.22}.book-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.book-content>*+*{margin-top:8px}.sunflower-rating{flex-shrink:0;font-size:1rem}.series-line{color:var(--text-soft);margin:0 0 8px;font-size:.82rem}.book-meta{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.book-meta span{border-radius:var(--radius-pill);background:var(--chip-bg);color:var(--text);padding:4px 8px;font-size:.72rem}.card-actions{margin-top:10px}.read-count-bar{border-bottom:1px solid var(--border-color);background:var(--accent-soft);color:var(--text);justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:.8rem;font-weight:700;display:flex}.read-count-bar span{color:var(--text)}.read-count-bar button{border-radius:var(--radius-pill);background:var(--button-primary-bg);color:var(--button-primary-text);cursor:pointer;border:none;padding:6px 12px;font-weight:700}.reading-progress{margin:10px 0}.progress-top{color:var(--text-soft);justify-content:space-between;gap:12px;margin-bottom:6px;font-size:.8rem;display:flex}.progress-top strong{color:var(--text)}.progress-bar,.bar-track{border-radius:var(--radius-pill);background:var(--progress-track);height:10px;overflow:hidden}.progress-fill,.bar-fill{border-radius:var(--radius-pill);background:var(--progress-fill);height:100%;box-shadow:0 0 12px color-mix(in srgb, var(--accent) 35%, transparent)}.tag-sections{margin-top:14px}.tag-heading{color:var(--text);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:.8rem;font-weight:700}.book-stats{flex-wrap:wrap;gap:14px;margin-top:14px;font-size:.82rem;display:flex}.quote-preview{border-left:4px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text-soft);margin:10px 0;padding:10px;font-size:.85rem;font-style:italic}.notes-preview{font-size:.82rem;line-height:1.5}.read-history{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--accent-soft);margin:10px 0;padding:10px;font-size:.85rem}.read-history strong{color:var(--text);margin-bottom:8px;display:block}.expanded-book-details{border-top:1px solid var(--border-color);margin-top:10px;padding-top:10px}.book-modal-backdrop{z-index:100;background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:24px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.book-modal{border:1px solid var(--border-strong);border-radius:var(--radius-3xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 30%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);width:min(1180px,100%);max-height:90vh;box-shadow:var(--shadow-strong);padding:28px;position:relative;overflow-y:auto}.modal-close-btn{z-index:5;border:1px solid var(--border-color);border-radius:var(--radius-circle);background:var(--chip-bg);width:42px;height:42px;color:var(--chip-text);cursor:pointer;place-items:center;font-size:1.6rem;font-weight:900;line-height:1;display:grid;position:absolute;top:18px;right:18px}.modal-close-btn:hover{background:var(--button-primary-bg);color:var(--button-primary-text);transform:var(--lift-sm)}.book-modal-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:38px;display:grid}.book-modal-cover-panel{gap:var(--space-4);display:grid;position:sticky;top:0}.book-modal-cover-frame{border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 35%), var(--surface-soft);box-shadow:var(--shadow-strong);position:relative;overflow:hidden}.book-modal-cover-frame:after{content:"";pointer-events:none;background:linear-gradient(#ffffff14,#0000 34%,#0000002e);position:absolute;top:0;bottom:0;left:0;right:0}.book-modal-cover{object-fit:cover;width:100%;max-height:520px;display:block}.book-modal-main{min-width:0}.book-modal-header{padding-right:44px}.book-modal h2{max-width:780px;color:var(--text);letter-spacing:-.05em;margin:0 0 8px;font-size:clamp(2rem,4vw,3.3rem);line-height:1}.modal-author{color:var(--text-soft);margin:0 0 16px;font-size:1.15rem;font-style:italic;font-weight:700}.modal-rating{justify-self:center;margin:0;font-size:1.45rem}.modal-hero-stats{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.modal-hero-stats div{padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft);box-shadow:var(--shadow-soft)}.modal-hero-stats span{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:900;display:block}.modal-hero-stats strong{margin-top:var(--space-1);color:var(--text);font-size:1.15rem;line-height:1.1;display:block}.modal-meta-stack{gap:12px;margin:20px 0 24px;display:grid}.modal-meta-item{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-soft);align-items:center;gap:12px;padding:12px 14px;display:flex}.modal-meta-item p{color:var(--text-soft);margin:0;font-weight:700}.modal-status-chip{border:1px solid;font-weight:900}.modal-status-reading{color:var(--success)!important}.modal-status-read{color:var(--accent)!important}.modal-status-tbr,.modal-status-to-be-read{color:var(--text-soft)!important}.modal-status-wishlist{color:var(--accent-muted)!important}.modal-status-dnf{color:var(--danger)!important}.modal-status-out-of-library{opacity:.78;color:var(--text-soft)!important}.book-detail-tabs{border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:12px;margin:28px 0 22px;padding-bottom:16px;display:flex}.book-detail-tabs button{border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-soft);min-width:120px;color:var(--text-soft);cursor:pointer;padding:12px 18px;font-weight:900}.book-detail-tabs button:hover{border-color:var(--border-strong);color:var(--text);transform:var(--lift-sm)}.book-detail-tabs button.active{border-color:var(--accent);background:var(--button-primary-bg);color:var(--button-primary-text)}.book-tab-panel{animation:.18s both modalTabIn}@keyframes modalTabIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.modal-overview-layout,.modal-notes-layout{gap:18px;display:grid}.modal-section-card{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft);box-shadow:var(--shadow-soft);padding:18px}.modal-section-card .read-history,.modal-section-card .quote-preview,.modal-section-card .notes-preview,.modal-progress-card .reading-progress{margin:0}.book-read-dates{border-top:none;margin-top:0;padding-top:18px}.book-read-dates p{margin:0}.book-read-dates p+p{margin-top:8px}.modal-quote-card .quote-preview{padding:16px;font-size:1rem;line-height:1.6}.modal-notes-card .notes-preview{color:var(--text-soft);font-size:.98rem;line-height:1.7}.modal-session-list{gap:14px;display:grid}.modal-session-card{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft);box-shadow:var(--shadow-soft);padding:16px}.modal-session-top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.modal-session-top strong{color:var(--text)}.modal-session-card p{margin:var(--space-2) 0;color:var(--text-soft)}.modal-session-meta{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.modal-session-meta span{border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--chip-bg);width:-moz-fit-content;width:fit-content;color:var(--chip-text);padding:4px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.modal-session-note{padding-top:var(--space-3);border-top:1px solid var(--border-color);margin-top:var(--space-3)!important}.book-detail-stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;display:grid}.book-detail-stat-card{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft);box-shadow:var(--shadow-soft);padding:18px}.book-detail-stat-card span{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:.76rem;font-weight:900;display:block}.book-detail-stat-card strong{color:var(--text);font-size:1.3rem;line-height:1.1}.cover-upload-preview{object-fit:cover;border:1px solid var(--border-color);border-radius:var(--radius-md);width:90px;max-height:135px;box-shadow:var(--shadow-soft);margin-top:.75rem}.meta-search-chip{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.meta-search-chip:hover{text-decoration:underline}.book-card-tags,.book-meta-tags,.book-card-badges{gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap;align-items:center;display:flex}.book-card-shelves,.book-shelves{margin-top:var(--space-4);padding-top:var(--space-2);border-top:1px solid var(--border-color)}.book-card-shelves h4,.book-shelves h4{margin:0 0 var(--space-2);color:var(--text);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.book-card-shelves .chip,.book-shelves .chip{width:-moz-fit-content;width:fit-content;max-width:100%;margin:0 var(--space-1) var(--space-1) 0;display:inline-flex}.chip,.badge,.tag{justify-content:center;align-items:center;gap:var(--space-1);border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--chip-bg);color:var(--chip-text);white-space:nowrap;padding:4px 9px;font-size:.78rem;line-height:1.2;display:inline-flex}.book-status-stamp{z-index:5;border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface) 82%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);min-width:92px;color:var(--accent);letter-spacing:.08em;text-align:center;text-transform:uppercase;pointer-events:none;border:2px solid;justify-content:center;align-items:center;padding:6px 10px;font-size:.68rem;font-weight:900;display:inline-flex;position:absolute;top:12px;right:10px;transform:rotate(10deg);box-shadow:0 4px 10px #00000047}.status-to-be-read{color:var(--text-soft)}.status-reading{color:var(--success)}.status-read{color:var(--accent)}.status-wishlist{color:var(--accent-muted)}.status-dnf{color:var(--danger)}.status-out-of-library{color:var(--text-soft);opacity:.8}.book-genres{gap:var(--space-2);margin:var(--space-3) 0 var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color);flex-wrap:wrap;display:flex}.genre-chip{border:1px solid var(--accent);border-radius:var(--radius-pill);width:-moz-fit-content;width:fit-content;color:var(--accent);cursor:pointer;background:0 0;align-items:center;padding:4px 9px;font-size:.78rem;font-weight:800;line-height:1.2;display:inline-flex}.genre-chip:hover{background:var(--accent-soft);transform:var(--lift-sm);text-decoration:none}.book-format-row{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.book-progress,.book-genres,.book-format-row,.tag-sections{min-height:32px}.format-chip,.edition-chip{border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--chip-bg);width:-moz-fit-content;width:fit-content;color:var(--chip-text);align-items:center;padding:4px 9px;font-size:.76rem;font-weight:800;line-height:1.2;display:inline-flex}.book-card-icon-actions{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-color);grid-template-columns:repeat(3,1fr);margin-top:auto;display:grid}.book-card-icon-actions button{border-radius:var(--radius-md);color:var(--text-soft);cursor:pointer;background:0 0;border:none;justify-items:center;gap:3px;padding:8px 4px;font-size:.74rem;font-weight:800;display:grid}.book-card-icon-actions button span:first-child{color:var(--accent-muted);font-size:1.05rem;font-weight:900;line-height:1}.book-card-icon-actions button:hover{background:var(--chip-bg);color:var(--text);transform:var(--lift-sm)}.book-card-icon-actions button:hover span:first-child{color:var(--accent)}.card,.goal-card,.insight-card,.chart-card,.shelf-section,.settings-card{padding:var(--card-padding-lg)}.goal-card,.insight-card,.chart-card{gap:12px}.goal-card span,.insight-card span{letter-spacing:.04em;text-transform:uppercase;font-size:.82rem}.goal-card strong,.insight-card strong{line-height:1.1}@media (max-width:900px){.book-modal{padding:22px}.book-modal-layout{grid-template-columns:1fr}.book-modal-cover-panel{position:static}.book-modal-cover{max-height:440px}.book-modal-cover-frame{max-width:300px;margin:0 auto}.book-modal h2{padding-right:48px}.modal-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.card,.goal-card,.insight-card,.chart-card,.level-card,.achievement-card,.shelf-section,.form-card{border-radius:var(--radius-lg);padding:16px}.book-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.book-cover{height:auto;max-height:230px}.book-content{padding:14px}}@media (max-width:520px){.book-modal-backdrop{padding:12px}.book-modal{border-radius:var(--radius-2xl);padding:18px}.book-detail-tabs button{flex:45%;min-width:0}.book-modal h2{font-size:1.7rem}.modal-hero-stats{grid-template-columns:1fr}}@media (max-width:480px){.book-grid{grid-template-columns:1fr 1fr}.book-cover{max-height:210px}}.barcode-scanner-backdrop{z-index:200;background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.barcode-scanner-modal{border:1px solid var(--border-strong);border-radius:var(--radius-3xl);background:var(--surface);width:min(520px,100%);box-shadow:var(--shadow-strong);padding:24px;position:relative}.barcode-scanner-modal h3{color:var(--text);margin:0 44px 8px 0}.barcode-scanner-modal p{color:var(--text-soft)}.barcode-scanner-frame{border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:#000;margin-top:18px;position:relative;overflow:hidden}.barcode-scanner-box{min-height:320px}.barcode-scanner-box video{object-fit:cover;width:100%!important;height:320px!important}.barcode-scan-guide{pointer-events:none;border:2px solid var(--accent);border-radius:var(--radius-lg);position:absolute;top:18%;bottom:18%;left:18%;right:18%;box-shadow:0 0 0 999px #00000061}.barcode-scan-guide span{background:var(--accent);height:2px;box-shadow:0 0 12px var(--accent);position:absolute;top:50%;left:8px;right:8px}.barcode-scanner-help{text-align:center;margin:14px 0 0;font-weight:800}.shelf-link-chip{border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--chip-bg);width:-moz-fit-content;width:fit-content;color:var(--chip-text);align-items:center;padding:4px 8px;font-size:.72rem;text-decoration:none;display:inline-flex}.shelf-link-chip:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--text);transform:var(--lift-sm)}.reads-chip{border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--accent-soft);width:-moz-fit-content;width:fit-content;color:var(--text);align-items:center;padding:4px 9px;font-size:.76rem;font-weight:800;line-height:1.2;display:inline-flex}.editing-card{min-height:100%}.book-details-inline{display:block}.book-details-inline .book-modal{width:100%;max-height:none}.onboarding-guide{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-soft);margin-top:20px;padding:22px 24px}.onboarding-guide-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.onboarding-guide-head h2{margin:4px 0 0}.onboarding-guide-sub{color:var(--text-soft);margin:8px 0 0}.onboarding-dismiss{flex-shrink:0}.onboarding-steps{gap:12px;margin:0;padding:0;list-style:none;display:grid}.onboarding-step{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--surface-alt,var(--surface));align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.onboarding-step.is-done{opacity:.82}.onboarding-step-status{background:var(--accent-soft,#ffc1072e);width:28px;height:28px;color:var(--text);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:inline-flex}.onboarding-step.is-done .onboarding-step-status{background:var(--success-soft,#4caf502e)}.onboarding-step-body{min-width:0}.onboarding-step-body p{color:var(--text-soft);margin:4px 0 0;font-size:.92rem}.onboarding-banner{border:1px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--surface);justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:16px 18px;display:flex}.onboarding-banner-copy{align-items:flex-start;gap:12px;display:flex}.onboarding-banner-mark{font-size:1.4rem;line-height:1}.onboarding-banner-copy p{color:var(--text-soft);margin:4px 0 0;font-size:.92rem}.onboarding-banner-action{flex-shrink:0}.onboarding-empty-library{text-align:center}.onboarding-empty-library .onboarding-empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.onboarding-empty-tip{color:var(--text-soft);margin-top:14px;font-size:.92rem}.support-email-link{color:var(--accent,var(--text));text-underline-offset:2px;text-decoration:underline}.settings-support-card{gap:8px;display:grid}.settings-support-card p{color:var(--text-soft);margin:0}.settings-goals-nudge{border-radius:var(--radius-lg);border:1px dashed var(--border-color);color:var(--text-soft);background:var(--surface-alt,var(--surface));margin:0 0 16px;padding:12px 14px}.settings-beta-error{border-radius:var(--radius-lg);color:#8b2e2e;background:#b43c3c14;border:1px solid #b43c3c59;margin:0 0 14px;padding:12px 14px;font-size:.92rem}.app-footer-support{margin:6px 0 0;font-size:.88rem}.app-layout{--sidebar-width:280px;--stage-max:1280px;--dock-height:72px;z-index:1;grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid;position:relative}.app-brand-banner{padding:4px 2px 0;text-decoration:none;display:block}.app-logo-image{width:100%;max-width:100%;height:auto;filter:var(--shell-logo-glow);transition:transform var(--transition-med), filter var(--transition-med);margin:0 auto;display:block}.app-brand-banner:hover .app-logo-image{filter:var(--shell-logo-glow) brightness(1.05);transform:scale(1.02)}.app-sanctuary-nook{border:1px solid var(--shell-nook-border);border-radius:var(--radius-xl);background:var(--shell-nook-bg);box-shadow:var(--shadow-soft);padding:14px 14px 12px}.app-sanctuary-sunflower{margin-bottom:6px;font-size:1.5rem;line-height:1;display:block}.app-sanctuary-name{font-family:var(--font-display);color:var(--text);margin:0 0 4px;font-size:1.05rem;font-style:italic;font-weight:600;line-height:1.2}.app-sanctuary-tagline{font-family:var(--font-ui);color:var(--text-soft);margin:0;font-size:.78rem;line-height:1.45}.app-sanctuary-nook:after{content:var(--sanctuary-mark);text-align:center;letter-spacing:.35em;color:color-mix(in srgb, var(--accent) 55%, transparent);margin-top:10px;font-size:.65rem;display:block}.app-sidebar{z-index:40;border-right:1px solid var(--shell-sidebar-border);background:var(--shell-sidebar-accent), var(--shell-sidebar-bg);height:100vh;box-shadow:4px 0 32px color-mix(in srgb, var(--text) 6%, transparent);flex-direction:column;gap:20px;padding:22px 16px 20px;display:flex;position:sticky;top:0}.sidebar-nav{flex:1;gap:24px;padding-right:4px;display:grid;overflow-y:auto}.sidebar-nav-group{gap:4px;display:grid}.sidebar-nav-label{font-family:var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);padding:0 12px 6px;font-size:.68rem;font-weight:700}.sidebar-nav-link{border-radius:var(--radius-lg);color:var(--text-soft);font-family:var(--font-ui);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);border:1px solid #0000;align-items:center;gap:12px;padding:11px 14px;font-size:.92rem;font-weight:600;text-decoration:none;display:flex}.sidebar-nav-link svg{opacity:.72;flex-shrink:0}.sidebar-nav-link:hover{color:var(--text);background:color-mix(in srgb, var(--surface-soft) 80%, transparent);transform:translate(2px)}.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page]{color:var(--text);border-color:color-mix(in srgb, var(--accent) 40%, var(--border-color));background:linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 90%, transparent), transparent), var(--surface-raised);box-shadow:var(--shadow-soft)}.sidebar-nav-link.active svg,.sidebar-nav-link[aria-current=page] svg{opacity:1;color:var(--accent-strong)}.app-sidebar-foot{border-top:1px solid var(--border-color);gap:10px;padding-top:16px;display:grid}.app-user-card{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface-raised);color:inherit;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:grid}.app-user-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border-color));box-shadow:var(--shadow-soft)}.app-user-avatar{border-radius:var(--radius-circle);background:var(--accent-soft);width:44px;height:44px;color:var(--text);place-items:center;font-weight:700;display:grid;overflow:hidden}.app-user-avatar img{object-fit:cover;width:100%;height:100%}.app-user-meta{gap:2px;min-width:0;display:grid}.app-user-meta strong{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);font-size:.9rem;overflow:hidden}.app-user-meta span{font-family:var(--font-ui);color:var(--text-soft);font-size:.75rem}.app-signout{border-radius:var(--radius-lg);color:var(--text-soft);font-family:var(--font-ui);text-align:left;cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:1px solid #0000;padding:10px 14px;font-size:.85rem;font-weight:600}.app-signout:hover{color:var(--danger);background:color-mix(in srgb, var(--danger-soft) 50%, transparent)}.app-stage{flex-direction:column;min-width:0;min-height:100vh;display:flex}.page-content{width:min(var(--stage-max), 100%);flex:1;margin:0 auto;padding:clamp(20px,3vw,40px) clamp(16px,3vw,36px) 48px}.app-footer-cozy{width:min(var(--stage-max), 100%);text-align:center;margin:0 auto;padding:8px clamp(16px,3vw,36px) 28px}.app-footer-sunflower{filter:drop-shadow(0 2px 6px color-mix(in srgb, var(--accent) 40%, transparent));margin-bottom:6px;font-size:1.1rem;line-height:1;display:block}.app-footer-cozy p{margin:0;max-width:36ch;font-family:var(--font-ui);color:var(--text-soft);margin-inline-start:auto;margin-inline-end:auto;font-size:.82rem;font-style:italic;line-height:1.5}.app-mobile-bar,.app-dock,.app-drawer-backdrop{display:none}.app-drawer-backdrop{z-index:200;background:var(--overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);place-items:end center;padding:12px;position:fixed;top:0;bottom:0;left:0;right:0}.app-drawer{border:1px solid var(--border-strong);border-radius:var(--radius-3xl) var(--radius-3xl) var(--radius-2xl) var(--radius-2xl);background:radial-gradient(ellipse at top, var(--accent-soft), transparent 55%), var(--surface-raised);width:min(440px,100%);max-height:min(88vh,720px);box-shadow:var(--shadow-strong);gap:8px;padding:20px 18px 24px;animation:.28s cubic-bezier(.22,1,.36,1) both drawerUp;display:grid;overflow-y:auto}@keyframes drawerUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.app-drawer-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.app-drawer-head h2{margin:0 0 4px;font-size:1.35rem}.app-drawer-head p{color:var(--text-soft);font-family:var(--font-ui);margin:0;font-size:.88rem}.app-drawer-close{border:1px solid var(--border-color);border-radius:var(--radius-circle);background:var(--surface);width:40px;height:40px;color:var(--text);cursor:pointer;place-items:center;font-size:1.4rem;line-height:1;display:grid}.drawer-nav{gap:4px;display:grid}.drawer-nav-link{border-radius:var(--radius-lg);color:var(--text);font-family:var(--font-ui);align-items:center;gap:12px;padding:14px 16px;font-weight:600;text-decoration:none;display:flex}.drawer-nav-link:hover{background:var(--surface-soft)}.drawer-nav-link.active{background:var(--accent-soft)}.app-signout--drawer{text-align:center;border:1px solid var(--border-color);width:100%;margin-top:12px}@media (max-width:900px){.app-layout{grid-template-columns:1fr}.app-sidebar{display:none}.app-mobile-bar{display:flex}.app-mobile-avatar{border:2px solid color-mix(in srgb, var(--accent) 55%, transparent);border-radius:var(--radius-circle);background:var(--surface);color:var(--text);place-items:center;font-weight:700;text-decoration:none;display:grid;overflow:hidden}.app-mobile-avatar img{object-fit:cover;width:100%;height:100%}.app-dock{display:grid;position:fixed}.app-stage{padding-bottom:0}.page-content{padding-top:0}.app-dock{z-index:80;height:calc(var(--dock-height) + env(safe-area-inset-bottom,0px));padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));border:none;border-top:1px solid color-mix(in srgb, var(--border-strong) 60%, transparent);background:color-mix(in srgb, var(--surface-raised) 96%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:none;border-radius:0;grid-template-columns:repeat(5,1fr);gap:4px;display:grid;bottom:0;left:0;right:0}.dock-link{color:var(--text-soft);font-family:var(--font-ui);letter-spacing:.02em;cursor:pointer;background:0 0;border:none;border-radius:14px;align-content:center;place-items:center;gap:3px;padding:4px;font-size:.62rem;font-weight:700;text-decoration:none;display:grid}.dock-link svg{width:22px;height:22px}.dock-link.active,.dock-link[aria-current=page]{color:var(--text);background:var(--accent-soft)}.dock-link--accent{color:var(--text-inverse);background:linear-gradient(165deg, color-mix(in srgb, var(--accent-hover) 90%, white), var(--accent));box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 45%, transparent)}.dock-link--accent.active{color:var(--text-inverse)}.app-drawer-backdrop{display:grid}}.desktop-brand-header,.desktop-nav-wrap,.brand-header,.mobile-app-header,.mobile-bottom-nav,.mobile-menu-backdrop,.footer,.app-footer-minimal{display:none!important}.app-shell{width:min(1400px,100% - 24px);margin:0 auto}.page-content{min-height:500px}.footer{text-align:center;color:var(--text-soft);padding:40px 0}.brand-header{text-align:center;border:1px solid var(--border-color);border-radius:var(--radius-shell);background:radial-gradient(circle at top left, var(--accent-soft), transparent 24%), radial-gradient(circle at bottom right, var(--accent-muted), transparent 24%), var(--surface);max-width:1080px;box-shadow:var(--shadow-soft);margin:24px auto 28px;padding:20px 20px 18px;position:relative;overflow:hidden}.brand-logo{width:min(680px,88%);height:auto;margin:0 auto 10px;display:block}.brand-header p,.brand-tagline{color:var(--text-soft);margin:0;font-size:1.05rem}.nav{justify-content:center;gap:var(--space-2);width:-moz-fit-content;width:fit-content;max-width:100%;margin:0 auto var(--space-6);padding:var(--space-2);border:1px solid var(--nav-border);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--nav-bg) 86%, transparent);box-shadow:var(--nav-shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-wrap:wrap;display:flex}.header-profile-actions{z-index:5;position:absolute;top:18px;right:18px}.profile-actions{align-items:center;gap:8px;display:flex}.profile-avatar-link{border-radius:var(--radius-pill);border:2px solid var(--accent);background:var(--surface);width:42px;height:42px;color:var(--text);box-shadow:var(--shadow-soft);justify-content:center;align-items:center;font-weight:700;text-decoration:none;display:flex;overflow:hidden}.profile-avatar-link img{object-fit:cover;width:100%;height:100%}.section-header,.book-top,.shelf-header,.achievement-browser-header{justify-content:space-between;gap:12px;display:flex}.section-header{align-items:center;margin-bottom:18px}.section-header span{color:var(--text-soft);font-size:.85rem;font-weight:700}.page-content{max-width:var(--stage-max);margin:0 auto;padding-bottom:48px}.home-page section,.insights-page section,.achievements-page section,.settings-page section,.library-page section,.reading-log-page section,.shelves-page section{margin-bottom:32px}.error-page{min-height:100vh;padding:var(--space-6);background:var(--page-bg);color:var(--text);place-items:center;display:grid}.error-card{width:min(100%,34rem);padding:var(--card-padding-lg);text-align:center;border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface);box-shadow:var(--shadow-strong)}.error-card h1{color:var(--text);margin:0}.error-card p{margin:var(--space-3) 0 0;color:var(--text-soft)}.error-card button{margin-top:var(--space-5)}.mobile-app-header,.mobile-bottom-nav,.mobile-menu-backdrop{display:none}@supports (padding:max(0px)){.mobile-bottom-nav{bottom:max(10px, env(safe-area-inset-bottom))}.app-shell{padding-bottom:max(86px, calc(86px + env(safe-area-inset-bottom)))}}.mobile-menu-panel{animation:.2s both mobileDrawerIn}@keyframes mobileDrawerIn{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.book-details-page{gap:var(--space-4);display:grid}.back-to-library-btn{width:-moz-fit-content;width:fit-content;text-decoration:none}.home-page{gap:clamp(18px,2.5vw,24px);display:grid}.home-hero{border-radius:var(--radius-3xl);border:1px solid var(--reading-zone-border);background:radial-gradient(ellipse 75% 50% at 100% 0%, color-mix(in srgb, var(--accent-soft) 42%, transparent), transparent 58%), var(--reading-zone-bg);box-shadow:var(--shadow);padding:clamp(18px,2.5vw,28px)}.home-hero-top{margin-bottom:18px}.home-hero-top-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.home-pinned-badge{border-radius:var(--radius-xl);border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border-color));background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent-soft) 55%, transparent), transparent 70%), var(--surface-raised);max-width:112px;box-shadow:0 4px 14px color-mix(in srgb, var(--accent) 12%, transparent);color:inherit;text-align:center;flex-direction:column;flex-shrink:0;align-items:center;gap:8px;padding:10px 12px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.home-pinned-badge:hover{box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 18%, transparent);transform:translateY(-2px)}.home-pinned-badge-medallion{border:2px solid color-mix(in srgb, var(--accent) 35%, var(--border-color));background:color-mix(in srgb, var(--accent-soft) 40%, var(--surface));border-radius:50%;place-items:center;width:56px;height:56px;display:grid}.home-pinned-badge-icon{font-size:1.75rem;line-height:1}.home-pinned-badge-label{font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-strong);font-size:.68rem;font-weight:700;display:block}.home-pinned-badge-copy strong{font-family:var(--font-ui);color:var(--text);font-size:.78rem;line-height:1.25;display:block}.home-greeting{font-family:var(--font-ui);color:var(--text-soft);margin:0 0 4px;font-size:.95rem}.home-greeting strong{color:var(--text);font-weight:600}.home-greeting-sunflower{filter:drop-shadow(0 1px 4px color-mix(in srgb, var(--accent) 40%, transparent))}.home-hero-tagline{font-family:var(--font-display);color:var(--text);margin:0;font-size:clamp(1.5rem,2.8vw,2rem);font-style:italic;font-weight:600;line-height:1.1}.home-reading-card{border-radius:var(--radius-2xl);border:1px solid color-mix(in srgb, var(--accent) 14%, var(--border-color));background:color-mix(in srgb, var(--surface-raised) 96%, var(--accent-soft));overflow:hidden}.home-reading-layout{grid-template-columns:minmax(0,1fr);display:grid}.home-welcome-card{text-align:center;border:1px dashed var(--shell-nook-border);border-radius:var(--radius-2xl);background:var(--shell-nook-bg);padding:36px 24px}.home-welcome-mark{margin-bottom:12px;font-size:2.5rem;display:block}.home-welcome-card h2{margin:0 0 10px;font-size:1.5rem}.home-welcome-card p{max-width:40ch;color:var(--text-soft);font-family:var(--font-ui);margin:0 auto;line-height:1.55}.home-welcome-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px;display:flex}.home-reading-idle{text-align:center;border-radius:var(--radius-2xl);background:color-mix(in srgb, var(--accent-soft) 35%, var(--surface-raised));padding:32px 24px}.home-reading-idle p{color:var(--text-soft);font-family:var(--font-ui);margin:0 0 14px}.home-btn-inline,.home-btn-compact{text-decoration:none;width:auto!important;margin-top:0!important}.home-btn-compact{padding-left:22px;padding-right:22px}.reading-spotlight{color:inherit;transition:transform var(--transition-med);text-decoration:none;display:block}.reading-spotlight:hover{transform:translateY(-2px)}.reading-spotlight-inner{background:var(--reading-zone-bg);border:1px solid var(--reading-zone-border);border-radius:var(--radius-xl);grid-template-columns:minmax(120px,180px) minmax(0,1fr);align-items:center;gap:clamp(16px,3vw,28px);padding:clamp(16px,2.5vw,24px);display:grid}.reading-spotlight-label{color:var(--spotlight-label-color,var(--accent-strong))}html[data-theme-mode=dark] .reading-spotlight{isolation:isolate;color:var(--spotlight-text);position:relative;overflow:hidden}html[data-theme-mode=dark] .reading-spotlight-inner{z-index:1;background:0 0;border-color:#0000;position:relative}.reading-spotlight-backdrop{display:none}html[data-theme-mode=dark] .reading-spotlight-backdrop{z-index:0;filter:blur(32px)saturate(1.1);opacity:var(--spotlight-backdrop-opacity,.45);background-position:50%;background-size:cover;display:block;position:absolute;top:-20px;bottom:-20px;left:-20px;right:-20px;transform:scale(1.06)}html[data-theme-mode=dark] .reading-spotlight-backdrop:after{content:"";background:var(--spotlight-overlay);position:absolute;top:0;bottom:0;left:0;right:0}html[data-theme-mode=dark] .reading-spotlight-copy h2{color:var(--spotlight-text)}html[data-theme-mode=dark] .reading-spotlight-author,html[data-theme-mode=dark] .reading-spotlight-detail{color:var(--spotlight-text-soft)}html[data-theme-mode=dark] .reading-spotlight-meta span{color:var(--spotlight-text-soft);background:#0003;border-color:#fff3}html[data-theme-mode=dark] .reading-spotlight-bar{background:#ffffff26}.reading-spotlight-cover{position:relative}.reading-spotlight-frame{border-radius:var(--radius-lg);box-shadow:0 16px 40px color-mix(in srgb, var(--text) 18%, transparent), 0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent)}.reading-spotlight-badge{border-radius:var(--radius-pill);background:var(--accent);color:var(--text-inverse);font-family:var(--font-ui);box-shadow:var(--shadow-soft);padding:5px 10px;font-size:.75rem;font-weight:800;position:absolute;bottom:-6px;right:-6px}.reading-spotlight-label{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:6px;font-size:.72rem;font-weight:700;display:block}.reading-spotlight-copy h2{margin:0 0 4px;font-size:clamp(1.25rem,2.5vw,1.85rem);line-height:1.1}.reading-spotlight-author{font-family:var(--font-ui);color:var(--text-soft);margin:0 0 12px;font-size:.92rem;font-style:italic}.reading-spotlight-meta{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.reading-spotlight-meta span{border-radius:var(--radius-pill);border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border-color));font-family:var(--font-ui);padding:4px 10px;font-size:.74rem;font-weight:600}.reading-spotlight-progress-pill{background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}.reading-spotlight-footer{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;display:flex}.reading-spotlight-progress{flex:180px;min-width:0}.reading-spotlight-detail{font-family:var(--font-ui);color:var(--text-soft);margin:0 0 8px;font-size:.84rem}.reading-spotlight-bar{border-radius:var(--radius-pill);height:7px;margin:0}.reading-spotlight-cta{border-radius:var(--radius-pill);background:linear-gradient(165deg, var(--accent-hover), var(--accent));color:var(--text-inverse);font-family:var(--font-ui);white-space:nowrap;box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 35%, transparent);transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-shrink:0;align-items:center;padding:11px 20px;font-size:.86rem;font-weight:700;display:inline-flex}.reading-spotlight:hover .reading-spotlight-cta{box-shadow:0 10px 24px color-mix(in srgb, var(--accent) 42%, transparent);transform:translateY(-1px)}.reading-shelf{border-top:1px solid var(--border-color);padding:14px}.reading-shelf-label{font-family:var(--font-display);align-items:center;gap:8px;margin:0 0 10px;font-size:.88rem;font-style:italic;font-weight:600;display:flex}.reading-shelf-label-mark{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--accent-soft) 75%, var(--surface));place-items:center;width:24px;height:24px;font-size:.75rem;font-style:normal;display:grid}.reading-shelf-track{flex-wrap:wrap;gap:10px;display:flex}.reading-shelf-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-raised);color:inherit;transition:transform var(--transition-fast), border-color var(--transition-fast);flex:0 0 130px;gap:6px;padding:10px;text-decoration:none;display:grid}.reading-shelf-card:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border-color));transform:translateY(-2px)}.reading-shelf-card-body{gap:2px;min-width:0;display:grid}.reading-shelf-card-body strong{font-family:var(--font-ui);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.74rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.reading-shelf-author{color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;font-style:italic;overflow:hidden}.reading-shelf-percent{color:var(--accent-strong);font-size:.7rem;font-weight:700}.reading-shelf-bar{border-radius:var(--radius-pill);height:4px}.home-glance{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.home-glance--inset{border-top:1px solid color-mix(in srgb, var(--accent) 12%, var(--border-color));margin-top:18px;padding-top:18px}.home-glance-stat{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface-raised) 88%, var(--accent-soft));border:1px solid color-mix(in srgb, var(--accent) 10%, transparent);gap:1px;padding:12px 12px 12px 40px;display:grid;position:relative}.home-glance-icon{font-size:1rem;line-height:1;position:absolute;top:11px;left:11px}.home-glance-stat--audio{background:color-mix(in srgb, var(--accent-soft) 45%, var(--surface-raised))}.home-glance-value{font-family:var(--font-display);font-size:1.45rem;font-weight:600;line-height:1}.home-glance-label{font-family:var(--font-ui);color:var(--text-soft);font-size:.76rem}.home-glance-sub{font-family:var(--font-ui);color:var(--accent-strong);font-size:.68rem}.home-columns{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start;gap:16px;display:grid}.home-panel{border:1px solid color-mix(in srgb, var(--accent) 10%, var(--border-color));border-radius:var(--radius-2xl);background:var(--surface-raised);box-shadow:var(--shadow-soft);padding:20px 22px}.home-panel-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.home-panel-head h2{margin:0;font-size:1.15rem}.home-panel-sub{font-family:var(--font-ui);color:var(--text-soft);margin:4px 0 0;font-size:.82rem;font-style:italic}.home-text-link{font-family:var(--font-ui);color:var(--accent-strong);flex-shrink:0;font-size:.84rem;font-weight:600;text-decoration:none}.home-text-link:hover{text-decoration:underline}.home-goals-tabs{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--accent-soft) 35%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 12%, var(--border-color));gap:6px;margin-bottom:14px;padding:4px;display:inline-flex}.home-goals-tabs button{border-radius:var(--radius-pill);color:var(--text-soft);font-family:var(--font-ui);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;padding:8px 14px;font-size:.82rem;font-weight:600}.home-goals-tabs button.is-active{background:var(--surface-raised);color:var(--text);box-shadow:var(--shadow-soft)}.home-goals-list{gap:12px;display:grid}.home-goal-bar{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--accent-soft) 22%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 10%, var(--border-color));padding:12px 14px}.home-goal-bar-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.home-goal-bar-label{font-family:var(--font-ui);align-items:center;gap:6px;font-size:.84rem;font-weight:600;display:inline-flex}.home-goal-bar-head strong{font-family:var(--font-display);font-size:.95rem}.home-goal-bar-target{font-family:var(--font-ui);color:var(--text-soft);font-size:.78rem;font-weight:500}.home-goal-bar-track{border-radius:var(--radius-pill);height:6px}.home-goal-bar-percent{font-family:var(--font-ui);color:var(--accent-strong);text-align:right;margin-top:6px;font-size:.74rem;font-weight:700;display:block}.home-session-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.home-session-row{border-radius:var(--radius-lg);color:inherit;transition:background var(--transition-fast);grid-template-columns:48px minmax(0,1fr);align-items:start;gap:12px;padding:10px;text-decoration:none;display:grid}.home-session-row:hover{background:color-mix(in srgb, var(--accent-soft) 30%, var(--surface))}.home-session-cover{border-radius:var(--radius-sm);width:48px!important}.home-session-row strong{font-family:var(--font-ui);margin-bottom:2px;font-size:.88rem;display:block}.home-session-row p,.home-session-row time{font-family:var(--font-ui);color:var(--text-soft);margin:0;font-size:.78rem}.home-session-row time{margin-top:3px;font-size:.7rem;display:block}.home-activity-empty{color:var(--text-soft);font-family:var(--font-ui);margin:0;line-height:1.5}.home-achievement-strip{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border-color));border-radius:var(--radius-xl);background:var(--accent-soft);color:inherit;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;text-decoration:none;display:flex}.home-achievement-strip strong{font-family:var(--font-ui);font-size:.88rem;display:block}.home-welcome-actions .primary-btn{text-decoration:none}@media (min-width:901px){.home-reading-layout:has(.reading-shelf){grid-template-columns:minmax(0,1fr) minmax(240px,280px)}.home-reading-layout:has(.reading-shelf) .reading-shelf{border-top:none;border-left:1px solid var(--border-color);background:radial-gradient(ellipse at top, color-mix(in srgb, var(--accent-soft) 40%, transparent), transparent 70%), color-mix(in srgb, var(--surface-raised) 95%, var(--accent-soft))}.home-reading-layout:has(.reading-shelf) .reading-shelf-track{flex-direction:column}.home-reading-layout:has(.reading-shelf) .reading-shelf-card{flex:none;grid-template:"cover body""cover bar"/52px minmax(0,1fr);gap:4px 10px;max-width:none;padding:10px;display:grid}.home-reading-layout:has(.reading-shelf) .reading-shelf-card .book-cover-frame{grid-area:cover;align-self:center;width:52px}.home-reading-layout:has(.reading-shelf) .reading-shelf-card-body{grid-area:body;align-self:center;position:relative}.home-reading-layout:has(.reading-shelf) .reading-shelf-card-body strong{padding-right:1.75rem}.home-reading-layout:has(.reading-shelf) .reading-shelf-percent{position:absolute;top:0;right:0}.home-reading-layout:has(.reading-shelf) .reading-shelf-bar{grid-area:bar}.reading-spotlight-inner{grid-template-columns:minmax(160px,200px) minmax(0,1fr);padding:clamp(20px,2.5vw,28px)}.home-columns{gap:20px}}.home-target-achievement{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border-color));border-radius:var(--radius-xl);background:radial-gradient(ellipse 80% 70% at 100% 0%, color-mix(in srgb, var(--accent-soft) 45%, transparent), transparent 58%), var(--surface-raised);padding:16px 18px}.home-target-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.home-target-label,.home-target-link{font-family:var(--font-ui);font-size:.78rem;font-weight:700}.home-target-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent-strong)}.home-target-link{color:var(--accent-strong);text-decoration:none}.home-target-body{align-items:flex-start;gap:14px;display:flex}.home-target-icon{flex-shrink:0;font-size:2rem;line-height:1}.home-target-copy h2{margin:0 0 4px;font-size:1.12rem}.home-target-copy p{color:var(--text-soft);font-family:var(--font-ui);margin:0;font-size:.88rem;line-height:1.45}.home-target-complete{font-weight:700;color:var(--accent-strong)!important;margin:10px 0 0!important}.home-target-progress{margin-top:12px}.home-activity-pager{justify-content:center;align-items:center;gap:12px;margin-top:10px;display:flex}.home-activity-pager button{border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface);min-height:36px;color:var(--text);font-family:var(--font-ui);padding:6px 14px;font-size:.82rem;font-weight:700}.home-activity-pager button:disabled{opacity:.45;cursor:not-allowed}.home-activity-pager span{font-family:var(--font-ui);color:var(--text-soft);font-size:.82rem}.library-page{max-width:1400px;margin:0 auto}.library-header{margin-bottom:var(--space-5)}.library-header h2{margin-bottom:var(--space-2)}.library-header p{color:var(--text-soft);margin:0}.library-controls{gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:color-mix(in srgb, var(--surface) 88%, transparent);box-shadow:var(--shadow-soft);grid-template-columns:minmax(280px,2fr) repeat(4,minmax(150px,1fr));align-items:center;display:grid}.library-controls input,.library-controls select{border-radius:var(--radius-md);width:100%;min-width:0;min-height:42px;padding:10px 14px;font-size:.95rem}.library-summary{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);color:var(--text-soft);display:flex}.library-summary p{margin:0}.library-summary strong{color:var(--text)}.library-controls{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:12px}.shelves-page{max-width:1200px;margin:0 auto}.shelves-header{margin-bottom:var(--space-5)}.shelves-header h2{margin-bottom:var(--space-2)}.shelves-header p{color:var(--text-soft);margin:0}.shelf-sections{gap:var(--space-5);flex-direction:column;display:flex}.shelf-section{padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);box-shadow:var(--shadow-soft)}.shelf-toggle{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;margin-bottom:var(--space-4);padding:var(--space-2) var(--space-2) var(--space-4);border:none;border-bottom:1px solid var(--border-color);color:var(--text);text-align:left;background:0 0;display:flex}.shelf-toggle span{align-items:center;gap:var(--space-2);font-size:1.25rem;font-weight:800;display:inline-flex}.shelf-toggle strong{border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--chip-bg);color:var(--chip-text);white-space:nowrap;align-items:center;padding:4px 10px;font-size:.82rem;font-weight:800;display:inline-flex}.shelf-toggle:hover{color:var(--accent);opacity:1}.add-book-page{max-width:1050px;margin:0 auto}.add-book-header{margin-bottom:var(--space-5)}.add-book-header h2{margin-bottom:var(--space-2)}.add-book-header p{color:var(--text-soft);margin:0}.add-book-form{gap:var(--space-4)}.add-book-form .form-grid.two{align-items:start}.add-book-cover-column input[type=file]{margin-top:4px}.add-book-cover-column .success-text,.add-book-cover-column .muted-text,.add-book-cover-column .form-error{margin-top:2px}.add-book-cover-column{justify-content:flex-start;align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.add-book-form .form-grid.two:has(.add-book-cover-column){margin-bottom:var(--space-3);align-items:start}.add-book-cover-column .cover-upload-preview{margin-top:var(--space-2)}.reading-log-page{max-width:1180px;margin:0 auto}.reading-log-header{margin-bottom:var(--space-5)}.reading-log-header h2{margin-bottom:var(--space-2)}.reading-log-header p{color:var(--text-soft);margin:0}.reading-log-layout{gap:var(--space-5);grid-template-columns:340px minmax(0,1fr);align-items:start;display:grid}.reading-log-form h3{margin:0 0 var(--space-2);color:var(--text);font-size:1.15rem}.reading-log-form textarea{resize:vertical;min-height:110px}.selected-book-preview{padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--accent-soft);color:var(--text)}.selected-book-preview p{margin:var(--space-1) 0 0;color:var(--text-soft);font-size:.88rem}.heatmap-card{min-height:500px;padding:var(--space-6);overflow:hidden}.heatmap-card h3{margin:0 0 var(--space-5);color:var(--text);font-size:1.45rem}.year-calendar{gap:var(--space-4);grid-template-columns:repeat(3,minmax(150px,1fr));display:grid}.month-card{padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft)}.month-card h4{margin:0 0 var(--space-2);color:var(--text);font-size:.95rem}.weekday-row,.month-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.weekday-row{margin-bottom:var(--space-2)}.weekday-row span{color:var(--text-soft);text-align:center;font-size:.72rem;font-weight:800}.calendar-day{aspect-ratio:1;border-radius:var(--radius-xs);background:var(--surface-muted);min-width:0;color:var(--text-soft);cursor:pointer;border:none;place-items:center;font-size:.66rem;font-weight:800;display:grid}.calendar-day.blank{cursor:default;background:0 0}.calendar-day.read-light{background:var(--accent-soft);color:var(--text)}.calendar-day.read-medium{background:var(--button-primary-bg);color:var(--button-primary-text)}.calendar-day.read-heavy{background:var(--accent-strong);color:var(--text-inverse);box-shadow:var(--shadow-soft)}.calendar-day:not(.blank):hover{transform:scale(1.12)}.selected-day{outline:2px solid var(--accent);box-shadow:0 0 0 4px var(--focus-ring);transform:scale(1.08)}.selected-day-logs{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-color)}.selected-day-logs h4{margin:0 0 var(--space-4);color:var(--text);font-size:1.05rem}.reading-log-list{gap:var(--space-3);flex-direction:column;display:flex}.reading-log-item{padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft)}.reading-log-item strong{color:var(--text);display:block}.reading-log-item span{color:var(--text-soft);font-size:.86rem}.reading-log-item p{margin:var(--space-2) 0 0;color:var(--text-soft);font-size:.9rem}.finished-pill{width:-moz-fit-content;width:fit-content;margin-top:var(--space-2);border-radius:var(--radius-pill);background:var(--success-soft);padding:5px 9px;font-weight:800;display:inline-flex;color:var(--success)!important}.reading-log-item{gap:var(--space-3);transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;position:relative;overflow:hidden}.reading-log-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.reading-log-item:before{content:"";background:var(--accent);border-radius:0 4px 4px 0;width:4px;position:absolute;top:0;bottom:0;left:0}.reading-log-item strong{font-size:1rem;line-height:1.25}.reading-log-item>span{border-radius:var(--radius-pill);background:var(--chip-bg);width:-moz-fit-content;width:fit-content;color:var(--chip-text);padding:4px 8px;font-size:.72rem;font-weight:800;display:inline-flex}.reading-log-item p{line-height:1.55}.reading-log-item p strong{font-size:inherit;display:inline}.finished-pill{border:1px solid color-mix(in srgb, var(--success) 40%, transparent);align-items:center;gap:6px;padding:6px 12px;box-shadow:0 0 0 1px #ffffff08,0 6px 18px #0000001f}.button-row{margin-top:var(--space-2)}.button-row .action-btn{min-width:110px}.book-search-picker{position:relative}.book-search-results{gap:var(--space-2);margin-top:var(--space-2);display:grid}.book-search-result{gap:var(--space-1);width:100%;padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface);color:var(--text);text-align:left;display:grid}.book-search-result:hover:not(:disabled){background:var(--surface-soft);transform:var(--lift-sm)}.book-search-result span{color:var(--text-soft);font-size:.85rem}.achievements-page{max-width:1100px;margin:0 auto}.achievement-summary{margin-bottom:var(--space-6);grid-template-columns:repeat(3,1fr)}.level-card{justify-content:space-between;align-items:center;gap:var(--space-6);margin-bottom:var(--space-6);border:1px solid var(--border-strong);border-radius:var(--radius-3xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 28%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);box-shadow:var(--shadow-soft);padding:30px;display:flex;position:relative;overflow:hidden}.level-label{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:900}.level-card h3{margin:var(--space-2) 0;color:var(--text);font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.1}.level-card p{margin:var(--space-2) 0;color:var(--text-soft)}.level-badge{border-radius:var(--radius-circle);background:var(--level-badge-bg);width:96px;height:96px;color:var(--button-primary-text);box-shadow:var(--level-badge-shadow);flex-shrink:0;place-items:center;font-size:3rem;display:grid}.rank-progress{max-width:440px;margin:var(--space-3) 0}.xp-breakdown{margin-bottom:var(--space-6)}.xp-breakdown h3{margin:0 0 var(--space-4);color:var(--text)}.xp-breakdown-grid{gap:var(--space-3) var(--space-5);grid-template-columns:1fr auto;display:grid}.xp-breakdown-grid span{color:var(--text-soft)}.xp-breakdown-grid strong{color:var(--accent)}.achievement-browser-header{margin:var(--space-6) 0 var(--space-4);align-items:center}.achievement-section-title{color:var(--text);margin:0}.achievement-filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.achievement-filters select{min-width:150px}.achievement-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(255px,1fr));display:grid}.achievement-card{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);display:flex;position:relative;overflow:hidden}.achievement-card:hover{transform:translateY(-3px)}.achievement-card.unlocked{border:1px solid var(--border-strong);box-shadow:var(--shadow-soft)}.achievement-card.locked{opacity:.68;filter:grayscale(.75)}.achievement-card.unlocked:before{content:"";background:radial-gradient(circle at top left, var(--accent-soft), transparent 34%);pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.achievement-card>*{z-index:1;position:relative}.achievement-icon{border-radius:var(--radius-circle);background:var(--accent-soft);flex-shrink:0;place-items:center;width:52px;height:52px;font-size:1.6rem;display:grid}.achievement-card.unlocked .achievement-icon{transform:scale(1.05)}.achievement-card h4{margin:0 0 var(--space-1);color:var(--text);line-height:1.15}.achievement-card p{margin:0 0 var(--space-2);color:var(--text-soft);font-size:.88rem;line-height:1.45}.achievement-card span{color:var(--text-soft);font-size:.84rem;font-weight:800}.achievement-footer{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-3);display:flex}.achievement-category{border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--chip-bg);width:-moz-fit-content;width:fit-content;color:var(--chip-text);text-transform:capitalize;padding:4px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.achievement-card.common{border-color:var(--border-color)}.achievement-card.rare.unlocked{border-color:var(--accent-muted)}.achievement-card.epic.unlocked,.achievement-card.legendary.unlocked{border-color:var(--accent)}.achievement-card.secret.unlocked{border-color:var(--success)}.achievement-card.common.unlocked{border-color:var(--border-strong)}.achievement-card.rare.unlocked{border-color:var(--accent-muted);box-shadow:var(--shadow-soft), 0 0 18px color-mix(in srgb, var(--accent-muted) 20%, transparent)}.achievement-card.epic.unlocked{border-color:var(--accent);box-shadow:var(--shadow-soft), 0 0 22px color-mix(in srgb, var(--accent) 26%, transparent)}.achievement-card.legendary.unlocked{border-color:var(--accent);background:radial-gradient(circle at top right, var(--accent-soft), transparent 34%), linear-gradient(135deg, var(--card-sheen-top), var(--accent-soft)), var(--card-bg);box-shadow:var(--shadow-soft), 0 0 30px color-mix(in srgb, var(--accent) 34%, transparent)}.achievement-card.secret.unlocked{border-color:var(--success);background:radial-gradient(circle at top right, var(--success-soft), transparent 34%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--card-bg);box-shadow:var(--shadow-soft), 0 0 24px color-mix(in srgb, var(--success) 24%, transparent)}.achievement-card.locked{border-color:var(--border-color)}.achievement-card.locked .achievement-icon{opacity:.75}.latest-achievement-card{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-5);border:1px solid var(--accent);border-radius:var(--radius-2xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 34%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);box-shadow:var(--shadow-soft), 0 0 24px color-mix(in srgb, var(--accent) 22%, transparent);flex-wrap:wrap;display:flex}.latest-achievement-card strong{color:var(--text);font-size:1.15rem;display:block}.latest-achievement-card p{margin:var(--space-1) 0 0;color:var(--text-soft)}.latest-achievement-xp{color:var(--accent);white-space:nowrap;font-weight:900}.achievement-browser{gap:var(--space-4);display:grid}.achievement-pin-summary{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.achievement-pin-summary-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-raised);gap:6px;padding:14px 16px;display:grid}.achievement-pin-summary-card--target{border-color:color-mix(in srgb, var(--accent) 35%, var(--border-color));background:color-mix(in srgb, var(--accent-soft) 24%, var(--surface-raised))}.achievement-pin-summary-card a{font-family:var(--font-ui);color:var(--accent-strong);font-size:.82rem;font-weight:600;text-decoration:none}.achievement-pin-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.achievement-pin-btn{border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface);min-height:34px;color:var(--text-soft);font-family:var(--font-ui);cursor:pointer;padding:6px 12px;font-size:.74rem;font-weight:700}.achievement-pin-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--text)}.achievement-pin-btn.is-active{border-color:color-mix(in srgb, var(--accent) 45%, var(--border-color));background:var(--accent-soft);color:var(--text)}.achievement-pin-btn--target.is-active{border-color:color-mix(in srgb, var(--accent) 55%, var(--border-color))}.achievement-card.is-pinned,.achievement-card.is-target{outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}.insights-page{max-width:1100px;margin:0 auto}.insights-page .goal-progress-grid,.insights-page .insights-grid,.insights-page .monthly-insights-grid,.insights-page .charts-grid{gap:var(--space-4);display:grid}.insights-page .insights-header{justify-content:space-between;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6);display:flex}.insights-page .insights-header h2{margin-bottom:var(--space-2)}.insights-page .insights-header p{max-width:640px;color:var(--text-soft);margin:0;font-size:1rem;line-height:1.55}.insights-page .insights-header-badge{border-radius:var(--radius-circle);background:var(--level-badge-bg);width:78px;height:78px;box-shadow:var(--level-badge-shadow);flex-shrink:0;place-items:center;font-size:2rem;display:grid}.insights-page .insights-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.insights-page .monthly-insights-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.insights-page .charts-grid{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.insights-page .goal-progress-grid{margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.insights-page .chart-card.featured-chart{grid-column:span 3}.insights-page .goal-card,.insights-page .insight-card,.insights-page .chart-card{gap:var(--space-3);border:1px solid var(--card-border);border-radius:var(--radius-2xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--card-bg);box-shadow:var(--card-shadow);flex-direction:column;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:flex}.insights-page .goal-card,.insights-page .insight-card{min-height:150px;padding:var(--space-5)}.insights-page .goal-card:hover,.insights-page .insight-card:hover,.insights-page .chart-card:hover{border-color:var(--border-strong);transform:translateY(-3px)}.insights-page .goal-card span,.insights-page .insight-card span{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:900;display:block}.insights-page .goal-card strong,.insights-page .insight-card strong{color:var(--text);letter-spacing:-.03em;line-height:1.05;display:block}.insights-page .goal-card strong{font-size:1.65rem}.insights-page .insight-card strong{font-size:1.9rem}.insights-page .goal-card p,.insights-page .insight-card p{color:var(--text-soft);opacity:.86;margin:0;font-size:.78rem;line-height:1.45}.insights-page .chart-card{padding:var(--space-5);background:radial-gradient(circle at top right, var(--accent-soft), transparent 34%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft)}.insights-page .chart-card-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.insights-page .chart-card-header h4,.insights-page .chart-card h4{color:var(--text);margin:0;font-size:1.05rem}.insights-page .chart-card-header span{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.76rem;font-weight:800}.insights-page .bar-chart{gap:var(--space-4);flex-direction:column;display:flex}.insights-page .bar-chart-item{flex-direction:column;gap:8px;display:flex}.insights-page .bar-chart-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.insights-page .bar-chart-top strong{color:var(--text);font-size:.86rem}.insights-page .bar-chart-top span{color:var(--text-soft);font-size:.8rem;font-weight:700}.insights-page .bar-track{border-radius:var(--radius-pill);background:var(--surface-muted);height:10px;overflow:hidden}.insights-page .bar-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-hover));height:100%;box-shadow:0 0 10px #ffbe283d}.insights-page .bar-chart-item small{color:var(--text-soft);text-align:right;font-size:.72rem;font-weight:700}.insights-page .collapsible-section{margin-bottom:var(--space-6)}.insights-page .collapsible-toggle{border:1px solid var(--border-color);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);width:100%;color:var(--text);box-shadow:var(--shadow-soft);justify-content:space-between;align-items:center;padding:18px 22px;font-size:1.08rem;font-weight:800;display:flex}.insights-page .collapsible-toggle:hover{border-color:var(--border-strong);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft);transform:translateY(-2px)}.insights-page .collapsible-content{padding-top:var(--space-4)}.insights-page .insights-empty-note{color:var(--text-muted);margin:0;font-size:.95rem;line-height:1.5}.insights-page .insights-empty-note a{color:var(--accent-strong);font-weight:600;text-decoration:none}.insights-page .insights-empty-note a:hover{text-decoration:underline}:root{--chart-1:var(--accent);--chart-2:var(--accent-hover);--chart-3:var(--success);--chart-4:var(--accent-muted);--chart-5:var(--text-soft);--chart-6:var(--border-strong)}.insights-page .donut-feature-card{grid-column:span 3}.insights-page .donut-chart-layout{gap:var(--space-5);grid-template-columns:190px 1fr;align-items:center;display:grid}.insights-page .donut-chart{border-radius:var(--radius-circle);width:190px;height:190px;box-shadow:var(--shadow-soft);place-items:center;display:grid}.insights-page .donut-chart-centre{border-radius:var(--radius-circle);background:var(--surface);text-align:center;place-items:center;width:112px;height:112px;display:grid}.insights-page .donut-chart-centre strong{color:var(--text);font-size:1.5rem}.insights-page .donut-chart-centre span{color:var(--text-soft);text-transform:uppercase;font-size:.72rem;font-weight:900}.insights-page .donut-chart-list{gap:var(--space-2);display:grid}.insights-page .donut-chart-list-item{justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color);display:flex}.insights-page .donut-chart-list-item span{align-items:center;gap:var(--space-2);color:var(--text-soft);font-weight:800;display:inline-flex}.insights-page .donut-chart-list-item strong{color:var(--text)}.insights-page .chart-dot{border-radius:var(--radius-circle);width:10px;height:10px}.insights-page .chart-dot-1{background:var(--chart-1)}.insights-page .chart-dot-2{background:var(--chart-2)}.insights-page .chart-dot-3{background:var(--chart-3)}.insights-page .chart-dot-4{background:var(--chart-4)}.insights-page .chart-dot-5{background:var(--chart-5)}.insights-page .chart-dot-6{background:var(--chart-6)}.insights-page .bar-chart-item{transition:transform .18s,opacity .18s}.insights-page .bar-chart-item:hover{transform:translate(3px)}.insights-page .bar-chart-item:hover .bar-fill{filter:brightness(1.12)}.insights-page .donut-chart{transition:transform .18s,filter .18s}.insights-page .donut-chart:hover{filter:brightness(1.08);transform:scale(1.035)}.settings-page{width:min(1180px,100%);margin:0 auto}.settings-header{margin-bottom:var(--space-6)}.settings-header h2{margin-bottom:var(--space-2)}.settings-header p{color:var(--text-soft);margin:0}.settings-layout{gap:var(--space-6);grid-template-columns:250px minmax(0,1fr);align-items:start;display:grid}.settings-main{gap:var(--space-6);display:grid}.settings-contents{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);box-shadow:var(--shadow-soft);display:grid;position:sticky;top:24px}.settings-contents p{margin:0 0 var(--space-2);color:var(--text);font-size:.9rem;font-weight:900}.settings-contents a{border-radius:var(--radius-pill);background:var(--chip-bg);color:var(--chip-text);border:1px solid #0000;padding:10px 14px;font-weight:800;text-decoration:none}.settings-contents a:hover{border-color:var(--border-strong);background:var(--button-bg-hover);transform:var(--lift-sm)}.settings-card{gap:var(--space-5);padding:var(--space-6);border:1px solid var(--border-strong);border-radius:var(--radius-3xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 28%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);box-shadow:var(--shadow-soft);scroll-margin-top:24px}.settings-card-header{margin-bottom:var(--space-2)}.settings-card-header h3{margin:var(--space-1) 0;color:var(--text);font-size:clamp(1.35rem,2vw,1.7rem)}.settings-card-header p{max-width:680px;color:var(--text-soft);margin:0;line-height:1.5}.settings-profile-hero{align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface-soft);display:flex}.settings-profile-hero strong{color:var(--text);font-size:1.25rem;display:block}.settings-profile-hero p{margin:var(--space-1) 0 var(--space-3);color:var(--text-soft)}.profile-avatar-preview,.profile-avatar-placeholder{border-radius:var(--radius-circle);flex-shrink:0;width:92px;height:92px}.profile-avatar-preview{object-fit:cover;border:3px solid var(--accent);box-shadow:var(--shadow-soft)}.profile-avatar-placeholder{border:3px solid var(--accent);background:var(--level-badge-bg);color:var(--button-primary-text);box-shadow:var(--level-badge-shadow);place-items:center;font-size:2.2rem;font-weight:900;display:grid}.settings-goal-group{padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface-soft)}.settings-goal-group+.settings-goal-group{margin-top:var(--space-4)}.settings-goal-group h4{margin:0 0 var(--space-4);color:var(--text);font-size:1.05rem}.settings-data-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.settings-data-panel{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface-soft);flex-direction:column;display:flex}.settings-data-panel h4{color:var(--text);margin:0}.settings-data-panel p{color:var(--text-soft);margin:0;line-height:1.5}.danger-zone{border-color:color-mix(in srgb, var(--danger) 45%, var(--border-color))}.settings-warning-card{padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface-soft)}.settings-warning-card strong{margin-bottom:var(--space-2);color:var(--text);display:block}.settings-warning-card p{color:var(--text-soft);margin:0;line-height:1.5}.file-upload-label,.import-backup-label{gap:var(--space-2);width:-moz-fit-content;width:fit-content;color:var(--text);flex-direction:column;font-weight:800;display:inline-flex}.file-upload-label input,.import-backup-label input{max-width:100%}.settings-actions{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.settings-actions .primary-submit,.settings-data-panel .primary-submit{width:-moz-fit-content;width:fit-content;min-width:190px}.update-notes-box{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface-soft);display:grid}.update-note-line{color:var(--text-soft);font-size:.9rem;line-height:1.45}.update-note-line:before{content:"• ";color:var(--accent);font-weight:900}.update-note-line:not(:last-child){padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color)}.settings-page textarea{resize:vertical;min-height:120px}.admin-badge{border:1px solid var(--accent);border-radius:var(--radius-pill);background:var(--accent-soft);width:-moz-fit-content;width:fit-content;color:var(--text);padding:6px 12px;font-weight:900}.admin-placeholder-box{margin-top:var(--space-3);padding:var(--space-4);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-soft);font-weight:700}.csv-report-overlay{z-index:2000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.csv-report-modal{border:1px solid var(--border-strong);border-radius:var(--radius-3xl);background:var(--surface);width:min(720px,100%);max-height:85vh;box-shadow:var(--shadow-soft);flex-direction:column;gap:18px;padding:24px;display:flex;overflow:hidden}.csv-report-stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.csv-report-stats div{border-radius:var(--radius-xl);background:var(--surface-soft);text-align:center;padding:14px}.csv-report-stats strong{font-size:1.6rem;display:block}.csv-report-stats span{color:var(--text-soft);font-size:.82rem}.csv-report-errors{flex-direction:column;gap:10px;min-height:0;display:flex}.csv-report-scroll{max-height:340px;padding-right:6px;overflow-y:auto}.csv-report-row{border-bottom:1px solid var(--border-color);padding:12px 0}.csv-report-row strong{margin-bottom:6px;display:block}.csv-report-row ul{margin:0;padding-left:18px}.csv-report-row li{color:var(--text-soft)}.profile-pinned-achievement{margin-bottom:var(--space-4);border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border-color));border-radius:var(--radius-lg);background:color-mix(in srgb, var(--accent-soft) 22%, var(--surface));gap:8px;padding:14px 16px;display:grid}.profile-pinned-label{font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-strong);font-size:.72rem;font-weight:700}.profile-pinned-body{align-items:flex-start;gap:12px;display:flex}.profile-pinned-icon{font-size:1.75rem;line-height:1}.profile-pinned-body strong{margin-bottom:4px;display:block}.profile-pinned-body p{color:var(--text-soft);margin:0;font-size:.88rem;line-height:1.45}.theme-picker{border:0;margin:0 0 18px;padding:0}.theme-picker legend{margin-bottom:8px;font-weight:700}.theme-picker-note{color:var(--text-soft);margin:0 0 14px;font-size:.92rem}.theme-picker-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.theme-picker-card{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);text-align:left;box-shadow:var(--shadow-soft);transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);gap:8px;padding:14px;display:grid}.theme-picker-card:hover{transform:var(--lift-sm);border-color:color-mix(in srgb, var(--accent) 40%, var(--border-color))}.theme-picker-card.is-selected{border-color:var(--accent-strong);box-shadow:var(--focus-ring), var(--shadow-soft)}.theme-picker-card strong{font-family:var(--font-ui);font-size:.95rem}.theme-picker-card span:last-child{color:var(--text-soft);font-size:.82rem;line-height:1.45}.theme-picker-card.is-selected{outline:2px solid var(--accent-strong);outline-offset:2px}.theme-picker-swatches{gap:6px;display:flex}.theme-picker-swatch{border-radius:var(--radius-circle);border:1px solid #0000001f;width:22px;height:22px;box-shadow:inset 0 1px #ffffff59}@media (max-width:768px){.theme-picker-grid{grid-template-columns:1fr}}.wrapup-page{gap:var(--space-6);max-width:1320px;margin:0 auto;display:grid}.wrapup-page .library-controls{margin-bottom:var(--space-2)}.wrap-section{padding:var(--space-6);border:1px solid var(--border-strong);border-radius:var(--radius-3xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 30%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface);box-shadow:var(--shadow-soft)}.wrap-section-header{margin-bottom:var(--space-5)}.wrap-section-header h3{color:var(--text);margin:0;font-size:clamp(1.45rem,2.5vw,2rem)}.wrap-section-header p{max-width:720px;margin:var(--space-2) 0 0;color:var(--text-soft)}.wrap-hero-grid{gap:var(--space-4);margin-bottom:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.wrap-hero-grid .wrap-highlight{justify-content:center;min-height:150px}.wrap-hero-value{color:var(--text);letter-spacing:-.04em;margin:0;font-size:clamp(1.45rem,3vw,2.25rem);font-weight:900;line-height:1.05}.wrap-stat-card{align-items:center;gap:var(--space-3);min-height:110px;padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft);box-shadow:var(--shadow-soft);display:flex}.wrapup-page .goal-progress-grid,.wrapup-page .monthly-insights-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wrap-stat-icon{border-radius:var(--radius-circle);background:var(--accent-soft);flex-shrink:0;place-items:center;width:44px;height:44px;font-size:1.45rem;display:grid}.wrap-stat-card span{color:var(--text-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.76rem;font-weight:900;display:block}.wrap-stat-card strong{margin-top:var(--space-1);color:var(--text);font-size:1.35rem;line-height:1.1;display:block}.wrap-stat-card p{margin:var(--space-1) 0 0;color:var(--text-soft)}.wrap-highlight{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-xl);background:linear-gradient(135deg, var(--accent-soft), transparent 55%), var(--surface-soft);box-shadow:var(--shadow-soft);flex-direction:column;display:flex}.wrap-highlight h4,.wrap-chart-card h4{color:var(--text);margin:0;font-size:1rem}.wrap-highlight p{color:var(--text-soft);margin:0;line-height:1.5}.wrap-highlight strong{color:var(--accent)}.wrap-book-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.wrap-book-list li{padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-muted);gap:2px;display:grid}.wrap-book-list strong{color:var(--text)}.wrap-book-list span{color:var(--text-soft);font-size:.85rem}.wrap-chart-card{padding:var(--space-5);border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 34%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft);box-shadow:var(--shadow-soft)}.wrap-chart-card .bar-chart{gap:var(--space-3);margin-top:var(--space-4);display:grid}.wrap-chart-card .bar-row{gap:var(--space-3);grid-template-columns:100px 1fr 56px;align-items:center;display:grid}.wrap-chart-card .bar-row span{color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:800;overflow:hidden}.wrap-chart-card .bar-row strong{color:var(--text);text-align:right;font-size:.8rem}.wrap-chart-card .bar-track{border-radius:var(--radius-pill);background:var(--surface-muted);height:10px;overflow:hidden}.wrap-chart-card .bar-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-hover));height:100%;box-shadow:0 0 10px #ffbe2838}.wrap-chart-card,.wrap-highlight,.wrap-stat-card{transition:transform .18s,border-color .18s,box-shadow .18s}.wrap-chart-card:hover,.wrap-highlight:hover,.wrap-stat-card:hover{border-color:var(--border-strong);transform:translateY(-3px)}.wrap-stat-grid,.wrap-feature-grid{gap:var(--space-4);margin:var(--space-5) 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.wrap-detail-grid{gap:var(--space-4);margin:var(--space-5) 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wrap-chart-grid{gap:var(--space-5);margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wrapup-controls{gap:var(--space-3);width:-moz-fit-content;width:fit-content;margin:0 0 var(--space-5);padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface);box-shadow:var(--shadow-soft);flex-wrap:wrap;display:flex}.wrapup-controls select{border-radius:var(--radius-pill);min-width:150px;padding:10px 14px;font-weight:800}.wrap-story-hero{margin:var(--space-5) 0 var(--space-6);padding:var(--space-6);border:1px solid var(--border-color);border-radius:var(--radius-3xl);background:radial-gradient(circle at top right, var(--accent-soft), transparent 34%), linear-gradient(180deg, var(--card-sheen-top), transparent), var(--surface-soft)}.wrap-story-hero h2{max-width:900px;margin:var(--space-2) 0;letter-spacing:-.06em;font-size:clamp(2rem,5vw,4.25rem);line-height:.95}.wrap-story-hero p{max-width:720px;color:var(--text-soft);margin:0;font-size:1.05rem}.wrapup-header{margin-bottom:var(--space-5)}.wrap-story-kicker,.wrap-highlight-label{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:900}.wrap-aura-pill{border:1px solid var(--chip-border);border-radius:var(--radius-pill);background:var(--chip-bg);width:-moz-fit-content;width:fit-content;color:var(--chip-text);padding:6px 12px;font-weight:900;display:inline-flex}.wrap-feature-value{margin-top:var(--space-2);color:var(--text);font-size:clamp(1.35rem,2vw,2rem);font-weight:900;line-height:1.05;display:block}.wrap-highlight-content{gap:var(--space-2);display:grid}.wrap-chart-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.auth-page{place-items:center;min-height:100vh;padding:clamp(28px,5vw,64px);display:grid}.auth-hero{grid-template-columns:minmax(0,1.12fr) minmax(360px,.78fr);align-items:center;gap:clamp(42px,7vw,96px);width:min(1160px,100%);display:grid}.auth-hero-copy{gap:24px;display:grid}.auth-logo{object-fit:contain;width:min(420px,100%);height:auto;display:block;transform:translate(-10px)}.auth-hero h1{max-width:720px;color:var(--text);letter-spacing:-.07em;margin:0;font-size:clamp(3.4rem,6.7vw,6.25rem);line-height:.9}.auth-hero-text{max-width:690px;color:var(--text);margin:0;font-size:clamp(1.08rem,1.75vw,1.28rem);line-height:1.65}.auth-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:720px;margin-top:12px;display:grid}.auth-feature-card{border:1px solid color-mix(in srgb, var(--border-color), transparent 18%);background:color-mix(in srgb, var(--surface), transparent 9%);min-height:156px;box-shadow:var(--shadow-soft);border-radius:var(--radius-xl);align-content:start;gap:9px;padding:18px;display:grid}.auth-feature-card span{font-size:1.55rem;line-height:1}.auth-feature-card strong{color:var(--text);font-size:1rem;line-height:1.15}.auth-feature-card p{color:var(--text-soft);margin:0;font-size:.92rem;line-height:1.45}.auth-card{border:1px solid color-mix(in srgb, var(--border-color), transparent 12%);background:linear-gradient(180deg, color-mix(in srgb, var(--surface), white 8%), var(--surface));border-radius:var(--radius-3xl);justify-self:end;width:100%;max-width:440px;padding:clamp(30px,4vw,44px);position:relative;box-shadow:0 24px 60px #00000021,inset 0 1px #ffffff59}.auth-card:before{content:"";border-radius:calc(var(--radius-3xl) - 8px);pointer-events:none;border:1px solid #ffffff38;position:absolute;top:12px;bottom:12px;left:12px;right:12px}.auth-card-header{margin-bottom:26px;position:relative}.auth-eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:900}.auth-card h2{color:var(--text);letter-spacing:-.045em;margin:0 0 12px;font-size:clamp(2.25rem,4vw,3.25rem);line-height:.95}.auth-form{gap:17px;display:grid;position:relative}.auth-form label{color:var(--text);gap:8px;font-weight:800;display:grid}.auth-card input{width:100%;min-height:44px}.auth-submit{justify-content:center;width:100%;min-height:48px;margin-top:6px;font-weight:900}.form-message{color:var(--text);margin:16px 0 0;font-weight:700;position:relative}.auth-field-hint{color:var(--text-soft);margin:-6px 0 12px;font-size:.88rem}.auth-modal-message{text-align:center}.auth-login-message{border-radius:var(--radius-lg);background:var(--surface-muted);padding:12px 14px;font-size:.95rem;line-height:1.5}.auth-signup-success{gap:18px;display:grid;position:relative}.auth-signup-success-mark{font-size:2rem;line-height:1}.auth-signup-success-header{margin-bottom:0}.auth-signup-success-header h2{font-size:clamp(1.85rem,4vw,2.35rem)}.auth-signup-success-email{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface), white 6%);gap:6px;padding:14px 16px;display:grid}.auth-signup-success-email strong{word-break:break-word;font-size:1.05rem}.auth-signup-success-steps{color:var(--text-soft);margin:0;padding-left:1.2rem;line-height:1.55}.auth-signup-success-steps li+li{margin-top:8px}.auth-signup-success-tip{color:var(--text-soft);margin:0;font-size:.92rem;line-height:1.5}.auth-signup-success-support{text-align:center;color:var(--text-soft);margin:0;font-size:.92rem}.auth-support-note{border-top:1px solid var(--border-color);color:var(--text-soft);text-align:center;margin-top:18px;padding-top:16px;font-size:.92rem}.text-button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:18px;padding:0;font-weight:900;position:relative}.text-button:hover{text-decoration:underline}.auth-signup-prompt{border-top:1px solid var(--border-color);gap:10px;margin-top:24px;padding-top:22px;display:grid;position:relative}.auth-signup-prompt p{color:var(--text-soft);margin:0;font-weight:700}.auth-secondary-action{justify-content:center;width:100%}.auth-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0000006b;place-items:center;padding:24px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.auth-modal{border:1px solid color-mix(in srgb, var(--border-color), transparent 12%);background:linear-gradient(180deg, color-mix(in srgb, var(--surface), white 8%), var(--surface));border-radius:var(--radius-3xl);width:min(500px,100%);padding:clamp(28px,4vw,42px);position:relative;box-shadow:0 28px 80px #00000038,inset 0 1px #ffffff59}.auth-modal-close{border-radius:var(--radius-circle);background:var(--surface-muted);width:38px;height:38px;color:var(--text);cursor:pointer;border:0;font-size:1.7rem;line-height:1;position:absolute;top:14px;right:16px}.auth-modal-close:hover{background:var(--accent-soft)}.auth-captcha{border-radius:var(--radius-lg);background:#ffffff47;border:1px solid #0000000f;justify-content:center;padding:14px;display:flex;overflow:hidden}.auth-forgot-button{justify-self:start}@media (max-width:900px){.app-shell{width:100%;max-width:none;margin:0;padding-bottom:0}.brand-header{border-radius:var(--radius-xl);padding:72px 16px 20px}.brand-header p,.brand-tagline{font-size:.95rem}.header-profile-actions{justify-content:flex-end;top:16px;left:16px;right:16px}.nav{gap:8px}.section-header,.book-top,.achievement-browser-header,.shelf-header{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.brand-logo{width:100%}.brand-header{margin-top:14px}}@media (max-width:768px){.desktop-brand-header,.desktop-nav-wrap{display:none}.app-shell{width:100%;padding-bottom:0}.mobile-app-header{z-index:50;border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface);box-shadow:var(--shadow-soft);justify-content:space-between;align-items:center;gap:12px;margin:10px 0 14px;padding:10px 12px;display:flex;position:sticky;top:0}.mobile-app-header>img{max-width:210px;height:auto}.mobile-avatar-button{border:2px solid var(--accent);border-radius:var(--radius-circle);background:var(--surface-soft);width:42px;height:42px;color:var(--text);place-items:center;font-weight:900;display:grid}.mobile-avatar-button img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.mobile-bottom-nav{z-index:80;border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--surface);box-shadow:var(--shadow-strong);grid-template-columns:repeat(5,1fr);gap:6px;padding:8px;display:grid;position:fixed;bottom:10px;left:10px;right:10px}.mobile-bottom-nav a,.mobile-bottom-nav button{border-radius:var(--radius-lg);color:var(--text-soft);background:0 0;border:none;place-items:center;gap:2px;padding:7px 4px;font-size:.68rem;font-weight:900;text-decoration:none;display:grid}.mobile-bottom-nav span{font-size:1.15rem;line-height:1}.mobile-bottom-nav a.active,.mobile-bottom-nav a[aria-current=page]{background:var(--accent-soft);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}.mobile-menu-backdrop{z-index:120;background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:end center;padding:16px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.mobile-menu-panel{border:1px solid var(--border-strong);border-radius:var(--radius-3xl);background:var(--surface);width:min(420px,100%);box-shadow:var(--shadow-strong);gap:10px;padding:22px;display:grid;position:relative}.mobile-menu-panel h3{color:var(--text);margin:0}.mobile-menu-panel p{color:var(--text-soft);margin:0 0 8px}.mobile-menu-panel a,.mobile-menu-panel button:not(.modal-close-btn){border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface-soft);width:100%;color:var(--text);text-align:left;padding:12px 14px;font-weight:900;text-decoration:none}.mobile-menu-panel a.active{border-color:var(--accent);background:var(--accent-soft)}}@media (min-width:901px){.home-view--mobile{display:none!important}}@media (max-width:900px){.home-view--desktop{display:none!important}.home-page{gap:0}.home-mobile-dash{gap:16px;display:grid}.home-mobile-actions{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.home-mobile-action{border:1px solid color-mix(in srgb, var(--border-color) 85%, transparent);background:var(--surface-raised);min-height:72px;color:var(--text);font-family:var(--font-ui);border-radius:14px;place-items:center;gap:4px;padding:10px 6px;font-size:.72rem;font-weight:600;text-decoration:none;transition:transform .12s,background .12s;display:grid}.home-mobile-action:active{transform:scale(.97)}.home-mobile-action--primary{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:linear-gradient(165deg, color-mix(in srgb, var(--accent-hover) 88%, white), var(--accent));color:var(--text-inverse);box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 32%, transparent)}.home-mobile-action-icon{font-size:1.25rem;line-height:1}.home-mobile-now-reading{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border-color));background:radial-gradient(ellipse 90% 60% at 50% 0%, color-mix(in srgb, var(--accent-soft) 55%, transparent), transparent 62%), var(--surface-raised);color:inherit;border-radius:18px;gap:14px;padding:16px;text-decoration:none;display:grid}.home-mobile-now-cover{width:min(148px,42vw);margin-inline-start:auto;margin-inline-end:auto;position:relative}.home-mobile-now-frame{box-shadow:0 14px 32px color-mix(in srgb, var(--text) 16%, transparent), 0 0 0 2px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:12px}.home-mobile-now-badge{border-radius:var(--radius-pill);background:var(--accent);color:var(--text-inverse);font-family:var(--font-ui);padding:4px 9px;font-size:.72rem;font-weight:800;position:absolute;bottom:-4px;right:-4px}.home-mobile-now-copy{text-align:center;gap:6px;display:grid}.home-mobile-now-label{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong);font-size:.68rem;font-weight:700}.home-mobile-now-copy h2{margin:0;font-size:1.15rem;line-height:1.2}.home-mobile-now-author{font-family:var(--font-ui);color:var(--text-soft);margin:0;font-size:.86rem;font-style:italic}.home-mobile-now-detail{font-family:var(--font-ui);color:var(--text-soft);margin:0;font-size:.8rem}.home-mobile-now-bar{border-radius:var(--radius-pill);height:6px;margin-top:2px}.home-mobile-now-cta{border-radius:var(--radius-pill);background:linear-gradient(165deg, var(--accent-hover), var(--accent));min-height:44px;color:var(--text-inverse);font-family:var(--font-ui);box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 30%, transparent);justify-content:center;align-items:center;margin-top:4px;padding:10px 16px;font-size:.92rem;font-weight:700;display:flex}.home-mobile-stack{gap:10px;display:grid}.home-mobile-section-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.home-mobile-section-head h2{font-family:var(--font-ui);letter-spacing:.01em;margin:0;font-size:.92rem;font-weight:700}.home-mobile-section-link{font-family:var(--font-ui);color:var(--accent-strong);flex-shrink:0;font-size:.82rem;font-weight:600;text-decoration:none}.home-mobile-stack-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.home-mobile-stack-track .reading-shelf-card{scroll-snap-align:start;border:1px solid var(--border-color);background:var(--surface-raised);color:inherit;border-radius:12px;flex:0 0 108px;gap:6px;padding:10px;text-decoration:none;display:grid}.home-mobile-stack-track .reading-shelf-card .book-cover-frame{width:100%}.home-mobile-stack-track .reading-shelf-card-body{gap:2px;display:grid;position:static}.home-mobile-stack-track .reading-shelf-card-body strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;padding-right:0;font-size:.72rem;line-height:1.25;display:-webkit-box;overflow:hidden}.home-mobile-stack-track .reading-shelf-author{display:none}.home-mobile-stack-track .reading-shelf-percent{font-size:.68rem;position:static}.home-mobile-stack-track .reading-shelf-bar{height:4px}.home-mobile-stats-track{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.home-mobile-stat{scroll-snap-align:start;border:1px solid color-mix(in srgb, var(--border-color) 88%, transparent);background:var(--surface-raised);border-radius:14px;flex:none;gap:2px;min-width:96px;padding:12px 14px;display:grid}.home-mobile-stat--streak{border-color:color-mix(in srgb, var(--accent) 28%, var(--border-color));background:color-mix(in srgb, var(--accent-soft) 35%, var(--surface-raised))}.home-mobile-stat-value{font-family:var(--font-display);font-size:1.35rem;font-weight:600;line-height:1}.home-mobile-stat-label{font-family:var(--font-ui);color:var(--text-soft);font-size:.72rem}.home-mobile-stat-sub{font-family:var(--font-ui);color:var(--accent-strong);font-size:.65rem}.home-mobile-empty{border:1px dashed color-mix(in srgb, var(--accent) 25%, var(--border-color));background:color-mix(in srgb, var(--accent-soft) 18%, var(--surface));text-align:center;border-radius:16px;place-items:center;gap:10px;padding:28px 20px;display:grid}.home-mobile-empty--idle{padding:22px 18px}.home-mobile-empty-mark{font-size:2rem;line-height:1}.home-mobile-empty h2{margin:0;font-size:1.15rem}.home-mobile-empty p{max-width:28ch;font-family:var(--font-ui);color:var(--text-soft);margin:0;font-size:.88rem;line-height:1.45}.home-mobile-empty-btn{width:100%;max-width:280px;margin-top:14px}.home-mobile-dash .home-panel{box-shadow:none;border-radius:16px;padding:14px}.home-mobile-dash .home-panel-head h2{font-size:.92rem;font-family:var(--font-ui)}.home-mobile-dash .home-panel-sub{display:none}.home-mobile-dash .home-goals-tabs{width:100%;margin-bottom:10px;display:flex}.home-mobile-dash .home-goals-tabs button{text-align:center;flex:1;padding:7px 10px;font-size:.78rem}.home-mobile-dash .home-goal-bar{border-radius:12px;padding:10px 12px}.home-mobile-dash .onboarding-guide{border-radius:16px}.home-mobile-recent{gap:8px;display:grid}.home-mobile-recent-empty{background:var(--surface-raised);font-family:var(--font-ui);color:var(--text-soft);border-radius:14px;margin:0;padding:14px;font-size:.86rem;line-height:1.45}.home-mobile-session-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.home-mobile-session-row{background:var(--surface-raised);border:1px solid color-mix(in srgb, var(--border-color) 80%, transparent);color:inherit;border-radius:14px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:grid}.home-mobile-session-row:active{background:color-mix(in srgb, var(--accent-soft) 35%, var(--surface-raised))}.home-mobile-session-cover{border-radius:6px;width:44px!important}.home-mobile-session-copy strong{font-family:var(--font-ui);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:.84rem;display:block;overflow:hidden}.home-mobile-session-copy p,.home-mobile-session-copy time{font-family:var(--font-ui);color:var(--text-soft);margin:0;font-size:.74rem}.home-mobile-session-copy time{margin-top:2px;font-size:.68rem;display:block}.home-mobile-achievement{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border-color));background:color-mix(in srgb, var(--accent-soft) 28%, var(--surface-raised));color:inherit;border-radius:14px;align-items:center;gap:10px;margin-top:4px;padding:12px 14px;text-decoration:none;display:flex}.home-mobile-achievement>span:first-child{font-size:1.4rem;line-height:1}.home-mobile-achievement-label{font-family:var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft);font-size:.68rem;font-weight:600;display:block}.home-mobile-achievement strong{font-family:var(--font-ui);font-size:.88rem}.home-target-achievement{border-radius:16px;padding:14px}.home-pinned-badge{text-align:left;flex-direction:row;align-items:center;width:100%;max-width:none;margin-bottom:4px;padding:12px 14px}.home-pinned-badge-medallion{width:48px;height:48px}.home-pinned-badge-icon{font-size:1.5rem}.home-pinned-badge-copy strong{font-size:.88rem}.home-target-icon{font-size:1.65rem}.home-activity-pager{margin-top:8px}.home-activity-pager button{flex:1;min-height:40px}}@media (max-width:380px){.home-mobile-actions{grid-template-columns:repeat(2,1fr)}.home-mobile-action{min-height:64px}}@media (max-width:1100px){.library-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.library-controls input{grid-column:1/-1}}@media (max-width:768px){.library-page{max-width:100%}.library-header{margin-bottom:12px}.library-controls{z-index:auto;border-radius:var(--radius-lg);-webkit-backdrop-filter:none;backdrop-filter:none;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;padding:10px;position:static}.library-controls input{grid-column:1/-1}.library-controls input,.library-controls select{min-height:38px;padding:8px 10px;font-size:.82rem}.library-summary{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:14px;font-size:.84rem}.library-summary>div{min-width:0}.active-filter-chips{gap:6px;margin-top:6px}.filter-chip{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:4px 8px;font-size:.7rem;overflow:hidden}.library-summary .toolbar-btn{width:100%;min-height:34px;padding:6px 10px;font-size:.76rem}}@media (max-width:420px){.library-controls{grid-template-columns:1fr}.library-controls input{grid-column:auto}}@media (max-width:650px){.shelf-toggle{flex-direction:column;align-items:flex-start}}@media (max-width:768px){.add-book-page{max-width:100%}.add-book-header{margin-bottom:var(--space-4)}.add-book-form{gap:var(--space-3)}.add-book-cover-column{gap:var(--space-2)}.cover-upload-preview{width:82px;height:123px}.isbn-fetch-row button{width:100%}}@media (max-width:1200px){.reading-log-layout{grid-template-columns:1fr}.heatmap-card{overflow-x:auto}}@media (max-width:1100px){.year-calendar{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media (max-width:768px){.reading-log-page{max-width:100%}.reading-log-header{margin-bottom:12px}.reading-log-layout{gap:12px}.reading-log-form h3,.heatmap-card h3,.recent-activity-section h3{font-size:1rem}.reading-log-form textarea{min-height:84px}.selected-book-preview{border-radius:var(--radius-md);padding:10px}.heatmap-card{min-height:0;padding:12px}.year-calendar{scroll-snap-type:x mandatory;scrollbar-width:thin;grid-template-columns:none;gap:10px;padding:2px 2px 10px;display:flex;overflow-x:auto}.month-card{scroll-snap-align:start;flex-shrink:0;width:220px;min-width:220px;padding:10px}.month-card h4{font-size:.86rem}.weekday-row span{font-size:.62rem}.calendar-day{border-radius:7px;min-height:22px;font-size:.56rem}.selected-day-logs{margin-top:12px;padding-top:12px}.reading-log-list{gap:10px}.reading-log-item{border-radius:var(--radius-lg);padding:12px}.reading-log-item strong{font-size:.92rem}.reading-log-item span,.reading-log-item p{font-size:.78rem}.button-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.button-row .action-btn{width:100%;min-height:38px;padding:8px 10px;font-size:.8rem}.achievement-summary,.achievement-summary-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.level-card{border-radius:var(--radius-lg);flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:18px;padding:14px}.level-card h3{font-size:1.3rem}.rank-progress{width:100%;margin:10px 0}.latest-achievement-card{border-radius:var(--radius-lg);flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:18px;padding:14px}.achievement-summary .insight-card{border-radius:var(--radius-lg);padding:10px 12px}.xp-breakdown{border-radius:var(--radius-lg);margin-bottom:22px;padding:14px}.xp-breakdown h3{margin-bottom:12px}.xp-breakdown-grid{grid-template-columns:1fr 1fr;gap:10px}.xp-breakdown-grid span,.xp-breakdown-grid strong{font-size:.82rem;display:block}.xp-breakdown-grid strong{margin-top:2px}.achievement-browser-header{flex-direction:column;align-items:flex-start;gap:10px;margin:22px 0 12px}.achievement-filters{grid-template-columns:1fr;gap:8px;width:100%;display:grid}.achievement-filters select{width:100%;min-height:38px;padding:8px 10px;font-size:.82rem}.achievement-grid{grid-template-columns:1fr;gap:10px}.achievement-card{border-radius:var(--radius-lg);gap:10px;padding:12px}.achievement-icon,.level-card .level-badge,.level-badge{width:44px;height:44px;font-size:1.35rem}.achievement-card h4{font-size:.95rem}.achievement-card p{font-size:.78rem;line-height:1.35}.achievement-footer{flex-direction:column;align-items:flex-start;gap:6px;margin-top:8px}.achievement-category{padding:3px 8px;font-size:.68rem}}@media (max-width:420px){.achievement-summary,.achievement-summary-grid{grid-template-columns:1fr}}@media (max-width:1100px){.insights-page .goal-progress-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:768px){.insights-page .insights-header{flex-direction:column;align-items:flex-start}.insights-page .goal-progress-grid,.insights-page .insights-grid,.insights-page .monthly-insights-grid,.insights-page .charts-grid{grid-template-columns:1fr}.insights-page .goal-card strong,.insights-page .insight-card strong{font-size:1.25rem}}@media (max-width:1000px){.settings-layout{grid-template-columns:1fr}.settings-contents{position:static}.settings-data-grid{grid-template-columns:1fr}}@media (max-width:700px){.settings-card{padding:var(--space-4);border-radius:var(--radius-2xl)}.settings-profile-hero{flex-direction:column;align-items:flex-start}.settings-actions .primary-submit,.settings-data-panel .primary-submit{width:100%}.csv-report-modal{border-radius:var(--radius-2xl);padding:18px}.csv-report-stats{grid-template-columns:1fr}}.csv-report-modal{border-radius:var(--radius-2xl);padding:18px}.csv-report-stats{grid-template-columns:1fr}@media (max-width:900px){.wrap-hero-grid{grid-template-columns:1fr}.wrap-section{padding:var(--space-4)}}@media (max-width:700px){.wrapup-page .goal-progress-grid,.wrapup-page .monthly-insights-grid,.wrapup-page .charts-grid{grid-template-columns:1fr}.wrap-chart-card .bar-row{grid-template-columns:72px 1fr 48px}}@media (max-width:900px){.wrap-stat-grid,.wrap-feature-grid,.wrap-detail-grid,.wrap-chart-grid{grid-template-columns:1fr}}@media (max-width:700px){.wrap-story-hero{padding:var(--space-4);margin:var(--space-4) 0}.wrap-story-hero h2{font-size:clamp(1.8rem,9vw,3rem);line-height:1}.wrap-section{padding:var(--space-3)}.wrap-stat-grid,.wrap-feature-grid,.wrap-detail-grid,.wrap-chart-grid{gap:var(--space-3)}.wrap-stat-card,.wrap-highlight,.wrap-chart-card{padding:var(--space-3)}}@media (max-width:960px){.auth-page{align-items:start}.auth-hero{grid-template-columns:1fr}.auth-card{justify-self:stretch;max-width:none}}@media (max-width:680px){.auth-logo{width:min(330px,100%);transform:none}.auth-feature-grid{grid-template-columns:1fr}.auth-feature-card{min-height:auto}.auth-hero h1{font-size:clamp(2.7rem,14vw,4.25rem)}}@media (max-width:768px){:root{--space-6:1.2rem;--space-5:1rem;--space-4:.8rem;--space-3:.65rem;--radius-xl:18px;--radius-lg:14px}html{-webkit-text-size-adjust:100%}body{overflow-x:hidden}.app-shell,.page-shell,.main-content{width:100%;max-width:100%}.page-header{gap:.35rem;margin-bottom:.9rem}.page-header h1,.page-title{font-size:clamp(1.55rem,8vw,2.15rem);line-height:1.05}.page-header p,.page-subtitle,.muted-text{font-size:.9rem}.card,.form-card,.insight-card,.goal-card,.chart-card,.settings-card,.level-card,.latest-achievement-card,.achievement-card,.reading-log-item,.month-card{border-radius:var(--radius-lg);padding:.9rem}.primary-btn,.secondary-btn,.primary-submit,.action-btn,.text-button,button,select,input,textarea{min-height:42px;font-size:.94rem}.library-controls,.achievement-filters,.settings-actions,.button-row,.form-submit-bar{gap:.55rem}.library-controls{border-radius:var(--radius-lg);margin-bottom:.9rem;padding:.75rem;position:static}.library-controls input,.library-controls select,.library-controls button{width:100%}.book-grid,.achievement-grid,.insights-grid,.charts-grid,.monthly-insights-grid,.goal-progress-grid,.achievement-summary,.xp-breakdown-grid{gap:.75rem}.book-card{min-height:auto}.book-card-cover,.book-cover,.cover-upload-preview{max-height:220px}.achievement-card{grid-template-columns:auto 1fr;align-items:start;gap:.4rem .75rem;display:grid}.achievement-icon{width:42px;height:42px;font-size:1.35rem}.achievement-footer,.achievement-progress{grid-column:1/-1}.year-calendar{grid-template-columns:1fr;gap:.75rem;display:grid}.month-card{overflow:hidden}.month-grid{gap:.22rem}.calendar-day{aspect-ratio:1;min-width:0;font-size:.68rem}}@media (max-width:480px){.card,.form-card,.insight-card,.goal-card,.chart-card,.settings-card,.level-card,.latest-achievement-card,.achievement-card,.reading-log-item,.month-card{padding:.75rem}.primary-btn,.secondary-btn,.primary-submit,.action-btn{padding-inline-start:.8rem;padding-inline-end:.8rem}}@media (max-width:768px){.page-content{padding:12px 12px calc(82px + env(safe-area-inset-bottom))}.page-header{margin-bottom:12px}.page-header h2{font-size:1.32rem}.page-header p{font-size:.86rem}.card,.form-card,.goal-card,.insight-card,.chart-card,.level-card,.achievement-card,.shelf-section,.settings-card,.wrap-section,.wrap-stat-card,.wrap-highlight,.wrap-chart-card{border-radius:var(--radius-lg);padding:14px}.library-controls,.wrapup-controls{border-radius:var(--radius-lg);gap:8px;padding:10px;position:static}.library-controls input,.library-controls select,.wrapup-controls select{min-height:40px;padding:9px 11px;font-size:.86rem}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.book-card{border-radius:var(--radius-lg)}.book-cover{max-height:190px}.book-content{padding:10px}.book-content h3{font-size:.86rem}.book-meta,.book-genres,.book-format-row,.book-card-tags,.book-meta-tags,.book-card-badges{gap:5px}.chip,.badge,.tag,.genre-chip,.format-chip,.edition-chip{padding:3px 7px;font-size:.68rem}.book-card-icon-actions{gap:4px;padding-top:8px}.book-card-icon-actions button{padding:6px 2px;font-size:.66rem}.year-calendar{scroll-snap-type:x mandatory;gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.month-card{scroll-snap-align:start;flex-shrink:0;min-width:260px}.calendar-day{min-height:24px;font-size:.6rem}.achievement-grid{grid-template-columns:1fr;gap:10px}.achievement-card{min-height:0}}@media (max-width:900px){:root{--mobile-gutter:16px;--mobile-section-gap:12px;--mobile-radius:14px;--dock-height:64px}html{-webkit-text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent;background-attachment:scroll;overflow-x:hidden}.app-layout{min-height:100vh}.app-stage{background:0 0;width:100%;max-width:none;min-height:100vh}.page-content{width:100%;max-width:none;padding:8px var(--mobile-gutter) calc(var(--dock-height) + env(safe-area-inset-bottom,0px) + 16px);margin:0}.app-mobile-bar{z-index:60;padding:max(10px, env(safe-area-inset-top,0px)) var(--mobile-gutter) 10px;border:none;border-bottom:1px solid color-mix(in srgb, var(--border-color) 72%, transparent);background:color-mix(in srgb, var(--surface-raised) 94%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);box-shadow:none;border-radius:0;justify-content:space-between;align-items:center;gap:12px;margin:0;display:flex;position:sticky;top:0}.app-mobile-bar--home{padding-bottom:8px}.app-mobile-brand-lockup{align-items:center;gap:10px;min-width:0;display:flex}.app-mobile-mark{flex-shrink:0;font-size:1.45rem;line-height:1}.app-mobile-home-name,.app-mobile-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-ui);letter-spacing:-.01em;color:var(--text);margin:0;font-size:1.05rem;font-weight:700;overflow:hidden}.app-mobile-title{flex:1;font-size:1.12rem}.app-mobile-avatar{flex-shrink:0;width:40px;height:40px}.app-stage{padding-bottom:0}.app-dock{height:calc(var(--dock-height) + env(safe-area-inset-bottom,0px));padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));border:none;border-top:1px solid color-mix(in srgb, var(--border-color) 78%, transparent);background:color-mix(in srgb, var(--surface-raised) 96%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.15);backdrop-filter:blur(18px)saturate(1.15);box-shadow:0 -1px 0 color-mix(in srgb, var(--text) 4%, transparent);border-radius:0;bottom:0;left:0;right:0}.dock-link{letter-spacing:0;border-radius:10px;gap:2px;padding:4px 2px;font-size:.64rem;font-weight:600}.dock-link svg{width:24px;height:24px}.dock-link.active,.dock-link[aria-current=page]{background:var(--accent-soft)}.dock-link--accent{box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 38%, transparent);border-radius:12px;transform:translateY(-2px)}.app-footer-cozy,.page-header{display:none}.home-page,.library-page,.reading-log-page,.insights-page,.achievements-page,.settings-page,.wrapup-page,.shelves-page,.add-book-page{gap:var(--mobile-section-gap);display:grid}.card,.form-card,.goal-card,.insight-card,.chart-card,.settings-card,.level-card,.achievement-card,.wrap-section,.home-panel,.onboarding-guide,.month-card,.reading-log-item{border-radius:var(--mobile-radius);box-shadow:none}.library-controls{margin-inline:calc(var(--mobile-gutter) * -1);padding:12px var(--mobile-gutter);box-shadow:none;border-left:none;border-right:none;border-radius:0}.book-grid{gap:10px}.book-card{border-radius:var(--mobile-radius)}.book-content{padding:10px 10px 12px}.book-content h3{font-size:.88rem;line-height:1.25}.settings-layout{gap:var(--mobile-section-gap)}.settings-contents{padding:10px var(--mobile-gutter);margin-inline:calc(var(--mobile-gutter) * -1);scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;border-left:none;border-right:none;border-radius:0;gap:8px;display:flex;overflow-x:auto}.settings-contents p{display:none}.settings-contents a{scroll-snap-align:start;border-radius:var(--radius-pill);white-space:nowrap;flex:none;padding:8px 12px;font-size:.82rem}.settings-main{gap:var(--mobile-section-gap);display:grid}.reading-spotlight-inner{gap:12px;padding:12px}.reading-spotlight-copy h2{font-size:1.05rem;line-height:1.2}.reading-spotlight-cta{border-radius:var(--radius-pill);min-height:44px;padding:10px 14px;font-size:.92rem;font-weight:700}.primary-btn,.secondary-btn,.primary-submit{min-height:44px}.app-drawer{border-radius:20px 20px 0 0;width:100%;max-height:min(90dvh,780px)}.app-drawer-backdrop{place-items:end stretch;padding:0}.drawer-nav-link{min-height:48px;padding:12px 14px}}@media (max-width:420px){.dock-link{font-size:.58rem}}
