@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_3d9c7ff2-module__6cOLqa__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_3d9c7ff2-module__6cOLqa__variable{--font-inter:"Inter","Inter Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fafafa;--surface:#f1f0ee;--card:#fff;--ink:#1f1f1c;--muted:#7a756f;--accent:#3fb08d;--accent-soft:#e1f3ed;--metric-duration-fg:#5d7cff;--metric-duration-bg:#5d7cff29;--metric-duration-chart:#5d7cff;--metric-distance-fg:#4aa3ff;--metric-distance-bg:#4aa3ff29;--metric-distance-chart:#4aa3ff;--metric-calories-fg:#f29c52;--metric-calories-bg:#f29c5229;--metric-calories-chart:#f29c52;--metric-heart-fg:#ef6b6b;--metric-heart-bg:#ef6b6b29;--metric-heart-chart:#ef6b6b;--metric-heart-chart-muted:#ef6b6b8c;--metric-pace-fg:#8a6cff;--metric-pace-bg:#8a6cff29;--metric-pace-chart:#8a6cff;--metric-volume-fg:#3fb08d;--metric-volume-bg:#3fb08d29;--metric-volume-chart:#3fb08d;--metric-streak-fg:#f3c15a;--metric-streak-bg:#f3c15a2e;--metric-streak-chart:#f3c15a;--border:#e8e6e2;--nav:#fafafaeb;--shadow:0 10px 24px #1f1f1c14;--shadow-soft:0 6px 16px #1f1f1c0f;--chart-grid:#ebe7e2;--chart-grid-soft:#f2eeea;--chart-bar-primary:#9fc7bb;--chart-bar-secondary:#7fae9f}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15181c;--surface:#1c2026;--card:#232830;--ink:#f3f5f7;--muted:#aab0ba;--accent:#5bbf9d;--accent-soft:#243b35;--metric-duration-fg:#7b95ff;--metric-duration-bg:#7b95ff2e;--metric-duration-chart:#7b95ff;--metric-distance-fg:#6ab4ff;--metric-distance-bg:#6ab4ff2e;--metric-distance-chart:#6ab4ff;--metric-calories-fg:#f3a965;--metric-calories-bg:#f3a9652e;--metric-calories-chart:#f3a965;--metric-heart-fg:#f07b7b;--metric-heart-bg:#f07b7b2e;--metric-heart-chart:#f07b7b;--metric-heart-chart-muted:#f07b7b8c;--metric-pace-fg:#a18cff;--metric-pace-bg:#a18cff2e;--metric-pace-chart:#a18cff;--metric-volume-fg:#5bbf9d;--metric-volume-bg:#5bbf9d2e;--metric-volume-chart:#5bbf9d;--metric-streak-fg:#f5c56a;--metric-streak-bg:#f5c56a33;--metric-streak-chart:#f5c56a;--border:#2c323a;--nav:#15181ceb;--shadow:0 14px 30px #00000059;--shadow-soft:0 6px 18px #00000040;--chart-grid:#2a2f36;--chart-grid-soft:#242931;--chart-bar-primary:#6b72c6;--chart-bar-secondary:#5b5aa6}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font-inter),"Inter",system-ui,-apple-system,sans-serif;margin:0;font-size:16.5px;line-height:1.5}a{color:inherit;text-decoration:none}main{padding:30px 16px 78px}@media (min-width:769px){main{padding:40px 32px 80px}}.container{max-width:1120px;margin:0 auto}.nav{border-bottom:1px solid var(--border);background:var(--nav);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 16px;display:flex;position:sticky;top:0}.nav-brand{flex:1;justify-content:space-between;align-items:center;min-width:200px;display:flex}.nav-hamburger{cursor:pointer;color:var(--ink);background:0 0;border:none;flex-direction:column;gap:4px;padding:8px;display:none}.nav-hamburger span{background:currentColor;border-radius:2px;width:22px;height:2px;transition:all .3s;display:block}.nav-links{color:var(--muted);gap:14px;font-size:.95rem;display:flex}.nav-actions{align-items:center;gap:10px;display:flex}.nav a.active{color:var(--ink);font-weight:600}@media (max-width:768px){.nav{flex-wrap:wrap;position:relative}.nav-brand{flex:none;width:100%}.nav-hamburger{display:flex}.nav-links{border-top:1px solid var(--border);flex-direction:column;gap:0;width:100%;padding:8px 0;display:none}.nav-links a{border-bottom:1px solid var(--border);padding:12px 8px}.nav-links a:last-child{border-bottom:none}.nav-links--open{display:flex}.nav-actions{border-top:1px solid var(--border);flex-direction:column;gap:8px;width:100%;padding:12px 0;display:none}.nav-actions button{width:100%}.nav-actions--open{display:flex}}.grid{gap:20px;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-soft);border-radius:12px;padding:18px;transition:transform .12s,box-shadow .12s}.card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.card h3{color:var(--muted);margin:0 0 10px;font-size:.95rem;font-weight:500}.page-title{margin:0 0 6px;font-size:1.8rem;font-weight:600}.page-subtitle{color:var(--muted);margin:0 0 24px}.hero-action{z-index:8;background:var(--bg);gap:12px;padding:16px 0 12px;display:grid;position:sticky;top:70px}.hero-question{font-size:1.2rem;font-weight:600}.hero-subtitle{color:var(--muted);margin-top:2px;font-size:.9rem}.hero-buttons{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.hero-cta{gap:6px;display:grid}.hero-helper{color:var(--muted);font-size:.85rem;display:none}.micro-row{flex-wrap:wrap;gap:8px;display:flex}.micro-chip{background:var(--surface);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:.8rem}.goal-progress{background:var(--surface);border-radius:12px;gap:8px;padding:12px 14px;display:grid}.goal-progress-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.goal-progress-text{color:var(--fg);font-size:.95rem;font-weight:600}.goal-progress-bar{background:var(--card);border-radius:999px;height:8px;overflow:hidden}.goal-progress-fill{background:linear-gradient(90deg,var(--accent),var(--metric-streak-fg));border-radius:999px;height:100%;transition:width .3s}.goal-focus-row{align-items:center;gap:10px;display:flex}.goal-status{color:var(--muted);font-size:.85rem}.goal-status--ahead{color:var(--metric-volume-fg)}.goal-status--on_track{color:var(--metric-duration-fg)}.goal-status--behind{color:var(--metric-streak-fg)}.kpi-card{gap:6px;display:grid}@media (min-width:769px){.today-card--weight.kpi-card{gap:4px}}.kpi-label{color:var(--muted);font-size:.85rem;line-height:1.2}@media (min-width:769px){.today-card--weight .kpi-label{font-size:.75rem}}.metric-value{align-items:baseline;gap:6px;display:flex}.metric-number{letter-spacing:-.02em;font-size:2.4rem;font-weight:600;line-height:1.1}@media (min-width:769px){.today-card--weight .metric-number{font-size:1.8rem}}.metric-unit{color:var(--muted);font-size:1rem;line-height:1.2}@media (min-width:769px){.today-card--weight .metric-unit{font-size:.85rem}}.kpi-meta{color:var(--muted);opacity:.7;font-size:.78rem}.weight-trend-text{color:var(--muted);opacity:.7;margin-top:4px;font-size:.82rem}.weight-trend-text--weight-up{color:var(--metric-heart-fg);opacity:.7}.weight-trend-text--weight-down{color:var(--metric-volume-fg);opacity:.7}.kpi-row{flex-wrap:wrap;gap:6px;display:flex}.weight-card--clickable{cursor:pointer;transition:transform .12s,box-shadow .12s}.weight-card--clickable:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.weight-header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.weight-header-actions{align-items:center;gap:8px;display:inline-flex}.weight-delta{color:var(--muted);font-size:.85rem;line-height:1.2}.weight-delta.weight-up{color:var(--metric-heart-fg)}.weight-delta.weight-down{color:var(--metric-volume-fg)}.weight-log-button{border:1px solid var(--border);width:44px;height:44px;color:var(--muted);cursor:pointer;background:#ffffff08;border-radius:999px;justify-content:center;align-items:center;font-size:1rem;line-height:1;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.weight-log-button:hover,.weight-log-button:focus-visible{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.weight-log-button:active{transform:scale(.96)}.weight-add-button{border:1.5px solid var(--border);width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:1.25rem;font-weight:400;line-height:1;transition:color .2s,border-color .2s,background .2s,transform .12s;display:inline-flex}.weight-add-button:hover,.weight-add-button:focus-visible{color:#10b981;background:#10b9811a;border-color:#10b981}.weight-add-button:active{transform:scale(.94)}.status-row{color:var(--muted);letter-spacing:.01em;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:6px;font-size:.95rem;display:flex}.status-row .metric-volume,.status-row .metric-streak,.status-row .metric-duration{font-weight:600}.status-sep{color:var(--muted);opacity:.4}.section-title{margin:0 0 10px;font-size:1.15rem;font-weight:600}.form{gap:14px;display:grid}.field{gap:6px;display:grid}.field label{color:var(--muted);font-size:.9rem}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--card);color:var(--ink);border-radius:10px;padding:10px 12px}textarea{resize:vertical;min-height:100px}button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 16px;font-weight:600;transition:transform .12s,box-shadow .12s,opacity .12s}button.secondary{background:var(--surface);color:var(--ink);border:1px solid var(--border)}button.ghost{color:var(--muted);background:0 0;border:1px solid #0000}button.ghost:hover{color:var(--ink)}button:disabled{opacity:.6;cursor:not-allowed}button:active{transform:translateY(1px)}.notice{background:var(--accent-soft);color:var(--accent);border-radius:10px;padding:12px 14px;font-size:.95rem}.form-error{color:#f2b8b8;background:#b2464633;border-radius:10px;padding:10px 12px;font-size:.9rem}.field-hint{color:var(--muted);font-size:.8rem;font-weight:400}.autocomplete-suggestions{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);z-index:100;border-radius:8px;max-height:200px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.autocomplete-item{text-align:left;width:100%;color:var(--fg);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:10px 12px;font-size:.95rem;display:flex}.autocomplete-item:hover{background:var(--surface)}.autocomplete-item:not(:last-child){border-bottom:1px solid var(--border)}.autocomplete-name{font-weight:500}.autocomplete-meta{color:var(--muted);font-size:.8rem}.toast-container{z-index:1000;flex-direction:column;gap:8px;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:12px 16px;animation:.2s toast-slide-up;display:flex}.toast--info{border-left:3px solid var(--accent)}.toast--success{border-left:3px solid #4ade80}.toast-icon{flex-shrink:0;font-size:1rem}.toast--info .toast-icon{color:var(--accent)}.toast--success .toast-icon{color:#4ade80}.toast-message{color:var(--fg);font-size:.9rem}@keyframes toast-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.protein-value{margin:8px 0;font-size:1.8rem;font-weight:700}.protein-current{color:var(--fg)}.protein-goal{color:var(--muted);font-size:1.2rem;font-weight:500}.protein-progress-bar{background:var(--surface);border-radius:4px;height:8px;margin:8px 0 4px;overflow:hidden}.protein-progress-fill{background:linear-gradient(90deg,var(--accent),#a78bfa);border-radius:4px;height:100%;transition:width .3s}.protein-progress-label{color:var(--muted);text-align:right;font-size:.85rem}.protein-no-goal{color:var(--muted);margin-top:8px;font-size:.9rem;line-height:1.4}.protein-entries-list{flex-direction:column;gap:24px;width:100%;max-width:100%;margin-top:16px;display:flex}.protein-meal-group{flex-direction:column;gap:12px;display:flex}.protein-meal-group-header{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;padding:0 4px;font-size:.85rem;font-weight:600}.protein-entry-row{background:var(--surface);box-sizing:border-box;border-radius:10px;flex-direction:column;gap:12px;width:100%;max-width:100%;padding:16px;display:flex}.protein-entry-meal-type{color:var(--accent);background:var(--accent-soft);white-space:nowrap;border-radius:6px;align-self:flex-start;padding:4px 10px;font-size:.8rem;font-weight:500}.protein-entry-view{flex-direction:column;gap:6px;display:flex}.protein-entry-name{color:var(--ink);font-size:1rem;font-weight:500}.protein-entry-details{color:var(--muted);gap:8px;font-size:.9rem;display:flex}.protein-entry-protein{color:var(--accent);font-weight:500}.protein-entry-edit-form{flex-direction:column;gap:16px;width:100%;display:flex}.protein-entry-edit-form>.field{flex-direction:column;gap:8px;display:flex}.protein-entry-edit-form>.field label{color:var(--muted);font-size:.85rem;font-weight:500}.protein-entry-edit-form>.field input,.protein-entry-edit-form>.field select{border:1px solid var(--border);background:var(--card);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:.95rem;transition:all .15s}.protein-entry-edit-form>.field input:focus,.protein-entry-edit-form>.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.protein-entry-edit-form .delete-entry-btn{align-self:flex-start;margin-top:4px}@media (min-width:769px){.protein-entry-edit-form{grid-template-columns:1fr 1fr;gap:16px 12px;display:grid}.protein-entry-edit-form>.field:first-child{grid-column:1/2}.protein-entry-edit-form>.field:nth-child(2){grid-column:2/3}.protein-entry-edit-form>.field:nth-child(3){grid-column:1/2}.protein-entry-edit-form>.field:nth-child(4){grid-column:2/3}.protein-entry-edit-form .delete-entry-btn{grid-column:1/-1}}.delete-entry-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;height:38px;padding:8px;transition:all .15s;display:flex}.delete-entry-btn:hover{background:var(--surface);color:#ef4444}.protein-add-form,.protein-add-rows{flex-direction:column;gap:16px;width:100%;max-width:100%;display:flex}.protein-add-row-container{flex-direction:column;gap:8px;width:100%;max-width:100%;display:flex}.protein-add-row{background:var(--surface);border-radius:10px;flex-direction:column;gap:12px;padding:16px;display:flex}.protein-dont-save-checkbox{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding-left:4px;font-size:.85rem;display:flex}.protein-dont-save-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px;margin:0}.protein-dont-save-checkbox:hover{color:var(--ink)}.protein-dont-save-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.protein-add-row-fields{flex-direction:column;gap:16px;width:100%;display:flex}.protein-add-row-fields .field{flex-direction:column;gap:8px;display:flex}.protein-add-row-fields .field label{color:var(--muted);font-size:.85rem;font-weight:500}.protein-add-row-fields .field input,.protein-add-row-fields .field select{border:1px solid var(--border);background:var(--card);color:var(--ink);box-sizing:border-box;border-radius:8px;width:100%;padding:10px 12px;font-size:.95rem;transition:all .15s}.protein-add-row-fields .field input:focus,.protein-add-row-fields .field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}@media (min-width:769px){.protein-add-row{flex-direction:row;align-items:flex-start}.protein-add-row-fields{flex:1;grid-template-columns:1fr 1fr;gap:16px 12px;display:grid}.protein-add-row-fields .field:first-child{grid-column:1/2}.protein-add-row-fields .field:nth-child(2){grid-column:2/3}.protein-add-row-fields .field:nth-child(3){grid-column:1/2}.protein-add-row-fields .field:nth-child(4){grid-column:2/3}.protein-add-row-remove{margin-top:28px}}.protein-add-row-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;padding:8px;transition:all .15s;display:flex}.protein-add-row-remove:hover:not(:disabled){background:var(--surface);color:#ef4444}.protein-add-row-remove:disabled{opacity:.5;cursor:not-allowed}.protein-add-more-btn{background:var(--surface);border:1px dashed var(--border);color:var(--muted);cursor:pointer;border-radius:8px;padding:10px 16px;font-size:.9rem;transition:all .15s}.protein-add-more-btn:hover:not(:disabled){background:var(--card);color:var(--ink);border-color:var(--accent)}.protein-add-more-btn:disabled{opacity:.5;cursor:not-allowed}.protein-add-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.secondary-btn{background:var(--surface);color:var(--ink)}.secondary-btn:hover:not(:disabled){background:var(--border)}.protein-modal-overlay{z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.protein-modal{background:var(--card);border-radius:16px;flex-direction:column;width:100%;max-width:640px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.protein-modal-container{flex-direction:column;height:100%;display:flex;overflow:hidden}.protein-modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:24px 24px 16px;display:flex}.protein-modal-header-content{flex:1}.protein-modal-title{color:var(--ink);margin:0;font-size:1.5rem;font-weight:700}.protein-modal-subtitle{color:var(--muted);margin:4px 0 0;font-size:.875rem}.protein-modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;margin-left:12px;padding:4px;transition:all .15s}.protein-modal-close:hover{background:var(--surface);color:var(--ink)}.protein-modal-nav{background:var(--surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.protein-modal-nav-btn{background:var(--card);border:1px solid var(--border);color:var(--ink);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:8px;transition:all .15s;display:flex}.protein-modal-nav-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.protein-modal-nav-btn:disabled{opacity:.3;cursor:not-allowed}.protein-modal-date{text-align:center;color:var(--ink);flex:1;font-size:1rem;font-weight:600}.protein-modal-progress{background:linear-gradient(135deg,var(--accent-soft)0%,var(--surface)100%);border:1px solid var(--border);border-radius:12px;flex-shrink:0;margin:20px 24px;padding:24px}.protein-modal-stats{justify-content:center;align-items:baseline;gap:8px;margin-bottom:16px;display:flex}.protein-modal-current{color:var(--ink);font-size:2.5rem;font-weight:700;line-height:1}.protein-modal-goal{color:var(--muted);font-size:1.125rem;font-weight:500}.protein-modal-progress-container{align-items:center;gap:12px;display:flex}.protein-modal-progress-bar{background:var(--surface);border-radius:4px;flex:1;height:8px;overflow:hidden}.protein-modal-progress-fill{background:linear-gradient(90deg,var(--accent),#a78bfa);border-radius:4px;height:100%;transition:width .3s}.protein-modal-percentage{color:var(--accent);text-align:right;min-width:45px;font-size:.875rem;font-weight:600}.protein-modal-content{flex:1;min-height:0;padding:0 24px 24px;overflow-y:auto}.protein-modal-actions{gap:12px;margin-bottom:20px;display:flex}.protein-modal-btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:1rem;font-weight:500;transition:all .15s;display:flex}.protein-modal-btn-primary:hover{opacity:.9;transform:translateY(-1px)}.protein-modal-btn-secondary{background:var(--surface);color:var(--ink);border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:12px 20px;font-size:1rem;font-weight:500;transition:all .15s;display:flex}.protein-modal-btn-secondary:hover{background:var(--border);border-color:var(--accent);color:var(--accent)}.protein-modal-btn-done{background:var(--surface);color:var(--ink);border:1px solid var(--border);cursor:pointer;border-radius:10px;flex:1;padding:12px 20px;font-size:1rem;font-weight:500;transition:all .15s}.protein-modal-btn-done:hover{background:var(--accent);border-color:var(--accent);color:#fff}.protein-modal-section{margin-bottom:20px}.protein-modal-section-header{margin-bottom:16px}.protein-modal-section-title{color:var(--ink);margin:0;font-size:1.125rem;font-weight:600}.protein-modal-loading{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.protein-modal-spinner{border:3px solid var(--surface);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin-bottom:16px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:640px){.protein-modal-overlay{align-items:flex-end;padding:0}.protein-modal{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:100%;max-height:95vh}.protein-modal-header{padding:20px 16px 12px}.protein-modal-title{font-size:1.25rem}.protein-modal-nav{padding:12px 16px}.protein-modal-progress{margin:16px;padding:20px}.protein-modal-current{font-size:2rem}.protein-modal-content{padding:0 16px 16px}.protein-modal-actions{flex-direction:column;gap:8px}.protein-modal-btn-secondary{width:100%}}.profile-tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:4px;margin-top:24px;display:flex;overflow-x:auto}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:12px 20px 10px;font-size:.95rem;font-weight:500;transition:all .15s;position:relative}.profile-tab:hover{color:var(--ink)}.profile-tab.active{color:var(--accent)}.profile-tab.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.profile-info{flex-direction:column;gap:12px;display:flex}.profile-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.profile-row:last-child{border-bottom:none}.profile-label{color:var(--muted);font-size:.9rem}.profile-value{color:var(--fg);font-size:.95rem;font-weight:500}.settings-form{margin-top:16px}.field-help{color:var(--muted);margin-top:6px;font-size:.8rem;display:block}.settings-computed{background:var(--surface);border-radius:10px;flex-direction:column;gap:4px;margin-top:16px;padding:14px;display:flex}.settings-computed-label{color:var(--muted);font-size:.85rem}.settings-computed-value{color:var(--fg);font-size:1.4rem;font-weight:700}.settings-computed-note{color:var(--muted);font-size:.8rem}.settings-info{color:var(--muted);margin-top:16px;font-size:.85rem;line-height:1.5}.saved-foods-list{flex-direction:column;gap:12px;margin-top:16px;display:flex}.saved-food-item{background:var(--surface);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;display:flex}.saved-food-item.editing{background:var(--card);border:2px solid var(--accent-soft)}.saved-food-info{flex-direction:column;flex:1;gap:6px;display:flex}.saved-food-name{color:var(--ink);font-size:.95rem;font-weight:500}.saved-food-details{flex-wrap:wrap;gap:12px;display:flex}.saved-food-stat{color:var(--muted);font-size:.85rem}.saved-food-delete{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:8px;transition:all .15s;display:flex}.saved-food-delete:hover{background:var(--surface);color:#ef4444}.saved-food-actions{flex-shrink:0;gap:8px;display:flex}.saved-food-edit,.saved-food-save,.saved-food-cancel{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:8px;transition:all .15s;display:flex}.saved-food-edit:hover,.saved-food-save:hover:not(:disabled){background:var(--surface);color:var(--accent)}.saved-food-cancel:hover:not(:disabled){background:var(--surface);color:#ef4444}.saved-food-save:disabled,.saved-food-cancel:disabled{opacity:.5;cursor:not-allowed}.saved-food-edit-form{flex-direction:column;flex:1;gap:12px;display:flex}.saved-food-edit-fields{flex-direction:column;gap:12px;display:flex}@media (min-width:769px){.saved-food-edit-fields{grid-template-columns:2fr 1fr 1fr;gap:12px;display:grid}}.quick-add-food-form{background:var(--surface);border:2px dashed var(--border);border-radius:10px;margin-top:16px;margin-bottom:24px;padding:16px}.quick-add-fields{flex-direction:column;gap:14px;display:flex}@media (min-width:769px){.quick-add-fields{grid-template-columns:2fr 1fr 1fr;gap:12px;display:grid}}.chart-wrap{width:100%;height:220px}.chart-hero{width:100%;height:380px}.chart-subtitle{color:var(--muted);opacity:.85;margin:0 0 12px;font-size:.85rem;animation:.18s fade-up}.chart-empty{height:100%;color:var(--muted);place-items:center;font-size:.95rem;display:grid}.split{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.surface{background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:16px;padding:20px}.surface-grid{gap:20px;display:grid}.surface-item{background:var(--card);box-shadow:var(--shadow-soft);border:1px solid var(--border);border-radius:12px;padding:16px}.recent-list{gap:10px;display:grid}.accordion-list{gap:12px;display:grid}.accordion-row{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-soft);border-radius:12px;overflow:hidden}.accordion-summary{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.accordion-summary:hover{box-shadow:var(--shadow)}.accordion-left{gap:4px;min-width:0;display:grid}.accordion-title{color:var(--ink)}.accordion-subtype{color:var(--muted);font-weight:600}.accordion-date{color:var(--muted);opacity:.8;font-size:.85rem}.accordion-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.accordion-caret{color:var(--muted);font-size:1.2rem;line-height:1}.accordion-details{border-top:1px solid var(--border);opacity:0;gap:10px;max-height:0;transition:max-height .22s,opacity .2s;display:grid;overflow:hidden}.accordion-row.is-open .accordion-details{opacity:1;max-height:1200px}.accordion-inset{background:var(--surface);border-radius:10px;margin:12px 14px 14px;padding:12px 14px 14px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.detail-block{gap:4px;display:grid}.detail-label{color:var(--muted);font-size:.82rem}.detail-list{gap:8px;display:grid}.detail-exercise strong{font-weight:600}.detail-sets{color:var(--muted);gap:2px;margin-top:4px;font-size:.85rem;display:grid}.detail-actions{justify-content:flex-end;margin-top:10px;display:flex}@media (max-width:768px){.detail-grid{grid-template-columns:1fr}.accordion-inset{margin:10px 12px 12px}}.filter-row{justify-content:flex-end;display:flex}.search-row{align-items:center;gap:8px;display:flex}.search-panel{margin:12px 0 16px}.search-input-wrapper{flex:1;position:relative}.search-icon{color:var(--muted);font-size:.95rem;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input{width:100%;min-height:42px;padding-left:36px}.icon-button{border:1px solid var(--border);background:var(--surface);width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:10px;place-items:center;padding:0;font-weight:600;line-height:1;display:grid}.icon-button:hover{color:var(--ink)}.filters-panel{gap:12px;margin-top:12px;display:grid}.filter-select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23aab0ba' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}.pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.pagination-controls{gap:8px;display:flex}.pagination-size select{margin-left:8px}.recent-item{background:var(--card);box-shadow:var(--shadow-soft);cursor:pointer;border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;transition:transform .12s,box-shadow .12s;animation:.18s fade-up;display:flex}.recent-item:hover{box-shadow:var(--shadow);background:var(--surface);transform:translateY(-1px)}.recent-item:active{box-shadow:var(--shadow-soft);transform:translateY(0)}.recent-left{align-items:center;gap:12px;display:flex}.recent-right{text-align:right}.recent-duration{font-weight:600}.recent-icon{background:var(--surface);width:36px;height:36px;color:var(--muted);border-radius:12px;place-items:center;font-weight:600;display:grid}.recent-icon.run{color:var(--metric-duration-fg)}.recent-icon.strength{color:var(--metric-volume-fg)}.recent-item strong{font-weight:600}.recent-meta{color:var(--muted);font-size:.82rem}.recent-title{align-items:baseline;gap:4px;display:flex}.recent-subtype{font-weight:600}.recent-date{color:var(--muted);opacity:.8;font-weight:400}.pill{background:var(--surface);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:.82rem;font-weight:600}.pill--duration{background:var(--metric-duration-bg);color:var(--metric-duration-fg)}.pill--calories{background:var(--metric-calories-bg);color:var(--metric-calories-fg)}.pill--heart{background:var(--metric-heart-bg);color:var(--metric-heart-fg)}.pill--pace{background:var(--metric-pace-bg);color:var(--metric-pace-fg)}.pill--volume{background:var(--metric-volume-bg);color:var(--metric-volume-fg)}.pill--streak{background:var(--metric-streak-bg);color:var(--metric-streak-fg)}.pill-row{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-top:16px;display:grid}@media (min-width:900px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.stats-card{padding:16px}.stats-card__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.stats-card__header h3{margin:0;font-size:1rem}.stats-card__header p{color:var(--muted);margin:4px 0 0;font-size:.85rem}.stats-card__desc{color:var(--muted);margin-top:6px;font-size:.8rem}.stats-chart{height:240px}.stats-chart--modal{height:420px}.highlight-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.highlight-card{background:var(--surface);box-shadow:var(--shadow-soft);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.highlight-card--clickable{cursor:pointer;transition:border-color .2s,box-shadow .2s}.highlight-card--clickable:hover,.highlight-card--clickable:focus-visible{border-color:var(--accent);box-shadow:var(--shadow)}.highlight-title{color:var(--muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.highlight-emoji{color:currentColor;text-shadow:0 0 10px}.highlight-value{color:var(--ink);margin-top:6px;font-size:1.45rem;font-weight:600}.metric-duration{color:var(--metric-duration-fg)}.metric-calories{color:var(--metric-calories-fg)}.metric-heart{color:var(--metric-heart-fg)}.metric-pace{color:var(--metric-pace-fg)}.metric-volume{color:var(--metric-volume-fg)}.metric-streak{color:var(--metric-streak-fg)}.highlight-value--empty{color:var(--muted);font-weight:500}.highlight-meta{color:var(--muted);margin-top:4px;font-size:.8rem}@media (min-width:768px){.hero-helper{display:block}}.sheet-overlay{z-index:20;background:#0c0b0a73;justify-content:center;align-items:flex-end;padding:16px;animation:.16s overlay-fade;display:flex;position:fixed;inset:0}.sheet{background:var(--card);width:100%;max-width:520px;box-shadow:var(--shadow);border-radius:16px 16px 0 0;max-height:90vh;padding:16px;animation:.18s sheet-slide;overflow:auto}.sheet-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.sheet-header h3{margin:0;font-size:1rem;font-weight:600}.sheet-body{gap:12px;display:grid}.sheet-actions{margin-top:16px}.segmented{background:var(--surface);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:8px;display:grid}.segmented.type-toggle{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented button{color:var(--muted);background:0 0;border:none;border-radius:10px;padding:8px 6px;font-weight:500}.segmented.type-toggle button{height:46px;font-size:.95rem}.segmented button.active{background:var(--card);color:var(--accent);box-shadow:var(--shadow-soft)}.exercise{background:var(--surface);border-radius:12px;gap:10px;padding:12px;display:grid}.exercise-header{align-items:center;gap:10px;display:flex}.exercise-header input{flex:1}.sets{gap:8px;display:grid}.exercise .set-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.set-row button{padding:8px 10px}.tiny{color:var(--muted);font-size:.8rem}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes sheet-slide{0%{opacity:.7;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{z-index:30;background:#080706a6;justify-content:center;align-items:center;padding:16px;animation:.16s overlay-fade;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-overlay--sheet{padding:12px 12px calc(12px + env(safe-area-inset-bottom));align-items:flex-end}@media (min-width:768px){.modal-overlay--sheet{align-items:center}}.modal-overlay--card{align-items:center}.sheet-modal{background:var(--card);width:calc(100% - 32px);max-width:720px;box-shadow:var(--shadow);box-sizing:border-box;border-radius:18px;flex-direction:column;max-height:90vh;display:flex;overflow:hidden}.sheet-modal__header{border-bottom:1px solid var(--border);background:var(--card);z-index:2;justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;padding:16px;display:flex;position:sticky;top:0}.sheet-modal__header h3{margin:0;font-size:1.1rem}.sheet-modal__header p{color:var(--muted);margin:4px 0 0;font-size:.9rem}.sheet-modal__body{flex:1;gap:12px;min-width:0;min-height:0;padding:16px;display:grid;overflow-y:auto}.sheet-modal__footer{border-top:1px solid var(--border);background:var(--card);z-index:2;padding:12px 16px 14px;padding-bottom:calc(14px + env(safe-area-inset-bottom));min-width:0;position:sticky;bottom:0}.sheet-modal__footer button{width:100%}.sheet-modal .field{gap:6px}.sheet-modal .field label{margin:0;line-height:1.1}.sheet-modal input,.sheet-modal select,.sheet-modal textarea{min-height:40px;padding:8px 10px}.sheet-modal button.ghost{padding:6px 10px;font-size:.9rem}.sheet-modal .segmented--compact{background:0 0;border-radius:0;gap:6px;padding:0}.sheet-modal .segmented--compact button{border:1px solid var(--border);background:var(--surface);height:36px;color:var(--muted);border-radius:10px;padding:8px 12px;font-size:.9rem}.sheet-modal .segmented--compact button.active{background:var(--card);color:var(--accent);border-color:var(--accent);box-shadow:none}.sheet-modal .segmented--compact.type-toggle button{height:36px;font-size:.9rem}.sheet-modal .segmented--compact.segmented--wrap{flex-wrap:wrap;display:flex}@media (max-width:768px){.sheet-modal input,.sheet-modal select,.sheet-modal textarea{min-height:44px}.sheet-modal .segmented--compact button,.sheet-modal .segmented--compact.type-toggle button{height:40px}}@media (min-width:640px){.sheet-modal__header,.sheet-modal__body{padding:20px}.sheet-modal__footer{padding:14px 20px 16px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}}@media (min-width:1024px){.sheet-modal__header,.sheet-modal__body{padding:24px}.sheet-modal__footer{padding:16px 24px 18px;padding-bottom:calc(18px + env(safe-area-inset-bottom))}}.card-modal{background:var(--card);width:100%;max-width:560px;box-shadow:var(--shadow);box-sizing:border-box;border-radius:18px;flex-direction:column;max-height:calc(100dvh - 32px);padding:18px;display:flex;overflow:hidden}.card-modal__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;margin-bottom:12px;padding-bottom:12px;display:flex}.card-modal__header h3{margin:0;font-size:1.05rem}.card-modal__header p{color:var(--muted);margin:4px 0 0;font-size:.9rem}.card-modal__body{flex:1;gap:12px;min-width:0;display:grid;overflow-y:auto}.card-modal__footer{justify-content:space-between;gap:10px;min-width:0;margin-top:16px;display:flex}.card-modal__footer-actions button{width:auto}@media (max-width:768px){.sheet-modal{border-radius:16px 16px 0 0;height:auto;max-height:92dvh}.card-modal{border-radius:16px}}@media (min-width:768px){main{padding:32px 24px 80px}.nav{padding:20px 24px}}.today-header{margin-bottom:8px;padding:6px 0}.today-header__date{color:var(--muted);text-transform:capitalize;font-size:.8rem}.today-protein-bar{background:linear-gradient(135deg,var(--accent-soft),var(--card)72%);border:1px solid #5bbf9d33;border-radius:10px;margin-bottom:12px;padding:8px 12px}.today-protein-bar--complete{background:linear-gradient(135deg,#5bbf9d14 0%,var(--card)100%);border-color:#5bbf9d80}.today-protein-bar--near{border-color:#5bbf9d4d}.today-protein-bar__content{align-items:center;gap:16px;display:flex}.today-protein-bar__values{flex-shrink:0;align-items:baseline;gap:6px;display:flex}.today-protein-bar__current{color:var(--accent);font-size:1.25rem;font-weight:700;line-height:1}.today-protein-bar__separator{color:var(--muted);font-size:1rem}.today-protein-bar__goal{color:var(--muted);font-size:.85rem;font-weight:500}.today-protein-bar__progress{background:var(--surface);border-radius:3px;flex:1;height:4px;overflow:hidden}.today-protein-bar__progress-fill{background:linear-gradient(90deg,var(--accent),#5bbf9d);border-radius:3px;height:100%;transition:width .3s}.today-protein-bar__progress-fill--complete{background:linear-gradient(90deg,#5bbf9d,#4da88a)}.today-protein-bar__percentage{color:var(--accent);text-align:right;opacity:.7;flex-shrink:0;min-width:40px;font-size:.75rem;font-weight:600}.today-protein-bar__percentage--complete{color:#5bbf9d}.today-main-grid{grid-template-columns:1fr;gap:10px;display:grid}@media (min-width:769px){.today-main-grid{grid-template-columns:1fr 1.6fr;align-items:start;gap:12px}}.today-left-column{flex-direction:column;gap:10px;display:flex}.today-right-column{flex-direction:column;display:flex}@media (min-width:769px){.today-right-column{height:100%}.today-right-column .today-card--workout{flex:1;min-height:0}}.today-card{background:linear-gradient(135deg,var(--accent-soft),var(--card)72%);box-shadow:var(--shadow-soft);border:1px solid #5bbf9d14;border-radius:16px;flex-direction:column;gap:12px;padding:20px 22px 18px;display:flex}@media (min-width:769px){.today-card{gap:8px;padding:14px 16px}}@media (max-width:768px){.today-card{gap:10px;padding:14px 16px}}.today-card--loading{min-height:120px;color:var(--muted);justify-content:center;align-items:center}.today-card__spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}.today-card__header{justify-content:space-between;align-items:center;display:flex}.today-card__title{color:var(--ink);margin:0;font-size:1.1rem;font-weight:600}.today-card__action-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.today-card__action-btn:hover{opacity:.9;transform:translateY(-1px)}.today-card__action-btn--secondary{color:var(--muted);background:0 0;border:1px solid #ffffff14}.today-card__action-btn--ghost{color:var(--muted);background:0 0;border:1px solid #ffffff14;padding:5px 10px;font-size:.78rem}.today-card__action-btn--secondary:hover{background:var(--border);border-color:var(--accent);color:var(--accent)}.today-card__view-all{color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:none;margin-top:8px;padding:10px;font-size:.9rem;font-weight:500;transition:all .15s}.today-card__view-all:hover{opacity:.7}.today-card--protein{background:var(--card);border:1px solid #5bbf9d33;transition:all .3s}.today-card__title--hero{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.today-card--protein-complete{background:linear-gradient(135deg,#5bbf9d33 0%,var(--card)100%);border-color:#5bbf9d80;box-shadow:0 6px 20px #5bbf9d40}.today-card--protein-near{border-color:#5bbf9d4d;box-shadow:0 4px 16px #5bbf9d26}.today-card--protein-under{border-color:#0000}.today-protein__stats{flex-direction:column;gap:16px;display:flex}@media (min-width:769px){.today-protein__stats{gap:6px}}@media (max-width:768px){.today-protein__stats{gap:8px}}.today-protein__main{align-items:baseline;gap:8px;display:flex}.today-protein__current{color:var(--accent);font-size:1.7rem;font-weight:700;line-height:1}@media (min-width:769px){.today-protein__current{font-size:1.8rem}}.today-protein__separator{color:var(--muted);font-size:1rem;font-weight:300}.today-protein__goal{color:var(--muted);font-size:1rem;font-weight:500}.today-protein__progress-container{align-items:center;gap:12px;display:flex}.today-protein__progress-bar{background:var(--surface);border-radius:6px;flex:1;height:8px;overflow:hidden}@media (min-width:769px){.today-protein__progress-bar{border-radius:3px;height:5px}}@media (max-width:768px){.today-protein__progress-bar{height:6px}}.today-protein__progress-fill{background:linear-gradient(90deg,var(--accent),#5bbf9d);border-radius:6px;height:100%;transition:width .3s}.today-protein__progress-bar--complete .today-protein__progress-fill{background:linear-gradient(90deg,#5bbf9d,#4da88a)}.today-protein__progress-bar--near .today-protein__progress-fill{background:linear-gradient(90deg,var(--accent),#5bbf9d)}.today-protein__progress-bar--under .today-protein__progress-fill{background:linear-gradient(90deg,var(--accent),var(--accent))}.today-protein__percentage{color:var(--accent);text-align:right;opacity:.75;min-width:45px;font-size:.85rem;font-weight:600}@media (min-width:769px){.today-protein__percentage{min-width:35px;font-size:.7rem}}@media (max-width:768px){.today-protein__percentage{font-size:.85rem}}.today-protein__percentage--complete{color:#5bbf9d}.today-protein__percentage--near{color:var(--accent)}.today-protein__percentage--under{color:var(--muted)}.today-protein__meta{color:var(--muted);margin:0;font-size:.9rem}@media (min-width:769px){.today-protein__meta{font-size:.75rem}}.today-card--weight{min-height:auto}@media (min-width:769px){.today-card--workout{border:1px solid #ffffff0a}}.today-weight__content{flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px 0;display:flex}.today-weight__main{align-items:center;gap:12px;display:flex}.today-weight__value{color:var(--ink);font-size:2.6rem;font-weight:700;line-height:1}.today-weight__delta{border-radius:8px;padding:6px 12px;font-size:1.1rem;font-weight:600;line-height:1}.today-weight__delta--up{color:var(--metric-calories-fg);background:var(--metric-calories-bg)}.today-weight__delta--down{color:var(--accent);background:var(--accent-soft)}.today-weight__notes{color:var(--muted);background:var(--surface);border-radius:8px;margin:0;padding:10px;font-size:.9rem}.today-weight__empty{flex-direction:column;align-items:center;gap:12px;padding:24px 16px;display:flex}.today-weight__empty-text{color:var(--muted);margin:0;font-size:.95rem}.today-weight__empty-cta{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:all .15s}.today-weight__empty-cta:hover{opacity:.9;transform:translateY(-1px)}.today-workout__content{flex-direction:column;gap:16px;display:flex}@media (min-width:769px){.today-workout__content{gap:10px}}.today-workout__header{align-items:center;gap:12px;display:flex}.today-card--completed{background:linear-gradient(135deg,var(--accent-soft),var(--card)55%);box-shadow:var(--shadow);border:1px solid #5bbf9d33}.today-workout__subtitle{color:var(--muted);opacity:.7;margin:6px 0 0;font-size:.78rem}.today-workout__hero{gap:12px;display:grid}.today-workout__pills{background:#ffffff05;border:1px solid #ffffff0a;border-radius:999px;gap:6px;width:fit-content;padding:4px 6px}.today-workout__pill{filter:saturate(.8);align-items:center;height:24px;font-size:.75rem;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff0d,0 4px 10px #0000001a}.today-workout__pill--primary{font-weight:700;box-shadow:inset 0 0 0 1px #ffffff0f,0 6px 14px #00000024}.today-workout__context{color:var(--metric-volume-fg);opacity:.6;font-size:.76rem}.today-workout__exercises{gap:6px;display:grid}.today-workout__exercise{color:var(--fg);border-bottom:1px solid #ffffff0a;padding:6px 2px;font-size:.82rem;line-height:1.5}.today-workout__exercise:last-child{border-bottom:none}.today-workout__exercise-name{font-weight:600}.today-workout__exercise-detail{color:var(--muted);opacity:.8;font-weight:500}.today-workout__more{color:var(--muted);opacity:.7;padding-left:2px;font-size:.78rem}.today-workout__actions{grid-template-columns:1fr;gap:8px;margin-top:4px;display:grid}.today-workout__details-btn{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:1px solid #5bbf9d40;border-radius:10px;padding:8px 12px;font-size:.85rem;font-weight:600;transition:all .15s}.today-workout__details-btn:hover{opacity:.85}.today-workout__badge{width:36px;height:36px;color:var(--accent);letter-spacing:.02em;background:linear-gradient(140deg,#5bbf9d33,#5bbf9d0d);border:1px solid #5bbf9d59;border-radius:12px;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:inline-flex}.today-workout__info{flex-direction:column;flex:1;gap:2px;display:flex}.today-workout__name{color:var(--ink);margin:0;font-size:1.1rem;font-weight:600}.today-workout__category{color:var(--muted);margin:0;font-size:.85rem}.today-workout__stats{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;display:grid}.today-workout__stat{background:var(--surface);border-radius:8px;flex-direction:column;gap:4px;padding:10px;display:flex}.today-workout__stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.3px;font-size:.8rem}.today-workout__stat-value{color:var(--ink);font-size:1.1rem;font-weight:600}.today-workout__primary-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px 20px;font-size:.95rem;font-weight:600;transition:all .15s}@media (min-width:769px){.today-workout__primary-btn{padding:10px 16px;font-size:.9rem}}.today-workout__primary-btn:hover{opacity:.9;transform:translateY(-1px)}.today-workout__secondary-btn{background:var(--surface);color:var(--ink);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:12px 20px;font-size:.9rem;font-weight:500;transition:all .15s}@media (min-width:769px){.today-workout__secondary-btn{padding:10px 16px;font-size:.85rem}}.today-workout__secondary-btn:hover{border-color:var(--accent);color:var(--accent)}.today-workout__empty{flex-direction:column;align-items:center;gap:12px;padding:24px 16px;display:flex}.today-workout__empty-text{color:var(--muted);margin:0;font-size:.95rem}.today-workout__empty-cta{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:all .15s}.today-workout__empty-cta:hover{opacity:.9;transform:translateY(-1px)}.today-meals-container{flex-direction:column;gap:12px;display:flex}.today-meals-group{flex-direction:column;gap:6px;display:flex}.today-meals-group__title{letter-spacing:.4px;color:var(--muted);text-transform:uppercase;opacity:.7;font-size:.62rem;font-weight:600}.today-meals-group__separator{background:#ffffff0d;height:1px;margin-bottom:4px}.today-meals-group__items{flex-direction:column;gap:4px;display:flex}.today-meals-item{justify-content:space-between;align-items:baseline;gap:12px;font-size:.8rem;line-height:1.45;display:flex}.today-meals-item__name{color:var(--fg);opacity:.85;flex:1}.today-meals-item__protein{color:var(--accent);opacity:.85;flex-shrink:0;font-weight:600}.today-meals-container__empty{background:0 0;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:24px 16px;display:flex}.today-meals-container__empty-text{color:var(--muted);opacity:.8;margin:0;font-size:.85rem}.today-meals-container__empty-cta{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:10px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .15s}.today-meals-container__empty-cta:hover{opacity:.8}.template-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;transition:all .15s}.template-card:hover{border-color:var(--accent-soft);box-shadow:var(--shadow-soft)}.template-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:12px;display:flex}.template-card-title{color:var(--fg);margin:0 0 4px;font-size:1.1rem;font-weight:600}.template-card-meta{color:var(--muted);margin:0;font-size:.85rem}.template-card-actions{gap:8px;display:flex}.template-card-exercises{flex-direction:column;gap:8px;display:flex}.template-exercise-row{background:var(--surface);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;font-size:.9rem;display:flex}.exercise-number{color:var(--muted);min-width:24px;font-weight:600}.exercise-name{color:var(--fg);flex:1}.exercise-details{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.template-more{text-align:center;color:var(--muted);padding:8px;font-size:.85rem;font-style:italic}.templates-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.templates-add-btn{padding:8px 16px;font-size:.9rem}.templates-filter{margin-bottom:16px}.templates-empty{text-align:center;padding:40px 20px}.templates-empty h3{margin-bottom:8px;font-size:1.1rem}.templates-empty p{color:var(--muted);margin:0}.templates-list{flex-direction:column;gap:8px;display:flex}.template-row{background:var(--card);border:1px solid var(--border);border-radius:10px;position:relative}.template-row-summary{align-items:center;gap:8px;padding:0 12px 0 0;display:flex}.template-row-toggle{text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:14px 8px 14px 16px;display:flex}.template-row:not(.is-expanded) .template-row-toggle:hover{background:var(--surface)}.template-row-info{flex-direction:column;gap:2px;min-width:0;display:flex}.template-row-name{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.template-row-meta{color:var(--muted);font-size:.82rem}.template-row-caret{color:var(--muted);align-items:center;transition:transform .18s;display:flex}.template-row-caret.is-open{transform:rotate(180deg)}.template-menu-wrapper{z-index:10;position:relative}.template-menu-btn{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;padding:0;display:grid}.template-menu-btn:hover{background:var(--surface);color:var(--ink)}.template-menu-backdrop{z-index:90;position:fixed;inset:0}.template-menu{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);z-index:100;border-radius:10px;min-width:140px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden}.template-menu button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;padding:10px 14px;font-size:.9rem;display:block}.template-menu button:hover{background:var(--surface)}.template-menu button.destructive{color:#dc3545}.template-menu button.destructive:hover{background:#dc35451a}.template-row-details{opacity:0;max-height:0;transition:max-height .2s,opacity .18s;overflow:hidden}.template-row.is-expanded .template-row-details{opacity:1;max-height:600px}.template-exercises{flex-direction:column;gap:6px;padding:0 16px 16px;display:flex}.template-exercise{background:var(--surface);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:.88rem;display:flex}.template-exercise-num{color:var(--muted);min-width:20px;font-weight:600}.template-exercise-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.template-exercise-detail{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}.exercise-search-wrapper{width:100%;position:relative}.search-loading{color:var(--muted);font-size:1.2rem;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.search-add-button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:1.2rem;font-weight:600;line-height:1;transition:all .15s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.search-add-button:hover{opacity:.9;transform:translateY(-50%)scale(1.05)}.search-add-button:active{transform:translateY(-50%)scale(.95)}.exercise-search-results{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);z-index:100;border-radius:10px;max-height:400px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.exercise-search-error{color:var(--muted);text-align:center;padding:16px;font-size:.9rem}.exercise-search-empty{color:var(--muted);text-align:center;padding:24px;font-size:.9rem}.exercise-search-list{flex-direction:column;display:flex}.exercise-search-item{border:none;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;padding:12px 16px;transition:background .15s}.exercise-search-item:last-child{border-bottom:none}.exercise-search-item:hover{background:var(--surface)}.exercise-search-item-main{align-items:center;gap:8px;margin-bottom:4px;display:flex}.exercise-search-item-name{color:var(--fg);font-size:.95rem;font-weight:500}.exercise-search-item-english{color:var(--muted);font-size:.85rem;font-style:italic}.exercise-search-item-meta{flex-wrap:wrap;gap:6px;display:flex}.exercise-search-badge{background:var(--accent-soft);color:var(--accent);text-transform:capitalize;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:clamp(12px,2.5vw,24px);display:flex;position:fixed;inset:0}.modal-content{background:var(--card);border-radius:16px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;display:flex;box-shadow:0 20px 60px #0000004d}.modal-large{max-width:900px;min-height:70vh}.template-modal{flex-direction:column;width:94vw;max-width:none;height:94vh;max-height:none;display:flex;overflow:hidden}.template-modal-header{z-index:2;background:var(--card);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 20px;display:flex;position:sticky;top:0}.template-modal-header h2{margin:0;font-size:1.1rem;font-weight:600}.template-modal-header .modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.template-modal-header .modal-close:hover{color:var(--ink)}.template-modal-scroll{overscroll-behavior:contain;flex-direction:column;height:100%;min-height:0;display:flex;overflow-y:auto}.template-modal-body{flex-direction:column;gap:12px;min-height:0;display:flex}.template-meta-section{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 20px;display:flex}.template-name-input{background:var(--card);border:1px solid var(--border);color:var(--ink);border-radius:8px;flex:1;padding:10px 12px;font-size:.95rem}.template-name-input:focus{border-color:var(--accent);outline:none}.template-name-input::placeholder{color:var(--muted)}.template-category-toggle{background:var(--card);border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.template-category-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:10px 16px;font-size:.9rem;transition:all .15s}.template-category-toggle button:disabled{cursor:not-allowed;opacity:.6}.template-category-toggle button.active{background:var(--accent);color:#fff}.template-category-toggle button:not(.active):not(:disabled):hover{background:var(--surface)}.template-exercise-zone{flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px 20px;display:flex}.template-empty-exercises{text-align:center;color:var(--muted);padding:32px 16px}.template-empty-exercises p{margin:0}.template-exercise-list{flex-direction:column;gap:6px;display:flex}.exercise-row{background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.exercise-row.is-expanded{border-color:var(--accent)}.exercise-row-header{align-items:center;gap:4px;display:flex}.exercise-row-drag{color:var(--muted);cursor:grab;background:0 0;border:none;align-items:center;padding:10px 8px 10px 12px;display:flex}.exercise-row-drag:active{cursor:grabbing}.exercise-row-main{cursor:pointer;text-align:left;color:var(--ink);background:0 0;border:none;flex:1;align-items:center;gap:8px;min-width:0;padding:10px 4px;display:flex}.exercise-row-main:hover{background:var(--surface)}.exercise-row-num{color:var(--muted);min-width:20px;font-size:.85rem;font-weight:600}.exercise-row-name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.exercise-row-summary{color:var(--muted);flex-shrink:0;margin-left:auto;font-size:.85rem}.exercise-row-chevron{color:var(--muted);align-items:center;margin-left:4px;transition:transform .15s;display:flex}.exercise-row-chevron.is-open{transform:rotate(180deg)}.exercise-row-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:10px 12px 10px 8px;display:flex}.exercise-row-remove:hover{color:#ef4444}.exercise-editor{border-top:1px solid var(--border);background:var(--surface);padding:12px 16px 16px}.exercise-editor-fields{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.exercise-editor-fields--cardio{grid-template-columns:repeat(2,1fr)}.editor-field{flex-direction:column;gap:4px;display:flex}.editor-field label{color:var(--muted);font-size:.8rem;font-weight:500}.editor-field input{background:var(--card);border:1px solid var(--border);color:var(--ink);border-radius:6px;padding:8px 10px;font-size:.9rem}.editor-field input:focus{border-color:var(--accent);outline:none}.exercise-editor-advanced{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.exercise-editor-advanced summary{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;font-size:.85rem}.exercise-editor-advanced summary:hover{color:var(--ink)}.exercise-editor-advanced-content{gap:10px;margin-top:10px;display:grid}.template-add-section{margin-top:auto;padding-top:8px}.template-add-btn{background:var(--surface);border:1px dashed var(--border);width:100%;color:var(--muted);cursor:pointer;border-radius:10px;padding:12px;font-size:.9rem;transition:all .15s}.template-add-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.template-add-input{flex-direction:column;gap:8px;display:flex}.template-add-cancel{color:var(--muted);cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:4px 8px;font-size:.85rem}.template-add-cancel:hover{color:var(--ink)}.template-error{color:#ef4444;background:#ef44441a;padding:10px 20px;font-size:.9rem}.template-modal-footer{z-index:2;background:var(--card);border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex;position:sticky;bottom:0}.template-modal-footer .ghost{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:10px 16px}.template-modal-footer .ghost:hover{color:var(--ink)}.template-modal-footer .ghost:disabled{opacity:.5;cursor:not-allowed}@media (max-width:500px){.template-meta-section{flex-direction:column;gap:10px}.template-category-toggle{width:100%}.template-category-toggle button{flex:1}.exercise-editor-fields{grid-template-columns:repeat(2,1fr)}.exercise-row-summary{display:none}}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.modal-header h2{margin:0;font-size:1.25rem}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.5rem;line-height:1;transition:color .15s}.modal-close:hover{color:var(--fg)}.modal-body{flex:1;padding:24px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;padding:20px 24px;display:flex}.exercises-list{flex-direction:column;gap:12px;margin-top:12px;display:flex}.exercise-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.exercise-item-header{cursor:pointer;align-items:center;gap:12px;padding:12px;transition:background .15s;display:flex}.exercise-item-header:hover{background:var(--card)}.drag-handle{color:var(--muted);cursor:grab;background:0 0;border:none;padding:4px;font-size:1.2rem;line-height:1}.drag-handle:active{cursor:grabbing}.exercise-item-info{flex:1;align-items:center;gap:12px;display:flex}.exercise-item-number{color:var(--muted);min-width:28px;font-weight:600}.exercise-item-name{color:var(--fg);flex:1;font-weight:500}.exercise-item-summary{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.exercise-item-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.2rem;line-height:1;transition:color .15s}.exercise-item-remove:hover{color:#ef6b6b}.exercise-item-details{border-top:1px solid var(--border);background:var(--card);padding:16px}.exercise-item-fields{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;margin-bottom:16px;display:grid}.empty-state{text-align:center;color:var(--muted);background:var(--surface);border-radius:10px;margin-top:12px;padding:40px 20px}.empty-state p{margin:0}.error-message{color:#ef6b6b;background:#ef6b6b1a;border:1px solid #ef6b6b4d;border-radius:8px;padding:12px 16px;font-size:.9rem}.template-selection-modal{width:100%;max-width:500px}.template-selection-empty{text-align:center;color:var(--muted);padding:3rem 1.5rem}.template-selection-empty p{margin:0}.template-selection-list{flex-direction:column;gap:20px;display:flex}.template-selection-section{flex-direction:column;gap:12px;display:flex}.template-selection-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin:0;font-size:.75rem;font-weight:600}.template-selection-items{flex-direction:column;gap:8px;display:flex}.template-selection-item{background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:10px;flex-direction:column;gap:4px;width:100%;padding:14px 16px;transition:all .15s;display:flex}.template-selection-item:hover{background:var(--card);border-color:var(--accent);transform:translateY(-1px)}.template-selection-item:active{transform:translateY(0)}.template-selection-item-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.template-selection-item-name{color:var(--fg);font-size:.95rem;font-weight:500}.template-selection-item-arrow{color:var(--accent);opacity:0;font-size:1.2rem;transition:opacity .15s}.template-selection-item:hover .template-selection-item-arrow{opacity:1}.template-selection-item-meta{color:var(--muted);font-size:.85rem}.active-workout-container{background:var(--bg);min-height:100vh;padding-bottom:2rem}.active-workout-header{z-index:100;background:var(--card);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000001a}.active-workout-pause-button{background:var(--surface);border:1px solid var(--border);color:var(--fg);cursor:pointer;border-radius:8px;padding:.5rem 1rem;font-size:1.2rem;transition:all .15s}.active-workout-pause-button:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.active-workout-pause-button:disabled{opacity:.5;cursor:not-allowed}.active-workout-timer{color:var(--fg);font-variant-numeric:tabular-nums;letter-spacing:.05em;font-size:1.5rem;font-weight:600}.active-workout-finish-button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .15s}.active-workout-finish-button:hover{opacity:.9;transform:translateY(-1px)}.active-workout-exercises{flex-direction:column;gap:1rem;max-width:900px;margin:0 auto;padding:1rem;display:flex}.exercise-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.exercise-card--skipped{opacity:.6}.exercise-card-header{cursor:pointer;justify-content:space-between;align-items:center;padding:1rem 1.25rem;transition:background .15s;display:flex}.exercise-card-header:hover{background:var(--surface)}.exercise-card-info{align-items:center;gap:.75rem;display:flex}.exercise-card-icon{font-size:1.2rem}.exercise-card-name{color:var(--fg);font-size:1rem;font-weight:600}.exercise-card-meta{color:var(--muted);margin-top:2px;font-size:.85rem}.exercise-card-actions{align-items:center;gap:.5rem;display:flex}.exercise-card-menu{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1.2rem;transition:all .15s}.exercise-card-menu:hover{background:var(--surface);color:var(--fg)}.exercise-card-toggle{color:var(--accent);font-size:.8rem}.exercise-card-badge{background:var(--surface);color:var(--muted);border-radius:4px;padding:4px 8px;font-size:.75rem;font-weight:500}.exercise-sets{border-top:1px solid var(--border);padding:1rem 1.25rem}.exercise-sets-header{border-bottom:1px solid var(--border);color:var(--muted);text-transform:uppercase;letter-spacing:.5px;grid-template-columns:40px 60px 80px 80px 50px;gap:8px;padding:.5rem 0;font-size:.75rem;font-weight:600;display:grid}.exercise-set-row{grid-template-columns:40px 60px 80px 80px 50px;align-items:center;gap:8px;padding:.75rem 0;display:grid}.exercise-set-row--completed{opacity:.7}.set-col-number{text-align:center;color:var(--fg);font-weight:500}.set-col-previous{text-align:center;color:var(--muted);font-size:.85rem}.set-input{background:var(--surface);border:1px solid var(--border);text-align:center;color:var(--fg);border-radius:6px;padding:.5rem;font-size:.9rem;font-weight:500;transition:all .15s}.set-input:focus{border-color:var(--accent);background:var(--card);outline:none}.set-input:disabled{opacity:.6;cursor:not-allowed}.set-check-button{border:2px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;transition:all .15s;display:flex}.set-check-button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);transform:scale(1.1)}.set-check-button--checked{border-color:var(--accent);background:var(--accent);color:#fff}.set-check-button:disabled{opacity:.6;cursor:not-allowed}.rest-timer{background:var(--accent-soft);border-radius:8px;margin:.5rem 0 1rem;padding:.75rem 1rem}.rest-timer-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.rest-timer-label{color:var(--accent);font-size:.85rem;font-weight:600}.rest-timer-time{color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:600}.rest-timer-skip{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;transition:all .15s}.rest-timer-skip:hover{background:var(--accent);color:#fff}.rest-timer-progress{background:#fff3;border-radius:3px;height:6px;overflow:hidden}.rest-timer-progress-fill{background:var(--accent);border-radius:3px;height:100%;transition:width 1s linear}.pause-modal{text-align:center;max-width:400px}.pause-modal-title{color:var(--fg);margin-bottom:1rem;font-size:1.5rem;font-weight:600}.pause-modal-time{color:var(--accent);font-variant-numeric:tabular-nums;margin-bottom:2rem;font-size:2rem;font-weight:700}.pause-modal-actions{flex-direction:column;gap:.75rem;display:flex}.button-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .15s}.button-danger{color:#ef4444;cursor:pointer;background:0 0;border:1px solid #ef4444;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .15s}.button-danger:hover{background:#ef44441a}.button-secondary{background:var(--surface);border:1px solid var(--border);color:var(--fg);cursor:pointer;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .15s}.finish-modal{width:100%;max-width:500px}.finish-modal-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.finish-summary{background:var(--surface);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem;padding:1.5rem;display:grid}.finish-summary-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:600}.finish-summary-value{color:var(--accent);font-size:1.5rem;font-weight:700}.finish-warning{color:#f59e0b;text-align:center;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.9rem}.finish-save-button{width:100%;padding:1rem;font-size:1.1rem}.finish-modal-actions{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}@media (max-width:768px){.modal-content{border-radius:0;max-width:100%;max-height:100vh}.exercise-item-fields{grid-template-columns:repeat(2,1fr)}}.today-card--workout{transition:all .3s;overflow:visible}.today-card--default,.today-card--selecting,.today-card--previewing{min-height:auto}.today-card--active,.today-card--paused{min-height:600px;max-height:80vh}.template-selector{padding:1rem 0}.template-selector__title{color:var(--fg);margin-bottom:1rem;font-size:1.1rem;font-weight:600}.template-selector__empty{color:var(--muted);margin-bottom:1rem;font-size:.95rem}.template-group{margin-bottom:1rem}.template-group__title{text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;font-size:.85rem;font-weight:600}.template-list{flex-direction:column;gap:.5rem;display:flex}.template-option{background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:.875rem 1rem;transition:all .2s;display:flex}.template-option:hover{background:var(--hover);border-color:var(--primary)}.template-option__name{color:var(--fg);font-weight:600}.template-option__meta{color:var(--muted);font-size:.85rem}.template-preview{padding:1rem 0}.template-preview__back{color:var(--primary);cursor:pointer;background:0 0;border:none;margin-bottom:1rem;padding:.5rem 0;font-size:.9rem;transition:opacity .2s}.template-preview__back:hover{opacity:.8}.template-preview__title{color:var(--fg);margin-bottom:1rem;font-size:1.25rem;font-weight:600}.exercise-preview-list{margin-bottom:1.5rem}.exercise-preview-list__count{color:var(--muted);margin-bottom:.75rem;font-size:.9rem}.exercise-preview-item{color:var(--fg);border-bottom:1px solid var(--border);padding:.5rem 0;font-size:.9rem}.exercise-preview-item:last-child{border-bottom:none}.active-workout{padding:1rem 0}.workout-header{background:var(--surface);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.workout-header__btn{border:1px solid var(--border);background:var(--bg);color:var(--fg);cursor:pointer;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s}.workout-header__btn:hover{background:var(--hover);border-color:var(--primary)}.workout-header__btn--danger{color:#ef4444;border-color:#ef44444d}.workout-header__btn--danger:hover{background:#ef44441a;border-color:#ef4444}.workout-header__timer{font-variant-numeric:tabular-nums;color:var(--primary);font-size:1.25rem;font-weight:700}.active-workout__name{color:var(--fg);margin-bottom:1rem;font-size:1.15rem;font-weight:600}.exercise-list{flex-direction:column;gap:1.5rem;max-height:calc(80vh - 300px);padding-right:.5rem;display:flex;overflow-y:auto}.exercise-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1rem}.exercise-section__header{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.exercise-section__number{color:var(--muted);font-size:.9rem;font-weight:700}.exercise-section__name{color:var(--fg);flex:1;font-weight:600}.exercise-section__summary{color:var(--muted);font-size:.85rem}.sets-table{flex-direction:column;gap:.5rem;display:flex}.sets-table__header{text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);grid-template-columns:40px 70px 80px 80px 50px;gap:.5rem;padding:.5rem 0;font-size:.8rem;font-weight:600;display:grid}.set-row-wrapper{flex-direction:column;gap:.5rem;display:flex}.set-row{grid-template-columns:40px 70px 80px 80px 50px;align-items:center;gap:.5rem;display:grid}.set-row__number{color:var(--fg);text-align:center;font-weight:600}.set-row__previous{color:var(--muted);text-align:center;font-size:.85rem}.set-row__input{border:1px solid var(--border);background:var(--bg);color:var(--fg);text-align:center;font-variant-numeric:tabular-nums;border-radius:6px;padding:.5rem;font-size:.9rem}.set-row__input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #06b6d41a}.set-row__input:disabled{opacity:.5;cursor:not-allowed}.set-row__check{border:2px solid var(--border);background:var(--bg);width:40px;height:40px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:all .2s;display:flex}.set-row__check:hover:not(:disabled){border-color:var(--primary);color:var(--primary);transform:scale(1.05)}.set-row__check:disabled{opacity:.5;cursor:not-allowed}.set-row__check--completed{background:var(--primary);border-color:var(--primary);color:#fff}.rest-timer{background:#06b6d40d;border:1px solid #06b6d433;border-radius:8px;margin-left:40px;padding:.75rem 1rem}.rest-timer__content{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.rest-timer__icon{font-size:1.2rem}.rest-timer__time{font-variant-numeric:tabular-nums;color:var(--primary);flex:1;font-size:1.1rem;font-weight:700}.rest-timer__skip{border:1px solid var(--border);background:var(--bg);color:var(--muted);cursor:pointer;border-radius:6px;padding:.375rem .75rem;font-size:.8rem;transition:all .2s}.rest-timer__skip:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.rest-timer__skip:disabled{opacity:.5;cursor:not-allowed}.rest-timer__progress-bar{background:#06b6d41a;border-radius:2px;height:4px;overflow:hidden}.rest-timer__progress-fill{background:var(--primary);height:100%;transition:width 1s linear}.button-primary{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.button-primary:hover{opacity:.9;transform:translateY(-1px)}.button-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-secondary{border:1px solid var(--border);background:var(--surface);color:var(--fg);cursor:pointer;border-radius:8px;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.button-secondary:hover{background:var(--hover);border-color:var(--primary)}.button-secondary:disabled{opacity:.5;cursor:not-allowed}.button-large{padding:1rem 1.5rem;font-size:1.1rem}.button-small{padding:.625rem 1rem;font-size:.9rem}@media (max-width:768px){.sets-table__header,.set-row{grid-template-columns:35px 60px 70px 70px 45px;gap:.375rem}.set-row__input{padding:.375rem;font-size:.85rem}.set-row__check{width:36px;height:36px;font-size:1rem}.rest-timer{margin-left:0}.exercise-list{max-height:calc(80vh - 250px)}}.workout-template-selector{padding:1rem 0 .5rem}.workout-template-dropdown{width:100%;color:var(--fg);background:var(--surface);border:2px solid var(--border);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2306b6d4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.25rem;border-radius:8px;padding:.875rem 3rem .875rem 1rem;font-size:1rem;font-weight:500;transition:all .2s}.workout-template-dropdown:hover:not(:disabled){border-color:var(--primary);box-shadow:0 0 0 3px #06b6d41a}.workout-template-dropdown:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #06b6d426}.workout-template-dropdown:disabled{opacity:.5;cursor:not-allowed}.workout-template-dropdown option{background:var(--surface);color:var(--fg);padding:.75rem}.template-preview__actions{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.template-preview__title{color:var(--fg);border-bottom:1px solid var(--border);margin-bottom:1rem;padding-bottom:.75rem;font-size:1.15rem;font-weight:600}.template-preview__back{display:none}.exercise-section--completed{background:#22c55e0d;border-color:#22c55e4d}.exercise-section__header{cursor:pointer;transition:background-color .2s;position:relative}.exercise-section__header:hover{background:#06b6d40d}.exercise-section__header:active{background:#06b6d41a}.exercise-section__icon{color:var(--muted);margin-left:auto;padding-left:.5rem;font-size:.9rem;transition:transform .2s}.exercise-section__icon--expanded{transform:rotate(180deg)}.exercise-section__header{border-bottom:1px solid var(--border);border-radius:8px 8px 0 0;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.75rem;display:flex}.exercise-section--completed .exercise-section__header{background:#22c55e14;border-bottom-color:#22c55e4d}.exercise-section--completed .exercise-section__icon,.exercise-section--completed .exercise-section__name{color:#22c55e}.set-row--completed{background:#22c55e14;border-radius:6px;padding:.25rem 0;transition:background-color .3s}.set-row--completed .set-row__number{color:#22c55e;font-weight:700}.set-row__input--completed{color:#22c55e;background:#22c55e1a;border-color:#22c55e4d;font-weight:600}.set-row__check--completed{color:#fff;animation:.4s ease-out completePulse;background:#22c55e!important;border-color:#22c55e!important}@keyframes completePulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.sets-table{transform-origin:top;animation:.2s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.exercise-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:0;transition:all .2s}.exercise-section__header{border-bottom:1px solid var(--border);margin-bottom:0;padding-bottom:0}.sets-table{padding:1rem}.finish-workout-view{padding:1rem 0;animation:.2s ease-out slideDown}.finish-workout__header{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.finish-workout__back{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:.5rem 0;font-size:.9rem;transition:opacity .2s}.finish-workout__back:hover:not(:disabled){opacity:.8}.finish-workout__back:disabled{opacity:.5;cursor:not-allowed}.finish-workout__title{color:var(--fg);flex:1;font-size:1.25rem;font-weight:600}.finish-workout__warning{color:#f59e0b;text-align:center;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.finish-workout__actions{flex-direction:column;gap:.75rem;display:flex}.finish-summary{background:var(--surface);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;padding:1rem;display:grid}.finish-summary-item{flex-direction:column;align-items:center;gap:.25rem;display:flex}.finish-summary-label{color:var(--muted);text-transform:uppercase;font-size:.8rem;font-weight:600}.finish-summary-value{color:var(--primary);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.finish-inputs{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.finish-inputs .field{flex-direction:column;gap:.5rem;display:flex}.finish-inputs .label{color:var(--fg);font-size:.9rem;font-weight:600}.finish-inputs .input{border:1px solid var(--border);background:var(--bg);color:var(--fg);border-radius:8px;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s}.finish-inputs .input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #06b6d41a}.finish-inputs .input:disabled{opacity:.5;cursor:not-allowed}@media (max-width:768px){.finish-summary{grid-template-columns:1fr;gap:.75rem}.finish-summary-item{flex-direction:row;justify-content:space-between}.finish-summary-label{font-size:.85rem}.finish-summary-value{font-size:1.25rem}}.cardio-inputs{flex-direction:column;gap:1rem;padding:1rem;animation:.2s ease-out slideDown;display:flex}.cardio-inputs .field{flex-direction:column;gap:.5rem;display:flex}.cardio-inputs .label{color:var(--fg);font-size:.9rem;font-weight:600}.cardio-inputs .input{border:1px solid var(--border);background:var(--bg);color:var(--fg);border-radius:8px;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s}.cardio-inputs .input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #06b6d41a}.cardio-inputs .input:disabled{opacity:.5;cursor:not-allowed}.cardio-inputs .input--completed{color:#22c55e;background:#22c55e1a;border-color:#22c55e4d;font-weight:600}.button--completed{opacity:.7;cursor:default;background:#22c55e!important;border-color:#22c55e!important}.today-meals-add-button{width:100%;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:6px;justify-content:center;align-items:center;gap:.35rem;margin-top:.75rem;padding:.4rem .9rem;font-size:.76rem;font-weight:500;transition:all .2s;display:flex}.today-meals-add-button:hover{color:var(--muted);background:#ffffff05;border-color:#ffffff29}.today-meals-add-button__icon{font-size:.8rem;font-weight:600;line-height:1}.today-meals-add-button__text{font-size:.76rem;line-height:1}.today-workout__bottom-actions{flex-direction:column;align-items:center;gap:.5rem;margin-top:auto;padding-top:1rem;display:flex}.today-workout__helper-text{color:var(--muted);text-align:center;margin:0;font-size:.75rem;line-height:1.4}.today-workout__secondary-action{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;padding:.4rem .75rem;font-size:.75rem;transition:all .2s}.today-workout__secondary-action:hover{border-color:var(--primary);color:var(--primary);background:#06b6d40d}.today-workout__empty{flex-direction:column;min-height:220px;display:flex}.workout-template-selector{align-items:center;gap:.75rem;display:flex}.workout-template-dropdown{flex:1}.workout-start-button{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.workout-start-button:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #06b6d44d}.workout-start-button:active{transform:translateY(0)}@media (max-width:768px){.protein-add-row-fields .field select{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;min-height:44px;padding-right:40px;font-size:16px}.protein-add-row-fields .field input{min-height:44px;font-size:16px}}.nav-logo{color:inherit;text-decoration:none;transition:opacity .2s}.nav-logo:hover{opacity:.8}.nav-logo strong{font-weight:700}.network-status-banner{z-index:1000;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px;font-size:14px;font-weight:500;animation:.3s ease-out slideDown;position:fixed;top:0;left:0;right:0}.network-status-banner.offline{color:#fff;background:#ef6b6bf2;box-shadow:0 2px 8px #ef6b6b4d}.network-status-banner.syncing{color:#fff;background:#8a6cfff2;box-shadow:0 2px 8px #8a6cff4d}.status-content{justify-content:center;align-items:center;gap:8px;display:flex}.status-icon{font-size:16px;display:inline-block}.status-icon.spinning{animation:1s linear infinite spin}.status-content .pill{background:#ffffff40;border-radius:12px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.install-prompt{z-index:999;width:calc(100% - 40px);max-width:500px;animation:.3s ease-out slideUp;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(100%)}to{opacity:1;transform:translate(-50%)translateY(0)}}.install-prompt-content{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:16px;padding:20px;display:flex}.install-prompt-icon{flex-shrink:0;font-size:32px}.install-prompt-text{flex:1}.install-prompt-text strong{color:var(--ink);margin-bottom:4px;font-size:16px;font-weight:600;display:block}.install-prompt-text p{color:var(--muted);margin:0;font-size:14px}.install-prompt-actions{flex-shrink:0;gap:8px;display:flex}.btn-install,.btn-dismiss{cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.btn-install{background:var(--accent);color:#fff}.btn-install:hover{opacity:.9;transform:scale(1.02)}.btn-dismiss{color:var(--muted);border:1px solid var(--border);background:0 0}.btn-dismiss:hover{background:var(--surface)}@media (max-width:640px){.install-prompt-content{text-align:center;flex-direction:column}.install-prompt-actions{flex-direction:column;width:100%}.btn-install,.btn-dismiss{width:100%}}.update-prompt{z-index:1001;width:calc(100% - 40px);max-width:500px;animation:.3s ease-out slideDown;position:fixed;top:20px;left:50%;transform:translate(-50%)}.update-prompt-content{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:16px;padding:20px;display:flex}.update-prompt-text{flex:1}.update-prompt-text strong{color:var(--ink);margin-bottom:4px;font-size:16px;font-weight:600;display:block}.update-prompt-text p{color:var(--muted);margin:0;font-size:14px}.update-prompt-actions{flex-shrink:0;gap:8px;display:flex}.btn-update,.btn-dismiss-update{cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.btn-update{background:var(--accent);color:#fff}.btn-update:hover{opacity:.9;transform:scale(1.02)}.btn-dismiss-update{color:var(--muted);border:1px solid var(--border);background:0 0}.btn-dismiss-update:hover{background:var(--surface)}@media (max-width:640px){.update-prompt-content{text-align:center;flex-direction:column}.update-prompt-actions{flex-direction:column;width:100%}.btn-update,.btn-dismiss-update{width:100%}}
