:root{--paper:#f4efe6;--paper-2:#ebe4d6;--card:#fbf7ef;--ink:#1b1a17;--ink-2:#3d3a33;--ink-3:#6b665c;--rule:#221f19;--soft:#a8a095;--ash:#d8d1c1;--flint:#f05b1a;--flint-warm:#d94b10;--flint-glow:#f05b1a47;--flint-glow-sm:#f05b1a24;--flint-subtle:#f05b1a12;--ember:#e8b340;--brand:var(--flint);--brand-light:#f27240;--brand-dim:var(--flint-warm);--brand-glow:var(--flint-glow);--brand-glow-sm:var(--flint-glow-sm);--brand-subtle:var(--flint-subtle);--bg:var(--paper);--s1:var(--card);--s2:var(--paper-2);--s3:#e4dcd0;--s4:var(--ash);--glass:#fbf7ef99;--bd:#221f192e;--bd-subtle:#221f1917;--bd-strong:#221f1952;--bd-focus:var(--flint);--t1:var(--ink);--t2:var(--ink-3);--t3:var(--soft);--done:var(--flint);--done-dim:var(--flint-warm);--done-bg:#f05b1a12;--done-bd:#f05b1a4d;--done-glow:#f05b1a38;--skip:var(--soft);--skip-bg:#a8a0951f;--skip-bd:#a8a0954d;--danger:#b54232;--danger-bg:#b5423214;--danger-bd:#b5423240;--streak:var(--flint);--sp1:4px;--sp2:8px;--sp3:12px;--sp4:16px;--sp5:20px;--sp6:24px;--sp8:32px;--sp10:40px;--sp12:48px;--sp16:64px;--sp20:80px;--sp24:96px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:28px;--r-pill:9999px;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", system-ui, "Segoe UI", Roboto, sans-serif;--font-hand:"Kalam", "Caveat", cursive;--font-hand-alt:"Kalam", cursive;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, "Cascadia Mono", monospace;--fs-xs:11px;--fs-sm:13px;--fs-base:15px;--fs-md:17px;--fs-lg:22px;--fs-xl:28px;--fs-2xl:34px;--fs-3xl:44px;--fw-regular:400;--fw-medium:500;--fw-semi:600;--fw-bold:700;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1);--dur-fast:.14s;--dur-base:.22s;--dur-slow:.38s;--dur-enter:.48s;--shadow-sm:0 1px 3px #221f190f;--shadow:0 1px 0 #0000000a, 0 12px 28px #3c2d1414;--shadow-lg:0 4px 16px #221f191f;--shadow-xl:0 12px 40px #221f192e;--z-base:0;--z-raised:10;--z-sticky:50;--z-overlay:90;--z-modal:100;--z-toast:200;--content-max:680px;--shell-max:1240px;--rail-w:260px;--insights-w:360px;--bp-sm:480px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);color:var(--ink);accent-color:var(--flint);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--paper);background-image:radial-gradient(#1e140a09 1px,#0000 1.3px),radial-gradient(#78502805 1px,#0000 1.5px);background-position:0 0,1px 2px;background-size:4px 4px,7px 7px;background-attachment:fixed;min-height:100dvh;font-size:16px;line-height:1.5}#root{flex-direction:column;min-height:100dvh;display:flex}button{font:inherit;cursor:pointer;color:inherit;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:none}input,select,textarea{font:inherit;color:inherit;touch-action:manipulation;background:0 0;border:none;outline:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}*{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--flint);outline-offset:2px;border-radius:2px}::-webkit-scrollbar{width:3px;height:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--ash);border-radius:var(--r-pill)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes sheetUp{0%{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{transform:scale(1)}45%{transform:scale(1.26)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 var(--flint-glow)}70%{box-shadow:0 0 0 8px #f05b1a00}to{box-shadow:0 0 #f05b1a00}}@keyframes float{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.02)}}@keyframes flicker{0%,to{opacity:1;transform:translateY(0)scale(1)rotate(-2deg)}50%{opacity:.85;transform:translateY(-2px)scale(1.08)rotate(3deg)}}@keyframes done-burst{0%{box-shadow:0 0 0 0 var(--flint-glow);transform:scale(1)}40%{transform:scale(1.22);box-shadow:0 0 0 8px #f05b1a00}to{transform:scale(1);box-shadow:0 0 #f05b1a00}}@keyframes streak-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes streak-pop{0%{opacity:0;transform:scale(.4)translateY(4px)}65%{opacity:1;transform:scale(1.18)translateY(-1px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes burst-particle{0%{opacity:1;transform:translate(-50%,-50%)translate(0)scale(1)}20%{opacity:1}to{opacity:0;transform:translate(-50%, -50%) translate(var(--bx,0px), var(--by,0px)) scale(.2)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(18px)scale(.92)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-10px)scale(.95)}}@keyframes ring-celebrate{0%{filter:none;transform:scale(1)}35%{filter:drop-shadow(0 0 10px var(--flint-glow));transform:scale(1.1)}65%{filter:drop-shadow(0 0 6px var(--flint-glow-sm));transform:scale(1.04)}to{filter:none;transform:scale(1)}}@keyframes all-done-glow{0%{box-shadow:none}40%{box-shadow:0 0 0 3px var(--flint-glow-sm)}to{box-shadow:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
