@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#111214;--surface:#191b1f;--surface-2:#202227;--surface-3:#292b31;--line:#303238;--text:#f5f5f6;--muted:#a5a8af;--muted-2:#7e828b;--orange:#ff851b;--orange-2:#ff9b43;--orange-soft:#3c2a1d;--orange-line:#61432a;--red:#ff6f6f;--green:#8fd6ad;--radius:18px;--shadow:0 14px 36px rgba(0,0,0,.20);font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.43;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--orange);outline-offset:3px}a{color:var(--orange-2)}.app-shell{min-height:100vh}.sidebar{position:fixed;top:0;bottom:0;left:0;width:238px;padding:27px 18px 19px;background:#17191c;border-right:1px solid #292b30;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:12px;align-items:center;color:var(--text);text-decoration:none;padding:2px 7px 30px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--orange);color:#191919;font-family:Manrope,sans-serif;font-size:31px;font-weight:800;line-height:1}.brand strong{display:block;font-family:Manrope,sans-serif;font-size:16px;letter-spacing:1.1px;line-height:1.3}.brand strong span{color:var(--orange)}.brand small{display:block;margin-top:4px;color:#8a8d94;font-size:8px;font-weight:800;letter-spacing:1.6px}.side-label{margin:0 10px 10px;color:#747780;font-size:9px;font-weight:800;letter-spacing:1.6px}.side-nav{display:flex;flex-direction:column;gap:6px}.nav-link{position:relative;display:flex;align-items:center;gap:12px;width:100%;padding:12px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:#a6a8ae;text-align:left;font-size:12px;font-weight:600;transition:background .18s,color .18s,border-color .18s}.nav-link:hover{background:#24262b;color:#fff}.nav-link.active{background:var(--orange-soft);border-color:#4d3827;color:#ffb16b}.nav-link.active:before{content:"";position:absolute;left:-19px;top:12px;bottom:12px;width:3px;border-radius:0 5px 5px 0;background:var(--orange)}.nav-glyph{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#25272c;color:#c3c5cb;font-size:16px}.nav-link.active .nav-glyph{background:#49301e;color:#ffb16b}.side-health-card{margin-top:auto;padding:16px 14px;border:1px solid #34363c;border-radius:15px;background:linear-gradient(145deg,#24262a,#1d1f23)}.side-health-icon{display:grid;place-items:center;width:32px;height:32px;margin-bottom:11px;border-radius:10px;background:#3b2b1f;color:#ffad65}.side-health-card strong{font-size:11px}.side-health-card p{margin:7px 0 0;color:#9fa2a9;font-size:10px;line-height:1.7}.sidebar-footer{margin:20px 3px 0;color:#71747c;font-size:8px;font-weight:800;letter-spacing:1.5px}.sidebar-footer span{color:var(--orange);padding:0 5px}.main-content{min-height:100vh;margin-left:238px;padding:0 35px 35px;max-width:1600px}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:69px;border-bottom:1px solid #292b30;color:#a1a4ab}.crumb{display:flex;align-items:center;gap:10px;font-size:10px}.crumb span{font-size:9px;font-weight:800;letter-spacing:1.4px;color:#71757c}.crumb b{color:#4d5057}.crumb strong{font-size:11px;color:#e4e5e7;font-weight:600}.topbar-right{display:flex;align-items:center;gap:10px;font-size:10px}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px #3b2a1e}.avatar{display:grid;place-items:center;width:32px;height:32px;border:1px solid #4b3524;border-radius:11px;background:#2d251e;color:#ffb16b;font-family:Manrope,sans-serif;font-size:10px;font-weight:800}.page{display:none;padding-top:32px;animation:pageIn .22s ease}.page.active{display:block}@keyframes pageIn{from{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page-heading-row{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:27px}.eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:#a2a5ac;font-size:9px;font-weight:800;letter-spacing:1.5px}.eyebrow-line{display:inline-block;width:17px;height:2px;background:var(--orange);border-radius:2px}.page h1{margin:0;color:var(--text);font-family:Manrope,'DM Sans',sans-serif;font-size:clamp(28px,3vw,40px);font-weight:800;letter-spacing:-1.5px;line-height:1.12}.page h1 span{color:var(--orange-2)}.subheading{max-width:620px;margin:13px 0 0;color:#a5a8af;font-size:12px;line-height:1.7}.date-chip{display:flex;align-items:center;gap:10px;margin-top:15px;padding:11px 13px;border:1px solid #34363c;border-radius:12px;background:#1b1d21}.date-chip>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#35271c;color:#ffad65;font-size:18px}.date-chip small,.date-chip strong{display:block}.date-chip small{color:#8f929a;font-size:8px;font-weight:800;letter-spacing:1px}.date-chip strong{margin-top:2px;font-size:11px}.hero-banner{position:relative;display:flex;align-items:center;min-height:230px;overflow:hidden;border:1px solid #3a3430;border-radius:21px;background:radial-gradient(circle at 85% 35%,rgba(255,133,27,.21),transparent 30%),linear-gradient(110deg,#1a1c20 0%,#25272c 100%);box-shadow:var(--shadow)}.hero-copy{position:relative;z-index:2;padding:30px 32px;max-width:65%}.hero-tag{display:inline-flex;padding:6px 9px;border:1px solid #5b422d;border-radius:7px;background:#392a20;color:#ffba80;font-size:8px;font-weight:800;letter-spacing:1.4px}.hero-copy h2{margin:14px 0 8px;font-family:Manrope,sans-serif;font-size:27px;line-height:1.2;letter-spacing:-.8px}.hero-copy p{max-width:410px;margin:0 0 17px;color:#b9bbc1;font-size:11px;line-height:1.75}.hero-art{position:absolute;inset:0 0 0 auto;width:42%;overflow:hidden}.art-ring{position:absolute;border:1px solid rgba(255,160,80,.25);border-radius:50%;transform:rotate(-25deg)}.ring-a{width:260px;height:260px;right:3%;top:-32px}.ring-b{width:190px;height:190px;right:17%;top:17px;border-color:rgba(255,160,80,.15)}.art-runner{position:absolute;right:23%;top:44%;transform:translateY(-50%);font-size:76px;filter:drop-shadow(0 9px 14px rgba(0,0,0,.35))}.art-stamp{position:absolute;right:5%;bottom:23px;color:rgba(255,177,107,.72);font-family:Manrope,sans-serif;font-weight:800;font-size:10px;letter-spacing:2px;line-height:1.3;transform:rotate(-8deg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:11px;font-size:11px;font-weight:800;transition:background .16s,border-color .16s,transform .16s}.btn:active{transform:scale(.985)}.btn-primary{background:var(--orange);border-color:var(--orange);color:#191919}.btn-primary:hover{background:#ffa24f;border-color:#ffa24f}.btn-secondary{background:#25272c;border-color:#3a3d44;color:#eee}.btn-secondary:hover{background:#303238;border-color:#555860}.btn-danger{background:#422323;border-color:#653030;color:#ffb3b3}.btn-full{width:100%}.btn-small{min-height:36px;padding:0 12px;font-size:10px}.section-header{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:29px 0 14px}.section-header h2,.panel h2{margin:0;font-family:Manrope,sans-serif;font-size:17px;line-height:1.35;letter-spacing:-.35px}.section-caption{color:#7f838a;font-size:9px}.section-header .eyebrow,.panel-heading .eyebrow{margin-bottom:5px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card,.panel{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 6px 18px rgba(0,0,0,.07)}.metric-card{padding:15px 15px 13px}.metric-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.metric-icon{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border:1px solid #373940;border-radius:11px;background:#292b30;color:#ffb16b;font-size:17px}.metric-icon.orange{background:#3a291d;border-color:#58402c;color:#ffab63}.metric-status{padding:4px 6px;border-radius:5px;background:#292b30;color:#a0a3aa;font-size:7px;font-weight:800;letter-spacing:.7px}.metric-label{display:block;color:#c1c3c8;font-size:10px;font-weight:600}.metric-number{display:flex;align-items:baseline;gap:6px;margin-top:4px}.metric-number strong{font-family:Manrope,sans-serif;font-size:25px;font-weight:800;letter-spacing:-1px;font-variant-numeric:tabular-nums}.metric-number small{color:#858991;font-size:8px;font-weight:800}.metric-foot{margin-top:7px;color:#858991;font-size:9px;line-height:1.5}.mini-progress{height:4px;margin-top:13px;overflow:hidden;border-radius:4px;background:#34363c}.mini-progress span{display:block;width:0;height:100%;border-radius:4px;background:var(--orange);transition:width .2s}.dashboard-columns{display:grid;grid-template-columns:1.1fr .9fr;gap:13px;margin-top:14px}.panel{padding:18px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.panel-symbol{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#30251d;color:#ffad65}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.quick-item{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:111px;padding:13px;border:1px solid #33353b;border-radius:13px;background:#202227;text-align:left;color:var(--text)}.quick-item:hover{border-color:#65462c;background:#28241f}.quick-icon{display:grid;place-items:center;width:27px;height:27px;margin-bottom:10px;border-radius:8px;background:#3a291d;color:#ffad65;font-size:16px}.quick-item strong{padding-right:14px;font-size:10px}.quick-item small{margin-top:3px;color:#94979e;font-size:9px;line-height:1.4}.quick-item b{position:absolute;right:12px;top:12px;color:#ff9b43;font-size:13px}.text-btn{padding:4px 0;border:0;background:transparent;color:var(--orange-2);font-size:10px;font-weight:700;white-space:nowrap}.text-btn:hover{color:#ffd0a4}.home-habit-line{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #303238}.home-habit-line:last-child{border-bottom:0}.habit-dot{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;background:#292b30;font-size:15px}.home-habit-line>div{flex:1;min-width:0}.home-habit-line strong{display:block;font-size:10px}.home-habit-line small{display:block;color:#94979f;font-size:9px;margin-top:3px}.home-habit-line .habit-percent{font-family:Manrope,sans-serif;color:#ffad65;font-size:12px}.disclaimer,.notice-box{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid #44372a;border-radius:12px;background:#24211e;color:#ffbd85}.disclaimer{margin-top:15px}.disclaimer>span,.notice-box>span{flex-shrink:0;font-size:16px}.disclaimer p,.notice-box p{margin:0;color:#b9b6b1;font-size:10px;line-height:1.7}.icon-tile{display:grid;place-items:center;flex:0 0 55px;width:55px;height:55px;margin-top:11px;border:1px solid #5a3e27;border-radius:16px;background:radial-gradient(circle at top left,#4c331f,#30251c);color:#ffac62;font-size:27px}.heart-tile{color:#ff8585;background:#352327;border-color:#57333a}.food-tile{color:#ffb56f}.activity-tile{font-size:31px}.body-tile,.habits-tile,.athlete-tile{color:#ffb56f}.content-grid{display:grid;gap:15px;align-items:start}.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.food-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.camera-frame{position:relative;display:grid;place-items:center;min-height:245px;overflow:hidden;border:1px solid #383a40;border-radius:14px;background:radial-gradient(circle at 50% 35%,#292b30,#141517 68%);isolation:isolate}.camera-frame video,.camera-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#101113}.camera-frame img{z-index:1}.camera-frame video{z-index:1}.camera-placeholder{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:275px;padding:28px;text-align:center}.camera-symbol{display:grid;place-items:center;width:54px;height:54px;margin-bottom:14px;border:1px solid #63442c;border-radius:17px;background:#3a291d;color:#ffad65;font-size:27px}.camera-placeholder strong{font-family:Manrope,sans-serif;font-size:14px}.camera-placeholder span{margin-top:7px;color:#a4a6ad;font-size:10px;line-height:1.7}.camera-overlay{position:absolute;z-index:4;top:10px;left:10px;right:10px;display:flex;justify-content:space-between;align-items:center;padding:7px 9px;border:1px solid #45464b;border-radius:7px;background:rgba(15,16,18,.75);color:#eee;font-size:9px;font-weight:700;letter-spacing:.5px}.record-dot{display:inline-block;width:7px;height:7px;margin-right:4px;border-radius:50%;background:#ff5b54;box-shadow:0 0 0 3px rgba(255,91,84,.15)}.camera-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.camera-actions .btn{min-width:0}.heart-camera-frame{min-height:270px}.heart-camera-frame video{filter:contrast(1.05)}.camera-actions .btn-primary{grid-column:span 1}.camera-actions #heartStop{grid-column:span 1}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:5px 9px;border:1px solid #57402b;border-radius:7px;background:#34271e;color:#ffb16b;font-size:8px;font-weight:800;letter-spacing:.7px;white-space:nowrap}.bpm-display{display:flex;align-items:baseline;gap:9px;margin-top:20px}.bpm-display strong{font-family:Manrope,sans-serif;font-size:58px;line-height:1;font-weight:800;letter-spacing:-2px;font-variant-numeric:tabular-nums}.bpm-display span{color:#ffad65;font-size:13px;font-weight:800}.result-subtitle{margin:8px 0 20px;color:#9ca0a7;font-size:10px}.signal-chart{padding:12px;border:1px solid #303238;border-radius:12px;background:#151619}.chart-label{display:flex;justify-content:space-between;color:#878b93;font-size:8px;font-weight:800;letter-spacing:.8px}.chart-label span:last-child{color:#ffad65}#heartGraph{display:block;width:100%;height:100px;margin-top:9px}.result-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.result-meta>div{padding:12px;border:1px solid #303238;border-radius:11px;background:#202227}.result-meta small,.result-meta strong{display:block}.result-meta small{color:#92959c;font-size:8px;font-weight:800;letter-spacing:.6px}.result-meta strong{margin-top:5px;font-family:Manrope,sans-serif;font-size:15px}.subsection-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:22px 0 10px}.subsection-title h3{margin:0;font-size:12px}.history-list{display:flex;flex-direction:column;gap:8px}.history-row{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #303238;border-radius:11px;background:#202227}.history-badge{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:10px;background:#3a291d;color:#ffad65;font-size:15px}.history-info{flex:1;min-width:0}.history-info strong{display:block;font-size:10px}.history-info small{display:block;margin-top:3px;color:#989ba2;font-size:9px;line-height:1.5}.history-value{font-family:Manrope,sans-serif;font-size:13px;font-weight:800;color:#ffad65;text-align:right;white-space:nowrap}.history-value small{display:block;color:#989ba2;font-family:'DM Sans',sans-serif;font-size:8px;font-weight:500}.empty-state{padding:16px;color:#898d95;text-align:center;font-size:10px;line-height:1.7}.food-camera-frame{min-height:255px}.food-actions{grid-template-columns:1fr 1fr}.food-actions #foodCameraStart{grid-column:1/2}.food-actions #foodCapture{grid-column:2/3}.food-actions #foodGallery{grid-column:1/-1}.ai-progress{margin-top:14px}.ai-progress p{margin:8px 0 0;color:#c5c7cd;font-size:10px}.progress-track{height:5px;overflow:hidden;border-radius:6px;background:#36383e}.progress-track span{display:block;width:0;height:100%;border-radius:6px;background:var(--orange);transition:width .25s}.food-empty-result{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:250px;padding:25px;text-align:center}.food-result-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid #4e3826;border-radius:18px;background:#35271c;color:#ffad65;font-size:28px}.food-empty-result strong{margin-top:15px;font-family:Manrope,sans-serif;font-size:14px}.food-empty-result p{max-width:290px;margin:7px 0 0;color:#9da0a7;font-size:10px;line-height:1.7}.food-identification{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border:1px solid #3b362f;border-radius:12px;background:#24211e}.food-identification small{display:block;color:#a9a49c;font-size:8px;font-weight:800;letter-spacing:1px}.food-identification h3{margin:4px 0 7px;font-family:Manrope,sans-serif;font-size:19px}.confidence-pill{display:inline-block;padding:4px 7px;border-radius:5px;background:#353027;color:#ffca9b;font-size:8px;font-weight:700}.food-check{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#3a291d;color:#ffad65}.food-calorie-box{margin-top:12px;padding:17px;border:1px solid #5a4029;border-radius:14px;background:linear-gradient(120deg,#3a291d,#25221f)}.food-calorie-box>span{color:#c9ae96;font-size:8px;font-weight:800;letter-spacing:1.1px}.food-calorie-box>div{display:flex;align-items:baseline;gap:7px;margin-top:4px}.food-calorie-box strong{font-family:Manrope,sans-serif;font-size:38px;line-height:1.2;letter-spacing:-1.3px}.food-calorie-box small{color:#ffb16b;font-size:12px;font-weight:800}.food-calorie-box p{margin:4px 0 0;color:#b9aea4;font-size:9px}.portion-control{margin-top:17px}.portion-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.portion-head label{color:#b8bac0;font-size:10px}.portion-head strong{font-size:11px;color:#ffb16b}input[type=range]{width:100%;accent-color:var(--orange);margin:12px 0 4px}.range-labels{display:flex;justify-content:space-between;color:#82868e;font-size:8px}.macro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}.macro-grid>div{padding:12px 9px;border:1px solid #303238;border-radius:11px;background:#202227}.macro-grid span,.macro-grid strong,.macro-grid small{display:block}.macro-grid span{color:#90939a;font-size:7px;font-weight:800;letter-spacing:.8px}.macro-grid strong{margin-top:4px;font-family:Manrope,sans-serif;font-size:19px}.macro-grid small{color:#92959c;font-size:8px}.food-alternatives{margin:16px 0}.food-alternatives>small{display:block;margin-bottom:7px;color:#93969e;font-size:8px;font-weight:800;letter-spacing:.9px}.alternatives-row{display:flex;flex-wrap:wrap;gap:6px}.alternative-chip{padding:5px 8px;border:1px solid #393b41;border-radius:7px;background:#26282d;color:#bdc0c6;font-size:8px}.food-result-panel .micro-note{margin:12px 0 0}.food-journal-panel{margin-top:15px}.total-calories{display:flex;align-items:baseline;gap:5px;padding:8px 11px;border:1px solid #59412b;border-radius:9px;background:#34271e;color:#ffad65}.total-calories strong{font-family:Manrope,sans-serif;font-size:19px}.total-calories small{font-size:8px}.food-journal-list{display:flex;flex-direction:column;gap:8px}.food-journal-row{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid #303238;border-radius:11px;background:#202227}.food-journal-image{display:grid;place-items:center;flex-shrink:0;width:41px;height:41px;overflow:hidden;border-radius:10px;background:#35271c;color:#ffad65;font-size:20px}.food-journal-image img{width:100%;height:100%;object-fit:cover}.food-journal-info{flex:1;min-width:0}.food-journal-info strong{display:block;font-size:10px;overflow-wrap:anywhere}.food-journal-info small{display:block;margin-top:3px;color:#92959c;font-size:9px}.food-journal-kcal{font-family:Manrope,sans-serif;font-size:13px;font-weight:800;color:#ffad65;white-space:nowrap}.food-journal-kcal small{display:block;text-align:right;color:#92959c;font-family:'DM Sans',sans-serif;font-size:8px;font-weight:500}.activity-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.activity-type-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:13px 0 16px}.activity-type-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:70px;padding:9px 4px;border:1px solid #36383f;border-radius:12px;background:#24262b;color:#bfc1c7}.activity-type-btn span{font-size:22px;line-height:1.1}.activity-type-btn strong{font-size:9px}.activity-type-btn.active{border-color:#6b4728;background:#3b2a1e;color:#ffb16b}.workout-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.workout-stat{min-width:0;padding:15px;border:1px solid #33353b;border-radius:12px;background:#222429}.workout-stat>span{display:block;min-height:24px;margin-bottom:7px;color:#9b9ea5;font-size:8px;font-weight:800;letter-spacing:.75px;line-height:1.5}.workout-stat>div{display:flex;align-items:baseline;gap:5px}.workout-stat strong{font-family:Manrope,sans-serif;font-size:clamp(23px,3vw,34px);font-weight:800;letter-spacing:-1px;font-variant-numeric:tabular-nums}.workout-stat small{color:#a0a3aa;font-size:9px}.workout-stat.primary-stat{background:linear-gradient(125deg,#3b2a1e,#2c241e);border-color:#5f432b}.workout-stat.primary-stat strong{color:#ffb16b;font-size:clamp(30px,4vw,42px)}.gps-meta{display:flex;flex-direction:column;gap:6px;margin:15px 0;color:#a1a4ab;font-size:9px}.gps-meta strong{color:#ffb16b}.gps-meta p{margin:0;line-height:1.7}.workout-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.workout-controls .btn{width:100%;min-height:43px;font-size:10px}.workout-controls .btn-full{grid-column:1/-1}.micro-note{color:#8f939b;font-size:9px;line-height:1.7}.workout-panel>.micro-note{margin:12px 0 0}.activity-log{display:flex;flex-direction:column;gap:8px}.activity-log-row{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #31333a;border-radius:11px;background:#202227}.activity-log-icon{display:grid;place-items:center;flex-shrink:0;width:37px;height:37px;border-radius:10px;background:#39291e;font-size:19px}.activity-log-info{flex:1;min-width:0}.activity-log-info strong{display:block;font-size:10px}.activity-log-info small{display:block;margin-top:3px;color:#999ca3;font-size:8px;line-height:1.65}.activity-log-distance{font-family:Manrope,sans-serif;font-size:14px;font-weight:800;color:#ffb16b;white-space:nowrap;text-align:right}.activity-log-distance small{display:block;font-family:'DM Sans',sans-serif;font-size:8px;font-weight:500;color:#9699a1}.training-tip{display:flex;gap:10px;margin-top:14px;padding:13px;border:1px solid #40362c;border-radius:12px;background:#25221e}.training-tip>span{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:9px;background:#3a291d;color:#ffad65}.training-tip strong{display:block;font-size:10px}.training-tip p{margin:4px 0 0;color:#a6a6aa;font-size:9px;line-height:1.7}.music-panel{margin-top:15px}.panel-subcopy{margin:5px 0 0;color:#999ca3;font-size:10px;line-height:1.7}.music-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #5d4028;border-radius:13px;background:#38271c;color:#ffb16b;font-size:25px}.music-category-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:13px}.music-category-label{padding:0 4px;color:#999ca3;font-size:8px;font-weight:800;letter-spacing:1px}.music-chip{padding:7px 10px;border:1px solid #36383f;border-radius:8px;background:#24262b;color:#aeb0b6;font-size:9px}.music-chip.active,.music-chip:hover{border-color:#614329;background:#39291e;color:#ffb16b}.music-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:12px}.music-list{display:flex;flex-direction:column;gap:7px}.music-track{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:1px solid #32343a;border-radius:11px;background:#202227;color:var(--text);text-align:left}.music-track:hover,.music-track.active{border-color:#65462c;background:#2a251f}.music-track-art{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:10px;background:#35271d;color:#ffad65;font-size:17px}.music-track-info{flex:1;min-width:0}.music-track-info strong{display:block;font-size:10px;line-height:1.45}.music-track-info small{display:block;margin-top:3px;color:#9699a1;font-size:8px}.music-play{color:#ffad65;font-size:14px}.music-player{min-height:240px;overflow:hidden;border:1px solid #33353b;border-radius:13px;background:#121315}.music-player iframe{display:block;width:100%;height:240px;border:0}.music-player-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:240px;padding:25px;text-align:center}.music-player-empty>span{display:grid;place-items:center;width:54px;height:54px;border:1px solid #5a3e27;border-radius:17px;background:#35271c;color:#ffad65;font-size:29px}.music-player-empty strong{margin-top:12px;font-size:12px}.music-player-empty p{max-width:230px;margin:6px 0 0;color:#9598a0;font-size:9px;line-height:1.7}.music-panel>.micro-note{margin:12px 0 0}.body-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>span{color:#b8bbc2;font-size:9px;font-weight:700}.field input,.field select,.water-target-row input{width:100%;min-width:0;min-height:42px;padding:9px 10px;border:1px solid #3a3c43;border-radius:9px;background:#24262b;color:#f1f1f3;font-size:11px}.field select{appearance:auto}.field-full{grid-column:1/-1}.body-results{min-height:100%}.bmi-result{padding:16px;border:1px solid #383a41;border-radius:13px;background:#202227}.bmi-label{color:#9b9ea6;font-size:8px;font-weight:800;letter-spacing:1px}.bmi-main{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;margin-top:8px}.bmi-main strong{font-family:Manrope,sans-serif;font-size:38px;letter-spacing:-1px}.bmi-main span{color:#ffb16b;font-size:10px;font-weight:700}.bmi-scale{display:grid;grid-template-columns:1fr 1.3fr 1.1fr 1fr;gap:4px;margin-top:15px}.bmi-scale span{height:6px;border-radius:5px}.bmi-scale span:nth-child(1){background:#70a9e8}.bmi-scale span:nth-child(2){background:#86c9a2}.bmi-scale span:nth-child(3){background:#f7c15e}.bmi-scale span:nth-child(4){background:#e87966}.scale-labels{display:flex;justify-content:space-between;margin-top:7px;color:#8f929a;font-size:8px}.energy-cards{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.energy-cards>div{padding:13px;border:1px solid #32343a;border-radius:12px;background:#202227}.energy-cards span,.energy-cards strong,.energy-cards small{display:block}.energy-cards span{color:#9a9da4;font-size:8px;font-weight:800;letter-spacing:.6px;line-height:1.5}.energy-cards strong{margin-top:7px;font-family:Manrope,sans-serif;font-size:23px;overflow-wrap:anywhere}.energy-cards small{color:#979aa2;font-size:8px}.body-results .training-tip{margin-top:13px}.form-grid+.micro-note{margin:13px 0 0}.habits-checklist-panel,.data-panel{margin-top:15px}.water-total{display:flex;align-items:baseline;gap:6px}.water-total strong{font-family:Manrope,sans-serif;font-size:44px;letter-spacing:-1.5px}.water-total span{color:#ffb16b;font-weight:800;font-size:12px}.water-total small{color:#8f929a;font-size:10px}.water-progress{height:8px;margin:12px 0 16px;overflow:hidden;border-radius:9px;background:#34363c}.water-progress span{display:block;width:0;height:100%;border-radius:9px;background:linear-gradient(90deg,#ff851b,#ffc078);transition:width .2s}.water-target-row{display:flex;align-items:center;gap:8px;margin-bottom:15px}.water-target-row label{flex:1;color:#aaaeb5;font-size:9px}.water-target-row input{width:96px;min-height:36px}.water-add-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:6px}.water-add{display:flex;flex-direction:column;align-items:center;padding:13px 4px;border:1px solid #33353c;border-radius:11px;background:#222429;color:#f2f2f3}.water-add:hover{border-color:#68472c;background:#2a251f}.water-add span{font-size:21px}.water-add strong{margin-top:6px;color:#ffb16b;font-size:10px}.water-add small{margin-top:2px;color:#979aa2;font-size:8px}.sleep-form{margin-bottom:14px}.sleep-result{padding:14px;border:1px solid #40362b;border-radius:12px;background:#25221e}.sleep-result span,.sleep-result strong,.sleep-result small{display:block}.sleep-result span{color:#b9a48f;font-size:8px;font-weight:800;letter-spacing:1px}.sleep-result strong{margin-top:5px;font-family:Manrope,sans-serif;font-size:31px}.sleep-result small{color:#aaa096;font-size:9px}.habit-completion{display:flex;flex-direction:column;align-items:center;justify-content:center;width:57px;height:57px;border:1px solid #5b402b;border-radius:50%;background:#32261c}.habit-completion strong{font-family:Manrope,sans-serif;color:#ffb16b;font-size:14px}.habit-completion small{color:#a49b92;font-size:7px}.habit-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.habit-check{display:flex;align-items:center;gap:11px;min-width:0;padding:12px;border:1px solid #33353b;border-radius:11px;background:#202227;color:#f1f1f2;cursor:pointer}.habit-check.checked{border-color:#5d442c;background:#30271f}.habit-check input{position:absolute;opacity:0;pointer-events:none}.habit-box{display:grid;place-items:center;flex-shrink:0;width:25px;height:25px;border:1px solid #4a4c53;border-radius:7px;background:#292b30;color:transparent}.habit-check.checked .habit-box{border-color:var(--orange);background:var(--orange);color:#171719}.habit-check-text{min-width:0}.habit-check-text strong{display:block;font-size:10px}.habit-check-text small{display:block;margin-top:3px;color:#989ba2;font-size:8px;line-height:1.5}.data-actions{display:flex;flex-wrap:wrap;gap:9px}.app-footer{display:flex;justify-content:space-between;gap:12px;margin-top:27px;padding:15px 1px 0;border-top:1px solid #292b30;color:#747780;font-size:8px}.app-footer span:first-child{font-weight:800;letter-spacing:1px}.app-footer b{margin-left:5px;color:#ff9b43}.athlete-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.athlete-card{padding:0;overflow:hidden}.athlete-photo-wrap{position:relative;height:260px;overflow:hidden;background:linear-gradient(135deg,#292b30,#17181a)}.athlete-photo-wrap:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(13,14,15,.9));pointer-events:none}.athlete-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 28%;display:block}.photo-badge{position:absolute;z-index:2;left:14px;bottom:13px;padding:7px 9px;border:1px solid rgba(255,185,122,.35);border-radius:6px;background:rgba(20,19,18,.8);color:#ffc18c;font-size:8px;font-weight:800;letter-spacing:.7px}.athlete-content{padding:20px}.athlete-kicker{color:#ffad65;font-size:8px;font-weight:800;letter-spacing:1.7px}.athlete-content h2{margin:5px 0 8px;font-family:Manrope,sans-serif;font-size:23px}.athlete-intro{margin:0;color:#b0b3b9;font-size:10px;line-height:1.8}.athlete-stat-tags{display:flex;flex-wrap:wrap;gap:6px;margin:13px 0 17px}.athlete-stat-tags span,.training-tag{padding:5px 7px;border:1px solid #40362c;border-radius:5px;background:#28231f;color:#ffb16b;font-size:7px;font-weight:800;letter-spacing:.6px}.athlete-content h3{margin:16px 0 8px;font-size:12px}.athlete-bullets{margin:0;padding-left:18px;color:#c3c5ca;font-size:10px;line-height:1.9}.food-tags{display:flex;flex-wrap:wrap;gap:6px}.food-tags span{padding:7px 8px;border:1px solid #373940;border-radius:8px;background:#222429;color:#d1d2d6;font-size:9px}.athlete-note{margin:11px 0 0;color:#a4a7ae;font-size:9px;line-height:1.8}.source-link{display:inline-block;margin-top:12px;font-size:9px;font-weight:700;text-decoration:none}.source-link:hover{text-decoration:underline}.workout-library{margin-top:15px}.training-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.training-cards article{display:flex;gap:12px;padding:14px;border:1px solid #33353b;border-radius:12px;background:#202227}.training-number{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #5b402b;border-radius:10px;background:#35271d;color:#ffb16b;font-family:Manrope,sans-serif;font-size:12px;font-weight:800}.training-cards h3{margin:0 0 5px;font-size:11px}.training-cards p{margin:0 0 10px;color:#aeb0b6;font-size:9px;line-height:1.75}.workout-library .notice-box{margin-top:14px}.toast{position:fixed;z-index:100;left:50%;bottom:30px;max-width:min(500px,calc(100vw - 30px));padding:12px 16px;border:1px solid #6a492c;border-radius:11px;background:#28231f;color:#ffe0c3;font-size:11px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:translate(-50%,0)}.mobile-nav{display:none}.hidden{display:none!important}
@media(max-width:1220px){.main-content{padding-left:24px;padding-right:24px}.sidebar{width:220px}.main-content{margin-left:220px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}.activity-layout{grid-template-columns:1fr}.food-grid,.body-grid{grid-template-columns:1fr}.hero-art{width:38%}}
@media(max-width:760px){body{font-size:13px}.sidebar{display:none}.main-content{margin-left:0;padding:0 14px calc(89px + env(safe-area-inset-bottom))}.topbar{min-height:57px}.crumb{gap:7px;font-size:9px}.crumb span{font-size:8px}.topbar-right{gap:7px;font-size:9px}.avatar{width:29px;height:29px;border-radius:9px}.page{padding-top:24px}.page-heading-row{gap:11px;margin-bottom:21px}.page h1{font-size:clamp(28px,8vw,37px);letter-spacing:-1.4px}.subheading{margin-top:10px;font-size:11px}.date-chip{gap:7px;margin-top:8px;padding:8px}.date-chip>span{width:25px;height:25px}.date-chip strong{font-size:9px}.date-chip small{font-size:7px}.hero-banner{min-height:235px}.hero-copy{max-width:76%;padding:24px 20px}.hero-copy h2{font-size:24px}.hero-copy p{max-width:280px;font-size:10px}.hero-tag{font-size:7px;letter-spacing:1px}.hero-art{width:32%;opacity:.74}.art-runner{right:7%;top:45%;font-size:51px}.ring-a{right:-100px}.ring-b{right:-40px}.art-stamp{right:4%;bottom:18px;font-size:8px}.section-header{margin-top:24px}.section-header h2,.panel h2{font-size:16px}.metric-grid{gap:9px}.metric-card{padding:12px}.metric-top{margin-bottom:13px}.metric-icon{width:30px;height:30px;border-radius:9px;font-size:15px}.metric-status{font-size:6px}.metric-label{font-size:9px}.metric-number strong{font-size:24px}.metric-foot{font-size:8px}.panel{padding:14px;border-radius:15px}.dashboard-columns{gap:11px;margin-top:11px}.quick-grid{gap:7px}.quick-item{min-height:105px;padding:11px}.quick-item strong{font-size:9px}.quick-item small{font-size:8px}.home-habit-line{gap:9px}.disclaimer p,.notice-box p{font-size:9px}.icon-tile{flex-basis:43px;width:43px;height:43px;border-radius:13px;font-size:21px;margin-top:6px}.content-grid{gap:11px}.camera-frame{min-height:225px}.heart-camera-frame{min-height:235px}.camera-actions{gap:7px}.camera-actions .btn{padding:0 9px;font-size:10px}.bpm-display strong{font-size:53px}.result-meta{gap:7px}.result-meta>div{padding:10px}.food-camera-frame{min-height:230px}.food-result-panel .panel-heading{margin-bottom:10px}.food-empty-result{min-height:205px}.food-calorie-box strong{font-size:35px}.food-journal-panel{margin-top:11px}.page-heading-row .date-chip{display:none}.activity-type-switch{gap:6px}.activity-type-btn{min-height:66px}.activity-type-btn span{font-size:20px}.activity-type-btn strong{font-size:8px}.workout-stat{padding:13px 11px}.workout-stat strong{font-size:29px}.workout-stat.primary-stat strong{font-size:36px}.workout-stat>span{font-size:7px;letter-spacing:.6px}.workout-controls .btn{font-size:9px;padding:0 10px}.music-layout{grid-template-columns:1fr}.music-player,.music-player iframe{min-height:195px;height:195px}.music-player-empty{min-height:195px}.music-category-row{gap:6px}.music-chip{padding:7px 8px;font-size:8px}.field input,.field select{font-size:12px}.form-grid{gap:11px}.water-total strong{font-size:39px}.water-add-grid{gap:6px}.water-add{padding:11px 3px}.water-add strong{font-size:9px}.water-target-row{flex-wrap:wrap}.water-target-row label{flex-basis:100%}.water-target-row input{flex:1;width:auto}.habit-checklist{grid-template-columns:1fr}.habit-check{padding:11px}.data-actions{flex-direction:column}.data-actions .btn{width:100%}.athlete-grid{grid-template-columns:1fr;gap:11px}.athlete-photo-wrap{height:270px}.athlete-content{padding:17px}.athlete-content h2{font-size:22px}.training-cards{grid-template-columns:1fr}.app-footer{flex-direction:column;gap:6px;font-size:8px}.mobile-nav{position:fixed;z-index:50;left:8px;right:8px;bottom:calc(7px + env(safe-area-inset-bottom));display:flex;align-items:stretch;gap:1px;padding:6px 4px;border:1px solid #3a3c42;border-radius:17px;background:rgba(27,29,32,.96);backdrop-filter:blur(18px);box-shadow:0 10px 35px rgba(0,0,0,.48);overflow-x:auto;scrollbar-width:none}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav-link{display:flex;flex:1 0 48px;min-width:48px;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 1px;border:0;border-radius:11px;background:transparent;color:#858992}.mobile-nav-link span{font-size:17px;line-height:1.15}.mobile-nav-link small{font-size:8px;font-weight:700}.mobile-nav-link.active{background:#35271c;color:#ffac63}.toast{bottom:calc(91px + env(safe-area-inset-bottom));font-size:10px}.athlete-stat-tags span{font-size:7px}}
@media(max-width:380px){.main-content{padding-left:11px;padding-right:11px}.topbar-right #todayLabel{display:none}.page h1{font-size:28px}.hero-copy{max-width:82%;padding:21px 16px}.hero-copy h2{font-size:22px}.hero-art{width:28%;opacity:.45}.metric-grid{gap:7px}.metric-card{padding:10px}.metric-number strong{font-size:22px}.metric-top{gap:4px}.metric-status{padding:4px}.workout-stat strong{font-size:25px}.workout-stat.primary-stat strong{font-size:31px}.activity-type-btn strong{font-size:7px}.energy-cards{gap:7px}.energy-cards strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* =========================================================
   MY HEALTH REBUILD V3 — SPORT ORANGE / HIGH CONTRAST
   Re-design layer: warm light canvas + charcoal shell + vivid orange.
   Kept separate and loaded after the original component system.
   ========================================================= */
:root {
  color-scheme: light;
  --bg: #f3f2ee;
  --surface: #ffffff;
  --surface-2: #f8f7f4;
  --surface-3: #eeece7;
  --line: #e3e0d9;
  --text: #1d2023;
  --muted: #656a70;
  --muted-2: #888c91;
  --orange: #ff6b00;
  --orange-2: #ff8a28;
  --orange-soft: #fff0e4;
  --orange-line: #ffc89d;
  --green: #227d50;
  --shadow: 0 15px 34px rgba(25, 22, 18, .075);
}
html, body { background: #f3f2ee !important; color: #1d2023 !important; }
body { font-family: 'DM Sans', Arial, sans-serif; }
.app-shell { background: #f3f2ee; }
.sidebar { background: #111315 !important; border-right: 1px solid #272a2e !important; }
.brand-mark { background: #ff6b00 !important; box-shadow: 0 8px 18px rgba(255,107,0,.25); }
.brand strong span { color: #ff7a19 !important; }
.nav-link { color: #a9adb3 !important; }
.nav-link:hover { background: #222529 !important; color: #fff !important; }
.nav-link.active { color: #17191b !important; background: #ff6b00 !important; border-color: #ff6b00 !important; box-shadow: 0 7px 15px rgba(255,107,0,.16); }
.nav-link.active:before { background: #fff !important; }
.nav-link.active .nav-glyph { color: #fff !important; background: #e75f00 !important; }
.side-health-card { background: linear-gradient(145deg,#202327,#151719) !important; border-color: #34383d !important; }
.side-health-icon { background: #ff6b00 !important; color: #181818 !important; }
.sidebar-footer b, .sidebar-footer span { color: #ff7a19 !important; }
.main-content { background: #f3f2ee !important; }
.topbar { position: sticky; top: 0; z-index: 15; min-height: 66px; background: rgba(243,242,238,.94) !important; border-bottom: 1px solid #dedbd4 !important; backdrop-filter: blur(14px); }
.crumb { color: #696d72 !important; }
.crumb span { color: #898b8e !important; }
.crumb strong { color: #1d2023 !important; }
.topbar-right { color: #6e7277 !important; }
.live-dot { background: #ff6b00 !important; box-shadow: 0 0 0 4px #ffe1ca !important; }
.avatar { background: #ff6b00 !important; color: #1e2022 !important; border-color: #ff6b00 !important; }
.build-tag { display:inline-flex; align-items:center; padding:6px 8px; border-radius:6px; background:#1b1d20; color:#ff9b52; font-size:8px; font-weight:900; letter-spacing:.9px; }
.page h1 { color: #1a1d20 !important; }
.page h1 span { color: #ff6b00 !important; }
.eyebrow { color: #777b80 !important; }
.subheading { color: #666b71 !important; }
.date-chip { background: #fff !important; border-color: #e2ded6 !important; box-shadow: 0 6px 15px rgba(20,20,20,.035); }
.date-chip>span { background: #ff6b00 !important; color: #181a1c !important; }
.date-chip small { color: #85898d !important; }
.date-chip strong { color: #1b1d20 !important; }
/* Bright orange hero: deliberate visual break from the old all-dark screen. */
.hero-banner { border: 0 !important; border-radius: 24px !important; background: linear-gradient(115deg,#ff6b00 0%,#ff8118 53%,#ff9c41 100%) !important; box-shadow: 0 16px 30px rgba(226,91,0,.17) !important; }
.hero-copy { max-width: 68%; }
.hero-tag { background: rgba(28,25,22,.11) !important; color: #24201c !important; border: 1px solid rgba(30,25,19,.22) !important; }
.hero-copy h2 { color: #17191b !important; font-size: clamp(25px,2.6vw,34px) !important; }
.hero-copy p { color: #3e2c20 !important; }
.hero-copy .btn-primary { background: #17191b !important; color: #fff !important; border-color: #17191b !important; }
.hero-copy .btn-primary:hover { background: #2a2d31 !important; }
.art-ring { border-color: rgba(35,26,19,.24) !important; }
.ring-b { border-color: rgba(35,26,19,.17) !important; }
.art-runner { filter: drop-shadow(0 12px 15px rgba(72,36,7,.19)); }
.art-stamp { color: rgba(42,29,18,.6) !important; }
.section-header h2, .panel h2 { color: #1d2023 !important; }
.section-caption { color: #85898d !important; }
.metric-card, .panel { background: #fff !important; border: 1px solid #e5e1da !important; box-shadow: 0 6px 20px rgba(27,24,20,.045) !important; }
.metric-card { border-radius: 18px !important; position: relative; overflow: hidden; }
.metric-card:after { content:""; position:absolute; right:0; top:0; height:3px; width:100%; background: linear-gradient(90deg,#ff6b00,rgba(255,107,0,0)); opacity:.85; }
.metric-icon { background: #fff0e4 !important; border-color: #ffe0c8 !important; color: #e96100 !important; }
.metric-icon.orange { background: #ff6b00 !important; border-color: #ff6b00 !important; color: #17191b !important; }
.metric-status { background: #f1f0ec !important; color: #787b80 !important; }
.metric-label { color: #5f646a !important; }
.metric-number strong { color: #171a1d !important; }
.metric-number small, .metric-foot { color: #85898f !important; }
.mini-progress { background: #ebe8e2 !important; }
.mini-progress span { background: #ff6b00 !important; }
.quick-item { color: #202326 !important; background: #faf9f6 !important; border-color: #e5e1da !important; }
.quick-item:hover { border-color: #ff8a28 !important; background: #fff5ed !important; }
.quick-icon { color: #e96100 !important; background: #ffead9 !important; }
.quick-item strong { color: #25282b !important; }
.quick-item small { color: #7b7f84 !important; }
.quick-item b { color: #ff6b00 !important; }
.panel-symbol { background: #ffead9 !important; color: #e96100 !important; }
.text-btn, .source-link { color: #e96100 !important; }
.home-habit-line { border-color: #eeebe5 !important; }
.home-habit-line strong { color: #292c2f !important; }
.home-habit-line small { color: #85898f !important; }
.habit-percent { color: #e96100 !important; }
.habit-dot { background: #fff0e4 !important; }
.disclaimer, .notice-box { background: #fff4ea !important; border-color: #ffd6b5 !important; color: #39332e !important; }
.disclaimer p, .notice-box p { color: #625951 !important; }
.disclaimer>span, .notice-box>span { color: #e96100 !important; }
.btn-primary { background: #ff6b00 !important; border-color: #ff6b00 !important; color: #17191b !important; }
.btn-primary:hover { background: #ff8121 !important; border-color: #ff8121 !important; }
.btn-secondary { background: #f0efeb !important; border-color: #dcd8d0 !important; color: #292c30 !important; }
.btn-secondary:hover { background: #e6e3dc !important; border-color: #ffb37a !important; }
.btn-danger { background: #fff0f0 !important; border-color: #f1c5c5 !important; color: #a83030 !important; }
.status-pill, .activity-status { background: #fff0e4 !important; color: #df5b00 !important; border-color: #ffd5b4 !important; }
/* Inputs and body metrics */
.field input, .field select, input[type="number"], input[type="time"], select { background: #faf9f6 !important; color: #24272a !important; border-color: #dcd8d0 !important; }
.field label, .field span, .field-label { color: #666b70 !important; }
.bmi-result-card, .energy-result, .body-tips, .sleep-result, .habit-check, .training-cards article, .activity-log-row, .history-row, .food-journal-row { background: #faf9f6 !important; border-color: #e5e1da !important; color: #25282b !important; }
.bmi-result-card strong, .energy-result strong, .sleep-result strong, .history-value, .food-journal-kcal { color: #1e2124 !important; }
.bmi-result-card small, .energy-result small, .history-info small, .food-journal-info small { color: #7e8287 !important; }
.bmi-meter, .progress-track { background: #eae7e1 !important; }
.progress-track span { background: #ff6b00 !important; }
/* Camera areas stay dark for better live preview contrast. */
.camera-frame, .heart-camera-frame, .food-camera-frame { background: #141619 !important; border-color: #2b2d31 !important; }
.camera-placeholder { color: #e9e9e9 !important; }
.camera-placeholder span { color: #b9bdc2 !important; }
.camera-symbol { color: #ff7a19 !important; }
.camera-overlay { color: #fff !important; }
.bpm-display strong, .food-calorie-box strong { color: #16191b !important; }
.result-subtitle, .micro-note, .panel-subcopy { color: #787d82 !important; }
.signal-chart { background: #17191c !important; border-color: #303238 !important; }
.signal-chart .chart-label { color: #d6d7da !important; }
.food-empty-result { background: #faf9f6 !important; border-color: #e5e1da !important; }
.food-empty-result strong { color: #292c30 !important; }
.food-empty-result p { color: #797d83 !important; }
.food-identification h3 { color: #212427 !important; }
.food-calorie-box { background: #fff0e4 !important; border-color: #ffd5b3 !important; }
.food-calorie-box > span, .food-calorie-box p { color: #6a5545 !important; }
.food-calorie-box small { color: #6d5a4a !important; }
.portion-head label { color: #696e73 !important; }
.portion-head strong { color: #24272a !important; }
.macro-grid>div { background: #f5f4f0 !important; border-color: #e5e1da !important; }
.macro-grid span, .macro-grid small { color: #7a7e83 !important; }
.macro-grid strong { color: #24272a !important; }
.alternative-chip { background: #f3f1ec !important; color: #4f5459 !important; border-color: #e4dfd7 !important; }
.confidence-pill { background: #edf6ee !important; color: #2f7742 !important; }
/* Sport activity: orange distance card and clean stats. */
.activity-type-btn { background: #f6f5f1 !important; color: #555a60 !important; border-color: #e0dcd4 !important; }
.activity-type-btn.active { background: #ff6b00 !important; border-color: #ff6b00 !important; color: #181a1c !important; box-shadow: 0 6px 15px rgba(255,107,0,.15); }
.workout-stat { background: #faf9f6 !important; border-color: #e5e1da !important; }
.workout-stat > span { color: #7a7e83 !important; }
.workout-stat strong { color: #1e2124 !important; }
.workout-stat small { color: #80848a !important; }
.workout-stat.primary-stat { background: linear-gradient(130deg,#ff6b00,#ff9b36) !important; border-color: #ff6b00 !important; }
.workout-stat.primary-stat > span, .workout-stat.primary-stat strong, .workout-stat.primary-stat small { color: #1a1b1c !important; }
.gps-meta, .gps-meta p, .gps-meta span { color: #777c81 !important; }
.gps-meta strong { color: #e96100 !important; }
.training-tip { background: #fff4ea !important; border-color: #ffd6b5 !important; }
.training-tip strong { color: #292c2f !important; }
.training-tip p { color: #6b625b !important; }
/* Music UI */
.music-category-label { color: #85898e !important; }
.music-chip { background: #f3f1ec !important; color: #5f6469 !important; border-color: #e2ded6 !important; }
.music-chip.active { background: #ff6b00 !important; color: #17191b !important; border-color: #ff6b00 !important; }
.music-track { background: #faf9f6 !important; border-color: #e5e1da !important; color: #24272a !important; }
.music-track.active, .music-track:hover { background: #fff0e4 !important; border-color: #ffbc8a !important; }
.music-track-info strong { color: #24272a !important; }
.music-track-info small { color: #7f8389 !important; }
.music-track-art, .music-icon { background: #ff6b00 !important; color: #191b1d !important; }
.music-player { background: #17191c !important; border-color: #33363b !important; }
.music-player-empty { color: #fff !important; }
.music-player-empty p { color: #b8bbc0 !important; }
/* Athlete feature cards keep real photos prominent; content is light. */
.athlete-card { background: #fff !important; }
.athlete-photo-wrap { background: #1b1d20 !important; }
.athlete-kicker { color: #e96100 !important; }
.athlete-intro, .athlete-note { color: #676d72 !important; }
.athlete-content h2, .athlete-content h3 { color: #202326 !important; }
.athlete-bullets { color: #555b61 !important; }
.athlete-stat-tags span, .training-tag { background: #fff0e4 !important; border-color: #ffd6b5 !important; color: #d95700 !important; }
.food-tags span { background: #f7f5f0 !important; border-color: #e4e0d8 !important; color: #3f4449 !important; }
.training-cards h3 { color: #26292d !important; }
.training-cards p { color: #6c7177 !important; }
.training-number { background: #ff6b00 !important; border-color: #ff6b00 !important; color: #191b1d !important; }
.source-link { color: #df5b00 !important; }
.app-footer { border-color: #dedbd4 !important; color: #85898d !important; }
.app-footer b { color: #e96100 !important; }
.toast { background: #202225 !important; color: #fff !important; border-color: #ff6b00 !important; }
.mobile-nav { background: rgba(20,22,24,.97) !important; border-color: #34373b !important; }
.mobile-nav-link { color: #a4a8ad !important; }
.mobile-nav-link.active { background: #ff6b00 !important; color: #181a1c !important; }
/* version stamp, deliberately visible while verifying the correct package */
.app-footer:after { content: "FIX 04"; display: inline-flex; align-items: center; padding: 4px 7px; border-radius: 5px; background: #ff6b00; color: #191b1c; font-weight: 900; letter-spacing: .7px; }
@media (max-width:760px) {
  .topbar { min-height: 58px !important; margin-left: -14px; margin-right: -14px; padding-left: 14px; padding-right: 14px; }
  .build-tag { display: none; }
  .hero-banner { min-height: 260px !important; border-radius: 20px !important; }
  .hero-copy { max-width: 78% !important; padding: 22px 18px !important; }
  .hero-copy h2 { font-size: 25px !important; }
  .hero-copy p { font-size: 10px !important; }
  .hero-art { width: 35% !important; opacity: .9 !important; }
  .art-runner { font-size: 54px !important; right: 4% !important; }
  .art-stamp { right: 3% !important; color: rgba(42,29,18,.55) !important; }
  .metric-card { background: #fff !important; }
  .panel { background: #fff !important; }
  .athlete-grid { grid-template-columns: 1fr !important; }
  .athlete-photo-wrap { height: 285px !important; }
  .app-footer { padding-bottom: 5px; }
  .app-footer:after { align-self: flex-start; }
}
@media (max-width:380px) {
  .hero-copy { max-width: 84% !important; }
  .hero-art { opacity: .55 !important; }
  .metric-number strong { font-size: 22px !important; }
  .build-tag { display: none !important; }
}

.eyebrow-version{display:inline-flex;align-items:center;padding:4px 6px;margin-left:4px;border-radius:5px;background:#ff6b00;color:#1b1d20!important;font-size:7px;font-weight:900;letter-spacing:.7px;}


/* FIX 04 — phone layout: stack heart scanner and result cards instead of squeezing them side-by-side. */
@media (max-width: 760px) {
  #page-heart .content-grid,
  #page-heart .two-col {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
  }
  #page-heart .scan-panel,
  #page-heart .result-panel {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
  }
  #page-heart .panel-heading { gap: 12px; }
  #page-heart .panel-heading > div { min-width: 0; }
  #page-heart .panel-heading h2 { font-size: 18px !important; line-height: 1.35; }
  #page-heart .heart-camera-frame { width: 100%; min-height: 240px; }
  #page-heart .camera-placeholder { padding: 20px 24px; }
  #page-heart .camera-placeholder strong { font-size: 17px; }
  #page-heart .camera-placeholder span { max-width: 265px; font-size: 12px; line-height: 1.7; }
  #page-heart .camera-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #page-heart .camera-actions .btn {
    min-width: 0; min-height: 52px; padding: 10px 8px;
    white-space: normal; line-height: 1.35; font-size: 12px;
  }
  #page-heart .bpm-display { display: flex; align-items: baseline; gap: 10px; margin: 18px 0 4px; }
  #page-heart .bpm-display strong { font-size: clamp(56px, 16vw, 76px) !important; line-height: 1; }
  #page-heart .bpm-display span { font-size: 16px; }
  #page-heart .result-subtitle { font-size: 12px; line-height: 1.65; }
  #page-heart .signal-chart { min-height: 210px; }
  #page-heart .signal-chart canvas { width: 100%; max-width: 100%; }
  #page-heart .result-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  #page-heart .result-meta > div { min-width: 0; padding: 14px 12px; overflow-wrap: anywhere; }
  #page-heart .history-row { min-width: 0; }
  #page-heart .history-info { min-width: 0; overflow-wrap: anywhere; }
  #page-heart .notice-box { align-items: flex-start; }
  #page-heart .notice-box p { font-size: 11px; line-height: 1.7; }
}

/* FIX 04 — prevent result cards and camera controls from creating horizontal overflow. */
#page-heart .content-grid,
#page-heart .panel,
#page-food .content-grid,
#page-food .panel { min-width: 0; }
#page-food .camera-frame { width: 100%; }
#page-food .food-camera-frame img,
#page-food .food-camera-frame video { display: block; width: 100%; max-width: 100%; height: auto; object-fit: contain; }
#page-food .food-camera-frame img[hidden],
#page-food .food-camera-frame video[hidden] { display: none !important; }
#page-food .food-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#page-food .food-actions #foodGallery { grid-column: 1 / -1; }
#page-food .food-actions .btn { min-width: 0; min-height: 48px; white-space: normal; line-height: 1.35; }
#page-food .food-result-panel { min-width: 0; overflow: hidden; }
#page-food .food-confidence,
#page-food .food-serving-text { overflow-wrap: anywhere; }
