@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}[data-dc-frame]{line-height:normal}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:block;src:url(/fonts/InterVariable.ttf)format("truetype")}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:block;src:url(/fonts/InterVariable-Italic.ttf)format("truetype")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--coin-gold:42 85% 52%;--coin-gold-deep:38 80% 40%;--positive:152 55% 34%;--positive-soft:152 55% 90%;--destructive:0 84% 60%;--destructive-ink:0 72% 42%;--tier-bronze:28 55% 45%;--tier-silver:220 9% 55%;--tier-gold:42 78% 48%;--tier-platinum:200 18% 40%;--ease:cubic-bezier(.16, 1, .3, 1);--font-heading:Inter, sans-serif;--font-body:Inter, sans-serif;--heading-weight:800;--heading-tracking:-.01em;--r-sm:10px;--r-md:14px;--r-lg:16px;--r-xl:20px;--r-card:24px;--r-pill:9999px;--border-w:1.5px;--target-min:44px;--text-display:clamp(1.75rem, 4vw, 2.75rem);--text-stat:clamp(2rem, 5vw, 2.5rem);--text-h1:clamp(1.5rem, 4vw, 2rem);--text-h2:clamp(1.25rem, 3vw, 1.5rem);--text-body:1rem;--text-caption:.8125rem;--text-eyebrow:.75rem;--primary:20 88% 58%;--primary-deep:20 88% 46%;--primary-ink:20 88% 38%;--primary-soft:20 88% 58% / .12;--primary-glow:20 92% 70%;--primary-fill:20 88% 58%;--primary-fill-deep:20 88% 46%;--on-primary:0 0% 100%;--surface:30 30% 97%;--surface-elev:0 0% 100%;--surface-sunken:30 24% 93%;--ink:224 30% 12%;--ink-soft:224 12% 40%;--ink-faint:224 12% 40%;--border:224 15% 88%}[data-template=ledger][data-mode=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface:30 30% 97%;--surface-elev:0 0% 100%;--surface-sunken:30 24% 93%;--ink:224 30% 12%;--ink-soft:224 12% 40%;--ink-faint:224 12% 40%;--border:224 15% 88%}[data-template=ledger][data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--primary-ink:20 88% 58%;--destructive-ink:0 84% 70%;--surface:224 30% 11%;--surface-elev:224 26% 14%;--surface-sunken:224 32% 9%;--ink:0 0% 100%;--ink-soft:220 14% 62%;--ink-faint:220 14% 45%;--border:224 20% 22%}[data-template=summit][data-mode=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface:36 44% 98%;--surface-elev:0 0% 100%;--surface-sunken:30 30% 92%;--ink:24 30% 16%;--ink-soft:28 20% 45%;--ink-faint:28 20% 40%;--border:30 25% 88%}[data-template=summit][data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--primary-ink:20 88% 58%;--destructive-ink:0 84% 70%;--surface:24 20% 12%;--surface-elev:24 18% 16%;--surface-sunken:24 24% 9%;--ink:36 40% 96%;--ink-soft:30 12% 65%;--ink-faint:30 10% 48%;--border:24 14% 24%}*{box-sizing:border-box}html{background:hsl(var(--surface));min-height:100%}body{background:hsl(var(--surface));min-height:100%;color:hsl(var(--ink));font-family:var(--font-body);font-size:var(--text-body);margin:0;line-height:1.5}button,a,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid hsl(var(--primary));outline-offset:3px}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{font-family:var(--font-heading);font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking);text-wrap:balance;line-height:1.12}p{text-wrap:pretty}svg{display:block}.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}.skip-link{z-index:100;min-height:var(--target-min);border-radius:var(--r-pill);background:hsl(var(--primary-fill));color:hsl(var(--on-primary));transition:transform .18s var(--ease);align-items:center;padding:0 16px;font-weight:700;display:flex;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-frame{min-height:100dvh;padding-bottom:104px}.app-content{width:min(100%,752px);margin:0 auto;padding:16px 16px 24px}.home-stack{gap:16px;display:grid}.home-stack>*{animation:card-enter .4s var(--ease) both}.home-stack>:nth-child(2){animation-delay:40ms}.home-stack>:nth-child(3){animation-delay:80ms}.home-stack>:nth-child(4){animation-delay:.12s}.home-stack>:nth-child(5){animation-delay:.16s}@keyframes card-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.welcome{justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 4px 4px;display:flex}.welcome h1{font-size:var(--text-h1);margin:0 0 12px}.eyebrow{color:hsl(var(--ink-faint));font-size:var(--text-eyebrow);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-weight:700}.tier-chip,.earned-chip,.live-chip{border-radius:var(--r-pill);min-height:32px;font-size:var(--text-caption);align-items:center;gap:6px;padding:5px 10px;font-weight:800;display:inline-flex}.tier-chip{background:hsl(var(--tier-gold) / .16);color:hsl(var(--tier-gold))}.tier-chip svg,.earned-chip svg{width:16px;height:16px}.balance-shortcut{min-width:var(--target-min);min-height:var(--target-min);border:var(--border-w) solid hsl(var(--border));border-radius:var(--r-pill);background:hsl(var(--surface-elev));color:hsl(var(--ink));box-shadow:0 1px 3px hsl(var(--ink) / .06);transition:border-color .18s var(--ease), box-shadow .18s var(--ease);justify-content:center;align-items:center;padding:0 12px;text-decoration:none;display:flex}.balance-shortcut:hover{border-color:hsl(var(--primary) / .3);box-shadow:0 4px 20px hsl(var(--primary-glow) / .14)}.ds-card{border:var(--border-w) solid hsl(var(--border));border-radius:var(--r-card);background:hsl(var(--surface-elev));box-shadow:0 1px 3px hsl(var(--ink) / .06);padding:20px}.ds-card-interactive{transition:border-color .18s var(--ease), box-shadow .18s var(--ease), transform .18s var(--ease)}.ds-card-interactive:hover{border-color:hsl(var(--primary) / .3);box-shadow:0 8px 28px hsl(var(--primary-glow) / .15);transform:translateY(-2px)}.card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-heading h2{font-size:var(--text-h2);margin:0}.balance-card{flex-direction:column;justify-content:space-between;min-height:210px;display:flex;position:relative;overflow:hidden}.balance-card:after{border:16px solid hsl(var(--coin-gold) / .12);content:"";pointer-events:none;border-radius:50%;width:72px;height:72px;position:absolute;top:20px;right:20px}.balance-copy{z-index:1;position:relative}.balance-hero{align-items:center;min-height:74px;display:inline-grid;position:relative}.balance-rate{color:hsl(var(--ink-soft));font-size:var(--text-caption);margin:6px 0 0;font-weight:500}.amount,.amount-visual{align-items:center;display:inline-flex}.amount-visual{color:hsl(var(--ink));font-variant-numeric:tabular-nums;font-feature-settings:"ss01", "cv05", "tnum";gap:8px;font-weight:900;line-height:1}.amount-hero .amount-visual{letter-spacing:-.05em;gap:12px;font-size:clamp(3.25rem,12vw,4.75rem)}.amount-standard .amount-visual{font-size:var(--text-stat);letter-spacing:-.04em}.amount-compact .amount-visual{letter-spacing:-.02em;font-size:1.125rem}.coin-mark{width:.62em;min-width:22px;height:.62em;min-height:22px}.amount-compact .coin-mark{min-width:24px;min-height:24px}.summit-ring{display:none}[data-template=summit] .balance-card{text-align:center;align-items:center}[data-template=summit] .balance-card:after{display:none}[data-template=summit] .balance-hero{place-items:center;width:190px;height:190px}[data-template=summit] .summit-ring{width:190px;height:190px;display:block;position:absolute;transform:rotate(-90deg)}[data-template=summit] .summit-ring-track,[data-template=summit] .summit-ring-value{fill:none;stroke-width:6px}[data-template=summit] .summit-ring-track{stroke:hsl(var(--surface-sunken))}[data-template=summit] .summit-ring-value{stroke:hsl(var(--primary));stroke-dasharray:333;stroke-dashoffset:76px;stroke-linecap:round}[data-template=summit] .amount-hero .amount-visual{z-index:1;font-size:2.35rem;position:relative}.text-link{min-height:var(--target-min);color:hsl(var(--primary-ink));align-self:flex-start;align-items:center;gap:4px;font-size:.875rem;font-weight:800;text-decoration:none;display:inline-flex}[data-template=summit] .text-link{align-self:center}.text-link svg{width:18px;height:18px}.date-range{color:hsl(var(--ink-soft));font-size:var(--text-caption);text-align:right;font-weight:600}.goal-summary{color:hsl(var(--ink));justify-content:space-between;align-items:center;gap:12px;margin-top:22px;font-size:.875rem;display:flex}.potential-coins{color:hsl(var(--ink-soft));font-size:var(--text-caption);align-items:center;gap:5px;font-weight:700;display:inline-flex}.potential-coins svg{width:18px;height:18px}.progress-track{border-radius:var(--r-pill);background:hsl(var(--surface-sunken));height:7px;overflow:hidden}.progress-track>span{border-radius:inherit;background:hsl(var(--primary-fill));height:100%;transition:width .8s var(--ease);display:block}.progress-track-large{height:9px;margin:12px 0}.earned-chip{background:hsl(var(--positive-soft));color:hsl(var(--positive))}.goal-days{grid-template-columns:repeat(7,minmax(34px,1fr));gap:5px;margin-top:20px;display:grid}.goal-day{min-width:34px;min-height:var(--target-min);border-radius:var(--r-pill);background:hsl(var(--surface-sunken));color:hsl(var(--ink-soft));justify-content:center;align-items:center;gap:2px;font-size:.75rem;font-weight:800;display:flex}.goal-day svg{width:12px;height:12px}.goal-day-done{background:hsl(var(--positive-soft));color:hsl(var(--positive))}.goal-day-today{border:var(--border-w) solid hsl(var(--primary));background:hsl(var(--primary-soft));color:hsl(var(--primary))}.live-chip{background:hsl(var(--positive-soft));color:hsl(var(--positive))}.live-chip>span{background:hsl(var(--positive));width:7px;height:7px;box-shadow:0 0 0 4px hsl(var(--positive) / .12);animation:live-pulse 1.8s var(--ease) infinite;border-radius:50%}@keyframes live-pulse{50%{box-shadow:0 0 0 7px hsl(var(--positive) / 0)}}.freshness{color:hsl(var(--ink-soft));font-size:var(--text-caption);margin:6px 0 20px;font-weight:500}.metric-stack{gap:18px;display:grid}.metric-copy{color:hsl(var(--ink));justify-content:space-between;gap:12px;margin-bottom:7px;font-size:.875rem;font-weight:700;display:flex}.tabular{color:hsl(var(--ink-soft));font-variant-numeric:tabular-nums}.merch-card{border-color:hsl(var(--primary) / .3);background:hsl(var(--primary-soft));align-items:flex-start;gap:16px;display:flex}.merch-icon{border-radius:var(--r-md);background:hsl(var(--surface-elev));width:52px;height:52px;color:hsl(var(--primary));flex:0 0 52px;place-items:center;display:grid}.merch-icon svg{width:27px;height:27px}.merch-copy{min-width:0}.merch-copy h2{font-size:var(--text-h2);margin:0 0 8px}.merch-copy>p:not(.eyebrow){color:hsl(var(--ink-soft));margin:0 0 18px}.ds-button{min-height:var(--target-min);border:var(--border-w) solid transparent;border-radius:var(--r-pill);cursor:pointer;transition:background-color .18s var(--ease), border-color .18s var(--ease), box-shadow .18s var(--ease), transform .18s var(--ease);justify-content:center;align-items:center;padding:0 20px;font-size:.9375rem;font-weight:800;text-decoration:none;display:inline-flex;position:relative}.ds-button:hover:not(:disabled){transform:translateY(-1px)}.ds-button:active:not(:disabled){transform:translateY(0)}.ds-button-primary{background:hsl(var(--primary-fill));color:hsl(var(--on-primary));box-shadow:0 5px 0 hsl(var(--primary-fill-deep))}.ds-button-primary:hover:not(:disabled){box-shadow:0 5px 0 hsl(var(--primary-fill-deep)), 0 4px 24px hsl(var(--primary-glow) / .2)}.ds-button-primary:active:not(:disabled){background:hsl(var(--primary-fill-deep));box-shadow:0 2px 0 hsl(var(--primary-fill-deep))}.ds-button-primary:disabled{box-shadow:none}.ds-button-secondary{border-color:hsl(var(--border));color:hsl(var(--ink));background:0 0}.ds-button-secondary:hover:not(:disabled){border-color:hsl(var(--primary) / .3)}.ds-button-ghost{color:hsl(var(--ink-soft));background:0 0}.ds-button-ghost:hover:not(:disabled){background:hsl(var(--primary-soft))}.ds-button:disabled{cursor:not-allowed;background:hsl(var(--surface-sunken));color:hsl(var(--ink-faint));box-shadow:none}.ds-button-label.is-hidden{visibility:hidden}.ds-button-loading{place-items:center;display:grid;position:absolute;inset:0}.ds-spinner{border:4px solid hsl(var(--surface-sunken));border-top-color:hsl(var(--primary));border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spinner-turn}.ds-spinner-small{border-width:3px;width:20px;height:20px}@keyframes spinner-turn{to{transform:rotate(360deg)}}.data-state{text-align:center;align-content:center;place-items:center;min-height:280px;padding:32px 20px;display:grid}.data-state h2{font-size:var(--text-h2);margin:14px 0 6px}.data-state p{max-width:420px;color:hsl(var(--ink-soft));margin:0 0 18px}.data-state-compact{gap:8px;min-height:148px;padding:18px}.data-state-compact h2{margin-top:8px;font-size:1rem}.data-state-compact p{font-size:var(--text-caption);margin-bottom:8px}.data-state-mark{border-radius:var(--r-md);background:hsl(var(--primary-soft));width:52px;height:52px;color:hsl(var(--primary));place-items:center;display:grid}.data-state-mark svg{width:26px;height:26px}.data-state-error .data-state-mark{background:hsl(var(--destructive) / .12);color:hsl(var(--destructive))}.offline-banner{border-radius:var(--r-lg);background:hsl(var(--surface-sunken));color:hsl(var(--ink-soft));align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.offline-banner svg{flex:0 0 22px;width:22px;height:22px}.offline-banner p{font-size:var(--text-caption);margin:2px 0 0}.bottom-nav{z-index:30;right:50%;bottom:max(10px, env(safe-area-inset-bottom));border:var(--border-w) solid hsl(var(--border));border-radius:var(--r-xl);background:hsl(var(--surface-elev) / .94);width:min(100% - 20px,620px);box-shadow:0 14px 40px hsl(var(--ink) / .14);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);grid-template-columns:repeat(5,minmax(0,1fr));padding:7px;display:grid;position:fixed;transform:translate(50%)}.bottom-nav-item{min-width:var(--target-min);border-radius:var(--r-md);min-height:58px;color:hsl(var(--ink-faint));transition:background-color .18s var(--ease), color .18s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.6875rem;font-weight:700;text-decoration:none;display:flex}.bottom-nav-icon{border-radius:var(--r-pill);place-items:center;min-width:36px;height:26px;display:grid}.bottom-nav-icon svg{width:21px;height:21px}.bottom-nav-item:hover,.bottom-nav-item.is-active{color:hsl(var(--primary-ink))}.bottom-nav-item.is-active .bottom-nav-icon{background:hsl(var(--primary-soft))}.merch-link{width:100%}.screen-head-row{align-items:center;gap:10px;display:flex}.screen-head-row>:last-child{flex:1;min-width:0}.screen-back{border-radius:var(--r-pill);min-width:44px;min-height:44px;color:hsl(var(--ink));flex-shrink:0;place-items:center;margin-left:-10px;text-decoration:none;display:inline-grid}.screen-back:hover,.screen-back:focus-visible{background:hsl(var(--primary-soft));color:hsl(var(--primary))}@media (min-width:720px){.app-content{width:min(100%,768px);padding:32px 24px}.home-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.welcome{grid-column:1/-1}.balance-card,.goal-card{min-height:360px}.goal-card{flex-direction:column;justify-content:space-between;display:flex}.sync-card{grid-column:1/-1}.merch-card{grid-column:1/-1;padding:24px}.merch-link{width:auto}}@media (min-width:1040px){.home-stack{gap:26px}.welcome{padding-inline:8px}.ds-card{padding:24px}}@media (max-width:430px){.welcome{align-items:center}.welcome h1{font-size:1.5rem}.balance-shortcut{padding-inline:9px}.goal-summary{flex-direction:column;align-items:flex-start}.goal-days{gap:3px}.goal-day{min-width:30px}.merch-card{flex-direction:column}.bottom-nav{width:calc(100% - 16px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}:root{--page-transition-duration:.5s;--page-transition-ease:cubic-bezier(.32, .72, 0, 1);--page-transition-parallax:-33%}::view-transition{pointer-events:none}::view-transition-group(engage-bottom-nav){z-index:100;animation:none}::view-transition-old(engage-bottom-nav){display:none}::view-transition-new(engage-bottom-nav){animation:none}.page-transition-surface{min-height:100%}@keyframes page-enter-forward{0%{transform:translate(100%)}}@keyframes page-exit-forward{to{transform:translateX(var(--page-transition-parallax))}}@keyframes page-enter-back{0%{transform:translateX(var(--page-transition-parallax))}}@keyframes page-exit-back{to{transform:translate(100%)}}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}::view-transition-old(.nav-forward){animation:var(--page-transition-duration) var(--page-transition-ease) both page-exit-forward;z-index:1}::view-transition-new(.nav-forward){animation:var(--page-transition-duration) var(--page-transition-ease) both page-enter-forward;z-index:2;box-shadow:-12px 0 28px #1d130c2e}::view-transition-old(.nav-back){animation:var(--page-transition-duration) var(--page-transition-ease) both page-exit-back;z-index:2;box-shadow:-12px 0 28px #1d130c2e}::view-transition-new(.nav-back){animation:var(--page-transition-duration) var(--page-transition-ease) both page-enter-back;box-shadow:none;z-index:1}::view-transition-old(.none){animation:none}::view-transition-new(.none){animation:none}html:active-view-transition-type(nav-forward) ::view-transition-old(root){animation:var(--page-transition-duration) var(--page-transition-ease) both page-exit-forward;z-index:1}html:active-view-transition-type(nav-forward) ::view-transition-new(root){animation:var(--page-transition-duration) var(--page-transition-ease) both page-enter-forward;z-index:2;box-shadow:-12px 0 28px #1d130c2e}html:active-view-transition-type(nav-back) ::view-transition-old(root){animation:var(--page-transition-duration) var(--page-transition-ease) both page-exit-back;z-index:2;box-shadow:-12px 0 28px #1d130c2e}html:active-view-transition-type(nav-back) ::view-transition-new(root){animation:var(--page-transition-duration) var(--page-transition-ease) both page-enter-back;box-shadow:none;z-index:1}@media (prefers-reduced-motion:reduce){::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}}.app-nav-brand{display:none}@media (min-width:1024px){.app-frame{padding-bottom:0;padding-left:240px}.app-content{width:min(100%,784px);padding:40px 32px 64px}.bottom-nav{background:hsl(var(--surface-elev));width:240px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-width:0 1px 0 0;border-radius:0;flex-direction:column;gap:4px;padding:24px 16px;display:flex;inset:0 auto 0 0;transform:none}.app-nav-brand{color:hsl(var(--ink));text-overflow:ellipsis;white-space:nowrap;margin:0 0 16px;padding:8px 12px;font-size:1rem;font-weight:800;line-height:24px;display:block;overflow:hidden}.bottom-nav-item{border-radius:var(--r-sm);min-height:40px;color:hsl(var(--ink-soft));flex-direction:row;justify-content:flex-start;gap:12px;padding:0 12px;font-size:.9375rem;font-weight:600}.bottom-nav-icon{border-radius:0;min-width:0;height:auto}.bottom-nav-icon svg{width:20px;height:20px}.bottom-nav-item:hover{background:hsl(var(--surface-sunken));color:hsl(var(--ink))}.bottom-nav-item.is-active{background:hsl(var(--primary-soft));color:hsl(var(--primary-ink));font-weight:700}.bottom-nav-item.is-active .bottom-nav-icon{background:0 0}}.page-header{gap:8px;margin-bottom:24px;display:grid}.page-header-row{align-items:flex-start;gap:8px;display:flex}.page-header-row .screen-back{width:40px;min-width:40px;height:40px;min-height:40px;margin:-4px 0 0 -8px}.page-header-title{flex:1;min-width:0}.page-header-title .eyebrow{margin-bottom:4px}.page-header h1{overflow-wrap:anywhere;margin:0;font-size:1.5rem;line-height:32px}.page-header-actions{flex:none;align-items:center;gap:8px;display:flex}.page-header-description{max-width:60ch;color:hsl(var(--ink-soft));margin:0;font-size:.9375rem;line-height:24px}@media (min-width:1024px){.page-header h1{font-size:2rem;line-height:40px}.page-header-row .screen-back{margin-top:0}}.ds-stack{gap:24px;min-width:0;display:grid}.ds-stack>.page-header{margin-bottom:0}.ds-section{gap:8px;min-width:0;display:grid}.ds-section-title{color:hsl(var(--ink-soft));font-size:var(--text-eyebrow);letter-spacing:.06em;text-transform:uppercase;margin:0 4px;font-weight:700;line-height:16px}.ds-note{color:hsl(var(--ink-soft));font-size:var(--text-caption);margin:0 4px;line-height:20px}.ds-list{border:var(--border-w) solid hsl(var(--border));border-radius:var(--r-card);background:hsl(var(--surface-elev));box-shadow:0 1px 3px hsl(var(--ink) / .06);overflow:hidden}.ds-list>ul{margin:0;padding:0;list-style:none}.ds-list-item+.ds-list-item>.ds-list-row:before{border-top:1px solid hsl(var(--border));content:"";position:absolute;top:0;left:16px;right:0}.ds-list-item+.ds-list-item>.ds-list-row.has-tile:before{left:64px}.ds-list-row{width:100%;min-height:56px;color:hsl(var(--ink));text-align:left;background:0 0;border:0;align-items:center;gap:16px;margin:0;padding:8px 16px;font-size:.9375rem;font-weight:600;line-height:20px;text-decoration:none;display:flex;position:relative}a.ds-list-row,button.ds-list-row,label.ds-list-row{cursor:pointer;transition:background-color .18s var(--ease)}a.ds-list-row:hover,button.ds-list-row:hover:not(:disabled),label.ds-list-row:hover{background:hsl(var(--surface-sunken) / .6)}a.ds-list-row:active,button.ds-list-row:active:not(:disabled){background:hsl(var(--surface-sunken))}.ds-list-row:focus-visible{outline:3px solid hsl(var(--primary));outline-offset:-3px}.ds-list-row:has(:focus-visible){outline:3px solid hsl(var(--primary));outline-offset:-3px}.ds-list-row:has(:focus-visible) :focus-visible{outline:none}.ds-list-row.is-destructive,.ds-list-row.is-destructive .ds-list-tile{color:hsl(var(--destructive-ink))}.ds-list-row.is-destructive .ds-list-tile{background:hsl(var(--destructive) / .1)}.ds-list-tile{border-radius:var(--r-sm);background:hsl(var(--primary-soft));width:32px;height:32px;color:hsl(var(--primary));flex:none;place-items:center;display:grid}.ds-list-tile svg{width:18px;height:18px}.ds-list-text{flex:auto;gap:2px;min-width:0;display:grid}.ds-list-text small{color:hsl(var(--ink-soft));font-size:var(--text-caption);font-weight:500;line-height:18px}.ds-list-value{color:hsl(var(--ink-soft));font-variant-numeric:tabular-nums;text-align:right;flex:none;font-size:.875rem;font-weight:600}.ds-list-chevron{width:20px;height:20px;color:hsl(var(--ink-soft));flex:none}.ds-list-skeleton{align-items:center;gap:16px;min-height:56px;padding:8px 16px;display:flex}.ds-list-skeleton span{border-radius:var(--r-sm);background:hsl(var(--surface-sunken));display:block}.ds-list-skeleton span:first-child{width:32px;height:32px}.ds-list-skeleton span:last-child{width:160px;height:16px}.ds-disclosure{border-top:1px solid hsl(var(--border))}.ds-disclosure:first-child{border-top:0}.ds-disclosure>summary{cursor:pointer;min-height:56px;color:hsl(var(--ink));justify-content:space-between;align-items:center;gap:16px;padding:8px 16px;font-size:.9375rem;font-weight:700;list-style:none;display:flex}.ds-disclosure>summary::-webkit-details-marker{display:none}.ds-disclosure>summary:hover{background:hsl(var(--surface-sunken) / .6)}.ds-disclosure>summary:focus-visible{outline:3px solid hsl(var(--primary));outline-offset:-3px}.ds-disclosure-chevron{width:20px;height:20px;color:hsl(var(--ink-soft));transition:transform .18s var(--ease);flex:none;transform:rotate(90deg)}.ds-disclosure[open] .ds-disclosure-chevron{transform:rotate(-90deg)}.ds-disclosure-body{color:hsl(var(--ink-soft));white-space:pre-line;padding:0 16px 16px;font-size:.9375rem;line-height:24px}.ds-disclosure-body>:last-child{margin-bottom:0}.ds-switch{border-radius:var(--r-pill);appearance:none;background:hsl(var(--surface-sunken));width:48px;height:28px;box-shadow:inset 0 0 0 1px hsl(var(--border));cursor:pointer;transition:background-color .18s var(--ease);flex:none;margin:0;position:relative}.ds-switch:after{width:22px;height:22px;box-shadow:0 1px 3px hsl(var(--ink) / .24);content:"";transition:transform .18s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.ds-switch:checked{background:hsl(var(--primary-fill));box-shadow:none}.ds-switch:checked:after{transform:translate(20px)}.ds-switch:disabled{cursor:not-allowed;opacity:.5}.ds-radio,.ds-checkbox{border:2px solid hsl(var(--ink-faint));appearance:none;background:hsl(var(--surface-elev));cursor:pointer;width:22px;height:22px;transition:background-color .18s var(--ease), border-color .18s var(--ease);flex:none;margin:0;position:relative}.ds-radio{border-radius:50%}.ds-checkbox{border-radius:6px}.ds-radio:checked{border-color:hsl(var(--primary-fill));box-shadow:inset 0 0 0 4px hsl(var(--surface-elev));background:hsl(var(--primary-fill))}.ds-checkbox:checked{border-color:hsl(var(--primary-fill));background:hsl(var(--primary-fill))}.ds-checkbox:checked:after{border:solid hsl(var(--on-primary));content:"";border-width:0 2px 2px 0;width:6px;height:11px;position:absolute;top:2px;left:6px;transform:rotate(45deg)}.ds-radio:disabled,.ds-checkbox:disabled{cursor:not-allowed;opacity:.5}.ds-field{gap:8px;display:grid}.ds-field>label,.ds-label{color:hsl(var(--ink));font-size:.875rem;font-weight:700}.ds-input{border:var(--border-w) solid hsl(var(--border));border-radius:var(--r-md);background:hsl(var(--surface-elev));width:100%;min-height:48px;color:hsl(var(--ink));transition:border-color .18s var(--ease), box-shadow .18s var(--ease);padding:0 16px}textarea.ds-input{resize:vertical;min-height:120px;padding:12px 16px}.ds-input:hover{border-color:hsl(var(--ink-faint))}.ds-input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 4px hsl(var(--primary-soft));outline:none}.ds-input[aria-invalid=true]{border-color:hsl(var(--destructive))}.ds-field-hint{color:hsl(var(--ink-soft));font-size:var(--text-caption);margin:0;line-height:18px}.ds-field-error{color:hsl(var(--destructive-ink));font-size:var(--text-caption);margin:0;font-weight:600;line-height:18px}.ds-notice{border-radius:var(--r-lg);background:hsl(var(--surface-sunken));color:hsl(var(--ink));align-items:flex-start;gap:12px;padding:16px;font-size:.875rem;line-height:20px;display:flex}.ds-notice>svg{width:20px;height:20px;color:hsl(var(--ink-soft));flex:0 0 20px}.ds-notice p{margin:0}.ds-notice-warning{background:hsl(var(--coin-gold) / .14)}.ds-notice-warning>svg{color:hsl(var(--coin-gold-deep))}.ds-notice-danger{background:hsl(var(--destructive) / .1)}.ds-notice-danger>svg{color:hsl(var(--destructive-ink))}.ds-notice-success{background:hsl(var(--positive-soft))}.ds-notice-success>svg{color:hsl(var(--positive))}.ds-button.ds-button-danger,.ds-button.ds-button-danger:hover:not(:disabled){color:#fff;background:#b81e1e;box-shadow:0 5px #8c1717}.ds-button.ds-button-danger:active:not(:disabled){background:#9e1a1a;box-shadow:0 2px #8c1717}.ds-button.ds-button-danger:disabled{background:hsl(var(--surface-sunken));color:hsl(var(--ink-faint));box-shadow:none}.ds-button-block{width:100%}[role=button]:focus-visible,[role=link]:focus-visible,[role=switch]:focus-visible,[role=checkbox]:focus-visible,[role=radio]:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:3px solid hsl(var(--primary));outline-offset:3px}.coin-chip-mark{width:20px;height:20px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
