:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f5f5f7;background:#0a0a14;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #0a0a14;--panel-bg: rgba(255, 255, 255, .045);--panel-bg-strong: rgba(255, 255, 255, .07);--panel-border: rgba(255, 255, 255, .09);--panel-shadow: 0 14px 38px rgba(0, 0, 0, .38);--text: #f5f5f7;--text-muted: #9b97b3;--text-faint: #6f6b86;--purple: #8b5cf6;--purple-deep: #6d28d9;--indigo: #6366f1;--blue: #60a5fa;--green: #34d399;--orange: #fb923c;--pink: #f472b6;--red: #f87171;--radius: 20px;--radius-sm: 12px;--radius-pill: 999px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(ellipse 920px 620px at 12% -8%,rgba(139,92,246,.32),transparent 60%),radial-gradient(ellipse 760px 520px at 112% 8%,rgba(244,114,182,.16),transparent 55%),radial-gradient(ellipse 820px 720px at 88% 96%,rgba(99,102,241,.18),transparent 60%),var(--bg);background-attachment:fixed}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.5}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea{width:100%;min-height:46px;padding:0 12px;color:var(--text);background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease,box-shadow .15s ease}textarea{min-height:92px;padding:12px;resize:vertical}input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,select:focus,textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #8b5cf638}select option{background:#16142a;color:var(--text)}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:22px;height:22px;flex-shrink:0;display:inline-grid;place-items:center;background:#ffffff0a;border:1px solid var(--panel-border);border-radius:6px;cursor:pointer;transition:background .15s ease,border-color .15s ease}input[type=checkbox]:checked{background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}input[type=checkbox]:checked:after{content:"";width:6px;height:11px;margin-top:-2px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=file]{width:100%;color:var(--text-muted);font-size:.85rem}input[type=file]::file-selector-button{margin-right:10px;padding:10px 14px;color:var(--text);background:#ffffff0f;border:1px solid var(--panel-border);border-radius:var(--radius-pill);font:inherit;font-weight:700;cursor:pointer}a{color:inherit;text-decoration:none}.app-loader{min-height:100vh;display:grid;place-items:center;font-weight:800;color:var(--text)}.app-shell{min-height:100vh;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.app-main{width:min(1080px,100%);margin:0 auto}.page{padding:calc(18px + env(safe-area-inset-top)) 16px 24px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.page-header h1{margin:0;font-size:1.85rem;line-height:1.05;letter-spacing:0;color:var(--text)}.kicker{margin:0 0 6px;color:var(--text-muted);font-size:.86rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.hero-band{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:188px;padding:22px;color:var(--text);background:radial-gradient(ellipse 420px 260px at 110% -20%,rgba(244,114,182,.35),transparent 60%),linear-gradient(135deg,#2a2150,#1c1638 60%,#15112b);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);overflow:hidden}.hero-band p{margin:0 0 12px;color:var(--pink);font-weight:800}.hero-band h2{max-width:620px;margin:0;font-size:2rem;line-height:1;letter-spacing:0}.hero-band span{display:block;max-width:620px;margin-top:12px;color:var(--text-muted);line-height:1.45}.hero-band svg{flex-shrink:0;color:var(--purple);filter:drop-shadow(0 0 18px rgba(139,92,246,.55))}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.metric-card,.panel{min-width:0;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.metric-card{min-height:116px;padding:16px}.metric-card p{margin:0 0 12px;color:var(--text-muted);font-size:.88rem;font-weight:700}.metric-card strong{display:block;color:var(--green);font-size:1.3rem;line-height:1.1;letter-spacing:-.01em}.metric-card span{display:block;margin-top:8px;color:var(--text-muted)}.panel{padding:16px;margin-top:14px}.panel h2{margin:0 0 12px;font-size:1.08rem;color:var(--text)}.panel-title{display:flex;align-items:center;gap:12px}.panel-title h2{margin:0}.panel-title>svg{flex-shrink:0;box-sizing:content-box;padding:8px;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--purple),var(--blue));box-shadow:0 6px 18px #8b5cf659}.muted{color:var(--text-muted);line-height:1.45}details.collapsible{padding:0;overflow:hidden}details.collapsible>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;cursor:pointer;list-style:none;font-weight:800;font-size:1.08rem;color:var(--text)}details.collapsible>summary::-webkit-details-marker{display:none}details.collapsible>summary:after{content:"+";flex-shrink:0;width:28px;height:28px;display:grid;place-items:center;font-size:1.2rem;border-radius:50%;color:var(--text-muted);background:#ffffff0a;border:1px solid var(--panel-border)}details.collapsible[open]>summary{border-bottom:1px solid var(--panel-border)}details.collapsible[open]>summary:after{content:"-"}details.collapsible .collapsible-body{padding:16px;display:grid;gap:14px}.empty-panel{min-height:220px;display:grid;align-content:center;justify-items:center;text-align:center}.wide-action,.primary-button,.secondary-button,.danger-button,.icon-button,.tab-row button,.segmented button{border:0;border-radius:var(--radius-pill);min-height:46px;font-weight:800;font-family:inherit}.wide-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:18px 20px;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-radius:var(--radius);box-shadow:0 10px 28px #6366f161}.primary-button{width:100%;padding:0 18px;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);box-shadow:0 8px 24px #8b5cf659}.secondary-button{display:inline-flex;align-items:center;gap:8px;padding:0 16px;color:var(--text);background:var(--panel-bg-strong);border:1px solid var(--panel-border)}.danger-button{width:100%;margin-top:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;background:linear-gradient(135deg,var(--red) 0%,var(--pink) 100%);box-shadow:0 8px 24px #f472b64d}.icon-button{width:46px;height:46px;border-radius:50%;display:inline-grid;place-items:center;color:var(--text);background:var(--panel-bg-strong);border:1px solid var(--panel-border)}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(ellipse 900px 600px at 15% -10%,rgba(139,92,246,.32),transparent 60%),radial-gradient(ellipse 760px 520px at 110% 100%,rgba(244,114,182,.18),transparent 55%),var(--bg)}.auth-panel{width:min(430px,100%);padding:26px;background:var(--panel-bg-strong);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.auth-panel h1{margin:12px 0 6px;font-size:2rem;letter-spacing:0;color:var(--text)}.auth-panel p{margin:0 0 18px;color:var(--text-muted);line-height:1.45}.brand-mark{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--pink) 100%);box-shadow:0 10px 28px #8b5cf666}.form-stack{display:grid;gap:12px}.form-stack label{display:grid;gap:6px;color:var(--text-muted);font-size:.92rem;font-weight:800}.form-stack input,.form-stack select,.form-stack textarea{width:100%;min-height:46px;padding:0 12px;color:var(--text);background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm);outline:none}.form-stack textarea{min-height:92px;padding:12px;resize:vertical}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #8b5cf638}.form-stack select option{background:#16142a;color:var(--text)}.segmented{display:inline-grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;margin:12px 0 18px;background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-pill)}.segmented.full{width:100%;margin:0}.segmented button{min-width:62px;padding:0 12px;color:var(--text-muted);background:transparent}.segmented button.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);box-shadow:0 4px 14px #8b5cf659}.text-link{display:block;margin-top:18px;color:var(--purple);font-weight:800;text-align:center}.error-text{padding:10px 12px;color:#fca5a5;background:#f871711f;border:1px solid rgba(248,113,113,.24);border-radius:var(--radius-sm)}.processing-text{padding:10px 12px;color:#93c5fd;background:#60a5fa1f;border:1px solid rgba(96,165,250,.24);border-radius:var(--radius-sm);animation:pulse-soft 1.3s ease-in-out infinite}.success-text{padding:10px 12px;color:#6ee7b7;background:#34d3991f;border:1px solid rgba(52,211,153,.24);border-radius:var(--radius-sm)}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.55}}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#0f0d1cc7;border-top:1px solid var(--panel-border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.bottom-nav-link{min-height:58px;display:grid;place-items:center;align-content:center;gap:4px;color:var(--text-muted);border-radius:var(--radius-sm);font-size:.72rem;font-weight:800}.bottom-nav-link.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);box-shadow:0 6px 18px #8b5cf666}.toast-stack{position:fixed;left:50%;transform:translate(-50%);bottom:calc(104px + env(safe-area-inset-bottom));z-index:70;width:min(560px,calc(100% - 24px));display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;color:var(--text);background:#1c1930f7;border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow);animation:toast-in .18s ease-out}.toast>span{min-width:0;overflow-wrap:anywhere}.toast-action{flex-shrink:0;padding:6px 12px;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border:0;border-radius:var(--radius-pill);cursor:pointer}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.settings-block{margin-top:16px}.settings-block:first-of-type{margin-top:14px}.settings-block h3,.collapsible-body h3{margin:0 0 4px;font-size:.98rem}.settings-label{display:block;margin-bottom:8px;color:var(--text-muted);font-size:.85rem}.tab-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tab-row button{display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;color:var(--text-muted);background:#ffffff0a;border:1px solid var(--panel-border)}.tab-row button.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent;box-shadow:0 4px 14px #8b5cf659}.copy-row{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:8px;align-items:center}.copy-row code{min-height:44px;display:flex;align-items:center;padding:8px 10px;overflow:auto;color:var(--text);background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm);font-size:.8rem}.integration-list{display:grid;gap:10px}.integration-item{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;padding:12px;background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.integration-item strong,.integration-item span,.integration-item small{display:block}.integration-item span{color:var(--text-muted)}.integration-item small{margin-top:4px;color:var(--text-faint);overflow-wrap:anywhere}.timeline-grid{gap:18px}.timeline-filters{display:grid;gap:14px}.timeline-filters label{display:grid;gap:6px;color:var(--text-muted);font-size:.92rem;font-weight:800}.timeline-filters input{width:100%;min-height:44px;padding:0 12px;color:var(--text);background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit}.timeline-periods{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.timeline-chart{height:360px}.insight-history{display:grid;gap:10px}.insight-history details{padding:12px;background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.insight-history summary{cursor:pointer;font-weight:800;color:var(--text)}.insight-history .markdown-card{margin-top:12px;background:#ffffff08}.stack{display:grid;gap:14px;margin-top:14px}.two-column{display:grid;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.three,.form-grid.four{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.select-input{width:100%;min-height:44px;padding:0 12px;color:var(--text);background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit;font-weight:700}.select-input option{background:#16142a;color:var(--text)}.chart-box{height:240px;margin-top:14px}.workout-volume-chart{height:320px}.item-header,.list-card,.list-button{display:flex;align-items:center;justify-content:space-between;gap:12px}.item-header strong,.list-card strong,.list-button strong{display:block;color:var(--text)}.item-header span,.list-card span,.list-card small,.list-button span{display:block;margin-top:4px;color:var(--text-muted);overflow-wrap:anywhere}.item-list{display:grid;gap:10px}.list-card,.list-button{width:100%;padding:12px 14px;text-align:left;background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.list-button{color:var(--text)}.list-details{width:100%;background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm);overflow:hidden}.list-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;color:var(--text)}.list-details>summary::-webkit-details-marker{display:none}.list-details>summary>div{min-width:0;display:grid;gap:4px}.list-details>summary strong,.list-details>summary span,.list-details>summary small{display:block;overflow-wrap:anywhere}.list-details .list-details-body{padding:0 14px 14px;display:grid;gap:10px}.protocol-toolbar{display:flex;justify-content:flex-end}.protocol-actions,.protocol-management{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.protocol-management{justify-content:space-between;padding-top:12px;border-top:1px solid var(--panel-border)}.protocol-inline-form{padding:16px;background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.protocol-inline-form h3,.list-details-body h3{margin:4px 0 0;font-size:.95rem}.protocol-compound-list{display:grid;gap:8px}.protocol-compound{display:grid;gap:4px;padding:11px 12px;background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.protocol-compound span,.list-details summary small{color:var(--text-muted)}.readonly-field{min-height:46px;display:flex;align-items:center;padding:0 12px;color:var(--text-muted);background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.chip.warning{display:inline-flex;align-items:center;gap:6px;color:#fecaca;background:#f871712e;border-color:#f8717152}.workout-detail{scroll-margin-top:18px}.exercise-detail{display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--panel-border)}.exercise-detail:first-of-type{border-top:0}.exercise-detail strong,.exercise-detail span{display:block;color:var(--text)}.exercise-detail>div>span{margin-top:4px;color:var(--text-muted)}.set-row{display:flex;flex-wrap:wrap;gap:8px}.set-row span{padding:7px 9px;color:var(--text);background:#ffffff0d;border:1px solid var(--panel-border);border-radius:var(--radius-sm);font-size:.86rem;font-weight:800}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chip{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;color:#ede9fe;background:#8b5cf638;border:1px solid rgba(139,92,246,.32);border-radius:var(--radius-pill);font-size:.86rem;font-weight:800}.chip.status-low,.chip.status-high{color:#fde68a;background:#fb923c2e;border-color:#fb923c52}.chip.status-normal{color:#bbf7d0;background:#34d3992e;border-color:#34d39952}.chip.status-very-low,.chip.status-very-high{color:#fecaca;background:#f871712e;border-color:#f8717152}.marker-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.marker-card{min-width:0;min-height:154px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:13px;text-align:left;color:var(--text);background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.marker-card.active{border-color:var(--purple);box-shadow:0 0 0 2px #8b5cf62e}.marker-card-name{min-height:34px;color:var(--text-muted);font-size:.78rem;font-weight:800;overflow-wrap:anywhere}.marker-card strong{font-size:1.14rem;overflow-wrap:anywhere}.marker-card small{margin-top:auto;color:var(--text-muted);overflow-wrap:anywhere}.marker-card-meta{width:100%;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.marker-trend{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);font-size:.78rem;font-weight:800}.trend-up{color:#f9a8d4}.trend-down{color:#93c5fd}.marker-detail-heading,.assessment-heading,.detail-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.marker-detail-heading span:first-child{color:var(--text-muted);font-size:.78rem;font-weight:800}.marker-detail-heading h2{margin:3px 0 0}.marker-history{margin-top:14px}.chart-tooltip{max-width:260px;display:grid;gap:6px;padding:12px;color:var(--text);background:#141226f7;border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow)}.chart-tooltip span,.chart-tooltip small{overflow-wrap:anywhere}.chart-tooltip small{color:var(--text-muted)}.exam-marker-list{display:grid;gap:8px}.exam-marker-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--panel-border)}.exam-marker-row:last-child{border-bottom:0}.exam-marker-row div,.exam-marker-row span,.exam-marker-row small{min-width:0}.exam-marker-row div>span,.exam-marker-row div>small{display:block;margin-top:4px;color:var(--text-muted);overflow-wrap:anywhere}.marker-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.assessment-metric-grid,.assessment-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.assessment-metric,.assessment-detail-grid>span{min-width:0;display:grid;gap:5px;padding:12px;background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.assessment-metric>span,.assessment-detail-grid>span>strong{color:var(--text-muted);font-size:.78rem}.assessment-metric strong{font-size:1.15rem}.assessment-metric small{font-weight:800}.delta-positive{color:var(--green)}.delta-negative{color:#f87171}.delta-neutral{color:var(--text-muted)}.assessment-detail-grid>span>strong{display:block}.step-list{margin:12px 0;padding-left:20px;color:var(--text-muted);line-height:1.55}.inline-link{margin-top:8px;text-align:left}.back-link{display:inline-flex;align-items:center;gap:4px;margin-bottom:4px;background:none;border:none;cursor:pointer}.list-details-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.markdown-card{margin:0;padding:14px;white-space:pre-wrap;color:var(--text);background:#ffffff09;border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit;line-height:1.5}.diet-summary{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:16px}.donut-box{position:relative;height:160px}.donut-box strong{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--text);font-size:1.4rem}.date-bar{display:grid;gap:6px;margin-top:14px;color:var(--text-muted);font-size:.92rem;font-weight:800}.date-bar input{min-height:46px;padding:0 12px;color:var(--text);background:#ffffff0a;border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fake-chart{width:min(520px,100%);height:190px;display:grid;grid-template-columns:repeat(4,1fr);align-items:end;gap:10px;padding:14px;background:#ffffff08;border:1px solid var(--panel-border);border-radius:var(--radius)}.fake-chart span{display:block;border-radius:8px 8px 0 0;background:var(--green)}.fake-chart span:nth-child(1){height:45%}.fake-chart span:nth-child(2){height:76%;background:var(--pink)}.fake-chart span:nth-child(3){height:58%;background:var(--orange)}.fake-chart span:nth-child(4){height:86%;background:var(--purple)}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:#ffffff14}.recharts-text,.recharts-cartesian-axis-tick-value,.recharts-polar-angle-axis-tick-value{fill:var(--text-muted)}.recharts-legend-item-text{color:var(--text-muted)!important}.recharts-default-tooltip{background:#141226f2!important;border:1px solid var(--panel-border)!important;border-radius:var(--radius-sm)!important;color:var(--text)!important}.recharts-tooltip-label,.recharts-tooltip-item{color:var(--text)!important}@media(min-width:760px){.page{padding:30px 28px 40px}.page-header h1{font-size:2.35rem}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.marker-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.assessment-metric-grid,.assessment-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-nav{width:min(680px,calc(100% - 32px));left:50%;right:auto;bottom:16px;transform:translate(-50%);border:1px solid var(--panel-border);border-radius:var(--radius);padding:8px}}@media(max-width:430px){.hero-band{align-items:flex-start;min-height:170px}.hero-band h2{font-size:1.55rem}.hero-band svg{display:none}.metric-grid,.form-grid,.form-grid.three,.form-grid.four,.marker-review-grid,.diet-summary,.quick-grid,.timeline-periods{grid-template-columns:1fr}.tab-row button span,.bottom-nav-link span{font-size:.68rem}}.fab-container{position:fixed;right:20px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:25;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.fab-options{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.fab-option{display:flex;align-items:center;gap:10px;padding:10px 16px;color:var(--text);background:#1c1930f7;border:1px solid var(--panel-border);border-radius:var(--radius-pill);box-shadow:var(--panel-shadow);font-weight:700;white-space:nowrap}.fab-main{width:56px;height:56px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border:0;border-radius:50%;box-shadow:0 10px 28px #8b5cf673;transition:transform .18s ease}.fab-main.open{transform:rotate(45deg)}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:#08061299;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.sheet{width:min(640px,100%);max-height:min(88vh,760px);display:flex;flex-direction:column;background:#16142a;border:1px solid var(--panel-border);border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;box-shadow:var(--panel-shadow)}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 0}.sheet-header h2{margin:0}.sheet-body{padding:16px;overflow-y:auto;display:grid;gap:14px}.sheet-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--panel-border)}.checkbox-row{display:flex;align-items:center;gap:10px;font-weight:700}@keyframes sheet-slide-up{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{transform:translateY(8px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.sheet-overlay{animation:overlay-fade .18s ease}.sheet{animation:sheet-slide-up .24s cubic-bezier(.2,.9,.3,1)}.pop-in{animation:pop-in .2s ease}.fab-options .fab-option{animation:pop-in .18s ease backwards}.fab-options .fab-option:nth-child(1){animation-delay:.09s}.fab-options .fab-option:nth-child(2){animation-delay:.06s}.fab-options .fab-option:nth-child(3){animation-delay:.03s}.fab-options .fab-option:nth-child(4){animation-delay:0s}.fab-option:active{transform:scale(.96)}.fab-main:active{transform:scale(.92)}.fab-main.open:active{transform:rotate(45deg) scale(.92)}.search-box>span{display:block;margin-bottom:6px}.search-field{position:relative;display:flex;align-items:center}.search-field svg{position:absolute;left:14px;color:var(--muted, rgba(255, 255, 255, .55));pointer-events:none}.search-field input{width:100%;padding-left:42px;padding-right:40px;border-radius:var(--radius-pill, 999px);transition:border-color .15s ease,box-shadow .15s ease}.search-field input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #8b5cf640;outline:none}@keyframes spin{to{transform:rotate(360deg)}}.search-spinner{position:absolute;right:14px;width:16px;height:16px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--purple);border-radius:50%;animation:spin .7s linear infinite}.food-results{max-height:260px;overflow-y:auto}.food-result{animation:pop-in .18s ease backwards;transition:background .12s ease,transform .12s ease}.food-result:active{transform:scale(.985);background:#8b5cf626}.sheet-cta{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .12s ease,opacity .12s ease}.sheet-cta:active{transform:scale(.98)}.sheet .form-stack .primary-button,.sheet .form-stack .secondary-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px}.calorie-card{display:grid;gap:12px}.calorie-head{display:flex;align-items:center;justify-content:space-between}.calorie-head h2{display:flex;align-items:center;gap:8px;margin:0}.calorie-actions{display:flex;gap:8px}.gauge-row{display:grid;grid-template-columns:1fr 150px 1fr;align-items:end;gap:8px}.gauge-side{display:grid;justify-items:center;gap:2px;padding-bottom:10px}.gauge-side strong{font-size:1.15rem}.gauge-side span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.78rem}.gauge-box{position:relative;height:110px}.gauge-center{position:absolute;inset:auto 0 6px;display:grid;justify-items:center;gap:0;pointer-events:none}.gauge-center strong{font-size:1.7rem;line-height:1.1}.gauge-center span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.76rem}.macro-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.macro-bar{display:grid;gap:6px;justify-items:center}.macro-bar>span:first-child{color:var(--muted, rgba(255, 255, 255, .55));font-size:.82rem;font-weight:700}.bar-track{width:100%;height:8px;background:#ffffff14;border-radius:999px;overflow:hidden}.bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.bar-value{font-size:.82rem;font-weight:800}.period-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.period-head h2{margin:0}.period-meta{display:flex;align-items:center;gap:10px}.period-add{width:34px;height:34px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border:0;border-radius:12px;transition:transform .12s ease}.period-add:active{transform:scale(.92)}.period-empty{margin:0;font-size:.85rem}.entry-card{align-items:center}.entry-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:0;text-align:left;color:var(--text);background:none;border:0}.entry-thumb{width:46px;height:46px;flex-shrink:0;object-fit:cover;border-radius:12px;border:1px solid var(--panel-border)}.photo-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:24px;background:#04030ce0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:overlay-fade .18s ease}.photo-viewer img{max-width:100%;max-height:80vh;border-radius:var(--radius);border:1px solid var(--panel-border)}.fab-container{right:auto;left:50%;transform:translate(-50%);align-items:center;z-index:45}.add-menu-overlay{z-index:42;align-items:flex-end}.add-menu{width:min(640px,100%);padding:16px 16px calc(170px + env(safe-area-inset-bottom));animation:sheet-slide-up .22s cubic-bezier(.2,.9,.3,1)}.add-menu-period{margin:0 0 10px;color:#ede9fe;text-align:center;font-weight:800}.add-menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.add-menu-option{display:grid;justify-items:center;gap:10px;padding:20px 12px;color:var(--text);background:#1c1930f7;border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);font-weight:700;animation:pop-in .2s ease backwards;transition:transform .12s ease}.add-menu-option:nth-child(1){animation-delay:0s}.add-menu-option:nth-child(2){animation-delay:.04s}.add-menu-option:nth-child(3){animation-delay:.08s}.add-menu-option:nth-child(4){animation-delay:.12s}.add-menu-option:active{transform:scale(.96)}.add-menu-option svg{color:var(--purple)}.plate-head{display:flex;align-items:center;gap:12px}.plate-photo{width:72px;height:72px;flex-shrink:0;display:grid;place-items:center;padding:0;overflow:hidden;color:var(--muted, rgba(255, 255, 255, .55));background:#ffffff0d;border:1px dashed var(--panel-border);border-radius:var(--radius)}.plate-photo img{width:100%;height:100%;object-fit:cover}.plate-photo-empty{gap:4px}.plate-photo-empty span{font-size:.62rem;font-weight:700}.plate-name{flex:1;min-width:0;font-weight:800}.chip-active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.plate-summary{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:14px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.25);border-radius:var(--radius)}.plate-kcal{display:grid;justify-items:center}.plate-kcal strong{font-size:1.9rem;line-height:1.1}.plate-kcal span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.8rem}.macro-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.macro-card{display:grid;gap:2px;padding:10px 8px;background:#ffffff0d;border:1px solid var(--panel-border);border-radius:12px;text-align:center}.macro-card span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.74rem;font-weight:700}.macro-card strong{font-size:.95rem}.portion-row{display:flex;align-items:center;justify-content:space-between;font-weight:700}.portion-stepper{display:flex;align-items:center;gap:12px}.portion-stepper .icon-button{border:1px solid var(--panel-border);border-radius:50%}.section-label{margin:0 0 8px;font-size:.92rem}.items-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.item-tile{display:grid;align-content:center;justify-items:center;gap:6px;min-height:86px;padding:10px 8px;color:var(--text);background:#ffffff0d;border:1px solid var(--panel-border);border-radius:var(--radius);text-align:center;transition:transform .12s ease,border-color .12s ease}.item-tile span{font-size:.8rem;font-weight:700;overflow-wrap:anywhere}.item-tile strong{font-size:.92rem}.item-tile:active{transform:scale(.96)}.item-tile-active{border-color:var(--purple);box-shadow:0 0 0 2px #8b5cf64d}.item-tile-add{border-style:dashed;color:var(--muted, rgba(255, 255, 255, .55))}.button-row{display:flex;gap:10px}.button-row .primary-button,.button-row .secondary-button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px}.icon-button-plain{width:38px;height:38px;flex-shrink:0;display:inline-grid;place-items:center;padding:0;color:var(--text-muted);background:none;border:0;border-radius:12px;transition:color .12s ease,transform .12s ease}.icon-button-plain:active{color:var(--text);transform:scale(.9)}.entry-list{display:grid}.entry-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 2px;border-bottom:1px solid rgba(255,255,255,.06)}.entry-row:last-child{border-bottom:none;padding-bottom:4px}.entry-row strong{display:block;color:var(--text)}.entry-row span{display:block;margin-top:4px;color:var(--text-muted);font-size:.85rem;overflow-wrap:anywhere}.entry-pick{width:100%;background:none;border-left:0;border-right:0;border-top:0;text-align:left;color:var(--text)}.date-nav{display:flex;align-items:center;justify-content:space-between;gap:8px}.date-display{position:relative;flex:1;text-align:center}.date-display strong{font-size:1.05rem}.date-hidden{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;min-height:0;opacity:0;border:0}.gauge-area{position:relative}.target-edit{position:absolute;top:0;left:0;z-index:1;color:var(--text-muted)}.bar-track{position:relative}.bar-overflow{position:absolute;inset:0 auto 0 0;background:#ef4444;border-radius:999px;transition:width .4s ease}.over-text{color:#f87171!important}.plate-photo-wrap{position:relative;flex-shrink:0}.photo-remove{position:absolute;top:-6px;right:-6px;width:22px;height:22px;display:grid;place-items:center;color:#fff;background:#ef4444;border:2px solid #16142a;border-radius:50%;padding:0}.photo-spinner{position:static}.chip-toggle{color:var(--text-muted);background:#ffffff0d;border-color:var(--panel-border)}.chip-toggle.chip-active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.sheet-title-row{display:flex;align-items:center;gap:6px}.sheet-title-row h2{margin:0}.stepper{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.step{display:grid;justify-items:center;gap:6px;padding:10px 4px;border-radius:var(--radius-sm);opacity:.45;transition:opacity .2s ease}.step-active,.step-done{opacity:1}.step-dot{width:26px;height:26px;display:grid;place-items:center;font-size:.8rem;font-weight:800;color:var(--text-muted);background:#ffffff0f;border:1px solid var(--panel-border);border-radius:50%}.step-active .step-dot{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.step-done .step-dot{color:#c4b5fd;border-color:var(--purple)}.step-label{font-size:.72rem;font-weight:700;text-align:center;color:var(--text-muted)}.step-active .step-label{color:var(--text)}.routine-row{flex-direction:column;align-items:stretch;gap:8px}.routine-row .entry-main{width:100%}.routine-row .entry-main span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.routine-actions{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%}.routine-icons{display:flex;align-items:center;gap:4px}.start-routine{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem}.routine-exercise{display:grid;gap:10px}.routine-exercise-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.routine-exercise-actions{display:flex;gap:0}.routine-exercise-actions .icon-button-plain{width:32px;height:32px}.rest-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.85rem;font-weight:700}.rest-row input{width:110px;min-height:40px}.set-grid{display:grid;grid-template-columns:40px 1fr 1fr 1fr 32px;align-items:center;gap:8px}.set-grid input{min-height:40px;padding:0 8px;text-align:center}.set-grid-header span{color:var(--text-muted);font-size:.72rem;font-weight:700;text-align:center}.set-type{width:36px;height:36px;display:grid;place-items:center;color:var(--text);background:#ffffff0f;border:1px solid var(--panel-border);border-radius:10px;font-weight:800}.set-type-warmup{color:#fbbf24;border-color:#fbbf2480;background:#fbbf241f}.set-type-failure{color:#f87171;border-color:#f8717180;background:#f871711f}.set-type-dropset{color:#60a5fa;border-color:#60a5fa80;background:#60a5fa1f}.add-set-button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:9px;font-size:.85rem}.live-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:48;display:flex;flex-direction:column;background:radial-gradient(ellipse 920px 620px at 12% -8%,rgba(139,92,246,.32),transparent 60%),radial-gradient(ellipse 820px 720px at 88% 96%,rgba(99,102,241,.18),transparent 60%),var(--bg)}.live-header{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 12px;background:#0a0a14d1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--panel-border)}.live-header-top{display:flex;align-items:center;gap:10px}.live-header-top h2{flex:1;margin:0;font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-finish{padding:9px 16px;font-size:.85rem}.live-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.live-stats div{display:grid;gap:2px}.live-stats span{color:var(--text-muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.live-stats strong{font-size:1rem;font-variant-numeric:tabular-nums}.live-body{flex:1;overflow-y:auto;display:grid;gap:14px;align-content:start;padding:16px 16px calc(env(safe-area-inset-bottom,0px) + 110px)}.live-empty{text-align:center;padding:24px 0 8px}.live-exercise{display:grid;gap:10px}.live-exercise-name{display:grid;gap:2px;text-align:left;background:none;border:none;padding:0;color:var(--text)}.live-exercise-name span{display:inline-flex;align-items:center;gap:4px;font-size:.78rem}.live-set-grid{display:grid;grid-template-columns:36px minmax(0,1.15fr) 1fr 1fr 40px;align-items:center;gap:8px;padding:3px 4px;border-radius:var(--radius-sm)}.live-set-grid input{min-height:40px;padding:0 6px;text-align:center}.live-set-grid-header span{color:var(--text-muted);font-size:.72rem;font-weight:700;text-align:center;text-transform:uppercase}.live-set-grid.set-done{background:#34d3991f}.live-set-grid.set-done input{border-color:#34d39959}.live-prev{background:none;border:none;padding:0;color:var(--text-muted);font-size:.8rem;font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-prev:disabled{opacity:.45}.live-check{width:40px;height:40px;display:grid;place-items:center;color:var(--text-muted);background:#ffffff0f;border:1px solid var(--panel-border);border-radius:10px}.live-check-done{color:#052e1f;background:var(--green);border-color:var(--green)}.danger-text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px;color:var(--red);background:none;border:none;font-weight:700;font-size:.9rem}.rest-bar{position:relative;margin:0 16px;margin-bottom:calc(env(safe-area-inset-bottom,0px) + 14px);overflow:hidden;background:#141226eb;border:1px solid rgba(139,92,246,.45);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow)}.rest-bar-fill{position:absolute;inset:0 auto 0 0;background:#8b5cf647;transition:width 1s linear}.rest-bar-content{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px}.rest-bar-time{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:1.05rem;font-variant-numeric:tabular-nums}.rest-bar-actions{display:flex;gap:8px}.rest-bar-actions button{padding:8px 12px;color:var(--text);background:#ffffff14;border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.8rem;font-weight:700}.rest-bar-actions .rest-skip{border-color:#8b5cf699}.live-resume-bar{position:fixed;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 86px);z-index:44;display:flex;align-items:center;gap:10px;padding:12px 16px;color:var(--text);background:#141226f2;border:1px solid rgba(139,92,246,.5);border-radius:var(--radius-pill);box-shadow:var(--panel-shadow)}.live-resume-bar strong{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-resume-bar span{font-variant-numeric:tabular-nums;color:var(--text-muted)}.live-resume-cta{color:var(--purple)!important;font-weight:800}.live-resume-pulse{width:9px;height:9px;border-radius:50%;background:var(--green);animation:live-pulse 1.6s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.3}}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.sheet-section-title{margin:6px 0 0;font-size:.95rem}.exercise-instructions p{margin:0;color:var(--text-muted);line-height:1.5;white-space:pre-wrap}.exercise-instructions h3{margin:0 0 6px;font-size:.9rem}.exercise-history-row{display:grid;gap:6px;background:none}.exercise-history-row .set-row span.warmup-set{color:#fbbf24}.exercise-link{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:0;text-align:left;color:var(--text);background:none;border:none}.sheet-compact{max-height:60vh;height:auto}.set-help,.unit-toggle{display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:0;color:var(--text-muted);background:none;border:none;font-size:.72rem;font-weight:700;text-transform:uppercase}.unit-toggle{color:var(--purple)}.set-legend{display:grid;gap:12px}.set-legend-row{display:flex;align-items:center;gap:12px}.set-legend-row p{margin:0;color:var(--text-muted);line-height:1.45}.set-legend-row .set-type{flex-shrink:0}.finish-photo-row{display:flex;align-items:center}.finish-photo-button{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.finish-photo{position:relative;width:96px;height:96px}.finish-photo img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--panel-border)}.detail-photo{width:100%;padding:0;background:none;border:none}.detail-photo img{width:100%;max-height:240px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--panel-border)}.layout-chips{display:flex;flex-wrap:wrap;gap:8px}.layout-chip.active{color:#fff;border-color:var(--purple);background:#8b5cf640}.share-preview canvas{display:block;width:100%;height:auto;border-radius:var(--radius-sm)}.rest-chip{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:6px 14px;color:var(--text-muted);background:#ffffff0d;border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.8rem;font-weight:700}.rest-edit-row{display:flex;align-items:center;gap:8px}.rest-edit-row input{flex:1;min-height:40px;text-align:center}.rest-edit-row button{padding:9px 14px;color:var(--text);background:#ffffff14;border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.8rem;font-weight:700}.exercise-head-left{display:flex;align-items:center;gap:2px;min-width:0;flex:1}.exercise-head-left .icon-button-plain{flex-shrink:0;width:30px;height:30px}.exercise-head-left strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
