:root{--color-accent: #f5a623;--color-accent-dim: #c47a0f;--color-accent-border: rgba(245, 166, 35, .3);--color-on-accent: #12100f;--color-secondary: #7b6fe8;--color-secondary-dim: #5a4fc4;--color-secondary-subtle: rgba(123, 111, 232, .12);--color-success: #3ddc97;--color-success-subtle: rgba(61, 220, 151, .12);--color-overtime: #e8623a;--color-overtime-subtle: rgba(232, 98, 58, .12);--color-danger: #cc4444;--color-danger-subtle: rgba(204, 68, 68, .12);--color-on-danger: #ffffff;--color-timer-countdown: #f5a623;--color-timer-overtime: #e8623a;--color-timer-paused: #5a5550;--color-project-amber: #f5a623;--color-project-violet: #7b6fe8;--color-project-teal: #2ec4b6;--color-project-rose: #e8623a;--color-project-sage: #3ddc97;--color-project-sky: #4a9ee8;--color-project-sand: #c4a882;--color-project-lavender: #b47fe8;--color-selection: rgba(245, 166, 35, .3);--color-focus-ring: var(--color-accent);--focus-ring-width: 3px;--focus-ring-offset: 2px;--focus-ring: 0 0 0 var(--focus-ring-offset) var(--color-bg-base), 0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-width)) var(--color-focus-ring);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--touch-min: 44px;--touch-primary: 64px;--touch-fab: 56px;--bottom-nav-height: 56px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--layout-max-width: 480px;--layout-content-max: 640px;--layout-gutter: var(--space-4);--header-height: 56px;--tabbar-height: 64px;--z-base: 0;--z-raised: 10;--z-sticky: 100;--z-overlay: 1000;--z-sheet: 1100;--z-toast: 1200;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.375rem;--font-size-xl: 1.75rem;--font-size-2xl: 2.25rem;--font-size-timer: 4.5rem;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.1;--line-height-snug: 1.3;--line-height-normal: 1.5;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .04em;--ease-linear: cubic-bezier(0, 0, 1, 1);--ease-out-standard: cubic-bezier(.25, .46, .45, .94);--ease-out-decelerate: cubic-bezier(0, 0, .2, 1);--ease-in-accelerate: cubic-bezier(.4, 0, 1, 1);--ease-spring-settle: cubic-bezier(.34, 1.56, .64, 1);--ease-sharp: cubic-bezier(.4, 0, .6, 1);--duration-instant: 0ms;--duration-fast: .12s;--duration-quick: .16s;--duration-snappy: .2s;--duration-standard: .24s;--duration-relaxed: .28s;--duration-slow: .3s;--duration-deliberate: .4s;--duration-celebrate: .5s;--duration-expansive: .6s;--duration-pulse: .7s;--duration-ring: .8s;--duration-reveal: 1.2s;--duration-ambient: 2s;--duration-overtime-shift: 3s;--color-bg-base: #12100f;--color-bg-surface: #1e1b19;--color-bg-raised: #2a2623;--color-bg-overlay: #332f2c;--color-bg-scrim: rgba(18, 16, 15, .85);--color-text-primary: #f0ede8;--color-text-secondary: #9e9790;--color-text-disabled: #5a5550;--color-text-inverse: #12100f;--color-border-subtle: rgba(240, 237, 232, .08);--color-border-default: rgba(240, 237, 232, .14);--color-border-strong: rgba(240, 237, 232, .24);--color-accent-subtle: rgba(245, 166, 35, .12);--color-timer-stopwatch: #f0ede8;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .35), 0 2px 6px rgba(0, 0, 0, .25);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .3);--shadow-fab: 0 4px 16px rgba(245, 166, 35, .3), 0 2px 8px rgba(0, 0, 0, .4)}@media(prefers-color-scheme:light){:root{--color-bg-base: #f7f4f0;--color-bg-surface: #efebe6;--color-bg-raised: #e6e1db;--color-bg-overlay: #ddd8d1;--color-bg-scrim: rgba(120, 112, 104, .42);--color-text-primary: #1a1714;--color-text-secondary: #6b6460;--color-text-disabled: #a89f99;--color-text-inverse: #f7f4f0;--color-border-subtle: rgba(26, 23, 20, .08);--color-border-default: rgba(26, 23, 20, .14);--color-border-strong: rgba(26, 23, 20, .22);--color-accent-subtle: rgba(245, 166, 35, .16);--color-timer-stopwatch: #1a1714;--shadow-sm: 0 1px 3px rgba(60, 50, 40, .1), 0 1px 2px rgba(60, 50, 40, .08);--shadow-md: 0 4px 12px rgba(60, 50, 40, .12), 0 2px 6px rgba(60, 50, 40, .08);--shadow-lg: 0 12px 32px rgba(60, 50, 40, .16), 0 4px 12px rgba(60, 50, 40, .1);--shadow-fab: 0 4px 16px rgba(245, 166, 35, .28), 0 2px 8px rgba(60, 50, 40, .18)}}[data-theme=light]{--color-bg-base: #f7f4f0;--color-bg-surface: #efebe6;--color-bg-raised: #e6e1db;--color-bg-overlay: #ddd8d1;--color-bg-scrim: rgba(120, 112, 104, .42);--color-text-primary: #1a1714;--color-text-secondary: #6b6460;--color-text-disabled: #a89f99;--color-text-inverse: #f7f4f0;--color-border-subtle: rgba(26, 23, 20, .08);--color-border-default: rgba(26, 23, 20, .14);--color-border-strong: rgba(26, 23, 20, .22);--color-accent-subtle: rgba(245, 166, 35, .16);--color-timer-stopwatch: #1a1714;--shadow-sm: 0 1px 3px rgba(60, 50, 40, .1), 0 1px 2px rgba(60, 50, 40, .08);--shadow-md: 0 4px 12px rgba(60, 50, 40, .12), 0 2px 6px rgba(60, 50, 40, .08);--shadow-lg: 0 12px 32px rgba(60, 50, 40, .16), 0 4px 12px rgba(60, 50, 40, .1);--shadow-fab: 0 4px 16px rgba(245, 166, 35, .28), 0 2px 8px rgba(60, 50, 40, .18)}[data-theme=dark]{--color-bg-base: #12100f;--color-bg-surface: #1e1b19;--color-bg-raised: #2a2623;--color-bg-overlay: #332f2c;--color-bg-scrim: rgba(18, 16, 15, .85);--color-text-primary: #f0ede8;--color-text-secondary: #9e9790;--color-text-disabled: #5a5550;--color-text-inverse: #12100f;--color-border-subtle: rgba(240, 237, 232, .08);--color-border-default: rgba(240, 237, 232, .14);--color-border-strong: rgba(240, 237, 232, .24);--color-accent-subtle: rgba(245, 166, 35, .12);--color-timer-stopwatch: #f0ede8;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .35), 0 2px 6px rgba(0, 0, 0, .25);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .3);--shadow-fab: 0 4px 16px rgba(245, 166, 35, .3), 0 2px 8px rgba(0, 0, 0, .4)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slide-up-enter{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-up-exit{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}@keyframes slide-down-exit{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes slide-right-exit{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes card-expand{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}@keyframes sheet-enter{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-exit{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes panel-enter{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes panel-exit{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes task-shelve{0%{transform:translate(0);opacity:1}to{transform:translate(-40px);opacity:0}}@keyframes task-unshelve-indicator{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes task-enter-new{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes task-skip{0%{transform:translate(0)}40%{transform:translate(24px);opacity:.6}to{transform:translate(0);opacity:1}}@keyframes leg-draw{0%{stroke-dashoffset:212.25}to{stroke-dashoffset:0}}@keyframes dot-pop{0%{opacity:0;transform:scale(.2)}65%{opacity:1;transform:scale(1.18)}to{opacity:1;transform:scale(1)}}@keyframes arc-draw{0%{stroke-dashoffset:942.48}to{stroke-dashoffset:0}}@keyframes settle{0%{transform:scale(1)}45%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes idle-arc{0%,to{opacity:1}50%{opacity:.55}}@keyframes idle-dot{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes green-arc-pulse{0%{transform:scale(1);opacity:1}to{transform:scale(1.15);opacity:0}}@keyframes project-fill-in{0%{opacity:0;transform:scale(.7)}50%{opacity:.22;transform:scale(1)}75%{opacity:.22;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}@keyframes project-pulse{0%{transform:scale(1)}30%{transform:scale(1.12)}60%{transform:scale(.96)}80%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes checkmark-draw{0%{stroke-dashoffset:100;opacity:0}20%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes ring-burst-standard{0%{transform:scale(.3);opacity:.9}60%{transform:scale(1);opacity:.6}to{transform:scale(1.4);opacity:0}}@keyframes ring-burst-enhanced{0%{transform:scale(.2);opacity:1}50%{transform:scale(.9);opacity:.8}to{transform:scale(1.6);opacity:0}}@keyframes ring-burst-enhanced-2{0%{transform:scale(.2);opacity:.7}to{transform:scale(1.8);opacity:0}}@keyframes completion-text-appear{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes stats-flash{0%{transform:translateY(8px);opacity:0}20%{transform:translateY(0);opacity:1}to{transform:translateY(0);opacity:1}}@keyframes nice-work-appear{0%{transform:scale(.8) translateY(4px);opacity:0}60%{transform:scale(1.04) translateY(0);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}@keyframes particle-scatter{0%{transform:translate(0) scale(1);opacity:1}to{transform:var(--pv) scale(0);opacity:0}}@keyframes session-stat-reveal{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes star-appear{0%{transform:scale(0) rotate(-30deg);opacity:0}60%{transform:scale(1.2) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes project-ring-expand{0%{transform:scale(.2);opacity:.8}to{transform:scale(1.6);opacity:0}}@keyframes overtime-pulse{0%{opacity:1}50%{opacity:.75}to{opacity:1}}@keyframes countdown-warning{0%,to{opacity:1}50%{opacity:.6}}@keyframes timer-zero-flash{0%{opacity:1}15%{opacity:.1}30%{opacity:1}45%{opacity:.3}60%{opacity:1}to{opacity:1}}@keyframes progress-deplete{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes fab-appear{0%{transform:scale(0) rotate(-30deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes fab-press{0%{transform:scale(1)}40%{transform:scale(.92)}to{transform:scale(1)}}@keyframes fab-morph-brain-dump{0%{transform:scale(1) rotate(0)}50%{transform:scale(.85) rotate(-90deg)}to{transform:scale(1) rotate(0)}}@keyframes tier-pills-appear{0%{transform:translateY(4px) scaleX(.9);opacity:0}to{transform:translateY(0) scaleX(1);opacity:1}}@keyframes toast-enter{0%{transform:translate(-50%,8px);opacity:0}to{transform:translate(-50%);opacity:1}}@keyframes toast-exit{0%{transform:translate(-50%);opacity:1}to{transform:translate(-50%,8px);opacity:0}}@keyframes biometric-pulse{0%{box-shadow:0 0 #f5a62366}70%{box-shadow:0 0 0 12px #f5a62300}to{box-shadow:0 0 #f5a62300}}@keyframes pin-dot-fill{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes pin-error-shake{0%{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(6px)}75%{transform:translate(-3px)}90%{transform:translate(3px)}to{transform:translate(0)}}.anim-fade-in{animation:fade-in var(--duration-standard) var(--ease-out-standard) both}.anim-fade-out{animation:fade-out var(--duration-standard) var(--ease-in-accelerate) both}.anim-slide-up-enter{animation:slide-up-enter var(--duration-standard) var(--ease-out-decelerate) both}.anim-slide-up-exit{animation:slide-up-exit var(--duration-standard) var(--ease-in-accelerate) both}.anim-slide-down-exit{animation:slide-down-exit var(--duration-standard) var(--ease-in-accelerate) both}.anim-slide-right-exit{animation:slide-right-exit var(--duration-standard) var(--ease-in-accelerate) both}.anim-card-expand{animation:card-expand var(--duration-standard) var(--ease-spring-settle) both}.anim-sheet-enter{animation:sheet-enter var(--duration-slow) var(--ease-out-decelerate) both}.anim-sheet-exit{animation:sheet-exit var(--duration-slow) var(--ease-in-accelerate) both}.anim-panel-enter{animation:panel-enter var(--duration-slow) var(--ease-out-decelerate) both}.anim-panel-exit{animation:panel-exit var(--duration-slow) var(--ease-in-accelerate) both}.anim-task-shelve{animation:task-shelve var(--duration-slow) var(--ease-in-accelerate) both}.anim-task-unshelve-indicator{animation:task-unshelve-indicator var(--duration-standard) var(--ease-out-decelerate) both}.anim-task-enter-new{animation:task-enter-new var(--duration-slow) var(--ease-out-decelerate) both}.anim-task-skip{animation:task-skip var(--duration-deliberate) var(--ease-out-standard) both}.anim-leg-draw{animation:leg-draw var(--duration-snappy) var(--ease-out-standard) both}.anim-dot-pop{animation:dot-pop var(--duration-snappy) var(--ease-spring-settle) both}.anim-arc-draw{animation:arc-draw var(--duration-deliberate) var(--ease-out-standard) both}.anim-settle{animation:settle var(--duration-snappy) var(--ease-sharp) both}.anim-idle-arc{animation:idle-arc var(--duration-ambient) var(--ease-sharp) infinite}.anim-idle-dot{animation:idle-dot var(--duration-ambient) var(--ease-sharp) infinite}.anim-green-arc-pulse{animation:green-arc-pulse var(--duration-pulse) var(--ease-out-decelerate) both;animation-iteration-count:1}.anim-project-fill-in{animation:project-fill-in var(--duration-reveal) var(--ease-out-standard) both}.anim-project-pulse{animation:project-pulse var(--duration-reveal) var(--ease-spring-settle) both}.anim-checkmark-draw{animation:checkmark-draw var(--duration-relaxed) var(--ease-out-standard) both}.anim-ring-burst-standard{animation:ring-burst-standard var(--duration-deliberate) var(--ease-out-decelerate) both}.anim-ring-burst-enhanced{animation:ring-burst-enhanced var(--duration-deliberate) var(--ease-out-decelerate) both}.anim-ring-burst-enhanced-2{animation:ring-burst-enhanced-2 var(--duration-deliberate) var(--ease-out-decelerate) both}.anim-completion-text-appear{animation:completion-text-appear var(--duration-snappy) var(--ease-out-decelerate) both}.anim-stats-flash{animation:stats-flash var(--duration-reveal) var(--ease-out-standard) both}.anim-nice-work-appear{animation:nice-work-appear var(--duration-slow) var(--ease-spring-settle) both}.anim-particle-scatter{animation:particle-scatter var(--duration-expansive) var(--ease-out-decelerate) both}.anim-session-stat-reveal{animation:session-stat-reveal var(--duration-standard) var(--ease-out-decelerate) both}.anim-star-appear{animation:star-appear var(--duration-celebrate) var(--ease-spring-settle) both}.anim-project-ring-expand{animation:project-ring-expand var(--duration-ring) var(--ease-out-decelerate) both}.anim-overtime-pulse{animation:overtime-pulse var(--duration-ambient) var(--ease-sharp) infinite}.anim-countdown-warning{animation:countdown-warning var(--duration-pulse) var(--ease-sharp) infinite}.anim-timer-zero-flash{animation:timer-zero-flash var(--duration-pulse) var(--ease-sharp) both}.anim-progress-deplete{transform-origin:left center;animation:progress-deplete var(--progress-duration, var(--duration-ambient)) var(--ease-linear) forwards}.anim-fab-appear{animation:fab-appear var(--duration-standard) var(--ease-spring-settle) both}.anim-fab-press{animation:fab-press var(--duration-fast) var(--ease-sharp) both}.anim-fab-morph-brain-dump{animation:fab-morph-brain-dump var(--duration-slow) var(--ease-spring-settle) both}.anim-tier-pills-appear{animation:tier-pills-appear var(--duration-quick) var(--ease-out-decelerate) both}.anim-toast-enter{animation:toast-enter var(--duration-standard) var(--ease-out-decelerate) both}.anim-toast-exit{animation:toast-exit var(--duration-standard) var(--ease-in-accelerate) both}.anim-biometric-pulse{animation:biometric-pulse var(--duration-ambient) var(--ease-sharp) infinite}.anim-pin-dot-fill{animation:pin-dot-fill var(--duration-fast) var(--ease-spring-settle) both}.anim-pin-error-shake{animation:pin-error-shake var(--duration-deliberate) var(--ease-sharp) both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[data-reduce-motion=true] *,[data-reduce-motion=true] *:before,[data-reduce-motion=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.timer-ring-stack{position:relative;flex:none;width:260px;height:260px;display:flex;align-items:center;justify-content:center}@keyframes timer-ring-pulse{0%,to{opacity:1}50%{opacity:.7}}.now-paused-dot{width:8px;height:8px;flex:none;border-radius:var(--radius-full);background:var(--color-accent);animation:timer-ring-pulse var(--duration-ambient) ease-in-out infinite}.timer-ring-pulse{animation:timer-ring-pulse var(--duration-overtime-shift) ease-in-out infinite}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible,[role=button]:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}.touch-target{min-width:var(--touch-min);min-height:var(--touch-min)}.pressable{transition:transform var(--duration-fast) var(--ease-sharp)}.pressable:active{transform:scale(.96)}.menu-row{transition:background var(--duration-fast) ease}.menu-row:active{background:var(--color-bg-raised)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--touch-min);min-height:var(--touch-min);background:none;border:none;color:var(--color-text-secondary);transition:transform var(--duration-fast) var(--ease-sharp),color var(--duration-fast) var(--ease-out-standard)}.icon-btn:active{transform:scale(.92);color:var(--color-text-primary)}.btn-primary,.btn-secondary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-6);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);line-height:1;transition:transform var(--duration-fast) var(--ease-sharp),background var(--duration-fast) var(--ease-out-standard),color var(--duration-fast) var(--ease-out-standard)}.btn-primary{height:var(--touch-primary);background:var(--color-accent);color:var(--color-on-accent)}.btn-primary:active{background:var(--color-accent-dim);transform:scale(.98)}.btn-secondary{height:var(--touch-primary);background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-border-default)}.btn-secondary:active{background:var(--color-bg-overlay);transform:scale(.98)}.btn-ghost{height:var(--touch-min);background:none;color:var(--color-text-secondary)}.btn-ghost:active{color:var(--color-text-primary)}.btn-primary:disabled,.btn-secondary:disabled,.btn-ghost:disabled{opacity:.4;pointer-events:none}.fab{position:fixed;right:calc(var(--space-5) + var(--safe-right));bottom:calc(var(--bottom-nav-height) + var(--safe-bottom) + var(--space-4));display:flex;align-items:center;justify-content:center;width:var(--touch-fab);height:var(--touch-fab);border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--shadow-fab);z-index:var(--z-sticky);transition:transform var(--duration-fast) var(--ease-sharp)}.fab:active{transform:scale(.92)}.fab-menu-overlay{position:fixed;inset:0;z-index:var(--z-sticky);background:transparent}.fab-menu{position:fixed;right:calc(var(--space-5) + var(--safe-right));bottom:calc(var(--bottom-nav-height) + var(--safe-bottom) + var(--space-4) + var(--touch-fab) + var(--space-3));display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);z-index:var(--z-sticky)}.fab-menu-item{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);border-radius:var(--radius-full);background:var(--color-bg-raised);border:1px solid var(--color-border-default);color:var(--color-text-primary);font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:.03em;box-shadow:var(--shadow-md)}.fab-menu-item:active{transform:scale(.97)}.braindump-hint{position:fixed;right:calc(var(--space-5) + var(--safe-right));bottom:calc(var(--bottom-nav-height) + var(--safe-bottom) + var(--space-4) + var(--touch-fab) + var(--space-3));max-width:220px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-overlay);border:1px solid var(--color-border-default);color:var(--color-text-secondary);font-size:12px;line-height:1.5;letter-spacing:.03em;box-shadow:var(--shadow-md);z-index:var(--z-sticky)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;height:calc(var(--bottom-nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);display:flex;align-items:stretch;background:var(--color-bg-surface);border-top:1px solid var(--color-border-subtle);z-index:var(--z-sticky)}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:var(--touch-min);background:none;border:none;color:var(--color-text-secondary);text-decoration:none;transition:color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-sharp)}.bottom-nav-item:active{transform:scale(.94)}.bottom-nav-item.is-active{color:var(--color-accent)}.bottom-nav-item span{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:.04em}.sheet-overlay{position:fixed;inset:0;background:var(--color-bg-scrim);z-index:var(--z-overlay)}.sheet{position:fixed;left:0;right:0;bottom:0;max-width:var(--layout-max-width);margin:0 auto;padding:var(--space-6) var(--space-6) calc(var(--space-6) + var(--safe-bottom));background:var(--color-bg-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-lg);z-index:var(--z-sheet)}.sheet-handle{width:36px;height:4px;flex:none;margin:0 auto var(--space-4);border-radius:var(--radius-full);background:var(--color-border-strong)}.toast{position:fixed;left:50%;bottom:calc(var(--space-12) + var(--safe-bottom));transform:translate(-50%);display:inline-flex;align-items:center;gap:var(--space-3);max-width:calc(100% - var(--space-8));padding:var(--space-3) var(--space-5);background:var(--color-bg-overlay);color:var(--color-text-primary);border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);box-shadow:var(--shadow-md);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-wide);z-index:var(--z-toast)}.note-textarea::placeholder{color:var(--color-text-secondary)}.input-field{width:100%;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);transition:border-color var(--duration-fast) var(--ease-out-standard)}.input-field::placeholder{color:var(--color-text-disabled)}.input-field:focus{outline:none;border-color:var(--color-accent-border)}.input-field:focus-visible{border-color:var(--color-accent)}.tier-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-6) 0 var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-disabled)}.tier-divider:after{content:"";flex:1;height:1px;background:var(--color-border-subtle)}@media(prefers-reduced-motion:reduce){.pressable:active,.icon-btn:active,.bottom-nav-item:active,.fab:active,.fab-menu-item:active,.btn-primary:active,.btn-secondary:active{transform:none}}[data-reduce-motion=true] .pressable:active,[data-reduce-motion=true] .icon-btn:active,[data-reduce-motion=true] .bottom-nav-item:active,[data-reduce-motion=true] .fab:active,[data-reduce-motion=true] .fab-menu-item:active,[data-reduce-motion=true] .btn-primary:active,[data-reduce-motion=true] .btn-secondary:active{transform:none}.ahora-mark .leg-left,.ahora-mark .leg-right{stroke-dasharray:212.25 212.25;stroke-dashoffset:0}.ahora-mark .main-arc{stroke-dasharray:942.48 1130.97;stroke-dashoffset:0;opacity:1}.ahora-mark .fill-circle{opacity:0}.ahora-mark:not(.ahora-completing) .completion-arc{stroke-dasharray:942.48 1130.97;stroke-dashoffset:942.48;opacity:0}.ahora-mark:not(.ahora-completing) .completion-pulse-arc{opacity:0}.ahora-entering .leg-left,.ahora-entering .leg-right{stroke-dasharray:212.25 212.25;stroke-dashoffset:212.25;animation:leg-draw .21s var(--ease-out-standard) both;animation-delay:0ms}.ahora-entering .apex-dot{opacity:0;transform-origin:250px 150px;animation:dot-pop .22s var(--ease-spring-settle) both;animation-delay:.14s}.ahora-entering .crossbar-dot{opacity:0;transform-origin:250px 270px;animation:dot-pop .22s var(--ease-spring-settle) both;animation-delay:.16s}.ahora-entering .main-arc{stroke-dasharray:942.48 1130.97;stroke-dashoffset:942.48;animation:arc-draw .42s var(--ease-out-standard) both;animation-delay:195ms}.ahora-entering .mark-group{animation:settle .2s var(--ease-sharp) both;animation-delay:.68s}.ahora-idle .main-arc{stroke-dasharray:942.48 1130.97;stroke-dashoffset:0;animation:idle-arc 2.4s var(--ease-sharp) infinite}.ahora-idle .crossbar-dot{transform-origin:250px 270px;animation:idle-dot 2.4s var(--ease-sharp) infinite}.ahora-completing .leg-left,.ahora-completing .leg-right{stroke-dasharray:212.25 212.25;stroke-dashoffset:212.25;animation:leg-draw .21s var(--ease-out-standard) both;animation-delay:0ms}.ahora-completing .apex-dot{opacity:0;transform-origin:250px 150px;animation:dot-pop .22s var(--ease-spring-settle) both;animation-delay:.14s}.ahora-completing .crossbar-dot{opacity:0;transform-origin:250px 270px;animation:dot-pop .22s var(--ease-spring-settle) both;animation-delay:.16s}.ahora-completing .completion-arc{stroke-dasharray:942.48 1130.97;stroke-dashoffset:942.48;animation:arc-draw .42s var(--ease-out-standard) both;animation-delay:195ms}.ahora-completing .main-arc{opacity:0!important;animation:none!important;stroke-dasharray:942.48 1130.97;stroke-dashoffset:0}.ahora-completing .completion-pulse-arc{stroke-dasharray:942.48 1130.97;stroke-dashoffset:0;opacity:1;transform-origin:250px 250px;animation:green-arc-pulse .7s var(--ease-out-standard) both;animation-delay:615ms;animation-iteration-count:1}.ahora-project .fill-circle{animation:project-fill-in 1.2s var(--ease-out-standard) both}.ahora-project .mark-group{animation:project-pulse 1s var(--ease-spring-settle) both;animation-delay:.15s}@media(prefers-reduced-motion:reduce){.ahora-entering .leg-left,.ahora-entering .leg-right,.ahora-entering .apex-dot,.ahora-entering .crossbar-dot,.ahora-entering .main-arc,.ahora-entering .mark-group,.ahora-idle .main-arc,.ahora-idle .crossbar-dot,.ahora-completing .completion-arc,.ahora-completing .completion-pulse-arc,.ahora-project .fill-circle,.ahora-project .mark-group{animation:none!important;opacity:1!important;stroke-dashoffset:0!important}}[data-reduce-motion=true] .ahora-entering .leg-left,[data-reduce-motion=true] .ahora-entering .leg-right,[data-reduce-motion=true] .ahora-entering .apex-dot,[data-reduce-motion=true] .ahora-entering .crossbar-dot,[data-reduce-motion=true] .ahora-entering .main-arc,[data-reduce-motion=true] .ahora-entering .mark-group,[data-reduce-motion=true] .ahora-idle .main-arc,[data-reduce-motion=true] .ahora-idle .crossbar-dot,[data-reduce-motion=true] .ahora-completing .completion-arc,[data-reduce-motion=true] .ahora-completing .completion-pulse-arc,[data-reduce-motion=true] .ahora-project .fill-circle,[data-reduce-motion=true] .ahora-project .mark-group{animation:none!important;opacity:1!important;stroke-dashoffset:0!important}@font-face{font-family:OpenDyslexic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/opendyslexic-400.woff2) format("woff2")}@font-face{font-family:OpenDyslexic;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/opendyslexic-700.woff2) format("woff2")}[data-font=dyslexic]{--font-body: "OpenDyslexic", "DM Sans", system-ui, sans-serif;--font-display: "OpenDyslexic", "Space Grotesk", system-ui, sans-serif}[data-spacing=increased]{letter-spacing:.06em;word-spacing:.16em;line-height:1.6}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100vh;background:var(--color-bg-base);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left)}@supports (min-height: 100dvh){body{min-height:100dvh}}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer;background:none;border:none;-webkit-tap-highlight-color:transparent}::selection{background:var(--color-selection)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}[data-reduce-motion=true]{scroll-behavior:auto}
