:root{--bg:#0e1526;--surface:#ffffff12;--surface-alt:#ffffff1a;--surface-raised:#ffffff21;--border:#ffffff29;--border-soft:#ffffff1a;--ink:#f5f6fa;--ink-soft:#cbd0dd;--muted:#8d94a8;--accent:#ff6b4a;--accent-ink:#fff8ee;--accent-soft:#ff6b4a29;--accent-2:#ff8f6b;--good:#4fc98e;--good-soft:#4fc98e29;--critical:#ee8079;--critical-soft:#e2726a29;--good-fill:#1f8a5a;--critical-fill:#b8402f;--bible-accent:#d0a355;--bible-soft:#d0a3552e;--gym-accent:#ea8a63;--gym-soft:#ea8a632e;--study-accent:#9aa8f2;--study-soft:#9aa8f22e;--health-accent:#55d6b8;--health-soft:#55d6b82e;--weather-accent:#7cb8ec;--weather-soft:#7cb8ec2e;--reading-accent:#d698c0;--reading-soft:#d698c02e;--goals-accent:#b79ce8;--goals-soft:#b79ce82e;--flashcards-accent:#e28ab0;--flashcards-soft:#e28ab02e;--calendar-accent:#6cc3d4;--calendar-soft:#6cc3d42e;--bible-fill:#96702f;--gym-fill:#c1502e;--study-fill:#4f5fa8;--health-fill:#23886f;--weather-fill:#3d78a3;--reading-fill:#77486a;--goals-fill:#6d4fa8;--flashcards-fill:#b8457a;--calendar-fill:#2c7d8f;--font:-apple-system, "SF Pro Text", ui-sans-serif, "Segoe UI", system-ui, sans-serif;--font-display:-apple-system, "SF Pro Display", ui-sans-serif, "Segoe UI", system-ui, sans-serif;--font-serif:ui-serif, Georgia, "Times New Roman", serif;--text-2xs:10.5px;--text-xs:12px;--text-sm:13px;--text-base:15px;--text-md:16.5px;--text-lg:19px;--text-xl:23px;--text-2xl:29px;--text-display:33px;--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-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:26px;--radius-pill:999px;--shadow-xs:0 1px 3px #00000047;--shadow-sm:0 4px 16px #00000042;--shadow-md:0 14px 34px #00000052;--shadow-lg:0 24px 56px #0000006b;--shadow-focus:0 0 0 3px #ff6b4a47;--ease:cubic-bezier(.22, 1, .36, 1);--duration-fast:.14s;--duration:.22s;--gradient-accent:linear-gradient(135deg, #ff6b4a 0%, #ffb020 100%);--gradient-bible:linear-gradient(135deg, #8a6423 0%, #c99a45 100%);--gradient-gym:linear-gradient(135deg, #b3481f 0%, #e57a4a 100%);--gradient-study:linear-gradient(135deg, #3d4a8a 0%, #6f7fd4 100%);--gradient-health:linear-gradient(135deg, #1c7259 0%, #3aab8a 100%);--gradient-reading:linear-gradient(135deg, #623a57 0%, #9c6488 100%);--gradient-calendar:linear-gradient(135deg, #1c5c6b 0%, #4aa3b6 100%);--shadow-glow-accent:0 6px 20px #ff6b4a59;--glass-blur:blur(24px)}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;margin:0;line-height:1.45;position:relative}body:before{content:"";z-index:-1;background:radial-gradient(120% 70% at 50% -8%,#2c4270 0%,#1c2d4d 32%,#101a30 62%,#0a0f1c 100%);position:fixed;inset:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;font-weight:700}p{line-height:1.5}input,button,textarea,select{font-family:inherit}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=tel],input[type=url],input:not([type]),textarea{font-size:max(16px, var(--text-base))!important}button{cursor:pointer}a{color:var(--accent)}.card{background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-list{background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin:0;padding:0;list-style:none;overflow:hidden}.card-list>li{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-soft);display:flex}.card-list>li:last-child{border-bottom:none}.icon-chip{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:inline-flex}.icon-chip-gradient{border-radius:var(--radius-md);background:var(--gradient-accent);color:var(--accent-ink);box-shadow:var(--shadow-glow-accent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.section-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 var(--space-2);font-weight:700}.progress-bar{border-radius:var(--radius-pill);background:var(--surface-alt);height:6px;overflow:hidden}.progress-bar>span{border-radius:var(--radius-pill);background:var(--gradient-accent);height:100%;transition:width var(--duration) var(--ease);display:block}.btn{border-radius:var(--radius-md);font-size:var(--text-sm);transition:transform var(--duration-fast) var(--ease), opacity var(--duration-fast) var(--ease), background-color var(--duration-fast) var(--ease);border:none;justify-content:center;align-items:center;gap:6px;padding:11px 18px;font-family:inherit;font-weight:650;line-height:1.2;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn:active:not(:disabled){transform:scale(.96)}.btn-primary{background:var(--gradient-accent);color:var(--accent-ink);box-shadow:var(--shadow-glow-accent)}.btn-secondary{background:var(--surface-alt);color:var(--ink-soft);border:1px solid var(--border)}.btn-ghost{color:var(--accent);background:0 0;padding-left:6px;padding-right:6px}.btn-danger{color:var(--critical);border:1px solid var(--critical);background:0 0}.btn-sm{font-size:var(--text-xs);padding:7px 13px}.badge{border-radius:var(--radius-pill);align-items:center;gap:4px;padding:3px 9px;font-size:11.5px;font-weight:700;line-height:1.4;display:inline-flex}.badge-good{background:var(--good-soft);color:var(--good)}.badge-accent{background:var(--accent-soft);color:var(--accent)}.badge-gradient{background:var(--gradient-accent);color:var(--accent-ink)}.tappable{transition:transform var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease)}.tappable:active{transform:scale(.98)}.flat-list{margin:0;padding:0;list-style:none}.flat-list>li{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-soft);padding:13px 2px;display:flex}.flat-list>li:last-child{border-bottom:none}.hr{border:none;border-top:1px solid var(--border-soft);margin:0}.hero-number{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:750;line-height:1}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-in,.stagger>*{animation:fade-up var(--duration) var(--ease) both}.stagger>:first-child{animation-delay:0s}.stagger>:nth-child(2){animation-delay:30ms}.stagger>:nth-child(3){animation-delay:60ms}.stagger>:nth-child(4){animation-delay:90ms}.stagger>:nth-child(5){animation-delay:.12s}@keyframes check-pop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.check-pop{animation:check-pop .32s var(--ease) both}@keyframes value-bump{0%{opacity:1;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.value-bump{animation:value-bump .34s var(--ease) both}@keyframes float-up-fade{0%{opacity:0;transform:translateY(4px)scale(.9)}25%{opacity:1}to{opacity:0;transform:translateY(-18px)scale(1)}}.float-delta{pointer-events:none;animation:float-up-fade .9s var(--ease) both;font-weight:750;font-size:var(--text-sm);position:absolute}@keyframes celebrate-pop{0%{opacity:0;transform:scale(.5)rotate(-8deg)}55%{opacity:1;transform:scale(1.15)rotate(4deg)}80%{transform:scale(.96)rotate(-1deg)}to{transform:scale(1)rotate(0)}}.celebrate{animation:celebrate-pop .55s var(--ease) both;display:inline-block}@keyframes celebrate-glow{0%{box-shadow:0 0 #b85c2259}to{box-shadow:0 0 0 22px #b85c2200}}.celebrate-glow{animation:celebrate-glow .9s var(--ease) both;border-radius:var(--radius-pill)}@keyframes progress-sheen{0%{opacity:.5}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation:view-fade-out .18s var(--ease) both}::view-transition-new(root){animation:view-fade-in .26s var(--ease) both}}@keyframes view-fade-out{to{opacity:0}}@keyframes view-fade-in{0%{opacity:0;transform:translateY(8px)scale(.99)}}:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--radius-sm);outline:none}.toggle{cursor:pointer;flex-shrink:0;align-items:center;width:46px;height:28px;display:inline-flex;position:relative}.toggle input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.toggle-track{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-pill);transition:background-color var(--duration) var(--ease), border-color var(--duration) var(--ease);position:absolute;inset:0}.toggle-track:after{content:"";width:22px;height:22px;box-shadow:var(--shadow-xs);transition:transform var(--duration) var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.toggle input:checked+.toggle-track{background:var(--accent);border-color:var(--accent)}.toggle input:checked+.toggle-track:after{transform:translate(18px)}.toggle input:focus-visible+.toggle-track{box-shadow:var(--shadow-focus)}.toggle input:disabled+.toggle-track{opacity:.5}.checkbox{cursor:pointer;flex-shrink:0;width:24px;height:24px;display:inline-flex;position:relative}.checkbox input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.checkbox-box{border:1.75px solid var(--border);background:var(--surface-alt);color:#0000;transition:background-color var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.checkbox input:checked+.checkbox-box{background:var(--good-fill);border-color:var(--good-fill);color:#fff}.checkbox input:checked+.checkbox-box svg{animation:check-pop .3s var(--ease) both}.checkbox input:focus-visible+.checkbox-box{box-shadow:var(--shadow-focus)}.segmented{background:var(--surface-alt);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-md);border:1px solid var(--border-soft);gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--muted);font-size:var(--text-sm);border-radius:calc(var(--radius-md) - 3px);transition:background-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);background:0 0;border:none;padding:7px 14px;font-family:inherit;font-weight:650}.segmented button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs)}.overlay-scrim{-webkit-backdrop-filter:blur(2px);z-index:90;animation:scrim-in var(--duration) var(--ease) both;background:#06070a8c;position:fixed;inset:0}@keyframes scrim-in{0%{opacity:0}}.sheet{z-index:91;background:var(--surface);max-height:min(88dvh,720px);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-soft);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-lg);padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));animation:sheet-in .32s var(--ease) both;border-bottom:none;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes sheet-in{0%{transform:translateY(100%)}}.sheet-grabber{border-radius:var(--radius-pill);background:var(--border);flex-shrink:0;width:36px;height:4px;margin:10px auto 2px}.modal{z-index:91;padding:var(--space-5);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);width:100%;max-width:400px;max-height:85dvh;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:modal-in .22s var(--ease) both;overflow-y:auto}@keyframes modal-in{0%{opacity:0;transform:scale(.96)translateY(4px)}}.toast-stack{left:0;right:0;bottom:calc(72px + max(var(--space-3), env(safe-area-inset-bottom)));align-items:center;gap:var(--space-2);padding:0 var(--space-4);z-index:95;pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-2);background:var(--surface-raised);max-width:420px;-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);color:var(--ink);font-size:var(--text-sm);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:toast-in .28s var(--ease) both;pointer-events:auto;padding:11px 16px;font-weight:600;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)scale(.97)}}.skeleton{background:linear-gradient(90deg, var(--surface-alt) 25%, var(--border-soft) 37%, var(--surface-alt) 63%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.4s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100%}to{background-position:0}}.stat-tile{padding:var(--space-3) var(--space-4);background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-soft);border-radius:var(--radius-md);flex-direction:column;gap:2px;display:flex}.stat-tile .stat-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:750;font-size:var(--text-xl);letter-spacing:-.02em;line-height:1.1}.stat-tile .stat-label{font-size:var(--text-xs);color:var(--muted);font-weight:650}.error-state{border:1px solid var(--border-soft);border-left:3px solid var(--critical);background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-md);color:var(--ink-soft);font-size:var(--text-sm);padding:14px 16px}.hero{margin-bottom:var(--space-5)}.hero-row{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.sub{font-size:var(--text-sm);color:var(--muted);margin:2px 0 0}.update-toast.svelte-edu13u{top:calc(12px + env(safe-area-inset-top));color:#e8eaed;border-radius:var(--radius-md);width:calc(100% - 32px);max-width:360px;font-size:var(--text-sm);z-index:1000;animation:fade-up var(--duration) var(--ease) both;background:#14181f;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:13px 17px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00000052}.update-toast.svelte-edu13u span:where(.svelte-edu13u){text-align:center;flex:100%}
