:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#20251d;background:#dfe4d8;font-synthesis:none;text-rendering:optimizeLegibility;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1)}@property --liquid-hue{syntax: "<number>"; inherits: true; initial-value: 82;}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-height:100%;margin:0;overflow:hidden}button,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}body{min-width:320px;min-height:100dvh;background:radial-gradient(circle at 50% 0,rgba(213,236,161,.46),transparent 44%),#dfe4d8}html[data-theme=dark] body{background:radial-gradient(circle at 50% 0,rgba(115,151,58,.18),transparent 42%),#0f120e}.app-shell{--ink: #20251d;--muted: #747c6f;--line: rgba(41, 52, 36, .09);--panel: rgba(255, 255, 255, .73);position:relative;width:min(100%,440px);height:100dvh;min-height:100dvh;margin:0 auto;overflow:hidden;color:var(--ink);background:radial-gradient(circle at 50% 23%,rgba(204,235,134,.22),transparent 32%),linear-gradient(180deg,#fafbf6,#f1f4ec)}.app-shell[data-theme=dark]{--ink: #f2f5eb;--muted: rgba(240, 244, 232, .56);--line: rgba(255, 255, 255, .08);--panel: rgba(255, 255, 255, .05);background:radial-gradient(circle at 50% 23%,rgba(151,195,75,.14),transparent 35%),linear-gradient(180deg,#1a1e18,#111410)}.app-scroll{height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:max(22px,env(safe-area-inset-top)) 16px calc(112px + env(safe-area-inset-bottom))}.app-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-header>div:first-child{view-transition-name:protocol-header}.app-header p{margin:0 0 3px;color:var(--muted);font-size:10px;font-weight:780;letter-spacing:.08em;text-transform:uppercase}.app-header h1{margin:0;font-size:27px;line-height:1;letter-spacing:-.055em}.header-actions{display:flex;align-items:center;gap:7px}.icon-button,.level-button{min-height:40px;border:1px solid var(--line);color:var(--ink);background:var(--panel);box-shadow:0 7px 20px #2d3a240f;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.icon-button{display:grid;width:40px;place-items:center;padding:0;border-radius:14px}.level-button{display:flex;align-items:center;gap:8px;padding:0 11px 0 7px;border-radius:14px}.level-button>span:not(.growth-icon){display:grid;width:29px;height:29px;place-items:center;border-radius:10px;background:#cdf08552;overflow:hidden}.level-button strong{overflow:hidden;max-width:78px;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.icon-button:active,.level-button:active{transform:scale(.96)}.icon-button.is-active{border-color:#7ca43b47;background:#cdeb9238}.app-shell[data-theme=dark] .icon-button.is-active{border-color:#c9e99433;background:#c9e9941a}.week-calendar-layer{position:fixed;z-index:28;inset:0;width:min(100%,440px);margin:0 auto;visibility:hidden;pointer-events:none;transition:visibility 0s linear .14s}.week-calendar-layer[data-open=true]{visibility:visible;pointer-events:auto;transition-delay:0s}.week-calendar-backdrop{position:absolute;inset:0;border:0;background:#181e1500;opacity:0;cursor:default;transition:opacity .14s ease}.week-calendar-layer[data-open=true] .week-calendar-backdrop{opacity:1;background:#181e1514}.week-calendar-popover{position:absolute;top:calc(max(22px,env(safe-area-inset-top)) + 52px);right:14px;left:14px;padding:12px 12px 9px;border:1px solid var(--line);border-radius:22px;color:var(--ink);background:#fafbf6f0;box-shadow:0 22px 56px #232d1d38;opacity:0;transform:translate3d(0,-5px,0) scale(.97);transform-origin:calc(100% - 120px) 0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:transform .18s var(--ease-out),opacity .15s ease-out}.week-calendar-layer[data-open=true] .week-calendar-popover{opacity:1;transform:translateZ(0) scale(1)}.app-shell[data-theme=dark] .week-calendar-popover{background:#1d221bf2;box-shadow:0 22px 58px #00000057}.week-calendar-popover>header{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 8px}.week-calendar-popover>header span,.week-calendar-popover>header small,.week-calendar-popover>header strong{display:block}.week-calendar-popover>header small{color:var(--muted);font-size:8px;font-weight:780;letter-spacing:.08em;text-transform:uppercase}.week-calendar-popover>header strong{margin-top:2px;font-size:13px}.week-calendar-popover>header>button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:50%;color:var(--muted);background:#57664914;cursor:pointer;font-size:20px;transition:transform .14s var(--ease-out),background-color .16s ease}.week-calendar-popover>header>button:active{transform:scale(.94)}.week-calendar-popover .week-strip{margin-top:0;padding:8px 4px 2px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.week-calendar-popover .week-day{min-height:57px}.emoji{display:block;object-fit:contain}.view-content{view-transition-name:protocol-view}.app-shell[data-native-view-transitions=false] .view-content.is-forward{animation:view-in-forward .26s var(--ease-out) both}.app-shell[data-native-view-transitions=false] .view-content.is-back{animation:view-in-back .26s var(--ease-out) both}::view-transition-group(protocol-header),::view-transition-group(protocol-view){animation-duration:.26s;animation-timing-function:var(--ease-out)}html[data-view-direction=forward]::view-transition-old(protocol-header),html[data-view-direction=forward]::view-transition-old(protocol-view){animation:view-out-forward .18s var(--ease-out) both}html[data-view-direction=forward]::view-transition-new(protocol-header),html[data-view-direction=forward]::view-transition-new(protocol-view){animation:view-in-forward .26s var(--ease-out) both}html[data-view-direction=back]::view-transition-old(protocol-header),html[data-view-direction=back]::view-transition-old(protocol-view){animation:view-out-back .18s var(--ease-out) both}html[data-view-direction=back]::view-transition-new(protocol-header),html[data-view-direction=back]::view-transition-new(protocol-view){animation:view-in-back .26s var(--ease-out) both}.energy-stage{display:grid;justify-items:center;margin-top:16px}.energy-orb{--orb-size: 220px;--fill: 60%;--liquid-hue: 82;position:relative;display:grid;width:var(--orb-size);height:var(--orb-size);place-items:center;overflow:hidden;padding:0;border:1px solid rgba(255,255,255,.88);border-radius:50%;color:#293124;background:#ebefe5c7;box-shadow:inset 18px 16px 28px #ffffff91,inset -22px -22px 38px #25341e2b,0 27px 65px hsla(var(--liquid-hue),48%,42%,.18),0 13px 33px #2c3a2321;cursor:pointer;isolation:isolate;transition:--liquid-hue var(--liquid-transition-duration, .76s) var(--ease-in-out),transform .16s var(--ease-out),box-shadow .22s ease}.app-shell[data-theme=dark] .energy-orb{color:#f2f5eb;background:#494f43ad;box-shadow:inset 18px 16px 28px #ffffff2b,inset -22px -22px 38px #00000040,0 27px 65px hsla(var(--liquid-hue),50%,42%,.22),0 13px 33px #00000057}.energy-orb:active{transform:scale(.975)}.energy-liquid{position:absolute;z-index:-2;right:-7%;bottom:-2%;left:-7%;height:var(--fill);min-height:0;background:linear-gradient(180deg,hsl(var(--liquid-hue) 67% 69%),hsl(var(--liquid-hue) 52% 48%));opacity:.82;transition:height var(--liquid-transition-duration, .76s) var(--ease-in-out)}.energy-liquid:before,.energy-liquid:after{content:"";position:absolute;top:-14px;left:-8%;width:116%;height:30px;border-radius:47%;background:hsl(var(--liquid-hue) 70% 75% / .78);animation:liquid-drift-a 6.2s linear infinite}.energy-liquid:after{top:-10px;left:-14%;background:hsl(var(--liquid-hue) 45% 48% / .24);animation:liquid-drift-b 8s linear infinite reverse}.energy-liquid>span{position:absolute;inset:14% 12% 8%;border-radius:45%;background:radial-gradient(circle at 38% 32%,rgba(255,255,255,.34),transparent 35%);filter:blur(5px);animation:caustic 7s var(--ease-in-out) infinite alternate}.energy-action-effect{--action-hue: 82;--pour-impact-y: clamp(36%, calc(100% - var(--fill)), 76%);position:absolute;z-index:1;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none}.energy-action-effect.is-meal{--action-hue: 42}.energy-action-effect.is-movement{--action-hue: 92}.energy-action-effect.is-recovery{--action-hue: 270}.energy-pour-vessel{position:absolute;z-index:2;top:1%;left:52%;width:38%;filter:drop-shadow(0 8px 11px rgba(33,43,26,.2));opacity:0;transform:translate3d(15px,-10px,0) rotate(5deg) scale(.94);transform-origin:58% 54%;animation:energy-pour-vessel-life 2.2s var(--ease-in-out) both}.energy-pour-vessel svg{display:block;width:100%;overflow:visible}.energy-pour-body,.energy-pour-spout{fill:hsl(var(--action-hue) 24% 95% / .88);stroke:hsl(var(--action-hue) 28% 35% / .58);stroke-width:2;stroke-linejoin:round}.energy-pour-handle{fill:none;stroke:hsl(var(--action-hue) 28% 42% / .7);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.energy-pour-liquid{fill:hsl(var(--action-hue) 76% 62% / .88)}.energy-pour-rim{fill:none;stroke:hsl(var(--action-hue) 35% 32% / .66);stroke-width:2.4;stroke-linecap:round}.energy-pour-glint{fill:none;stroke:#ffffffd1;stroke-width:3;stroke-linecap:round}.energy-pour-stream{position:absolute;z-index:1;top:27%;left:54%;width:6px;height:calc(var(--pour-impact-y) - 27%);min-height:18px;border-radius:999px 999px 60% 60%;background:linear-gradient(90deg,hsl(var(--action-hue) 76% 55% / .84),hsl(var(--action-hue) 92% 84% / .98) 44%,hsl(var(--action-hue) 72% 57% / .88));box-shadow:0 0 10px hsl(var(--action-hue) 86% 66% / .58);opacity:0;transform:translate3d(-50%,-4px,0) scaleX(.22) scaleY(.18);transform-origin:50% 0;animation:energy-pour-stream-life 1.55s var(--ease-in-out) .33s both}.energy-pour-stream:after{content:"";position:absolute;inset:4% 1px 3%;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.68),transparent 46%)}.energy-pour-impact{position:absolute;z-index:1;top:var(--pour-impact-y);left:54%;width:86px;height:24px;transform:translate3d(-50%,-50%,0)}.energy-pour-impact i{position:absolute;inset:3px 5px;border:2px solid hsl(var(--action-hue) 88% 81% / .78);border-radius:50%;opacity:0;transform:scaleX(.7);animation:energy-pour-ripple .88s var(--ease-out) .78s both}.energy-pour-impact i:nth-child(2){inset:7px 18px;animation-delay:.96s}.energy-pour-impact b{position:absolute;top:4px;left:50%;width:6px;height:9px;border-radius:55% 45% 60% 40%;background:hsl(var(--action-hue) 88% 78% / .94);box-shadow:0 0 7px hsl(var(--action-hue) 80% 67% / .54);opacity:0;transform:translate3d(-50%,2px,0) rotate(8deg);animation:energy-pour-droplet .62s var(--ease-out) .76s both}.energy-pour-impact b:nth-of-type(2){animation-delay:.9s;--drop-x: -22px;--drop-y: -13px}.energy-pour-impact b:nth-of-type(3){animation-delay:1.01s;--drop-x: 20px;--drop-y: -10px}.energy-action-badge{position:absolute;bottom:14%;left:50%;display:flex;align-items:center;gap:5px;padding:5px 8px 5px 5px;border:1px solid rgba(255,255,255,.58);border-radius:999px;color:#2b3525;background:#fbfdf6d1;box-shadow:0 8px 24px #2f3e2524;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transform:translate3d(-50%,7px,0) scale(.96);animation:energy-action-badge-life 1.75s var(--ease-out) .56s both}.energy-action-badge strong{font-size:8px;line-height:1;white-space:nowrap}.app-shell[data-theme=dark] .energy-action-badge{border-color:#ffffff24;color:#eff6e8;background:#171d14c2;box-shadow:0 9px 26px #0000004d}.energy-orb.is-receiving{animation:energy-orb-receive 1.45s var(--ease-out) .52s both}.energy-orb.is-receiving .energy-liquid:before{animation:liquid-impact-a 1.5s var(--ease-in-out) .7s both}.energy-orb.is-receiving .energy-liquid:after{animation:liquid-impact-b 1.58s var(--ease-in-out) .76s both}.energy-glass{position:absolute;z-index:-1;inset:0;border-radius:inherit;background:radial-gradient(ellipse at 29% 20%,rgba(255,255,255,.78) 0 4%,transparent 8%),radial-gradient(ellipse at 72% 77%,transparent 48%,rgba(255,255,255,.18) 67%,transparent 72%);box-shadow:inset 0 0 0 2px #ffffff57}.energy-copy{position:relative;z-index:2;display:grid;justify-items:center;text-shadow:0 1px 0 rgba(255,255,255,.34)}.app-shell[data-theme=dark] .energy-copy{text-shadow:0 1px 4px rgba(0,0,0,.38)}.energy-copy small{font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.energy-copy strong{margin-top:6px;font-size:34px;line-height:1;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.energy-copy span{margin-top:7px;font-size:8px;font-weight:750;opacity:.65}.energy-delta{position:absolute;top:28%;right:18%;padding:5px 7px;border:1px solid rgba(255,255,255,.45);border-radius:999px;color:inherit;background:#ffffff47;box-shadow:0 5px 13px #2936221a;font-size:10px;font-style:normal;font-weight:850;animation:energy-delta-in .18s var(--ease-out) both}.app-shell[data-theme=dark] .energy-delta{border-color:#ffffff24;background:#10130e3d}.energy-range{display:flex;width:202px;justify-content:space-between;margin-top:7px;color:var(--muted);font-size:9px;font-weight:740}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-top:20px;padding:11px 8px 8px;border:1px solid var(--line);border-radius:21px;background:var(--panel);box-shadow:0 13px 30px #303e260f}.week-day{display:grid;min-width:0;min-height:59px;justify-items:center;padding:0;border:0;color:var(--muted);background:transparent;cursor:pointer;transition:transform .14s var(--ease-out)}.week-day:disabled{cursor:default;opacity:.68}.week-day:not(:disabled):active{transform:scale(.94)}.week-label{font-size:9px;font-weight:760}.week-status{height:10px;margin-top:2px;font-size:7px;font-weight:750}.week-mark{display:grid;width:30px;height:30px;place-items:center;margin-top:3px;border:1px solid var(--line);border-radius:50%;background:#ffffff8c}.app-shell[data-theme=dark] .week-mark{background:#ffffff0d}.week-day.is-complete .week-mark{background:#a6d05829}.week-day.is-missed .week-mark{background:#daa03f21}.week-day.is-current{color:#547a30}.app-shell[data-theme=dark] .week-day.is-current{color:#c9e994}.week-day.is-current .week-mark{border-color:#a7c96d;background:#cbeb8f38}.week-day.is-selected .week-mark{box-shadow:0 0 0 2px var(--ink)}.week-day.is-current.is-selected .week-mark{box-shadow:0 0 0 2px var(--ink),0 0 0 5px #a6cf5e29}.signal-list{margin-top:12px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel)}.signal-row{position:relative;display:grid;width:100%;min-height:64px;grid-template-columns:39px minmax(0,1fr) auto;align-items:center;gap:11px;padding:9px 12px;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:transparent;text-align:left;cursor:pointer;isolation:isolate;overflow:hidden;transition:transform .14s var(--ease-out),background-color .16s ease}.signal-row>*{position:relative;z-index:1}.signal-row:after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(100deg,transparent 15%,rgba(205,238,143,.25) 48%,transparent 80%);opacity:0;transform:translate3d(-100%,0,0);pointer-events:none}.signal-row.is-celebrating:after{animation:signal-confirm-sweep .72s var(--ease-out) both}.signal-row.is-celebrating .signal-icon{animation:signal-icon-confirm .52s var(--ease-out) both}.signal-row:last-child{border-bottom:0}.signal-row:active{transform:scale(.985)}.signal-row.is-guided{z-index:1;background:#d7f2a047;box-shadow:inset 0 0 0 1px #86b14038,0 8px 24px #4d693214}.app-shell[data-theme=dark] .signal-row.is-guided{background:#c9ef7c1a;box-shadow:inset 0 0 0 1px #c9ef7c26,0 8px 24px #00000029}.signal-icon{display:grid;width:39px;height:39px;place-items:center;border-radius:13px;background:#cdeb9242}.signal-icon.is-food{background:#f6e7cb}.signal-icon.is-recovery{background:#eee9f7}.signal-icon.is-weight{background:#ececf0}.app-shell[data-theme=dark] .signal-icon{background:#ffffff12}.signal-copy{min-width:0}.signal-copy strong,.signal-copy span{display:block}.signal-copy strong{font-size:12px;font-weight:820}.signal-copy span{overflow:hidden;margin-top:3px;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.signal-copy .signal-calories{color:var(--ink);font-weight:900;font-variant-numeric:tabular-nums}.signal-state{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:999px;color:#58752a;background:#a6d15426;font-size:8px;font-weight:820;text-transform:uppercase}.signal-state>i{display:grid;width:13px;height:13px;place-items:center;border-radius:999px;color:#354b1f;background:#cfee8b;font-size:8px;font-style:normal;line-height:1}.signal-state>span{animation:signal-state-copy-in .22s var(--ease-out) both}.signal-state.is-celebrating{animation:signal-state-confirm .82s var(--ease-out) both}.signal-state.is-next{color:#875d1d;background:#f4e5c6}.app-shell[data-theme=dark] .signal-state{color:#d4ef9b;background:#b1da5f21}.app-shell[data-theme=dark] .signal-state.is-next{color:#efc573;background:#e2a9431f}.completion-card{margin-top:12px;padding:14px;border:1px solid rgba(121,164,65,.13);border-radius:20px;background:linear-gradient(145deg,#f4f9ec,#eaf4dc);box-shadow:0 14px 34px #374c2914}.app-shell[data-theme=dark] .completion-card{border-color:#ccea8c1f;background:#c3e28013;box-shadow:none}.completion-head,.completion-action{display:flex;align-items:center;justify-content:space-between;gap:12px}.completion-head span,.completion-action small{color:var(--muted);font-size:9px;font-weight:740}.completion-head strong{font-size:11px}.completion-track{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:9px 0 13px}.completion-track i{height:4px;border-radius:99px;background:#596a4d26}.completion-track i.is-done{background:#9bc74f}.completion-action small,.completion-action strong{display:block}.completion-action strong{margin-top:3px;font-size:12px}.completion-action button{display:grid;width:40px;height:40px;place-items:center;border:0;border-radius:14px;background:#e6f5bd;cursor:pointer;transition:transform .14s var(--ease-out)}.completion-action button:active{transform:scale(.96)}.weight-card{display:grid;width:100%;min-height:62px;grid-template-columns:39px 1fr auto;align-items:center;gap:11px;margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:20px;color:var(--ink);background:#ffffff61;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.app-shell[data-theme=dark] .weight-card{background:#ffffff06}.weight-card:active{transform:scale(.985)}.weight-card span>small,.weight-card span>strong{display:block}.weight-card small{color:var(--muted);font-size:9px}.weight-card strong{margin-top:3px;font-size:11px}.weight-value{text-align:right}.bottom-nav{position:absolute;z-index:10;right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px;display:grid;grid-template-columns:repeat(4,1fr);min-height:67px;padding:7px 5px;border:1px solid var(--line);border-radius:22px;background:#fafbf6d1;box-shadow:0 15px 38px #29342324;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-shell[data-theme=dark] .bottom-nav{background:#1d2019d1}.bottom-nav button{display:grid;min-width:0;place-items:center;gap:2px;border:0;color:var(--muted);background:transparent;cursor:pointer;transition:transform .14s var(--ease-out),color .16s ease}.bottom-nav button:active{transform:scale(.95)}.bottom-nav button.is-current{border-radius:16px;color:var(--ink);background:#c4e28429}.app-shell[data-theme=dark] .bottom-nav button.is-current{background:#c9eb8c14}.bottom-nav button span{overflow:hidden;max-width:100%;font-size:9px;font-weight:750;text-overflow:ellipsis}.progress-summary{display:grid;gap:8px;margin-top:12px}.progress-energy-card{display:grid;width:100%;min-height:92px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid rgba(121,164,65,.14);border-radius:22px;color:#26301f;background:linear-gradient(145deg,#eff9dcfa,#dcf0b1e0);box-shadow:0 14px 34px #374c2914;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),box-shadow .18s ease}.progress-energy-card:active{transform:scale(.985)}.progress-card-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:16px;background:#ffffff85}.progress-energy-card>span:nth-child(2) small,.progress-energy-card>span:nth-child(2) strong,.progress-energy-card>span:nth-child(2) span{display:block}.progress-energy-card small{color:#617052;font-size:9px;font-weight:760;text-transform:uppercase;letter-spacing:.06em}.progress-energy-card strong{margin-top:3px;font-size:25px;line-height:1;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.progress-energy-card>span:nth-child(2)>span{margin-top:5px;color:#65735a;font-size:9px}.progress-energy-card>i{color:#6c7d57;font-size:27px;font-style:normal}.app-shell[data-theme=dark] .progress-energy-card{border-color:#ccea8c1f;color:#eef5e6;background:#c3e28013;box-shadow:none}.app-shell[data-theme=dark] .progress-card-icon{background:#ffffff12}.app-shell[data-theme=dark] .progress-energy-card small,.app-shell[data-theme=dark] .progress-energy-card>span:nth-child(2)>span,.app-shell[data-theme=dark] .progress-energy-card>i{color:#eff5e894}.progress-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.progress-mini-grid button{display:grid;min-width:0;min-height:116px;align-content:start;justify-items:start;padding:13px;border:1px solid var(--line);border-radius:19px;color:var(--ink);background:var(--panel);text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.progress-mini-grid button:active{transform:scale(.98)}.progress-mini-grid button>span{display:grid;width:38px;height:38px;margin-bottom:11px;place-items:center;border-radius:13px;background:#cdeb9233}.progress-mini-grid small,.progress-mini-grid strong,.progress-mini-grid em{display:block;max-width:100%}.progress-mini-grid small{color:var(--muted);font-size:9px}.progress-mini-grid strong{overflow:hidden;margin-top:3px;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.progress-mini-grid em{margin-top:5px;color:var(--muted);font-size:8px;font-style:normal}.profile-page{display:grid;gap:12px;margin-top:12px}.profile-hero{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px;border:1px solid rgba(121,164,65,.13);border-radius:22px;background:linear-gradient(145deg,#f4f9ec,#eaf4dc)}.app-shell[data-theme=dark] .profile-hero{border-color:#ccea8c1f;background:#c3e28013}.profile-avatar{display:grid;width:52px;height:52px;place-items:center;border-radius:18px;background:#ffffff94}.app-shell[data-theme=dark] .profile-avatar{background:#ffffff12}.profile-hero>div small,.profile-hero>div strong{display:block}.profile-hero>div small{color:var(--muted);font-size:8px;font-weight:780;text-transform:uppercase;letter-spacing:.07em}.profile-hero>div strong{margin-top:3px;font-size:16px;letter-spacing:-.03em}.profile-hero p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.4}.profile-level{display:grid;min-width:66px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:3px;padding:5px 7px 5px 4px;border:0;border-radius:15px;color:#354621;background:#cded8eb8;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.app-shell[data-theme=dark] .profile-level{color:#e6f5ca;background:#c9eb8c1f}.profile-level:active{transform:scale(.97)}.profile-level>span:not(.growth-icon){display:grid;min-width:0;justify-items:center}.profile-level strong{font-size:15px}.profile-level small{overflow:hidden;max-width:42px;margin-top:1px;font-size:6px;font-weight:790;text-overflow:ellipsis;white-space:nowrap}.profile-section{display:grid;gap:9px}.profile-section>header small,.profile-section>header h2{display:block;margin:0}.profile-section>header small{color:var(--muted);font-size:8px;font-weight:780;text-transform:uppercase;letter-spacing:.07em}.profile-section>header h2{margin-top:3px;font-size:14px;letter-spacing:-.02em}.profile-theme-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.profile-theme-switch button{display:grid;min-height:62px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:16px;color:var(--ink);background:var(--panel);text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),border-color .16s ease,background-color .16s ease}.profile-theme-switch button:active{transform:scale(.97)}.profile-theme-switch button[aria-pressed=true]{border-color:#86b14059;background:#cdeb9233}.app-shell[data-theme=dark] .profile-theme-switch button[aria-pressed=true]{border-color:#c9ef7c38;background:#c9ef7c17}.profile-theme-switch span strong,.profile-theme-switch span small{display:block}.profile-theme-switch strong{font-size:10px}.profile-theme-switch small{margin-top:3px;color:var(--muted);font-size:8px}.profile-tutorial-list{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.profile-tutorial-list button{display:grid;width:100%;min-height:62px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:transparent;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.profile-tutorial-list button:last-child{border-bottom:0}.profile-tutorial-list button:active{transform:scale(.985)}.profile-tutorial-list span strong,.profile-tutorial-list span small{display:block}.profile-tutorial-list strong{font-size:11px}.profile-tutorial-list small{margin-top:3px;color:var(--muted);font-size:8px}.profile-tutorial-list i{color:var(--muted);font-size:20px;font-style:normal}.profile-account-card{display:grid;width:100%;min-height:72px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 13px;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:var(--panel);text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),border-color .18s ease,background-color .18s ease}.profile-account-card:active{transform:scale(.98)}.profile-account-card>span:nth-child(2){min-width:0}.profile-account-card strong,.profile-account-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-account-card strong{font-size:13px}.profile-account-card small{margin-top:4px;color:var(--muted);font-size:10px}.profile-account-card>i{color:var(--muted);font-size:23px;font-style:normal}.account-status-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:15px;background:#cdeb9238}.account-status-icon.is-saving,.account-status-icon.is-connecting{animation:account-status-pulse 1.3s ease-in-out infinite}.account-status-icon.is-offline{filter:grayscale(.75);opacity:.66}.app-shell[data-theme=dark] .profile-account-card{background:#ffffff0b}.app-shell[data-theme=dark] .account-status-icon{background:#cdeb9217}.profile-reconnect{justify-self:start;min-height:34px;padding:0 11px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:var(--panel);font-size:10px;font-weight:780;cursor:pointer;transition:transform .14s var(--ease-out)}.profile-reconnect:active{transform:scale(.97)}.profile-sync-error{margin:-3px 0 0;color:#98564f;font-size:10px;line-height:1.45}.app-shell[data-theme=dark] .profile-sync-error{color:#e5a29a}.first-entry-guide{position:absolute;z-index:25;right:14px;bottom:calc(92px + env(safe-area-inset-bottom));left:14px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px 11px;padding:14px;border:1px solid rgba(210,239,151,.22);border-radius:21px;color:#f2f6eb;background:#1c2318f5;box-shadow:0 24px 60px #161d1252;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:first-entry-guide-in .22s var(--ease-out) both}.first-entry-guide.is-complete{border-color:#d2ef974d;background:#2a3720f7}.first-entry-guide-close{position:absolute;top:8px;right:8px;display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:50%;color:#f2f6eba3;background:#ffffff12;font-size:17px;cursor:pointer;transition:transform .14s var(--ease-out)}.first-entry-guide-close:active{transform:scale(.94)}.first-entry-guide-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:#d6f1a01c}.first-entry-guide-copy{min-width:0;padding-right:25px}.first-entry-guide-copy small,.first-entry-guide-copy strong{display:block}.first-entry-guide-copy small{color:#cce994;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.first-entry-guide-copy strong{margin-top:3px;font-size:14px;letter-spacing:-.02em}.first-entry-guide-copy p{margin:5px 0 0;color:#f2f6eba3;font-size:9px;line-height:1.45}.first-entry-guide-progress{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,1fr);gap:5px}.first-entry-guide-progress i{height:4px;border-radius:99px;background:#ffffff1a}.first-entry-guide-progress i.is-done{background:#cbed88}.first-entry-guide-action{grid-column:1 / -1;min-height:43px;border:0;border-radius:14px;color:#28351f;background:#d0ef8a;font-size:10px;font-weight:810;cursor:pointer;transition:transform .14s var(--ease-out)}.first-entry-guide-action:active{transform:scale(.98)}.day-history,.week-overview{display:grid;gap:12px;margin-top:12px}.day-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 14px;padding:15px;border:1px solid rgba(194,145,58,.16);border-radius:20px;background:linear-gradient(145deg,#fffaeee6,#f7edd7c7)}.day-summary.is-complete{border-color:#79a44126;background:linear-gradient(145deg,#f4f9ec,#eaf4dc)}.day-summary.is-empty{border-color:var(--line);background:var(--panel)}.app-shell[data-theme=dark] .day-summary{border-color:#e8b85d21;background:#e8b85d12}.app-shell[data-theme=dark] .day-summary.is-complete{border-color:#ccea8c1f;background:#c3e28013}.app-shell[data-theme=dark] .day-summary.is-empty{border-color:var(--line);background:var(--panel)}.day-summary small,.day-summary strong{display:block}.day-summary small{color:var(--muted);font-size:9px;font-weight:740}.day-summary strong{margin-top:4px;font-size:14px;letter-spacing:-.02em}.day-summary>span{align-self:center;font-size:20px;font-weight:850;font-variant-numeric:tabular-nums}.day-summary-track{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,1fr);gap:5px}.day-summary-track i{height:5px;border-radius:99px;background:#596a4d24}.day-summary-track i.is-done{background:#9bc74f}.day-summary p{grid-column:1 / -1;margin:0;color:var(--muted);font-size:9px;line-height:1.45}.day-history .signal-list{margin-top:0}.history-timeline,.week-days-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel)}.history-timeline>header,.week-days-card>header{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line)}.history-timeline header small,.history-timeline header h2,.week-days-card header small,.week-days-card header h2{display:block;margin:0}.history-timeline header small,.week-days-card header small{color:var(--muted);font-size:8px;font-weight:760;text-transform:uppercase;letter-spacing:.07em}.history-timeline header h2,.week-days-card header h2{margin-top:3px;font-size:13px}.history-timeline>header>span,.week-days-card>header>span{color:var(--muted);font-size:9px;font-weight:760}.history-empty{display:grid;justify-items:center;gap:7px;padding:25px 18px;text-align:center}.history-empty p{max-width:250px;margin:0;color:var(--muted);font-size:10px;line-height:1.45}.history-event{display:grid;width:100%;min-height:61px;grid-template-columns:32px 35px minmax(0,1fr);align-items:center;gap:9px;padding:8px 12px;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:transparent;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.history-event:last-child{border-bottom:0}.history-event:active{transform:scale(.985)}.history-event time{color:var(--muted);font-size:8px;font-weight:740;font-variant-numeric:tabular-nums}.history-event-icon{display:grid;width:35px;height:35px;place-items:center;border-radius:12px;background:#cdeb9238}.history-event-icon.is-food{background:#f6e7cb}.history-event-icon.is-recovery{background:#eee9f7}.app-shell[data-theme=dark] .history-event-icon{background:#ffffff12}.history-event>span:last-child{min-width:0}.history-event strong,.history-event small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-event strong{font-size:11px}.history-event small{margin-top:3px;color:var(--muted);font-size:8px}.week-overview-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:17px;border:1px solid rgba(121,164,65,.13);border-radius:22px;background:linear-gradient(145deg,#f4f9ec,#eaf4dc);box-shadow:0 14px 34px #374c2912}.app-shell[data-theme=dark] .week-overview-hero{border-color:#ccea8c1f;background:#c3e28013;box-shadow:none}.week-overview-hero>div>small,.week-overview-hero>div>strong{display:block}.week-overview-hero>div>small{color:var(--muted);font-size:9px;font-weight:760;text-transform:uppercase;letter-spacing:.06em}.week-overview-hero>div>strong{margin-top:5px;font-size:17px;letter-spacing:-.03em}.week-overview-hero p{max-width:255px;margin:6px 0 0;color:var(--muted);font-size:9px;line-height:1.45}.week-overview-hero>span{display:grid;width:58px;height:58px;place-items:center;align-content:center;border-radius:19px;color:#364721;background:#cded8eb3;font-size:22px;font-weight:850;font-variant-numeric:tabular-nums}.app-shell[data-theme=dark] .week-overview-hero>span{color:#e6f5ca;background:#c9eb8c1f}.week-overview-hero>span small{display:block;margin-top:-2px;font-size:8px;font-weight:750}.week-signal-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.week-signal-stats article{display:grid;min-width:0;min-height:82px;align-content:center;justify-items:center;gap:6px;padding:9px 5px;border:1px solid var(--line);border-radius:17px;background:var(--panel);text-align:center}.week-signal-stats span,.week-signal-stats strong,.week-signal-stats small{display:block}.week-signal-stats strong{font-size:13px;font-variant-numeric:tabular-nums}.week-signal-stats small{margin-top:2px;color:var(--muted);font-size:8px}.week-days-card>button{display:grid;width:100%;min-height:58px;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 12px;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:transparent;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.week-days-card>button:last-child{border-bottom:0}.week-days-card>button:not(:disabled):active{transform:scale(.985)}.week-days-card>button:disabled{cursor:default;opacity:.55}.week-day-dot{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:50%;background:#ffffff80}.app-shell[data-theme=dark] .week-day-dot{background:#ffffff0d}.week-day-dot.is-complete{background:#a6d05829}.week-day-dot.is-missed{background:#daa03f21}.week-day-dot.is-current{border-color:#a7c96d;background:#cbeb8f38}.week-days-card button>span:nth-child(2){min-width:0}.week-days-card button>span:nth-child(2) strong,.week-days-card button>span:nth-child(2) small{display:block}.week-days-card button>span:nth-child(2) strong{font-size:11px}.week-days-card button>span:nth-child(2) small{margin-top:3px;color:var(--muted);font-size:8px}.week-day-result{padding:5px 7px;border-radius:999px;color:var(--muted);background:#596a4d12;font-size:8px;font-weight:790}.energy-breakdown{display:grid;gap:13px}.calibration-explainer,.score-summary-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px 14px;padding:15px;border:1px solid #dce6ce;border-radius:19px;background:#f1f7e9}.app-shell[data-theme=dark] .calibration-explainer,.app-shell[data-theme=dark] .score-summary-card{border-color:#ccea8c1f;background:#c3e28012}.calibration-explainer small,.calibration-explainer strong{display:block}.calibration-explainer small{color:#6c7664;font-size:9px}.calibration-explainer strong{margin-top:4px;font-size:15px}.calibration-explainer>span{font-size:17px;font-weight:850}.calibration-track{grid-column:1 / -1;height:7px;overflow:hidden;border-radius:99px;background:#596a4d1f}.calibration-track i{display:block;width:100%;height:100%;transform-origin:left;border-radius:inherit;background:linear-gradient(90deg,#91bd43,#c9ea7b);transition:transform .24s var(--ease-out)}.energy-principles{overflow:hidden;border:1px solid #e1e5dc;border-radius:17px}.app-shell[data-theme=dark] .energy-principles{border-color:#ffffff14}.energy-principles article{display:grid;grid-template-columns:35px minmax(0,1fr);align-items:center;gap:10px;min-height:62px;padding:9px 12px;border-bottom:1px solid #e7eae3}.energy-principles article:last-child{border-bottom:0}.app-shell[data-theme=dark] .energy-principles article{border-color:#ffffff12}.energy-principles strong,.energy-principles small{display:block}.energy-principles strong{font-size:11px}.energy-principles small{margin-top:3px;color:#72796d;font-size:9px;line-height:1.4}.app-shell[data-theme=dark] .energy-principles small{color:#f2f5eb94}.score-summary-card>div>small{display:block;color:#6c7664;font-size:9px}.score-summary-card>div>strong{display:inline-block;margin-top:2px;font-size:35px;line-height:1;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.score-summary-card>div>em{display:inline-block;margin-left:7px;color:#688b34;font-size:11px;font-style:normal;font-weight:850;vertical-align:top}.score-summary-card>span{display:grid;min-width:78px;justify-items:end}.score-summary-card>span strong,.score-summary-card>span small{display:block}.score-summary-card>span strong{font-size:11px}.score-summary-card>span small{margin-top:3px;color:#6c7664;font-size:8px}.score-summary-card>p{grid-column:1 / -1;margin:0;color:#6c7664;font-size:9px;line-height:1.4}.app-shell[data-theme=dark] .score-summary-card>div>small,.app-shell[data-theme=dark] .score-summary-card>span small,.app-shell[data-theme=dark] .score-summary-card>p{color:#f2f5eb94}.factor-list{overflow:hidden;border:1px solid #e1e5dc;border-radius:18px}.app-shell[data-theme=dark] .factor-list{border-color:#ffffff14}.factor-list>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border-bottom:1px solid #e7eae3}.app-shell[data-theme=dark] .factor-list>header{border-color:#ffffff12}.factor-list header small,.factor-list header h3{display:block;margin:0}.factor-list header small{color:#737b6f;font-size:8px;font-weight:760;text-transform:uppercase;letter-spacing:.06em}.factor-list header h3{margin-top:3px;font-size:13px}.factor-list>header>span{color:#737b6f;font-size:9px;font-weight:760}.factor-list article{padding:11px 13px;border-bottom:1px solid #e7eae3}.factor-list article:last-child{border-bottom:0}.app-shell[data-theme=dark] .factor-list article{border-color:#ffffff12}.factor-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.factor-heading strong{font-size:11px}.factor-heading span{color:#737b6f;font-size:8px;font-weight:740}.factor-track{height:5px;margin-top:8px;overflow:hidden;border-radius:99px;background:#e9ece4}.app-shell[data-theme=dark] .factor-track{background:#ffffff12}.factor-track i{display:block;width:100%;height:100%;transform-origin:left;border-radius:inherit;background:linear-gradient(90deg,#9bc74f,#cee982);transition:transform .24s var(--ease-out)}.factor-list article p{margin:7px 0 0;color:#747b70;font-size:8px;line-height:1.4}.app-shell[data-theme=dark] .factor-list article p,.app-shell[data-theme=dark] .factor-heading span{color:#f2f5eb8f}.energy-next-step{padding:13px;border-radius:16px;background:#f3f0e7}.app-shell[data-theme=dark] .energy-next-step{background:#ffffff0e}.energy-next-step small,.energy-next-step strong{display:block}.energy-next-step small{color:#77786e;font-size:8px;font-weight:760;text-transform:uppercase;letter-spacing:.06em}.energy-next-step strong{margin-top:5px;font-size:11px;line-height:1.45}.energy-disclaimer{margin:0;padding:0 4px;color:#797f75;font-size:9px;line-height:1.45}.app-shell[data-theme=dark] .energy-disclaimer{color:#f2f5eb8f}.score-reveal-layer{position:fixed;z-index:60;inset:0;display:grid;width:min(100%,440px);margin:0 auto;place-items:center;padding:18px;color:#f5f8ef;background:radial-gradient(circle at 50% 42%,rgba(154,198,80,.29),transparent 37%),#0f120df2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.score-reveal-card{position:relative;display:grid;width:100%;justify-items:center;text-align:center;animation:reveal-card-in .42s var(--ease-out) both}.score-reveal-skip{position:absolute;top:0;right:0;min-height:36px;padding:0 8px;border:0;color:#f5f8efa3;background:transparent;font-size:9px;font-weight:750;cursor:pointer}.reveal-kicker{color:#d8efa9;font-size:9px;font-weight:820;text-transform:uppercase;letter-spacing:.1em}.score-reveal-card h2{margin:7px 0 15px;font-size:25px;line-height:1.05;letter-spacing:-.045em}.reveal-orb{--orb-size: 206px;cursor:default;animation:reveal-orb-in .9s var(--ease-in-out) .18s both}.reveal-orb:active{transform:none}.score-reveal-card>p{max-width:310px;margin:18px 0 16px;color:#f5f8efa8;font-size:10px;line-height:1.5}.reveal-primary,.reveal-secondary{width:min(100%,300px);min-height:47px;border-radius:15px;font-size:11px;font-weight:790;cursor:pointer;transition:transform .14s var(--ease-out)}.reveal-primary{border:0;color:#29351f;background:#d0ef8a}.reveal-secondary{margin-top:7px;border:1px solid rgba(255,255,255,.11);color:#f5f8efb8;background:#ffffff0b}.reveal-primary:active,.reveal-secondary:active{transform:scale(.97)}.sheet-layer{position:fixed;z-index:30;inset:0;display:grid;width:min(100%,440px);margin:0 auto;align-items:end;background:#10120e85}.sheet-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:default}.sheet{position:relative;z-index:1;padding:10px 18px max(25px,env(safe-area-inset-bottom));max-height:min(90dvh,780px);overflow-y:auto;overscroll-behavior:contain;border-radius:28px 28px 0 0;color:#20251d;background:#fafaf7;box-shadow:0 -18px 60px #0003;animation:sheet-in .24s var(--ease-out) both}.app-shell[data-theme=dark] .sheet{color:#f2f5eb;background:#20251e;box-shadow:0 -18px 60px #00000070}.sheet-handle{width:42px;height:4px;margin:0 auto 18px;border-radius:99px;background:#d5d7cf}.app-shell[data-theme=dark] .sheet-handle{background:#ffffff29}.sheet-header{position:sticky;z-index:3;top:-10px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;padding:8px 0 9px;background:linear-gradient(180deg,#fafaf7 82%,#fafaf700)}.sheet-header h2{margin:0 0 4px;font-size:22px;letter-spacing:-.04em}.sheet-header p{margin:0;color:#747a70;font-size:12px;line-height:1.45}.app-shell[data-theme=dark] .sheet-header p{color:#f0f4e88a}.app-shell[data-theme=dark] .sheet-header{background:linear-gradient(180deg,#20251e 82%,#20251e00)}.sheet-close{display:grid;flex:0 0 auto;width:36px;height:36px;place-items:center;border:0;border-radius:50%;color:#50544b;background:#eceee7;font-size:20px;cursor:pointer;transition:transform .14s var(--ease-out)}.app-shell[data-theme=dark] .sheet-close{color:#f2f5eb;background:#ffffff12}.sheet-close:active{transform:scale(.94)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-stack{display:grid;gap:13px}.form-stack>.primary-button{width:100%}.field-row{display:grid;grid-template-columns:minmax(0,1fr) 105px;gap:9px;align-items:stretch}.meal-form{gap:11px}.meal-heading-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px}.meal-heading-row>.field-grow{grid-column:1 / -1}.meal-portion-control{display:grid;grid-template-columns:minmax(0,1fr) 42px;min-width:0;min-height:44px;overflow:hidden;border:1px solid #dfe1d9;border-radius:13px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.meal-portion-control input{width:100%;min-width:0;min-height:42px;padding:10px 12px;border:0;background:transparent;box-shadow:none;animation:none;font-size:16px;font-weight:800;text-align:center;font-variant-numeric:tabular-nums}.meal-portion-control i{display:grid;min-height:42px;place-items:center;border-left:1px solid #e5e7df;color:#777e72;background:#f5f6f1;font-size:11px;font-style:normal;font-weight:760}.meal-portion-control:focus-within{border-color:#9abb62;box-shadow:0 0 0 3px #9abb6224}.meal-portion-control[data-needed=true]{border-color:#9abb62;box-shadow:0 0 0 3px #9abb621a}.meal-portion-control input::-webkit-inner-spin-button,.meal-portion-control input::-webkit-outer-spin-button{margin:0;appearance:none}.app-shell[data-theme=dark] .meal-portion-control{border-color:#ffffff17;background:#ffffff0e}.app-shell[data-theme=dark] .meal-portion-control input{color:#f2f5eb}.app-shell[data-theme=dark] .meal-portion-control i{border-color:#ffffff14;color:#f2f5eb8f;background:#ffffff0b}.meal-time-trigger{display:flex;width:100%;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:0 8px;border:1px solid #dfe1d9;border-radius:13px;color:#30372b;background:#fff;cursor:pointer;font-variant-numeric:tabular-nums;transition:transform .14s var(--ease-out),border-color .15s ease,background-color .16s ease}.meal-time-trigger strong{font-size:13px}.meal-time-trigger:active{transform:scale(.97)}.meal-time-trigger:focus-visible{outline:3px solid rgba(154,187,98,.2);outline-offset:2px}.app-shell[data-theme=dark] .meal-time-trigger{border-color:#ffffff17;color:#f2f5eb;background:#ffffff0e}.two-column-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.field{display:grid;gap:6px;min-width:0}.field>span,.segmented-field legend,.movement-fieldset legend,.recovery-fieldset legend{color:#747a70;font-size:10px;font-weight:760}.app-shell[data-theme=dark] .field>span,.app-shell[data-theme=dark] .segmented-field legend,.app-shell[data-theme=dark] .movement-fieldset legend,.app-shell[data-theme=dark] .recovery-fieldset legend{color:#f0f4e88f}.field input,.field textarea,.estimate-card input,.estimate-card select{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #dfe1d9;border-radius:13px;outline:none;color:#20251d;background:#fff;font-size:13px;transition:border-color .15s ease,box-shadow .15s ease}.field textarea{min-height:76px;resize:vertical;line-height:1.4}.field input:focus,.field textarea:focus,.estimate-card input:focus,.estimate-card select:focus{border-color:#9abb62;box-shadow:0 0 0 3px #9abb6224}.app-shell[data-theme=dark] .field input,.app-shell[data-theme=dark] .field textarea,.app-shell[data-theme=dark] .estimate-card input,.app-shell[data-theme=dark] .estimate-card select{border-color:#ffffff17;color:#f2f5eb;background:#ffffff0e}.time-field input{padding-right:7px;padding-left:7px}.prominent-field input{min-height:56px;font-size:22px;font-weight:780;letter-spacing:-.03em}.movement-step-field{display:grid;gap:6px}.movement-step-field>label{color:#747a70;font-size:10px;font-weight:760}.app-shell[data-theme=dark] .movement-step-field>label{color:#f0f4e88f}.movement-stepper{display:grid;grid-template-columns:68px minmax(0,1fr) 68px;gap:7px}.movement-stepper input,.movement-stepper button{min-width:0;min-height:56px;border:1px solid #dfe1d9;border-radius:14px}.movement-stepper input{width:100%;padding:8px;outline:none;color:#20251d;background:#fff;font-size:22px;font-weight:780;text-align:center;letter-spacing:-.03em;transition:border-color .15s ease,box-shadow .15s ease}.movement-stepper input:focus{border-color:#9abb62;box-shadow:0 0 0 3px #9abb6224}.movement-stepper button{color:#5f6a58;background:#f0f3eb;font-size:11px;font-weight:800;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.movement-stepper button:active{transform:scale(.96)}.movement-stepper button:focus-visible{outline:3px solid rgba(154,187,98,.28);outline-offset:2px}.app-shell[data-theme=dark] .movement-stepper input,.app-shell[data-theme=dark] .movement-stepper button{border-color:#ffffff17;color:#f2f5eb;background:#ffffff0e}.photo-picker{display:flex;width:100%;min-height:58px;align-items:center;gap:11px;padding:9px 12px;border:1px dashed #cfd5c6;border-radius:15px;color:#30362c;background:#f6f8f2;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.photo-picker span,.photo-preview span{min-width:0}.photo-picker strong,.photo-picker small,.photo-preview strong,.photo-preview small{display:block}.photo-picker strong,.photo-preview strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.photo-picker small,.photo-preview small{margin-top:3px;color:#777e71;font-size:9px}.photo-picker:active{transform:scale(.985)}.app-shell[data-theme=dark] .photo-picker{border-color:#ffffff21;color:#f2f5eb;background:#ffffff0a}.photo-preview{display:grid;grid-template-columns:46px minmax(0,1fr) auto 30px;align-items:center;gap:8px;min-height:60px;padding:7px 9px;border:1px solid #dfe5d6;border-radius:15px;background:#f3f7ed}.photo-preview>img{width:46px;height:46px;border-radius:11px;object-fit:cover}.photo-preview>button:not(.photo-analyze-button){display:grid;width:30px;height:30px;place-items:center;border:0;border-radius:50%;color:#5c6357;background:#3d483614;cursor:pointer;transition:transform .14s var(--ease-out)}.photo-preview>button:not(.photo-analyze-button):active{transform:scale(.92)}.photo-analyze-button{min-height:38px;padding:0 10px;border:1px solid rgba(128,166,66,.2);border-radius:12px;color:#33451f;background:#d9f39d;cursor:pointer;font-size:9px;font-weight:800;white-space:nowrap;transition:transform .14s var(--ease-out),background-color .16s ease}.photo-analyze-button:not(:disabled):active{transform:scale(.97)}.photo-analyze-button:disabled{cursor:default;opacity:.58}.app-shell[data-theme=dark] .photo-preview{border-color:#ffffff17;background:#ffffff0d}.app-shell[data-theme=dark] .photo-analyze-button{border-color:#c9f36b2e;color:#eff8de;background:#c9f36b21}.analysis-error{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:11px 12px;border:1px solid rgba(166,78,67,.18);border-radius:15px;color:#7e4943;background:#fbf2f0}.analysis-error strong,.analysis-error span{display:block}.analysis-error strong{font-size:11px}.analysis-error span{grid-column:1;font-size:10px;line-height:1.4}.analysis-error button{grid-column:2;grid-row:1 / 3;align-self:center;min-height:34px;padding:0 10px;border:0;border-radius:11px;color:#79423c;background:#a64e431a;font-size:10px;font-weight:760;cursor:pointer}.app-shell[data-theme=dark] .analysis-error{border-color:#ee91862e;color:#f0aaa1;background:#ee918612}.app-shell[data-theme=dark] .analysis-error button{color:#f0aaa1;background:#ee91861a}.analysis-result{display:grid;gap:11px;padding:12px;border:1px solid #dfe6d7;border-radius:19px;background:linear-gradient(160deg,#fbfcf9,#f3f7ed);box-shadow:0 12px 30px #3040260e;animation:analysis-result-in .22s var(--ease-out) both}.app-shell[data-theme=dark] .analysis-result{border-color:#ffffff17;background:linear-gradient(160deg,#ffffff0e,#ffffff06);box-shadow:none}.analysis-result>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.analysis-result>header small,.analysis-result>header strong{display:block}.analysis-result>header small{color:#7c8576;font-size:9px;font-weight:780;text-transform:uppercase;letter-spacing:.06em}.analysis-result>header strong{margin-top:4px;font-size:13px}.analysis-result>header>span{flex:0 0 auto;padding:5px 7px;border-radius:999px;color:#66705e;background:#6e7f5b14;font-size:9px;font-weight:720}.app-shell[data-theme=dark] .analysis-result>header small{color:#f2f5eb80}.app-shell[data-theme=dark] .analysis-result>header>span{color:#f2f5ebad;background:#ffffff0f}.portion-question{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:10px;border-radius:15px;background:#edf4df}.portion-question>div strong,.portion-question>div small{display:block}.portion-question>div strong{font-size:11px}.portion-question>div small{margin-top:3px;color:#727d68;font-size:10px;line-height:1.35}.portion-question button{min-height:38px;padding:0 10px;border:0;border-radius:11px;color:#2c381f;background:#cae981;font-size:10px;font-weight:780;cursor:pointer;transition:transform .14s var(--ease-out)}.portion-question button:active{transform:scale(.97)}.app-shell[data-theme=dark] .portion-question{background:#c9f36b14}.app-shell[data-theme=dark] .portion-question>div small{color:#f2f5eb80}.quality-card{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;padding:10px;border-radius:15px;background:#eef5e3}.quality-card.is-medium{background:#f7f2de}.quality-card.is-high{background:#f8eae6}.quality-score{display:grid;width:54px;height:54px;grid-template-columns:auto auto;align-items:end;place-content:center;place-self:center;gap:1px;padding:0;border:1px solid rgba(111,151,54,.16);border-radius:50%;color:#40572b;background:#8eb74530;font-variant-numeric:tabular-nums}.quality-score strong{font-size:22px;font-weight:900;line-height:1;letter-spacing:-.035em}.quality-score small{padding-bottom:2px;font-size:9px;font-weight:800;opacity:.72}.quality-card.is-medium .quality-score{color:#725f28;background:#c9a33c29}.quality-card.is-high .quality-score{color:#87483f;background:#bb5b4c24}.quality-card>div>small,.quality-card>div>strong{display:block}.quality-card>div>small{color:#75806c;font-size:9px}.quality-card>div>strong{margin-top:3px;font-size:11px}.quality-card p{margin:4px 0 0;color:#646d5e;font-size:10px;line-height:1.4}.app-shell[data-theme=dark] .quality-card{background:#97c54e17}.app-shell[data-theme=dark] .quality-card.is-medium{background:#cfac4217}.app-shell[data-theme=dark] .quality-card.is-high{background:#cb685a17}.app-shell[data-theme=dark] .quality-score{border-color:#cded9033;color:#e7f7c8;background:#8eb7453d;text-shadow:0 1px 6px rgba(0,0,0,.28)}.app-shell[data-theme=dark] .quality-card.is-medium .quality-score{border-color:#eed07633;color:#f7e7ad;background:#c9a33c33}.app-shell[data-theme=dark] .quality-card.is-high .quality-score{border-color:#f1a69733;color:#f7c8bf;background:#bb5b4c33}.app-shell[data-theme=dark] .quality-card>div>small,.app-shell[data-theme=dark] .quality-card p{color:#f2f5eb8f}.analysis-details{padding-top:2px}.analysis-details summary{color:#677260;font-size:10px;font-weight:750;cursor:pointer}.analysis-details ul{display:grid;gap:4px;margin:8px 0 0;padding-left:17px;color:#747d6e;font-size:10px;line-height:1.45}.app-shell[data-theme=dark] .analysis-details summary,.app-shell[data-theme=dark] .analysis-details ul{color:#f2f5eb94}.estimate-card{padding:12px;border:1px solid #e0e4d9;border-radius:17px;background:#f6f8f2}.app-shell[data-theme=dark] .estimate-card{border-color:#ffffff14;background:#ffffff0a}.estimate-card>header{display:block}.estimate-card>header strong{display:block}.estimate-card>header strong{font-size:12px}.estimate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:9px}.estimate-grid label{display:grid;gap:5px;min-width:0}.estimate-grid label>span{color:#767d71;font-size:10px;font-weight:720;text-align:center;white-space:nowrap}.estimate-grid input{min-height:40px;padding:6px 4px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}.estimate-grid label:first-child input{color:#35491f;background:#edf6d8;font-weight:820}.app-shell[data-theme=dark] .estimate-grid label:first-child input{color:#eef9da;background:#c9f36b1a}.estimate-card>p{margin:9px 0 0;color:#858b81;font-size:10px;line-height:1.4}.text-button{justify-self:center;min-height:34px;padding:0 10px;border:0;color:#62695e;background:transparent;font-size:10px;font-weight:720;cursor:pointer}.text-button.is-delete,.entry-actions button.is-delete{color:#9a574f}.app-shell[data-theme=dark] .text-button{color:#f2f5eba3}.app-shell[data-theme=dark] .text-button.is-delete,.app-shell[data-theme=dark] .entry-actions button.is-delete{color:#e9a097}.entry-list{overflow:hidden;border:1px solid #e1e4dc;border-radius:16px}.app-shell[data-theme=dark] .entry-list{border-color:#ffffff14}.entry-list h3{margin:0;padding:10px 12px;border-bottom:1px solid #e5e8e0;color:#777e72;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.app-shell[data-theme=dark] .entry-list h3{border-color:#ffffff14}.entry-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 12px;border-bottom:1px solid #e8eae4}.entry-list article:last-child{border-bottom:0}.app-shell[data-theme=dark] .entry-list article{border-color:#ffffff12}.entry-time{align-self:start;color:#777e72;font-size:9px;font-variant-numeric:tabular-nums}.entry-copy{min-width:0}.entry-copy strong,.entry-copy span{display:block}.entry-copy strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.entry-copy span{overflow:hidden;margin-top:4px;color:#777e72;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.entry-actions{display:grid;justify-items:end;gap:4px}.entry-actions button{min-height:26px;padding:0;border:0;color:#68755e;background:transparent;font-size:8px;font-weight:740;cursor:pointer}.segmented-field,.movement-fieldset,.recovery-fieldset{min-width:0;margin:0;padding:0;border:0}.segmented-field legend,.movement-fieldset legend,.recovery-fieldset legend{margin-bottom:7px;padding:0}.movement-fieldset legend{font-size:12px}.segmented-field>div{display:grid;grid-template-columns:repeat(2,1fr);padding:3px;border-radius:14px;background:#ecefe7}.app-shell[data-theme=dark] .segmented-field>div{background:#ffffff0f}.segmented-field button{min-height:39px;border:0;border-radius:11px;color:#6f766a;background:transparent;font-size:11px;font-weight:740;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.segmented-field button[aria-pressed=true]{color:#283321;background:#fff;box-shadow:0 4px 13px #27332017}.app-shell[data-theme=dark] .segmented-field button[aria-pressed=true]{color:#edf4e5;background:#ffffff1a;box-shadow:none}.segmented-field button:active{transform:scale(.97)}.movement-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.movement-options button{display:grid;min-width:0;min-height:158px;align-content:start;justify-items:center;gap:7px;padding:14px 9px 12px;border:1px solid #dfe3d8;border-radius:17px;color:#363d32;background:linear-gradient(145deg,#fafbf8,#f1f4ed);text-align:center;cursor:pointer;transition:transform .14s var(--ease-out),border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.movement-options button[aria-pressed=true]{border-color:#9fbd66;background:#eff8df;box-shadow:inset 0 0 0 1px #8eb84038,0 8px 22px #546c3414}.movement-options button:active{transform:scale(.97)}.movement-options button:focus-visible{outline:3px solid rgba(154,187,98,.28);outline-offset:2px}.movement-pixel-icon{position:relative;display:block;width:58px;height:58px;overflow:hidden;isolation:isolate}.movement-pixel-icon-sprite{display:block;max-width:none;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none;-webkit-user-select:none;user-select:none;transform:translateZ(0)}.movement-pixel-icon.is-rest .movement-pixel-icon-sprite,.movement-pixel-icon.is-light .movement-pixel-icon-sprite{width:500%}.movement-pixel-icon.is-intense .movement-pixel-icon-sprite{width:900%}.movement-options button[aria-pressed=true] .movement-pixel-icon-sprite{will-change:transform}.movement-options button[aria-pressed=true] .movement-pixel-icon.is-rest .movement-pixel-icon-sprite{animation:movement-pixel-rest 2.4s steps(1,end) infinite}.movement-options button[aria-pressed=true] .movement-pixel-icon.is-light .movement-pixel-icon-sprite{animation:movement-pixel-walk .9s steps(1,end) infinite}.movement-options button[aria-pressed=true] .movement-pixel-icon.is-intense .movement-pixel-icon-sprite{animation:movement-pixel-lift 1.65s steps(1,end) infinite}.movement-sleep-zs{position:absolute;z-index:1;inset:0;overflow:hidden;color:#769f37;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-style:normal;font-weight:900;pointer-events:none}.movement-sleep-zs i{position:absolute;right:5px;bottom:23px;font-size:9px;font-style:normal;line-height:1;opacity:0;text-shadow:1px 0 currentColor}.movement-options button[aria-pressed=true] .movement-sleep-zs i{animation:movement-sleep-z 2.4s steps(6,end) infinite}.movement-sleep-zs i:nth-child(2){animation-delay:-.8s}.movement-sleep-zs i:nth-child(3){animation-delay:-1.6s}@keyframes movement-pixel-rest{0%{transform:translateZ(0)}25%{transform:translate3d(-20%,0,0)}50%{transform:translate3d(calc(-40% + 2px),0,0)}75%{transform:translate3d(-60%,0,0)}to{transform:translate3d(-80%,0,0)}}@keyframes movement-pixel-walk{0%{transform:translateZ(0)}25%{transform:translate3d(calc(-20% - 2px),0,0)}50%{transform:translate3d(calc(-40% - 4px),0,0)}75%{transform:translate3d(calc(-60% - 2px),0,0)}to{transform:translate3d(-80%,0,0)}}@keyframes movement-pixel-lift{0%{transform:translateZ(0)}12.5%{transform:translate3d(calc(-11.1111% + 1px),0,0)}25%{transform:translate3d(calc(-22.2222% + 2px),0,0)}37.5%{transform:translate3d(-33.3333%,1px,0)}50%{transform:translate3d(calc(-44.4444% + 1px),1px,0)}62.5%{transform:translate3d(calc(-55.5556% + 2px),1px,0)}75%{transform:translate3d(-66.6667%,2px,0)}87.5%{transform:translate3d(calc(-77.7778% + 1px),2px,0)}to{transform:translate3d(-88.8889%,0,0)}}@keyframes movement-sleep-z{0%{opacity:0;transform:translateZ(0) scale(.75)}18%,62%{opacity:.88}82%,to{opacity:0;transform:translate3d(7px,-20px,0) scale(1.12)}}.movement-options strong{font-size:13px;font-weight:800;line-height:1.18}.movement-options small{color:#70786b;font-size:10px;line-height:1.4}.app-shell[data-theme=dark] .movement-options button{border-color:#ffffff17;color:#f2f5eb;background:#ffffff0b}.app-shell[data-theme=dark] .movement-options button[aria-pressed=true]{border-color:#bee6778f;background:#b1da671f;box-shadow:inset 0 0 0 1px #bee6771f}.app-shell[data-theme=dark] .movement-options small{color:#f2f5eb8a}.check-field{display:grid;grid-template-columns:20px 1fr;align-items:start;gap:10px;padding:11px 12px;border:1px solid #e1e5da;border-radius:14px;cursor:pointer}.app-shell[data-theme=dark] .check-field{border-color:#ffffff14}.check-field input{width:18px;height:18px;margin:1px 0 0;accent-color:#8eb840}.check-field strong,.check-field small{display:block}.check-field strong{font-size:11px}.check-field small{margin-top:3px;color:#777e72;font-size:9px;line-height:1.35}.calculated-value,.neutral-note{margin:0;padding:10px 12px;border-radius:13px;color:#66705f;background:#f0f3eb;font-size:10px;line-height:1.45}.calculated-value{display:flex;align-items:center;justify-content:space-between}.calculated-value strong{color:#2b3326;font-size:12px}.app-shell[data-theme=dark] .calculated-value,.app-shell[data-theme=dark] .neutral-note{color:#f2f5eb9e;background:#ffffff0e}.app-shell[data-theme=dark] .calculated-value strong{color:#f2f5eb}.recovery-time-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.recovery-time-fields>button{position:relative;display:grid;min-width:0;min-height:82px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:10px;border:1px solid #dfe3d8;border-radius:17px;color:#343a31;background:linear-gradient(145deg,#f9faf6,#f0f3eb);box-shadow:0 9px 24px #333e2c0e;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.recovery-time-fields>button:active{transform:scale(.975)}.recovery-time-fields>button.is-active{border-color:#8cb54680;background:#f2f8e7;box-shadow:0 10px 28px #789e351f}.recovery-time-fields>button>span:nth-child(2){min-width:0}.recovery-time-fields small,.recovery-time-fields strong{display:block}.recovery-time-fields small{color:#788071;font-size:9px;font-weight:740}.recovery-time-fields strong{margin-top:3px;font-size:21px;line-height:1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.recovery-time-fields>button>i{position:absolute;top:8px;right:9px;color:#899183;font-size:7px;font-style:normal;font-weight:730}.recovery-time-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:13px;background:#ece8f6}.recovery-time-icon.is-wake{background:#f8edc8}.app-shell[data-theme=dark] .recovery-time-fields>button{border-color:#ffffff17;color:#edf2e7;background:#ffffff0b;box-shadow:none}.app-shell[data-theme=dark] .recovery-time-fields>button.is-active{border-color:#c9f36b57;background:#c9f36b17;box-shadow:0 12px 30px #00000024}.app-shell[data-theme=dark] .recovery-time-fields small,.app-shell[data-theme=dark] .recovery-time-fields>button>i{color:#f0f4e880}.app-shell[data-theme=dark] .recovery-time-icon{background:#d1c0f01f}.app-shell[data-theme=dark] .recovery-time-icon.is-wake{background:#f9d9751c}.recovery-section-heading{display:flex;align-items:center;justify-content:space-between}.recovery-section-heading strong,.recovery-section-heading small{display:block}.recovery-section-heading strong{color:#333b2f;font-size:11px}.recovery-section-heading small{margin-top:3px;color:#7a8174;font-size:8px;line-height:1.35}.additional-sleep-section{display:grid;gap:9px;padding:12px;border:1px solid #e1e5da;border-radius:18px;background:#f7f9f3b8}.additional-sleep-section>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.additional-sleep-section>header strong,.additional-sleep-section>header small{display:block}.additional-sleep-section>header strong{color:#343c30;font-size:11px}.additional-sleep-section>header small{margin-top:3px;color:#7a8274;font-size:8px;line-height:1.35}.additional-sleep-section>header em{display:grid;width:24px;height:24px;flex:0 0 auto;place-items:center;border-radius:999px;color:#4e612f;background:#e4f2c8;font-size:9px;font-style:normal;font-weight:820}.sleep-period-list{display:grid;gap:7px}.sleep-period-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:6px}.sleep-period-row>button:first-child{display:grid;min-width:0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:8px;border:1px solid #e0e5d9;border-radius:14px;color:#333b2f;background:#fff;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),border-color .16s ease,background-color .16s ease}.sleep-period-row>button:first-child:active{transform:scale(.98)}.sleep-period-row>button:first-child strong,.sleep-period-row>button:first-child small{display:block}.sleep-period-row>button:first-child strong{font-size:12px;font-variant-numeric:tabular-nums}.sleep-period-row>button:first-child small{margin-top:2px;color:#7b8375;font-size:8px}.sleep-period-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:#eeebf7}.sleep-period-remove{display:grid;width:34px;height:34px;place-items:center;padding:0;border:0;border-radius:11px;color:#8e685e;background:#94534213;font-size:18px;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.sleep-period-remove:active{transform:scale(.94)}.sleep-period-add{display:grid;width:100%;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:9px;border:1px dashed #cbd5bd;border-radius:14px;color:#45533b;background:#ffffffa3;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),border-color .16s ease,background-color .16s ease}.sleep-period-add:active{transform:scale(.985)}.sleep-period-add>span:first-child{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;color:#526c2f;background:#e5f2ca;font-size:17px;font-weight:800}.sleep-period-add strong,.sleep-period-add small{display:block}.sleep-period-add strong{font-size:10px}.sleep-period-add small{margin-top:3px;color:#7a8373;font-size:8px}.additional-sleep-editor{display:grid;gap:9px;padding:10px;border:1px solid rgba(140,181,70,.34);border-radius:16px;background:#f6faee;box-shadow:0 10px 28px #6f913214}.additional-sleep-editor>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:9px}.additional-sleep-editor>div:first-child strong{font-size:10px}.additional-sleep-editor>div:first-child small{color:#6e795f;font-size:8px}.additional-sleep-editor .recovery-time-fields>button{min-height:70px;grid-template-columns:minmax(0,1fr);padding:9px}.additional-sleep-editor .recovery-time-icon{display:none}.additional-sleep-editor .recovery-time-fields strong{font-size:18px}.additional-sleep-editor>footer{display:grid;grid-template-columns:.8fr 1.25fr;gap:7px}.additional-sleep-editor>footer button{min-height:39px;border:0;border-radius:12px;color:#636c5d;background:#404b3912;font-size:9px;font-weight:800;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.additional-sleep-editor>footer button:last-child{color:#2e3a23;background:#d1ed91}.additional-sleep-editor>footer button:active{transform:scale(.97)}.sleep-total>span{display:grid;gap:2px}.sleep-total>span small{color:#8a9284;font-size:8px}.app-shell[data-theme=dark] .recovery-section-heading strong,.app-shell[data-theme=dark] .additional-sleep-section>header strong{color:#eef4e8}.app-shell[data-theme=dark] .recovery-section-heading small,.app-shell[data-theme=dark] .additional-sleep-section>header small{color:#f0f5ea80}.app-shell[data-theme=dark] .additional-sleep-section{border-color:#ffffff14;background:#ffffff07}.app-shell[data-theme=dark] .additional-sleep-section>header em{color:#d7ef9e;background:#c9f36b1c}.app-shell[data-theme=dark] .sleep-period-row>button:first-child{border-color:#ffffff14;color:#edf3e7;background:#ffffff0b}.app-shell[data-theme=dark] .sleep-period-row>button:first-child small,.app-shell[data-theme=dark] .sleep-period-add small{color:#f0f5ea80}.app-shell[data-theme=dark] .sleep-period-icon{background:#d1c0f01a}.app-shell[data-theme=dark] .sleep-period-remove{color:#d6ada1;background:#df836917}.app-shell[data-theme=dark] .sleep-period-add{border-color:#d2e7b12e;color:#eaf2e2;background:#ffffff06}.app-shell[data-theme=dark] .sleep-period-add>span:first-child{color:#d7ef9e;background:#c9f36b1a}.app-shell[data-theme=dark] .additional-sleep-editor{border-color:#c9f36b38;background:#c9f36b0e;box-shadow:none}.app-shell[data-theme=dark] .additional-sleep-editor>div:first-child small{color:#f0f5ea8a}.app-shell[data-theme=dark] .additional-sleep-editor>footer button{color:#f0f5eaa8;background:#fff1}.app-shell[data-theme=dark] .additional-sleep-editor>footer button:last-child{color:#2e3a23;background:#d1ed91}.app-shell[data-theme=dark] .sleep-total>span small{color:#f0f5ea70}.time-picker-modal-layer{position:fixed;z-index:45;inset:0;display:grid;width:min(100%,440px);margin:0 auto;place-items:center;padding:20px}.time-picker-modal-backdrop{position:absolute;inset:0;border:0;background:#11140f9e;-webkit-backdrop-filter:blur(5px) saturate(.88);backdrop-filter:blur(5px) saturate(.88);cursor:default;animation:time-picker-backdrop-in .18s var(--ease-out) both}.time-picker-dialog{position:relative;z-index:1;width:min(100%,370px);padding:17px;border:1px solid rgba(116,137,98,.18);border-radius:25px;outline:none;color:#283024;background:#f9fbf6f5;box-shadow:0 28px 80px #141c0f47;-webkit-backdrop-filter:blur(24px) saturate(1.12);backdrop-filter:blur(24px) saturate(1.12);transform-origin:center;animation:time-picker-dialog-in .22s var(--ease-out) both}.time-picker-modal-layer.is-closing{pointer-events:none}.time-picker-modal-layer.is-closing .time-picker-modal-backdrop{animation:none;opacity:0;transition:opacity .14s ease}.time-picker-modal-layer.is-closing .time-picker-dialog{animation:none;opacity:0;transform:translate3d(0,6px,0) scale(.98);transition:transform .15s var(--ease-out),opacity .13s ease}.photo-source-modal-layer{position:fixed;z-index:55;inset:0;display:grid;width:min(100%,440px);margin:0 auto;align-items:end;padding:12px 12px max(12px,env(safe-area-inset-bottom));isolation:isolate}.photo-source-backdrop{position:absolute;z-index:0;inset:0;border:0;background:#0d100c9e;-webkit-backdrop-filter:blur(6px) saturate(.9);backdrop-filter:blur(6px) saturate(.9);cursor:default;opacity:1;transition:opacity .17s ease}.photo-source-sheet{position:relative;z-index:1;width:100%;padding:0 14px 14px;overflow:hidden;border:1px solid rgba(118,139,99,.18);border-radius:26px;outline:none;color:#273023;background:#f9fbf6f7;box-shadow:0 26px 75px #11170d52;-webkit-backdrop-filter:blur(24px) saturate(1.12);backdrop-filter:blur(24px) saturate(1.12);transform:translateZ(0);transition:transform .24s var(--ease-drawer),opacity .17s ease;will-change:transform}@starting-style{.photo-source-backdrop{opacity:0}.photo-source-sheet{opacity:.92;transform:translate3d(0,100%,0)}}.photo-source-modal-layer.is-closing{pointer-events:none}.photo-source-modal-layer.is-closing .photo-source-backdrop{opacity:0}.photo-source-modal-layer.is-closing .photo-source-sheet{opacity:.94;transform:translate3d(0,108%,0)}.photo-source-grabber{display:grid;height:30px;place-items:center;margin:0 -14px;touch-action:none;cursor:grab}.photo-source-grabber:active{cursor:grabbing}.photo-source-grabber i{width:38px;height:4px;border-radius:99px;background:#d5d9cf}.photo-source-sheet>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:2px 2px 14px}.photo-source-sheet>header small{display:block;color:#7a8472;font-size:9px;font-weight:820;letter-spacing:.08em;text-transform:uppercase}.photo-source-sheet>header h3{margin:4px 0 0;font-size:21px;line-height:1.05;letter-spacing:-.035em}.photo-source-sheet>header p{margin:5px 0 0;color:#737c6d;font-size:11px}.photo-source-sheet>header>button{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;padding:0;border:0;border-radius:50%;color:#687064;background:#4b574214;font-size:18px;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.photo-source-sheet>header>button:active{transform:scale(.92)}.photo-source-options{display:grid;gap:8px}.photo-source-options>button{display:grid;min-height:72px;grid-template-columns:48px minmax(0,1fr) 20px;align-items:center;gap:11px;padding:9px 12px 9px 9px;border:1px solid rgba(91,109,75,.11);border-radius:18px;color:#30382b;background:#ffffffb3;text-align:left;cursor:pointer;transition:transform .14s var(--ease-out),border-color .16s ease,background-color .16s ease}.photo-source-options>button:active{transform:scale(.98)}.photo-source-options>button:focus-visible,.photo-source-sheet>header>button:focus-visible{outline:3px solid rgba(154,187,98,.28);outline-offset:2px}.photo-source-options>button>span:nth-child(2){min-width:0}.photo-source-options strong,.photo-source-options small{display:block}.photo-source-options strong{font-size:13px;font-weight:810}.photo-source-options small{margin-top:4px;overflow:hidden;color:#778170;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.photo-source-options>button>i{color:#899481;font-size:23px;font-style:normal;font-weight:560;text-align:right}.photo-source-option-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;color:#5e7d2d;background:#e9f4d6}.photo-source-option-icon.is-gallery{color:#7565a2;background:#efebf8}.photo-source-option-icon svg{width:27px;height:27px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.photo-source-note{margin:11px 0 0;color:#899184;font-size:9px;text-align:center}.app-shell[data-theme=dark] .photo-source-sheet{border-color:#ffffff1a;color:#f1f5eb;background:#22281ff7;box-shadow:0 26px 75px #00000080}.app-shell[data-theme=dark] .photo-source-grabber i{background:#ffffff2e}.app-shell[data-theme=dark] .photo-source-sheet>header small,.app-shell[data-theme=dark] .photo-source-sheet>header p,.app-shell[data-theme=dark] .photo-source-options small,.app-shell[data-theme=dark] .photo-source-note{color:#f1f5eb85}.app-shell[data-theme=dark] .photo-source-sheet>header>button{color:#f1f5eb;background:#ffffff12}.app-shell[data-theme=dark] .photo-source-options>button{border-color:#ffffff14;color:#f1f5eb;background:#ffffff0d}.app-shell[data-theme=dark] .photo-source-options>button>i{color:#f1f5eb6b}.app-shell[data-theme=dark] .photo-source-option-icon{color:#d5eea1;background:#c9f36b1a}.app-shell[data-theme=dark] .photo-source-option-icon.is-gallery{color:#d7c9f2;background:#c4adeb1a}.time-picker-dialog>header{display:grid;grid-template-columns:42px minmax(0,1fr) 34px;align-items:center;gap:11px}.time-picker-dialog>header>span:nth-child(2){min-width:0}.time-picker-dialog>header small,.time-picker-dialog>header strong{display:block}.time-picker-dialog>header small{color:#737c6d;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.time-picker-dialog>header strong{overflow:hidden;margin-top:3px;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.time-picker-dialog>header>button{display:grid;width:34px;height:34px;place-items:center;padding:0;border:0;border-radius:50%;color:#687064;background:#4b574214;font-size:18px;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.time-picker-dialog>header>button:active{transform:scale(.92)}.time-picker-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:#aecc6f26}.time-picker-dials{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);align-items:center;gap:5px;margin-top:17px;padding:0 12px;overflow:hidden;border:1px solid rgba(83,101,68,.1);border-radius:20px;background:#ffffff9e}.time-picker-dials>i{position:relative;z-index:2;color:#64705d;font-size:30px;font-style:normal;font-weight:800;text-align:center;transform:translateY(-1px)}.time-picker-wheel-shell{position:relative;min-width:0;height:162px}.time-picker-wheel-shell:before{content:"";position:absolute;z-index:0;top:50%;right:0;left:0;height:54px;border-radius:15px;background:#e7f1d7;box-shadow:inset 0 0 0 1px #82a5481f;transform:translateY(-50%);pointer-events:none}.time-picker-wheel-scroll{position:relative;z-index:1;height:162px;padding:54px 0;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none;scroll-snap-type:y mandatory;overscroll-behavior:contain;touch-action:none;cursor:grab;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 26%,#000 74%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 26%,#000 74%,transparent)}.time-picker-wheel-scroll:active{cursor:grabbing}.time-picker-wheel-scroll::-webkit-scrollbar{display:none}.time-picker-wheel-scroll button{display:grid;width:100%;height:54px;place-items:center;padding:0;border:0;scroll-snap-align:center;color:#8c9585;background:transparent;font-size:16px;font-weight:680;font-variant-numeric:tabular-nums;cursor:inherit;transition:color .12s ease,opacity .12s ease,transform .12s var(--ease-out)}.time-picker-wheel-scroll button[aria-selected=true]{color:#293224;font-size:29px;font-weight:820;letter-spacing:-.045em}.time-picker-wheel-scroll button:active{transform:scale(.96)}.time-picker-hint{margin:9px 0 15px;color:#7a8374;font-size:10px;line-height:1.4;text-align:center}.time-picker-dialog>footer{display:grid;grid-template-columns:.8fr 1.35fr;gap:9px}.time-picker-dialog>footer button{min-height:47px;border:0;border-radius:14px;font-size:11px;font-weight:800;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.time-picker-dialog>footer button:active{transform:scale(.97)}.time-picker-cancel{color:#687064;background:#4b574213}.time-picker-confirm{color:#29351f;background:#d0ee8e;box-shadow:0 9px 22px #8bb3442b}.app-shell[data-theme=dark] .time-picker-dialog{border-color:#ffffff1c;color:#edf3e7;background:#272e24f5;box-shadow:0 30px 84px #0000007a}.app-shell[data-theme=dark] .time-picker-dialog>header small{color:#eef4e785}.app-shell[data-theme=dark] .time-picker-dialog>header>button{color:#edf3e7;background:#ffffff13}.app-shell[data-theme=dark] .time-picker-icon{background:#c9f36b1a}.app-shell[data-theme=dark] .time-picker-dials{border-color:#ffffff14;background:#ffffff09}.app-shell[data-theme=dark] .time-picker-dials>i{color:#eff5e9b8}.app-shell[data-theme=dark] .time-picker-wheel-shell:before{background:#c9f36b1f;box-shadow:inset 0 0 0 1px #c9f36b21}.app-shell[data-theme=dark] .time-picker-wheel-scroll button{color:#f0f5ea6e}.app-shell[data-theme=dark] .time-picker-wheel-scroll button[aria-selected=true]{color:#eff8e3}.app-shell[data-theme=dark] .time-picker-hint{color:#f1f6ea8a}.app-shell[data-theme=dark] .time-picker-cancel{color:#f1f6eaad;background:#fff1}@keyframes time-picker-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes time-picker-dialog-in{0%{transform:translate3d(0,8px,0) scale(.97);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}.weight-step-field{display:grid;gap:6px}.weight-step-field>label{color:#747a70;font-size:10px;font-weight:760}.app-shell[data-theme=dark] .weight-step-field>label{color:#f0f4e88f}.weight-stepper{display:grid;grid-template-columns:72px minmax(0,1fr) 72px;gap:8px}.weight-stepper>button,.weight-value-input{min-width:0;min-height:60px;border:1px solid #dfe1d9;border-radius:15px}.weight-stepper>button{color:#5f6a58;background:#f0f3eb;font-size:12px;font-weight:800;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease,opacity .16s ease}.weight-stepper>button:active{transform:scale(.96)}.weight-stepper>button:disabled{opacity:.38;cursor:default}.weight-stepper>button:focus-visible{outline:3px solid rgba(154,187,98,.28);outline-offset:2px}.weight-value-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.weight-value-input:focus-within{border-color:#9abb62;box-shadow:0 0 0 3px #9abb6224}.weight-value-input input{width:100%;min-width:0;height:58px;padding:8px 4px 8px 12px;border:0;outline:none;color:#20251d;background:transparent;font-size:24px;font-weight:800;text-align:center;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.weight-value-input span{padding:0 12px 0 5px;color:#64705d;font-size:12px;font-weight:800}.app-shell[data-theme=dark] .weight-stepper>button,.app-shell[data-theme=dark] .weight-value-input{border-color:#ffffff17;color:#f2f5eb;background:#ffffff0e}.app-shell[data-theme=dark] .weight-value-input input{color:#f2f5eb}.app-shell[data-theme=dark] .weight-value-input span{color:#f2f5eb9e}.storage-card{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:start;gap:10px;padding:13px;border:1px solid #dfe7d5;border-radius:16px;background:#f2f7ea}.app-shell[data-theme=dark] .storage-card{border-color:#cbeb8f1f;background:#cbeb8f0f}.storage-dot{width:9px;height:9px;margin-top:3px;border-radius:50%;background:#8db841;box-shadow:0 0 0 4px #8db8411f}.storage-card strong{display:block;font-size:12px}.storage-card p{margin:4px 0 0;color:#71796c;font-size:9px;line-height:1.45}.storage-card>small{color:#718064;font-size:8px;font-weight:780;white-space:nowrap}.app-shell[data-theme=dark] .storage-card p,.app-shell[data-theme=dark] .storage-card>small{color:#f2f5eb94}.storage-stats{display:grid;gap:0;margin:0;overflow:hidden;border:1px solid #e1e5dc;border-radius:15px}.app-shell[data-theme=dark] .storage-stats{border-color:#ffffff14}.storage-stats div{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;border-bottom:1px solid #e7eae3}.storage-stats div:last-child{border-bottom:0}.app-shell[data-theme=dark] .storage-stats div{border-color:#ffffff12}.storage-stats dt{color:#6f776a;font-size:10px}.storage-stats dd{margin:0;font-size:12px;font-weight:810;font-variant-numeric:tabular-nums}.app-shell[data-theme=dark] .storage-stats dt{color:#f2f5eb94}.account-form{display:grid;gap:14px}.account-preserve-note,.account-current-card{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:11px;padding:13px;border:1px solid #dfe8d3;border-radius:17px;background:#f1f7e8}.account-preserve-note>span,.account-current-card>span{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:#ffffffa6}.account-preserve-note strong,.account-current-card strong{display:block;font-size:13px;line-height:1.3;overflow-wrap:anywhere}.account-preserve-note p,.account-current-card p{margin:4px 0 0;color:#6b7465;font-size:11px;line-height:1.45}.account-current-card small{display:block;margin-bottom:3px;color:#718064;font-size:9px;font-weight:820;letter-spacing:.07em}.app-shell[data-theme=dark] .account-preserve-note,.app-shell[data-theme=dark] .account-current-card{border-color:#cdef8d21;background:#cdef8d12}.app-shell[data-theme=dark] .account-preserve-note>span,.app-shell[data-theme=dark] .account-current-card>span{background:#ffffff0f}.app-shell[data-theme=dark] .account-preserve-note p,.app-shell[data-theme=dark] .account-current-card p,.app-shell[data-theme=dark] .account-current-card small{color:#f2f5eb9e}.account-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border-radius:15px;background:#ecefe7}.account-mode-switch button{min-height:42px;border:0;border-radius:12px;color:#73796e;background:transparent;font-size:11px;font-weight:780;cursor:pointer;transition:transform .14s var(--ease-out),color .16s ease,background-color .16s ease,box-shadow .16s ease}.account-mode-switch button[aria-selected=true]{color:#26301f;background:#fff;box-shadow:0 4px 14px #2e382714}.account-mode-switch button:active{transform:scale(.97)}.app-shell[data-theme=dark] .account-mode-switch{background:#ffffff0e}.app-shell[data-theme=dark] .account-mode-switch button{color:#f2f5eb94}.app-shell[data-theme=dark] .account-mode-switch button[aria-selected=true]{color:#eff5e6;background:#ffffff17;box-shadow:none}.account-fields{display:grid;gap:12px}.account-fields label{display:grid;gap:6px}.account-fields label>span{color:#646c5f;font-size:11px;font-weight:760}.account-fields input{width:100%;min-height:50px;padding:0 14px;border:1px solid #dfe1d9;border-radius:15px;outline:none;color:#20251d;background:#fff;font:inherit;font-size:14px;transition:border-color .16s ease,box-shadow .16s ease}.account-fields input:focus{border-color:#9abb62;box-shadow:0 0 0 3px #9abb6224}.app-shell[data-theme=dark] .account-fields label>span{color:#f2f5eba3}.app-shell[data-theme=dark] .account-fields input{border-color:#ffffff17;color:#f2f5eb;background:#ffffff0e}.account-submit{width:100%;font-size:12px}.account-submit:disabled{opacity:.58;cursor:wait}.account-error{margin:0;padding:10px 12px;border-radius:13px;color:#8e4943;background:#faeeec;font-size:11px;line-height:1.45}.app-shell[data-theme=dark] .account-error{color:#efb0a9;background:#e2706417}.account-conflict{display:grid;gap:7px;padding:12px;border:1px solid rgba(176,112,63,.2);border-radius:15px;background:#fbf2e8}.account-conflict strong{font-size:12px}.account-conflict p{margin:0;color:#806b58;font-size:10px;line-height:1.5}.account-conflict button{min-height:42px;margin-top:3px;border:0;border-radius:12px;color:#fff;background:#8b5d3d;font-size:11px;font-weight:790;cursor:pointer;transition:transform .14s var(--ease-out)}.account-conflict button:active{transform:scale(.97)}.app-shell[data-theme=dark] .account-conflict{border-color:#eeb26f29;background:#c47e4514}.app-shell[data-theme=dark] .account-conflict p{color:#f4dabea8}.account-logout{margin-top:2px}.tutorial-settings-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:12px;border:1px solid #e1e5dc;border-radius:15px;background:#ffffff8a}.tutorial-settings-card strong{display:block;font-size:12px}.tutorial-settings-card p{margin:3px 0 0;color:#747b70;font-size:9px;line-height:1.35}.tutorial-settings-card button{min-height:34px;padding:0 10px;border:1px solid #dbe2d2;border-radius:11px;color:#48553d;background:#eff5e8;font-size:9px;font-weight:760;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.tutorial-settings-card button:active{transform:scale(.96)}.app-shell[data-theme=dark] .tutorial-settings-card{border-color:#ffffff14;background:#ffffff09}.app-shell[data-theme=dark] .tutorial-settings-card p{color:#f2f5eb94}.app-shell[data-theme=dark] .tutorial-settings-card button{border-color:#cdef8d21;color:#e2efcf;background:#cdef8d13}.tutorial-layer{position:fixed;z-index:80;inset:0;width:min(100%,440px);margin:0 auto;overflow:hidden;color:#f5f8ee;background-color:#0d120cb8;touch-action:none;overscroll-behavior:contain}.tutorial-panel{position:absolute;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:100%;overflow:hidden;background:radial-gradient(circle at 50% 31%,rgba(201,239,124,.19),transparent 30%),radial-gradient(circle at 10% 0,rgba(136,173,91,.16),transparent 34%),linear-gradient(165deg,#20281c,#151a13 58%,#10130f);box-shadow:0 0 80px #0000005c;-webkit-user-select:none;user-select:none;will-change:transform}.tutorial-topbar{position:relative;z-index:2;display:grid;min-height:calc(69px + env(safe-area-inset-top));align-items:start;justify-items:center;padding:max(10px,env(safe-area-inset-top)) 16px 8px}.tutorial-dismiss-hint{display:grid;justify-items:center;gap:7px;color:#f1f7e885}.tutorial-dismiss-hint i{width:42px;height:4px;border-radius:99px;background:#f5faee75}.tutorial-dismiss-hint span{font-size:9px;font-weight:720;letter-spacing:.025em}.tutorial-topbar>button{position:absolute;top:max(12px,env(safe-area-inset-top));right:16px;display:grid;width:38px;height:38px;place-items:center;padding:0 0 2px;border:1px solid rgba(255,255,255,.09);border-radius:50%;color:#f8fbf3c7;background:#ffffff0f;font-size:23px;font-weight:350;line-height:1;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.tutorial-topbar>button:active{transform:scale(.92)}.tutorial-topbar>button:focus-visible,.tutorial-dots button:focus-visible,.tutorial-actions button:focus-visible{outline:2px solid #d2ef91;outline-offset:3px}.tutorial-viewport{min-height:0;overflow:hidden}.tutorial-track{display:flex;width:100%;height:100%;transform:translateZ(0);transition:transform .34s cubic-bezier(.32,.72,0,1);will-change:transform}.tutorial-slide{display:grid;flex:0 0 100%;grid-template-rows:minmax(210px,1fr) auto;min-width:0;min-height:0;padding:8px 24px 16px}.tutorial-visual-stage{display:grid;min-height:0;place-items:center}.tutorial-copy{align-self:end;max-width:360px}.tutorial-copy p{margin:0 0 9px;color:#cdea88;font-size:10px;font-weight:820;letter-spacing:.12em;text-transform:uppercase}.tutorial-copy h2{margin:0;white-space:pre-line;font-size:clamp(29px,8.5vw,38px);line-height:.97;letter-spacing:-.057em}.tutorial-copy>span{display:block;max-width:345px;margin-top:15px;color:#eff4e8a3;font-size:13px;line-height:1.52}.tutorial-orb-visual{--tutorial-level: 38%;--tutorial-hue: 82;position:relative;display:grid;width:min(54vw,226px);height:min(54vw,226px);place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.48);border-radius:50%;background:#dae1d317;box-shadow:inset 18px 15px 28px #ffffff29,inset -22px -24px 38px #00000040,0 28px 74px hsla(var(--tutorial-hue),62%,55%,.18);isolation:isolate;transition:border-color .52s ease,box-shadow .62s var(--ease-in-out),background-color .52s ease}.tutorial-orb-visual.is-score{border-color:#dcf8a5c7;background:#e2f4c11f;box-shadow:inset 18px 15px 28px #ffffff36,inset -22px -24px 38px #00000038,0 30px 86px #b3e35a4d}.tutorial-orb-liquid-level{position:absolute;z-index:-2;inset:0;transform:translate3d(0,var(--tutorial-level),0);transition:transform .72s var(--ease-in-out);will-change:transform}.tutorial-orb-liquid{position:absolute;right:-18%;bottom:0;left:-18%;height:100%;border-radius:44% 48% 0 0;background:radial-gradient(circle at 38% 28%,rgba(244,255,211,.42),transparent 25%),linear-gradient(165deg,hsl(var(--tutorial-hue) 72% 74%),hsl(var(--tutorial-hue) 48% 42%));animation:tutorial-liquid 5.8s ease-in-out infinite}.tutorial-orb-liquid:before{content:"";position:absolute;top:-8px;right:-5%;left:-5%;height:20px;border-radius:50%;background:hsla(var(--tutorial-hue),80%,82%,.82);transform:rotate(-2deg);animation:tutorial-wave 3.4s ease-in-out infinite alternate}.tutorial-orb-shine{position:absolute;top:13%;left:20%;width:22%;height:35%;border-radius:50%;background:#ffffff57;filter:blur(1px);transform:rotate(24deg)}.tutorial-orb-copy{position:relative;z-index:2;display:grid;justify-items:center;gap:5px;text-align:center;text-shadow:0 2px 12px rgba(18,28,14,.28)}.tutorial-orb-copy strong{font-size:42px;line-height:1;letter-spacing:-.055em;font-variant-numeric:tabular-nums}.tutorial-orb-copy small{font-size:8px;font-weight:850;letter-spacing:.11em}.tutorial-orb-copy .tutorial-welcome-label{font-size:30px;line-height:.96;letter-spacing:-.055em}.tutorial-energy-orb{--orb-size: min(54vw, 226px);cursor:default;transition:--liquid-hue var(--liquid-transition-duration, .76s) var(--ease-in-out),border-color var(--liquid-transition-duration, .76s) ease,background-color var(--liquid-transition-duration, .76s) ease,box-shadow var(--liquid-transition-duration, .76s) var(--ease-in-out),transform .16s var(--ease-out)}.tutorial-energy-orb:active{transform:none}.tutorial-energy-orb:is(.is-score-transitioning,.is-score){border-color:#dcf8a5c7;background-color:#e2f4c11f;box-shadow:inset 18px 15px 28px #ffffff36,inset -22px -24px 38px #00000038,0 30px 86px #b3e35a4d}.tutorial-energy-copy{position:relative;z-index:2;text-align:center}.tutorial-energy-copy strong{font-size:42px}.tutorial-energy-copy .tutorial-orb-state>span{font-size:8px;font-weight:750;letter-spacing:.08em;opacity:.7}.tutorial-orb-state{display:grid;justify-items:center;gap:5px;animation:tutorial-orb-state-in .44s var(--ease-out) both}.tutorial-score-sparkles{position:absolute;z-index:1;inset:0;pointer-events:none}.tutorial-score-sparkles i{position:absolute;width:6px;height:6px;border-radius:50%;background:#e8ffc0;box-shadow:0 0 12px #deff9ee6;opacity:0}.tutorial-score-sparkles i:nth-child(1){top:22%;left:19%}.tutorial-score-sparkles i:nth-child(2){top:15%;right:28%;width:4px;height:4px}.tutorial-score-sparkles i:nth-child(3){top:43%;right:13%}.tutorial-score-sparkles i:nth-child(4){right:25%;bottom:15%;width:4px;height:4px}.tutorial-score-sparkles i:nth-child(5){bottom:19%;left:22%}.tutorial-score-sparkles i:nth-child(6){top:48%;left:12%;width:4px;height:4px}.tutorial-energy-orb.is-score .tutorial-score-sparkles i{animation:tutorial-score-sparkle .9s var(--ease-out) both}.tutorial-energy-orb.is-score .tutorial-score-sparkles i:nth-child(2){animation-delay:55ms}.tutorial-energy-orb.is-score .tutorial-score-sparkles i:nth-child(3){animation-delay:.11s}.tutorial-energy-orb.is-score .tutorial-score-sparkles i:nth-child(4){animation-delay:165ms}.tutorial-energy-orb.is-score .tutorial-score-sparkles i:nth-child(5){animation-delay:.22s}.tutorial-energy-orb.is-score .tutorial-score-sparkles i:nth-child(6){animation-delay:275ms}.tutorial-signals{display:grid;width:min(92%,350px);gap:10px}.tutorial-signals>span{display:flex;min-height:68px;align-items:center;gap:14px;padding:10px 17px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:#ffffff0e;box-shadow:0 12px 30px #0000001f;transform-origin:center;will-change:transform,opacity;animation:tutorial-signal-focus 9s cubic-bezier(.77,0,.175,1) infinite}.tutorial-signals>span:nth-child(2){animation-delay:-6s}.tutorial-signals>span:nth-child(3){animation-delay:-3s}.tutorial-slide[aria-hidden=true] .tutorial-signals>span{animation-play-state:paused}.tutorial-signals small{font-size:13px;font-weight:780}.tutorial-next-card{display:grid;width:min(92%,350px);padding:19px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:#f6f9f014;box-shadow:0 24px 60px #00000038}.tutorial-next-state{display:grid;grid-area:1 / 1;gap:9px;opacity:0;transform:translate3d(0,10px,0) scale(.985);will-change:transform,opacity;animation:tutorial-next-state 9s cubic-bezier(.77,0,.175,1) infinite}.tutorial-next-state:nth-child(2){animation-delay:-6s}.tutorial-next-state:nth-child(3){animation-delay:-3s}.tutorial-slide[aria-hidden=true] .tutorial-next-state{animation-play-state:paused}.tutorial-next-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.tutorial-next-progress i{height:5px;border-radius:99px;background:#ffffff21}.tutorial-next-progress i.is-filled{background:#cdec88}.tutorial-next-state>small{margin-top:6px;color:#eff4e875;font-size:9px;font-weight:800;letter-spacing:.1em}.tutorial-next-state>strong{font-size:23px;letter-spacing:-.04em}.tutorial-next-button{display:flex;min-height:50px;align-items:center;gap:10px;margin-top:7px;padding:0 14px;border-radius:16px;color:#26301e;background:#d0ee8e;font-size:12px;font-weight:820}.tutorial-next-emoji{display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:8px;background:#d0ee8e}.tutorial-next-emoji .emoji{transform:scale(1.12)}.tutorial-calendar{display:flex;width:100%;align-items:center;justify-content:center;gap:7px}.tutorial-calendar>span{position:relative;display:grid;width:56px;min-height:82px;align-content:center;gap:8px;justify-items:center;padding:14px 5px 11px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#ffffff0e}.tutorial-calendar>span.is-filled{border-color:#cdec8e33;background:#cdec8e1a}.tutorial-calendar>span.is-missed{opacity:.64;transform:translate3d(0,15px,0)}.tutorial-calendar>span.is-current{border-color:#cdec8eb8;background:#cdec8e26;box-shadow:0 0 0 3px #cdec8e14,0 15px 34px #91be3c21}.tutorial-calendar>span.is-future{opacity:.34}.tutorial-calendar small{color:#f0f5eaa8;font-size:9px;font-weight:800}.tutorial-calendar i{position:absolute;bottom:-17px;color:#d7f59a;font-size:7px;font-style:normal;font-weight:820;letter-spacing:.05em;text-transform:uppercase}.tutorial-account-visual{display:grid;width:min(91%,352px);justify-items:center}.tutorial-account-records{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tutorial-account-records>span{position:relative;display:grid;min-height:84px;align-content:center;justify-items:center;gap:6px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#ffffff0e;box-shadow:0 12px 28px #0000001f;animation:tutorial-account-record 4.5s var(--ease-in-out) infinite}.tutorial-account-records>span:nth-child(2){animation-delay:-3s}.tutorial-account-records>span:nth-child(3){animation-delay:-1.5s}.tutorial-account-records small{color:#f1f6eab8;font-size:10px;font-weight:780}.tutorial-account-records i{position:absolute;right:10px;bottom:8px;width:6px;height:6px;border-radius:50%;background:#cdec88;box-shadow:0 0 0 4px #cdec881a}.tutorial-account-route{position:relative;width:2px;height:38px;overflow:hidden;background:#cdec8824}.tutorial-account-route i{position:absolute;inset:0;background:linear-gradient(180deg,transparent,#cdec88,transparent);transform:translate3d(0,-100%,0);animation:tutorial-account-flow 1.5s linear infinite}.tutorial-account-card{display:grid;width:88%;min-height:78px;grid-template-columns:46px minmax(0,1fr) 28px;align-items:center;gap:11px;padding:12px 14px;border:1px solid rgba(205,236,136,.24);border-radius:21px;background:#cdec881a;box-shadow:0 20px 44px #0000002e}.tutorial-account-card>span{display:grid;width:46px;height:46px;place-items:center;border-radius:15px;background:#ffffff12}.tutorial-account-card small,.tutorial-account-card strong{display:block}.tutorial-account-card small{color:#def0b89e;font-size:8px;font-weight:820;letter-spacing:.08em}.tutorial-account-card strong{margin-top:4px;font-size:13px}.tutorial-account-card b{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;color:#26301e;background:#cdec88;font-size:13px}.tutorial-slide[aria-hidden=true] .tutorial-account-records>span,.tutorial-slide[aria-hidden=true] .tutorial-account-route i{animation-play-state:paused}.tutorial-footer{position:relative;z-index:2;padding:7px 24px max(21px,env(safe-area-inset-bottom))}.tutorial-dots{display:flex;min-height:28px;align-items:center;justify-content:center;gap:7px}.tutorial-dots button{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:#f5f9ee33;cursor:pointer;transition:width .22s var(--ease-out),background-color .22s ease}.tutorial-dots button.is-active{width:22px;background:#cdea88}.tutorial-actions{display:grid;grid-template-columns:1fr 1.45fr;min-height:52px;gap:10px;margin-top:5px}.tutorial-actions button{border:0;border-radius:17px;font-size:12px;font-weight:820;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.tutorial-actions button:active{transform:scale(.97)}.tutorial-back{color:#f3f7ecc2;background:#ffffff13}.tutorial-next{color:#26301e;background:#d0ee8e;box-shadow:0 12px 28px #89b53c29}.tutorial-next.is-wide{grid-column:1 / -1}@keyframes tutorial-liquid{0%,to{transform:translate3d(-2%,0,0) rotate(-1deg)}50%{transform:translate3d(2%,3px,0) rotate(1.5deg)}}@keyframes tutorial-wave{0%{transform:translate3d(-2%,0,0) rotate(-2deg) scaleX(.98)}to{transform:translate3d(2%,2px,0) rotate(2deg) scaleX(1.03)}}@keyframes tutorial-orb-state-in{0%{filter:blur(2px);transform:translate3d(0,6px,0) scale(.97);opacity:0}to{filter:blur(0);transform:translateZ(0) scale(1);opacity:1}}@keyframes tutorial-score-sparkle{0%{transform:scale(.6);opacity:0}32%{transform:scale(1.25);opacity:1}to{transform:scale(.85);opacity:0}}@keyframes tutorial-signal-focus{0%,27%{transform:translate3d(13px,0,0) scale(1.025);opacity:1}34%,93%{transform:translate3d(-5px,0,0) scale(.965);opacity:.58}to{transform:translate3d(13px,0,0) scale(1.025);opacity:1}}@keyframes tutorial-next-state{0%,26%{transform:translateZ(0) scale(1);opacity:1}31%,93%{transform:translate3d(0,-10px,0) scale(.985);opacity:0}94%{transform:translate3d(0,10px,0) scale(.985);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes tutorial-account-record{0%,28%{transform:translate3d(0,-4px,0) scale(1.02);border-color:#cdec883d;opacity:1}36%,92%{transform:translate3d(0,3px,0) scale(.98);border-color:#ffffff17;opacity:.58}to{transform:translate3d(0,-4px,0) scale(1.02);border-color:#cdec883d;opacity:1}}@keyframes tutorial-account-flow{0%{transform:translate3d(0,-100%,0)}to{transform:translate3d(0,100%,0)}}@keyframes account-status-pulse{0%,to{opacity:.62;transform:scale(.97)}50%{opacity:1;transform:scale(1)}}.danger-outline-button{width:100%;min-height:46px;border:1px solid rgba(159,75,65,.25);border-radius:14px;color:#934d45;background:#af53480e;font-size:11px;font-weight:760;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease}.danger-outline-button:active{transform:scale(.97)}.app-shell[data-theme=dark] .danger-outline-button{border-color:#ec8f8540;color:#eca096;background:#ec8f8512}.reset-confirmation{padding:13px;border:1px solid rgba(159,75,65,.22);border-radius:16px;background:#fbf1ef}.app-shell[data-theme=dark] .reset-confirmation{border-color:#ec8f8533;background:#ec8f8512}.reset-confirmation>strong{font-size:12px}.reset-confirmation>p{margin:5px 0 12px;color:#84645f;font-size:9px;line-height:1.45}.app-shell[data-theme=dark] .reset-confirmation>p{color:#f4d0cbb3}.reset-confirmation>div{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.reset-confirmation button{min-height:42px;border:1px solid rgba(75,82,70,.12);border-radius:12px;color:#555e50;background:#ffffffad;font-size:10px;font-weight:750;cursor:pointer;transition:transform .14s var(--ease-out)}.reset-confirmation button.is-danger{border-color:#9f5047;color:#fff;background:#a9564c}.reset-confirmation button:active{transform:scale(.97)}.meal-input{display:block;width:100%;min-height:76px;resize:vertical;padding:13px 14px;border:1px solid #dfe1d9;border-radius:15px;outline:none;color:#20251d;background:#fff;font-size:14px;line-height:1.4}.meal-input:focus{border-color:#9abb62;box-shadow:0 0 0 3px #9abb6224}.app-shell[data-theme=dark] .meal-input{border-color:#ffffff17;color:#f2f5eb;background:#ffffff0e}.meal-actions{display:grid;grid-template-columns:52px 1fr;gap:10px}.camera-button,.primary-button,.secondary-button{min-height:50px;border:0;border-radius:16px;cursor:pointer;transition:transform .14s var(--ease-out)}.camera-button{display:grid;place-items:center;background:#e9ece2}.primary-button{color:#fff;background:#1b1d18;font-weight:780}.secondary-button{width:100%;border:1px solid #d8ddd0;color:#30342d;background:#f0f4e8;font-weight:760}.camera-button:active,.primary-button:active,.secondary-button:not(:disabled):active{transform:scale(.97)}.secondary-button:disabled{border-color:#dfe9c7;color:#516334;background:#edf6d8;cursor:default}.app-shell[data-theme=dark] .camera-button{background:#ffffff0f}.app-shell[data-theme=dark] .primary-button{color:#252d20;background:#d1ef85}.app-shell[data-theme=dark] .secondary-button{border-color:#ffffff1f;color:#f2f5eb;background:#ffffff12}.app-shell[data-theme=dark] .secondary-button:disabled{border-color:#c9f36b29;color:#d9f79b;background:#c9f36b1a}.meal-completion{display:grid;gap:10px;margin-top:12px;padding-top:14px;border-top:1px solid #e4e6df}.app-shell[data-theme=dark] .meal-completion{border-color:#ffffff1a}.meal-completion div{display:grid;gap:3px}.meal-completion strong{font-size:13px}.meal-completion span{color:#6c7067;font-size:11px;line-height:1.4}.app-shell[data-theme=dark] .meal-completion span{color:#f2f5eb9e}.sleep-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:12px 14px;border-radius:15px;background:#f0f2ec;font-size:12px}.sleep-summary span{color:#73796e}.app-shell[data-theme=dark] .sleep-summary{background:#ffffff0e}.app-shell[data-theme=dark] .sleep-summary span{color:#f2f5eb94}.recovery-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.recovery-option{display:grid;min-height:112px;place-items:center;gap:8px;padding:14px 8px;border:1px solid #dfe1d9;border-radius:18px;color:#4f534a;background:#f5f6f1;cursor:pointer;transition:transform .14s var(--ease-out),background-color .16s ease,border-color .16s ease}.recovery-pixel-icon{position:relative;display:block;width:58px;height:58px;overflow:hidden;isolation:isolate}.recovery-pixel-icon-sprite{display:block;width:600%;max-width:none;height:100%;pointer-events:none;-webkit-user-select:none;user-select:none;image-rendering:pixelated;image-rendering:crisp-edges;transform:translateZ(0)}.recovery-option[aria-pressed=true] .recovery-pixel-icon-sprite{will-change:transform}.recovery-option[aria-pressed=true] .recovery-pixel-icon.is-low .recovery-pixel-icon-sprite{animation:recovery-pixel-cycle 1.6s steps(1,end) infinite}.recovery-option[aria-pressed=true] .recovery-pixel-icon.is-usual .recovery-pixel-icon-sprite{animation:recovery-pixel-cycle 2.8s steps(1,end) infinite}.recovery-option[aria-pressed=true] .recovery-pixel-icon.is-good .recovery-pixel-icon-sprite{animation:recovery-pixel-cycle 2.2s steps(1,end) infinite}@keyframes recovery-pixel-cycle{0%{transform:translateZ(0)}20%{transform:translate3d(-16.6667%,0,0)}40%{transform:translate3d(-33.3333%,0,0)}60%{transform:translate3d(-50%,0,0)}80%{transform:translate3d(-66.6667%,0,0)}to{transform:translate3d(-83.3333%,0,0)}}.recovery-option strong{font-size:12px;line-height:1.25}.recovery-option[aria-pressed=true]{border-color:#9ebd45;color:#35451f;background:#edf6d8;box-shadow:inset 0 0 0 1px #7ea22a2e}.recovery-option:active{transform:scale(.97)}.app-shell[data-theme=dark] .recovery-option{border-color:#ffffff17;color:#e0e6d7;background:#ffffff0d}.app-shell[data-theme=dark] .recovery-option[aria-pressed=true]{border-color:#c9f36b57;color:#e4f9b9;background:#c9f36b1c}.growth-icon{display:block;overflow:visible;flex:0 0 auto;filter:drop-shadow(0 10px 13px rgba(93,126,48,.2))}.growth-icon-art{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;transform-origin:center bottom;animation:growth-pixel-idle 1.8s steps(2,end) infinite alternate;-webkit-user-select:none;user-select:none}.growth-shadow{fill:#141b112e;filter:blur(4px)}.growth-ground{fill:#66883d;opacity:.3}.growth-ring{fill:none;stroke:#c6ec79;stroke-width:1.5;stroke-dasharray:4 8;opacity:.38;transform-origin:90px 80px;animation:growth-ring-turn 18s linear infinite}.growth-ring.is-secondary{stroke-dasharray:2 9;animation-direction:reverse;animation-duration:13s}.growth-leaf{transform-box:fill-box;transform-origin:bottom center;animation:growth-leaf-sway 3.6s ease-in-out infinite}.growth-leaf.is-right{animation-delay:-1.8s}.growth-leaf.is-delayed{animation-delay:-.9s}.growth-trunk{transform-box:fill-box;transform-origin:center bottom;animation:growth-trunk-sway 5.4s ease-in-out infinite}.growth-crown{transform-box:fill-box;transform-origin:center bottom;animation:growth-crown-breathe 4s ease-in-out infinite}.growth-blossoms circle{filter:drop-shadow(0 0 4px rgba(232,255,159,.72));transform-box:fill-box;transform-origin:center;animation:growth-blossom-pulse 2.8s ease-in-out infinite}.growth-blossoms circle:nth-child(2n){animation-delay:-1.4s}.growth-fruits circle{transform-box:fill-box;transform-origin:center top;animation:growth-fruit-sway 3.2s ease-in-out infinite}.growth-fruits circle:nth-child(2n){animation-delay:-1.6s}.growth-stars circle{transform-box:fill-box;transform-origin:center;animation:growth-star-blink 2.2s ease-in-out infinite}.growth-stars circle:nth-child(2n){animation-delay:-1.1s}.growth-energy{transform-box:fill-box;transform-origin:center;animation:growth-energy-pulse 3.4s ease-in-out infinite}.experience-panel{display:grid;justify-items:center;padding-bottom:4px}.experience-visual{position:relative;display:grid;width:190px;height:190px;place-items:center;isolation:isolate}.experience-visual .growth-icon{position:relative;z-index:2;animation:experience-icon-in .24s var(--ease-out) both}.experience-aura{position:absolute;z-index:0;width:calc(144px + var(--level-size, 0px));height:calc(144px + var(--level-size, 0px));border:1px solid var(--experience-ring, rgba(159, 205, 78, .28));border-radius:50%;box-shadow:0 0 0 15px var(--experience-haze, rgba(171, 215, 91, .05)),0 0 48px var(--experience-glow, rgba(139, 190, 61, .16));animation:experience-aura-breathe 4.8s ease-in-out infinite alternate}.experience-effects{position:absolute;z-index:1;inset:0;pointer-events:none}.experience-particles{position:absolute;inset:8px}.experience-particles>i{position:absolute;top:var(--particle-y);left:var(--particle-x);width:var(--particle-size);height:var(--particle-size);border-radius:50%;background:var(--experience-particle, #dcf7a0);box-shadow:0 0 8px 2px var(--experience-particle-glow, rgba(197, 236, 116, .46));opacity:var(--experience-particle-opacity, .58);will-change:transform,opacity;animation:experience-particle-drift var(--particle-duration) ease-in-out var(--particle-delay) infinite alternate}.experience-particles>i:nth-child(3n){border-radius:1px;transform:rotate(45deg)}.experience-orbits{position:absolute;inset:0}.experience-orbit{position:absolute;border:1px solid var(--experience-ring, rgba(159, 205, 78, .28));border-radius:50%;opacity:var(--experience-orbit-opacity, .28);animation:experience-orbit-turn 12s linear infinite}.experience-orbit>b{position:absolute;top:50%;right:-3px;width:5px;height:5px;border-radius:50%;background:var(--experience-particle, #dcf7a0);box-shadow:0 0 9px 2px var(--experience-particle-glow, rgba(197, 236, 116, .46));transform:translateY(-50%)}.experience-orbit.is-1{inset:13px;transform:rotate(-18deg)}.experience-orbit.is-2{inset:4px 18px;animation-duration:16s;animation-direction:reverse}.experience-orbit.is-2>b{top:18%;right:8%}.experience-orbit.is-3{inset:0 10px;animation-duration:21s}.experience-orbit.is-3>b{top:auto;right:18%;bottom:-2px}.experience-visual[data-level="1"]{--level-size: 0px;--experience-particle: #dbc987;--experience-particle-glow: rgba(218, 194, 115, .36);--experience-particle-opacity: .48;--experience-orbit-opacity: .16}.experience-visual[data-level="2"]{--level-size: 4px;--experience-particle: #d7e895;--experience-particle-opacity: .52;--experience-orbit-opacity: .18}.experience-visual[data-level="3"]{--level-size: 8px;--experience-particle: #d7f29a;--experience-particle-opacity: .56;--experience-orbit-opacity: .2}.experience-visual[data-level="4"]{--level-size: 12px;--experience-particle-opacity: .6;--experience-orbit-opacity: .22}.experience-visual[data-level="5"]{--level-size: 16px;--experience-particle-opacity: .64;--experience-orbit-opacity: .24}.experience-visual[data-level="6"]{--level-size: 20px;--experience-particle: #d9f89a;--experience-particle-opacity: .68;--experience-orbit-opacity: .26}.experience-visual[data-level="7"]{--level-size: 24px;--experience-particle: #e2ffa4;--experience-particle-opacity: .72;--experience-orbit-opacity: .28}.experience-visual[data-level="8"]{--level-size: 28px;--experience-particle: #f2efa4;--experience-particle-glow: rgba(235, 224, 114, .54);--experience-particle-opacity: .76;--experience-orbit-opacity: .3}.experience-visual[data-level="9"]{--level-size: 32px;--experience-particle: #e8f7a5;--experience-particle-glow: rgba(219, 244, 132, .62);--experience-particle-opacity: .8;--experience-orbit-opacity: .32}.experience-visual[data-level="10"]{--level-size: 36px;--experience-particle: #f0ffb1;--experience-particle-glow: rgba(222, 255, 145, .72);--experience-particle-opacity: .86;--experience-orbit-opacity: .36;--experience-ring: rgba(202, 239, 132, .36);--experience-haze: rgba(190, 232, 108, .08);--experience-glow: rgba(161, 215, 78, .24)}.app-shell:not([data-theme=dark]) .experience-visual{--experience-particle: #88ad45;--experience-particle-glow: rgba(105, 151, 42, .32);--experience-ring: rgba(122, 163, 55, .26)}.app-shell:not([data-theme=dark]) .experience-visual:is([data-level="1"],[data-level="2"]){--experience-particle: #a88c3e;--experience-particle-glow: rgba(156, 125, 46, .28)}.app-shell:not([data-theme=dark]) .experience-visual:is([data-level="8"],[data-level="9"],[data-level="10"]){--experience-particle: #a68b24;--experience-particle-glow: rgba(164, 134, 33, .3)}.experience-level-badge{position:absolute;z-index:3;right:8px;bottom:18px;display:grid;width:38px;height:38px;place-items:center;border:3px solid rgba(250,252,245,.88);border-radius:50%;color:#365124;background:#e4f2c5;box-shadow:0 8px 20px #303e2729;font-size:14px;font-weight:860}.app-shell[data-theme=dark] .experience-level-badge{border-color:#191e17eb;color:#e6f5ca;background:#4f692f}.experience-stage-copy{width:100%;margin-top:-2px;text-align:center}.experience-stage-copy small{display:block;color:#7aa535;font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.experience-stage-copy h3{margin:4px 0 0;font-size:25px;line-height:1;letter-spacing:-.045em}.experience-stage-copy p{min-height:31px;margin:8px auto 0;color:var(--muted);font-size:10px;line-height:1.45}.experience-progress-copy{display:flex;width:100%;align-items:end;justify-content:space-between;gap:12px;margin-top:18px}.experience-progress-copy strong{font-size:12px;font-variant-numeric:tabular-nums}.experience-progress-copy span{color:var(--muted);font-size:9px;text-align:right}.experience-progress-track{width:100%;height:7px;margin-top:8px;overflow:hidden;border-radius:99px;background:#303a2b14}.app-shell[data-theme=dark] .experience-progress-track{background:#ffffff14}.experience-progress-track span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8ebc45,#d3ef83);transform-origin:left;transition:transform .22s var(--ease-out)}.experience-level-grid{display:grid;width:100%;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:17px}.experience-level-grid button{display:grid;min-width:0;min-height:46px;place-items:center;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:var(--panel);cursor:pointer;font-size:11px;font-weight:850;transition:transform .14s var(--ease-out),border-color .16s ease,background-color .16s ease,color .16s ease}.experience-level-grid button:active{transform:scale(.96)}.experience-level-grid button:focus-visible,.experience-return:focus-visible,.profile-level:focus-visible,.level-button:focus-visible{outline:2px solid rgba(180,222,103,.72);outline-offset:2px}.experience-level-grid button.is-done{color:#536d2c;background:#cdec8f47}.experience-level-grid button.is-current{border-color:#88b54185;color:#35501f;background:#e2f1bf}.experience-level-grid button.is-selected{box-shadow:inset 0 0 0 1px #7da5383d,0 5px 13px #4c623314}.app-shell[data-theme=dark] .experience-level-grid button.is-done{color:#cae995;background:#c3e28014}.app-shell[data-theme=dark] .experience-level-grid button.is-current{border-color:#c9ec8952;color:#ebf9cf;background:#c2e67f29}.experience-return{min-height:42px;margin-top:10px;padding:0 16px;border:0;border-radius:13px;color:#3f5624;background:#e5f2c9;cursor:pointer;font-size:10px;font-weight:790;transition:transform .14s var(--ease-out)}.experience-return:active{transform:scale(.97)}.app-shell[data-theme=dark] .experience-return{color:#e7f6ca;background:#caeb8e1c}.experience-rule{margin:13px 0 0;padding:11px 12px;border-radius:14px;color:var(--muted);background:#7b8f6813;font-size:9px;line-height:1.45;text-align:center}.xp-gain{position:absolute;z-index:70;top:calc(82px + env(safe-area-inset-top));left:50%;display:grid;width:max-content;max-width:calc(100% - 32px);grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px;padding:6px 13px 6px 7px;border:1px solid rgba(205,238,144,.34);border-radius:18px;color:#edf9d8;background:#1f2b19eb;box-shadow:0 14px 38px #161d1247;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:xp-gain-lifecycle 2.2s var(--ease-out) both}.xp-gain.is-level-up{border-color:#dcfa9f80;background:linear-gradient(135deg,#324822f5,#1c2b17f5);animation-duration:3.2s}.xp-gain>span{display:grid;min-width:0;gap:2px}.xp-gain strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.xp-gain small{color:#eff9dda3;font-size:8px}.toast{position:absolute;z-index:50;right:18px;bottom:calc(92px + env(safe-area-inset-bottom));left:18px;display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border:1px solid rgba(255,255,255,.12);border-radius:15px;color:#f4f7ef;background:#1e231beb;box-shadow:0 13px 30px #0003;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:11px;line-height:1.4;animation:toast-in .18s var(--ease-out) both}.toast>span{flex:0 0 auto;width:7px;height:7px;margin-top:4px;border-radius:50%;background:#c8e87d}@keyframes liquid-drift-a{0%{transform:translate3d(-2%,0,0) rotate(0)}50%{transform:translate3d(2%,2px,0) rotate(1deg)}to{transform:translate3d(-2%,0,0) rotate(0)}}@keyframes liquid-drift-b{0%{transform:translate3d(2%,0,0) rotate(0)}50%{transform:translate3d(-2%,-2px,0) rotate(-1deg)}to{transform:translate3d(2%,0,0) rotate(0)}}@keyframes caustic{0%{transform:translate3d(-4px,-2px,0) scale(.98);opacity:.65}to{transform:translate3d(5px,3px,0) scale(1.04);opacity:.94}}@keyframes energy-pour-vessel-life{0%{opacity:0;transform:translate3d(15px,-10px,0) rotate(5deg) scale(.94)}12%{opacity:1;transform:translateZ(0) rotate(1deg) scale(1)}25%,68%{opacity:1;transform:translate3d(-3px,3px,0) rotate(-23deg) scale(1)}82%{opacity:1;transform:translateZ(0) rotate(1deg) scale(1)}to{opacity:0;transform:translate3d(10px,-7px,0) rotate(4deg) scale(.97)}}@keyframes energy-pour-stream-life{0%{opacity:0;transform:translate3d(-50%,-4px,0) scaleX(.22) scaleY(.18)}12%{opacity:.72;transform:translate3d(-50%,0,0) scaleX(.34) scaleY(.72)}30%,66%{opacity:.96;transform:translate3d(-50%,0,0) scaleX(1) scaleY(1)}82%{opacity:.72;transform:translate3d(-50%,1px,0) scaleX(.42) scaleY(1)}to{opacity:0;transform:translate3d(-50%,4px,0) scaleX(.18) scaleY(.76)}}@keyframes energy-pour-ripple{0%{opacity:0;transform:scaleX(.7)}18%{opacity:.9}to{opacity:0;transform:scaleX(1.42)}}@keyframes energy-pour-droplet{0%{opacity:0;transform:translate3d(-50%,2px,0) rotate(8deg)}24%{opacity:.9}to{opacity:0;transform:translate3d(calc(-50% + var(--drop-x, 12px)),var(--drop-y, -16px),0) rotate(-14deg)}}@keyframes energy-action-badge-life{0%{opacity:0;transform:translate3d(-50%,7px,0) scale(.96)}14%,76%{opacity:1;transform:translate3d(-50%,0,0) scale(1)}to{opacity:0;transform:translate3d(-50%,-4px,0) scale(.985)}}@keyframes energy-orb-receive{0%,to{transform:scale(1)}44%{transform:scale(1.018)}68%{transform:scale(.995)}}@keyframes liquid-impact-a{0%,to{transform:translate3d(-2%,0,0) rotate(0)}35%{transform:translate3d(5%,-4px,0) rotate(2deg) scaleY(1.16)}68%{transform:translate3d(-4%,2px,0) rotate(-1deg) scaleY(.94)}}@keyframes liquid-impact-b{0%,to{transform:translate3d(2%,0,0) rotate(0)}32%{transform:translate3d(-6%,3px,0) rotate(-2deg) scaleY(.9)}66%{transform:translate3d(4%,-3px,0) rotate(1deg) scaleY(1.12)}}@keyframes signal-confirm-sweep{0%{opacity:0;transform:translate3d(-100%,0,0)}20%{opacity:1}to{opacity:0;transform:translate3d(100%,0,0)}}@keyframes signal-icon-confirm{0%{transform:scale(1)}42%{transform:scale(1.08) rotate(-3deg)}to{transform:scale(1) rotate(0)}}@keyframes signal-state-copy-in{0%{opacity:0;transform:translate3d(0,3px,0);filter:blur(1.5px)}to{opacity:1;transform:translateZ(0);filter:blur(0)}}@keyframes signal-state-confirm{0%{transform:scale(.96)}36%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes sheet-in{0%{transform:translate3d(0,100%,0)}to{transform:translateZ(0)}}@keyframes toast-in{0%{transform:translate3d(0,8px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes experience-icon-in{0%{transform:translate3d(0,7px,0) scale(.96);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes experience-aura-breathe{0%{transform:scale(.97);opacity:.64}to{transform:scale(1.03);opacity:1}}@keyframes experience-particle-drift{0%{transform:translate3d(0,4px,0) scale(.72);opacity:.24}45%{opacity:var(--experience-particle-opacity, .58)}to{transform:translate3d(var(--particle-drift-x),var(--particle-drift-y),0) scale(1.12);opacity:.78}}@keyframes experience-orbit-turn{to{transform:rotate(360deg)}}@keyframes xp-gain-lifecycle{0%{transform:translate3d(-50%,-8px,0) scale(.96);opacity:0}10%,82%{transform:translate3d(-50%,0,0) scale(1);opacity:1}to{transform:translate3d(-50%,-5px,0) scale(.98);opacity:0}}@keyframes growth-leaf-sway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(4deg)}}@keyframes growth-trunk-sway{0%,to{transform:rotate(-.5deg)}50%{transform:rotate(.7deg)}}@keyframes growth-crown-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}@keyframes growth-ring-turn{to{transform:rotate(360deg)}}@keyframes growth-blossom-pulse{0%,to{transform:scale(.86);opacity:.66}50%{transform:scale(1.12);opacity:1}}@keyframes growth-fruit-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes growth-star-blink{0%,to{transform:scale(.75);opacity:.35}45%{transform:scale(1.25);opacity:1}}@keyframes growth-energy-pulse{0%,to{transform:scale(.96);opacity:.2}50%{transform:scale(1.04);opacity:.38}}@keyframes growth-pixel-idle{0%{transform:translateY(1px)}to{transform:translateY(-2px)}}@keyframes energy-delta-in{0%{transform:translate3d(0,5px,0) scale(.96);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes analysis-result-in{0%{transform:translate3d(0,6px,0) scale(.99);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes reveal-card-in{0%{transform:translate3d(0,10px,0);opacity:0}to{transform:translateZ(0);opacity:1}}@keyframes reveal-orb-in{0%{transform:scale(.95);opacity:.35}to{transform:scale(1);opacity:1}}@keyframes first-entry-guide-in{0%{transform:translate3d(0,10px,0) scale(.97);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes view-out-forward{0%{transform:translateZ(0) scale(1);opacity:1}to{transform:translate3d(-10px,0,0) scale(.992);opacity:0}}@keyframes view-in-forward{0%{transform:translate3d(14px,0,0) scale(.992);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes view-out-back{0%{transform:translateZ(0) scale(1);opacity:1}to{transform:translate3d(10px,0,0) scale(.992);opacity:0}}@keyframes view-in-back{0%{transform:translate3d(-14px,0,0) scale(.992);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@media(min-width:600px){body{padding:24px}.app-shell{height:calc(100dvh - 48px);min-height:calc(100dvh - 48px);max-height:calc(100dvh - 48px);border-radius:30px;box-shadow:0 30px 90px #232d1e2e}.app-scroll{height:100%;min-height:0;overflow-y:auto}.sheet-layer,.time-picker-modal-layer,.photo-source-modal-layer{inset:24px 0;overflow:hidden;border-radius:30px}.tutorial-layer{inset:24px 0;height:calc(100dvh - 48px);border-radius:30px}}@media(max-width:420px){.app-header{gap:8px}.app-header p{font-size:9px;letter-spacing:.06em;white-space:nowrap}.header-actions{gap:5px}.level-button{gap:5px;padding-right:8px;padding-left:6px}.level-button strong{max-width:66px;font-size:9px}}@media(max-width:599px)and (max-height:760px){.app-scroll{padding-top:max(14px,env(safe-area-inset-top));padding-bottom:calc(91px + env(safe-area-inset-bottom))}.energy-stage{margin-top:10px}.energy-orb{--orb-size: 200px}.signal-list,.completion-card{margin-top:10px}}@media(prefers-reduced-transparency:reduce){.week-calendar-popover{background:#fafbf6;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell[data-theme=dark] .week-calendar-popover{background:#1d221b}.photo-source-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}.photo-source-sheet{background:#fafbf7;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell[data-theme=dark] .photo-source-sheet{background:#22281f}}@media(hover:hover)and (pointer:fine){.icon-button:hover,.level-button:hover,.signal-row:hover,.weight-card:hover{background-color:#ffffffe0}.app-shell[data-theme=dark] .icon-button:hover,.app-shell[data-theme=dark] .level-button:hover,.app-shell[data-theme=dark] .signal-row:hover,.app-shell[data-theme=dark] .weight-card:hover{background-color:#ffffff14}.energy-orb:hover{transform:translateY(-2px)}.bottom-nav button:hover .emoji{transform:translate3d(0,-2px,0) rotate(-3deg) scale(1.06)}}@media(max-width:370px){.app-scroll{padding-right:12px;padding-left:12px}.energy-orb{--orb-size: 204px}.header-actions{gap:5px}.level-button{padding-right:8px}.level-button strong{display:none}.week-strip{padding-right:5px;padding-left:5px}.week-mark{width:28px;height:28px}.tutorial-slide{grid-template-rows:minmax(180px,1fr) auto;padding-right:18px;padding-left:18px}.tutorial-footer{padding-right:18px;padding-left:18px}.tutorial-copy>span{font-size:12px}.tutorial-calendar>span{width:49px}.tutorial-settings-card{grid-template-columns:1fr 1fr}.tutorial-settings-card>div{grid-column:1 / -1}.profile-hero{grid-template-columns:46px minmax(0,1fr)}.profile-avatar{width:46px;height:46px;border-radius:16px}.profile-level{display:none}.first-entry-guide{right:10px;left:10px;padding:12px}}@media(prefers-reduced-motion:reduce){::view-transition-old(protocol-header),::view-transition-new(protocol-header),::view-transition-old(protocol-view),::view-transition-new(protocol-view){animation-duration:1ms!important}.tutorial-signals>span{animation:none!important;transform:none!important;opacity:1!important}.tutorial-next-state{animation:none!important;transform:none!important;opacity:0!important}.tutorial-next-state:nth-child(2){opacity:1!important}.tutorial-orb-liquid-level{transform:translate3d(0,var(--tutorial-level),0)!important}.tutorial-score-sparkles{display:none}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.xp-gain{animation:none!important;opacity:1;transform:translate(-50%)}.growth-icon *{animation:none!important}.week-calendar-popover,.week-calendar-backdrop{transition-duration:1ms!important}.experience-aura,.experience-particles>i,.experience-orbit{animation:none!important}.energy-pour-vessel,.energy-pour-stream,.energy-pour-impact{display:none}.energy-action-badge{animation:none!important;opacity:1;transform:translate(-50%)}.signal-row.is-celebrating:after{display:none}.signal-row.is-celebrating .signal-icon,.signal-state.is-celebrating,.signal-state>span{animation:none!important}.recovery-pixel-icon-sprite{animation:none!important;transform:translateZ(0)!important}}
