:root{--bg:#050506;--panel:#07070924;--panel-strong:#07070938;--panel-accent:#23080a2e;--summary-panel:#14070933;--panel-blur:2px;--scene-opacity:.92;--panel-text-shadow:0 1px 2px #000000f2, 0 2px 8px #0000008c;--surface:#ffffff09;--surface-hover:#e5232a14;--input:#03030494;--text:#f6f4f4;--muted:#d2cccd;--border:#ffffff1a;--border-strong:#ffffff29;--accent:#e5232a;--accent-bright:#ff474d;--accent-deep:#7e0f14;--focus:#e5232a47;--danger:#ff676c;--danger-bg:#e5232a1f;--shadow:0 12px 32px #00000038, inset 0 1px 0 #ffffff0b;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", ui-monospace, monospace;color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--sans);letter-spacing:0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;min-height:100svh;margin:0}#root{min-height:100svh}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2{color:var(--text);letter-spacing:0;font-weight:750;line-height:1.15}h1{font-size:clamp(30px,6vw,48px)}h2{margin:0;font-size:18px}.scene-backdrop{z-index:0;pointer-events:none;background:#050506;position:fixed;inset:0;overflow:hidden}.scene-backdrop:after{content:"";background:linear-gradient(#03030438,#0303046b),radial-gradient(circle at 50% 18%,#0000 0,#00000024 72%);position:absolute;inset:0}.scene{opacity:0;filter:brightness(1.1)saturate(.9)contrast(1.03);will-change:opacity;background-position:50%;background-size:cover;animation-duration:36s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;inset:-3%;transform:scale(1.035)}.scene-gym{background-image:url(/assets/scene-gym-Z0Sm25zI.jpg);animation-name:scene-gym-crossfade}.scene-track{background-image:url(/assets/scene-track-Bsu5HGbF.jpg);animation-name:scene-track-crossfade}.scene-court{background-image:url(/assets/scene-court-CtD52IX5.jpg);animation-name:scene-court-crossfade}@keyframes scene-gym-crossfade{0%,25%{opacity:var(--scene-opacity)}33.333%,91.667%{opacity:0}to{opacity:var(--scene-opacity)}}@keyframes scene-track-crossfade{0%,25%{opacity:0}33.333%,58.333%{opacity:var(--scene-opacity)}66.667%,to{opacity:0}}@keyframes scene-court-crossfade{0%,58.333%{opacity:0}66.667%,91.667%{opacity:var(--scene-opacity)}to{opacity:0}}.app-shell{z-index:1;width:min(1180px,100%);margin:0 auto;padding:20px;position:relative}.app-header{text-shadow:var(--panel-text-shadow);gap:18px;padding:22px 0 26px;display:grid}.brand-block h1{text-wrap:balance;margin:5px 0 0}.brand-block p{max-width:580px;color:var(--muted);margin:12px 0 0;font-size:14px}.date-picker,label{gap:8px;display:grid}.date-picker{border:1px solid var(--border);background:var(--panel-strong);min-width:0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--panel-blur));backdrop-filter:blur(var(--panel-blur));border-radius:10px;align-self:end;padding:12px}.date-picker span,label span{color:var(--muted);letter-spacing:.04em;font-size:12px;font-weight:700}.app-layout{gap:16px;min-width:0;display:grid}.storage-notice{background:var(--danger-bg);color:var(--danger);box-shadow:var(--shadow);border:1px solid #ff676c85;border-radius:8px;margin:0 0 16px;padding:11px 13px;font-size:13px}.natural-log-panel{background:linear-gradient(145deg, var(--panel-accent), var(--panel-strong));border-color:#e5232a6b;margin-bottom:16px;position:relative;overflow:hidden}.natural-log-panel:before{content:"";filter:blur(42px);pointer-events:none;background:#e5232a17;border-radius:50%;width:180px;height:180px;position:absolute;top:-115px;right:-55px}.ai-panel-heading,.natural-log-input,.natural-log-meta,.natural-log-submit,.ai-status-region,.ai-draft-review{position:relative}.natural-log-input textarea{min-height:132px;line-height:1.65}.ai-target-date{color:var(--text);font-family:var(--mono);margin:8px 0 0;font-size:12px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.natural-log-meta{color:var(--muted);justify-content:space-between;align-items:start;gap:16px;margin-top:9px;font-size:11px;display:flex}.natural-log-meta p{max-width:700px;margin:0}.natural-log-meta span{font-family:var(--mono);flex:none}.natural-log-submit{width:100%;margin-top:13px}button:disabled{cursor:not-allowed;filter:grayscale(.3);opacity:.48;transform:none!important}.ai-status-region:empty{display:none}.ai-inline-error,.ai-inline-success{border-radius:7px;margin:12px 0 0;padding:10px 12px;font-size:13px}.ai-inline-error{background:var(--danger-bg);color:var(--danger);border:1px solid #ff676c59}.ai-inline-success{color:var(--text);background:#ffffff0b;border:1px solid #ffffff21}.ai-draft-review{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.ai-review-heading,.ai-food-heading,.ai-food-card-heading,.ai-review-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-review-heading h3,.ai-food-heading h4{color:var(--text);margin:4px 0 0}.ai-review-heading h3{font-size:20px}.ai-date-chip,.confidence-badge,.unestimated-badge{border:1px solid var(--border);color:var(--muted);font-family:var(--mono);background:#ffffff0b;border-radius:999px;flex:none;padding:5px 9px;font-size:10px;font-weight:800}.unestimated-badge{color:#ffb1b4;border-color:#e5232a66}.ai-scalar-grid,.ai-food-fields{gap:10px;display:grid}.ai-scalar-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:15px}.ai-conflict-choice{border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;gap:8px 16px;margin:10px 0 0;padding:10px 12px 12px;display:flex}.ai-conflict-choice legend{color:var(--muted);padding:0 5px;font-size:12px}.ai-conflict-choice label{color:var(--text);grid-template-columns:auto 1fr;align-items:center;gap:7px;font-size:12px;display:flex}.ai-conflict-choice input{width:auto;accent-color:var(--accent);margin:0}.ai-training-field{margin-top:14px}.ai-food-heading{align-items:end;margin-top:20px}.ai-food-heading p{color:var(--muted);margin:4px 0 0;font-size:12px}.secondary-button,.danger-button{border:1px solid var(--border-strong);min-height:38px;color:var(--text);background:#ffffff0d;border-radius:7px;padding:8px 12px;font-size:12px;font-weight:800;transition:background .18s,border-color .18s,transform .16s}.secondary-button:hover{background:#e5232a1a;border-color:#e5232a73}.danger-button{color:var(--danger)}.secondary-button:active,.danger-button:active{transform:scale(.975)}.secondary-button:focus-visible,.danger-button:focus-visible,.natural-log-submit:focus-visible,.ai-review-actions .primary-button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.ai-food-drafts{gap:10px;margin-top:11px;display:grid}.ai-food-draft{border:1px solid var(--border);background:#ffffff06;border-radius:9px;padding:12px}.ai-food-card-heading strong{font-size:13px}.confidence-high{color:var(--text);border-color:#ffffff38}.confidence-medium{color:#ffb1b4;border-color:#e5232a61}.confidence-low{color:var(--danger);border-color:#ff676c80}.ai-food-fields{margin-top:11px}.ai-food-fields small{color:var(--muted);font-size:10px}.ai-food-draft>.danger-button{width:100%;margin-top:10px}.ai-unestimated-heading{border-top:1px solid var(--border);padding-top:18px}.ai-unestimated-draft{background:#e5232a0a;border-color:#e5232a40}.ai-unknowns,.ai-feedback{border:1px solid var(--border);color:var(--muted);background:#ffffff06;border-radius:8px;margin-top:13px;padding:11px 12px;font-size:12px}.ai-unknowns strong{color:var(--text)}.ai-unknowns ul{gap:5px;margin:7px 0 0;padding-left:18px;display:grid}.ai-feedback{color:var(--text)}.ai-review-actions{justify-content:flex-end;margin-top:16px}.ai-review-actions button{min-width:112px}.primary-column,.side-column{align-content:start;gap:16px;min-width:0;display:grid}.panel{border:1px solid var(--border);background:var(--panel);min-width:0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--panel-blur));backdrop-filter:blur(var(--panel-blur));text-shadow:var(--panel-text-shadow);border-radius:12px;padding:17px;transition:border-color .22s,box-shadow .22s,transform .22s cubic-bezier(.2,.8,.2,1)}.panel :where(input,textarea,select),.date-picker input{text-shadow:none}.section-heading{gap:5px;margin-bottom:15px;display:grid}.section-description{max-width:650px;color:var(--muted);margin:6px 0 0;font-size:14px}.eyebrow{color:var(--accent-bright);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.knowledge-panel{background:linear-gradient(130deg, var(--panel-accent), var(--panel-strong) 48%);border-color:#e5232a57;margin-bottom:16px;padding:22px;position:relative;overflow:hidden}.knowledge-panel:before{content:"";filter:blur(48px);pointer-events:none;background:#e5232a17;border-radius:50%;width:240px;height:240px;position:absolute;top:-150px;right:-80px}.knowledge-panel .section-heading{margin-bottom:22px;position:relative}.knowledge-panel h2{font-size:clamp(24px,4vw,36px)}.knowledge-heading-row,.course-view-header,.knowledge-overview-group-heading{justify-content:space-between;align-items:flex-start;gap:18px;min-width:0;display:flex;position:relative}.knowledge-heading-row>div,.knowledge-overview-header>div{min-width:0}.course-text-button{color:var(--text);background:#ffffff09;border:1px solid #ffffff26;border-radius:7px;flex:none;padding:9px 12px;font-size:12px;font-weight:800;transition:color .18s,border-color .18s,background .18s,transform .16s}.knowledge-grid{gap:10px;min-width:0;display:grid;position:relative}.knowledge-card{border:1px solid var(--border);background:#ffffff06;border-radius:9px;min-width:0;min-height:100%;padding:16px;transition:background .22s,border-color .22s,transform .22s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}.course-module-card{width:100%;color:inherit;text-align:left;flex-direction:column;align-items:stretch;display:flex}.knowledge-index{color:var(--accent-bright);font-family:var(--mono);margin-bottom:24px;font-size:11px;font-weight:800;display:block}.knowledge-card h3{color:var(--text);margin:0;font-size:17px}.course-module-card p{color:var(--muted);margin:12px 0 24px;font-size:13px;line-height:1.65}.course-module-meta{color:var(--accent-bright);font-family:var(--mono);letter-spacing:.06em;justify-content:space-between;align-items:center;margin-top:auto;font-size:11px;font-weight:800;display:flex}.course-module-meta b{font-size:18px;line-height:1}.course-lesson-view,.knowledge-overview{min-width:0;position:relative}.course-view-header{align-items:center;margin-bottom:13px}.course-position{min-width:0;color:var(--muted);font-family:var(--mono);text-align:right;font-size:11px;font-weight:700}.course-progress{width:100%;height:4px;accent-color:var(--accent-bright);background:#ffffff14;border:0;border-radius:999px;display:block;overflow:hidden}.course-progress::-webkit-progress-bar{background:#ffffff14;border-radius:999px}.course-progress::-webkit-progress-value{background:linear-gradient(90deg, var(--accent-bright), var(--accent-deep));border-radius:999px;transition:width .28s}.course-progress::-moz-progress-bar{background:linear-gradient(90deg, var(--accent-bright), var(--accent-deep));border-radius:999px}.course-lesson-card{background:linear-gradient(140deg,#e5232a1c,#0000 44%),#05050791;border:1px solid #e5232a59;border-radius:10px;min-width:0;margin-top:13px;padding:clamp(20px,5vw,36px);animation:.26s cubic-bezier(.2,.8,.2,1) course-card-enter}@keyframes course-card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.course-lesson-card h2{max-width:820px;margin:11px 0 0;font-size:clamp(25px,5vw,42px);line-height:1.12}.course-lesson-summary{color:#ffffffd6;max-width:800px;margin:17px 0 0;font-size:clamp(16px,2.2vw,19px);line-height:1.7}.course-lesson-card ul{gap:11px;max-width:820px;margin:22px 0 0;padding:0;list-style:none;display:grid}.course-lesson-card li{color:var(--muted);padding-left:18px;font-size:14px;line-height:1.7;position:relative}.course-lesson-card li:before{content:"";background:var(--accent-bright);border-radius:50%;width:5px;height:5px;position:absolute;top:.72em;left:0;box-shadow:0 0 10px #e5232a8c}.course-takeaway{border-left:3px solid var(--accent-bright);background:#e5232a17;border-radius:0 8px 8px 0;gap:7px;max-width:820px;margin-top:24px;padding:14px 16px;display:grid}.course-takeaway span{color:var(--accent-bright);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.course-takeaway strong{color:var(--text);font-size:15px;line-height:1.55}.course-actions{grid-template-columns:minmax(120px,.45fr) minmax(0,1fr);gap:10px;margin-top:13px;display:grid}.course-actions button{min-width:0;min-height:48px;padding:10px 14px}.course-skip-button{color:var(--muted);background:#ffffff0a;border:1px solid #ffffff26;border-radius:8px;font-size:13px;font-weight:700;line-height:1.35;transition:color .18s,border-color .18s,background .18s,transform .16s}.knowledge-overview-header{align-items:flex-start;margin-bottom:26px}.knowledge-overview-header h2{margin-top:5px}.knowledge-overview-groups{gap:28px;display:grid}.knowledge-overview-group{border-top:1px solid #e5232a4d;min-width:0;padding-top:18px}.knowledge-overview-group-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:5px 16px;margin-bottom:12px;display:grid}.knowledge-overview-group-heading .knowledge-index{grid-column:1;margin:0}.knowledge-overview-group-heading h3{color:var(--text);grid-column:1;margin:0;font-size:20px}.knowledge-overview-group-heading button{color:var(--accent-bright);background:#e5232a12;border:1px solid #e5232a52;border-radius:6px;grid-area:1/2/span 2;align-self:center;padding:8px 10px;font-size:11px;font-weight:800}.knowledge-overview-grid{gap:9px;min-width:0;display:grid}.knowledge-overview-card{border:1px solid var(--border);background:#ffffff06;border-radius:8px;min-width:0;padding:15px}.knowledge-overview-card h4{color:var(--text);margin:0;font-size:15px}.knowledge-overview-card p{color:var(--muted);margin:9px 0 12px;font-size:12px;line-height:1.6}.knowledge-overview-card strong{color:#fffc;border-top:1px solid #ffffff14;padding-top:10px;font-size:12px;line-height:1.55;display:block}.course-disclaimer{border-top:1px solid var(--border);color:var(--muted);margin:24px 0 0;padding-top:14px;font-size:11px;line-height:1.65}.course-text-button:hover,.course-skip-button:hover,.knowledge-overview-group-heading button:hover{color:var(--text);background:#e5232a1a;border-color:#e5232a80}.course-text-button:active,.course-skip-button:active,.knowledge-overview-group-heading button:active{transform:scale(.975)}.course-text-button:focus-visible,.course-module-card:focus-visible,.course-skip-button:focus-visible,.knowledge-overview-group-heading button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.period-summary-panel{background:linear-gradient(145deg, var(--panel-accent), var(--panel-strong) 52%);border-color:#e5232a47;margin-bottom:16px;position:relative;overflow:hidden}.period-summary-panel:before{content:"";filter:blur(52px);pointer-events:none;background:#e5232a12;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-150px;right:-140px}.period-summary-panel>*{position:relative}.period-summary-heading,.period-ai-heading{justify-content:space-between;align-items:flex-start;gap:18px;min-width:0;display:flex}.period-summary-heading>div:first-child,.period-ai-heading>div{min-width:0}.period-range-tabs{border:1px solid var(--border);background:#0000003d;border-radius:8px;flex:none;gap:5px;padding:4px;display:flex}.period-range-tabs button{color:var(--muted);background:0 0;border:1px solid #0000;border-radius:5px;padding:7px 9px;font-size:11px;font-weight:800;transition:color .18s,border-color .18s,background .18s,transform .16s}.period-range-tabs button[aria-pressed=true]{color:var(--text);background:#e5232a21;border-color:#e5232a61}.period-range-tabs button:hover{color:var(--text)}.period-range-tabs button:active{transform:scale(.97)}.period-range-tabs button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.period-custom-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.period-range-line{border:1px solid var(--border);color:var(--text);font-family:var(--mono);background:#0003;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;font-size:11px;display:flex}.period-range-line b{color:var(--accent-bright)}.period-range-line small{color:var(--muted);margin-left:auto;font-family:inherit}.period-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.period-metric-grid article,.period-nutrition-strip>div{border:1px solid var(--border);background:#ffffff06;border-radius:8px;min-width:0}.period-metric-grid article{padding:14px 12px}.period-metric-grid span,.period-metric-grid small,.period-nutrition-strip span{color:var(--muted);font-size:10px;display:block}.period-metric-grid strong{overflow-wrap:anywhere;color:var(--text);font-family:var(--mono);margin:7px 0 5px;font-size:clamp(18px,3vw,24px);line-height:1.1;display:block}.period-nutrition-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.period-nutrition-strip>div{padding:11px 12px}.period-nutrition-strip strong{color:#ffffffd6;font-family:var(--mono);margin-top:5px;font-size:12px;line-height:1.45;display:block}.period-data-notes{background:#e5232a0b;border:1px solid #e5232a3d;border-radius:8px;margin-top:12px;padding:12px}.period-data-notes>strong{color:var(--text);font-size:12px}.period-data-notes ul{gap:5px;margin:7px 0 0;padding-left:17px;display:grid}.period-data-notes li{color:var(--muted);font-size:11px;line-height:1.55}.period-ai-block{border-top:1px solid #e5232a4d;margin-top:18px;padding-top:18px}.period-ai-heading{align-items:center}.period-ai-heading h3{color:var(--text);margin:4px 0 0;font-size:20px}.period-ai-heading .primary-button{min-width:150px;min-height:42px;padding:9px 14px}.period-ai-privacy{color:var(--muted);margin:9px 0 0;font-size:10px;line-height:1.55}.period-ai-empty{margin-top:13px}.period-ai-result{background:linear-gradient(135deg,#e5232a17,#0000 52%),#0000003d;border:1px solid #e5232a52;border-radius:9px;margin-top:14px;padding:clamp(15px,3vw,22px);animation:.26s cubic-bezier(.2,.8,.2,1) course-card-enter}.period-ai-result h4{color:var(--text);margin:0;font-size:18px;line-height:1.4}.period-ai-result ul{gap:7px;margin:13px 0 0;padding-left:18px;display:grid}.period-ai-result li,.period-ai-result>p{color:var(--muted);font-size:12px;line-height:1.65}.period-ai-focus{border-left:3px solid var(--accent-bright);background:#e5232a13;gap:5px;margin-top:14px;padding:10px 12px;display:grid}.period-ai-focus span{color:var(--accent-bright);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.period-ai-focus strong{color:var(--text);font-size:13px;line-height:1.55}.period-ai-result>p{border-top:1px solid var(--border);margin:12px 0 0;padding-top:10px;font-size:10px}.summary-panel{background:var(--summary-panel);border-top-color:#e5232a94}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.summary-grid div{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;padding:13px 11px}.summary-grid span,.summary-grid small{color:var(--muted);font-size:11px;display:block}.summary-grid strong{color:var(--text);font-family:var(--mono);margin:5px 0;font-size:22px;line-height:1.1;display:block}.summary-grid div:last-child strong{color:var(--accent-bright)}.summary-incomplete-note{color:#ffb1b4;background:#e5232a12;border:1px solid #e5232a4d;border-radius:7px;margin:12px 0 0;padding:9px 11px;font-size:11px;line-height:1.55}.reason-list{gap:7px;margin:15px 0 0;padding:0;list-style:none;display:grid}.reason-list li{color:var(--muted);font-size:13px}.reason-list li:before{content:"—";color:var(--accent);margin-right:7px}.field-grid,.food-form{gap:12px;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.stacked-field{margin-top:4px}input,textarea,select,button{font:inherit}input,textarea,select{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--input);width:100%;min-width:0;color:var(--text);border-radius:8px;outline:none;padding:11px 12px;transition:border-color .18s,background .18s,box-shadow .18s}textarea{resize:vertical}input:hover,textarea:hover,select:hover{border-color:#ffffff3d}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus);background:#080405e6}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 17px),calc(100% - 12px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:34px}button{cursor:pointer;-webkit-tap-highlight-color:transparent;border:0}.primary-button{background:linear-gradient(135deg, var(--accent-bright), var(--accent-deep));color:#fff;border-radius:8px;min-height:45px;font-weight:800;transition:filter .18s,box-shadow .18s,transform .16s;box-shadow:0 8px 24px #e5232a33}.primary-button:hover{filter:brightness(1.12);transform:translateY(-1px);box-shadow:0 10px 30px #e5232a4d}.primary-button:active,.food-list button:active,.unestimated-meal-list button:active,.history-list button:active{transform:scale(.975)}.primary-button:focus-visible,.food-list button:focus-visible,.unestimated-meal-list button:focus-visible,.history-list button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.food-list,.history-list{margin:15px 0 0;padding:0;list-style:none}.food-list{gap:8px;display:grid}.food-list li{border:1px solid var(--border);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;transition:border-color .18s,background .18s;display:flex}.food-list strong,.food-list span{display:block}.food-list strong{color:var(--text);font-size:15px}.food-list span{color:var(--muted);font-size:13px}.food-list button{background:var(--danger-bg);color:var(--danger);border:1px solid #ff676c2e;border-radius:6px;flex:none;padding:8px 10px;font-size:12px;font-weight:800;transition:background .18s,transform .16s}.unestimated-meals{border-top:1px solid #e5232a45;margin-top:18px;padding-top:15px}.unestimated-meals-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.unestimated-meals-heading h3{color:var(--text);margin:0;font-size:15px}.unestimated-meals-heading span{color:var(--accent-bright);font-family:var(--mono);border:1px solid #e5232a4d;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800}.unestimated-meals>p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.55}.unestimated-meal-list{gap:8px;margin:11px 0 0;padding:0;list-style:none;display:grid}.unestimated-meal-list li{background:#e5232a0b;border:1px solid #e5232a3d;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.unestimated-meal-list li>div{min-width:0}.unestimated-meal-list strong,.unestimated-meal-list span{overflow-wrap:anywhere;display:block}.unestimated-meal-list strong{color:var(--text);font-size:13px;line-height:1.5}.unestimated-meal-list span{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.5}.unestimated-meal-list button{background:var(--danger-bg);color:var(--danger);border:1px solid #ff676c2e;border-radius:6px;flex:none;padding:8px 10px;font-size:12px;font-weight:800;transition:background .18s,transform .16s}.history-list{gap:8px;display:grid}.history-list button{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);text-align:left;border-radius:8px;gap:8px;padding:12px;transition:background .18s,border-color .18s,box-shadow .18s,transform .16s;display:grid}.history-list button:hover,.food-list li:hover,.unestimated-meal-list li:hover{background:var(--surface-hover);border-color:#e5232a66}.history-list button.active{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent);background:#e5232a1c}.history-list button>span{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-list strong{font-family:var(--mono);font-size:13px}.history-list small,.history-list button>span:last-child{color:var(--muted);font-size:12px}.empty-state{color:var(--muted);margin:0;font-size:14px}.template-import{overflow-wrap:anywhere}.profile-onboarding,.profile-summary-card,.profile-entry-card{background:linear-gradient(145deg, var(--panel-accent), var(--panel-strong));border-color:#e5232a5c;margin-bottom:16px;position:relative}.profile-onboarding{overflow:hidden}.profile-onboarding:before{content:"";filter:blur(48px);pointer-events:none;background:#e5232a14;border-radius:50%;width:220px;height:220px;position:absolute;top:-145px;right:-90px}.profile-onboarding>*{position:relative}.profile-natural-input{gap:7px;display:grid}.profile-natural-input textarea{min-height:170px;line-height:1.65}.profile-input-meta,.profile-summary-heading,.profile-estimate-heading,.profile-card-footer,.profile-entry-card{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;display:flex}.profile-input-meta{color:var(--muted);margin-top:9px;font-size:11px}.profile-input-meta p{max-width:700px;margin:0}.profile-input-meta span{font-family:var(--mono);flex:none}.profile-intro-actions,.profile-step-actions,.profile-review-actions{align-items:center;gap:10px;margin-top:17px;display:flex}.profile-intro-actions .primary-button,.profile-step-actions .primary-button,.profile-review-actions .primary-button,.profile-intro-actions .secondary-button,.profile-step-actions .secondary-button,.profile-review-actions .secondary-button{padding-inline:18px}.profile-progress-line{color:var(--muted);font-family:var(--mono);justify-content:space-between;align-items:center;font-size:11px;display:flex}.profile-question-step progress{background:#ffffff14;border:0;border-radius:999px;width:100%;height:4px;margin:8px 0 22px;overflow:hidden}.profile-question-step progress::-webkit-progress-bar{background:#ffffff14}.profile-question-step progress::-webkit-progress-value{background:linear-gradient(90deg, var(--accent-bright), var(--accent-deep))}.profile-question-step progress::-moz-progress-bar{background:linear-gradient(90deg, var(--accent-bright), var(--accent-deep))}.profile-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.profile-option-grid button{border:1px solid var(--border-strong);min-height:48px;color:var(--text);text-align:left;background:#ffffff09;border-radius:8px;padding:10px 12px;font-weight:700;transition:border-color .18s,background .18s,transform .16s}.profile-option-grid button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent);background:#e5232a24}.profile-option-grid button:hover{border-color:#e5232a80}.profile-unit-input,.profile-health-question,.profile-health-question>label{gap:8px;display:grid}.profile-unit-input{max-width:420px}.profile-unit-input>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.profile-unit-input b{min-width:52px;color:var(--muted);font-family:var(--mono);font-size:12px}.profile-compound-input,.profile-review-grid,.profile-review-text-grid,.profile-estimate-grid{grid-template-columns:1fr;gap:12px;display:grid}.profile-compound-input label,.profile-review-grid label,.profile-review-text-grid label,.profile-estimate-grid label{gap:7px;min-width:0;display:grid}.profile-review-grid small{color:var(--muted);font-size:10px;line-height:1.45}.profile-review-text-grid{margin-top:15px}.profile-estimate-editor{background:#e5232a0b;border:1px solid #e5232a47;border-radius:9px;margin-top:17px;padding:14px}.profile-estimate-heading h3,.profile-estimate-heading p{margin:0}.profile-estimate-heading h3{font-size:15px}.profile-estimate-heading p{color:var(--muted);margin-top:4px;font-size:11px}.profile-estimate-grid{margin-top:14px}.profile-incomplete-note,.profile-missing-note,.profile-bmi-note,.profile-weight-source{color:var(--muted);font-size:12px;line-height:1.55}.profile-field-error{border-left:2px solid var(--danger);color:#ffb1b4;margin:12px 0 0;padding-left:10px;font-size:12px;line-height:1.5}.profile-onboarding :where(input,select,textarea)[aria-invalid=true]{border-color:#ff676cbf;box-shadow:0 0 0 2px #e5232a24}.profile-incomplete-note,.profile-missing-note{border-left:2px solid var(--accent);padding-left:10px}.profile-unknowns{color:var(--muted);margin-top:14px;font-size:12px}.profile-unknowns ul{margin:7px 0 0;padding-left:18px}.profile-summary-heading{align-items:center}.profile-summary-heading h2,.profile-entry-card h2{margin:3px 0 0}.profile-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px;display:grid}.profile-summary-grid>div{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;padding:11px}.profile-summary-grid span,.profile-summary-grid strong{display:block}.profile-summary-grid span{color:var(--muted);font-size:10px}.profile-summary-grid strong{color:var(--text);font-family:var(--mono);margin-top:5px;font-size:14px}.profile-weight-source{margin:12px 0 0}.profile-bmi-note,.profile-missing-note{margin:7px 0 0}.profile-cautions{background:#ffffff06;border:1px solid #ffffff21;border-radius:8px;margin-top:12px;padding:10px 12px}.profile-cautions p{color:var(--muted);margin:0;font-size:11px}.profile-cautions p+p{margin-top:4px}.profile-card-footer{border-top:1px solid var(--border);align-items:center;margin-top:15px;padding-top:12px}.profile-card-footer>small{color:var(--muted);font-family:var(--mono);font-size:10px}.profile-clear-confirm{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.profile-clear-confirm p{color:var(--muted);text-align:right;flex-basis:100%;margin:0;font-size:11px}.profile-entry-card{align-items:center}.profile-entry-card p{color:var(--muted);margin:6px 0 0;font-size:13px}.profile-entry-card .secondary-button,.profile-summary-heading .secondary-button,.profile-estimate-heading button,.profile-clear-confirm button{flex:none;min-height:38px;padding-inline:13px}.profile-onboarding :where(button,input,textarea,select):focus-visible,.profile-summary-card :where(button,input,textarea,select):focus-visible,.profile-entry-card button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media (hover:hover){.panel:not(.knowledge-panel):hover{border-color:#ffffff29;transform:translateY(-2px)}.course-module-card:hover{background:#e5232a13;border-color:#e5232a80;transform:translateY(-3px)}.knowledge-overview-card:hover{border-color:#e5232a59}}@media (width>=720px){.app-shell{padding:28px}.app-header{grid-template-columns:minmax(0,1fr) 220px;align-items:end;padding:36px 0 30px}.panel{padding:19px}.knowledge-panel{padding:28px}.knowledge-grid,.knowledge-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.period-metric-grid,.period-nutrition-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.food-form{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,.8fr) 88px;align-items:end}.ai-food-fields,.profile-compound-input,.profile-review-grid,.profile-review-text-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-notes-field,.profile-estimate-basis{grid-column:1/-1}.profile-estimate-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=880px){.app-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start}.side-column{position:sticky;top:20px}}@media (width>=1040px){.knowledge-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.knowledge-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=420px){.app-shell{padding:14px}.summary-grid{gap:6px}.summary-grid div{padding:11px 8px}.summary-grid strong{font-size:19px}.field-grid{grid-template-columns:1fr}.period-summary-heading,.period-ai-heading{flex-direction:column;align-items:stretch}.period-range-tabs{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.period-range-tabs button{min-width:0;padding-inline:4px}.period-custom-range,.period-metric-grid,.period-nutrition-strip{grid-template-columns:1fr}.period-ai-heading .primary-button{width:100%}.knowledge-heading-row,.course-view-header,.knowledge-overview-group-heading{flex-direction:column;align-items:stretch}.knowledge-heading-row .course-text-button,.knowledge-overview-header .course-text-button{width:100%}.course-view-header{gap:9px}.course-position{text-align:left}.course-lesson-card{padding:19px 16px}.course-actions{grid-template-columns:1fr}.knowledge-overview-group-heading{grid-template-columns:1fr;display:grid}.knowledge-overview-group-heading .knowledge-index,.knowledge-overview-group-heading h3,.knowledge-overview-group-heading button{grid-column:1}.knowledge-overview-group-heading button{grid-row:auto;margin-top:5px}.natural-log-meta,.ai-review-heading,.ai-food-heading{flex-direction:column;align-items:stretch}.natural-log-meta span,.ai-date-chip{align-self:flex-start}.ai-scalar-grid{grid-template-columns:1fr}.ai-review-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-input-meta,.profile-summary-heading,.profile-estimate-heading,.profile-card-footer,.profile-entry-card{flex-direction:column;align-items:stretch}.profile-option-grid,.profile-summary-grid,.profile-step-actions,.profile-review-actions{grid-template-columns:1fr}.profile-step-actions,.profile-review-actions{display:grid}.profile-intro-actions{flex-direction:column;align-items:stretch}.profile-entry-card .secondary-button,.profile-summary-heading .secondary-button,.profile-estimate-heading button{width:100%}.profile-clear-confirm,.profile-clear-confirm p{text-align:left;justify-content:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scene{display:none}.scene-gym{opacity:var(--scene-opacity);display:block;transform:none}}.food-panel :where(input,select,button):focus-visible,.food-shortcuts summary:focus-visible,.weight-data summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.food-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;min-width:0;display:grid}.food-editor label,.shortcut-controls label,.template-builder form>label,.copy-meal label{gap:6px;min-width:0;display:grid}.food-name-field,.food-editor>.food-actions,.food-editor>.ai-inline-error{grid-column:1/-1}.food-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.food-panel button{min-height:44px;padding:9px 13px}.food-panel button:disabled{cursor:not-allowed;opacity:.5}.food-panel .food-list li,.food-panel .unestimated-meal-list li{flex-wrap:wrap;align-items:flex-start}.food-item-text,.template-list li>div{overflow-wrap:anywhere;min-width:0}.food-help{color:var(--muted);margin:8px 0;font-size:12px;line-height:1.6}.food-help:empty{display:none}.food-shortcuts,.nutrition-completeness,.weight-trend,.complete-nutrition-strip{border:1px solid var(--border-strong);background:var(--surface);border-radius:10px;margin-top:20px;padding:14px}.food-shortcuts summary,.weight-data summary{cursor:pointer;min-height:30px;font-weight:650}.food-shortcuts summary small{color:var(--muted);font-weight:400}.shortcut-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.template-list{gap:10px;margin:14px 0;padding:0;list-style:none;display:grid}.template-list li{border-bottom:1px solid var(--border);gap:10px;padding-bottom:12px;display:grid}.template-list small{color:var(--muted);font-size:12px;display:block}.template-builder,.copy-meal{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.template-builder form{gap:12px;display:grid}.template-choices{gap:8px;max-height:260px;padding:4px;display:grid;overflow-y:auto}.template-choices label,.nutrition-completeness label{align-items:center;gap:10px;min-height:44px;display:flex}.template-choices input[type=checkbox],.nutrition-completeness input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--accent);flex:0 0 20px;padding:0}.food-undo{border:1px solid var(--accent-deep);background:var(--danger-bg);overflow-wrap:anywhere;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:14px 0;padding:12px;display:flex}.meal-group h3,.copy-meal h3,.weight-trend h3,.complete-nutrition-strip h3{margin:0;font-size:15px}.meal-group{margin-top:18px}.meal-group .food-list{margin-top:8px}.weight-trend-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.weight-trend-heading span,.trend-current,.complete-nutrition-strip p{color:var(--muted);font-size:12px}.weight-trend svg{width:100%;max-height:340px;margin:12px auto;display:block}.trend-grid{stroke:var(--border-strong);stroke-width:1px}.trend-label{fill:var(--muted);font-size:11px;font-family:var(--mono)}.trend-raw{fill:none;stroke:#bcb7bb;stroke-width:1.5px}.trend-average{fill:none;stroke:var(--accent-bright);stroke-width:2px}.trend-raw-dot{fill:#d2cccd}.trend-average-dot{fill:var(--bg);stroke:var(--accent-bright);stroke-width:1.5px}.trend-current strong{color:var(--text)}.weight-data{font-size:12px}.weight-table-wrap{max-height:280px;overflow-x:auto}.weight-data table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}.weight-data :where(td,th){border-bottom:1px solid var(--border);padding:8px}@media (width>=720px){.food-editor{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=420px){.food-shortcuts,.weight-trend{padding:10px}.food-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.food-panel .food-list li>.food-actions{width:100%}}.auth-panel{background:linear-gradient(145deg, var(--panel-accent), var(--panel-strong));border-color:#e5232a5c;width:min(100%,480px);margin:20px auto}.auth-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:20px;display:grid}.auth-tabs button{border:1px solid var(--border-strong);background:var(--surface);min-height:44px;color:var(--muted);border-radius:7px;font-weight:700}.auth-tabs button[aria-pressed=true]{border-color:var(--accent);color:var(--text);background:#e5232a1f}.auth-form,.auth-form label{gap:8px;min-width:0;display:grid}.auth-form{gap:16px}.auth-form input{width:100%;min-width:0}.auth-form small,.auth-notice{color:var(--muted);font-size:12px;line-height:1.6}.auth-status:empty{display:none}.auth-status p{margin:0}.auth-notice{border-left:2px solid var(--accent);padding-left:10px}.auth-links{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.auth-links button{flex:120px;min-height:44px}.auth-guest{border-top:1px solid var(--border);gap:10px;margin-top:20px;padding-top:20px;display:grid}.auth-guest button{min-height:44px}.auth-guest p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.auth-panel :where(button,input):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.workspace-fields{border:0;min-width:0;margin:0;padding:0;display:contents}.account-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:16px 0;display:flex}.account-bar>div:first-child{gap:6px;min-width:0;display:grid}.account-bar strong{overflow-wrap:anywhere}.account-bar span,.import-panel p{color:var(--muted);font-size:14px;line-height:1.7}.account-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.account-actions button{font-size:13px}.import-panel{margin-bottom:20px}.import-choice{align-items:center;gap:10px;padding:8px 0;font-size:14px;display:flex}.import-choice input{accent-color:#f04a49;width:18px;height:18px}.auth-global-error{max-width:560px;margin:24px auto}@media (width<=480px){.account-actions{width:100%}.account-actions button{flex:auto}}
