:root{--color-background: #0e1116;--color-surface: #171c23;--color-card: #1e2630;--color-text-primary: #f2f4f7;--color-text-secondary: #96a0ae;--color-border: #2c3642;--color-calories: #e5a94a;--color-protein: #d96c63;--color-plants: #6fa97a;--color-training: #5d84e8;--color-clean-streaks: #8c72e8;--color-progression: #69c7ae;--color-warning: #e58a4a;--color-exceeded: #d85c5c;--app-max-width: 430px;--safe-bottom: max(env(safe-area-inset-bottom), 27px);--safe-top-extra: max(0px, calc(env(safe-area-inset-top) - 29px) );--safe-bottom-extra: max(0px, calc(env(safe-area-inset-bottom) - 27px) );--nav-height: calc(48px + var(--safe-bottom));color-scheme:dark}*{box-sizing:border-box}html{min-width:320px;min-height:100%;overflow-x:hidden;background:#080b0f}body{min-width:320px;min-height:100%;margin:0;overflow-x:hidden;background:#080b0f;color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,a{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #8be5ce;outline-offset:2px}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-frame{position:relative;width:100%;max-width:var(--app-max-width);min-height:100dvh;margin:0 auto;overflow:hidden;background:radial-gradient(circle at 50% 20%,rgb(27 58 80 / 20%),transparent 34%),var(--color-background);box-shadow:0 0 70px #00000073}.app-content{min-height:100dvh;animation:screen-in .22s ease-out both}.app-loading,.app-fatal-error{display:flex;width:100%;max-width:var(--app-max-width);min-height:100dvh;align-items:center;justify-content:center;flex-direction:column;margin:0 auto;padding:calc(28px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 34%,rgb(52 105 127 / 24%),transparent 31%),var(--color-background);text-align:center;animation:screen-in .22s ease-out both}.app-loading img{border-radius:14px;box-shadow:0 12px 34px #0000004d}.app-loading strong,.app-fatal-error>span{margin-top:15px;color:#c9daee;font-size:11px;font-weight:760;letter-spacing:.24em}.app-loading span{margin-top:8px;color:#8fa0b3;font-size:12px}.app-fatal-error h1{margin:11px 0 0;font-size:29px;line-height:1.05}.app-fatal-error p{max-width:31ch;margin:10px 0 20px;color:#9cabbc;font-size:14px;line-height:1.45}.app-fatal-error button{min-height:48px;padding:0 22px;border:0;border-radius:8px;background:#72d9bd;color:#07161b;font-weight:780}.app-error-banner{position:fixed;z-index:80;top:max(env(safe-area-inset-top),8px);left:50%;width:min(calc(100% - 24px),406px);padding:9px 12px;transform:translate(-50%);border:1px solid rgb(229 138 74 / 65%);border-radius:8px;background:#36231cf5;color:#ffd8be;font-size:11px;line-height:1.35;box-shadow:0 10px 32px #00000061}.icon{display:block;flex:0 0 auto}.icon--mono{display:inline-block;background:currentColor;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.bottom-nav{position:fixed;z-index:20;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:var(--app-max-width);min-height:var(--nav-height);margin:0 auto;padding:0 7px var(--safe-bottom);border-top:1px solid var(--color-border);background:#0e1922f0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-nav__item{position:relative;display:flex;min-width:0;min-height:44px;align-items:center;justify-content:center;flex-direction:column;gap:3px;color:#aebbcf;font-size:10px;line-height:1;transition:color .18s ease}.bottom-nav__item.is-active{color:#71dbc0}.bottom-nav__indicator{width:5px;height:5px;border-radius:999px;background:transparent}.bottom-nav__item.is-active .bottom-nav__indicator{background:currentColor}.home-screen{min-height:calc(100dvh - var(--nav-height))}.home-header{position:relative;z-index:4;padding:calc(13px + var(--safe-top-extra)) 21px 14px;background:linear-gradient(180deg,#0d1821,#0d1821f0 80%,#0d1821cc)}.home-header__meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px;color:#c7d8ee;font-size:9px;font-weight:700;letter-spacing:.28em}.home-header__meta span:last-child{color:var(--color-text-secondary);font-size:8px;letter-spacing:.14em}.home-header__title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.home-header h1{margin:0;font-size:clamp(28px,8vw,36px);line-height:1;letter-spacing:-.035em}.level-pill{display:inline-flex;min-height:24px;align-items:center;padding:0 11px;border:1px solid #71dcc0;border-radius:999px;color:#e6fff8;font-size:9px;font-weight:750;letter-spacing:.08em;white-space:nowrap}.xp-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px;margin-top:11px}.xp-row strong{color:#c7d3e3;font-size:9px;font-weight:650;white-space:nowrap}.xp-track{height:6px;overflow:hidden;border-radius:999px;background:#2b3948}.xp-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#74dfc4,#76d7c1);transform-origin:left center;animation:progress-fill .36s cubic-bezier(.2,.7,.25,1) both}.hero{position:relative;margin-top:16px;height:min(calc(39.6dvh - 5px - var(--safe-top-extra) - var(--safe-bottom-extra)),86.5vw);max-height:372px;min-height:max(278px,calc(313px - var(--safe-top-extra) - var(--safe-bottom-extra)));overflow:hidden;isolation:isolate;background:#0f1d28}.hero__ambient{position:absolute;inset:0;background:linear-gradient(90deg,#0b1620 0%,transparent 28%,transparent 72%,#0b1620 100%),radial-gradient(circle at 50% 52%,#1f425c,#102637 42%,#0c1721 78%)}.hero__canvas{position:absolute;z-index:1;top:0;left:50%;width:auto;height:100%;aspect-ratio:2 / 3;transform:translate(-50%)}.hero__layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:0 0}.character-composite__subject,.character-composite__shadow{opacity:1;transition:opacity .28s ease}.character-composite__incoming{opacity:0}.character-composite__incoming.is-visible{opacity:1}.hero-metric{position:absolute;z-index:2;top:41%;display:flex;width:78px;align-items:center;flex-direction:column;text-align:center}.hero-metric--current{left:2px}.hero-metric--goal{right:2px}.hero-metric span{color:#c1cbda;font-size:9px;letter-spacing:.03em}.hero-metric strong{margin-top:3px;font-size:26px;line-height:1;letter-spacing:-.04em}.hero-metric small{margin-top:3px;font-size:11px;font-weight:650}.hero__caption{position:absolute;z-index:2;right:0;bottom:5px;left:0;margin:0;color:#b6c5d9;font-size:9px;text-align:center}.home-stack{position:relative;z-index:3;display:grid;gap:6px;padding:0 21px 13px;background:linear-gradient(180deg,rgb(10 23 32 / 84%),var(--color-background) 36%),var(--color-background)}.streak-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:-1px}.streak-card,.calorie-card,.quest-card,.week-card{border:1px solid #304253;background:linear-gradient(135deg,#192a37f5,#101d27f5);box-shadow:inset 0 1px #ffffff04}.streak-card{position:relative;display:flex;min-width:0;min-height:48px;align-items:center;gap:8px;padding:5px 9px;border-radius:6px}.streak-card__copy{display:flex;min-width:0;flex-direction:column}.streak-card__copy span{overflow:hidden;color:#becbdd;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.streak-card__copy strong{font-size:16px;line-height:1.15}.streak-card__check{position:absolute;top:5px;right:5px}.calorie-card{display:flex;min-height:49px;align-items:center;gap:10px;padding:6px 10px;border-radius:6px}.calorie-card__copy,.calorie-card__value{display:flex;min-width:0;flex-direction:column}.calorie-card__copy{flex:1}.calorie-card__copy span{color:#c3cfdd;font-size:11px}.calorie-card small{overflow:hidden;margin-top:2px;color:#7f8d9f;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.calorie-card__value{align-items:flex-end;text-align:right}.calorie-card__value strong{font-size:16px;line-height:1;white-space:nowrap}.section-heading{display:flex;min-height:24px;align-items:end;justify-content:space-between;padding:1px 1px 2px}.section-heading--week{min-height:22px}.section-heading h2,.section-heading strong{margin:0;font-size:14px;line-height:1.1}.week-report-hint{color:#7fdcc4;font-size:10px;font-weight:650}.section-heading strong{color:#c5d5e9;font-weight:550}.quest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.quest-card{display:flex;min-width:0;min-height:60px;justify-content:space-between;flex-direction:column;padding:8px 10px 7px;border-radius:6px;color:#c5d1e1;font-size:10px;text-align:center}.quest-card__icon-row{display:flex;min-width:0;align-items:center;justify-content:space-between}.quest-card__open{width:23px;height:23px;border:2px solid #68788b;border-radius:50%}.week-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-height:51px;align-items:center;border-radius:6px}.week-card--link{transition:border-color .18s ease,filter .18s ease}.week-card--link:active{border-color:#4d796e;filter:brightness(1.08)}.week-metric{display:flex;min-width:0;align-items:center;gap:7px;padding:6px 9px}.week-metric+.week-metric{border-left:1px solid #3d4b5a}.week-metric div{display:flex;min-width:0;flex-direction:column}.week-metric span{overflow:hidden;color:#aab7c8;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.week-metric strong{font-size:17px;line-height:1.05}.primary-cta{display:flex;min-height:45px;align-items:center;justify-content:center;margin-top:1px;border-radius:7px;background:linear-gradient(100deg,#6ed9bd,#7ae3c8);color:#07161b;font-size:16px;font-weight:800;transition:filter .18s ease,transform .18s ease}.primary-cta:active{transform:scale(.985);filter:brightness(.92)}.daily-log-screen{min-height:100dvh;padding:calc(13px + var(--safe-top-extra)) 21px calc(18px + var(--safe-bottom-extra));background:radial-gradient(circle at 52% 18%,rgb(29 59 79 / 25%),transparent 35%),radial-gradient(circle at 50% 74%,rgb(20 49 67 / 16%),transparent 43%),var(--color-background)}.daily-log__brand-row{display:flex;min-height:36px;align-items:center;gap:12px;color:#c8d9ee;font-size:11px;font-weight:750;letter-spacing:.27em}.daily-log__back{display:grid;width:36px;height:36px;margin-left:-10px;place-items:center;color:#bed3ee;border-radius:50%}.daily-log__back:active{background:#ffffff0f}.daily-log__header{margin-top:10px}.daily-log__header h1{margin:0;font-size:32px;line-height:1.05;letter-spacing:-.035em}.daily-log__header p{margin:7px 0 0;color:#aebed2;font-size:16px}.daily-log__form{margin-top:21px}.daily-log__calorie-label{display:flex;min-height:31px;align-items:center;gap:10px}.daily-log__calorie-label label{font-size:17px;font-weight:760}.daily-log__calorie-input{display:grid;grid-template-columns:1fr auto;min-height:65px;align-items:center;gap:12px;margin-top:7px;padding:4px 14px 4px 16px;border:1px solid #34485b;border-radius:8px;background:linear-gradient(135deg,#162733f0,#0f1c26f5);box-shadow:inset 0 1px #ffffff04}.daily-log__calorie-input:focus-within{border-color:#557187}.daily-log__calorie-input input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--color-text-primary);font-size:36px;font-weight:770;line-height:1;letter-spacing:.035em;appearance:textfield}.daily-log__calorie-input input::-webkit-inner-spin-button,.daily-log__calorie-input input::-webkit-outer-spin-button{margin:0;appearance:none}.daily-log__calorie-input input::placeholder{color:#607082}.daily-log__calorie-input span{color:#aab8ca;font-size:16px}.daily-log__form h2{margin:19px 0 8px;font-size:17px;line-height:1.2}.daily-log__toggles{display:grid;gap:7px}.daily-toggle{display:grid;grid-template-columns:36px minmax(0,1fr) 136px;min-width:0;min-height:64px;align-items:center;gap:10px;margin:0;padding:7px 8px 7px 12px;border:1px solid #304253;border-radius:8px;background:linear-gradient(135deg,#182935f5,#0f1c26f5);box-shadow:inset 0 1px #ffffff04}.daily-toggle__copy{display:flex;min-width:0;flex-direction:column}.daily-toggle__copy strong{overflow:hidden;font-size:15px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.daily-toggle__copy span{overflow:hidden;margin-top:4px;color:#94a5b9;font-size:10px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.daily-toggle__control{display:grid;grid-template-columns:repeat(2,1fr);height:44px;overflow:hidden;border:1px solid #34495c;border-radius:9px}.daily-toggle__control button{min-width:0;padding:0;border:0;background:transparent;color:#9eafc3;font-size:15px;cursor:pointer}.daily-toggle__control button+button{border-left:1px solid #34495c}.daily-toggle__control button.is-selected{background:linear-gradient(135deg,#31475a,#263a4c);color:#f4f7fb;font-weight:720;box-shadow:inset 0 0 0 1px #83a0b838}.daily-log__error{margin:10px 2px -7px;color:#e6a37d;font-size:11px;line-height:1.35}.daily-log__save{display:flex;width:100%;min-height:49px;align-items:center;justify-content:center;margin-top:20px;padding:0 18px;border:0;border-radius:8px;background:linear-gradient(100deg,#6ed9bd,#7ae3c8);color:#07161b;font-size:17px;font-weight:800;cursor:pointer}.daily-log__save:active{transform:scale(.985);filter:brightness(.92)}.daily-log__save:disabled{cursor:default;opacity:.58}.weekly-checkpoint-screen,.weekly-report-screen{min-height:100dvh;padding:calc(25px + var(--safe-top-extra)) 21px calc(24px + var(--safe-bottom));background:radial-gradient(circle at 82% 5%,rgb(41 89 116 / 20%),transparent 31%),linear-gradient(180deg,#0b151d,#0a141b)}.weekly-brand-row{display:flex;min-height:34px;align-items:center;gap:15px;color:#bfd3ed;font-size:11px;font-weight:720;letter-spacing:.27em}.weekly-back{display:grid;width:34px;height:34px;place-items:center;color:#c4d8f0}.weekly-checkpoint-header,.weekly-report-header{margin-top:20px}.weekly-checkpoint-header>span{color:#79dbc1;font-size:9px;font-weight:750;letter-spacing:.2em}.weekly-checkpoint-header h1,.weekly-report-header h1{margin:5px 0 2px;font-size:clamp(29px,8.2vw,36px);line-height:1.04;letter-spacing:-.045em}.weekly-checkpoint-header p,.weekly-report-header p{margin:0;color:#abc0db;font-size:14px}.weekly-checkpoint-form{display:grid;gap:11px;margin-top:25px}.weekly-checkpoint-intro,.weekly-measurement{border:1px solid #304557;border-radius:10px;background:linear-gradient(135deg,#192b38f5,#0e1b25f5)}.weekly-checkpoint-intro{display:flex;min-height:83px;align-items:center;gap:14px;padding:14px 16px}.weekly-checkpoint-intro h2{margin:0;font-size:18px}.weekly-checkpoint-intro p{max-width:29ch;margin:5px 0 0;color:#91a3b7;font-size:11px;line-height:1.35}.weekly-measurement{display:grid;grid-template-columns:36px minmax(0,1fr) 132px;min-height:72px;align-items:center;gap:10px;padding:9px 13px;cursor:text}.weekly-measurement>span{color:#cad6e5;font-size:15px;font-weight:620}.weekly-measurement>div{display:flex;height:47px;align-items:center;gap:7px;padding:0 12px;border:1px solid #42586a;border-radius:7px;background:#0d1821}.weekly-measurement input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:#f4f7fa;font-size:21px;font-weight:720;text-align:right}.weekly-measurement input::placeholder{color:#637181}.weekly-measurement small{color:#a9bad0;font-size:12px}.weekly-checkpoint-error{margin:0;color:#ee9696;font-size:12px;text-align:center}.weekly-checkpoint-form>button,.weekly-report-continue{display:flex;min-height:51px;align-items:center;justify-content:center;border:0;border-radius:8px;background:linear-gradient(100deg,#6ed9bd,#7ae3c8);color:#07161b;font-size:17px;font-weight:800;cursor:pointer}.weekly-checkpoint-form>button{margin-top:7px}.weekly-checkpoint-form>button:disabled{cursor:default;opacity:.55}.weekly-report-screen{padding-top:calc(19px + var(--safe-top-extra))}.weekly-report-header{margin-top:12px}.weekly-rank{display:flex;align-items:center;flex-direction:column;margin-top:-1px}.weekly-rank>span{margin-bottom:4px;color:#b8cce5;font-size:9px;font-weight:650;letter-spacing:.18em}.weekly-rank-badge{position:relative;display:flex;width:104px;height:104px;align-items:center;justify-content:center;flex-direction:column;clip-path:polygon(24% 0,76% 0,100% 24%,100% 76%,76% 100%,24% 100%,0 76%,0 24%);background:linear-gradient(145deg,#abb4bd,#697580 72%);filter:drop-shadow(0 8px 14px rgb(0 0 0 / 35%))}.weekly-rank-badge:before{position:absolute;z-index:-1;inset:4px;clip-path:inherit;background:linear-gradient(145deg,#22313d,#131e27);content:""}.weekly-rank-badge strong{color:#72dec2;font-size:55px;line-height:.88}.weekly-rank-badge .icon{margin-top:7px;color:#71ddc1}.weekly-rank h2{margin:6px 0 8px;font-size:20px}.weekly-measurement-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.weekly-measurement-results article,.weekly-report-metrics,.weekly-report-stage,.weekly-report-xp{border:1px solid #304557;background:linear-gradient(135deg,#182a37f0,#0e1b25f0)}.weekly-measurement-results article{min-width:0;min-height:98px;padding:10px 13px;border-radius:8px}.weekly-measurement-results article>span{color:#b4c8e0;font-size:11px}.weekly-measurement-results article>strong{display:block;margin-top:2px;font-size:27px;line-height:1;white-space:nowrap}.weekly-measurement-results article strong small{color:#b8cae1;font-size:14px;font-weight:520}.weekly-measurement-results article p,.weekly-measurement-results article em{display:block;overflow:hidden;margin:7px 0 0;color:#9db0c7;font-size:9px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.weekly-measurement-results article em{margin-top:3px;color:#bdcad8}.weekly-measurement-results article em.is-positive{color:#6fe0c1}.weekly-report-section-title{margin:10px 2px 5px;font-size:18px}.weekly-report-metrics{overflow:hidden;border-radius:8px}.weekly-report-metric{display:grid;grid-template-columns:32px minmax(0,1fr) auto;min-height:37px;align-items:center;gap:9px;padding:3px 12px}.weekly-report-metric+.weekly-report-metric{border-top:1px solid #314250}.weekly-report-metric span{color:#bbcae0;font-size:11px}.weekly-report-metric strong{font-size:13px;white-space:nowrap}.weekly-report-stage,.weekly-report-xp{display:flex;min-height:51px;align-items:center;gap:12px;margin-top:8px;padding:7px 13px;border-radius:8px}.weekly-report-stage div,.weekly-report-xp div{display:flex;flex-direction:column}.weekly-report-stage span,.weekly-report-xp span{color:#aebfd3;font-size:9px;letter-spacing:.08em}.weekly-report-stage strong{margin-top:2px;font-size:14px}.weekly-report-xp strong{margin-top:1px;font-size:25px;line-height:1}.weekly-report-edit{display:block;margin:8px 0 6px;color:#afc2d8;font-size:11px;text-align:center}.weekly-report-continue{min-height:47px}.weekly-report-screen--empty{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.weekly-report-screen--empty>span{color:#bdd1e9;font-size:10px;font-weight:720;letter-spacing:.25em}.weekly-report-screen--empty h1{margin:12px 0 4px}.weekly-report-screen--empty p{margin:0 0 22px;color:var(--color-text-secondary)}.weekly-report-screen--empty .weekly-report-continue{width:min(100%,300px)}.day-complete{position:fixed;z-index:40;inset:0;display:grid;width:100%;max-width:var(--app-max-width);margin:0 auto;padding:24px;place-items:center;background:#050c11a8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:reward-in .22s ease-out both}.day-complete__card{display:flex;width:min(100%,288px);min-height:154px;align-items:center;justify-content:center;flex-direction:column;border:1px solid #416858;border-radius:13px;background:radial-gradient(circle at 50% 0%,rgb(105 199 174 / 20%),transparent 55%),linear-gradient(145deg,#1a2d31,#111c24);box-shadow:0 22px 70px #0000007a,inset 0 1px #ffffff0a}.day-complete__card span{color:#b8e8da;font-size:10px;font-weight:780;letter-spacing:.18em}.day-complete__card strong{margin-top:8px;color:#75dec2;font-size:35px;line-height:1}.day-complete__card small{margin-top:12px;color:#8fa3b1;font-size:11px}.character-screen{min-height:calc(100dvh - var(--nav-height));padding-bottom:calc(var(--nav-height) + 17px);background:radial-gradient(circle at 50% 14%,rgb(36 81 108 / 18%),transparent 33%),linear-gradient(180deg,#0c161f,#0a141b)}.character-header{padding:calc(19px + var(--safe-top-extra)) 21px 7px}.character-header>span{color:#c5d8ef;font-size:10px;font-weight:740;letter-spacing:.28em}.character-header>div{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-top:3px}.character-header h1{margin:0;font-size:clamp(31px,8.7vw,37px);line-height:1.03;letter-spacing:-.045em}.character-header p{margin:0 0 3px;color:#b9cbe3;font-size:13px;white-space:nowrap}.character-scene{position:relative;height:min(292px,75vw);min-height:278px;overflow:hidden;isolation:isolate;background:linear-gradient(90deg,#0a151e 0%,transparent 29%,transparent 71%,#0a151e 100%),radial-gradient(circle at 50% 51%,#20425a,#102536 42%,#0b1721 79%)}.character-scene__canvas{position:absolute;top:3px;left:50%;height:calc(100% - 3px);aspect-ratio:2 / 3;transform:translate(-50%)}.character-scene__layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:0 0}.character-scene__caption{position:absolute;z-index:3;right:0;bottom:0;left:0;display:flex;min-height:51px;align-items:center;justify-content:end;flex-direction:column;padding:0 16px 7px;background:linear-gradient(180deg,transparent,rgb(8 18 25 / 86%));text-align:center}.character-scene__caption strong{font-size:13px;font-weight:610}.character-scene__caption span{margin-top:3px;color:#9fb3ca;font-size:10px}.character-stats,.character-wardrobe{padding-right:21px;padding-left:21px}.character-stats h2,.character-section-heading h2{margin:0;font-size:17px;line-height:1.15}.character-stats h2{margin:0}.character-stats__heading{display:flex;min-height:30px;align-items:end;justify-content:space-between;gap:10px;margin:5px 0 4px}.character-stats__heading small{margin-bottom:2px;color:#798c9f;font-size:8px;white-space:nowrap}.character-stats__card{overflow:hidden;padding:3px 10px;border:1px solid #304558;border-radius:7px;background:linear-gradient(135deg,#162733eb,#0e1b24f0)}.character-stat{display:grid;grid-template-columns:92px minmax(0,1fr) 25px;min-height:20px;align-items:center;gap:7px}.character-stat+.character-stat{border-top:1px solid rgb(47 66 81 / 67%)}.character-stat>span{color:#c4d4e8;font-size:10px}.character-stat>strong{font-size:11px;font-weight:590;text-align:right}.character-stat__track{height:6px;overflow:hidden;border-radius:999px;background:#2a3b4c}.character-stat__track i{display:block;height:100%;border-radius:inherit;transform-origin:left center;animation:progress-fill .32s cubic-bezier(.2,.7,.25,1) both}.character-stat__track .is-physique,.character-stat__track .is-vitality{background:linear-gradient(90deg,#72d7bf,#69c7ae)}.character-stat__track .is-strength{background:linear-gradient(90deg,#69a0f4,#5d84e8)}.character-stat__track .is-nutrition{background:linear-gradient(90deg,#f0887e,#d96c63)}.character-stat__track .is-discipline{background:linear-gradient(90deg,#a584ef,#8c72e8)}.character-section-heading{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:12px;margin-top:5px}.character-section-heading p{margin:2px 0 0;color:#8396aa;font-size:9px}.character-section-heading>strong{color:#c4d8ee;font-size:15px;font-weight:560}.wardrobe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.wardrobe-item{position:relative;display:flex;min-width:0;min-height:76px;align-items:center;flex-direction:column;padding:5px 3px 6px;overflow:hidden;border:1px solid #304557;border-radius:7px;background:radial-gradient(circle at 50% 38%,rgb(47 70 87 / 35%),transparent 57%),linear-gradient(145deg,#172833f5,#0e1b24f5);color:#d5dfeb;cursor:pointer}.wardrobe-item:disabled{cursor:default}.wardrobe-item.is-selected{border-color:#69d8bc;box-shadow:inset 0 0 0 1px #69d8bc3d}.wardrobe-item:focus{outline:0}.wardrobe-item:focus-visible{outline:2px solid #8be5ce;outline-offset:1px}.wardrobe-item>img:first-child{width:51px;height:51px;margin:-2px 0 -1px;object-fit:contain}.wardrobe-item.is-locked>img:first-child{opacity:.38;filter:grayscale(1) brightness(.7)}.wardrobe-item>span{overflow:hidden;width:100%;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.wardrobe-item__state{position:absolute;z-index:2;top:5px;right:5px;color:#9db1c8;filter:drop-shadow(0 2px 4px rgb(0 0 0 / 45%))}.wardrobe-item>small{position:absolute;right:4px;bottom:3px;padding:1px 4px;border-radius:999px;background:#69c7ae;color:#092018;font-size:7px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.wardrobe-note{margin:7px 2px 0;color:#8ea1b6;font-size:9px;line-height:1.35;text-align:center}.wardrobe-note--error{color:#e6a37d}.character-achievements{display:grid;grid-template-columns:25px minmax(0,1fr) auto 18px;min-height:40px;align-items:center;gap:9px;margin:6px 21px 0;padding:0 13px;border:1px solid #69d4b8;border-radius:8px;color:#eef7f4}.character-achievements>span{font-size:14px;font-weight:720}.character-achievements>small{color:#a9bdd4;font-size:11px}.character-data-link{display:flex;min-height:34px;align-items:center;justify-content:space-between;margin:5px 21px 0;padding:0 13px;border:1px solid #304557;border-radius:8px;color:#b8c9dc}.character-data-link span{font-size:11px;font-weight:630}.calorie-card.is-exceeded{border-color:#d85c5cb3}.calorie-card.is-exceeded .calorie-card__value strong{color:#ed8b8b}.achievements-screen{min-height:calc(100dvh - var(--nav-height));padding:calc(29px + var(--safe-top-extra)) 21px calc(var(--nav-height) + 18px);background:radial-gradient(circle at 50% 2%,rgb(36 79 104 / 18%),transparent 31%),linear-gradient(180deg,#0c151d,#0b151d)}.achievements-header>span{color:#c4d7ef;font-size:10px;font-weight:720;letter-spacing:.27em}.achievements-header h1{margin:6px 0 1px;font-size:clamp(31px,8.7vw,37px);line-height:1.04;letter-spacing:-.045em}.achievements-header p{margin:0;color:#b7cae3;font-size:14px;letter-spacing:.02em}.achievement-filters{display:grid;grid-template-columns:repeat(3,1fr);min-height:42px;margin-top:14px;overflow:hidden;border:1px solid #314558;border-radius:10px;background:#0d1b25b8}.achievement-filters button{border:0;border-right:1px solid #2a3c4d;background:transparent;color:#c2d3e8;font-size:13px;cursor:pointer}.achievement-filters button:last-child{border-right:0}.achievement-filters button.is-active{background:linear-gradient(135deg,#394c5e,#2c3d4d);color:#f4f7fb}.achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.achievement-card{position:relative;display:flex;min-width:0;min-height:133px;align-items:center;flex-direction:column;padding:7px 4px 8px;border:1px solid #263b4c;border-radius:8px;background:radial-gradient(circle at 50% 20%,rgb(45 66 83 / 25%),transparent 54%),#0d1a23b8;animation:achievement-reveal .26s cubic-bezier(.2,.7,.25,1) both}.achievement-card:nth-child(2n){animation-delay:10ms}.achievement-card:nth-child(3n){animation-delay:20ms}.achievement-card:nth-child(4n){animation-delay:30ms}.achievement-card__badge{position:relative;width:min(100%,91px);aspect-ratio:1}.achievement-card__badge>img:first-child{display:block;width:100%;height:100%}.achievement-card__check{position:absolute;top:1px;right:-1px;filter:drop-shadow(0 2px 4px rgb(0 0 0 / 40%))}.achievement-card h2{display:flex;min-height:31px;align-items:center;justify-content:center;margin:-1px 0 0;color:#e5ecf5;font-size:11px;font-weight:520;line-height:1.2;text-align:center;white-space:pre-line}.achievements-empty{margin:42px 0;color:var(--color-text-secondary);font-size:14px;text-align:center}.progress-screen{min-height:calc(100dvh - var(--nav-height));padding:calc(24px + var(--safe-top-extra)) 21px calc(var(--nav-height) + 18px);background:radial-gradient(circle at 86% 2%,rgb(46 91 119 / 18%),transparent 30%),linear-gradient(180deg,#0c151d,#0b1218)}.progress-header>span{color:#b8c7da;font-size:10px;font-weight:730;letter-spacing:.28em}.progress-header h1{margin:6px 0 0;font-size:clamp(32px,9vw,38px);line-height:1;letter-spacing:-.045em}.progress-ranges{display:grid;grid-template-columns:repeat(3,1fr);min-height:40px;margin-top:17px;overflow:hidden;border:1px solid #304354;border-radius:10px;background:#121d26}.progress-ranges button{border:0;border-right:1px solid #2b3a49;background:transparent;color:#9facbd;font-size:13px;cursor:pointer}.progress-ranges button:last-child{border-right:0}.progress-ranges button.is-active{background:linear-gradient(145deg,#344657,#293a49);color:#f0f4f8;box-shadow:inset 0 0 0 1px #68849a33}.progress-period{min-height:20px;margin:10px 1px 7px;color:#aab9cd;font-size:13px;line-height:20px}.progress-measurements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.progress-measurement-card,.progress-calories,.progress-consistency{border:1px solid #2d4050;background:linear-gradient(145deg,#1d2a36fa,#18242ffa);box-shadow:inset 0 1px #ffffff04}.progress-measurement-card{min-width:0;min-height:153px;padding:10px 11px 8px;border-radius:9px}.progress-measurement-card__title{display:flex;align-items:center;gap:6px;color:#aab7c9;font-size:12px}.progress-measurement-card__value{display:flex;min-height:38px;align-items:baseline;justify-content:space-between;gap:5px;margin-top:2px}.progress-measurement-card__value strong{font-size:27px;line-height:1;letter-spacing:-.035em}.progress-measurement-card__value small{overflow:hidden;color:#9eacbe;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.progress-measurement-card__value small.is-positive{color:#71d4bb}.progress-line-chart{min-height:75px;margin-top:2px}.progress-line-chart svg{display:block;width:100%;height:58px;overflow:visible}.progress-line-chart svg line{stroke:#354656;stroke-width:1}.progress-line-chart svg path{fill:none;stroke:#69c7ae;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6;stroke-dasharray:1;stroke-dashoffset:1;animation:line-reveal .36s ease-out forwards}.progress-line-chart svg circle{fill:#69c7ae}.progress-line-chart__labels{display:flex;justify-content:space-between;margin-top:-3px;color:#8f9dae;font-size:9px}.progress-line-chart--empty{display:grid;place-items:center;color:#798a9d;font-size:10px}.progress-calories{min-height:144px;margin-top:9px;padding:10px 13px 8px;border-radius:9px}.progress-calories__heading{display:flex;min-height:38px;align-items:flex-start;justify-content:space-between;gap:12px}.progress-calories__heading>div:first-child{display:flex;align-items:center;gap:7px}.progress-calories__heading h2{margin:1px 0 0;font-size:17px}.progress-calories__heading>div:last-child{display:flex;align-items:flex-end;flex-direction:column}.progress-calories__heading strong{font-size:22px;line-height:.95;letter-spacing:.02em}.progress-calories__heading span{margin-top:3px;color:#9eacbd;font-size:9px}.progress-bars{display:flex;height:72px;align-items:stretch;gap:4px;margin-top:3px;padding-top:5px;border-top:1px solid #354555}.progress-bar{display:flex;min-width:0;flex:1;align-items:center;justify-content:flex-end;flex-direction:column;gap:4px}.progress-bar i{display:block;width:min(74%,22px);min-height:3px;border-radius:2px 2px 0 0;background:var(--color-calories);transform-origin:center bottom;animation:bar-reveal .34s cubic-bezier(.2,.7,.25,1) both}.progress-bar i.is-empty{border:1px solid #4b5968;background:transparent}.progress-bar span{min-height:10px;color:#8f9dac;font-size:8px;line-height:10px;white-space:nowrap}.progress-bars--cycles{justify-content:flex-end;gap:9px;padding-right:7px;padding-left:7px}.progress-bars--cycles .progress-bar{max-width:58px}.progress-bars--cycles .progress-bar i{width:min(100%,34px)}.progress-calories>p{overflow:hidden;margin:1px 0 0;color:#8898aa;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.progress-section-title{display:flex;min-height:33px;align-items:end;justify-content:space-between;padding:0 1px 6px}.progress-section-title h2{margin:0;font-size:19px}.progress-section-title span{color:#8292a5;font-size:9px}.progress-consistency{overflow:hidden;border-radius:9px}.progress-consistency__axis,.progress-consistency__row{display:grid;grid-template-columns:24px 86px minmax(0,1fr) 54px;align-items:center;gap:6px;padding:0 10px}.progress-consistency__axis{min-height:23px}.progress-consistency__axis>div,.progress-consistency__marks{display:flex;align-items:center;justify-content:space-between}.progress-consistency__axis i{width:13px;color:#8e9baa;font-size:8px;font-style:normal;text-align:center}.progress-consistency__row{min-height:39px;border-top:1px solid #30404f}.progress-consistency__row>span{overflow:hidden;color:#e0e6ee;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.progress-consistency__marks i,.progress-legend i{display:block;width:11px;height:11px;border-radius:50%}.progress-consistency__marks i.is-complete{border:1px solid currentColor;background:currentColor}.progress-consistency__marks i.is-incomplete{border:1px solid #647181;background:#3b4652}.progress-consistency__marks i.is-missing{border:1px solid #586777;background:transparent}.progress-consistency__row.is-training{color:var(--color-training)}.progress-consistency__row.is-protein{color:var(--color-protein)}.progress-consistency__row.is-plants{color:var(--color-plants)}.progress-consistency__row.is-clean{color:var(--color-clean-streaks)}.progress-consistency__summary{display:flex;min-width:0;align-items:flex-end;flex-direction:column;color:#f0f3f7}.progress-consistency__summary strong{font-size:12px;line-height:1;white-space:nowrap}.progress-consistency__summary small{overflow:hidden;max-width:54px;margin-top:3px;color:#8d9bad;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.progress-legend{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:25px;padding:4px 2px 0;color:#8493a5;font-size:8px}.progress-legend span{display:flex;align-items:center;gap:4px;white-space:nowrap}.progress-legend i.is-complete{background:#8493a5}.progress-legend i.is-incomplete{border:1px solid #647181;background:#3b4652}.progress-legend i.is-missing{border:1px solid #586777}.progress-empty-note{margin:4px 0 0;color:#8292a4;font-size:9px;line-height:1.35;text-align:center}.shell-screen{min-height:calc(100dvh - var(--nav-height));padding:calc(26px + var(--safe-top-extra)) 21px 28px;background:radial-gradient(circle at 85% 3%,rgb(52 107 137 / 24%),transparent 32%),var(--color-background)}.shell-screen__eyebrow{color:#bcd0e7;font-size:10px;font-weight:700;letter-spacing:.24em}.shell-screen h1{margin:7px 0 28px;font-size:34px;letter-spacing:-.04em}.shell-screen__card{min-height:170px;padding:20px;border:1px solid var(--color-border);border-radius:12px;background:linear-gradient(135deg,var(--color-card),var(--color-surface))}.shell-screen__card span{color:var(--color-progression);font-size:10px;font-weight:750;letter-spacing:.16em}.shell-screen__card p{max-width:31ch;margin:14px 0 0;color:var(--color-text-secondary);font-size:15px;line-height:1.55}.first-run-screen,.settings-screen,.cycle-complete-screen{min-height:100dvh;padding:calc(18px + var(--safe-top-extra)) 21px calc(24px + var(--safe-bottom));background:radial-gradient(circle at 84% 4%,rgb(42 91 116 / 21%),transparent 32%),linear-gradient(180deg,#0b151d,#0a1219)}.first-run-screen{width:100%;max-width:var(--app-max-width);margin:0 auto;background:radial-gradient(circle at 50% 1%,rgb(63 130 137 / 24%),transparent 35%),linear-gradient(180deg,#0c171f,#091118)}.first-run-header{display:flex;min-height:50px;align-items:center;gap:11px}.first-run-header img{border-radius:11px;box-shadow:0 8px 22px #0000004d}.first-run-header div{display:flex;flex-direction:column;gap:4px}.first-run-header span{color:#d5e3f4;font-size:11px;font-weight:780;letter-spacing:.24em}.first-run-header small{color:#6dd8bc;font-size:8px;font-weight:760;letter-spacing:.22em}.first-run-intro{margin-top:17px}.first-run-intro>span{color:#72d9bd;font-size:9px;font-weight:760;letter-spacing:.19em}.first-run-intro h1{margin:5px 0;font-size:clamp(31px,9vw,38px);line-height:1;letter-spacing:-.045em}.first-run-intro p{max-width:35ch;margin:0;color:#a6b8cb;font-size:12px;line-height:1.42}.profile-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:19px}.profile-field{display:flex;min-width:0;flex-direction:column;gap:5px}.profile-field--wide,.profile-settings-submit{grid-column:1 / -1}.profile-field>span{color:#9eb0c5;font-size:9px;font-weight:630;letter-spacing:.025em}.profile-field>div,.profile-field>input{display:flex;min-width:0;min-height:43px;align-items:center;border:1px solid #30485a;border-radius:8px;background:#0c1922e0;color:#edf4fb}.profile-field>input,.profile-field>div input{width:100%;min-width:0;height:41px;padding:0 12px;border:0;outline:0;background:transparent;color:#edf4fb;font-size:15px;font-weight:620}.profile-field>input[type=date]{color-scheme:dark}.profile-field>div small{padding-right:11px;color:#71869a;font-size:9px}.profile-settings-submit,.cycle-next-cta{min-height:49px;margin-top:2px;border:0;border-radius:9px;background:linear-gradient(100deg,#6ed9bd,#7ae3c8);color:#07161b;font-size:14px;font-weight:760;cursor:pointer;transition:filter .18s ease,transform .18s ease}.profile-settings-submit:active,.cycle-next-cta:active{transform:scale(.988);filter:brightness(.95)}.profile-settings-submit:disabled,.cycle-next-cta:disabled{cursor:default;opacity:.55}.first-run-privacy{margin:10px 0 0;color:#708399;font-size:9px;text-align:center}.settings-brand-row{display:flex;min-height:36px;align-items:center;gap:12px;color:#c8d9ee;font-size:11px;font-weight:750;letter-spacing:.27em}.settings-back{display:grid;width:36px;height:36px;margin-left:-10px;place-items:center;color:#bed3ee;border-radius:50%}.settings-header{margin-top:18px}.settings-header>span,.backup-confirm__card>span{color:#72d9bd;font-size:9px;font-weight:760;letter-spacing:.2em}.settings-header h1{margin:5px 0 4px;font-size:clamp(31px,9vw,38px);line-height:1;letter-spacing:-.045em}.settings-header p{max-width:34ch;margin:0;color:#a6b7cb;font-size:13px;line-height:1.4}.settings-profile-card{margin-top:20px;padding:14px;border:1px solid #304557;border-radius:10px;background:linear-gradient(145deg,#192b37f5,#0e1b25f5)}.settings-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.settings-card-title h2{margin:0;font-size:17px}.settings-card-title p{margin:4px 0 0;color:#8fa1b6;font-size:9px}.settings-card-title>span{padding:4px 7px;border:1px solid #416055;border-radius:999px;color:#7bddc4;font-size:7px;font-weight:760;letter-spacing:.12em}.settings-profile-card .profile-settings-form{margin-top:13px}.settings-profile-card .profile-field>div,.settings-profile-card .profile-field>input{min-height:41px}.settings-profile-card .profile-field>input,.settings-profile-card .profile-field>div input{height:39px;font-size:14px}.settings-card,.settings-install{border:1px solid #304557;border-radius:10px;background:linear-gradient(145deg,#192b37f5,#0e1b25f5);box-shadow:inset 0 1px #ffffff04}.settings-card{margin-top:10px;padding:15px}.settings-card__heading{display:flex;align-items:flex-start;gap:12px}.settings-card__heading h2{margin:1px 0 0;font-size:18px}.settings-card__heading p{margin:5px 0 0;color:#8fa1b6;font-size:10px;line-height:1.4}.settings-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.settings-actions button,.backup-confirm__actions button{min-height:47px;padding:0 10px;border:1px solid #4e756c;border-radius:8px;background:#182d30;color:#dff8f1;font-size:13px;font-weight:720;cursor:pointer;transition:filter .18s ease,transform .18s ease,border-color .18s ease}.settings-actions button:first-child,.backup-confirm__actions button:last-child{border-color:transparent;background:linear-gradient(100deg,#6ed9bd,#7ae3c8);color:#07161b}.settings-actions button:active,.backup-confirm__actions button:active{transform:scale(.985);filter:brightness(.94)}.settings-actions button:disabled,.backup-confirm__actions button:disabled{cursor:default;opacity:.55}.settings-install{margin-top:9px;padding:13px 15px}.settings-install strong{font-size:13px}.settings-install p{margin:5px 0 0;color:#8fa1b5;font-size:10px;line-height:1.45}.settings-feedback{margin:12px 2px 0;color:#72d9bd;font-size:11px;line-height:1.4;text-align:center}.settings-feedback.is-error{color:#e6a37d}.cycle-complete-screen{display:flex;flex-direction:column;background:radial-gradient(circle at 50% 4%,rgb(86 160 146 / 24%),transparent 31%),linear-gradient(180deg,#0d1820,#091118)}.cycle-complete-header{text-align:center}.cycle-complete-header>span{color:#76ddc2;font-size:9px;font-weight:800;letter-spacing:.22em}.cycle-complete-header h1{margin:7px 0 4px;font-size:clamp(31px,9vw,38px);line-height:1;letter-spacing:-.045em}.cycle-complete-header p{margin:0;color:#91a5bb;font-size:11px}.cycle-result-card{position:relative;margin-top:16px;padding:15px 15px 13px;overflow:hidden;border:1px solid #496c60;border-radius:12px;background:radial-gradient(circle at 86% 0%,rgb(110 217 189 / 19%),transparent 38%),linear-gradient(145deg,#1a3032,#101e27);box-shadow:0 14px 38px #0000003d}.cycle-result-card__seal{position:absolute;top:11px;right:13px;opacity:.9;color:#75d9bf}.cycle-result-card>span{color:#89a3ae;font-size:8px;font-weight:750;letter-spacing:.16em}.cycle-weight-row{display:grid;grid-template-columns:1fr 22px 1fr;align-items:end;gap:10px;margin-top:8px}.cycle-weight-row>div{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:4px}.cycle-weight-row small{grid-column:1 / -1;color:#87a0b1;font-size:8px;font-weight:720;letter-spacing:.12em}.cycle-weight-row strong{font-size:31px;line-height:1.05;letter-spacing:-.04em}.cycle-weight-row span{color:#9aafc1;font-size:10px}.cycle-result-card>p{margin:7px 0 0;color:#78dbc2;font-size:10px;font-weight:650}.cycle-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:9px}.cycle-summary-grid article{display:grid;grid-template-columns:27px minmax(0,1fr);min-height:57px;align-items:center;column-gap:8px;padding:7px 10px;border:1px solid #2d4353;border-radius:9px;background:#111f29e0}.cycle-summary-grid article>.icon{grid-row:1 / 3}.cycle-summary-grid article span{align-self:end;color:#8499ae;font-size:8px}.cycle-summary-grid article strong{align-self:start;overflow:hidden;font-size:12px;font-weight:670;text-overflow:ellipsis;white-space:nowrap}.cycle-streak-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.cycle-streak-row>div{display:grid;grid-template-columns:34px minmax(0,1fr);min-height:52px;align-items:center;column-gap:8px;padding:7px 10px;border:1px solid #334b59;border-radius:9px;background:#12212be0}.cycle-streak-row .icon{grid-row:1 / 3}.cycle-streak-row span{align-self:end;color:#8fa4b9;font-size:8px}.cycle-streak-row strong{align-self:start;font-size:12px}.cycle-next-cta{width:100%;margin-top:12px}.cycle-complete-note{max-width:35ch;margin:9px auto 0;color:#718497;font-size:9px;line-height:1.4;text-align:center}.backup-confirm{position:fixed;z-index:90;inset:0;display:grid;width:100%;max-width:var(--app-max-width);margin:0 auto;padding:calc(20px + env(safe-area-inset-top)) 21px calc(20px + env(safe-area-inset-bottom));place-items:center;background:#040a0fb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:reward-in .22s ease-out both}.backup-confirm__card{width:min(100%,342px);padding:19px;border:1px solid #416858;border-radius:13px;background:radial-gradient(circle at 50% 0%,rgb(105 199 174 / 18%),transparent 50%),linear-gradient(145deg,#1a2d31,#111c24);box-shadow:0 22px 70px #0000007a}.backup-confirm__card h2{margin:8px 0 0;font-size:22px;line-height:1.12}.backup-confirm__card>p{overflow:hidden;margin:7px 0 0;color:#92a5b8;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.backup-confirm__card dl{margin:14px 0;border-top:1px solid #334953;border-bottom:1px solid #334953}.backup-confirm__card dl div{display:flex;min-height:35px;align-items:center;justify-content:space-between;gap:12px}.backup-confirm__card dl div+div{border-top:1px solid #2c3e48}.backup-confirm__card dt{color:#9eafc2;font-size:10px}.backup-confirm__card dd{margin:0;font-size:11px;font-weight:670}.backup-confirm__card>small{display:block;color:#91a4b6;font-size:9px;line-height:1.45}.backup-confirm__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}@keyframes screen-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes reward-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes progress-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes bar-reveal{0%{transform:scaleY(0);opacity:.65}to{transform:scaleY(1);opacity:1}}@keyframes line-reveal{to{stroke-dashoffset:0}}@keyframes achievement-reveal{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.day-complete__card strong,.weekly-report-xp strong{animation:xp-reveal .26s cubic-bezier(.2,.7,.25,1) 80ms both}@keyframes xp-reveal{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media(max-width:360px){.home-header,.home-stack,.achievements-screen,.character-header,.character-stats,.character-wardrobe,.progress-screen,.shell-screen{padding-right:15px;padding-left:15px}.character-achievements,.character-data-link{margin-right:15px;margin-left:15px}.settings-screen,.first-run-screen,.cycle-complete-screen{padding-right:15px;padding-left:15px}.calorie-card__copy small{display:none}.week-metric{gap:4px;padding-right:5px;padding-left:5px}}@media(max-width:385px){.daily-log-screen,.weekly-checkpoint-screen,.weekly-report-screen{padding-right:15px;padding-left:15px}.daily-toggle{grid-template-columns:34px minmax(0,1fr) 128px;gap:8px;padding-left:10px}.weekly-measurement{grid-template-columns:34px minmax(0,1fr) 122px;gap:7px;padding-right:10px;padding-left:10px}}@media(max-height:830px)and (min-width:361px){.home-stack{gap:3px;padding-bottom:5px}.section-heading{min-height:23px}.section-heading--week{min-height:21px}.progress-screen{padding-top:calc(18px + var(--safe-top-extra))}.progress-ranges{margin-top:12px}.progress-period{margin-top:7px;margin-bottom:5px}.progress-measurement-card{min-height:145px}.progress-calories{min-height:137px;margin-top:7px}.progress-bars{height:66px}.progress-consistency__row{min-height:37px}}@media(min-width:410px)and (max-width:430px){.home-stack{gap:8px;padding-bottom:14px}.streak-card{min-height:52px}.calorie-card{min-height:53px}.section-heading{min-height:26px}.section-heading--week{min-height:24px}.quest-card{min-height:64px}.week-card{min-height:55px}.primary-cta{min-height:48px}}@media(min-width:431px){.app-frame{border-right:1px solid #1c2630;border-left:1px solid #1c2630}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
