:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--bg);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);--surface-1: rgba(255, 255, 255, .04);--surface-2: rgba(255, 255, 255, .07);--veil: rgba(10, 10, 20, .45);--overlay: rgba(8, 6, 18, .6);--elev-bg: #16142a;--toast-bg: rgba(28, 25, 48, .97);--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;--dur-fast: .18s;--dur-med: .25s;--ease-out: cubic-bezier(.22, 1, .36, 1);--nav-bg: rgba(15, 13, 28, .78);--tooltip-bg: rgba(20, 18, 38, .97);--chip-text: #ede9fe;--danger-text: #fca5a5;--danger-bg: rgba(248, 113, 113, .08);--danger-border: rgba(248, 113, 113, .32);--status-normal-text: #bbf7d0;--status-normal-bg: rgba(52, 211, 153, .18);--status-normal-border: rgba(52, 211, 153, .32);--status-high-text: #fde68a;--status-high-bg: rgba(251, 146, 60, .18);--status-high-border: rgba(251, 146, 60, .32);--status-low-text: #bfdbfe;--status-low-bg: rgba(96, 165, 250, .18);--status-low-border: rgba(96, 165, 250, .32);--trend-up: #f9a8d4;--trend-down: #93c5fd;--chart-grid: rgba(255, 255, 255, .08);--chart-track: rgba(255, 255, 255, .08);--chart-ref-fill: rgba(52, 211, 153, .1);--chart-ref-stroke: rgba(52, 211, 153, .35)}:root[data-theme=light]{color-scheme:light;--bg: #f4f3fa;--panel-bg: rgba(255, 255, 255, .72);--panel-bg-strong: rgba(255, 255, 255, .92);--panel-border: rgba(27, 24, 48, .1);--panel-shadow: 0 14px 38px rgba(54, 40, 120, .1);--surface-1: rgba(27, 24, 48, .05);--surface-2: rgba(27, 24, 48, .08);--veil: rgba(244, 243, 250, .55);--overlay: rgba(35, 30, 70, .35);--elev-bg: #ffffff;--toast-bg: rgba(255, 255, 255, .97);--text: #1b1830;--text-muted: #5d5878;--text-faint: #8d88a6;--nav-bg: rgba(255, 255, 255, .82);--tooltip-bg: #ffffff;--chip-text: #5b21b6;--danger-text: #dc2626;--danger-bg: rgba(220, 38, 38, .07);--danger-border: rgba(220, 38, 38, .35);--status-normal-text: #047857;--status-normal-bg: rgba(5, 150, 105, .12);--status-normal-border: rgba(5, 150, 105, .3);--status-high-text: #b45309;--status-high-bg: rgba(217, 119, 6, .12);--status-high-border: rgba(217, 119, 6, .3);--status-low-text: #1d4ed8;--status-low-bg: rgba(37, 99, 235, .1);--status-low-border: rgba(37, 99, 235, .3);--trend-up: #db2777;--trend-down: #2563eb;--chart-grid: rgba(27, 24, 48, .12);--chart-track: rgba(27, 24, 48, .12);--chart-ref-fill: rgba(5, 150, 105, .14);--chart-ref-stroke: rgba(5, 150, 105, .4)}*{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}:root[data-theme=light] body{background:radial-gradient(ellipse 920px 620px at 12% -8%,rgba(139,92,246,.16),transparent 60%),radial-gradient(ellipse 760px 520px at 112% 8%,rgba(244,114,182,.1),transparent 55%),radial-gradient(ellipse 820px 720px at 88% 96%,rgba(99,102,241,.1),transparent 60%),var(--bg)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.5}input:where(: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:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease,box-shadow .15s ease}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23a0a0b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}textarea{min-height:92px;padding:12px;resize:vertical}input:where(: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:var(--elev-bg);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:var(--surface-1);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:var(--surface-2);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:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;font-weight:800;font-size:1.2rem;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)}.header-action-danger{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:transparent;border:1px solid rgba(239,68,68,.45);border-radius:var(--radius-sm);color:#ef4444d9;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:border-color .15s ease,color .15s ease,background .15s ease;flex-shrink:0}.header-action-danger:hover{border-color:#ef4444bf;color:#ef4444;background:#ef444414}.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:var(--surface-1);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,.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{display:grid;place-items:center;filter:drop-shadow(0 10px 28px rgba(139,92,246,.35))}.brand-wordmark{display:inline-flex;flex-direction:column;align-items:center;gap:4px;line-height:1}.brand-wordmark b{font-weight:900;letter-spacing:3px}.brand-wordmark small{font-size:.44em;font-weight:500;letter-spacing:4px;color:var(--text-muted)}.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:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);outline:none}.form-stack select{padding-right:36px}.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:var(--elev-bg);color:var(--text)}.segmented{display:inline-grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;margin:12px 0 18px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-pill)}.segmented.full{width:100%;margin:0}.segmented.three{grid-template-columns:repeat(3,1fr)}.meal-detail-photo{width:100%;max-height:220px;object-fit:cover;border-radius:var(--radius-sm)}.meal-detail-items{display:grid}.meal-detail-item{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--panel-border);color:var(--text-muted);font-size:.88rem}.meal-detail-grams{flex-shrink:0;color:var(--text-faint);font-variant-numeric:tabular-nums}.mini-label{display:block;color:var(--text-faint);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.meal-detail-actions{display:grid;gap:12px;margin-top:6px;padding-top:14px;border-top:1px solid var(--panel-border)}.meal-detail-periods{display:flex;flex-wrap:wrap;gap:8px}.add-record-section>.secondary-button{width:auto;align-self:flex-start;justify-self:start}.marker-card-grid>div>.marker-card,.protocol-card-list>div>.protocol-card,.assessment-flat-list>div>.assessment-row{width:100%;height:100%}.segmented button{min-width:56px;min-height:30px;padding:0 12px;color:var(--text-muted);background:transparent;font-size:.8rem}.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:var(--nav-bg);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}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.toast{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;color:var(--text);background:var(--toast-bg);border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow);animation:toast-in .22s var(--ease-out);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-tab-body{padding-top:20px;display:grid;gap: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}.tabs{display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--panel-border);gap:0;margin-bottom:4px}.page-top{position:sticky;top:-72px;z-index:30;margin:calc(-18px - env(safe-area-inset-top)) -16px 14px;padding:calc(18px + env(safe-area-inset-top)) 16px 0;background:var(--veil);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.page-top .page-header{min-height:38px;margin-bottom:16px}.page-top .tabs{margin-bottom:0}.tabs::-webkit-scrollbar{display:none}.tabs-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:10px 16px;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;min-height:0;font-weight:600;font-size:.9rem;color:var(--text-muted);white-space:nowrap;cursor:pointer}.tabs-btn--active{color:var(--text);border-bottom:2px solid;border-image:linear-gradient(90deg,var(--purple) 0%,var(--indigo) 100%) 1}.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:var(--surface-1);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:var(--surface-1);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:var(--surface-1);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:var(--surface-1);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:var(--surface-1)}.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:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit;font-weight:700}.select-input option{background:var(--elev-bg);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:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.list-button{color:var(--text)}.list-details{width:100%;background:var(--surface-1);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-section{display:grid;gap:10px}.protocol-list-title{margin:0;font-size:1rem}.flat-section{display:grid;gap:12px}.flat-section-title{margin:0;font-size:1rem}.protocol-card-list{display:grid;gap:12px}.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:var(--surface-1);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:var(--surface-1);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:var(--surface-1);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:var(--surface-2);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:var(--chip-text);background:#8b5cf638;border:1px solid rgba(139,92,246,.32);border-radius:var(--radius-pill);font-size:.86rem;font-weight:800}.chip.status-low{color:var(--status-low-text);background:var(--status-low-bg);border-color:var(--status-low-border)}.chip.status-high{color:var(--status-high-text);background:var(--status-high-bg);border-color:var(--status-high-border)}.chip.status-normal{color:var(--status-normal-text);background:var(--status-normal-bg);border-color:var(--status-normal-border)}.marker-card-grid{display:grid;grid-template-columns: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:var(--surface-1);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:var(--trend-up)}.trend-down{color:var(--trend-down)}.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:var(--tooltip-bg);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{min-width:0;display:grid;gap:5px;padding:12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.assessment-detail-grid>span{min-width:0;display:grid;gap:4px;padding:10px 0 2px;border-top:1px solid var(--panel-border)}.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:var(--surface-1);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:var(--surface-1);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:var(--surface-1);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:var(--chart-grid)}.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:var(--tooltip-bg)!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(auto-fill,minmax(232px,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}.tabs-btn 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:var(--toast-bg);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:var(--overlay);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:var(--elev-bg);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-x:hidden;overflow-y:auto;display:grid;gap:14px}.sheet-body label,.sheet-body .form-grid,.sheet-body .readonly-field{min-width:0}.sheet-body input,.sheet-body select,.sheet-body textarea,.sheet-body .readonly-field{box-sizing:border-box;width:100%;max-width:100%}.sheet-body .form-grid>label{overflow:hidden}.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}.checkbox-row input[type=checkbox]{-moz-appearance:auto;appearance:auto;-webkit-appearance:auto;width:18px;height:18px;min-height:0;flex:0 0 auto;padding:0;accent-color:var(--purple)}.save-meal-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:6px}@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:var(--surface-2);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:var(--toast-bg);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:var(--surface-2);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:var(--surface-2);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:var(--surface-2);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 var(--panel-border)}.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;min-height:30px;padding:0 12px;font-size:.8rem}.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:var(--surface-2);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:var(--surface-2);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:var(--surface-2);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}.duration-cell{display:flex;align-items:center;gap:8px}.duration-pause{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;border:1px solid var(--panel-border);background:var(--surface-2);color:var(--text)}.duration-paused{color:#fbbf24;animation:live-pulse 1.2s ease-in-out infinite}.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-complete{border-color:#34d39966;background:linear-gradient(#34d39914,#34d39908),var(--panel-bg)}.exercise-complete-icon{color:var(--green);margin-left:6px;vertical-align:-2px}.exercise-menu-wrap{position:relative}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:transparent;border:none}.context-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:31;min-width:200px;display:grid;padding:6px;background:var(--elev-bg);border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow)}.context-menu button{display:flex;align-items:center;gap:10px;padding:11px 12px;background:none;border:none;border-radius:8px;color:var(--text);font-size:.92rem;font-weight:600;text-align:left}.context-menu button:active{background:var(--surface-2)}.context-menu .danger{color:var(--red)}.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:var(--surface-2);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:var(--surface-2);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}.live-resume-pulse.paused{background:#fbbf24;animation:none}@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:var(--surface-2);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:var(--surface-2);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}.exams-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;margin-bottom:4px;color:#fde68a;background:#fb923c1f;border:1px solid rgba(251,146,60,.24);border-radius:var(--radius-sm);font-size:.86rem;line-height:1.45}.exams-banner a{flex-shrink:0;margin:0;color:var(--purple);font-weight:800;white-space:nowrap}.exams-stack{display:grid;gap:16px}.collection-selector.segmented{display:inline-flex;width:100%;margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch;grid-template-columns:none}.collection-selector.segmented{width:auto;max-width:100%}.collection-selector.segmented button{flex:0 0 auto;min-height:30px;min-width:0;padding:0 12px;font-weight:800;font-size:.8rem;white-space:nowrap}.collection-meta-block{display:grid;gap:10px}.collection-meta-block .exams-meta{margin:0}.collection-file-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.collection-file-label{color:var(--text-muted);font-size:.78rem;font-weight:800}.collection-file-actions{display:flex;flex-wrap:wrap;gap:8px}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.summary-card{display:flex;flex-direction:column;gap:4px;padding:12px 10px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.summary-card strong{font-size:1.4rem}.summary-card span{color:var(--text-muted);font-size:.74rem;font-weight:800}.summary-card.tone-normal strong{color:var(--green)}.summary-card.tone-high strong{color:var(--orange)}.summary-card.tone-low strong{color:var(--blue)}.filter-pills{display:flex;flex-wrap:wrap;gap:8px}.filter-pills button{min-height:30px;padding:0 12px;color:var(--text-muted);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-weight:800;font-size:.8rem}.filter-pills button.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.lab-group-list{display:grid;gap:16px}.lab-group{margin-top:0}.lab-group-heading{position:sticky;top:calc(40px + env(safe-area-inset-top));z-index:20;display:flex;align-items:center;gap:8px;width:calc(100% + 32px);box-sizing:border-box;min-height:48px;margin:0 -16px 10px;padding:0 16px;background:var(--veil);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:none;color:var(--text);text-align:left;cursor:pointer;font-size:.95rem}.lab-group-chevron{flex-shrink:0;color:var(--text-muted);transform:rotate(180deg);transition:transform .2s ease}.lab-group-chevron.collapsed{transform:rotate(0)}.lab-group-name{text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:800}.lab-group-count{color:var(--text-muted);font-size:.82rem;font-weight:800;font-variant-numeric:tabular-nums}.lab-group-rule{flex:1;height:1px;background:var(--panel-border)}.marker-card-status{position:absolute;top:12px;right:12px}.marker-card{position:relative}.marker-card-value{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.marker-card-value strong{font-size:1.3rem}.marker-card-value .marker-unit{color:var(--text-muted);font-size:.86rem;font-weight:700}.marker-card-sub,.marker-card-ref{color:var(--text-muted);font-size:.76rem;overflow-wrap:anywhere}.marker-compare{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--text-muted);font-size:.78rem;font-weight:700;flex-wrap:wrap}.marker-compare .compare-note{font-weight:600;font-style:italic}.marker-history-link{margin-top:auto;color:var(--purple);font-size:.76rem;font-weight:800}.period-selector{display:flex;gap:8px;margin-top:12px}.period-selector button{min-height:34px;padding:0 14px;color:var(--text-muted);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-weight:800}.period-selector button.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.period-count{margin:8px 0 0;color:var(--text-muted);font-size:.78rem;font-weight:700}.chart-note{margin:10px 0 0;color:var(--text-muted);font-size:.76rem;line-height:1.45}.exams-disclaimer{margin:6px 0 0;color:var(--text-muted);font-size:.76rem;line-height:1.45}.exams-section-label{display:block;margin-bottom:8px;color:var(--text-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.exams-meta{margin:12px 0 0;color:var(--text-muted);font-size:.82rem}.exams-meta strong{color:var(--text)}.exams-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 0 4px;font-size:.76rem;color:var(--text-muted)}.exams-legend span{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.legend-dot.dot-normal{background:var(--green)}.legend-dot.dot-high{background:var(--orange)}.legend-dot.dot-low{background:var(--blue)}.legend-hint{color:var(--purple);font-weight:700}.marker-card{border-left-width:3px}.marker-card.status-border-neutral{border-left-color:var(--panel-border)}.marker-card.status-border-normal{border-left-color:var(--green)}.marker-card.status-border-high{border-left-color:var(--orange)}.marker-card.status-border-low{border-left-color:var(--blue)}.marker-card-refline{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:4px;padding-top:8px;border-top:1px solid var(--panel-border)}.marker-card-reflabel{color:var(--text-muted);font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.marker-card-refvalue{color:var(--text-muted);font-size:.78rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right}.marker-compare .compare-date{font-weight:800}.marker-history-link{display:inline-flex;align-items:center;gap:5px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:overlay-fade .18s ease}.modal-box{width:min(760px,100%);max-height:90vh;display:flex;flex-direction:column;background:var(--elev-bg);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);animation:pop-in .2s ease}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 0}.modal-title h2{margin:0;overflow-wrap:anywhere}.modal-subtitle{display:block;margin-top:4px;color:var(--text-muted);font-size:.82rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.modal-body{padding:16px 18px 20px;overflow-y:auto}.modal-body .period-selector{margin-top:0;margin-bottom:12px}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;color:var(--text-muted);font-size:.76rem}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.legend-swatch{width:14px;height:10px;border-radius:3px;flex-shrink:0}.legend-swatch.legend-ref{background:#34d39947}.legend-swatch.legend-result{height:3px;border-radius:2px;background:var(--purple)}.modal-table{display:flex;flex-direction:column;margin-top:14px}.modal-table-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--panel-border);font-size:.85rem}.modal-table-row:last-child{border-bottom:0}.modal-table-date{flex:0 0 auto;min-width:84px;color:var(--text-muted);font-variant-numeric:tabular-nums}.modal-table-value{flex:1;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.modal-table-status{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:800}.modal-table-status:before{content:"";width:9px;height:9px;border-radius:50%;flex-shrink:0}.modal-table-status.status-dot-normal{color:var(--green)}.modal-table-status.status-dot-high{color:var(--orange)}.modal-table-status.status-dot-low{color:var(--blue)}.modal-table-status.status-dot-normal:before{background:var(--green)}.modal-table-status.status-dot-high:before{background:var(--orange)}.modal-table-status.status-dot-low:before{background:var(--blue)}.modal-table-status:not([class*=status-dot-]):before{display:none}.add-record-section{margin-top:14px;display:grid;gap:14px}.add-record-title{margin:0;font-size:1.08rem;color:var(--text)}.add-record-method{margin:0 0 4px;font-size:.95rem}.add-record-section .upload-cta{padding:14px;background:#8b5cf614;border:1px solid rgba(139,92,246,.22);border-radius:var(--radius-sm)}.add-record-section>.secondary-button{width:100%}.add-record-section .manual-entry{padding-top:16px;border-top:1px solid var(--panel-border)}.assessment-flat-list{display:grid}.assessment-row{border-top:1px solid var(--panel-border)}.assessment-row:first-child{border-top:0}.assessment-row-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;cursor:pointer;list-style:none}.assessment-row-summary::-webkit-details-marker{display:none}.assessment-row-head{display:flex;flex-direction:column;gap:4px;min-width:0}.assessment-row-head strong{overflow-wrap:anywhere}.assessment-row-head span{color:var(--text-muted);font-size:.82rem}.assessment-row-chevron{flex-shrink:0;color:var(--text-muted);transition:transform .2s ease}.assessment-row[open] .assessment-row-chevron{transform:rotate(180deg)}.assessment-row-body{display:grid;gap:12px;padding:0 0 16px}.protocol-card{padding:0;overflow:hidden}.protocol-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px;background:none;border:none;text-align:left;color:var(--text);cursor:pointer;width:100%}.protocol-card-head .protocol-title{display:flex;flex-direction:column;gap:4px;min-width:0}.protocol-card-head .protocol-title strong{font-size:1.05rem;overflow-wrap:anywhere}.protocol-period{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.82rem;font-weight:700}.protocol-badge-active{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;color:#fff;background:linear-gradient(135deg,var(--green) 0%,var(--indigo) 100%);border-radius:var(--radius-pill);font-size:.72rem;font-weight:800}.protocol-card-notes{color:var(--text-muted);font-size:.82rem;overflow-wrap:anywhere}.protocol-card-head .chevron{flex-shrink:0;color:var(--text-muted);transition:transform .2s ease}.protocol-card-head .chevron.open{transform:rotate(180deg)}.protocol-card-body{padding:0 16px 16px;display:grid;gap:16px}.protocol-section-title{margin:0 0 8px;color:var(--text-muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.compound-flat-list{display:grid}.compound-flat{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--panel-border)}.compound-flat:first-child{border-top:none}.compound-flat strong{font-size:.95rem;overflow-wrap:anywhere}.compound-flat span{flex-shrink:0;color:var(--text-muted);font-size:.84rem;text-align:right}.application-timeline{display:grid;gap:0}.application-item{position:relative;display:flex;gap:14px;padding:0 0 16px 4px}.application-item:last-child{padding-bottom:0}.application-dot{position:relative;flex-shrink:0;width:12px;display:flex;justify-content:center}.application-dot:before{content:"";width:10px;height:10px;margin-top:4px;border-radius:50%;background:var(--purple);z-index:1}.application-dot:after{content:"";position:absolute;top:12px;bottom:-2px;width:2px;background:var(--panel-border)}.application-item:last-child .application-dot:after{display:none}.application-body{display:grid;gap:3px;min-width:0}.application-body strong{font-size:.92rem;overflow-wrap:anywhere}.application-body .application-when,.application-body .application-site{color:var(--text-muted);font-size:.8rem}.application-body .application-notes{color:var(--text-muted);font-size:.8rem;overflow-wrap:anywhere}.protocol-card-actions{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--panel-border);padding-top:14px}.compact-button{min-height:36px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text);background:var(--panel-bg-strong);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-weight:800;font-size:.84rem;font-family:inherit;text-decoration:none}.compact-button:disabled{opacity:.5}.compact-button.danger{color:var(--danger-text);border-color:var(--danger-border);background:var(--danger-bg)}@media(max-width:520px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
