:root{--color-bg:#020b18;--color-surface:#06182b;--color-elevated:#0a2038;--color-text:#f8fafc;--color-muted:#b6c0d3;--color-border:#1b3a55;--color-cyan:#00c8ff;--color-cyan-deep:#009ed8;--color-amber:#ffb82e;--color-violet:#9b5cff;--color-green:#9ddb3a;--color-danger:#ff6b6b;--font-family:system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", sans-serif;--type-page-size:28px;--type-page-line:1.1;--type-page-weight:760;--type-level-size:21px;--type-level-line:1.15;--type-level-weight:760;--type-quest-size:17px;--type-quest-line:1.2;--type-quest-weight:700;--type-metric-size:34px;--type-metric-line:1;--type-metric-weight:800;--type-body-size:15px;--type-body-line:1.45;--type-body-weight:500;--type-caption-size:12px;--type-caption-line:1.35;--type-caption-weight:650;--type-nav-size:11px;--type-nav-line:1.2;--type-nav-weight:650;--radius-feature:28px;--radius-card:20px;--radius-control:14px;--tap-min:44px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-10:40px;--content-max:480px;--focus-ring:0 0 0 3px var(--color-bg), 0 0 0 5px var(--color-cyan);--shadow-surface:0 16px 40px #00000052;--shadow-cyan:0 0 18px #00c8ff59;--motion-fill:.35s ease-out;--motion-checkpoint:.24s ease-out;--motion-route:1.8s ease-in-out;--motion-press:.12s}*,:before,:after{box-sizing:border-box}html{background:var(--color-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-width:320px;font-family:var(--font-family)}body{background:var(--color-bg);min-width:320px;min-height:100vh;color:var(--color-text);font-size:var(--type-body-size);font-weight:var(--type-body-weight);line-height:var(--type-body-line);margin:0;overflow-x:hidden}button,a{font:inherit}a{color:inherit}button,[href]{min-width:var(--tap-min);min-height:var(--tap-min)}:focus-visible{box-shadow:var(--focus-ring);outline:none}img,svg{max-width:100%;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.vehicle-state-gate,.moving-break-picker,.move-pending,.workout-picker,.movement-player,.movement-comfort,.movement-result,.movement-save-state{width:100%;min-width:0;padding-top:var(--space-4)}.move-page__eyebrow{margin:0 0 var(--space-1);color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.09em;font-weight:800}.vehicle-state-gate h1,.moving-break-picker h1,.move-pending h1,.workout-picker h1,.movement-player h1,.movement-comfort h1,.movement-result h1{font-size:var(--type-page-size);line-height:var(--type-page-line);margin:0}.vehicle-state-gate__driver-note,.moving-break-picker__reminder{margin:var(--space-3) 0 var(--space-4);padding:var(--space-3);border-left:4px solid var(--color-amber);border-radius:var(--radius-control);color:var(--color-muted);background:var(--color-elevated)}.workout-picker__parked-note{margin:var(--space-3) 0 var(--space-4);padding:var(--space-3);border-left:4px solid var(--color-green);border-radius:var(--radius-control);color:var(--color-green);background:var(--color-elevated);font-weight:700}.workout-picker fieldset{min-width:0;margin:0 0 var(--space-4);border:0;padding:0}.workout-picker legend{margin-bottom:var(--space-2);color:var(--color-muted);font-size:var(--type-caption-size);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.workout-picker__choices,.workout-picker__durations{gap:var(--space-2);display:grid}.workout-picker__durations{grid-template-columns:repeat(3,minmax(0,1fr))}.workout-picker__choices button,.workout-picker__durations button,.workout-picker__weekly button,.workout-picker__start{min-width:0;min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);cursor:pointer;font-size:14px;font-weight:800}.workout-picker__choices button{text-align:left;min-height:54px}.workout-picker [role=radio][aria-checked=true],.workout-picker__weekly button[aria-pressed=true]{border-color:var(--color-cyan);color:var(--color-cyan);box-shadow:inset 0 0 0 1px var(--color-cyan)}.workout-picker__weekly{min-width:0;margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);flex-direction:column;gap:2px;display:flex}.workout-picker__weekly span{color:var(--color-muted);font-size:var(--type-caption-size)}.workout-picker__weekly>div{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.workout-picker__start{border-color:var(--color-green);width:100%;min-height:54px;color:var(--color-bg);background:var(--color-green);font-size:16px}.vehicle-state-gate__choices,.moving-break-picker__durations,.movement-comfort>div{gap:var(--space-3);display:grid}.vehicle-state-gate__choices button,.moving-break-picker__durations button,.move-pending button,.movement-comfort button,.movement-result button,.movement-alert button{min-width:0;min-height:54px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);cursor:pointer;text-align:left;font-weight:800}.vehicle-state-gate__choices button:first-child,.moving-break-picker__durations button{border-color:var(--color-cyan)}.move-text-button{margin:var(--space-4) auto 0;color:var(--color-cyan);cursor:pointer;background:0 0;border:0;font-weight:700;display:block}.movement-alert{margin:var(--space-3) 0;padding:var(--space-3);border-left:4px solid var(--color-danger);border-radius:var(--radius-control);background:var(--color-elevated)}.movement-alert p{margin:0 0 var(--space-3)}.movement-alert button{align-items:center;gap:var(--space-2);display:inline-flex}.movement-alert svg{width:18px}.movement-player__safety{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-green);border-radius:var(--radius-control);color:var(--color-green);background:var(--color-surface);font-size:var(--type-caption-size);font-weight:800;display:flex}.movement-quest-hud{margin-bottom:var(--space-4);padding:var(--space-4) var(--space-3) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background-color:var(--color-surface);background-image:url(/game/highway-route.png);background-position:50%;background-size:cover;position:relative;overflow:hidden}.movement-quest-hud:before{content:"";background:#020b18a3;position:absolute;inset:0}.movement-quest-hud>*{position:relative}.movement-quest-hud__copy h2,.movement-quest-hud__copy strong,.movement-quest-hud__copy span{margin:0;display:block}.movement-quest-hud__copy h2{font-size:24px;line-height:1.1}.movement-quest-hud__copy strong{color:var(--color-green);margin-top:2px;font-size:22px}.movement-quest-hud__copy span{color:var(--color-muted);font-size:14px}.movement-quest-hud ol{gap:var(--space-1);margin:var(--space-4) 0 0;grid-template-columns:repeat(6,1fr);padding:0;list-style:none;display:grid;position:relative}.movement-quest-hud ol:before{background:var(--color-border);content:"";height:3px;position:absolute;top:17px;left:7%;right:7%}.movement-quest-hud li{z-index:1;place-items:center;display:grid;position:relative}.movement-quest-hud li span{border:2px solid var(--color-border);width:36px;height:36px;color:var(--color-muted);background:var(--color-bg);border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid}.movement-quest-hud li svg{width:18px}.movement-quest-hud li.is-done span{border-color:var(--color-green);color:var(--color-green)}.movement-quest-hud li.is-current span{border-color:var(--color-cyan);color:var(--color-cyan);box-shadow:0 0 12px #00c8ffa3}.movement-quest-hud>p{margin:var(--space-2) 0 0;color:var(--color-cyan);font-size:var(--type-caption-size);text-align:center;font-weight:800}.movement-player__safety svg{flex:none;width:20px}.movement-player__active-safety{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.movement-player__active-safety button{min-width:0;min-height:var(--tap-min);padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);cursor:pointer;text-align:center;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex}.movement-player__active-safety button:first-child{border-color:var(--color-cyan);color:var(--color-cyan)}.movement-player__active-safety .movement-player__pain{border-color:var(--color-danger);color:var(--color-danger)}.movement-player__active-safety svg{flex:none;width:16px}.movement-player__timers{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.movement-player__timers span{min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);flex-direction:column;display:flex}.movement-player__timers small,.movement-player__step{color:var(--color-muted);font-size:var(--type-caption-size);font-weight:700}.movement-player__step+h1{margin-bottom:var(--space-3)}.movement-player__timers strong{font-variant-numeric:tabular-nums;font-size:24px}.movement-player__step{margin:0 0 var(--space-2);letter-spacing:.04em;text-transform:uppercase}.movement-player__image{aspect-ratio:4/3;width:100%;margin-bottom:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);object-fit:cover}.movement-player{border-radius:var(--radius-card);overflow:hidden}.movement-player__instruction,.movement-player__rest{margin:var(--space-3) 0;font-size:17px}.movement-player__breathing,.movement-player__stop-guidance{margin:var(--space-2) 0;color:var(--color-muted)}.movement-player__stop-guidance{color:var(--color-amber);font-size:var(--type-caption-size);font-weight:700}.movement-player__primary-controls,.movement-player__secondary-controls{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.movement-player__primary-controls button,.movement-player__secondary-controls button{min-width:0;min-height:var(--tap-min);justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);cursor:pointer;text-align:center;font-size:13px;font-weight:800;display:inline-flex}.movement-player__primary-controls button{border-color:var(--color-cyan);color:var(--color-cyan)}.movement-player__primary-controls svg,.movement-player__secondary-controls svg{flex:none;width:17px}.movement-player__secondary-controls .movement-player__pain{border-color:var(--color-danger);color:var(--color-danger)}.movement-player__xp-callout{margin:var(--space-3) 0 0;padding:var(--space-3);border:1px solid var(--color-violet);border-radius:var(--radius-control);color:var(--color-violet);text-align:center;font-weight:800}.movement-comfort>p,.movement-result>p{color:var(--color-muted)}.movement-comfort button:last-child{border-color:var(--color-danger);color:var(--color-danger)}.movement-result{text-align:center}.movement-result__check,.movement-result__stop{width:64px;height:64px;margin:0 auto var(--space-3);border:2px solid var(--color-green);color:var(--color-green);background:var(--color-surface);border-radius:50%;place-items:center;display:grid}.movement-result__stop{border-color:var(--color-amber);color:var(--color-amber)}.movement-result strong{margin:var(--space-3) 0;color:var(--color-green);font-size:var(--type-level-size);display:block}.movement-result button{margin-top:var(--space-3);text-align:center}.workout-summary__facts{gap:var(--space-2);margin:var(--space-4) 0;text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workout-summary__facts div{min-width:0;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.workout-summary__facts dt{color:var(--color-muted);font-size:var(--type-caption-size)}.workout-summary__facts dd{margin:2px 0 0;font-weight:800}.workout-summary__checkpoint{padding:var(--space-3);border:1px solid var(--color-violet);border-radius:var(--radius-control);font-weight:800;color:var(--color-violet)!important}.workout-summary__weekly{font-weight:800;color:var(--color-cyan)!important}@media (width<=360px){.movement-player__primary-controls,.movement-player__secondary-controls{grid-template-columns:1fr}}.app-shell{min-height:100vh}.app-main{width:100%;max-width:var(--content-max);min-height:100vh;padding:var(--space-4) var(--space-4) calc(92px + env(safe-area-inset-bottom));margin:0 auto}.brand-heading,.placeholder-heading{margin:0 0 var(--space-4);font-size:var(--type-page-size);font-weight:var(--type-page-weight);line-height:var(--type-page-line);letter-spacing:-.02em}.brand-heading span{color:var(--color-cyan)}.placeholder-heading{padding-top:var(--space-4)}.food-page__title{align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);display:flex}.food-page__title p,.food-page__title h1,.food-page__title small,.food-section-heading p,.food-section-heading h2,.food-confirmation__header p,.food-confirmation__header h2,.food-history__heading p,.food-history__heading h2{margin:0}.food-page__title p,.food-section-heading p,.food-confirmation__header p,.food-history__heading p{color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.09em;text-transform:uppercase;font-weight:800}.food-page__title h1{font-size:var(--type-page-size);line-height:var(--type-page-line)}.food-page__title small{color:var(--color-muted)}.food-page__title-icon,.food-confirmation__icon{border:2px solid var(--color-amber);width:54px;height:54px;color:var(--color-amber);background:var(--color-surface);border-radius:50%;flex:none;place-items:center;display:grid}.food-page__title-icon svg,.food-confirmation__icon svg{width:26px;height:26px}.food-daily{align-items:center;gap:var(--space-3);min-height:72px;margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-columns:40px minmax(0,1fr) auto;display:grid}.food-daily>svg{width:32px;color:var(--color-amber)}.food-daily>span:not(.food-daily__remaining){flex-direction:column;display:flex}.food-daily small{color:var(--color-muted);font-size:var(--type-caption-size);font-weight:700}.food-daily strong{font-variant-numeric:tabular-nums;font-size:19px}.food-daily__remaining{color:var(--color-muted);font-size:var(--type-caption-size);text-align:right;font-weight:700}.food-saved{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-left:4px solid var(--color-green);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-elevated)}.manual-food,.barcode-scanner,.label-capture,.restaurant-search,.food-confirmation,.food-history,.meal-photo,.multi-food-confirmation,.ai-budget{margin-top:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-surface)}.food-entry-routes{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.food-entry-routes button{justify-content:center;align-items:center;gap:var(--space-1);min-width:0;min-height:56px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-muted);background:var(--color-surface);cursor:pointer;font:inherit;text-align:center;font-size:11px;font-weight:800;line-height:1.2;display:flex}.food-entry-routes button[aria-pressed=true]{border-color:var(--color-cyan);color:var(--color-cyan);background:var(--color-elevated)}.food-entry-routes svg{flex:none;width:18px}.label-capture__body,.restaurant-search__body{gap:var(--space-3);padding:var(--space-4);display:grid}.label-capture__placeholder,.label-capture__preview,.food-review__label-preview img{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg);object-fit:contain;width:100%;min-height:180px;max-height:320px}.label-capture__placeholder{color:var(--color-muted);place-items:center;display:grid}.label-capture__placeholder svg{width:44px;height:44px}.label-capture__privacy,.label-capture__body>[role=status],.restaurant-search__body>[role=status]{color:var(--color-muted);font-size:var(--type-caption-size);margin:0}.label-capture__choose,.label-capture__error button,.restaurant-search form button,.restaurant-search__results button{min-height:var(--tap-min);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-cyan);background:var(--color-bg);cursor:pointer;font:inherit;font-weight:800;display:inline-flex}.label-capture__choose input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.label-capture__error{padding:var(--space-3);border-left:4px solid var(--color-amber);border-radius:var(--radius-control);background:var(--color-elevated)}.label-capture__error p{margin:0 0 var(--space-3)}.restaurant-search form{align-items:end;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.restaurant-search form button:disabled{cursor:not-allowed;opacity:.55}.restaurant-search__results{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.restaurant-search__results li{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-elevated);grid-template-columns:minmax(0,1fr) auto;display:grid}.restaurant-search__results li>span{flex-direction:column;min-width:0;display:flex}.restaurant-search__results small{color:var(--color-muted)}.food-review__label-preview{margin:var(--space-4) 0 0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.food-review__label-preview figcaption{margin-top:var(--space-2);color:var(--color-muted);font-size:var(--type-caption-size)}.barcode-scanner__body{gap:var(--space-3);padding:var(--space-4);display:grid}.barcode-scanner__preview{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg);place-items:center;min-height:180px;display:grid;position:relative;overflow:hidden}.barcode-scanner__preview video{object-fit:cover;width:100%;max-height:260px}.barcode-scanner__preview>span{border:2px solid var(--color-cyan);border-radius:var(--radius-control);width:70%;height:92px;color:var(--color-cyan);place-items:center;display:grid;position:absolute}.barcode-scanner__preview>span svg{width:44px;height:44px}.barcode-scanner__camera,.barcode-scanner__alternatives form button,.barcode-scanner__manual,.barcode-scanner__upload{min-height:var(--tap-min);justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;display:inline-flex}.barcode-scanner__camera svg,.barcode-scanner__manual svg,.barcode-scanner__upload svg{width:20px}.barcode-scanner__body>[role=status]{color:var(--color-muted);margin:0}.barcode-scanner__notice{padding:var(--space-3);border-left:4px solid var(--color-amber);border-radius:var(--radius-control);background:var(--color-elevated);margin:0}.barcode-scanner__notice p{margin:0}.barcode-scanner__notice p+p{margin-top:var(--space-2);color:var(--color-muted)}.barcode-scanner__alternatives{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.barcode-scanner__upload,.barcode-scanner__manual,.barcode-scanner__alternatives form button{min-width:0;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-cyan);background:var(--color-bg);font:inherit;font-weight:700}.barcode-scanner__upload input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.barcode-scanner__alternatives form{align-items:end;gap:var(--space-2);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;display:grid}.barcode-scanner__alternatives form button{min-width:132px}.barcode-scanner__manual{grid-column:2}.food-section-heading,.food-confirmation__header,.food-history__heading{align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.food-section-heading>svg{width:28px;color:var(--color-cyan);flex:none}.food-section-heading h2,.food-confirmation__header h2,.food-history__heading h2{font-size:var(--type-level-size);line-height:var(--type-level-line)}.manual-food__form{gap:var(--space-3);padding:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field{gap:var(--space-1);min-width:0;color:var(--color-muted);font-size:var(--type-caption-size);flex-direction:column;font-weight:700;display:flex}.field--wide{grid-column:1/-1}.field input,.field select,.food-confirmation__servings input,.food-history__copy-date input{width:100%;min-height:var(--tap-min);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-bg);font:inherit;font-size:15px}.field input::placeholder{color:var(--color-muted);opacity:.78}.manual-food__nutrients{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.manual-food__nutrients legend{padding:0 var(--space-2);color:var(--color-muted);font-size:var(--type-caption-size);font-weight:700}.food-primary-button,.food-confirmation__total button{border-radius:var(--radius-control);min-height:54px;color:var(--color-bg);background:var(--color-cyan);box-shadow:var(--shadow-cyan);cursor:pointer;transition:background-color var(--motion-press), transform var(--motion-press);border:0;font-size:18px;font-weight:800}.food-primary-button:hover,.food-confirmation__total button:hover{background:var(--color-cyan-deep)}.food-primary-button:active,.food-confirmation__total button:active{transform:scale(.99)}.food-confirmation__header small{color:var(--color-cyan);font-size:var(--type-caption-size);font-weight:700}.food-confirmation form{padding:var(--space-3)}.food-confirmation__editor{gap:var(--space-3);margin:0 0 var(--space-3);padding:var(--space-3);border:1px solid var(--color-amber);border-radius:var(--radius-control);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.food-confirmation__editor legend{padding:0 var(--space-2);color:var(--color-amber);font-weight:800}.food-confirmation__editor>p{color:var(--color-muted);font-size:var(--type-caption-size);grid-column:1/-1;margin:0}.food-confirmation__item{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-elevated);grid-template-columns:40px minmax(0,1fr) 84px;display:grid}.food-confirmation__check{border:2px solid var(--color-green);width:38px;height:38px;color:var(--color-green);border-radius:50%;place-items:center;display:grid}.food-confirmation__check svg{width:20px}.food-confirmation__copy{flex-direction:column;min-width:0;display:flex}.food-confirmation__copy strong{font-size:var(--type-quest-size)}.food-confirmation__copy small,.food-confirmation__per-serving{color:var(--color-muted);font-size:var(--type-caption-size)}.food-confirmation__servings{gap:var(--space-1);color:var(--color-muted);font-size:var(--type-caption-size);flex-direction:column;font-weight:700;display:flex}.food-confirmation__servings input{padding:0 var(--space-2);text-align:center}.food-confirmation__per-serving{text-align:center;grid-column:3}.food-confirmation__lactose{align-items:center;gap:var(--space-3);min-height:52px;margin:var(--space-3) 0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-amber);display:flex}.food-confirmation__lactose svg{flex:none;width:24px}.food-confirmation__lactose--no{color:var(--color-green)}.food-confirmation__lactose--unknown{color:var(--color-muted)}.food-confirmation__total{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg)}.food-confirmation__total>span{align-items:center;gap:var(--space-2);display:flex}.food-confirmation__total>span svg{width:28px;color:var(--color-green)}.food-confirmation__total strong{font-variant-numeric:tabular-nums;font-size:25px}.food-confirmation__total p{margin:var(--space-2) 0 var(--space-3);color:var(--color-violet);font-weight:800}.food-confirmation__total button{width:100%}.food-text-button{margin:var(--space-2) auto 0;color:var(--color-cyan);cursor:pointer;background:0 0;border:0;font-weight:700;display:block}.meal-photo__consent,.meal-photo__body,.ai-budget__body{gap:var(--space-3);padding:var(--space-4);display:grid}.meal-photo__consent>svg{width:34px;height:34px;color:var(--color-cyan)}.meal-photo__consent p,.meal-photo__privacy,.meal-photo__notice,.ai-budget__body p{color:var(--color-muted);margin:0}.meal-photo__consent button,.meal-photo__choose,.multi-food-confirmation__manual{min-height:var(--tap-min);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-cyan);background:var(--color-bg);cursor:pointer;font:inherit;font-weight:800;display:inline-flex}.meal-photo__choose input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.meal-photo__choose:has(input:disabled){cursor:not-allowed;opacity:.55}.meal-photo__preview{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg);object-fit:contain;width:100%;max-height:320px}.meal-photo__notice{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-left:4px solid var(--color-amber);border-radius:var(--radius-control);background:var(--color-elevated);display:flex}.meal-photo__notice svg{flex:none;width:20px}.meal-photo__quote{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-cyan);border-radius:var(--radius-control);background:var(--color-elevated);display:grid}.meal-photo__quote strong{color:var(--color-cyan);font-size:var(--type-quest-size)}.meal-photo__quote span{color:var(--color-muted);font-size:var(--type-caption-size)}.multi-food-confirmation>form{padding:var(--space-3)}.multi-food-confirmation__guidance{margin:0 0 var(--space-3);color:var(--color-muted)}.multi-food-confirmation__items{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.multi-food-item{min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-elevated)}.multi-food-item__heading{align-items:center;gap:var(--space-2);grid-template-columns:40px minmax(0,1fr) 76px;display:grid}.multi-food-item__heading>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.multi-food-item__heading>span:nth-child(2) strong{overflow-wrap:anywhere}.multi-food-item__heading>span:nth-child(2) small,.multi-food-item__rationale{color:var(--color-muted);font-size:var(--type-caption-size)}.multi-food-item__heading button{min-width:0;min-height:var(--tap-min);justify-content:center;align-items:center;gap:var(--space-1);padding:0 var(--space-1);border-radius:var(--radius-control);color:var(--color-cyan);background:var(--color-bg);cursor:pointer;border:0;font-size:11px;font-weight:700;display:inline-flex}.multi-food-item__heading button:last-child{color:var(--color-danger);grid-column:3}.multi-food-item__heading button svg,.multi-food-confirmation__manual svg{flex:none;width:17px}.multi-food-item__editor{gap:var(--space-3);margin:var(--space-3) 0 0;padding:var(--space-3);border:1px solid var(--color-amber);border-radius:var(--radius-control);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.multi-food-item__editor legend{padding:0 var(--space-2);color:var(--color-amber);font-weight:800}.multi-food-item__facts{gap:var(--space-2);margin:var(--space-3) 0;display:grid}.multi-food-item__facts div{justify-content:space-between;gap:var(--space-3);display:flex}.multi-food-item__facts dt{color:var(--color-muted);font-size:var(--type-caption-size)}.multi-food-item__facts dd{text-align:right;margin:0}.multi-food-item__rationale{margin:0}.multi-food-item__portion{margin-top:var(--space-3)}.multi-food-item__selected{margin-top:var(--space-2);color:var(--color-amber);font-variant-numeric:tabular-nums;display:block}.multi-food-confirmation__manual{width:100%;margin:var(--space-3) 0}.ai-budget__body>strong{color:var(--color-cyan);font-size:var(--type-level-size)}.ai-budget__body dl{gap:var(--space-2);margin:0;display:grid}.ai-budget__body dl div,.ai-budget__limits{justify-content:space-between;gap:var(--space-3);display:flex}.ai-budget__body dt{color:var(--color-muted)}.ai-budget__body dd{text-align:right;margin:0}.ai-budget__limits{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-amber);background:var(--color-bg);font-size:var(--type-caption-size);font-weight:800}.food-history{overflow:hidden}.food-history__heading{justify-content:space-between}.food-history__heading small{color:var(--color-muted);font-size:var(--type-caption-size)}.food-favorites{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.food-favorites h3,.food-history__day>h3{margin:0 0 var(--space-2);color:var(--color-muted);font-size:var(--type-caption-size);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.food-favorites>div{gap:var(--space-2);flex-wrap:wrap;display:flex}.food-favorites button{align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-3);border:1px solid var(--color-violet);color:var(--color-text);background:var(--color-elevated);cursor:pointer;border-radius:999px;display:inline-flex}.food-favorites svg{width:17px;color:var(--color-violet)}.food-history__empty{padding:var(--space-6) var(--space-4);color:var(--color-muted);margin:0}.food-history__day{padding:var(--space-4)}.food-history__day+.food-history__day{border-top:1px solid var(--color-border)}.food-history__item{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-elevated)}.food-history__item+.food-history__item{margin-top:var(--space-3)}.food-history__summary{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);display:flex}.food-history__summary>span:first-child{flex-direction:column;min-width:0;display:flex}.food-history__summary small{color:var(--color-muted);font-size:var(--type-caption-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.food-history__calories{color:var(--color-amber);white-space:nowrap;font-weight:800}.food-history__actions{align-items:end;gap:var(--space-1);padding:var(--space-2);border-top:1px solid var(--color-border);grid-template-columns:44px auto minmax(118px,1fr) auto 44px;display:grid}.food-history__actions button{min-width:var(--tap-min);min-height:var(--tap-min);justify-content:center;align-items:center;gap:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-control);color:var(--color-cyan);background:var(--color-bg);cursor:pointer;font-size:var(--type-caption-size);border:0;font-weight:700;display:inline-flex}.food-history__actions button svg{width:18px}.food-history__actions button:first-child{color:var(--color-violet)}.food-history__actions .food-history__delete{color:var(--color-danger)}.food-history__copy-date{min-width:0;color:var(--color-muted);flex-direction:column;font-size:9px;font-weight:700;display:flex}.food-history__copy-date input{min-width:0;padding:0 var(--space-2);font-size:11px}.loading-state{color:var(--color-muted)}.fast-page{gap:var(--space-4);display:grid}.fast-start,.fast-timer,.fast-history{border:1px solid var(--color-border);border-radius:var(--radius-card);background-color:var(--color-surface);box-shadow:var(--shadow-surface)}.fast-start{min-height:430px;padding:var(--space-8) var(--space-6);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.fast-start__icon,.fast-timer__icon{border:3px solid var(--color-cyan);width:62px;height:62px;color:var(--color-cyan);background:var(--color-bg);box-shadow:var(--shadow-cyan);border-radius:50%;flex:none;place-items:center;display:grid}.fast-start__icon svg,.fast-timer__icon svg{width:30px;height:30px}.fast-start>p{margin:var(--space-4) 0 0;color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.1em;font-weight:800}.fast-start>h1{margin:var(--space-2) 0;font-size:var(--type-page-size);line-height:var(--type-page-line)}.fast-start>span:not(.fast-start__icon){max-width:290px;color:var(--color-muted)}.fast-start>button,.fast-end-button{border:1px solid var(--color-cyan);border-radius:var(--radius-control);width:100%;min-height:58px;color:var(--color-bg);background:var(--color-cyan);cursor:pointer;box-shadow:var(--shadow-cyan);font-size:20px;font-weight:850}.fast-start>button{margin-top:var(--space-6)}.fast-start>button:disabled,.fast-end-button:disabled{cursor:wait;opacity:.7}.fast-timer{padding:var(--space-4);background-image:url(/game/highway-route.png);background-position:50%;background-repeat:no-repeat;background-size:cover;position:relative;overflow:hidden}.fast-timer:before{pointer-events:none;content:"";background:#020b187a;position:absolute;inset:0}.fast-timer>*{position:relative}.fast-timer__heading{align-items:center;gap:var(--space-3);display:flex}.fast-timer__heading p,.fast-timer__heading h1{margin:0}.fast-timer__heading p{color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.1em;font-weight:800}.fast-timer__heading h1{font-size:var(--type-page-size);line-height:var(--type-page-line)}.fast-timer__elapsed{margin:var(--space-6) 0 var(--space-4);color:var(--color-text);font-variant-numeric:tabular-nums;letter-spacing:-.055em;text-align:center;text-shadow:0 0 16px #00c8ff80;font-size:clamp(48px,14vw,68px);font-weight:760;line-height:1;display:block}.fast-plan-progress{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:#020b18e0}.fast-plan-progress progress{width:100%;height:10px;accent-color:var(--color-cyan);border:0;border-radius:999px;overflow:hidden}.fast-plan-progress p{margin:var(--space-2) 0 0;color:var(--color-muted);text-align:center}.fast-checkpoint{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);text-align:center;flex-direction:column;display:flex}.fast-checkpoint__marker{border:3px solid var(--color-cyan);width:68px;height:68px;color:var(--color-text);background:var(--color-cyan-deep);box-shadow:var(--shadow-cyan);border-radius:50%;place-items:center;display:grid}.fast-checkpoint__marker svg{fill:currentColor;stroke-width:3px;width:34px;height:34px}.fast-checkpoint strong{color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.1em}.fast-checkpoint>span:not(.fast-checkpoint__marker){color:var(--color-violet);font-size:20px;font-weight:800}.fast-checkpoint>.fast-checkpoint__saving{color:var(--color-muted);font-size:var(--type-body-size)}.fast-neutral-copy,.fast-clinician-lock,.fast-clinician-guided{margin:0 0 var(--space-3);padding:var(--space-3);border-radius:var(--radius-control);text-align:center}.fast-neutral-copy{border:1px solid var(--color-border);color:var(--color-muted);background:#020b18e0}.fast-clinician-lock{border:1px solid var(--color-amber);color:var(--color-text);background:var(--color-elevated);font-weight:800}.fast-clinician-guided{border:1px solid var(--color-cyan);color:var(--color-cyan);background:var(--color-elevated);font-weight:800}.fast-clinician-maximum{margin:0 0 var(--space-3);padding:var(--space-4);border:1px solid var(--color-danger);border-radius:var(--radius-control);background:var(--color-elevated)}.fast-clinician-maximum>strong{color:var(--color-text);font-size:var(--type-quest-size);display:block}.fast-clinician-maximum p{gap:var(--space-1);margin:var(--space-3) 0 0;overflow-wrap:anywhere;flex-direction:column;display:flex}.fast-clinician-maximum p span{color:var(--color-danger);font-size:var(--type-caption-size);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.fast-support-actions{border:1px solid var(--color-border);border-radius:var(--radius-card);background:#020b18f0;overflow:hidden}.fast-support-row{align-items:center;gap:var(--space-3);width:100%;min-height:70px;padding:var(--space-2) var(--space-3);color:var(--color-text);text-align:left;background:0 0;border:0;grid-template-columns:48px minmax(0,1fr) 22px;text-decoration:none;display:grid}.fast-support-row+.fast-support-row{border-top:1px solid var(--color-border)}button.fast-support-row{cursor:pointer}.fast-support-row>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.fast-support-row strong{font-size:var(--type-quest-size)}.fast-support-row small{color:var(--color-muted);font-size:var(--type-caption-size);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fast-support-row>svg{width:20px;color:var(--color-muted)}.fast-support-row__icon{border:2px solid var(--color-cyan);width:46px;height:46px;color:var(--color-cyan);border-radius:50%;place-items:center;display:grid}.fast-support-row__icon svg{width:23px}.fast-support-row__icon--violet{border-color:var(--color-violet);color:var(--color-violet)}.fast-support-row__icon--green{border-color:var(--color-green);color:var(--color-green)}.fast-end-button{margin-top:var(--space-3)}.fast-symptom-prompt,.fast-error{padding:var(--space-3);border-radius:var(--radius-control);background:var(--color-elevated);margin:0}.fast-symptom-prompt{border-left:4px solid var(--color-green)}.fast-error{border-left:4px solid var(--color-danger)}.clinician-plan,.symptom-check{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-surface);overflow:hidden}.clinician-plan>header p,.clinician-plan>header h2,.clinician-plan>header span,.symptom-check>header p,.symptom-check>header h2,.symptom-check>header span{margin:0;display:block}.clinician-plan>header p,.symptom-check>header p{color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.09em;font-weight:800}.clinician-plan>header h2,.symptom-check>header h2{margin-top:var(--space-1);font-size:var(--type-level-size)}.clinician-plan>header span,.symptom-check>header span{margin-top:var(--space-1);color:var(--color-muted);font-size:var(--type-caption-size)}.clinician-plan form,.clinician-plan__summary{gap:var(--space-3);margin-top:var(--space-4);display:grid}.clinician-plan form>label,.clinician-plan__thresholds label{gap:var(--space-1);min-width:0;color:var(--color-muted);font-size:var(--type-caption-size);font-weight:700;display:grid}.clinician-plan input,.clinician-plan textarea{width:100%;min-width:0;min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-bg);font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-weight:500}.clinician-plan textarea{resize:vertical;min-height:82px}.clinician-plan__thresholds{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.clinician-plan__buttons,.symptom-actions{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.clinician-plan__buttons button,.symptom-action{min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--color-cyan);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-elevated);cursor:pointer;text-align:center;font-weight:800;text-decoration:none}.clinician-plan__buttons button:first-child{color:var(--color-bg);background:var(--color-cyan)}.clinician-plan__buttons .clinician-plan__delete,.symptom-action--danger{border-color:var(--color-danger);color:var(--color-text);background:#ff6b6b29}.clinician-plan__summary dl{gap:var(--space-2);margin:0;display:grid}.clinician-plan__summary dl div{justify-content:space-between;gap:var(--space-3);display:flex}.clinician-plan__summary dt,.clinician-plan__summary p{color:var(--color-muted)}.clinician-plan__summary dd{overflow-wrap:anywhere;text-align:right;margin:0}.clinician-plan__confirm,.symptom-emergency,.symptom-response{margin-top:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-elevated)}.clinician-plan__confirm{z-index:20;max-width:none;padding:max(var(--space-6), calc((100vh - 420px) / 2)) max(var(--space-4), calc((100vw - 430px) / 2));background:#020b18f5;border:0;border-radius:0;align-content:center;display:grid;position:fixed;inset:0}.clinician-plan__confirm h3,.clinician-plan__confirm p,.symptom-emergency h3,.symptom-emergency p,.symptom-response h3{margin:0 0 var(--space-3)}.clinician-plan__message{margin:var(--space-3) 0 0;padding:var(--space-3);border-left:4px solid var(--color-green);background:var(--color-elevated)}.symptom-check fieldset{gap:var(--space-1);margin:var(--space-4) 0 0;border:0;padding:0;display:grid}.symptom-check legend{margin-bottom:var(--space-2);color:var(--color-muted);font-size:var(--type-caption-size)}.symptom-check fieldset label{min-height:var(--tap-min);align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;display:flex}.symptom-check input[type=checkbox]{width:22px;height:22px;accent-color:var(--color-cyan);flex:none}.symptom-emergency{border-color:var(--color-danger)}.symptom-emergency h3:focus,.symptom-response h3:focus{outline:3px solid var(--color-cyan);outline-offset:3px}.symptom-response>p{margin:0 0 var(--space-3);color:var(--color-muted)}.symptom-response>.symptom-action{width:100%}.symptom-care-plan dl{gap:var(--space-3);margin:0 0 var(--space-4);display:grid}.symptom-care-plan dl div{gap:var(--space-1);display:grid}.symptom-care-plan dt{color:var(--color-cyan);font-size:var(--type-caption-size);font-weight:800}.symptom-care-plan dd{overflow-wrap:anywhere;margin:0}.symptom-emergency small,.symptom-check__hint{margin:var(--space-3) 0 0;color:var(--color-muted);display:block}@media (width<=420px){.clinician-plan__thresholds{grid-template-columns:1fr}}.more-page{gap:var(--space-4);display:grid}.more-page>h1{margin-bottom:0}.glucose-section{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-surface);scroll-margin-top:var(--space-4);overflow:hidden}.glucose-section:focus{outline:3px solid var(--color-cyan);outline-offset:3px}.glucose-section>header p,.glucose-section>header h2,.glucose-section>header span{margin:0}.glucose-section>header p{color:var(--color-violet);font-size:var(--type-caption-size);letter-spacing:.09em;font-weight:800}.glucose-section>header h2{margin-top:var(--space-1);font-size:var(--type-level-size)}.glucose-section>header span{margin-top:var(--space-1);color:var(--color-muted);font-size:var(--type-caption-size);display:block}.glucose-quest{margin:var(--space-4) 0 0;padding:var(--space-3);border-left:4px solid var(--color-violet);background:var(--color-elevated);font-weight:700}.glucose-form{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.glucose-form label{gap:var(--space-1);min-width:0;color:var(--color-muted);font-size:var(--type-caption-size);font-weight:700;display:grid}.glucose-form input,.glucose-form select,.glucose-form textarea{width:100%;min-width:0;min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-bg);font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.glucose-form textarea{resize:vertical;min-height:78px}.glucose-form__note,.glucose-form__limits,.glucose-form>button,.glucose-form .glucose-message{grid-column:1/-1}.glucose-form__limits{color:var(--color-muted);font-size:var(--type-caption-size);margin:0}.glucose-form>button,.glucose-export{min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--color-violet);border-radius:var(--radius-control);color:var(--color-text);cursor:pointer;font:inherit;background:#9b5cff2e;font-weight:800}.glucose-form>button:disabled{cursor:wait;opacity:.7}.glucose-message{padding:var(--space-3);border-left:4px solid var(--color-green);background:var(--color-elevated);margin:0}.glucose-message--error{border-left-color:var(--color-danger)}.glucose-chart,.glucose-history{min-width:0;margin-top:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg);overflow:hidden}.glucose-chart>header,.glucose-history>header{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.glucose-chart h3,.glucose-history h3{font-size:var(--type-quest-size);margin:0}.glucose-history header span{color:var(--color-muted);font-size:var(--type-caption-size)}.glucose-chart__filters{justify-content:end;gap:var(--space-1);flex-wrap:wrap;display:flex}.glucose-chart__filters button{min-height:var(--tap-min);padding:var(--space-2);border:1px solid var(--color-border);color:var(--color-text);background:var(--color-elevated);cursor:pointer;border-radius:999px;font-weight:700}.glucose-chart__filters button[aria-pressed=true]{border-color:var(--color-cyan);box-shadow:inset 0 0 0 1px var(--color-cyan)}.glucose-chart__svg{width:100%;height:auto;padding:var(--space-2);display:block}.glucose-chart__svg line{stroke:var(--color-muted);stroke-width:1px}.glucose-chart__svg polyline{fill:none;stroke:var(--color-cyan);stroke-width:3px}.glucose-chart__svg circle{fill:var(--color-bg);stroke:var(--color-cyan);stroke-width:4px}.glucose-chart__svg text{fill:var(--color-text);font-size:11px;font-weight:700}.glucose-chart__sparse,.glucose-empty{padding:var(--space-4);color:var(--color-muted);margin:0}.glucose-chart__table{border-top:1px solid var(--color-border)}.glucose-chart__table summary{min-height:var(--tap-min);padding:var(--space-3);cursor:pointer;color:var(--color-cyan);font-weight:700}.glucose-chart__table table{border-collapse:collapse;width:100%;font-size:11px}.glucose-chart__table th,.glucose-chart__table td{padding:var(--space-2);border-top:1px solid var(--color-border);overflow-wrap:anywhere;text-align:left}.glucose-history ol{margin:0;padding:0;list-style:none}.glucose-history li{gap:var(--space-2) var(--space-3);padding:var(--space-3);grid-template-columns:minmax(100px,auto) minmax(0,1fr);display:grid}.glucose-history li+li{border-top:1px solid var(--color-border)}.glucose-history li>div{flex-direction:column;display:flex}.glucose-history li strong{font-size:var(--type-quest-size);font-variant-numeric:tabular-nums}.glucose-history li span,.glucose-history time,.glucose-history li p{color:var(--color-muted);font-size:var(--type-caption-size)}.glucose-history time{overflow-wrap:anywhere;text-align:right;align-self:center}.glucose-history li p{overflow-wrap:anywhere;grid-column:1/-1;margin:0}.glucose-export{width:100%;margin-top:var(--space-4)}@media (width<=420px){.glucose-form{grid-template-columns:1fr}.glucose-form__note,.glucose-form__limits,.glucose-form>button,.glucose-form .glucose-message{grid-column:1}.glucose-chart>header{flex-direction:column;align-items:start}.glucose-chart__filters{justify-content:start;width:100%}.glucose-history li{grid-template-columns:1fr}.glucose-history time{text-align:left;justify-self:start}}.body-section{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-surface);scroll-margin-top:var(--space-4);overflow:hidden}.body-section:focus{outline:3px solid var(--color-cyan);outline-offset:3px}.body-section>header p,.body-section>header h2,.body-section>header span{margin:0}.body-section>header p{color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.09em;font-weight:800}.body-section>header h2{margin-top:var(--space-1);font-size:var(--type-level-size)}.body-section>header span{margin-top:var(--space-1);color:var(--color-muted);font-size:var(--type-caption-size);display:block}.body-form{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.body-form label{gap:var(--space-1);min-width:0;color:var(--color-muted);font-size:var(--type-caption-size);font-weight:700;display:grid}.body-form input,.body-form textarea{width:100%;min-width:0;min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-bg);font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.body-form textarea{resize:vertical;min-height:78px}.body-form__note,.body-form__limits,.body-form__actions,.body-form .body-message{grid-column:1/-1}.body-form__limits{color:var(--color-muted);font-size:var(--type-caption-size);margin:0}.body-form__actions{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.body-form__actions button,.body-history__actions button,.body-delete-confirmation button{min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border:1px solid var(--color-cyan);border-radius:var(--radius-control);color:var(--color-text);cursor:pointer;font:inherit;background:#00c8ff24;font-weight:800}.body-form__actions button:disabled,.body-delete-confirmation button:disabled{cursor:wait;opacity:.7}.body-form__actions button+button,.body-delete-confirmation button+button{border-color:var(--color-border);background:var(--color-elevated)}.body-message{margin:var(--space-3) 0 0;padding:var(--space-3);border-left:4px solid var(--color-green);background:var(--color-elevated)}.body-message--error{border-left-color:var(--color-danger)}.body-progress{min-width:0;margin-top:var(--space-4)}.body-profile{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.body-profile div{min-width:0;padding:var(--space-3) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg);text-align:center}.body-profile dt{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800}.body-profile dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:14px;font-weight:800}.body-latest{gap:var(--space-1);margin-top:var(--space-3);padding:var(--space-3);border-left:4px solid var(--color-cyan);background:var(--color-elevated);flex-direction:column;display:flex}.body-latest span{color:var(--color-muted);font-size:var(--type-caption-size)}.body-trend,.body-history{min-width:0;margin-top:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg);overflow:hidden}.body-trend>header,.body-history>header{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.body-trend h3,.body-history h3{font-size:var(--type-quest-size);margin:0}.body-trend header span,.body-history header span{color:var(--color-muted);font-size:var(--type-caption-size)}.body-trend__method,.body-trend__empty{padding:var(--space-3);color:var(--color-muted);font-size:var(--type-caption-size);margin:0}.body-trend__method{border-bottom:1px solid var(--color-border)}.body-trend__empty{min-height:72px}.body-trend__svg{width:100%;height:auto;padding:var(--space-2);display:block}.body-trend__svg line{stroke:var(--color-muted);stroke-width:1px}.body-trend__svg polyline{fill:none;stroke:var(--color-cyan);stroke-width:3px}.body-trend__svg circle{fill:var(--color-bg);stroke:var(--color-cyan);stroke-width:4px}.body-trend__svg text{fill:var(--color-text);font-size:11px;font-weight:700}.body-trend__table{border-top:1px solid var(--color-border);min-width:0}.body-trend__table summary{min-height:var(--tap-min);padding:var(--space-3);cursor:pointer;color:var(--color-cyan);font-weight:700}.body-trend__table table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:10px}.body-trend__table th,.body-trend__table td{padding:var(--space-2);border-top:1px solid var(--color-border);overflow-wrap:anywhere;text-align:left}.body-history ol{margin:0;padding:0;list-style:none}.body-history li{gap:var(--space-2);padding:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.body-history li+li{border-top:1px solid var(--color-border)}.body-history li>div:first-child{flex-direction:column;min-width:0;display:flex}.body-history li strong{font-size:var(--type-quest-size);font-variant-numeric:tabular-nums}.body-history li span,.body-history time,.body-history li p{color:var(--color-muted);font-size:var(--type-caption-size)}.body-history li p{margin:var(--space-1) 0 0;overflow-wrap:anywhere}.body-history__actions{gap:var(--space-1);display:flex}.body-history__actions button:last-child,.body-delete-confirmation button:first-of-type{border-color:var(--color-danger);color:var(--color-text);background:#ff6b6b1f}.body-delete-confirmation{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-danger);border-radius:var(--radius-control);background:var(--color-elevated);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.body-delete-confirmation p{grid-column:1/-1;margin:0}@media (width<=460px){.body-form{grid-template-columns:1fr}.body-form__note,.body-form__limits,.body-form__actions,.body-form .body-message{grid-column:1}.body-profile dd{font-size:12px}.body-history li{grid-template-columns:1fr}.body-history__actions button{flex:1}}.fast-history{overflow:hidden}.fast-history>header{justify-content:space-between;align-items:end;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.fast-history header p,.fast-history header h2{margin:0}.fast-history header p{color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.09em;font-weight:800}.fast-history header h2{font-size:var(--type-level-size)}.fast-history header>span{max-width:145px;color:var(--color-muted);font-size:var(--type-caption-size);text-align:right}.fast-history__empty{padding:var(--space-6) var(--space-4);color:var(--color-muted);margin:0}.fast-history ol{margin:0;padding:0;list-style:none}.fast-history li{gap:var(--space-2);padding:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.fast-history li+li{border-top:1px solid var(--color-border)}.fast-history li>div{flex-direction:column;min-width:0;display:flex}.fast-history li strong{overflow-wrap:anywhere;font-size:var(--type-caption-size);font-variant-numeric:tabular-nums}.fast-history li span{color:var(--color-muted);text-transform:uppercase;font-size:10px}.fast-history li>p{margin:var(--space-1) 0 0;color:var(--color-muted);font-size:var(--type-caption-size);grid-column:1/-1}.fast-history li>.fast-history__met{color:var(--color-green)}.level-header{align-items:center;gap:var(--space-3);min-height:104px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-surface);grid-template-columns:76px minmax(0,1fr) 66px;display:grid}.level-badge{background:var(--color-cyan);width:72px;height:82px;color:var(--color-text);clip-path:polygon(50% 0,94% 24%,94% 76%,50% 100%,6% 76%,6% 24%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.level-badge:before{background:var(--color-elevated);clip-path:inherit;content:"";position:absolute;inset:4px}.level-badge span,.level-badge strong{position:relative}.level-badge span{letter-spacing:.08em;font-size:10px;font-weight:700}.level-badge strong{font-size:var(--type-metric-size);font-variant-numeric:tabular-nums;line-height:var(--type-metric-line)}.level-header__status{min-width:0}.level-header__status h2,.level-header__status p{margin:0}.level-header__status p span{color:var(--color-violet)}.level-header__status h2{color:var(--color-cyan);font-size:var(--type-level-size);font-weight:var(--type-level-weight);line-height:var(--type-level-line);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;overflow:hidden}.level-header__status p{margin-top:var(--space-1);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.level-header__status progress{width:100%;height:8px;margin-top:var(--space-2);background:var(--color-border);border:0;border-radius:999px;display:block;overflow:hidden}.level-header__status progress::-webkit-progress-bar{background:var(--color-border)}.level-header__status progress::-webkit-progress-value{background:var(--color-violet);transition:width var(--motion-fill)}.level-header__status progress::-moz-progress-bar{background:var(--color-violet)}.truck-avatar{object-fit:cover;border-radius:50%;width:66px;height:66px}.route-map{height:188px;margin:var(--space-3) calc(var(--space-4) * -1) var(--space-3);background-image:url(/game/highway-route.png);background-position:50% 47%;background-size:cover;position:relative;overflow:hidden}.route-map__checkpoints{right:var(--space-3);bottom:var(--space-3);left:var(--space-3);grid-template-columns:repeat(4,1fr);align-items:start;margin:0;padding:0;list-style:none;display:grid;position:absolute}.route-map__checkpoints:before{background:var(--color-border);content:"";height:3px;position:absolute;top:20px;left:10%;right:10%}.checkpoint{z-index:1;min-width:0;color:var(--color-muted);flex-direction:column;align-items:center;display:flex;position:relative}.checkpoint svg{background:var(--color-bg);border:2px solid;border-radius:50%;width:42px;height:42px;padding:9px}.checkpoint small{margin-top:var(--space-1);text-align:center;font-size:9px;font-weight:700;line-height:1.1}.checkpoint--done{color:var(--color-green)}.checkpoint--current{color:var(--color-cyan);animation:current-route-pulse var(--motion-route) infinite}@keyframes current-route-pulse{50%{filter:drop-shadow(0 0 6px var(--color-cyan))}}.quest-section h2{margin:0 0 var(--space-2);color:var(--color-muted);font-size:var(--type-caption-size);font-weight:var(--type-caption-weight);letter-spacing:.09em;line-height:var(--type-caption-line)}.quest-list{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);overflow:hidden}.primary-action{transition:background-color var(--motion-press), transform var(--motion-press);text-decoration:none}.primary-action:active{transform:scale(.99)}.quest-row{align-items:center;gap:var(--space-3);min-height:86px;padding:var(--space-2) var(--space-3);grid-template-columns:50px minmax(0,1fr) auto 20px;display:grid}.quest-row+.quest-row{border-top:1px solid var(--color-border)}.quest-row:hover{background:var(--color-elevated)}.quest-row:focus{background:var(--color-elevated);box-shadow:inset 0 0 0 3px var(--color-cyan)}.progress-ring{--ring-color:var(--color-cyan);flex:none;place-items:center;width:50px;height:50px;display:inline-grid;position:relative}.progress-ring svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:4px}.progress-ring__track{stroke:var(--color-border)}.progress-ring__fill{stroke:var(--ring-color);stroke-linecap:round;transition:stroke-dasharray var(--motion-fill)}.progress-ring__fill--empty{stroke-linecap:butt}.progress-ring__icon{color:var(--ring-color)}.progress-ring__icon svg{width:22px;height:22px;position:static;transform:none}.quest-row__copy{flex-direction:column;min-width:0;display:flex}.quest-row__copy strong{font-size:var(--type-quest-size);font-weight:var(--type-quest-weight);line-height:var(--type-quest-line)}.quest-row__value{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.quest-row__copy small{color:var(--color-muted);font-size:var(--type-caption-size);line-height:var(--type-caption-line);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quest-row__xp{color:var(--color-violet);white-space:nowrap;font-weight:800}.quest-row__chevron{width:20px;color:var(--color-muted)}.reward-preview{align-items:center;gap:var(--space-3);min-height:112px;margin-top:var(--space-4);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);grid-template-columns:76px minmax(0,1fr) 54px;display:grid}.reward-preview>img{object-fit:cover;width:76px;height:76px}.reward-preview__copy p,.reward-preview__copy h2{margin:0}.reward-preview__copy p{color:var(--color-violet);font-size:var(--type-caption-size);font-weight:var(--type-caption-weight);letter-spacing:.06em}.reward-preview__copy h2{font-size:var(--type-quest-size);font-weight:var(--type-quest-weight)}.reward-preview__copy span{color:var(--color-muted);font-size:var(--type-caption-size)}.reward-preview__ring{width:58px;height:58px}.reward-preview__metric{color:var(--color-text);font-variant-numeric:tabular-nums;flex-direction:column;align-items:center;font-size:15px;font-weight:800;line-height:1;display:flex}.reward-preview__metric small{color:var(--color-violet);margin-top:2px;font-size:9px}.primary-navigation{z-index:10;width:100%;max-width:var(--content-max);min-height:calc(104px + env(safe-area-inset-bottom));padding:var(--space-2) var(--space-2) env(safe-area-inset-bottom);border-top:1px solid var(--color-border);background:var(--color-bg);grid-template-columns:repeat(5,1fr);margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 30px #020b18eb}.primary-navigation a{border-radius:var(--radius-control);color:var(--color-muted);font-size:var(--type-nav-size);font-weight:var(--type-nav-weight);line-height:var(--type-nav-line);flex-direction:column;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex;position:relative}.primary-navigation a:after{content:"";background:0 0;border-radius:3px;height:3px;position:absolute;bottom:0;left:22%;right:22%}.primary-navigation a[aria-current=page]{color:var(--color-cyan)}.primary-navigation a[aria-current=page]:after{background:var(--color-cyan)}.primary-navigation svg{width:28px;height:28px}.reminder-settings{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);display:grid}.service-connection,.more-page>section[aria-labelledby=data-controls-heading]{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);display:grid}.service-connection header p,.service-connection header h2,.service-connection>p,.more-page>section[aria-labelledby=data-controls-heading] h2,.more-page>section[aria-labelledby=data-controls-heading] p{margin:0}.service-connection header p{color:var(--color-cyan);font-size:var(--type-caption-size);letter-spacing:.09em;font-weight:800}.service-connection form{gap:var(--space-2);display:grid}.service-connection input,.service-connection button,.more-page>section[aria-labelledby=data-controls-heading] input,.more-page>section[aria-labelledby=data-controls-heading] button{width:100%;min-height:var(--tap-min)}.service-connection input,.more-page>section[aria-labelledby=data-controls-heading] input{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-bg);font:inherit}.service-connection button,.more-page>section[aria-labelledby=data-controls-heading] button{padding:var(--space-2) var(--space-3);border:1px solid var(--color-cyan);border-radius:var(--radius-control);color:var(--color-text);cursor:pointer;background:#00c8ff24;font-weight:800}.service-connection__status{padding:var(--space-2) var(--space-3);border-left:4px solid var(--color-muted);background:var(--color-elevated);font-weight:800}.service-connection__status--connected{border-left-color:var(--color-green);color:var(--color-green)}.service-connection__status--expired,.service-connection__status--offline{border-left-color:var(--color-amber);color:var(--color-amber)}.reminder-settings header p,.reminder-settings header h2,.reminder-settings p{margin:0}.reminder-settings button,.reminder-settings input[type=time]{min-height:44px}.reminder-settings fieldset{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);margin:0;display:grid}.reminder-weekdays{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.reminder-settings label:has(>input[type=checkbox]){align-items:center;gap:var(--space-2);min-height:44px;display:flex}.reminder-settings input[type=checkbox]{width:44px;min-width:44px;height:44px;margin:0}@media (width<=359px){.app-main{padding-right:var(--space-3);padding-left:var(--space-3)}.route-map{margin-right:calc(var(--space-3) * -1);margin-left:calc(var(--space-3) * -1)}.level-header{gap:var(--space-2);padding:var(--space-2);grid-template-columns:64px minmax(0,1fr) 52px}.level-badge{width:62px;height:72px}.truck-avatar{width:52px;height:52px}.level-header__status h2{font-size:17px}.level-header__status p{font-size:14px}.quest-row{gap:var(--space-2);padding-right:var(--space-2);padding-left:var(--space-2);grid-template-columns:44px minmax(0,1fr) auto 16px}.progress-ring{width:44px;height:44px}.quest-row__xp{font-size:13px}.manual-food__form,.manual-food__nutrients,.food-confirmation__editor,.multi-food-item__editor{grid-template-columns:1fr}.field,.field--wide{grid-column:1}.food-daily{grid-template-columns:36px 1fr}.food-daily__remaining{text-align:left;grid-column:2}.food-history__actions{grid-template-columns:44px 1fr 44px}.food-history__copy-date{grid-area:2/1/auto/3}}@media (width>=700px){.app-main,.primary-navigation{border-right:1px solid var(--color-border);border-left:1px solid var(--color-border)}}@media (width>=900px){.app-main:has(.food-review){max-width:960px}.food-review{align-items:start;gap:var(--space-4);grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);display:grid}.food-review__label-preview,.food-review .food-confirmation{margin-top:var(--space-4)}.food-review>.food-text-button{grid-column:1/-1;margin-top:0}}
