*{box-sizing:border-box;margin:0;padding:0}:root{--blue:#3b9eff;--blue-dim:#3b9eff1f;--text:#fff;--muted:#6b7280;--border:#ffffff12;--surface:#1c1f2e;--surface2:#252836;--bg:#13151f}body{background:var(--bg);color:var(--text);height:100dvh;font-family:system-ui,-apple-system,sans-serif}.app{background:var(--bg);flex-direction:column;height:100dvh;margin:0 auto;display:flex}.app-intro{z-index:2000;background:radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--blue) 18%, transparent), transparent 34%), radial-gradient(circle at 82% 14%, color-mix(in srgb, var(--blue) 14%, transparent), transparent 32%), linear-gradient(180deg, color-mix(in srgb, var(--surface) 76%, black), #0d1018 100%);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:hidden}.app-intro-exit{pointer-events:none;animation:.52s cubic-bezier(.22,1,.36,1) forwards app-intro-fade-out}.app-intro-orb{filter:blur(52px);opacity:.22;background:color-mix(in srgb, var(--blue) 55%, transparent);border-radius:50%;animation:10s ease-in-out infinite app-intro-orb-float;position:absolute}.app-intro-orb-left{width:42vmax;height:42vmax;top:-10vmax;left:-16vmax}.app-intro-orb-right{width:34vmax;height:34vmax;animation-delay:-2.8s;bottom:-12vmax;right:-10vmax}.app-intro-panel{border:1px solid color-mix(in srgb, var(--blue) 18%, var(--border));background:linear-gradient(180deg, color-mix(in srgb, var(--surface2) 94%, black), color-mix(in srgb, var(--surface) 92%, black));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:center;border-radius:32px;flex-direction:column;align-items:center;gap:18px;width:min(360px,100%);padding:34px 26px 24px;animation:.96s cubic-bezier(.22,1,.36,1) both app-intro-panel-in;display:flex;position:relative;box-shadow:0 34px 80px #0000006b,inset 0 1px #ffffff0a}.app-intro-logo-shell{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 72%, transparent), color-mix(in srgb, var(--surface2) 82%, black));border:1px solid color-mix(in srgb, var(--blue) 14%, var(--border));border-radius:24px;justify-content:center;align-items:center;width:100%;padding:18px 16px;display:flex;position:relative;overflow:hidden}.app-intro-logo-aura{background:radial-gradient(circle, color-mix(in srgb, var(--blue) 26%, transparent) 0%, transparent 58%);opacity:.92;animation:2.6s ease-in-out infinite app-intro-logo-aura;position:absolute;inset:-35%}.app-intro-logo{filter:drop-shadow(0 12px 28px color-mix(in srgb, var(--blue) 16%, transparent));justify-content:center;align-items:center;animation:1s cubic-bezier(.22,1,.36,1) both app-intro-logo-settle;display:flex;position:relative}.app-intro-bars{justify-content:center;align-items:flex-end;gap:8px;min-height:42px;display:flex}.app-intro-bar{background:linear-gradient(180deg, color-mix(in srgb, var(--blue) 92%, white), color-mix(in srgb, var(--blue) 62%, black));width:8px;box-shadow:0 10px 18px color-mix(in srgb, var(--blue) 16%, transparent);transform-origin:bottom;border-radius:999px;animation:1.14s ease-in-out infinite app-intro-bar-bounce}.app-intro-progress{flex-direction:column;align-items:center;gap:7px;width:min(170px,100%);display:flex}.app-intro-track{background:color-mix(in srgb, var(--surface) 80%, black);border-radius:999px;width:100%;height:5px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0a}.app-intro-track-fill{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--blue) 72%, black), var(--blue) 55%, color-mix(in srgb, var(--blue) 88%, white));height:100%;display:block;position:relative;overflow:hidden}.app-intro-track-shimmer{background:linear-gradient(90deg,#0000,#ffffff85 50%,#0000);animation:1.1s ease-in-out infinite app-intro-track-shimmer;position:absolute;inset:0}.app-intro-track-pct{color:var(--muted);letter-spacing:.4px;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.topbar{padding:calc(env(safe-area-inset-top) + 12px) calc(env(safe-area-inset-right) + 20px) 8px calc(env(safe-area-inset-left) + 20px);background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.topbar-inner{justify-content:space-between;align-items:center;gap:12px;display:flex}.topbar-actions{align-items:center;gap:10px;display:flex}.topbar-brand{color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;padding:0;transition:transform .32s,opacity .32s;display:flex}.topbar-brand:hover{opacity:.92}.topbar-brand:active{transform:scale(.985)}.topbar-profile-btn{border:1px solid var(--border);background:var(--surface2);width:40px;height:40px;color:var(--blue);cursor:pointer;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;transition:color .32s,background .32s,border-color .32s,transform .32s,box-shadow .32s;display:flex;position:relative}.topbar-profile-btn:hover{color:var(--text);border-color:color-mix(in srgb, var(--blue) 28%, var(--border));box-shadow:0 10px 22px #0000002e}.topbar-profile-btn:active{transform:scale(.96)}.topbar-profile-btn.active{color:#fff;background:var(--blue);border-color:color-mix(in srgb, var(--blue) 45%, var(--border));box-shadow:0 12px 24px color-mix(in srgb, var(--blue) 24%, transparent)}.topbar-profile-plus{color:currentColor;font-size:10px;font-weight:800;line-height:1;position:absolute;bottom:4px;right:3px}.topbar-home-streak{color:#fb923c;cursor:pointer;appearance:none;font:inherit;background:#fb923c1a;border:1px solid #fb923c40;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:7px 11px;transition:transform .26s,border-color .26s,box-shadow .26s,background .26s;display:flex}.topbar-home-streak:hover{transform:translateY(-1px);box-shadow:0 10px 22px #00000029}.topbar-home-streak:active{transform:scale(.97)}.topbar-home-streak-none{background:var(--surface2);border-color:var(--border);color:var(--muted)}.topbar-home-streak-fire{font-size:13px;line-height:1}.topbar-home-streak-text{letter-spacing:.2px;white-space:nowrap;font-size:11px;font-weight:700}.topbar-home-streak--animate{animation:.68s cubic-bezier(.22,1,.36,1) both topbar-streak-enter}.topbar-home-streak--animate .topbar-home-streak-fire{animation:.92s cubic-bezier(.22,1,.36,1) .12s both topbar-streak-fire-pop}.topbar-home-streak--animate:not(.topbar-home-streak-none){animation:.68s cubic-bezier(.22,1,.36,1) both topbar-streak-enter,1.38s ease-out .15s both topbar-streak-glow}.content{padding:14px calc(env(safe-area-inset-right) + 16px) 20px calc(env(safe-area-inset-left) + 16px);flex:1;overflow-y:auto}.content.content-home-locked{overscroll-behavior:none;overflow-y:hidden}.content-screen{min-height:100%;animation-duration:.42s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both}.content-screen-hidden{display:none}.content-screen-forward.content-screen-0,.content-screen-forward.content-screen-1{will-change:opacity, transform;animation-name:content-slide-in-forward}.content-screen-backward.content-screen-0,.content-screen-backward.content-screen-1{will-change:opacity, transform;animation-name:content-slide-in-backward}.tabbar{background:var(--surface);border-top:1px solid var(--border);padding:8px calc(env(safe-area-inset-right) + 8px) max(6px, calc(env(safe-area-inset-bottom) * .3)) calc(env(safe-area-inset-left) + 8px);flex-shrink:0;justify-content:space-between;align-items:flex-end;gap:8px;display:flex;position:relative}.tabbar-group{flex:1;align-items:flex-end;min-width:0;display:flex}.tab-btn{min-width:0;color:var(--muted);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:10px 0;transition:color .26s,transform .26s;display:flex}.tab-btn.active{color:var(--blue)}.tab-btn.active .tab-icon{background:var(--blue-dim);border-radius:10px;padding:4px 12px;animation:.4s cubic-bezier(.22,1,.36,1) tab-icon-pop}.tab-btn:hover:not(.active){color:var(--text)}.tab-btn:active{transform:translateY(1px)scale(.97)}.tab-icon{justify-content:center;align-items:center;transition:transform .32s,background .32s,padding .32s;display:flex}.tab-label{letter-spacing:.3px;font-size:10px;font-weight:500}.tab-plus-btn{background:linear-gradient(180deg, color-mix(in srgb, var(--blue) 92%, white), var(--blue));color:#fff;width:56px;height:56px;box-shadow:0 16px 28px #00000047, 0 0 0 1px color-mix(in srgb, var(--blue) 55%, black);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:-24px 2px 2px;transition:transform .32s,box-shadow .32s,filter .32s;display:flex;position:relative}.tab-plus-btn:hover{box-shadow:0 20px 32px #0000004d, 0 0 0 1px color-mix(in srgb, var(--blue) 65%, black);transform:translateY(-2px)scale(1.02)}.tab-plus-btn:active{transform:translateY(0)scale(.96)}.tab-plus-btn.active{filter:brightness(1.05);box-shadow:0 22px 36px #00000052, 0 0 0 1px color-mix(in srgb, var(--blue) 75%, black)}.tab-plus-icon{font-size:34px;font-weight:300;line-height:1;transition:transform .32s;transform:translateY(-1px)}.tab-plus-btn.active .tab-plus-icon{transform:translateY(-1px)rotate(45deg)}.tab-plus-timer-badge{background:color-mix(in srgb, var(--surface) 84%, black);border:1px solid color-mix(in srgb, var(--blue) 30%, var(--border));min-width:28px;color:var(--text);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:700;line-height:1.1;position:absolute;top:-4px;right:-6px;box-shadow:0 10px 18px #00000038}.quick-action-overlay{z-index:1200;padding:24px 16px calc(env(safe-area-inset-bottom) + 20px);background:#0000006b;justify-content:center;align-items:flex-end;animation:.4s overlay-in;display:flex;position:fixed;inset:0}.quick-action-sheet{background:color-mix(in srgb, var(--surface) 92%, black);border:1px solid var(--border);border-radius:24px;flex-direction:column;gap:10px;width:min(440px,100%);padding:14px 14px 12px;animation:.44s cubic-bezier(.22,1,.36,1) quick-action-sheet-in;display:flex;box-shadow:0 26px 50px #00000059}.quick-action-handle{background:color-mix(in srgb, var(--muted) 70%, transparent);border-radius:999px;width:42px;height:4px;margin:0 auto 2px}.quick-action-title{letter-spacing:1px;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:2px;font-size:12px;font-weight:700}.quick-action-btn,.quick-action-cancel{cursor:pointer;border:none;border-radius:18px;justify-content:center;align-items:center;gap:10px;width:100%;padding:15px 16px;font-size:15px;font-weight:700;transition:transform .32s,box-shadow .32s,filter .32s,background .32s,border-color .32s;display:flex}.quick-action-btn:active,.quick-action-cancel:active{transform:scale(.985)}.quick-action-btn-primary{background:var(--blue);color:#fff;box-shadow:0 14px 28px color-mix(in srgb, var(--blue) 26%, transparent)}.quick-action-btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.quick-action-btn-timer-active{border-color:color-mix(in srgb, var(--blue) 34%, var(--border));background:color-mix(in srgb, var(--blue-dim) 45%, var(--surface2))}.quick-action-cancel{color:var(--muted);border:1px solid var(--border);background:0 0}.quick-timer-card,.quick-weight-card{background:var(--surface2);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:10px;padding:14px;display:flex}.quick-weight-note{color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:600}.quick-weight-row{align-items:center;gap:8px;display:flex}.quick-weight-input{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 78%, black);min-width:0;color:var(--text);border-radius:12px;flex:1;padding:12px 13px;font-size:15px}.quick-weight-input:focus{border-color:color-mix(in srgb, var(--blue) 42%, var(--border));box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 16%, transparent);outline:none}.quick-weight-save{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:12px 14px;font-size:14px;font-weight:700;transition:opacity .32s,transform .32s,box-shadow .32s}.quick-weight-save:hover{opacity:.92;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.quick-weight-save:disabled{opacity:.55;cursor:default;box-shadow:none}.quick-weight-error{color:#f87171;font-size:12px;line-height:1.4}.quick-timer-start{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:13px;font-size:15px;font-weight:700;transition:opacity .32s,transform .32s,box-shadow .32s}.quick-timer-start:hover{opacity:.92;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.quick-timer-start:active{box-shadow:none;transform:scale(.985)}.quick-timer-name{color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:600}.quick-timer-countdown{text-align:center;letter-spacing:-2px;font-variant-numeric:tabular-nums;font-size:52px;font-weight:700;line-height:1}.quick-timer-track{background:color-mix(in srgb, var(--surface) 70%, black);border-radius:99px;height:4px;overflow:hidden}.quick-timer-fill{border-radius:99px;height:100%;transition:width 1s linear}.quick-timer-actions{grid-template-columns:1fr 1.5fr 1fr;gap:8px;display:grid}.quick-timer-step{background:color-mix(in srgb, var(--surface) 78%, black);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:12px;padding:10px;font-size:14px;font-weight:600;transition:background .32s,color .32s,transform .32s}.quick-timer-step:hover{background:var(--blue-dim);color:var(--blue);transform:translateY(-1px)}.quick-timer-step:active{transform:scale(.98)}.quick-timer-pause{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:10px;font-size:14px;font-weight:700;transition:opacity .32s,transform .32s,box-shadow .32s}.quick-timer-pause:hover{opacity:.92;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.quick-timer-pause:active{box-shadow:none;transform:scale(.985)}.quick-timer-reset{color:var(--muted);text-align:center;cursor:pointer;background:0 0;border:none;padding:2px;font-size:13px;font-weight:600;transition:color .32s}.quick-timer-reset:hover{color:var(--text)}.workout-banner{background:var(--surface);border-top:1px solid var(--border);cursor:pointer;flex-shrink:0;align-items:center;gap:10px;padding:12px 20px;transition:background .26s,transform .26s,border-color .26s;display:flex}.workout-banner:hover{background:var(--surface2)}.workout-banner:active{transform:scale(.992)}.workout-banner-left{flex:1;align-items:center;gap:8px;display:flex}.workout-banner-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2.1s ease-in-out infinite banner-pulse}@keyframes banner-pulse{0%,to{opacity:1;box-shadow:0 0 #22c55e66}50%{opacity:.7;box-shadow:0 0 0 4px #22c55e00}}.workout-banner-label{color:var(--text);font-size:13px;font-weight:500}.workout-banner-time{color:var(--blue);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.workout-banner svg{color:var(--muted)}.workout-banner-resting{border-top-color:var(--blue);background:var(--blue-dim)}.workout-banner-resting:hover{background:var(--blue-dim);filter:brightness(1.1)}.workout-banner-resting .workout-banner-dot{background:var(--blue);animation:2.1s ease-in-out infinite banner-pulse-blue}@keyframes banner-pulse-blue{0%,to{opacity:1;box-shadow:0 0 #3b9eff66}50%{opacity:.7;box-shadow:0 0 0 4px #3b9eff00}}.rest-done-overlay{z-index:1301;background:#0009;justify-content:center;align-items:center;animation:.4s overlay-in;display:flex;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.rest-done-modal{background:var(--surface);border:1px solid var(--border);border-radius:20px;flex-direction:column;align-items:center;gap:8px;width:min(320px,100vw - 48px);padding:32px 28px 24px;animation:.36s modal-in;display:flex}@keyframes modal-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes quick-action-sheet-in{0%{opacity:0;transform:translateY(28px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.rest-done-icon{background:var(--blue-dim);border:1px solid var(--blue);width:56px;height:56px;color:var(--blue);border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.rest-done-title{color:var(--text);letter-spacing:-.3px;font-size:20px;font-weight:700}.rest-done-body{color:var(--muted);margin-bottom:8px;font-size:14px}.rest-done-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:8px;padding:13px;font-size:15px;font-weight:600;transition:opacity .32s}.rest-done-btn:hover{opacity:.85}.streak-info-modal{gap:12px}.streak-info-icon{font-size:24px}.streak-info-body{text-align:center;line-height:1.55}.workout-banner-rest{color:var(--blue);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.offline-banner{color:#eab308;background:#eab3081f;border-top:1px solid #eab30840;flex-shrink:0;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:13px;font-weight:500;animation:.2s offline-banner-in;display:flex}.offline-banner-back{color:#22c55e;background:#22c55e1a;border-top-color:#22c55e33}.offline-banner-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2.1s ease-in-out infinite banner-pulse}@keyframes offline-banner-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.battle-invite-overlay{z-index:1000;background:#000000c7;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.battle-invite-modal{background:#1c1f2e;border:1px solid #3b9eff47;border-radius:22px;flex-direction:column;gap:14px;width:min(360px,100%);padding:24px 22px 20px;display:flex;box-shadow:0 22px 60px #00000073}.battle-invite-pill{color:var(--blue);letter-spacing:.7px;text-transform:uppercase;background:#3b9eff29;border:1px solid #3b9eff47;border-radius:999px;align-self:flex-start;padding:6px 10px;font-size:11px;font-weight:700}.battle-invite-title{color:var(--text);font-size:22px;font-weight:700;line-height:1.2}.battle-invite-body{color:#ffffffc7;font-size:14px;line-height:1.5}.battle-invite-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:4px;display:grid}.battle-invite-accept,.battle-invite-decline{cursor:pointer;border-radius:12px;padding:12px 14px;font-size:14px;font-weight:700;transition:transform .26s,opacity .26s,border-color .26s,background .26s}.battle-invite-accept{background:var(--blue);color:#06101c;border:none}.battle-invite-decline{border:1px solid var(--border);color:var(--text);background:0 0}.battle-invite-accept:disabled,.battle-invite-decline:disabled{opacity:.6;cursor:not-allowed}.battle-toast{left:50%;bottom:calc(92px + env(safe-area-inset-bottom));width:max-content;max-width:min(420px,100vw - 32px);color:var(--text);z-index:999;background:#1c1f2ef5;border:1px solid #3b9eff38;border-radius:14px;padding:12px 16px;font-size:14px;animation:.6s cubic-bezier(.22,1,.36,1) battle-toast-in;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #00000059}@keyframes content-slide-in-forward{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0,0)}}@keyframes content-slide-in-backward{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0,0)}}@keyframes tab-icon-pop{0%{transform:scale(.88)}65%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes battle-toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes topbar-streak-enter{0%{opacity:0;transform:translateY(-6px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes topbar-streak-glow{0%{box-shadow:0 0 #fb923c00}38%{box-shadow:0 0 0 1px #fb923c24,0 0 0 8px #fb923c14,0 12px 28px #fb923c24}to{box-shadow:0 0 0 1px #fb923c0f,0 8px 20px #0000001f}}@keyframes topbar-streak-fire-pop{0%{opacity:0;transform:scale(.72)translateY(2px)}55%{opacity:1;transform:scale(1.12)translateY(-1px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes app-intro-panel-in{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes app-intro-logo-settle{0%{opacity:0;transform:translateY(10px)scale(.96)}55%{opacity:1;transform:translateY(-2px)scale(1.01)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes app-intro-logo-aura{0%,to{opacity:.72;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}@keyframes app-intro-bar-bounce{0%,to{opacity:.8;transform:scaleY(.72)}45%{opacity:1;transform:scaleY(1.08)}}@keyframes app-intro-track-shimmer{0%{transform:translate(-100%)}to{transform:translate(300%)}}@keyframes app-intro-orb-float{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(16px,22px)scale(1.06)}}@keyframes app-intro-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.01)}}@media (prefers-reduced-motion:reduce){.app-intro,.app-intro-panel,.app-intro-logo,.app-intro-bar,.app-intro-track-shimmer,.app-intro-orb,.content-screen,.tab-btn.active .tab-icon,.battle-toast,.workout-banner-dot,.workout-banner-resting .workout-banner-dot,.quick-action-overlay,.quick-action-sheet,.topbar-home-streak,.topbar-home-streak-fire{animation:none}.tab-btn,.tab-icon,.tab-plus-btn,.tab-plus-icon,.app-intro,.workout-banner,.battle-invite-accept,.battle-invite-decline,.quick-action-btn,.quick-action-cancel{transition:none}}.spinner{justify-content:center;align-items:center;display:flex}.spinner-page{justify-content:center;align-items:center;height:100%;min-height:200px;display:flex}.spinner-logo-shell{--spinner-color:var(--blue);--spinner-shadow:color-mix(in srgb, var(--blue) 38%, transparent);justify-content:center;align-items:center;padding:8px 12px;display:inline-flex;position:relative}.spinner-logo-glow{background:radial-gradient(circle at center, color-mix(in srgb, var(--blue) 30%, transparent) 0%, transparent 68%), linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--blue) 18%, transparent) 50%, transparent 100%);filter:blur(18px);opacity:.9;border-radius:30px;animation:1.8s ease-in-out infinite spinner-logo-glow;position:absolute;inset:6% 4%}.spinner-logo{align-items:end;gap:var(--spinner-gap);width:var(--spinner-width);height:var(--spinner-height);grid-template-columns:repeat(5,1fr);display:grid;position:relative}.spinner-logo-bar{width:100%;height:var(--bar-height,50%);background:linear-gradient(180deg, color-mix(in srgb, white 14%, var(--spinner-color)) 0%, var(--spinner-color) 100%);box-shadow:0 0 0 1px #ffffff14, 0 0 18px color-mix(in srgb, var(--spinner-color) 26%, transparent);transform-origin:bottom;border-radius:999px;animation:1.2s ease-in-out infinite spinner-wave}.spinner-logo-bar-1{--bar-height:58%;animation-delay:0s}.spinner-logo-bar-2{--bar-height:80%;animation-delay:.12s}.spinner-logo-bar-3{--bar-height:100%;animation-delay:.24s}.spinner-logo-bar-4{--bar-height:80%;animation-delay:.36s}.spinner-logo-bar-5{--bar-height:58%;animation-delay:.48s}.spinner-sm .spinner-logo-shell{--spinner-width:34px;--spinner-height:30px;--spinner-gap:3px}.spinner-md .spinner-logo-shell{--spinner-width:56px;--spinner-height:48px;--spinner-gap:5px}.spinner-lg .spinner-logo-shell{--spinner-width:82px;--spinner-height:68px;--spinner-gap:6px}@keyframes spinner-wave{0%,to{opacity:.54;filter:saturate(.88);transform:scaleY(.82)}35%{opacity:1;filter:saturate(1.16);transform:scaleY(1.14)translateY(-1px)}55%{opacity:.82;transform:scaleY(.96)}}@keyframes spinner-logo-glow{0%,to{opacity:.46;transform:translate(-6px)scale(.96)}50%{opacity:.92;transform:translate(6px)scale(1.04)}}@media (prefers-reduced-motion:reduce){.spinner-logo-bar,.spinner-logo-glow{opacity:1;filter:none;animation:none;transform:none}}.rtp{justify-content:center;align-items:center;gap:12px;width:100%;margin:0 auto;display:flex}.rtp-unit{flex-direction:column;align-items:center;gap:4px;display:flex}.rtp-btn{border:1px solid var(--border);background:var(--surface2);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:background .12s,color .12s;display:flex}.rtp-btn:hover{background:var(--blue-dim);color:var(--blue)}.rtp-val{color:var(--text);text-align:center;font-variant-numeric:tabular-nums;min-width:44px;font-size:28px;font-weight:700;line-height:1}.rtp-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:500}.rtp-colon{color:var(--muted);margin-bottom:20px;font-size:28px;font-weight:700}.profile-screen{flex-direction:column;gap:20px;display:flex}.profile-screen>*{opacity:0;animation:.62s cubic-bezier(.22,1,.36,1) both profile-section-enter;transform:translateY(10px)}.profile-screen>:first-child{animation-delay:40ms}.profile-screen>:nth-child(2){animation-delay:.11s}.profile-screen>:nth-child(3){animation-delay:.18s}.profile-screen>:nth-child(4){animation-delay:.25s}.profile-screen>:nth-child(5){animation-delay:.32s}.profile-screen>:nth-child(6){animation-delay:.39s}.profile-header{background:var(--surface);border:1px solid var(--border);border-radius:16px;align-items:center;gap:16px;padding:20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.profile-header:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #0000002e}.avatar{background:var(--blue-dim);border:2px solid var(--blue);width:60px;height:60px;color:var(--blue);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:700;transition:transform .32s,box-shadow .32s;display:flex}.profile-header:hover .avatar{box-shadow:0 0 0 8px color-mix(in srgb, var(--blue) 12%, transparent);transform:scale(1.04)}.profile-name{color:var(--text);font-size:18px;font-weight:700}.profile-email{color:var(--muted);margin-top:2px;font-size:13px}.profile-stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.profile-stat{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:14px;min-width:0;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s}.profile-stat:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 24px #00000026}.profile-stat-value{color:var(--blue);text-overflow:ellipsis;white-space:nowrap;font-size:22px;font-weight:700;display:block;overflow:hidden}.profile-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:11px}.profile-form{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:16px;padding:20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.profile-form:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #00000029}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:500}.form-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;width:100%;padding:10px 14px;font-size:15px;transition:border-color .26s,box-shadow .26s,background .26s}.form-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent)}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.gender-toggle{background:var(--surface2);border:1px solid var(--border);border-radius:10px;display:flex;overflow:hidden}.gender-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;flex:1;padding:9px;font-size:13px;font-weight:500;transition:transform .26s,background .26s,color .26s}.gender-btn.active{background:var(--blue);color:#fff}.gender-btn:hover{transform:translateY(-1px)}.form-actions{grid-template-columns:1fr 2fr;gap:10px;display:grid}.btn-cancel{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;padding:11px;font-size:14px;font-weight:500;transition:transform .26s,background .26s,border-color .26s}.btn-cancel:hover{background:var(--surface2);border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-1px)}.btn-save{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:11px;font-size:14px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.btn-save:disabled{opacity:.6;cursor:not-allowed}.btn-save:hover:not(:disabled){opacity:.92;box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 22%, transparent);transform:translateY(-1px)}.profile-save-error{color:#fca5a5;background:#ef44441f;border:1px solid #ef444438;border-radius:12px;padding:11px 12px;font-size:13px;line-height:1.4}.theme-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:14px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.theme-section:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #00000029}.theme-section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.7px;font-size:11px;font-weight:600}.theme-swatches{justify-content:space-between;gap:6px;display:flex}.theme-swatch-wrap{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.theme-swatch{cursor:pointer;appearance:none;border-radius:50%;outline:none;justify-content:center;align-items:center;width:48px;height:48px;padding:0;transition:transform .26s,border-color .26s,box-shadow .26s,filter .26s;display:flex;overflow:hidden}.theme-swatch.active{border-color:#fffc}.theme-swatch:hover{transform:translateY(-2px)scale(1.04);box-shadow:0 12px 24px #00000029}.theme-swatch:not(.active):active{opacity:.8}.theme-toast-overlay{z-index:999;background:#00000080;justify-content:center;align-items:center;animation:.32s overlay-in;display:flex;position:fixed;inset:0}.theme-toast-modal{background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;align-items:center;gap:20px;width:90%;max-width:280px;padding:24px 28px;animation:.34s cubic-bezier(.22,1,.36,1) profile-pop-in;display:flex}.theme-toast-msg{color:var(--text);text-align:center;text-overflow:ellipsis;font-size:15px;line-height:1.5;overflow:hidden}.theme-toast-ok{background:var(--blue);color:#000;cursor:pointer;opacity:.9;border:none;border-radius:10px;padding:10px 36px;font-size:14px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.theme-toast-ok:hover{opacity:1;box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 22%, transparent);transform:translateY(-1px)}.theme-save-btn{border:1px solid var(--border);width:100%;color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;padding:10px;font-size:13px;font-weight:500;transition:transform .26s,border-color .26s,color .26s,background .26s}.theme-save-btn:hover{border-color:var(--blue);color:var(--blue);background:var(--surface2);transform:translateY(-1px)}.theme-swatch-name{color:var(--muted);letter-spacing:.2px;font-size:10px;font-weight:500}.body-stats-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.body-stats-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #00000029}.body-stats-header{justify-content:space-between;align-items:center;display:flex}.body-stats-title{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.body-stats-current{color:#22c55e;text-overflow:ellipsis;white-space:nowrap;font-size:20px;font-weight:700;display:block;overflow:hidden}.body-stats-unit{color:var(--muted);font-size:13px;font-weight:500}.body-stats-log-row{align-items:center;gap:8px;display:flex}.body-stats-log-row-detail{flex-wrap:wrap;align-items:stretch;gap:10px}.body-stats-log-row-detail .body-stats-input{flex:200px}.body-stats-unit-toggle .ex-period-btn{min-width:48px}.body-stats-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;flex:1;min-width:0;padding:10px 12px;font-size:15px;transition:border-color .26s,box-shadow .26s,background .26s}.body-stats-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 16%, transparent)}.body-stats-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.body-stats-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.body-stats-input[type=number]{appearance:textfield}.body-stats-unit-label{color:var(--muted);flex-shrink:0;font-size:13px;font-weight:500}.body-stats-save-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;padding:10px 18px;font-size:14px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.body-stats-save-btn:hover{opacity:.92;box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.body-stats-save-btn:disabled{opacity:.4;cursor:not-allowed}.body-stats-toast{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e59;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:600;animation:.4s toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.body-stats-chart-header{justify-content:flex-end;display:flex}.body-stats-chart-wrap{width:100%}.body-stats-history{flex-direction:column;gap:10px;display:flex}.body-stats-history-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:600}.body-stats-history-list{flex-direction:column;gap:10px;display:flex}.body-stats-history-item{background:var(--surface2);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:12px;transition:transform .26s,border-color .26s,box-shadow .26s,background .26s;display:flex}.body-stats-history-item:hover{border-color:color-mix(in srgb, var(--blue) 16%, var(--border));transform:translateY(-1px);box-shadow:0 10px 20px #0000001f}.body-stats-history-main{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.body-stats-history-weight{color:var(--text);font-size:15px;font-weight:700}.body-stats-history-unit{color:var(--muted);font-size:12px;font-weight:500}.body-stats-history-date{color:var(--muted);margin-top:3px;font-size:12px}.body-stats-history-delete{color:#ef4444;cursor:pointer;white-space:nowrap;background:#ef444414;border:1px solid #ef444438;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;transition:transform .26s,background .26s,border-color .26s}.body-stats-history-delete:hover{background:#ef444424;transform:translateY(-1px)}.body-stats-history-delete:disabled{opacity:.5;cursor:not-allowed}.body-stats-history-confirm{background:#ef444414;border:1px solid #ef44442e;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.body-stats-history-confirm-text{color:var(--muted);font-size:13px;line-height:1.45}.body-stats-history-error{color:#fca5a5;font-size:12px}.body-stats-history-actions{gap:10px;display:flex}.body-stats-history-cancel,.body-stats-history-confirm-btn{cursor:pointer;border-radius:10px;flex:1;padding:11px 12px;font-size:13px;font-weight:700;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s}.body-stats-history-cancel{border:1px solid var(--border);color:var(--muted);background:0 0}.body-stats-history-confirm-btn{color:#fff;background:#ef4444;border:none}.body-stats-history-cancel:disabled,.body-stats-history-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.edit-profile-btn{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--blue);cursor:pointer;border-radius:14px;padding:14px;font-size:15px;font-weight:600;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s}.edit-profile-btn:hover{background:var(--blue-dim);border-color:color-mix(in srgb, var(--blue) 24%, var(--border));transform:translateY(-1px)}.achievements-btn{color:#eab308;cursor:pointer;background:#eab3081a;border:1px solid #eab30866;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:15px;font-weight:600;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s;display:flex}.achievements-btn:hover{background:#eab3082e;transform:translateY(-1px);box-shadow:0 12px 22px #0000001f}.bug-report-overlay{z-index:1200;box-sizing:border-box;background:#0009;justify-content:center;align-items:flex-end;padding:24px 24px 48px;display:flex;position:fixed;inset:0}.bug-report-modal{background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:14px;width:min(92vw,420px);padding:24px;animation:.34s cubic-bezier(.22,1,.36,1) profile-pop-in;display:flex}.bug-report-title{color:var(--text);font-size:17px;font-weight:600}.bug-report-sent{color:var(--text-secondary);font-size:15px}.bug-report-textarea{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);resize:none;box-sizing:border-box;border-radius:12px;padding:12px;font-family:inherit;font-size:15px}.bug-report-textarea:focus{border-color:#6366f1;outline:none}.bug-report-error{color:#ef4444;font-size:13px}.bug-report-actions{justify-content:flex-end;gap:10px;display:flex}.bug-report-cancel{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:10px;padding:10px 18px;font-size:14px}.bug-report-submit{color:#fff;cursor:pointer;opacity:1;background:#6366f1;border:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600;transition:opacity .2s}.bug-report-submit:disabled{opacity:.4;cursor:default}.report-bug-btn{color:#6366f1;cursor:pointer;background:0 0;border:1px solid #6366f140;border-radius:14px;width:100%;margin-bottom:10px;padding:14px;font-size:15px;font-weight:500;transition:transform .26s,background .26s,border-color .26s}.report-bug-btn:hover{background:#6366f114;transform:translateY(-1px)}.signout-btn{color:#ef4444;cursor:pointer;background:0 0;border:1px solid #ef444440;border-radius:14px;width:100%;padding:14px;font-size:15px;font-weight:500;transition:transform .26s,background .26s,border-color .26s}.signout-btn:hover{background:#ef444414;transform:translateY(-1px)}.cal-section{flex-direction:column;gap:10px;display:flex}.cal-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.cal-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex;position:relative}.cal-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #00000029}.cal-card-compact{gap:8px;padding:10px}.cal-card-pressable{cursor:pointer}.cal-card-pressable .cal-nav{cursor:default}.cal-card-compact .cal-body{flex-direction:column;flex:1;min-height:0;display:flex}.cal-nav{justify-content:space-between;align-items:center;display:flex}.cal-body-pressable{cursor:pointer}.cal-card-loading .cal-month-label{animation:1.15s ease-in-out infinite cal-loading-label-pulse}.cal-body-loading{pointer-events:none}.cal-month-label{color:var(--text);font-size:15px;font-weight:600}.cal-arrow{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:transform .26s,background .26s,border-color .26s,color .26s;display:flex}.cal-arrow:hover:not(:disabled){background:var(--blue-dim);border-color:color-mix(in srgb, var(--blue) 24%, var(--border));color:var(--blue);transform:translateY(-1px)}.cal-arrow:disabled{opacity:.3;cursor:not-allowed}.cal-arrow-compact{width:24px;height:24px}.cal-card-compact .cal-month-label{font-size:12px}.cal-card-compact .cal-day-header{padding:1px 0 4px;font-size:9px}.cal-card-compact .cal-grid{grid-template-rows:repeat(var(--cal-week-rows,6), minmax(0, 1fr));flex:1;gap:2px;min-height:0}.cal-card-compact .cal-cell{aspect-ratio:auto;border-radius:6px;gap:1px;min-height:0}.cal-card-compact .cal-day-num{font-size:11px}.cal-card-compact .cal-dots{gap:2px;min-height:6px}.cal-card-compact .cal-dot-workout,.cal-card-compact .cal-dot-weight{width:5px;height:5px}.cal-card-compact .cal-dot-nut{width:6px;height:4px}.cal-day-headers{text-align:center;grid-template-columns:repeat(7,1fr);display:grid}.cal-day-header{color:var(--muted);padding:2px 0 6px;font-size:11px;font-weight:600}.cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.cal-cell{aspect-ratio:1;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:relative}.cal-cell.empty{background:0 0}.cal-cell-loading{border:1px solid color-mix(in srgb, var(--blue) 12%, var(--border));background:color-mix(in srgb, var(--surface2) 88%, white);overflow:hidden}.cal-cell-loading:after{content:"";background:linear-gradient(110deg, transparent 0%, color-mix(in srgb, var(--blue) 18%, white) 45%, transparent 100%);animation:1.5s ease-in-out infinite cal-cell-shimmer;animation-delay:var(--cal-load-delay,0s);position:absolute;inset:0;transform:translate(-125%)}.cal-day-num-loading{background:color-mix(in srgb, var(--muted) 44%, transparent);color:#0000;border-radius:999px;width:12px;height:12px}.cal-dots-loading{gap:3px}.cal-dot-loading{background:color-mix(in srgb, var(--blue) 42%, white);opacity:.65;width:5px;height:5px;animation:1.1s ease-in-out infinite cal-dot-pulse;animation-delay:var(--cal-load-delay,0s);border-radius:999px}.cal-dot-loading:nth-child(2){animation-delay:calc(var(--cal-load-delay,0s) + 90ms)}.cal-dot-loading:nth-child(3){animation-delay:calc(var(--cal-load-delay,0s) + .18s)}.cal-heat-indicators-loading{gap:2px}.cal-heat-indicator-loading{background:color-mix(in srgb, var(--blue) 44%, white);opacity:.7;width:4px;height:4px;animation:1.1s ease-in-out infinite cal-dot-pulse;animation-delay:var(--cal-load-delay,0s);border-radius:999px}.cal-heat-indicator-loading:nth-child(2){animation-delay:calc(var(--cal-load-delay,0s) + 90ms)}.cal-heat-indicator-loading:nth-child(3){animation-delay:calc(var(--cal-load-delay,0s) + .18s)}.cal-day-num{color:var(--muted);font-size:13px;font-weight:500;line-height:1}.cal-cell.today .cal-day-num{color:var(--blue);font-weight:700}.cal-cell.today{border:1px solid var(--blue)}.cal-cell:not(.empty):not(.cal-cell-loading){animation:.38s cubic-bezier(.22,1,.36,1) both cal-cell-in;animation-delay:var(--cal-cell-delay,0s)}.cal-cell.has-entry{background:color-mix(in srgb, var(--surface2) 78%, var(--blue) 22%);cursor:pointer}.cal-cell.has-entry .cal-day-num{color:var(--text);font-weight:600}.cal-cell.has-entry:active{opacity:.7}.cal-cell.future .cal-day-num{opacity:.35}.cal-dots{justify-content:center;align-items:center;gap:3px;min-height:8px;display:flex}.cal-dots-gradient{gap:4px}@keyframes cal-loading-label-pulse{0%,to{opacity:.58}50%{opacity:1}}@keyframes cal-cell-shimmer{0%{transform:translate(-125%)}to{transform:translate(125%)}}@keyframes cal-dot-pulse{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}@keyframes cal-cell-in{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes cal-dot-pop{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}.cal-dot{animation:.4s cubic-bezier(.34,1.56,.64,1) both cal-dot-pop;animation-delay:var(--cal-cell-delay,0s);flex-shrink:0;display:inline-block}.cal-dot:nth-child(2){animation-delay:calc(var(--cal-cell-delay,0s) + 38ms)}.cal-dot:nth-child(3){animation-delay:calc(var(--cal-cell-delay,0s) + 76ms)}.cal-heat-indicator.active{animation:.4s cubic-bezier(.34,1.56,.64,1) both cal-dot-pop;animation-delay:var(--cal-cell-delay,0s)}.cal-heat-indicator.active:nth-child(2){animation-delay:calc(var(--cal-cell-delay,0s) + 38ms)}.cal-heat-indicator.active:nth-child(3){animation-delay:calc(var(--cal-cell-delay,0s) + 76ms)}.cal-dot-gradient{background:var(--blue);box-shadow:0 0 0 1px color-mix(in srgb, var(--blue) 24%, transparent);border-radius:999px}.cal-dot-gradient-1{background:color-mix(in srgb, var(--blue) 38%, white);width:4px;height:4px}.cal-dot-gradient-2{background:color-mix(in srgb, var(--blue) 68%, white);width:5px;height:5px}.cal-dot-gradient-3{background:var(--blue);width:6px;height:6px;box-shadow:0 0 0 1px color-mix(in srgb, var(--blue) 26%, transparent), 0 0 10px color-mix(in srgb, var(--blue) 24%, transparent)}.cal-dot-workout{background:var(--blue);border-radius:999px;width:6px;height:6px;box-shadow:0 0 0 1px #3b9eff38}.cal-dot-nut{background:#22c55e;border-radius:2px;width:7px;height:5px;box-shadow:0 0 0 1px #22c55e38}.cal-dot-weight{background:#f59e0b;border-radius:1px;width:6px;height:6px;transform:rotate(45deg);box-shadow:0 0 0 1px #f59e0b38}.cal-legend{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:12px;padding-top:4px;display:flex}.cal-legend-item{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:inline-flex}.cal-legend-dot{flex-shrink:0}.day-detail{flex-direction:column;gap:14px;padding-bottom:32px;animation:.42s cubic-bezier(.22,1,.36,1) day-detail-enter;display:flex}.day-detail-header{align-items:center;gap:12px;padding:2px 0 6px;display:flex}.day-detail-back-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.day-detail-date{color:var(--text);font-size:16px;font-weight:700}.day-detail-meta{color:var(--muted);margin-top:2px;font-size:12px}.day-detail-loading{justify-content:center;align-items:center;min-height:220px;animation:.42s cubic-bezier(.22,1,.36,1) day-detail-loading-enter;display:flex}.day-detail-calendar-loader{background:linear-gradient(180deg, color-mix(in srgb, var(--blue) 12%, transparent), color-mix(in srgb, var(--surface2) 90%, black));border:1px solid color-mix(in srgb, var(--blue) 20%, var(--border));border-radius:20px;grid-template-rows:auto 1fr;gap:10px;width:74px;height:74px;padding:12px 11px 11px;animation:.42s cubic-bezier(.22,1,.36,1) day-detail-calendar-loader-in;display:grid;box-shadow:0 18px 30px #00000029}.day-detail-calendar-loader-top{justify-content:space-between;align-items:center;padding:0 5px;display:flex}.day-detail-calendar-loader-top span{background:color-mix(in srgb, var(--blue) 70%, white);border-radius:999px;width:10px;height:4px;animation:1.2s ease-in-out infinite day-detail-calendar-tab-pulse}.day-detail-calendar-loader-top span:last-child{animation-delay:.18s}.day-detail-calendar-loader-grid{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.day-detail-calendar-cell{background:color-mix(in srgb, var(--surface2) 76%, white);opacity:.42;border-radius:5px;animation:1.1s ease-in-out infinite day-detail-calendar-cell-wave}.day-detail-calendar-cell-2,.day-detail-calendar-cell-5,.day-detail-calendar-cell-8{animation-delay:.14s}.day-detail-calendar-cell-3,.day-detail-calendar-cell-6,.day-detail-calendar-cell-9{animation-delay:.28s}.day-detail-content{flex-direction:column;gap:14px;animation:.46s cubic-bezier(.22,1,.36,1) day-detail-content-in;display:flex}.body-weight-detail{animation-duration:.52s}.body-weight-detail-card{animation:.48s cubic-bezier(.22,1,.36,1) body-weight-card-in}.body-weight-detail .body-stats-chart-wrap{animation:.56s cubic-bezier(.22,1,.36,1) body-weight-chart-in}.body-weight-detail .body-stats-history-item{animation:.5s cubic-bezier(.22,1,.36,1) body-weight-history-in}.body-weight-detail .body-stats-history-item:nth-child(2){animation-delay:60ms}.body-weight-detail .body-stats-history-item:nth-child(3){animation-delay:.12s}@keyframes day-detail-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes day-detail-loading-enter{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes day-detail-calendar-loader-in{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes day-detail-calendar-tab-pulse{0%,to{opacity:.7;transform:translateY(0)}50%{opacity:1;transform:translateY(-1px)}}@keyframes day-detail-calendar-cell-wave{0%,to{opacity:.35;background:color-mix(in srgb, var(--surface2) 76%, white);transform:scale(.92)}50%{opacity:1;background:color-mix(in srgb, var(--blue) 58%, white);transform:scale(1)}}@keyframes day-detail-content-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes body-weight-card-in{0%{opacity:0;transform:translateY(12px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes body-weight-chart-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes body-weight-history-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.day-section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.day-delete-btn{color:#ef4444;cursor:pointer;white-space:nowrap;background:#ef444414;border:1px solid #ef44443d;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.day-delete-btn:disabled{opacity:.5;cursor:not-allowed}.day-delete-card{background:#ef444414;border:1px solid #ef44442e;border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.day-delete-title{color:var(--text);font-size:14px;font-weight:700}.day-delete-text{color:var(--muted);font-size:13px;line-height:1.5}.day-delete-error{color:#fca5a5;font-size:12px;line-height:1.4}.day-delete-actions{gap:10px;display:flex}.day-delete-cancel,.day-delete-confirm{cursor:pointer;border-radius:10px;flex:1;padding:11px 12px;font-size:13px;font-weight:700}.day-delete-cancel{border:1px solid var(--border);color:var(--muted);background:0 0}.day-delete-confirm{color:#fff;background:#ef4444;border:none}.day-delete-cancel:disabled,.day-delete-confirm:disabled{opacity:.5;cursor:not-allowed}.day-session-block{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.day-session-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.day-session-title{color:var(--text);font-size:14px;font-weight:700}.day-session-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.day-summary-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.day-summary-stat{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:14px;min-width:0;padding:14px 12px}.day-summary-value{color:var(--blue);text-overflow:ellipsis;white-space:nowrap;font-size:20px;font-weight:700;overflow:hidden}.day-summary-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:3px;font-size:10px}.day-exercise-block{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:8px;padding:16px;display:flex}.day-exercise-header{margin-bottom:4px}.day-exercise-name{color:var(--text);font-size:15px;font-weight:600}.day-exercise-category{color:var(--muted);margin-top:2px;font-size:12px}.day-sets-header{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;grid-template-columns:32px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto;padding:0 4px;font-size:10px;font-weight:600;display:grid}.day-set-item{flex-direction:column;gap:10px;display:flex}.day-set-row{color:var(--text);background:var(--surface2);border-radius:8px;grid-template-columns:32px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 8px 8px 4px;font-size:13px;display:grid}.day-sets-header>span,.day-set-row>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.day-set-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.day-set-num{color:var(--muted);font-weight:600}.day-set-orm{color:var(--muted);font-size:12px}.day-edit-btn{color:var(--blue);cursor:pointer;white-space:nowrap;background:#3b9eff1f;border:1px solid #3b9eff3d;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700}.day-edit-btn-danger{color:#fca5a5;background:#ef44441a;border-color:#ef444433}.day-edit-btn:disabled{opacity:.5;cursor:not-allowed}.day-edit-card{background:var(--surface2);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.day-edit-grid{gap:10px;display:grid}.day-edit-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.day-edit-field{flex-direction:column;gap:6px;display:flex}.day-edit-field-wide{grid-column:1/-1}.day-edit-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.day-edit-input{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;outline:none;padding:10px 12px;font-size:14px}.day-edit-input:focus{border-color:var(--blue)}.day-edit-select{appearance:none}.day-edit-hint{color:var(--muted);font-size:12px;line-height:1.45}.day-notes{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:6px;padding:14px;display:flex}.day-notes-label{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:600}.day-notes-text{color:var(--text);font-size:14px;line-height:1.5}.day-exercise-note{background:var(--blue-dim,#3b9eff12);border-left:2px solid var(--blue);color:var(--text);white-space:pre-wrap;border-radius:6px;margin-top:6px;padding:8px 10px;font-size:13px;line-height:1.5}.goal-section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.7px;margin-bottom:8px;font-size:11px;font-weight:600}.nutrition-goals-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.nutrition-goal-item{flex-direction:column;gap:5px;display:flex}.nutrition-goal-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:500}.nutrition-goal-input-wrap{position:relative}.nutrition-goal-input-wrap .form-input{padding-right:36px}.nutrition-goal-unit{color:var(--muted);pointer-events:none;font-size:11px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.day-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.day-nut-summary{background:var(--surface);border:1px solid var(--border);border-radius:16px;align-items:center;gap:16px;min-width:0;padding:16px;display:flex}.day-nut-cal{flex-direction:column;align-items:center;min-width:56px;max-width:96px;display:flex}.day-nut-cal-val{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:26px;font-weight:700;line-height:1;overflow:hidden}.day-nut-cal-unit{color:var(--muted);margin-top:2px;font-size:11px}.day-nut-macros{border-left:1px solid var(--border);flex:1;gap:0;min-width:0;padding-left:16px;display:flex}.day-nut-macro{flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;display:flex}.day-nut-macro-val{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:16px;font-weight:700;line-height:1;overflow:hidden}.day-nut-macro-label{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;overflow:hidden}.day-meal-block{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:6px;padding:14px;display:flex}.day-meal-item{flex-direction:column;gap:10px;min-width:0;display:flex}.day-meal-header{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-bottom:4px;display:flex}.day-meal-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.day-meal-cals{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;font-size:12px;overflow:hidden}.day-meal-row{justify-content:space-between;align-items:center;gap:10px;width:100%;min-width:0;font-size:13px;display:flex}.day-meal-food{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;max-width:100%;margin-right:8px;display:block;overflow:hidden}.day-meal-right{flex:0 auto;align-items:center;gap:10px;min-width:0;max-width:min(52%,170px);display:flex}.day-meal-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;max-width:100%;font-size:12px;display:block;overflow:hidden}.day-meal-delete-btn{color:#ef4444;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#ef444414;border:1px solid #ef44442e;border-radius:999px;flex-shrink:0;max-width:82px;padding:7px 10px;font-size:11px;font-weight:700;overflow:hidden}.day-meal-delete-btn:disabled{opacity:.5;cursor:not-allowed}.day-weight-block{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.day-weight-item{flex-direction:column;gap:10px;display:flex}.day-weight-row{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.day-weight-row>div:first-child{min-width:0}.day-weight-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.day-weight-time{color:var(--muted);margin-top:3px;font-size:12px}.day-weight-delete-btn{color:#ef4444;cursor:pointer;white-space:nowrap;background:#ef444414;border:1px solid #ef44442e;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700}.day-weight-delete-btn:disabled{opacity:.5;cursor:not-allowed}.day-micros-block{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.day-micros-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:600}.day-micros-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;display:grid}.day-micro-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:4px 0;font-size:13px;display:flex}.day-micro-item:nth-last-child(-n+2){border-bottom:none}.day-micro-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.day-micro-val{color:var(--text);text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;font-weight:600;overflow:hidden}.friends-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:14px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.friends-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #00000029}.friends-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.friends-card-title{color:var(--text);font-size:17px;font-weight:700}.friends-card-subtitle{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.4}.friends-card-count{color:var(--blue);background:var(--blue-dim);white-space:nowrap;border:1px solid #3b82f638;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.friends-search{display:flex}.friends-search-input{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:12px;outline:none;padding:12px 14px;font-size:15px;transition:border-color .26s,box-shadow .26s,background .26s}.friends-search-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent)}.friends-search-input:disabled{opacity:.55;cursor:not-allowed}.friends-search-hint{color:#fcd34d;background:#fbbf241a;border:1px solid #fbbf242e;border-radius:12px;padding:11px 12px;font-size:13px;line-height:1.4}.friends-search-results,.friends-group{background:var(--surface2);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.friends-groups,.friends-group-head{flex-direction:column;gap:10px;display:flex}.friends-group-title{letter-spacing:.8px;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.friends-scroll-panel{flex-direction:column;gap:10px;max-height:220px;padding-right:2px;display:flex;overflow-y:auto}.friends-scroll-panel-friends{max-height:320px}.friends-list-search-input{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .26s,box-shadow .26s,background .26s}.friends-list-search-input:focus{border-color:var(--blue)}.friends-person-row{background:var(--surface);border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.friends-person-row-stack{align-items:flex-start}.friends-person-name{color:var(--text);font-size:15px;font-weight:600}.friends-person-handle{color:var(--muted);margin-top:3px;font-size:13px}.friends-person-hint{color:#fbbf24;margin-top:6px;font-size:12px;line-height:1.35}.friends-headtohead{flex-direction:column;gap:7px;margin-top:8px;display:flex}.friends-headtohead-label,.friends-person-record-empty{letter-spacing:.6px;text-transform:uppercase;font-size:11px;font-weight:700}.friends-headtohead-label{color:var(--muted)}.friends-person-record-empty{color:var(--muted);margin-top:8px}.friends-headtohead-record{flex-wrap:wrap;gap:8px;display:flex}.friends-headtohead-pill{border:1px solid #0000;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:700}.friends-headtohead-pill-win{color:#86efac;background:#22c55e1f;border-color:#22c55e33}.friends-headtohead-pill-loss{color:#fca5a5;background:#ef44441f;border-color:#ef444433}.friends-headtohead-pill-tie{color:#93c5fd;background:#3b82f61f;border-color:#3b82f633}.friends-row-actions{gap:8px;display:flex}.friends-action-btn,.friends-primary-btn,.friends-secondary-btn{cursor:pointer;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s,border-color .26s,background .26s}.friends-action-btn,.friends-primary-btn{background:var(--blue);color:#07111d;border:none}.friends-secondary-btn{border:1px solid var(--border);color:var(--text);background:0 0}.friends-action-btn:hover:not(:disabled),.friends-primary-btn:hover:not(:disabled),.friends-secondary-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 12px 22px #0000001f}.friends-action-btn:disabled,.friends-primary-btn:disabled,.friends-secondary-btn:disabled{opacity:.6;cursor:not-allowed}.friend-profile-screen{flex-direction:column;gap:14px;display:flex}.friend-profile-header{align-items:center;gap:12px;display:flex}.friend-profile-identity{flex-direction:column;gap:3px;min-width:0;display:flex}.friend-profile-title{color:var(--text);font-size:22px;font-weight:800;line-height:1.1}.friend-profile-subtitle{color:var(--muted);font-size:13px;line-height:1.4}.friend-profile-streak{background:var(--surface);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:inline-flex}.friend-profile-streak-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.friend-profile-streak-value{color:var(--text);font-size:14px;font-weight:700}.friend-profile-view-toggle{background:var(--surface);border:1px solid var(--border);border-radius:14px;align-items:center;gap:6px;width:fit-content;padding:5px;transition:border-color .24s,box-shadow .24s,transform .24s;display:inline-flex}.friend-profile-view-toggle:hover{border-color:color-mix(in srgb, var(--blue) 16%, var(--border));box-shadow:0 12px 24px #0000001f}.friend-profile-view-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700;transition:background .22s,color .22s,transform .22s}.friend-profile-view-btn:hover{transform:translateY(-1px)}.friend-profile-view-btn.active{background:color-mix(in srgb, var(--blue) 16%, var(--surface2));color:var(--text);box-shadow:0 8px 18px color-mix(in srgb, var(--blue) 12%, transparent)}.friend-compare-model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.friend-compare-model-card{background:color-mix(in srgb, var(--surface2) 60%, transparent);border:1px solid color-mix(in srgb, var(--border) 88%, transparent);opacity:0;border-radius:16px;flex-direction:column;gap:10px;padding:12px;transition:transform .28s,border-color .28s,box-shadow .28s,background .28s;animation:.42s cubic-bezier(.22,1,.36,1) forwards friend-compare-fade-up;display:flex;transform:translateY(12px)scale(.985)}.friend-compare-model-card:nth-child(2){animation-delay:70ms}.friend-compare-model-card:hover{border-color:color-mix(in srgb, var(--blue) 16%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #00000024}.friend-compare-model-title{color:var(--text);text-align:center;letter-spacing:.02em;font-size:13px;font-weight:800}.friend-compare-cards{gap:12px;display:grid}.friend-compare-card{background:var(--surface);border:1px solid var(--border);opacity:0;border-radius:16px;flex-direction:column;gap:12px;padding:14px;transition:transform .26s,border-color .26s,box-shadow .26s,background .26s;animation:.44s cubic-bezier(.22,1,.36,1) forwards friend-compare-fade-up;display:flex;transform:translateY(10px)}.friend-compare-card:first-child{animation-delay:40ms}.friend-compare-card:nth-child(2){animation-delay:80ms}.friend-compare-card:nth-child(3){animation-delay:.12s}.friend-compare-card:nth-child(4){animation-delay:.16s}.friend-compare-card:nth-child(5){animation-delay:.2s}.friend-compare-card:nth-child(6){animation-delay:.24s}.friend-compare-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #00000026}.friend-compare-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.friend-compare-leader{text-transform:uppercase;letter-spacing:.06em;color:var(--blue);flex-shrink:0;font-size:11px;font-weight:800;transition:transform .22s,color .22s}.friend-compare-card:hover .friend-compare-leader{transform:translate(2px)}.friend-compare-columns{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;display:grid}.friend-compare-column{flex-direction:column;gap:8px;min-width:0;display:flex}.friend-compare-column-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.friend-compare-metric,.friend-compare-empty{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.friend-compare-empty{color:var(--muted)}.friend-compare-divider{background:color-mix(in srgb, var(--border) 92%, transparent);border-radius:999px;width:1px}@keyframes friend-compare-fade-up{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.friends-notice,.friends-error,.friends-empty{border-radius:12px;padding:11px 12px;font-size:13px;line-height:1.4}.friends-notice{color:#86efac;background:#22c55e1f;border:1px solid #22c55e3d}.friends-error{color:#fca5a5;background:#ef44441f;border:1px solid #ef44443d}.friends-empty{background:var(--surface);color:var(--muted);border:1px dashed var(--border)}@keyframes profile-section-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes profile-pop-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.profile-screen>*,.theme-toast-modal,.day-detail,.day-detail-loading,.day-detail-content,.day-detail-calendar-loader,.day-detail-calendar-loader-top span,.day-detail-calendar-cell,.body-weight-detail-card,.body-weight-detail .body-stats-chart-wrap,.body-weight-detail .body-stats-history-item,.friend-compare-model-card,.friend-compare-card,.cal-card-loading .cal-month-label,.cal-dot-loading,.cal-heat-indicator-loading,.cal-cell-loading:after,.cal-cell:not(.empty):not(.cal-cell-loading),.cal-dot,.cal-heat-indicator.active{animation:none}.profile-screen>*,.friend-compare-model-card,.friend-compare-card{opacity:1;transform:none}.profile-header,.avatar,.profile-stat,.profile-form,.form-input,.gender-btn,.btn-cancel,.btn-save,.theme-section,.theme-swatch,.theme-toast-ok,.theme-save-btn,.body-stats-card,.body-stats-input,.body-stats-save-btn,.ex-period-btn,.body-stats-history-item,.body-stats-history-delete,.body-stats-history-cancel,.body-stats-history-confirm-btn,.edit-profile-btn,.achievements-btn,.signout-btn,.cal-card,.cal-arrow,.friends-card,.friends-search-input,.friends-list-search-input,.friends-action-btn,.friends-primary-btn,.friends-secondary-btn{transition:none}}@media (width<=560px){.body-stats-log-row-detail{grid-template-columns:minmax(0,1fr) auto;display:grid}.body-stats-log-row-detail .body-stats-input{grid-column:1/-1}.friends-card-header,.friends-person-row,.friends-row-actions{flex-direction:column;align-items:stretch}.friends-card-count{align-self:flex-start}.friends-scroll-panel,.friends-scroll-panel-friends{max-height:280px}.friend-profile-view-toggle{width:100%}.friend-profile-view-btn{flex:1}.friend-compare-model-grid,.friend-compare-columns{grid-template-columns:1fr}.friend-compare-divider{display:none}.friend-compare-card-top{flex-direction:column;align-items:flex-start}}.profile-made-by{text-align:center;color:var(--muted);opacity:.5;letter-spacing:.03em;padding:24px 0 12px;font-size:.72rem}.home-screen{flex-direction:column;gap:16px;height:100%;min-height:100%;padding-bottom:6px;display:flex;overflow:hidden}.home-screen>*{opacity:0;transform:translateY(10px)}.home-screen--ready>*{animation:.66s cubic-bezier(.22,1,.36,1) both home-section-enter}.home-screen--ready>:first-child{animation-delay:40ms}.home-screen--ready>:nth-child(2){animation-delay:.11s}.home-screen--ready>:nth-child(3){animation-delay:.18s}.home-screen--ready>:nth-child(4){animation-delay:.25s}.home-screen--ready>:nth-child(5){animation-delay:.32s}.home-screen--ready>:nth-child(6){animation-delay:.39s}.home-loading{color:var(--muted);text-align:center;margin-top:80px;font-size:14px}.home-today-col{flex-direction:column;gap:10px;display:flex}.home-today-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:4px;padding:16px;transition:border-color .32s,transform .32s,box-shadow .32s,background .32s;display:flex}.home-nut-top{margin-bottom:2px}.home-today-bar-compact{border-radius:999px;height:8px;margin-top:8px}.home-today-bar-compact .home-today-bar-fill{border-radius:999px}.home-macro-bars-compact{gap:6px;margin-top:8px;padding-top:8px}.home-macro-bars{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:8px;padding-top:12px;display:flex}.home-today-card-clickable{cursor:pointer;transition:border-color .32s,transform .32s,box-shadow .32s,background .32s}.home-today-card-clickable:hover{border-color:color-mix(in srgb, var(--blue) 32%, var(--border));transform:translateY(-2px);box-shadow:0 14px 28px #0003}.home-today-card-clickable:active{background:var(--surface2);box-shadow:none;transform:scale(.988)}.home-today-card-header{color:var(--muted);text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:6px;margin-bottom:6px;font-size:11px;font-weight:600;display:flex}.home-today-val{color:var(--text);font-size:28px;font-weight:700;line-height:1}.home-today-val-green{color:#22c55e}.home-today-val-muted{color:var(--muted)}.home-today-sub{color:var(--muted);margin-top:1px;font-size:12px}.home-today-bar{background:var(--surface2);border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.home-today-bar-fill{will-change:width;border-radius:999px;min-width:2px;height:100%;transition:width .88s cubic-bezier(.22,1,.36,1) 80ms,box-shadow .88s 80ms}.home-section{flex-direction:column;gap:8px;min-width:0;height:100%;display:flex}.home-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.home-insights-grid{grid-template-columns:1fr;align-items:start;gap:14px;margin-top:10px;display:grid}.home-section-weight{min-width:0}.home-weight-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;flex:1;gap:6px;min-height:292px;padding:10px;transition:border-color .32s,transform .32s,box-shadow .32s,background .32s;display:flex;position:relative;overflow:visible}.home-weight-cap{z-index:2;background:color-mix(in srgb, var(--surface2) 88%, black 12%);border:1px solid color-mix(in srgb, var(--border) 85%, white 15%);border-radius:16px;padding:8px 14px 7px;position:absolute;top:0;left:50%;transform:translate(-50%,-46%);box-shadow:0 14px 26px #0003}.home-weight-cap-label{color:var(--muted);text-transform:uppercase;letter-spacing:.9px;font-size:10px;font-weight:700;display:block}.home-weight-cap-sublabel{color:var(--muted);opacity:.6;text-align:center;letter-spacing:.3px;margin-top:2px;font-size:7px;display:block}.home-weight-card-clickable{cursor:pointer;transition:border-color .32s,background .32s}.home-weight-card-clickable:hover{border-color:color-mix(in srgb, var(--blue) 26%, var(--border));transform:translateY(-2px);box-shadow:0 16px 30px #0003}.home-weight-card-clickable:active{box-shadow:none;transform:scale(.99)}.home-weight-header{z-index:1;pointer-events:none;justify-content:flex-end;align-items:flex-start;gap:12px;display:flex;position:absolute;top:12px;left:10px;right:10px}.home-weight-chip{white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:100%;padding:5px 8px;font-size:10px;font-weight:700;overflow:hidden}.home-weight-chip.up{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b59}.home-weight-chip.down{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e59}.home-weight-chip.neutral{background:var(--surface2);border:1px solid var(--border);color:var(--muted)}.home-chart-empty{width:100%;margin-top:4px;position:relative}.home-chart-empty-label{color:var(--muted);font-size:12px}.home-chart-ghost{opacity:.9}.home-chart-ghost-path--drawing{stroke-dashoffset:1px;animation:1.8s cubic-bezier(.22,1,.36,1) .1s forwards ghost-draw}@keyframes ghost-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.home-chart-ghost-path--erasing{animation:1.4s cubic-bezier(.4,0,1,1) forwards ghost-erase}@keyframes ghost-erase{0%{stroke-dashoffset:0}to{stroke-dashoffset:-1px}}.home-chart-ghost-path--done{opacity:0}.home-chart-empty-label{color:var(--muted);opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;transition:opacity .5s;display:flex;position:absolute;inset:0}.home-chart-empty-label--visible{opacity:1}.home-chart-empty-sublabel{opacity:.6;font-size:11px}.home-macro-track-glow{animation:1.4s ease-out forwards macro-track-glow}@keyframes macro-track-glow{0%{box-shadow:none}35%{box-shadow:0 0 0 2px var(--glow-color), 0 0 10px 3px var(--glow-color)}to{box-shadow:none}}.home-weight-chart-wrap{flex:1;width:100%;height:100%;min-height:0;margin-top:4px}.home-section-calendar .cal-card{height:100%;min-height:280px;transition:border-color .32s,transform .32s,box-shadow .32s,background .32s}.home-section-calendar .cal-card:hover{border-color:color-mix(in srgb, var(--blue) 26%, var(--border));transform:translateY(-2px);box-shadow:0 16px 30px #0003}.home-section-calendar .cal-card:active{box-shadow:none;transform:scale(.99)}.home-section-calendar .cal-card-compact,.home-section-calendar .cal-card-hybrid{gap:7px;min-height:274px;padding:9px}.home-section-calendar .cal-card-hybrid .cal-nav{align-items:center}.home-section-calendar .cal-card-hybrid .cal-month-label{letter-spacing:.8px;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.home-section-calendar .cal-card-hybrid .cal-day-header{letter-spacing:.3px;padding-bottom:3px;font-size:8.5px}.home-section-calendar .cal-card-hybrid .cal-grid{gap:2px}.home-section-calendar .cal-card-hybrid .cal-cell{aspect-ratio:auto;background:#ffffff0a;border:1px solid #ffffff08;border-radius:5px;min-height:0;padding-top:1px;transition:transform .26s,background .32s,border-color .32s,box-shadow .32s;position:relative;overflow:hidden}.home-section-calendar .cal-card-hybrid .cal-cell.empty{background:0 0;border-color:#0000}.home-section-calendar .cal-card-hybrid .cal-day-num{color:#ffffffd1;font-size:10px}.home-section-calendar .cal-card-hybrid .cal-cell.has-entry{background:color-mix(in srgb, var(--blue) 14%, transparent);border-color:color-mix(in srgb, var(--blue) 20%, transparent)}.home-section-calendar .cal-card-hybrid .cal-cell.heat-2{background:color-mix(in srgb, var(--blue) 24%, transparent);border-color:color-mix(in srgb, var(--blue) 28%, transparent)}.home-section-calendar .cal-card-hybrid .cal-cell.heat-3{background:color-mix(in srgb, var(--blue) 38%, transparent);border-color:color-mix(in srgb, var(--blue) 34%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--blue) 24%, transparent)}.home-section-calendar .cal-card-hybrid .cal-cell.today{border-color:#ffffff6b;box-shadow:inset 0 0 0 1px #ffffff29}.home-section-calendar .cal-card-hybrid .cal-cell.today .cal-day-num{color:#fff}.home-section-calendar .cal-card-hybrid .cal-cell.future{opacity:.35}.home-section-calendar .cal-card-hybrid .cal-dots{gap:2px;min-height:5px}.home-section-calendar .cal-card-hybrid .cal-dots-gradient{gap:3px}.home-section-calendar .cal-card-hybrid .cal-dot-gradient-1{width:3px;height:3px}.home-section-calendar .cal-card-hybrid .cal-dot-gradient-2{width:4px;height:4px}.home-section-calendar .cal-card-hybrid .cal-dot-gradient-3{width:5px;height:5px}.home-section-calendar .cal-card-hybrid .cal-dot-workout,.home-section-calendar .cal-card-hybrid .cal-dot-weight{width:4px;height:4px}.home-section-calendar .cal-card-hybrid .cal-dot-nut{width:5px;height:3px}.home-section-calendar .cal-card-loading{overflow:hidden}.home-section-calendar .cal-card-hybrid.cal-card-loading .cal-cell.cal-cell-loading{background:#ffffff0b;border-color:#ffffff0d}.home-section-calendar .cal-card-hybrid.cal-card-loading .cal-cell.cal-cell-loading:after{background:linear-gradient(110deg, transparent 0%, color-mix(in srgb, var(--blue) 26%, white) 50%, transparent 100%)}.home-section-calendar .cal-card-hybrid.cal-card-loading .cal-day-num-loading{background:#ffffff2e;width:10px;height:10px}.home-section-calendar .cal-card-hybrid.cal-card-loading .cal-dot-loading,.home-section-calendar .cal-card-hybrid.cal-card-loading .cal-heat-indicator-loading{background:color-mix(in srgb, var(--blue) 58%, white)}@media (width<=860px){.home-insights-grid .home-section{gap:10px}.home-insights-grid .home-section-title{letter-spacing:.8px;font-size:10px}.home-weight-card{border-radius:14px;gap:6px;min-height:0;padding:9px}.home-weight-cap{border-radius:14px;padding:7px 12px 6px;left:50%;transform:translate(-50%,-46%)}.home-weight-cap-label{font-size:9px}.home-weight-header{gap:8px}.home-weight-title{font-size:13px}.home-weight-subtitle{font-size:10px}.home-weight-chip{padding:4px 7px;font-size:9px}.home-section-calendar .cal-card-compact{min-height:0}.home-section-calendar .cal-card{min-height:260px}.home-section-calendar .cal-card-hybrid{min-height:252px}}@media (width<=640px){.home-today-col{gap:8px}.home-today-card{border-radius:14px;gap:3px;padding:12px}.home-today-card-header{margin-bottom:4px}.home-today-val{font-size:24px}.home-today-sub{font-size:11px}.home-today-bar-compact{height:7px;margin-top:6px}.home-macro-bars-compact{gap:5px;margin-top:6px;padding-top:8px}.home-insights-grid{align-items:stretch;gap:10px}.home-insights-grid .home-section{height:100%}.home-weight-card{height:168px;min-height:168px;padding:2px}.home-weight-cap{border-radius:12px;padding:6px 10px 5px;left:50%;transform:translate(-50%,-42%)}.home-weight-cap-label{letter-spacing:.7px;font-size:8px}.home-weight-header{gap:4px;top:2px;left:2px;right:2px}.home-weight-chip{padding:3px 6px;font-size:8px}.home-section-calendar .cal-card{min-height:230px}.home-section-calendar .cal-card-hybrid{gap:6px;min-height:226px;padding:8px}.home-section-calendar .cal-card-hybrid .cal-month-label{font-size:10px}.home-section-calendar .cal-card-hybrid .cal-day-header{padding-bottom:2px;font-size:8px}.home-section-calendar .cal-card-hybrid .cal-grid{gap:2px}.home-section-calendar .cal-card-hybrid .cal-cell{border-radius:4px}.home-section-calendar .cal-card-hybrid .cal-day-num{font-size:9px}.home-section-calendar .cal-card-hybrid .cal-dots{gap:1px;min-height:4px}.home-section-calendar .cal-card-hybrid .cal-dots-gradient{gap:2px}.home-section-calendar .cal-card-hybrid .cal-dot-gradient-1{width:2px;height:2px}.home-section-calendar .cal-card-hybrid .cal-dot-gradient-2{width:3px;height:3px}.home-section-calendar .cal-card-hybrid .cal-dot-gradient-3{width:4px;height:4px}.home-section-calendar .cal-card-hybrid .cal-dot-workout,.home-section-calendar .cal-card-hybrid .cal-dot-weight{width:3px;height:3px}.home-section-calendar .cal-card-hybrid .cal-dot-nut{width:4px;height:2px}.home-last-workout{border-radius:14px;gap:10px;padding:12px}.home-lw-date{font-size:13px}.home-lw-duration{padding:3px 8px;font-size:12px}.home-lw-stats{gap:6px}.home-lw-stat{border-radius:10px;padding:10px 6px}.home-lw-stat-val{font-size:18px}.home-lw-exercises{font-size:12px}.home-timer-card{border-radius:14px;gap:8px;padding:12px}.home-timer-countdown{font-size:44px}.home-timer-actions{gap:6px}.home-timer-start,.home-timer-step,.home-timer-pause{border-radius:10px;padding:10px;font-size:13px}}.home-macro-row{flex-direction:column;gap:4px;display:flex}.home-macro-meta{justify-content:space-between;align-items:center;display:flex}.home-macro-label{color:var(--muted);letter-spacing:.2px;text-transform:uppercase;font-size:11px;font-weight:600}.home-macro-right{align-items:baseline;gap:1px;display:flex}.home-macro-val{font-size:12px;font-weight:700}.home-macro-goal{color:var(--muted);font-size:10px}.home-macro-track{background:var(--surface2);border-radius:999px;height:3px;position:relative;overflow:hidden}.home-macro-fill{will-change:width;border-radius:999px;min-width:2px;height:100%;transition:width .76s cubic-bezier(.22,1,.36,1) .14s,box-shadow .76s .14s}.home-last-workout{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:16px;transition:border-color .32s,transform .32s,box-shadow .32s,background .32s;display:flex}.home-last-workout:hover{border-color:color-mix(in srgb, var(--blue) 20%, var(--border));transform:translateY(-2px);box-shadow:0 16px 30px #0000002e}.home-lw-top{justify-content:space-between;align-items:center;display:flex}.home-lw-date{color:var(--text);font-size:14px;font-weight:600}.home-lw-duration{color:var(--muted);background:var(--surface2);border:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;max-width:100%;padding:3px 9px;font-size:13px;overflow:hidden}.home-lw-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.home-lw-stat{background:var(--surface2);text-align:center;border-radius:12px;min-width:0;padding:12px 8px}.home-lw-stat-val{color:var(--blue);text-overflow:ellipsis;white-space:nowrap;font-size:20px;font-weight:700;line-height:1;display:block;overflow:hidden}.home-lw-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-top:3px;font-size:10px}.home-timer-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:10px;padding:16px;transition:border-color .32s,transform .32s,box-shadow .32s,background .32s;display:flex}.home-timer-card:hover{border-color:color-mix(in srgb, var(--blue) 24%, var(--border));transform:translateY(-2px);box-shadow:0 16px 30px #0000002e}.home-timer-start{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:13px;font-size:15px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.home-timer-start:hover{opacity:.92;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.home-timer-start:active{box-shadow:none;transform:scale(.985)}.home-timer-name{color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:600}.home-timer-countdown{text-align:center;letter-spacing:-2px;font-variant-numeric:tabular-nums;font-size:56px;font-weight:700;line-height:1}.home-timer-track{background:var(--surface2);border-radius:99px;height:4px;overflow:hidden}.home-timer-fill{border-radius:99px;height:100%;transition:width 1s linear}.home-timer-actions{grid-template-columns:1fr 1.5fr 1fr;gap:8px;display:grid}.home-timer-step{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:12px;padding:10px;font-size:14px;font-weight:600;transition:background .26s,color .26s,transform .26s,box-shadow .26s}.home-timer-step:hover{background:var(--blue-dim);color:var(--blue);transform:translateY(-1px)}.home-timer-step:active{transform:scale(.98)}.home-timer-pause{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:10px;font-size:14px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.home-timer-pause:hover{opacity:.92;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.home-timer-pause:active{box-shadow:none;transform:scale(.985)}.home-timer-reset{color:var(--muted);text-align:center;cursor:pointer;background:0 0;border:none;padding:2px;font-size:13px;font-weight:500;transition:color .32s}.home-timer-reset:hover{color:var(--text)}.home-lw-exercises{color:var(--muted);border-top:1px solid var(--border);padding-top:2px;font-size:13px;line-height:1.4}.home-weight-modal-overlay{z-index:1200;padding:20px 16px calc(env(safe-area-inset-bottom) + 12px);background:#00000094;justify-content:center;align-items:flex-end;animation:.28s home-weight-overlay-in;display:flex;position:fixed;inset:0}.home-weight-modal{background:color-mix(in srgb, var(--surface) 94%, black);border:1px solid var(--border);border-radius:24px;flex-direction:column;gap:12px;width:min(560px,100%);max-height:min(82vh,820px);padding:14px 16px 18px;animation:.42s cubic-bezier(.22,1,.36,1) home-weight-sheet-in;display:flex;overflow-y:auto;box-shadow:0 24px 44px #0000004d}.home-weight-modal-expanded{gap:16px}.home-weight-sheet-handle{background:color-mix(in srgb, var(--muted) 70%, transparent);border-radius:999px;width:42px;height:4px;margin:0 auto 2px}.home-weight-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.home-weight-modal-title{color:var(--text);letter-spacing:-.3px;font-size:20px;font-weight:700}.home-weight-panel-current{color:var(--blue);margin-top:3px;font-size:14px;font-weight:700}.home-weight-panel-current span{color:var(--muted);font-size:13px;font-weight:500}.home-weight-panel-close{border:1px solid var(--border);background:var(--surface2);width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .26s,border-color .26s,color .26s,background .26s;display:flex}.home-weight-panel-close:hover{color:var(--text);border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-1px)}.home-weight-panel-log-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;display:grid}.home-weight-panel-input{background:var(--surface2);border:1px solid var(--border);min-width:0;color:var(--text);border-radius:12px;outline:none;flex:1;padding:13px 14px;font-size:15px}.home-weight-panel-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 14%, transparent)}.home-weight-panel-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.home-weight-panel-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.home-weight-panel-input[type=number]{appearance:textfield}.home-weight-panel-unit{color:var(--muted);flex-shrink:0;font-size:14px;font-weight:700}.home-weight-panel-save{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;flex-shrink:0;padding:13px 18px;font-size:14px;font-weight:700;transition:transform .26s,box-shadow .26s,opacity .26s}.home-weight-panel-save:hover{box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 26%, transparent);transform:translateY(-1px)}.home-weight-unit-toggle{background:var(--surface2);border:1px solid var(--border);border-radius:12px;align-items:center;padding:3px;display:inline-flex}.home-weight-unit-btn{min-width:48px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:9px 10px;font-size:13px;font-weight:700;transition:background .26s,color .26s,transform .26s}.home-weight-unit-btn.active{background:var(--blue);color:#fff}.home-weight-panel-error{color:#fca5a5;font-size:12px}.home-weight-panel-chart-header{justify-content:flex-end;display:flex}.home-weight-panel-chart-wrap{width:100%;padding-top:4px}.home-weight-panel-history{flex-direction:column;gap:10px;display:flex}.home-weight-panel-history-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:600}.home-weight-panel-history-list{flex-direction:column;gap:10px;display:flex}.home-weight-panel-history-item{background:var(--surface2);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.home-weight-panel-history-main{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.home-weight-panel-history-weight{color:var(--text);font-size:15px;font-weight:700}.home-weight-panel-history-weight span{color:var(--muted);font-size:12px;font-weight:500}.home-weight-panel-history-date{color:var(--muted);margin-top:3px;font-size:12px}.home-weight-panel-history-delete{color:#ef4444;cursor:pointer;white-space:nowrap;background:#ef444414;border:1px solid #ef444438;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;transition:transform .26s,background .26s,border-color .26s}.home-weight-panel-history-delete:hover{background:#ef444424;transform:translateY(-1px)}.home-weight-panel-history-confirm{background:#ef444414;border:1px solid #ef44442e;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.home-weight-panel-history-confirm-text{color:var(--muted);font-size:13px;line-height:1.45}.home-weight-panel-history-error{color:#fca5a5;font-size:12px}.home-weight-panel-history-actions{gap:10px;display:flex}.home-weight-panel-history-cancel,.home-weight-panel-history-confirm-btn{cursor:pointer;border-radius:10px;flex:1;padding:11px 12px;font-size:13px;font-weight:700;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s}.home-weight-panel-history-cancel{border:1px solid var(--border);color:var(--muted);background:0 0}.home-weight-panel-history-confirm-btn{color:#fff;background:#ef4444;border:none}.home-weight-panel-close:disabled,.home-weight-panel-save:disabled,.home-weight-panel-history-delete:disabled,.home-weight-panel-history-cancel:disabled,.home-weight-panel-history-confirm-btn:disabled{opacity:.45;cursor:not-allowed}@keyframes home-weight-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes home-weight-sheet-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes home-section-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.home-screen>*{opacity:1;animation:none;transform:none}.home-today-card,.home-today-card-clickable,.home-today-bar-fill,.home-weight-card,.home-weight-modal-overlay,.home-weight-modal,.home-macro-fill,.home-section-calendar .cal-card,.home-section-calendar .cal-card-hybrid .cal-cell,.home-last-workout,.home-section-calendar .cal-card-heatmap .cal-cell{transition:none}.home-weight-modal-overlay,.home-weight-modal{animation:none}}@media (width<=640px){.home-weight-modal-overlay{align-items:flex-end;padding:14px}.home-weight-modal{border-radius:22px;width:100%;max-height:min(88vh,900px);padding:14px 14px 16px}.home-weight-panel-log-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.home-weight-panel-input{grid-column:1/-1;padding:12px 13px}.home-weight-unit-btn{min-width:42px;padding:9px 8px}.home-weight-panel-save{padding:12px 14px}}.workout-screen{flex-direction:column;gap:28px;display:flex}.workout-screen>*{opacity:0;animation:.62s cubic-bezier(.22,1,.36,1) both workout-section-enter;transform:translateY(10px)}.workout-screen>:first-child{animation-delay:40ms}.workout-screen>:nth-child(2){animation-delay:.11s}.workout-screen>:nth-child(3){animation-delay:.18s}.workout-screen>:nth-child(4){animation-delay:.25s}.workout-screen>:nth-child(5){animation-delay:.32s}.section-title{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;font-size:13px;font-weight:600}.workout-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;justify-content:space-between;align-items:center;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.workout-card:hover{border-color:color-mix(in srgb, var(--blue) 22%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #0000002e}.workout-card-left{align-items:center;gap:14px;display:flex}.workout-card-icon{background:var(--blue-dim);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .32s,background .32s;display:flex}.workout-card:hover .workout-card-icon{transform:scale(1.04)}.workout-card-name{color:var(--text);margin-bottom:4px;font-size:16px;font-weight:600}.workout-card-meta{color:var(--muted);font-size:12px}.start-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.start-btn:hover{opacity:.92;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.start-btn:active{box-shadow:none;transform:scale(.985)}.empty-workout-btn{background:var(--surface);width:100%;color:var(--blue);cursor:pointer;border:1px dashed #3b9eff4d;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:18px;font-size:15px;font-weight:500;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s;display:flex}.empty-workout-btn:hover{background:var(--blue-dim);border-color:color-mix(in srgb, var(--blue) 34%, var(--border));transform:translateY(-1px);box-shadow:0 12px 24px #00000024}.empty-workout-btn:active{box-shadow:none;transform:scale(.985)}.timer-bar{background:var(--surface);border:1px solid var(--border);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:16px 20px;transition:transform .32s,border-color .32s,box-shadow .32s;display:flex}.timer-bar:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000029}.rest-inline{flex-direction:column;flex:1;align-items:center;gap:4px;padding:0 12px;display:flex}.rest-inline-label{color:var(--muted);font-size:11px;font-weight:500}.rest-inline-countdown{color:var(--blue);letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:36px;font-weight:700;line-height:1}.timer-label{color:var(--muted);font-size:13px;font-weight:500}.timer-clock{color:var(--blue);letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:32px;font-weight:700}.workout-actions{flex-direction:column;gap:12px;margin-top:8px;display:flex}.action-btn{background:var(--surface);width:100%;color:var(--blue);cursor:pointer;border:1px dashed #3b9eff4d;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:15px;font-weight:500;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s;display:flex}.action-btn:hover{background:var(--blue-dim);border-color:color-mix(in srgb, var(--blue) 30%, var(--border));transform:translateY(-1px);box-shadow:0 12px 22px #00000024}.action-btn:active{box-shadow:none;transform:scale(.985)}.picker-page{flex-direction:column;animation:.52s cubic-bezier(.16,1,.3,1) both picker-slide-in;display:flex}.picker-page-exit{animation:.36s cubic-bezier(.4,0,1,1) both picker-slide-out}@keyframes picker-slide-in{0%{opacity:0;transform:translateY(42px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes picker-slide-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(26px)scale(.99)}}.picker-sticky-top{z-index:10;background:var(--bg);border-bottom:1px solid var(--border);margin:0 -16px;padding:0 16px 12px;position:sticky;top:0}.picker-list{padding-top:12px}.picker-header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.picker-title{color:var(--text);flex:1;font-size:18px;font-weight:700}.back-btn{background:var(--surface);border:1px solid var(--border);cursor:pointer;width:36px;height:36px;color:var(--text);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .26s,background .26s,border-color .26s;display:flex}.back-btn:hover{background:var(--surface2);border-color:color-mix(in srgb, var(--blue) 24%, var(--border));transform:translateY(-1px)}.add-selected-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;padding:8px 16px;font-size:14px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.add-selected-btn:hover{opacity:.92;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.add-selected-btn:active{box-shadow:none;transform:scale(.985)}.exercise-list{flex-direction:column;gap:8px;display:flex}.exercise-item{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;padding:14px 16px;transition:transform .26s,border-color .26s,background .26s,box-shadow .26s;display:flex}.picker-page-exercises .exercise-item{opacity:0;animation:.42s cubic-bezier(.22,1,.36,1) forwards exercise-item-slide-in;animation-delay:calc(.12s + var(--exercise-enter-delay,0s));transform:translate(28px)}.exercise-item:hover{border-color:color-mix(in srgb, var(--blue) 20%, var(--border));transform:translateY(-1px);box-shadow:0 10px 20px #0000001f}.exercise-item.selected{border-color:var(--blue);background:var(--blue-dim);box-shadow:inset 0 0 0 1px #ffffff0d}@keyframes exercise-item-slide-in{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}.exercise-item-left{align-items:center;gap:12px;display:flex}.exercise-checkbox{border:1.5px solid var(--muted);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:all .32s;display:flex}.battle-panel{flex-direction:column;gap:10px;display:flex}.battle-panel-head{background:linear-gradient(135deg,#3b9eff29,#22c55e1a);border:1px solid #3b9eff33;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px;display:flex}.battle-panel-head-actions{align-items:center;gap:8px;display:flex}.battle-panel-eyebrow{letter-spacing:.9px;text-transform:uppercase;color:var(--blue);font-size:11px;font-weight:700}.battle-panel-title,.battle-lobby-title{color:var(--text);margin-top:5px;font-size:18px;font-weight:700}.battle-panel-status{color:#86efac;background:#22c55e2e;border:1px solid #22c55e42;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.battle-panel-toggle{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#ffffff14;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700;transition:transform .26s,background .26s,border-color .26s,color .26s}.battle-panel-toggle:hover{background:var(--blue-dim);border-color:color-mix(in srgb, var(--blue) 26%, var(--border));transform:translateY(-1px)}.battle-panel-card,.battle-lobby-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:8px;padding:16px 18px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.battle-panel-card:hover,.battle-lobby-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.battle-panel-card-label{color:var(--muted);letter-spacing:.8px;text-transform:uppercase;font-size:11px;font-weight:700}.battle-panel-card-title{color:var(--text);font-size:16px;font-weight:700}.battle-panel-card-body,.battle-lobby-body,.battle-panel-time{color:var(--muted);font-size:13px;line-height:1.45}.workout-draft-card{gap:14px}.workout-draft-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.battle-feed-list{flex-direction:column;gap:10px;max-height:280px;padding-right:2px;display:flex;overflow-y:auto}.battle-feed-item{background:var(--surface2);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:5px;padding:12px;transition:transform .26s,border-color .26s,background .26s;display:flex}.battle-feed-item:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-1px)}.battle-feed-type{color:var(--blue);letter-spacing:.5px;text-transform:uppercase;background:#3b9eff1f;border-radius:999px;align-self:flex-start;padding:5px 8px;font-size:11px;font-weight:700}.battle-feed-empty{background:var(--surface2);border:1px dashed var(--border);color:var(--muted);border-radius:14px;padding:14px;font-size:13px;line-height:1.4}.battle-panel-error{color:#fca5a5;background:#ef44441a;border:1px solid #ef44442e;border-radius:12px;padding:10px 12px;font-size:13px}.battle-opponent-workout{flex-direction:column;gap:12px;max-height:440px;padding-right:2px;display:flex;overflow-y:auto}.battle-opponent-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.battle-readonly-exercise{background:linear-gradient(180deg, #f973161f, #f973160a), color-mix(in srgb, var(--surface) 90%, var(--bg));border:1px solid #f9731638;box-shadow:inset 0 0 0 1px #f973160f}.battle-readonly-unit-toggle{pointer-events:none;background:#f9731614;border-color:#f9731642}.battle-readonly-set-count{color:#fed7aa;min-width:auto}.battle-readonly-row{opacity:1;background:#121212a8;border:1px solid #f9731624;padding:10px 8px}.battle-readonly-input{opacity:1;color:#fff7ed;background:#f9731617;border-color:#f9731638;justify-content:center;align-items:center;min-height:34px;font-weight:700;display:flex}.battle-readonly-done{pointer-events:none;color:#fff;background:#f97316eb;border-color:#f97316fa}.battle-readonly-empty{color:#fdba74;background:#f9731614;border:1px dashed #f9731642;border-radius:10px;padding:12px;font-size:12px;line-height:1.45}.battle-readonly-badge,.battle-readonly-pill,.battle-readonly-subtle{letter-spacing:.5px;text-transform:uppercase;border-radius:999px;align-self:flex-start;font-size:11px;font-weight:700}.battle-readonly-badge,.battle-readonly-pill{color:#fdba74;background:#f973162e;border:1px solid #f9731647;padding:6px 9px}.battle-readonly-label-row{align-items:center;gap:8px;margin-bottom:6px;display:flex}.battle-readonly-subtle{color:var(--muted);background:#ffffff0d;border:1px solid #ffffff14;padding:5px 8px}.battle-readonly-exercise .exercise-block-name{color:#fff7ed}.battle-readonly-exercise .exercise-category{color:#fdba74}.battle-readonly-exercise .header-row{border-bottom-color:#f973162e}.battle-readonly-exercise .header-row span,.battle-readonly-exercise .col-set,.battle-readonly-exercise .col-prev,.battle-readonly-exercise .unit-btn{color:#fdba74}.battle-readonly-exercise .unit-btn.active{color:#fff;background:#f97316}.battle-waiting-toggle{align-self:flex-start}.battle-room-notice{z-index:6;color:#dbeafe;background:#0f172af5;border:1px solid #3b9eff47;border-radius:999px;align-self:center;padding:10px 14px;font-size:12px;font-weight:700;position:sticky;top:12px;box-shadow:0 10px 30px #0206173d}.battle-remote-card{background:#12121247;border:1px solid #f973162e;border-radius:16px;flex-direction:column;gap:10px;padding:12px;display:flex}.battle-remote-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.battle-remote-status-finished{color:#86efac;border-color:#22c55e42}.battle-remote-status-left{color:#fca5a5;border-color:#ef444433}.party-room-card,.party-invite-picker{background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:12px;margin-bottom:14px;padding:16px 18px;display:flex}.party-room-member-list,.party-invite-list{flex-direction:column;gap:8px;max-height:240px;padding-right:2px;display:flex;overflow-y:auto}.party-room-member-row,.party-invite-row{background:var(--surface2);border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex}.party-invite-row input{width:16px;height:16px;accent-color:var(--blue)}.party-invite-row.disabled{opacity:.55}.party-invite-row-copy{min-width:0}.party-room-member-name{color:var(--text);font-size:14px;font-weight:700}.party-room-member-status{text-transform:uppercase;letter-spacing:.5px;border-radius:999px;margin-left:auto;padding:6px 10px;font-size:11px;font-weight:700}.party-room-member-status.status-accepted{color:#86efac;background:#22c55e24}.party-room-member-status.status-pending{color:#93c5fd;background:#3b9eff24}.party-room-member-status.status-declined,.party-room-member-status.status-left{color:#fca5a5;background:#ef44441f}.party-room-actions{flex-wrap:wrap;gap:10px;display:flex}.party-room-btn,.party-room-enter-btn{min-width:140px}.party-invite-search{margin-top:0}.exercise-checkbox.checked{background:var(--blue);border-color:var(--blue)}.exercise-name{color:var(--text);font-size:15px;font-weight:500}.exercise-category{color:var(--muted);margin-top:2px;font-size:12px}.db-per-hint-inline{opacity:.6}.info-btn{border:1.5px solid var(--blue);width:26px;height:26px;color:var(--blue);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-style:italic;font-weight:700;transition:transform .26s,background .26s,box-shadow .26s,color .26s;display:flex}.info-btn:hover{background:color-mix(in srgb, var(--blue) 14%, transparent);box-shadow:0 10px 18px #0000001f}.info-btn:active{background:color-mix(in srgb, var(--blue) 22%, transparent);transform:scale(.92)}.added-exercises{flex-direction:column;gap:8px;display:flex}.added-exercise-item{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.exercise-block{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex;position:relative}.sortable-exercise-shell{will-change:transform;opacity:1;animation:none}.exercise-block-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.exercise-block-name{color:var(--text);font-size:16px;font-weight:600}.set-controls{align-items:center;gap:10px;display:flex}.set-ctrl-btn{border:1px solid var(--border);background:var(--surface2);width:28px;height:28px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:background .32s;display:flex}.set-ctrl-btn.add{color:var(--blue);border-color:#3b9eff4d}.set-ctrl-btn:hover{background:var(--blue-dim)}.set-count{color:var(--muted);text-align:center;min-width:44px;font-size:13px}.set-row{border-radius:8px;grid-template-columns:32px 1fr 64px 64px 36px;align-items:center;gap:8px;padding:6px 0;transition:background .32s;display:grid}.set-row.done{opacity:.5}.header-row{border-bottom:1px solid var(--border);padding-bottom:8px}.header-row span{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:500}.db-per-hint{letter-spacing:.3px;text-transform:none;opacity:.6;margin-top:1px;font-size:9px;display:block}.col-set{color:var(--muted);text-align:center;font-size:13px}.col-prev{color:var(--muted);font-size:12px}.set-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);text-align:center;border-radius:8px;outline:none;width:100%;padding:6px 8px;font-size:14px;font-weight:500}.set-input:focus{border-color:var(--blue)}.set-input::placeholder{color:var(--muted);opacity:.6}.set-input::-webkit-outer-spin-button{appearance:none;margin:0}.set-input::-webkit-inner-spin-button{appearance:none;margin:0}.set-input[type=number]{appearance:textfield}.drag-handle{background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:grab;touch-action:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:6px 8px;transition:background .24s,color .24s,transform .18s;display:flex}.drag-handle:active{cursor:grabbing;background:var(--blue-dim);color:var(--blue);transform:scale(.96)}.remove-exercise-btn{color:#ef4444;cursor:pointer;z-index:1;background:#ef44441f;border:1.5px solid #ef444480;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:background .32s;display:flex;position:absolute;top:-10px;right:-10px}.remove-exercise-btn:hover{background:#ef444440}.exercise-notes-toggle{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;margin-bottom:4px;padding:5px 10px;font-size:12px;display:flex;position:relative}.exercise-notes-toggle.open{color:var(--blue);border-color:var(--blue)}.notes-dot{background:var(--blue);border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;right:-2px}.exercise-notes-input{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);resize:none;box-sizing:border-box;border-radius:10px;margin-bottom:8px;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.5}.exercise-notes-input:focus{border-color:var(--blue);outline:none}.set-row-wrapper{border-radius:8px;position:relative;overflow:hidden}.template-swipe-wrapper{border-radius:16px;position:relative}.set-row-delete-bg{background:#ef4444;border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:0;overflow:hidden}.set-row-wrapper .set-row{background:var(--bg)}.done-btn{border:1.5px solid var(--muted);width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:all .32s;display:flex}.done-btn.checked{background:var(--blue);border-color:var(--blue);color:#fff}.done-btn:disabled{opacity:.3;cursor:not-allowed}.unit-toggle{background:var(--surface2);border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.unit-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:5px 10px;font-size:12px;font-weight:500;transition:all .32s}.unit-btn.active{background:var(--blue);color:#fff}.set-input:disabled{opacity:.4;cursor:not-allowed}.picker-search{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:12px;outline:none;width:100%;padding:11px 14px;font-size:15px}.picker-search:focus{border-color:var(--blue)}.custom-exercise-form{flex-direction:column;gap:12px;display:flex}.custom-form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.custom-field{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.custom-select,.custom-number{box-sizing:border-box;width:100%}.custom-select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:12px;outline:none;padding:11px 14px;font-size:15px}.custom-select:focus{border-color:var(--blue)}.custom-muscle-group{flex-direction:column;gap:8px;display:flex}.custom-muscle-title{color:var(--text);font-size:12px;font-weight:700}.custom-muscle-chips{flex-wrap:wrap;gap:8px;display:flex}.custom-muscle-chip{border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:600;transition:background .32s,color .32s,border-color .32s}.custom-muscle-chip.active{background:var(--blue-dim);color:var(--blue);border-color:#3b9eff59}.custom-muscle-chip.secondary.active{background:#3b9eff14}.workout-end-actions{grid-template-columns:1fr 2fr;gap:10px;display:grid}.cancel-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:16px;padding:16px;font-size:15px;font-weight:500;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s}.cancel-btn:hover{background:var(--surface);border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-1px)}.finish-btn{color:#ef4444;cursor:pointer;background:#ef44441f;border:1px solid #ef444440;border-radius:16px;width:100%;padding:16px;font-size:15px;font-weight:600;transition:transform .26s,background .26s,box-shadow .26s}.finish-btn:hover{background:#ef44442e;transform:translateY(-1px);box-shadow:0 12px 22px #00000024}.confirm-overlay{z-index:100;background:#0009;align-items:flex-end;animation:.26s workout-overlay-in;display:flex;position:fixed;inset:0}.confirm-sheet{background:var(--surface);border-top:1px solid var(--border);border-radius:20px 20px 0 0;flex-direction:column;gap:8px;width:100%;padding:28px 24px 40px;animation:.4s cubic-bezier(.22,1,.36,1) workout-sheet-in;display:flex}.confirm-title{color:var(--text);font-size:18px;font-weight:700}.confirm-body{color:var(--muted);margin-bottom:8px;font-size:14px}.confirm-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;display:grid}.confirm-keep{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:12px;padding:14px;font-size:15px;font-weight:600;transition:transform .26s,background .26s,border-color .26s}.confirm-keep:hover{background:var(--border);transform:translateY(-1px)}.confirm-discard{color:#ef4444;cursor:pointer;background:#ef44441f;border:1px solid #ef44444d;border-radius:12px;padding:14px;font-size:15px;font-weight:600;transition:transform .26s,background .26s,box-shadow .26s}.confirm-discard:hover{background:#ef444433;transform:translateY(-1px)}.confirm-submit{background:var(--blue);border:1px solid color-mix(in srgb, var(--blue) 70%, white 10%);color:#07111c;cursor:pointer;border-radius:12px;padding:14px;font-size:15px;font-weight:700;transition:transform .26s,filter .26s,box-shadow .26s}.confirm-submit:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 12px 22px #00000024}.confirm-keep:disabled,.confirm-discard:disabled,.confirm-submit:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;filter:none;transform:none}.rest-time-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:4px 0 6px;display:flex}.rest-time-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;font-size:11px;font-weight:500}.rest-time-btn{background:var(--surface2);border:1px solid var(--border);color:var(--blue);cursor:pointer;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;transition:transform .26s,background .26s,border-color .26s}.rest-time-btn:hover{background:var(--blue-dim);transform:translateY(-1px)}.rest-done-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-left:auto;padding:4px 10px;font-size:13px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.rest-done-btn:hover{opacity:.92;box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.rest-wheel-panel{border-bottom:1px solid var(--border);justify-content:center;padding:10px 0 8px;display:flex}.rest-overlay{background:var(--surface);border-top:1px solid var(--border);z-index:90;border-radius:20px 20px 0 0;flex-direction:column;gap:8px;padding:16px 20px 18px;animation:.4s cubic-bezier(.22,1,.36,1) both workout-sheet-in;display:flex;position:fixed;bottom:70px;left:0;right:0;box-shadow:0 -4px 24px #0000004d}.rest-overlay-name{color:var(--muted);text-align:center;font-size:12px;font-weight:500}.rest-countdown{color:var(--blue);text-align:center;letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:44px;font-weight:700;line-height:1}.rest-progress-track{background:var(--surface2);border-radius:99px;height:4px;overflow:hidden}.rest-progress-fill{background:var(--blue);border-radius:99px;height:100%;transition:width 1s linear}.rest-overlay-actions{grid-template-columns:1fr 1.5fr 1fr;gap:8px;margin-top:4px;display:grid}.rest-step-overlay-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:12px;padding:10px;font-size:14px;font-weight:600;transition:transform .26s,background .26s,border-color .26s,color .26s}.rest-step-overlay-btn:hover{background:var(--blue-dim);color:var(--blue);transform:translateY(-1px)}.rest-skip-btn{color:#ef4444;cursor:pointer;background:#ef44441a;border:1px solid #ef444440;border-radius:12px;padding:10px;font-size:14px;font-weight:600;transition:transform .26s,background .26s,box-shadow .26s}.rest-skip-btn:hover{background:#ef444433;transform:translateY(-1px)}.new-workout-btns{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width<=520px){.custom-form-grid,.new-workout-btns{grid-template-columns:1fr}}.routine-exercise-list{flex-direction:column;gap:8px;display:flex}.routine-exercise-row{background:var(--surface);border:1px solid var(--border);border-radius:14px;align-items:center;gap:10px;padding:12px 14px;display:flex}.routine-drag-handle{color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;display:flex}.routine-drag-handle:active{cursor:grabbing}.routine-exercise-name{color:var(--text);flex:1;min-width:0;font-size:14px;font-weight:500}.routine-remove-btn{border:1px solid var(--border);width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:color .32s,border-color .32s;display:flex}.routine-remove-btn:hover{color:#ef4444;border-color:#ef444466}.template-section-label{color:var(--muted);text-transform:uppercase;letter-spacing:1px;padding:4px 2px 2px;font-size:11px;font-weight:600}.template-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.template-icon-btn{border:1px solid var(--border);width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:color .32s,border-color .32s;display:flex}.template-icon-btn:hover{color:var(--blue);border-color:#3b9eff66}.template-icon-btn-danger:hover{color:#ef4444;border-color:#ef444466}.template-list{flex-direction:column;gap:10px;max-height:calc(100dvh - 320px);padding-bottom:4px;display:flex;overflow-y:auto}.template-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.template-card:hover{border-color:color-mix(in srgb, var(--blue) 20%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.template-info{flex:1;min-width:0}.template-name{color:var(--text);margin-bottom:2px;font-size:15px;font-weight:600}.template-meta{color:var(--blue);margin-bottom:4px;font-size:12px;font-weight:500}.template-exercises{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}@keyframes workout-section-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes workout-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes workout-sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.workout-screen>*,.confirm-overlay,.confirm-sheet,.rest-overlay{animation:none}.workout-screen>*{opacity:1;transform:none}.workout-card,.workout-card-icon,.start-btn,.empty-workout-btn,.timer-bar,.action-btn,.back-btn,.add-selected-btn,.exercise-item,.battle-panel-toggle,.battle-panel-card,.battle-lobby-card,.battle-feed-item,.cancel-btn,.finish-btn,.info-btn,.confirm-keep,.confirm-discard,.confirm-submit,.rest-time-btn,.rest-done-btn,.rest-step-overlay-btn,.rest-skip-btn,.template-icon-btn,.template-card{transition:none}.picker-page-exercises .exercise-item{opacity:1;animation:none;transform:none}}.ranks-screen{flex-direction:column;gap:16px;display:flex}.ranks-screen>*{opacity:0;animation:.6s cubic-bezier(.22,1,.36,1) both ranks-section-enter;transform:translateY(10px)}.ranks-screen>:first-child{animation-delay:40ms}.ranks-screen>:nth-child(2){animation-delay:.11s}.ranks-screen>:nth-child(3){animation-delay:.18s}.ranks-screen>:nth-child(4){animation-delay:.25s}.ranks-screen>:nth-child(5){animation-delay:.32s}.ranks-header{padding:4px 0 8px}.ranks-title{color:var(--text);font-size:22px;font-weight:700}.ranks-subtitle{color:var(--muted);margin-top:3px;font-size:13px}.ranks-mode-toggle{background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:4px;width:100%;margin-top:10px;padding:3px;display:flex}.ranks-mode-btn{color:var(--muted);letter-spacing:.02em;text-align:center;cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:7px 14px;font-size:12px;font-weight:700;transition:background .22s,color .22s,transform .22s}.ranks-mode-btn:hover{color:var(--text)}.ranks-mode-btn.active{background:var(--blue-dim);color:var(--blue)}.ranks-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:14px;transition:border-color .32s,box-shadow .32s,transform .32s;overflow:hidden}.ranks-dropdown[open]{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));box-shadow:inset 0 1px #ffffff0d}.ranks-dropdown-summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;list-style:none;transition:background .26s,transform .26s;display:flex}.ranks-dropdown-summary::-webkit-details-marker{display:none}.ranks-dropdown-summary:after{content:"▾";color:var(--muted);font-size:13px;transition:transform .26s,color .26s}.ranks-dropdown[open] .ranks-dropdown-summary:after{color:var(--blue);transform:rotate(180deg)}.ranks-dropdown-summary:hover{background:color-mix(in srgb, var(--surface) 88%, white 12%)}.ranks-dropdown-label{color:var(--text);font-size:13px;font-weight:700}.ranks-dropdown-value{color:var(--muted);font-size:12px}.tier-legend{flex-wrap:wrap;gap:10px;padding:0 16px 16px;display:flex}.tier-legend-item{color:var(--muted);align-items:center;gap:4px;font-size:11px;font-weight:500;display:flex}.ranks-muscle-panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:14px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.ranks-muscle-panel:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000029}.ranks-muscle-panel-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ranks-muscle-title{color:var(--text);font-size:15px;font-weight:700}.ranks-muscle-subtitle{color:var(--muted);max-width:680px;margin-top:4px;font-size:12px;line-height:1.45}.ranks-filter-field{flex-direction:column;gap:6px;display:flex}.ranks-filter-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.ranks-select-wrap{position:relative}.ranks-select-wrap:after{content:"▾";color:var(--muted);pointer-events:none;font-size:14px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.ranks-select{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);appearance:none;border-radius:12px;outline:none;padding:11px 40px 11px 14px;font-size:14px;transition:border-color .26s,box-shadow .26s,background .26s}.ranks-select:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent)}.ranks-muscle-map-shell{background:radial-gradient(circle at top, #3b9eff14, transparent 55%), var(--surface2);border:1px solid #ffffff0d;border-radius:14px;padding:12px;position:relative;overflow:hidden}.ranks-muscle-map-shell-loading:after{content:"";background:radial-gradient(circle at 50% 18%, color-mix(in srgb, var(--blue) 14%, transparent), transparent 58%), radial-gradient(circle at 50% 82%, color-mix(in srgb, var(--blue) 10%, transparent), transparent 48%);opacity:.7;pointer-events:none;border-radius:18px;position:absolute;inset:10px}.ranks-muscle-models{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ranks-muscle-model{border:1px solid color-mix(in srgb, var(--border) 72%, white 28%);background:radial-gradient(circle at top, #3b9eff14, transparent 58%), linear-gradient(180deg, color-mix(in srgb, var(--surface) 82%, black 18%), color-mix(in srgb, var(--surface2) 88%, black 12%));border-radius:18px;padding:12px 10px 14px;transition:transform .32s,border-color .32s,box-shadow .32s;box-shadow:inset 0 1px #ffffff24,inset 0 0 0 1px #ffffff08}.ranks-muscle-model:hover{border-color:color-mix(in srgb, var(--blue) 26%, var(--border));transform:translateY(-2px);box-shadow:inset 0 1px #ffffff24,inset 0 0 0 1px #ffffff08,0 14px 28px #0000002e}.ranks-muscle-model-loading{border-color:color-mix(in srgb, var(--blue) 14%, var(--border));box-shadow:inset 0 1px 0 #ffffff24, inset 0 0 0 1px #ffffff08, 0 0 0 1px color-mix(in srgb, var(--blue) 10%, transparent)}.ranks-muscle-model-label{text-align:center;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:700}.ranks-muscle-model-stack,.ranks-muscle-model-base,.ranks-muscle-model-loader-layer{position:relative}.ranks-muscle-model-loader-layer{pointer-events:none;position:absolute;inset:0}.ranks-muscle-model-revealing .ranks-muscle-model-loader-layer{animation:.92s cubic-bezier(.22,1,.36,1) both ranks-muscle-loader-reveal;animation-delay:var(--reveal-delay,0s)}.ranks-muscle-model-loader-layer:before{content:"";background:linear-gradient(104deg, transparent 0%, transparent 28%, #ffffff05 38%, color-mix(in srgb, var(--blue) 16%, #ffffff12) 50%, #ffffff05 62%, transparent 74%, transparent 100%);pointer-events:none;position:absolute;inset:0}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer:before{animation:1.18s linear infinite ranks-muscle-glint-loop}.ranks-muscle-model-revealing .ranks-muscle-model-loader-layer:before{animation:.92s cubic-bezier(.22,1,.36,1) both ranks-muscle-glint-final;animation-delay:var(--reveal-delay,0s)}.ranks-muscle-model .rbh-wrapper{background:#0000002e;border:1px solid #ffffff0f;border-radius:14px;width:100%;padding:8px 4px;box-shadow:inset 0 0 0 1px #ffffff05}.ranks-muscle-model .rbh{filter:drop-shadow(0 10px 18px #00000038);width:100%;height:auto;display:block}.ranks-muscle-model-base .rbh polygon{transition:fill .56s cubic-bezier(.22,1,.36,1),opacity .52s,filter .52s}.ranks-muscle-model-loader-layer .rbh polygon{fill:#ffffff1f;opacity:.72}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon{opacity:.92;animation:.96s ease-in-out infinite ranks-muscle-polygon-loading;animation-delay:var(--loading-delay,0s)}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon:nth-child(6n+1){animation-delay:calc(var(--loading-delay,0s) + 0s)}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon:nth-child(6n+2){animation-delay:calc(var(--loading-delay,0s) + 90ms)}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon:nth-child(6n+3){animation-delay:calc(var(--loading-delay,0s) + .18s)}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon:nth-child(6n+4){animation-delay:calc(var(--loading-delay,0s) + .27s)}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon:nth-child(6n+5){animation-delay:calc(var(--loading-delay,0s) + .36s)}.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon:nth-child(6n){animation-delay:calc(var(--loading-delay,0s) + .45s)}.ranks-muscle-model-base .rbh polygon:hover{fill:#80c0ff!important}.ranks-muscle-active{background:var(--surface2);border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex}.ranks-muscle-active-copy{min-width:0}.ranks-muscle-active-tier{font-size:14px;font-weight:700}.ranks-muscle-active-sub{color:var(--muted);margin-top:3px;font-size:12px}.ranks-search{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:12px;outline:none;width:100%;padding:11px 14px;font-size:15px;transition:border-color .26s,box-shadow .26s,background .26s}.ranks-search:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent)}.ranks-notice{background:var(--surface);border:1px solid var(--border);color:var(--muted);text-align:center;border-radius:14px;padding:14px 16px;font-size:13px;transition:transform .32s,border-color .32s,box-shadow .32s}.ranks-notice:hover{border-color:color-mix(in srgb, var(--blue) 14%, var(--border));transform:translateY(-2px);box-shadow:0 12px 24px #00000024}.ranks-notice-success{color:#86efac;border-color:#22c55e47}.ranks-bw-prompt{background:var(--surface);border:1px solid #3b9eff4d;border-radius:16px;flex-direction:column;gap:8px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.ranks-bw-prompt:hover{transform:translateY(-2px);box-shadow:0 14px 24px #00000024}.ranks-bw-prompt-attention{animation:2.4s ease-in-out infinite ranks-bw-prompt-pulse;position:relative;overflow:hidden}.ranks-bw-prompt-attention:after{content:"";background:linear-gradient(104deg, transparent 0%, transparent 34%, #ffffff08 44%, color-mix(in srgb, var(--blue) 18%, #ffffff14) 50%, #ffffff08 56%, transparent 66%, transparent 100%);pointer-events:none;animation:2.4s linear infinite ranks-bw-prompt-glint;position:absolute;inset:0}.ranks-bw-prompt-title{color:var(--text);font-size:15px;font-weight:600}.ranks-bw-prompt-sub{color:var(--muted);font-size:13px;line-height:1.4}.ranks-bw-prompt-row{align-items:center;gap:8px;margin-top:4px;display:flex}.ranks-bw-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;flex:1;min-width:0;padding:10px 12px;font-size:15px;transition:border-color .26s,box-shadow .26s,background .26s}.ranks-bw-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent)}.ranks-bw-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ranks-bw-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ranks-bw-input[type=number]{appearance:textfield}.ranks-bw-unit{color:var(--muted);flex-shrink:0;font-size:13px;font-weight:500}.ranks-bw-save{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;padding:10px 18px;font-size:14px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.ranks-bw-save:hover{opacity:.92;box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 22%, transparent);transform:translateY(-1px)}.ranks-bw-save:disabled{opacity:.4;cursor:not-allowed}.ranks-empty{color:var(--muted);text-align:center;margin-top:60px;font-size:14px}.lift-cards{flex-direction:column;gap:10px;display:flex}.lift-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:10px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.lift-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.lift-card-top{justify-content:space-between;align-items:flex-start;display:flex}.lift-name{color:var(--text);font-size:15px;font-weight:600}.lift-category{color:var(--muted);margin-top:2px;font-size:12px}.lift-right{text-align:right}.lift-orm{color:var(--text);font-size:16px;font-weight:700}.lift-ratio{color:var(--muted);margin-top:2px;font-size:12px}.lift-tier-row{align-items:center;gap:10px;display:flex}.lift-next-label{color:var(--muted);font-size:12px}.lift-progress-track{background:var(--surface2);border-radius:99px;height:6px;overflow:hidden}.lift-progress-fill{border-radius:99px;height:100%;transition:width .4s}.lift-progress-pct{color:var(--muted);text-align:right;margin-top:-4px;font-size:11px}.lift-targets{background:var(--surface2);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.lift-targets-label{color:var(--muted);font-size:12px}.lift-target-chips{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.target-chip{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:8px 6px;transition:transform .26s,border-color .26s,background .26s;display:flex}.target-chip:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));background:color-mix(in srgb, var(--surface) 88%, white 12%);transform:translateY(-1px)}.chip-weight{width:100%;color:var(--text);text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:12px;font-weight:700;display:block;overflow:hidden}.tier-swiper{background:var(--surface2);border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.tier-swiper-header{justify-content:space-between;align-items:center;display:flex}.tier-swiper-label-wrap,.tier-swiper-body{overflow:hidden}.tier-swiper-label-wrap{flex:1;min-width:0}.tier-swiper-label{text-align:center;justify-content:center;align-items:center;gap:5px;min-height:24px;font-size:13px;font-weight:600;display:flex}.tier-swiper-you{color:var(--muted);margin-left:2px;font-size:10px;font-weight:500}.tier-swiper-arrow{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px;line-height:1;transition:transform .26s,color .26s}.tier-swiper-arrow:hover{color:var(--blue);transform:scale(1.08)}.tier-swiper-stage{width:100%}.tier-swiper-stage-next{animation:.32s cubic-bezier(.22,1,.36,1) tier-swiper-in-next}.tier-swiper-stage-prev{animation:.32s cubic-bezier(.22,1,.36,1) tier-swiper-in-prev}.tier-swiper-bw-hint{color:var(--muted);text-align:center;padding:6px 0;font-size:12px}.tier-swiper-dots{justify-content:center;gap:5px;margin-top:2px;display:flex}.tier-swiper-dot{background:var(--border);border-radius:50%;width:6px;height:6px;transition:background .4s}@keyframes tier-swiper-in-next{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0,0)}}@keyframes tier-swiper-in-prev{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0,0)}}.lift-no-bw{color:var(--muted);font-size:12px}.lift-import-btn{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;border-radius:12px;padding:11px 14px;font-size:13px;font-weight:600;transition:border-color .26s,opacity .26s,transform .26s,box-shadow .26s}.lift-import-btn:hover{border-color:var(--blue);transform:translateY(-1px);box-shadow:0 10px 20px #0000001f}.lift-import-panel{background:var(--surface2);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:12px;padding:14px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.lift-import-panel:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 24px #00000024}.lift-import-title{color:var(--text);font-size:14px;font-weight:700}.lift-import-sub{color:var(--muted);font-size:12px;line-height:1.45}.lift-import-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lift-import-field{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.lift-import-input-wrap{align-items:center;gap:8px;display:flex}.lift-import-input-wrap span{color:var(--muted);flex-shrink:0;font-size:12px}.lift-import-input{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;outline:none;min-width:0;padding:10px 12px;font-size:14px;transition:border-color .26s,box-shadow .26s,background .26s}.lift-import-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 14%, transparent)}.lift-import-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.lift-import-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lift-import-input[type=number]{appearance:textfield}.lift-import-preview,.lift-import-rank{justify-content:space-between;align-items:center;gap:10px;display:flex}.lift-import-preview span,.lift-import-ratio{color:var(--muted);font-size:12px}.lift-import-preview strong{color:var(--text);font-size:14px}.lift-import-hint{color:var(--muted);font-size:12px;line-height:1.4}.lift-import-error{color:#fca5a5;font-size:12px;line-height:1.4}.lift-import-save{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:12px 14px;font-size:13px;font-weight:700;transition:opacity .26s,transform .26s,box-shadow .26s}.lift-import-save:hover{opacity:.94;box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 22%, transparent);transform:translateY(-1px)}.lift-import-save:disabled{opacity:.45;cursor:not-allowed}@keyframes ranks-section-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ranks-bw-prompt-pulse{0%,to{border-color:color-mix(in srgb, var(--blue) 30%, transparent);box-shadow:0 0 0 0 color-mix(in srgb, var(--blue) 0%, transparent)}50%{border-color:color-mix(in srgb, var(--blue) 55%, var(--border));box-shadow:0 0 0 1px color-mix(in srgb, var(--blue) 16%, transparent), 0 14px 30px color-mix(in srgb, var(--blue) 18%, transparent)}}@keyframes ranks-bw-prompt-glint{0%{opacity:0;transform:translate(-65%)}12%{opacity:1}62%{opacity:1}to{opacity:0;transform:translate(65%)}}@keyframes ranks-muscle-polygon-loading{0%,to{fill:#ffffff1f;opacity:.68;filter:drop-shadow(0 0 0 color-mix(in srgb, var(--blue) 0%, transparent))}44%{fill:color-mix(in srgb, var(--blue) 62%, white 38%);opacity:1;filter:drop-shadow(0 0 10px color-mix(in srgb, var(--blue) 34%, transparent))}68%{fill:color-mix(in srgb, var(--blue) 38%, white 62%);opacity:.92;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--blue) 18%, transparent))}}@keyframes ranks-muscle-loader-reveal{0%{clip-path:inset(0)}to{clip-path:inset(0 0 0 100%)}}@keyframes ranks-muscle-glint-loop{0%{opacity:0;transform:translate(-62%)}12%{opacity:1}72%{opacity:1}to{opacity:0;transform:translate(62%)}}@keyframes ranks-muscle-glint-final{0%{opacity:0;transform:translate(-62%)}16%{opacity:1}84%{opacity:1}to{opacity:0;transform:translate(62%)}}@media (prefers-reduced-motion:reduce){.ranks-screen>*{opacity:1;animation:none;transform:none}.ranks-muscle-map-shell-loading:after,.ranks-muscle-model-loader-layer,.ranks-muscle-model-loader-layer:before,.ranks-muscle-model-loading .ranks-muscle-model-loader-layer .rbh polygon{animation:none}.ranks-dropdown,.ranks-dropdown-summary,.ranks-dropdown-summary:after,.ranks-muscle-panel,.ranks-select,.ranks-muscle-model,.ranks-search,.ranks-notice,.ranks-bw-prompt,.ranks-bw-prompt:after,.ranks-bw-input,.ranks-bw-save,.lift-card,.target-chip,.tier-swiper-arrow,.lift-import-btn,.lift-import-panel,.lift-import-input,.lift-import-save{transition:none}}@media (width<=520px){.ranks-muscle-panel-top{flex-direction:column}.ranks-muscle-models{gap:8px}.ranks-muscle-model{border-radius:16px;padding:10px 8px 12px}.ranks-muscle-active{flex-direction:column;align-items:flex-start}.lift-import-grid{grid-template-columns:1fr}}.nutrition-screen{flex-direction:column;gap:12px;display:flex}.nutrition-screen>*,.nut-picker-screen>*,.cf-screen>*,.bs-screen>*{opacity:0;animation:.6s cubic-bezier(.22,1,.36,1) both nutrition-section-enter;transform:translateY(10px)}.nutrition-screen>:first-child,.nut-picker-screen>:first-child,.cf-screen>:first-child,.bs-screen>:first-child{animation-delay:40ms}.nutrition-screen>:nth-child(2),.nut-picker-screen>:nth-child(2),.cf-screen>:nth-child(2),.bs-screen>:nth-child(2){animation-delay:.11s}.nutrition-screen>:nth-child(3),.nut-picker-screen>:nth-child(3),.cf-screen>:nth-child(3),.bs-screen>:nth-child(3){animation-delay:.18s}.nutrition-screen>:nth-child(4),.nut-picker-screen>:nth-child(4),.cf-screen>:nth-child(4),.bs-screen>:nth-child(4){animation-delay:.25s}.nut-date-nav{justify-content:space-between;align-items:center;padding:4px 0 8px;display:flex}.nut-date-btn{background:var(--surface);border:1px solid var(--border);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;font-size:22px;line-height:1;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s;display:flex}.nut-date-btn:hover:not(:disabled){background:var(--surface2);border-color:color-mix(in srgb, var(--blue) 20%, var(--border));transform:translateY(-1px)}.nut-date-label{color:var(--text);font-size:16px;font-weight:600}.nut-loading{color:var(--muted);text-align:center;padding:40px 0;font-size:14px}.nut-summary{background:var(--surface);border:1px solid var(--border);border-radius:20px;align-items:center;gap:20px;padding:20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.nut-summary:hover{border-color:color-mix(in srgb, var(--blue) 20%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #0000002e}.nut-ring-wrap{flex-shrink:0;width:120px;height:120px;position:relative}.nut-ring-center{flex-direction:column;justify-content:center;align-items:center;min-width:0;display:flex;position:absolute;inset:0}.nut-ring-cal{color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;max-width:84px;font-size:22px;font-weight:800;line-height:1;overflow:hidden}.nut-ring-label{color:var(--muted);margin-top:2px;font-size:11px}.nut-macros{flex-direction:column;flex:1;gap:9px;min-width:0;display:flex}.nut-macro-row{flex-direction:column;gap:4px;display:flex}.nut-macro-header{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.nut-macro-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:500;overflow:hidden}.nut-macro-val{color:var(--text);text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;max-width:58%;font-size:12px;font-weight:700;overflow:hidden}.nut-macro-goal{color:var(--muted);font-weight:400}.nut-macro-track{background:var(--surface2);border-radius:99px;height:5px;overflow:hidden}.nut-macro-fill{border-radius:99px;min-width:2px;height:100%;transition:width .4s}.nut-remaining{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.nut-meal-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;overflow:hidden}.nut-meal-section:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.nut-meal-header{justify-content:space-between;align-items:center;padding:13px 16px;display:flex}.nut-meal-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.nut-meal-icon{font-size:16px}.nut-meal-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.nut-meal-cals{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.nut-add-btn{background:var(--blue-dim);width:28px;height:28px;color:var(--blue);cursor:pointer;border:1px solid #3b9eff4d;border-radius:8px;justify-content:center;align-items:center;font-size:22px;line-height:1;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s;display:flex}.nut-add-btn:hover{background:#3b9eff38;transform:translateY(-1px);box-shadow:0 10px 18px #0000001f}.nut-food-list{border-top:1px solid var(--border)}.nut-food-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 16px;transition:background .26s;display:flex}.nut-food-item:last-child{border-bottom:none}.nut-food-item:hover{background:color-mix(in srgb, var(--surface2) 82%, white 18%)}.nut-food-info{flex:1;min-width:0}.nut-food-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.nut-food-macros{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.nut-food-right{flex-shrink:0;align-items:center;gap:8px;min-width:0;max-width:42%;display:flex}.nut-food-cals{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.nut-remove-btn{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:transform .26s,color .26s,background .26s;display:flex}.nut-remove-btn:hover{color:#ef4444;background:#ef444414;transform:scale(1.08)}.nut-meal-empty{color:var(--muted);border-top:1px solid var(--border);padding:10px 16px 13px;font-size:12px}.nut-feed-section{background:var(--surface);border:1px solid var(--border);border-radius:20px;flex-direction:column;gap:14px;padding:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.nut-feed-section:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 16px 28px #0000002e}.nut-feed-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.nut-feed-title{color:var(--text);letter-spacing:-.2px;font-size:18px;font-weight:700}.nut-feed-subtitle{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.nut-feed-add-btn{background:var(--blue);color:#fff;cursor:pointer;white-space:nowrap;height:34px;box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 24%, transparent);border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:700;transition:transform .26s,opacity .26s,box-shadow .26s;display:inline-flex}.nut-feed-add-btn:hover{opacity:.94;transform:translateY(-1px)}.nut-feed-add-btn-inline{align-self:flex-start}.nut-feed-filters{flex-wrap:wrap;gap:8px;display:flex}.nut-feed-controls{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.nut-feed-filter{background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:700;transition:transform .24s,background .24s,border-color .24s,color .24s}.nut-feed-filter:hover{color:var(--text);transform:translateY(-1px)}.nut-feed-filter.active{background:var(--blue-dim);border-color:color-mix(in srgb, var(--blue) 28%, var(--border));color:var(--blue);box-shadow:0 10px 20px color-mix(in srgb, var(--blue) 12%, transparent);animation:.42s cubic-bezier(.22,1,.36,1) nutrition-filter-pop}.nut-feed-order{flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.nut-feed-order-btn{border:1px solid var(--border);background:var(--surface2);width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:16px;font-weight:800;line-height:1;transition:transform .24s,background .24s,border-color .24s,color .24s,box-shadow .24s;display:inline-flex}.nut-feed-order-btn:hover{color:var(--text);transform:translateY(-1px)}.nut-feed-order-btn.active{background:var(--blue-dim);border-color:color-mix(in srgb, var(--blue) 28%, var(--border));color:var(--blue);box-shadow:0 10px 20px color-mix(in srgb, var(--blue) 12%, transparent);animation:.42s cubic-bezier(.22,1,.36,1) nutrition-filter-pop}.nut-feed-list{flex-direction:column;gap:12px;display:flex}.nut-feed-list-animated .nut-feed-item{opacity:0;animation:.54s cubic-bezier(.22,1,.36,1) both nutrition-feed-reorder-in;animation-delay:calc(var(--feed-index,0) * 48ms);transform:translateY(10px)scale(.985)}.nut-feed-item{grid-template-columns:18px minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.nut-feed-rail{justify-content:center;padding-top:8px;display:flex;position:relative}.nut-feed-dot{background:var(--blue);width:10px;height:10px;box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 16%, transparent);z-index:1;border-radius:999px;flex-shrink:0}.nut-feed-line{background:linear-gradient(180deg, color-mix(in srgb, var(--blue) 30%, var(--border)), var(--border));border-radius:999px;width:2px;position:absolute;top:22px;bottom:-12px}.nut-feed-card{background:color-mix(in srgb, var(--surface2) 86%, white 14%);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:12px;min-width:0;padding:13px 14px;transition:transform .26s,border-color .26s,box-shadow .26s,background .26s;display:flex}.nut-feed-card:hover{border-color:color-mix(in srgb, var(--blue) 16%, var(--border));transform:translateY(-1px);box-shadow:0 12px 22px #0000001f}.nut-feed-card-top{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.nut-feed-copy{flex:1;min-width:0}.nut-feed-food{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.nut-feed-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-top:4px;font-size:11px;overflow:hidden}.nut-feed-kcal{background:color-mix(in srgb, var(--surface) 84%, black 16%);border:1px solid var(--border);color:var(--text);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:6px 9px;font-size:11px;font-weight:700}.nut-feed-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.nut-feed-pills{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.nut-feed-pill{white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:6px 8px;font-size:11px;font-weight:700}.nut-feed-pill-protein{color:#c084fc;background:#a855f71f;border-color:#a855f73d}.nut-feed-pill-carbs{color:#fb923c;background:#f973161f;border-color:#f973163d}.nut-feed-pill-fat{color:#facc15;background:#eab3081f;border-color:#eab3083d}.nut-feed-remove-btn{color:#ef4444;cursor:pointer;white-space:nowrap;background:#ef444414;border:1px solid #ef44442e;border-radius:999px;flex-shrink:0;padding:7px 10px;font-size:11px;font-weight:700;transition:transform .24s,background .24s,border-color .24s}.nut-feed-remove-btn:hover{background:#ef44441f;border-color:#ef444442;transform:translateY(-1px)}.nut-feed-delete-confirm{flex-shrink:0;align-items:center;gap:6px;display:flex}.nut-feed-delete-confirm-text{color:var(--muted);white-space:nowrap;font-size:11px}.nut-feed-delete-cancel-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:600}.nut-feed-empty{background:color-mix(in srgb, var(--surface2) 74%, white 26%);border:1px dashed color-mix(in srgb, var(--blue) 18%, var(--border));border-radius:18px;flex-direction:column;gap:10px;padding:18px;display:flex}.nut-feed-empty-title{color:var(--text);font-size:15px;font-weight:700}.nut-feed-empty-text{color:var(--muted);font-size:12px;line-height:1.5}@media (width<=640px){.nut-feed-controls,.nut-feed-header,.nut-feed-footer{flex-direction:column;align-items:stretch}.nut-feed-order{justify-content:flex-start}.nut-feed-add-btn{width:100%}.nut-feed-kcal,.nut-feed-remove-btn{align-self:flex-start}}.nut-picker-screen{flex-direction:column;gap:12px;display:flex}.nut-picker-header{align-items:center;gap:12px;display:flex}.nut-create-food-btn{background:var(--blue-dim);width:32px;height:32px;color:var(--blue);cursor:pointer;border:1px solid #3b9eff4d;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s;display:flex}.nut-create-food-btn:hover{background:#3b9eff38;transform:translateY(-1px);box-shadow:0 10px 18px #0000001f}.nut-list-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:600}.nut-search-list{flex-direction:column;display:flex}.nut-search-item{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:12px;padding:12px 0;transition:opacity .26s,transform .26s,border-color .26s;display:flex}.nut-search-item:last-child{border-bottom:none}.nut-search-item:hover{opacity:.92;border-bottom-color:color-mix(in srgb, var(--blue) 20%, var(--border));transform:translate(3px)}.nut-search-info{flex:1;min-width:0}.nut-search-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.nut-search-brand{color:var(--blue);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:11px;overflow:hidden}.nut-search-macros{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.nut-search-serving{color:var(--muted)}.nut-search-cal{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:76px;font-size:14px;font-weight:700;overflow:hidden}.nut-search-cal span{color:var(--muted);font-size:10px;font-weight:400}.nut-empty{color:var(--muted);text-align:center;padding:40px 0;font-size:14px}.nut-detail-brand{color:var(--blue);margin-top:1px;font-size:12px}.nut-serving-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:16px 20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.nut-serving-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.nut-serving-label{color:var(--text);font-size:13px;font-weight:600}.nut-amount-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.nut-amount-toggle-btn{border:1px solid var(--border);background:var(--surface2);color:var(--muted);border-radius:12px;padding:10px 12px;font-size:13px;font-weight:700;transition:background .24s,border-color .24s,color .24s,transform .24s}.nut-amount-toggle-btn.active{background:color-mix(in srgb, var(--blue) 18%, var(--surface2));border-color:color-mix(in srgb, var(--blue) 36%, var(--border));color:var(--text)}.nut-amount-toggle-btn:active{transform:scale(.98)}.nut-serving-note{color:var(--muted);font-size:12px;font-weight:400}.nut-serving-row{align-items:stretch;gap:10px;display:flex}.nut-serving-row .rtp-btn{border-radius:12px;flex-shrink:0;width:48px;height:auto;font-size:22px}.nut-serving-input{background:var(--surface2);border:1px solid var(--border);min-width:0;color:var(--text);text-align:center;appearance:none;border-radius:12px;outline:none;flex:1;padding:10px 6px;font-size:22px;font-weight:700}.nut-serving-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.nut-serving-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nut-serving-input[type=number]{-moz-appearance:textfield}.nut-serving-input:focus{border-color:var(--blue)}.nut-preview-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;align-items:center;gap:16px;padding:20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.nut-preview-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.nut-preview-cal{color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;justify-content:center;align-items:baseline;gap:6px;min-width:0;max-width:100%;font-size:38px;font-weight:800;line-height:1;display:flex;overflow:hidden}.nut-preview-cal span{color:var(--muted);font-size:16px;font-weight:400;line-height:1}.nut-preview-macros{grid-template-columns:repeat(3,1fr);gap:16px;width:100%;display:grid}.nut-preview-macro{flex-direction:column;align-items:center;gap:3px;display:flex}.nut-preview-macro span:first-child{color:var(--mc);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:20px;font-weight:700;overflow:hidden}.nut-preview-macro span:last-child{color:var(--muted);font-size:11px;font-weight:500}.nut-micros-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px 20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s}.nut-micros-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.nut-micros-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px;font-size:11px;font-weight:600}.nut-micro-row{color:var(--text);border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:7px 0;font-size:13px;display:flex}.nut-micro-row:last-child{border-bottom:none}.nut-micro-row span:first-child{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nut-micro-row span:last-child{text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;overflow:hidden}.nut-add-to-log-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:16px;width:100%;padding:16px;font-size:16px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s}.nut-add-to-log-btn:hover:not(:disabled){opacity:.94;box-shadow:0 14px 24px color-mix(in srgb, var(--blue) 24%, transparent);transform:translateY(-1px)}.nut-add-to-log-btn:disabled{opacity:.4;cursor:not-allowed}.nut-expand-hint{color:var(--muted);align-items:center;gap:4px;margin-top:4px;font-size:11px;display:flex}.nut-expand-chevron{transition:transform .32s}.nut-expand-chevron.open{transform:rotate(180deg)}.nut-detail-wrap{grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.22,1,.36,1),opacity .32s;display:grid}.nut-detail-wrap.expanded{grid-template-rows:1fr}.nut-detail-wrap-inner{overflow:hidden}.nut-detail-card{background:var(--surface);border:1px solid var(--border);opacity:0;border-radius:20px;padding:16px 20px 20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s,opacity .32s;transform:translateY(-8px)}.nut-detail-wrap.expanded .nut-detail-card{opacity:1;transform:translateY(0)}.nut-detail-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.nut-detail-section+.nut-detail-section{margin-top:16px}.nut-detail-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;font-size:11px;font-weight:600}.nut-detail-row{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:6px 0;display:flex}.nut-detail-row:last-child{border-bottom:none}.nut-detail-row-header{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.nut-detail-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.nut-detail-val{color:var(--text);text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;max-width:58%;font-size:13px;font-weight:700;overflow:hidden}.nut-detail-goal{color:var(--muted);font-weight:400}.nut-micros-summary{background:var(--surface);border:1px solid var(--border);border-radius:16px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;overflow:hidden}.nut-micros-summary:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.nut-micros-toggle{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:13px 16px;font-size:14px;font-weight:600;transition:background .26s,transform .26s;display:flex}.nut-micros-toggle:hover{background:color-mix(in srgb, var(--surface) 88%, white 12%);transform:translateY(-1px)}.nut-micros-grid{border-top:1px solid var(--border);flex-direction:column;gap:0;padding:4px 16px 12px;display:flex}.nut-micro-item{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:8px 0;display:flex}.nut-micro-item:last-child{border-bottom:none}.nut-micro-header{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.nut-micro-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:500;overflow:hidden}.nut-micro-val{color:var(--text);text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;max-width:58%;font-size:12px;font-weight:700;overflow:hidden}.nut-micro-goal{color:var(--muted);font-weight:400}.nut-micro-track{background:var(--surface2);border-radius:99px;height:4px;overflow:hidden}.nut-micro-fill{border-radius:99px;min-width:2px;height:100%;transition:width .4s}.cf-screen{flex-direction:column;gap:12px;display:flex}.cf-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:16px 20px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.cf-section:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.cf-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px;font-size:12px;font-weight:600}.cf-section-note{color:var(--muted);text-transform:none;letter-spacing:0;font-size:11px;font-weight:400}.cf-row{gap:10px;display:flex}.cf-row .cf-field{flex:1}.cf-field{flex-direction:column;gap:5px;display:flex}.cf-label{color:var(--muted);font-size:12px;font-weight:500}.cf-required{color:#ef4444}.cf-input-wrap{align-items:center;display:flex;position:relative}.cf-input{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:10px;outline:none;padding:9px 12px;font-size:14px;transition:border-color .32s}.cf-input:focus{border-color:var(--blue)}.cf-unit{color:var(--muted);pointer-events:none;font-size:11px;position:absolute;right:10px}.cf-select{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);appearance:none;cursor:pointer;border-radius:10px;outline:none;padding:9px 12px;font-size:14px}.cf-toggle-micros{border:1px solid var(--border);color:var(--muted);cursor:pointer;text-align:left;background:0 0;border-radius:12px;padding:10px 16px;font-size:13px;font-weight:500;transition:background .26s,color .26s,transform .26s,border-color .26s}.cf-toggle-micros:hover{background:var(--surface);color:var(--text);border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-1px)}.cf-error{color:#ef4444;padding:4px 0;font-size:13px}.cf-mode-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cf-mode-toggle-btn{background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:12px;padding:12px 14px;font-size:13px;font-weight:600;transition:background .26s,color .26s,border-color .26s,transform .26s}.cf-mode-toggle-btn.active,.cf-mode-toggle-btn:hover{background:var(--blue-dim);color:var(--blue);border-color:#3b9eff57}.cf-mode-toggle-btn:hover{transform:translateY(-1px)}.nut-search-item.selected{border-bottom-color:color-mix(in srgb, var(--blue) 24%, var(--border));background:linear-gradient(#3b9eff14,#3b9eff05);border-radius:12px;padding-inline:12px}.cf-search-results{flex-direction:column;display:flex}.cf-ingredient-builder{border:1px solid color-mix(in srgb, var(--blue) 22%, var(--border));background:linear-gradient(#3b9eff1f,#3b9eff08);border-radius:16px;flex-direction:column;gap:12px;margin-top:8px;padding:16px;display:flex}.cf-ingredient-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.cf-ingredient-name{color:var(--text);font-size:15px;font-weight:700}.cf-ingredient-brand{color:var(--blue);margin-top:2px;font-size:12px}.cf-ingredient-serving{color:var(--muted);white-space:nowrap;font-size:11px}.cf-amount-toggle{gap:8px;display:flex}.cf-amount-toggle-btn{border:1px solid var(--border);min-width:0;color:var(--muted);cursor:pointer;background:#ffffff05;border-radius:999px;flex:1;padding:9px 12px;font-size:12px;font-weight:600;transition:background .26s,color .26s,border-color .26s,transform .26s}.cf-amount-toggle-btn.active,.cf-amount-toggle-btn:hover{color:var(--blue);background:#3b9eff29;border-color:#3b9eff52}.cf-amount-row{align-items:center;gap:12px;display:flex}.cf-amount-row .rtp-btn{flex-shrink:0}.cf-ingredient-preview{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.cf-ingredient-preview>div{text-align:center;color:var(--text);background:#ffffff0a;border:1px solid #ffffff0f;border-radius:12px;padding:10px 12px;font-size:12px}.cf-recipe-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.cf-summary-card{background:var(--surface2);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex}.cf-summary-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:600}.cf-summary-calories{color:var(--text);font-size:24px;font-weight:800}.cf-summary-calories span{color:var(--muted);font-size:12px;font-weight:500}.cf-summary-macros{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.cf-recipe-list{flex-direction:column;gap:10px;display:flex}.cf-recipe-item{background:var(--surface2);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.cf-recipe-item-main{min-width:0}.cf-recipe-item-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.cf-recipe-item-meta{color:var(--muted);margin-top:3px;font-size:12px}.cf-remove-btn{color:#ef4444;cursor:pointer;background:#ef444414;border:1px solid #ef44442e;border-radius:999px;flex-shrink:0;padding:8px 11px;font-size:11px;font-weight:700;transition:transform .24s,background .24s,border-color .24s}.cf-remove-btn:hover{background:#ef44441f;border-color:#ef44443d;transform:translateY(-1px)}.cf-recipe-micros{flex-direction:column;gap:8px;display:flex}.cf-recipe-micro-row{color:var(--muted);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:13px;display:flex}.cf-recipe-micro-row:last-child{border-bottom:none}@media (width<=640px){.cf-row,.cf-ingredient-header,.cf-amount-row,.cf-recipe-item{flex-direction:column;align-items:stretch}.cf-ingredient-serving,.cf-remove-btn{align-self:flex-start}.cf-ingredient-preview,.cf-recipe-summary{grid-template-columns:1fr}}.nut-goals-btn{background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;height:32px;padding:0 10px;font-size:12px;font-weight:600;transition:background .26s,color .26s,border-color .26s,transform .26s;display:flex}.nut-goals-btn.active,.nut-goals-btn:hover{background:var(--blue-dim);border-color:var(--blue);color:var(--blue)}.nut-goals-btn:hover{transform:translateY(-1px)}.nut-goals-panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:16px;padding:18px;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s;display:flex}.nut-goals-panel:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.nut-goals-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px;font-size:11px;font-weight:600}.nut-goals-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.nut-goals-field{flex-direction:column;gap:4px;display:flex}.nut-goals-label{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:500}.nut-goals-input-wrap{position:relative}.nut-goals-input{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);box-sizing:border-box;border-radius:10px;outline:none;padding:8px 34px 8px 10px;font-size:14px;transition:border-color .32s}.nut-goals-input:focus{border-color:var(--blue)}.nut-goals-unit{color:var(--muted);pointer-events:none;font-size:11px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.nut-goals-actions{grid-template-columns:1fr 2fr;gap:10px;margin-top:4px;display:grid}.nut-goals-cancel{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;padding:10px;font-size:14px;font-weight:500}.nut-goals-save{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px;font-size:14px;font-weight:600;transition:opacity .32s}.nut-goals-save:disabled{opacity:.6;cursor:not-allowed}.nut-goals-save:hover:not(:disabled){opacity:.85}.nut-ai-btn{color:#c084fc;cursor:pointer;letter-spacing:.3px;background:linear-gradient(135deg,#a855f726,#3b9eff26);border:1px solid #a855f766;border-radius:8px;align-items:center;gap:4px;height:32px;padding:0 10px;font-size:12px;font-weight:700;transition:background .32s,border-color .32s;display:flex}.nut-ai-btn:hover{background:linear-gradient(135deg,#a855f740,#3b9eff40);border-color:#a855f7b3}.ai-entry-subtitle{color:var(--muted);margin-top:1px;font-size:12px}.ai-entry-badge{color:#60a5fa;background:linear-gradient(135deg,#3b9eff1f,#22c55e1f);border:1px solid #3b9eff4d;border-radius:8px;align-items:center;gap:5px;margin-left:auto;padding:4px 8px;font-size:11px;font-weight:600;display:flex}.ai-entry-body{flex-direction:column;gap:12px;padding-top:4px;display:flex}.ai-entry-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:600}.ai-entry-textarea{background:var(--surface2);border:1px solid var(--border);width:100%;color:var(--text);resize:none;border-radius:12px;outline:none;padding:12px 14px;font-family:inherit;font-size:15px;line-height:1.5;transition:border-color .32s}.ai-entry-textarea:focus{border-color:#a855f7}.ai-entry-textarea:disabled{opacity:.6}.ai-entry-examples{flex-wrap:wrap;gap:6px;display:flex}.ai-entry-example-chip{background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:20px;padding:4px 10px;font-size:11px;transition:background .32s,color .32s,border-color .32s}.ai-entry-example-chip:hover:not(:disabled){background:var(--surface);color:var(--text);border-color:#a855f766;transform:translateY(-1px)}.ai-entry-example-chip:disabled{opacity:.4;cursor:not-allowed}.ai-entry-error{color:#ef4444;background:#ef444414;border:1px solid #ef444433;border-radius:10px;padding:10px 12px;font-size:13px}.ai-entry-analyze-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7,#3b9eff);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:15px;font-weight:600;transition:opacity .26s,transform .26s,box-shadow .26s;display:flex}.ai-entry-analyze-btn:disabled{opacity:.45;cursor:not-allowed}.ai-entry-analyze-btn:hover:not(:disabled){opacity:.94;transform:translateY(-1px);box-shadow:0 14px 24px #00000029}.ai-entry-thinking{align-items:center;gap:10px;display:flex}.ai-entry-thinking-dots{align-items:center;gap:4px;display:flex}.ai-entry-thinking-dots span{background:#ffffff4d;border-radius:50%;width:6px;height:6px;transition:background .4s}.ai-entry-thinking-dots span.lit{background:#fff}.ai-entry-disclaimer{color:var(--muted);text-align:center;padding-bottom:4px;font-size:11px}.ai-usage-row{align-items:center;gap:6px;display:flex}.ai-usage-pip{background:var(--surface2);border:1px solid var(--border);border-radius:3px;width:28px;height:6px;transition:background .4s}.ai-usage-pip.used{background:#a855f7;border-color:#a855f7}.ai-usage-label{color:var(--muted);margin-left:2px;font-size:11px}.ai-limit-card{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:10px;margin-top:8px;padding:28px 20px;transition:transform .32s,border-color .32s,box-shadow .32s;display:flex}.ai-limit-card:hover{border-color:color-mix(in srgb, var(--blue) 18%, var(--border));transform:translateY(-2px);box-shadow:0 14px 26px #00000026}.ai-limit-icon{color:var(--muted);opacity:.6}.ai-limit-title{color:var(--text);font-size:15px;font-weight:600}.ai-limit-sub{color:var(--muted);max-width:260px;font-size:13px;line-height:1.5}.ai-limit-back-btn{background:var(--surface2);border:1px solid var(--border);color:var(--blue);cursor:pointer;border-radius:12px;margin-top:6px;padding:11px 20px;font-size:14px;font-weight:600;transition:transform .26s,background .26s,border-color .26s}.ai-limit-back-btn:hover{background:var(--blue-dim);transform:translateY(-1px)}.nut-scan-banner{cursor:pointer;text-align:left;background:linear-gradient(135deg,#3b82f61f 0%,#6366f114 100%);border:1px solid #3b82f64d;border-radius:14px;align-items:center;gap:14px;width:100%;padding:13px 16px;transition:transform .26s,background .26s,border-color .26s,box-shadow .26s;display:flex}.nut-scan-banner:hover{background:linear-gradient(135deg,#3b82f62e 0%,#6366f121 100%);border-color:#3b82f680;transform:translateY(-2px);box-shadow:0 14px 24px #00000024}.nut-scan-banner-icon{color:#3b82f6;background:#3b82f626;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.nut-scan-banner-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.nut-scan-banner-title{color:var(--text);font-size:15px;font-weight:600}.nut-scan-banner-sub{color:var(--muted);font-size:12px}.nut-scan-banner-chevron{color:var(--muted);flex-shrink:0}.bs-screen{background:var(--bg);flex-direction:column;height:100%;display:flex;overflow-y:auto}.bs-header{flex-shrink:0;align-items:center;gap:12px;padding:8px 0 12px;display:flex}.bs-viewfinder{aspect-ratio:4/3;background:#000;border-radius:16px;flex-shrink:0;max-height:340px;position:relative;overflow:hidden}.bs-native-shell{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 94%, black), color-mix(in srgb, var(--surface2) 92%, black));border:1px solid color-mix(in srgb, var(--blue) 20%, var(--border));text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:26px 18px 20px;display:flex}.bs-native-icon{background:color-mix(in srgb, var(--blue) 16%, transparent);border:1px solid color-mix(in srgb, var(--blue) 26%, var(--border));width:58px;height:58px;color:var(--blue);border-radius:18px;justify-content:center;align-items:center;display:flex}.bs-native-title{color:var(--text);font-size:18px;font-weight:700}.bs-native-sub{color:var(--muted);max-width:320px;font-size:13px;line-height:1.5}.bs-native-open-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:12px;min-width:150px;padding:12px 18px;font-size:14px;font-weight:700;transition:transform .26s,opacity .26s,box-shadow .26s}.bs-native-open-btn:hover:not(:disabled){box-shadow:0 12px 22px color-mix(in srgb, var(--blue) 22%, transparent);transform:translateY(-1px)}.bs-native-open-btn:disabled{opacity:.55;cursor:not-allowed}.bs-inline-error{color:#fca5a5;max-width:320px;font-size:12px;line-height:1.45}.bs-reader{object-fit:cover;width:100%;height:100%}.bs-reader video{object-fit:cover;width:100%!important;height:100%!important}#barcode-reader__scan_region{border:none!important}#barcode-reader__dashboard{display:none!important}.bs-overlay{pointer-events:none;justify-content:center;align-items:center;animation:.32s nutrition-overlay-in;display:flex;position:absolute;inset:0}.bs-target{border:2.5px solid #3b82f6;border-radius:10px;width:280px;height:140px;animation:3s ease-in-out infinite nutrition-target-pulse;box-shadow:0 0 0 2000px #0006}.bs-hint{text-align:center;color:#ffffffd9;pointer-events:none;font-size:13px;position:absolute;bottom:14px;left:0;right:0}.bs-torch-btn{color:#fffc;cursor:pointer;z-index:10;background:#00000073;border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:flex;position:absolute;top:12px;right:12px}.bs-torch-btn.on{color:#ffd632;background:#ffdc3240;border-color:#ffdc3299}.bs-manual{flex-direction:column;gap:8px;padding:0 4px;display:flex}.bs-manual-label{color:var(--muted);font-size:12px;font-weight:500}.bs-manual-row{gap:8px;display:flex}.bs-manual-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;flex:1;padding:10px 12px;font-size:14px}.bs-manual-input:focus{border-color:var(--blue)}.bs-manual-btn{background:var(--blue);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;flex-shrink:0;padding:10px 16px;font-size:13px;font-weight:600}.bs-manual-btn:disabled{opacity:.45;cursor:default}.bs-manual-hint{color:var(--text-secondary);text-align:center;margin-top:6px;font-size:11px}.bs-center{flex:1;justify-content:center;align-items:center;gap:16px}.bs-loading-text{color:var(--muted);font-size:15px}.bs-error-msg{color:var(--muted);text-align:center;max-width:280px;font-size:15px;line-height:1.5}.bs-not-found-note{color:#f97316;background:#f973161a;border:1px solid #f9731640;border-radius:10px;margin-bottom:4px;padding:8px 12px;font-size:13px}.bs-verify-note{color:#fbbf24;background:#fbbf241a;border:1px solid #fbbf243d;border-radius:10px;margin-bottom:8px;padding:10px 12px;font-size:13px;line-height:1.45}.bs-screen .cf-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:10px;margin-bottom:10px;padding:14px 16px;display:flex}.bs-screen .cf-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:700}.bs-screen .cf-section-note{text-transform:none;letter-spacing:0;font-weight:400}.bs-screen .cf-field{justify-content:space-between;align-items:center;gap:8px;display:flex}.bs-screen .cf-label{color:var(--text);flex-shrink:0;font-size:14px}.bs-screen .cf-required{color:var(--blue)}.bs-screen .cf-input-wrap{align-items:center;gap:8px;min-width:0;display:flex;position:static}.bs-screen .cf-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);text-align:right;border-radius:8px;outline:none;width:110px;padding:6px 10px;font-size:14px}.bs-screen .cf-input:focus{border-color:var(--blue)}.bs-screen .cf-unit{color:var(--text);flex-shrink:0;font-size:13px;font-weight:500;position:static;right:auto}@keyframes nutrition-section-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes nutrition-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes nutrition-detail-row-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes nutrition-feed-reorder-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes nutrition-filter-pop{0%{transform:scale(.92)}60%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes nutrition-target-pulse{0%,to{transform:scale(1);box-shadow:0 0 0 2000px #0006}50%{transform:scale(1.012);box-shadow:0 0 0 2000px #00000075}}.nut-detail-wrap.expanded .nut-detail-section-title,.nut-detail-wrap.expanded .nut-detail-row{opacity:0;animation:.46s cubic-bezier(.22,1,.36,1) forwards nutrition-detail-row-in;animation-delay:calc(var(--detail-index,0) * 40ms);transform:translateY(8px)}@media (prefers-reduced-motion:reduce){.nutrition-screen>*,.nut-picker-screen>*,.cf-screen>*,.bs-screen>*,.bs-overlay,.bs-target{animation:none}.nutrition-screen>*,.nut-picker-screen>*,.cf-screen>*,.bs-screen>*{opacity:1;transform:none}.nut-date-btn,.nut-summary,.nut-feed-section,.nut-feed-filter,.nut-feed-order-btn,.nut-feed-card,.nut-feed-remove-btn,.nut-feed-add-btn,.nut-meal-section,.nut-add-btn,.nut-food-item,.nut-remove-btn,.nut-create-food-btn,.nut-search-item,.nut-serving-card,.nut-preview-card,.nut-micros-card,.nut-add-to-log-btn,.nut-detail-card,.nut-micros-summary,.nut-micros-toggle,.cf-section,.cf-toggle-micros,.nut-goals-btn,.nut-goals-panel,.ai-entry-analyze-btn,.ai-limit-card,.ai-limit-back-btn,.nut-scan-banner,.nut-expand-chevron,.nut-detail-wrap,.nut-detail-card{transition:none}.nut-feed-list-animated .nut-feed-item,.nut-detail-wrap.expanded .nut-detail-section-title,.nut-detail-wrap.expanded .nut-detail-row{opacity:1;animation:none;transform:none}}.ach-screen{flex-direction:column;gap:20px;padding-bottom:16px;display:flex}.ach-topbar{align-items:center;gap:14px;padding:4px 0 0;display:flex}.ach-back{background:var(--surface);border:1px solid var(--border);width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:flex}.ach-back:hover{border-color:var(--blue);color:var(--blue)}.ach-title{color:var(--text);letter-spacing:-.3px;font-size:20px;font-weight:700}.ach-sub{color:var(--muted);margin-top:2px;font-size:12px}.ach-loading{color:var(--muted);text-align:center;margin-top:60px;font-size:14px}.ach-section{flex-direction:column;gap:10px;display:flex}.ach-section-header{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.ach-section-icon{align-items:center;display:flex}.ach-section-name{flex:1}.ach-section-count{color:var(--muted);background:var(--surface2);border:1px solid var(--border);border-radius:99px;padding:2px 8px;font-size:11px}.ach-list{flex-direction:column;gap:8px;display:flex}.ach-card{background:var(--surface);border:1px solid var(--border);opacity:.5;border-radius:14px;align-items:center;gap:14px;padding:14px;display:flex}.ach-card-done{opacity:1}.ach-badge{background:var(--surface2);border:1px solid var(--border);width:40px;height:40px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ach-info{flex:1;min-width:0}.ach-name{color:var(--text);margin-bottom:2px;font-size:14px;font-weight:600}.ach-desc{color:var(--muted);font-size:12px}.ws-overlay{z-index:200;opacity:0;background:#000000b3;align-items:flex-end;transition:opacity .28s;display:flex;position:fixed;inset:0}.ws-overlay-in{opacity:1}.ws-screen{background:var(--bg);border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-height:92dvh;transition:transform .3s cubic-bezier(.34,1.2,.64,1);display:flex;overflow:hidden;transform:translateY(40px)}.ws-screen-in{transform:translateY(0)}.ws-header{background:var(--surface);border-bottom:1px solid var(--border);flex-direction:column;align-items:center;gap:8px;padding:28px 20px 20px;display:flex}.ws-check{width:56px;height:56px;color:var(--blue);opacity:0;background:#3b9eff26;border:2px solid #3b9eff80;border-radius:50%;justify-content:center;align-items:center;transition:none;display:flex;transform:scale(0)}@keyframes ws-check-pop{0%{opacity:0;transform:scale(0)}55%{opacity:1;transform:scale(1.18)}75%{transform:scale(.94)}to{opacity:1;transform:scale(1)}}.ws-check-in{animation:.5s cubic-bezier(.34,1.56,.64,1) 50ms both ws-check-pop}.ws-title{color:var(--text);letter-spacing:-.3px;font-size:18px;font-weight:700}.ws-duration{color:var(--muted);font-size:13px}.ws-stats{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:0;padding:16px 20px;display:flex}.ws-stat{flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;display:flex}.ws-stat-value{width:100%;color:var(--text);letter-spacing:-.5px;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:22px;font-weight:700;display:block;overflow:hidden}.ws-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.ws-stat-divider{background:var(--border);width:1px;height:36px}.ws-body{flex-direction:column;flex:1;gap:16px;padding:16px 16px 8px;display:flex;overflow-y:auto}.ws-section{flex-direction:column;gap:8px;display:flex}.ws-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.ws-battle-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 82%, var(--bg));border-radius:16px;flex-direction:column;gap:14px;padding:14px;display:flex}.ws-battle-card-win{background:color-mix(in srgb, #22c55e 10%, var(--surface));border-color:#22c55e73}.ws-battle-card-loss{background:color-mix(in srgb, #ef4444 10%, var(--surface));border-color:#ef444473}.ws-battle-card-tie{background:color-mix(in srgb, #f59e0b 10%, var(--surface));border-color:#f59e0b73}.ws-battle-card-waiting{border-color:color-mix(in srgb, var(--blue) 45%, transparent);background:color-mix(in srgb, var(--blue) 10%, var(--surface))}.ws-battle-head{align-items:flex-start;gap:12px;display:flex}.ws-battle-pill{letter-spacing:.8px;text-transform:uppercase;color:var(--text);background:#ffffff14;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:10px;font-weight:700}.ws-battle-title{color:var(--text);font-size:15px;font-weight:700}.ws-battle-subtitle{color:var(--muted);margin-top:3px;font-size:12px}.ws-battle-grid{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:10px;display:grid}.ws-battle-score{justify-content:center;align-items:center;gap:12px;display:flex}.ws-battle-score-item{flex-direction:column;align-items:center;gap:2px;display:flex}.ws-battle-score-item strong{color:var(--text);font-size:24px;line-height:1}.ws-battle-score-item span{color:var(--muted);font-size:11px}.ws-battle-score-sep{color:var(--muted);font-size:18px;font-weight:800}.ws-battle-side{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:14px;flex-direction:column;gap:6px;padding:12px;display:flex}.ws-battle-name{color:var(--text);font-size:14px;font-weight:700}.ws-battle-metric{color:var(--muted);font-size:12px}.ws-battle-vs{letter-spacing:1px;color:var(--muted);align-self:center;font-size:12px;font-weight:800}.ws-battle-metrics{flex-direction:column;gap:8px;display:flex}.ws-battle-metric-row{background:#ffffff0a;border-radius:12px;grid-template-columns:minmax(64px,80px) 1fr minmax(64px,80px);align-items:center;gap:10px;padding:10px 12px;display:grid}.ws-battle-metric-value{color:var(--muted);font-size:13px;font-weight:700}.ws-battle-metric-value:last-child{text-align:right}.ws-battle-metric-value.is-winner{color:var(--text)}.ws-battle-metric-center{min-width:0}.ws-battle-metric-label{color:var(--text);font-size:12px;font-weight:600}.ws-battle-metric-unit{color:var(--muted);margin-top:2px;font-size:11px}.ws-battle-note{color:var(--muted);font-size:11px;line-height:1.45}.ws-party-leaderboard{flex-direction:column;gap:8px;display:flex}.ws-party-leaderboard-row{background:#ffffff0a;border:1px solid #0000;border-radius:12px;grid-template-columns:54px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.ws-party-leaderboard-row.is-you{border-color:color-mix(in srgb, var(--blue) 45%, transparent);background:color-mix(in srgb, var(--blue) 10%, var(--surface))}.ws-party-leaderboard-place{color:var(--text);font-size:12px;font-weight:800}.ws-party-leaderboard-name{color:var(--text);flex-direction:column;gap:2px;font-size:13px;font-weight:700;display:flex}.ws-party-leaderboard-name span{color:var(--muted);font-size:11px;font-weight:600}.ws-party-leaderboard-score{color:var(--text);font-size:14px;font-weight:800}.ws-party-metrics{flex-direction:column;gap:10px;display:flex}.ws-party-metric-card{background:#ffffff0a;border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.ws-party-metric-list{flex-direction:column;gap:6px;display:flex}.ws-party-metric-row{color:var(--muted);grid-template-columns:44px 1fr auto;align-items:center;gap:10px;font-size:12px;display:grid}.ws-party-metric-row strong{color:var(--text);font-size:12px}.ws-party-metric-row.is-you{color:var(--blue)}.ws-achievements{flex-direction:column;gap:8px;display:flex}@keyframes ws-achievement-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes ws-achievement-shine{0%{background-position:-200%}to{background-position:200%}}.ws-achievement-card{opacity:0;background:#eab30814;border:1px solid #eab30859;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex;position:relative;overflow:hidden}.ws-achievement-in{animation:ws-achievement-in .35s ease both var(--delay)}.ws-achievement-in:after{content:"";animation:ws-achievement-shine .9s ease calc(var(--delay) + .3s) both;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#eab30826 50%,#0000 100%) 0 0/200% 100%;position:absolute;inset:0}.ws-achievement-badge{color:#eab308;background:#eab30826;border:1px solid #eab30866;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.ws-achievement-info{flex:1;min-width:0}.ws-achievement-title{color:#eab308;font-size:14px;font-weight:600}.ws-achievement-desc{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12px;overflow:hidden}.ws-rankups{flex-direction:column;gap:8px;display:flex}@keyframes ws-rankup-slide{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes ws-rankup-glow{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--tier-color) 0%, transparent)}50%{box-shadow:0 0 18px 2px color-mix(in srgb, var(--tier-color) 35%, transparent)}}.ws-rankup-card{background:color-mix(in srgb, var(--tier-color) 8%, var(--surface));border:1px solid color-mix(in srgb, var(--tier-color) 40%, transparent);opacity:0;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.ws-rankup-in{animation:ws-rankup-slide .35s ease both var(--delay), ws-rankup-glow 1.4s ease .5s both}.ws-rankup-arrow{background:color-mix(in srgb, var(--tier-color) 15%, transparent);width:32px;height:32px;color:var(--tier-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ws-rankup-info{flex:1;min-width:0}.ws-rankup-exercise{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.ws-rankup-from{color:var(--muted);margin-top:1px;font-size:12px}.ws-rankup-new{color:var(--tier-color);flex-shrink:0;font-size:13px;font-weight:700}.ws-exercises{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.ws-exercise-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:11px 14px;display:flex}.ws-exercise-row:last-child{border-bottom:none}.ws-exercise-name{color:var(--text);font-size:14px;font-weight:500}.ws-exercise-meta{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.ws-exercise-top{color:var(--blue);font-weight:600}.ws-done-btn{margin:12px 16px;margin-bottom:max(16px, env(safe-area-inset-bottom));background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:14px;flex-shrink:0;padding:14px;font-size:16px;font-weight:600;transition:opacity .15s}.ws-done-btn:active{opacity:.8}.ex-detail{flex-direction:column;gap:14px;padding-bottom:32px;animation:.6s cubic-bezier(.22,1,.36,1) ex-detail-in;display:flex}.ex-detail>*{opacity:0;animation:.58s cubic-bezier(.22,1,.36,1) both ex-detail-section-in;transform:translateY(10px)}.ex-detail>:first-child{animation-delay:30ms}.ex-detail>:nth-child(2){animation-delay:90ms}.ex-detail>:nth-child(3){animation-delay:.15s}.ex-detail>:nth-child(4){animation-delay:.21s}.ex-detail>:nth-child(5){animation-delay:.27s}.ex-detail>:nth-child(6){animation-delay:.33s}.ex-detail>:nth-child(7){animation-delay:.39s}.ex-detail>:nth-child(8){animation-delay:.45s}.ex-detail>:nth-child(9){animation-delay:.51s}.ex-detail>:nth-child(10){animation-delay:.57s}@keyframes ex-detail-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0,0)}}@keyframes ex-detail-section-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ex-detail-header{align-items:center;gap:12px;padding:2px 0 6px;display:flex}.ex-back-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.ex-detail-name{color:var(--text);font-size:18px;font-weight:700;line-height:1.2}.ex-detail-meta{color:var(--muted);margin-top:2px;font-size:12px}.ex-loading{justify-content:center;padding:60px 0;display:flex}.ex-db-hint{color:#ca9b00;background:#eab3081f;border:1px solid #eab30859;border-radius:12px;align-items:center;gap:7px;padding:10px 14px;font-size:13px;display:flex}.ex-db-hint svg{opacity:.85;flex-shrink:0}.ex-stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.ex-stat{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:14px;padding:14px 12px}.ex-stat-value{color:var(--blue);font-size:16px;font-weight:700}.ex-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:3px;font-size:10px}.ex-no-data{background:var(--surface);border:1px solid var(--border);color:var(--muted);text-align:center;border-radius:14px;padding:18px;font-size:13px}.ex-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.ex-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.ex-best-set{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.ex-best-weight{color:var(--text);font-size:22px;font-weight:700}.ex-best-sep{color:var(--muted);font-size:16px}.ex-best-reps{color:var(--text);font-size:18px;font-weight:600}.ex-best-orm{color:var(--muted);font-size:12px}.ex-rank-card{flex-direction:column;gap:10px;display:flex}.ex-rank-top{justify-content:space-between;align-items:center;display:flex}.ex-rank-ratio{color:var(--muted);font-size:13px}.tier-badge{letter-spacing:.3px;border-radius:20px;align-items:center;gap:5px;padding:3px 10px 3px 5px;font-size:12px;font-weight:600;display:inline-flex}.ex-progress-track{background:var(--surface2);border-radius:99px;height:6px;overflow:hidden}.ex-progress-fill{border-radius:99px;height:100%;transition:width .4s}.ex-progress-row{align-items:center;gap:8px;display:flex}.ex-progress-pct{color:var(--muted);font-size:11px}.ex-next-label{color:var(--muted);font-size:12px}.ex-rank-targets{background:var(--surface2);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.ex-targets-label{color:var(--muted);font-size:12px}.ex-target-chips{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.ex-target-chip{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;display:flex}.chip-reps{color:var(--muted);font-size:10px;font-weight:500}.chip-weight{color:var(--text);font-size:11px;font-weight:700}.ex-section-header{justify-content:space-between;align-items:center;display:flex}.ex-period-toggle{background:var(--surface2);border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.ex-period-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:5px 9px;font-size:11px;font-weight:600;transition:all .32s}.ex-period-btn.active{background:var(--blue);color:#fff}.ex-chart-wrap{padding:4px 0}.chart-empty{color:var(--muted);text-align:center;padding:24px 0;font-size:13px}.ex-muscle-legend{flex-direction:column;gap:6px;display:flex}.ex-muscle-row{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.ex-muscle-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ex-muscle-dot.primary{background:#3b9eff}.ex-muscle-dot.secondary{background:#3b9eff66;border:1px solid #3b9eff}.ex-rank-unranked{opacity:.8}.ex-unranked-hint{color:var(--muted);margin-top:8px;font-size:13px}.ex-tier-table{flex-direction:column;gap:3px;display:flex}.ex-tier-table-header,.ex-tier-row{border:1px solid #0000;border-radius:8px;grid-template-columns:1fr repeat(4,1fr);align-items:center;gap:4px;padding:6px 8px;display:grid}.ex-tier-table-header{border-bottom:1px solid var(--border);border-radius:0;margin-bottom:2px;padding-bottom:4px}.ex-tier-table-header span{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600}.ex-tier-col-tier{color:var(--muted);align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.ex-tier-col-rep{color:var(--text);text-align:right;font-size:11px;font-weight:600}.ex-tier-row{background:var(--surface2)}.ex-tier-row-current{background:var(--surface);border-color:var(--border)}.ex-muscle-tooltip{text-align:center;color:var(--blue);background:color-mix(in srgb, var(--surface2) 76%, white 24%);border:1px solid color-mix(in srgb, var(--blue) 14%, var(--border));border-radius:999px;width:fit-content;max-width:100%;margin:8px auto 0;padding:6px 12px;font-size:13px;font-weight:600;animation:.32s toast-in}.ex-muscle-models{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.ex-muscle-model{border:1px solid color-mix(in srgb, var(--border) 72%, white 28%);background:radial-gradient(circle at top, #3b9eff14, transparent 58%), linear-gradient(180deg, color-mix(in srgb, var(--surface) 82%, black 18%), color-mix(in srgb, var(--surface2) 88%, black 12%));border-radius:18px;padding:12px 10px 14px;box-shadow:inset 0 1px #ffffff24,inset 0 0 0 1px #ffffff08}.ex-muscle-model-label{text-align:center;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:700}.ex-muscle-model .rbh-wrapper{background:#0000002e;border:1px solid #ffffff0f;border-radius:14px;width:100%;padding:8px 4px;box-shadow:inset 0 0 0 1px #ffffff05}.ex-muscle-model .rbh{filter:drop-shadow(0 10px 18px #00000038);width:100%;height:auto;display:block}.ex-muscle-model .rbh polygon{transition:fill .32s}.ex-muscle-model .rbh polygon:hover{fill:#76bbff!important}@media (width<=520px){.ex-muscle-models{gap:8px}.ex-muscle-model{border-radius:16px;padding:10px 8px 12px}}@media (prefers-reduced-motion:reduce){.ex-detail,.ex-detail>*,.ex-muscle-tooltip{animation:none}.ex-detail>*{opacity:1;transform:none}}
/*$vite$:1*/