/* Sprout personal experience: spatial stage, visual pantry, and a live meal tray. */
:root{--ink:#eaf2f0;--muted:#9daeb3;--line:#ffffff16;--lime:#d5ff73;background:#09141d;color:#eaf2f0;color-scheme:dark}body{background:radial-gradient(ellipse at 50% -20%,#23554b55,transparent 55%),#09141d}aside{background:#0c1922;border-color:var(--line)}.brand{color:#f1f6f2}.brand-dot,h1 span{color:var(--lime)}.logo{color:#102718}nav button{color:#a4b7bb}nav button.active{background:#d5ff7315;color:var(--lime);box-shadow:inset 3px 0 var(--lime)}.side-bottom>span{color:#a2b2a2}h1{letter-spacing:-1.2px}header{margin-bottom:32px}input,select{background:#172630;border-color:#34434a;color:#f0f5f2}.profile{background:#253d39;color:var(--lime);border-color:#486248}.card,.macro{background:linear-gradient(135deg,#1a2c35cc,#12212bdd);border-color:#ffffff16;box-shadow:0 10px 28px #00000018;backdrop-filter:blur(15px)}.card h2{color:#edf6f0}.primary{color:#172818;box-shadow:0 5px 0 #5f7834,0 10px 24px #a2d8531a;border-radius:13px}.primary:hover{transform:translateY(-3px)}.primary:active{transform:translateY(3px);box-shadow:0 1px 0 #5f7834}.secondary{background:#2a3f45;color:#dff0e0;border:1px solid #456056}.text-button{color:#c3e493}.top-grid{grid-template-columns:1.5fr 1fr}.journey{border:1px solid #75ad9633;min-height:355px;background:radial-gradient(ellipse at 70% 75%,#43827344,transparent 60%),linear-gradient(125deg,#17333b,#11202b);transform-style:preserve-3d;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));box-shadow:0 20px 55px #0004;transition:transform .2s ease-out;padding:32px}.journey:after{content:'';position:absolute;inset:60% -25% -80%;background-image:linear-gradient(#83cbae12 1px,transparent 1px),linear-gradient(90deg,#83cbae12 1px,transparent 1px);background-size:35px 35px;transform:perspective(300px) rotateX(60deg);pointer-events:none}.journey-copy{max-width:58%;transform:translateZ(25px);position:relative}.journey h2{font-size:36px;letter-spacing:-1.2px;margin-top:22px}.journey p{font-size:14px}.journey .text-button{display:block;margin-top:10px}.pill{border-color:#a8d98b44;background:#abc7790c;color:#d2efa3;letter-spacing:1px;font-size:11px}.avatar-space{position:absolute;right:0;top:35px;width:235px;height:265px;transform-style:preserve-3d;transform:translateZ(35px)}.identity-core{position:absolute;left:55px;top:59px;width:133px;height:156px;border-radius:42%;background:radial-gradient(circle at 25% 20%,#769977,#244b4b 62%,#122a34);border:1px solid #abd5ae77;box-shadow:inset -15px -18px 28px #0c242d,0 28px 35px #0005;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#d5ff73;z-index:2;transform:translateZ(35px)}.identity-core>span{font:800 54px Manrope;text-shadow:0 3px 0 #173632}.identity-core small{font-size:9px;letter-spacing:1.4px;margin-top:8px;line-height:1.7;color:#c2dbcf}.orbit{position:absolute;width:220px;height:90px;left:4px;top:145px;border:1px solid #b6e5b74a;border-radius:50%;transform:rotate(-24deg);box-shadow:0 0 18px #9aff7910}.orbit-two{transform:rotate(36deg);top:90px;width:235px;height:145px}.orbit-data{position:absolute;z-index:3;padding:10px 16px;border-radius:16px;border:1px solid #ddf5ce33;background:#17313de8;font:800 26px Manrope;box-shadow:0 14px 24px #0004;transform:translateZ(60px);color:var(--lime)}.orbit-data small{display:block;font:12px 'DM Sans';color:#d8e2dc}.protein-orbit{top:15px;right:8px}.movement-orbit{bottom:1px;left:1px;color:#8ed5dc}.scene-caption{position:absolute;bottom:15px;left:30px;color:#809f9e;font-size:10px}.ring:before{background:#152731}.ring{background:conic-gradient(var(--lime) var(--angle,0deg),#314149 0);box-shadow:0 0 35px #d5ff7309}.ring strong{color:#eff7e8}.energy-details b{color:#eaf3eb}.energy-details p{color:#a4b5b5}.bar{background:#324049}.macro-top{color:#b6c7c7}.macro strong{color:#f0f4e8}.checkin{background:#1b3535;color:#d6f4d4;border:1px solid #44726355}.checkin:nth-child(2){background:#252d41;color:#d2cfee;border-color:#6970a333}.checkin:nth-child(3){background:#39352a;color:#eaddb6;border-color:#8c7d4833}.checkin span,.checkin small{color:inherit;opacity:.8}.quest-icon{background:#314641;color:#cce4ba}.quest.complete .quest-icon{color:#203517}.meal-icon,.meal-empty .empty-symbol{background:#304736;color:#d5efb6}.insight{background:#253b2d;border-color:#718d5433;color:#e0efc6}.insight p{color:#bed0b2}.nutrition-preview{background:#284036;color:#e2f2d7}dialog{background:#122631;color:#e4f0e8;border:1px solid #50646a;box-shadow:0 35px 150px #0009}dialog::backdrop{background:#051019cc}.quantity button{background:#2a4545;color:#d2f0d7}.hint{color:#a2b99f!important}.source-link{display:inline-block;text-decoration:none;margin:10px 0}.food-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;align-items:start}.search-dock{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#18303a;border:1px solid #52716b;border-radius:18px;box-shadow:0 7px 0 #050f1555}.search-dock>span{font-size:28px;color:#ccf18e}.search-dock input{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:12px 0;font-size:16px}.search-dock:focus-within{outline:2px solid #bbde84}.search-dock button{white-space:nowrap;padding:9px 0}.filter-chips{display:flex;gap:8px;overflow-x:auto;padding:18px 0 5px}.filter-chips button{white-space:nowrap;background:#162932;color:#a9bfc2;border:1px solid #31464d;padding:9px 14px;border-radius:30px;font-size:12px}.filter-chips button.selected{background:#d5ff73;color:#233622;border-color:#d5ff73}.combo-row{display:grid;grid-template-columns:1.35fr 1fr;gap:14px}.combo-card{height:210px;text-align:left;border-radius:22px;position:relative;overflow:hidden;padding:0;background:linear-gradient(140deg,#3a604e,#223840);color:white;box-shadow:0 12px 25px #0003;transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));border:1px solid #63877444}.combo-card:first-child{grid-row:span 2;height:100%;min-height:330px}.combo-card:not(:first-child){height:158px}.combo-card img{width:100%;height:100%;object-fit:cover;display:block}.combo-card .food-symbol{font-size:68px;display:block;text-align:right;padding:12px 30px}.combo-shade{position:absolute;inset:0;background:linear-gradient(0deg,#061319fa,#06131922 90%)}.combo-copy{position:absolute;bottom:20px;left:20px;right:35px;display:flex;flex-direction:column;gap:6px}.combo-copy b{font:800 24px Manrope;letter-spacing:-.7px}.combo-copy small{font-size:10px;letter-spacing:1.3px;color:#d1ef99}.combo-copy>span{font-size:12px;color:#d4e0db}.combo-add{position:absolute;right:14px;bottom:18px;background:#d5ff73;border-radius:50%;width:26px;height:26px;text-align:center;font-size:22px;color:#233b26}.visual-food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.visual-food-card{background:linear-gradient(140deg,#243b42,#152730);border:1px solid #4e65643b;border-radius:20px;overflow:hidden;box-shadow:0 9px 0 #040e174d,0 18px 22px #0002;transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .15s}.food-front{width:100%;height:150px;background:radial-gradient(circle at 40% 20%,#57705f55,transparent),#22343e;position:relative;padding:0;display:grid;place-items:center}.food-front:hover{transform:none}.food-front img{width:100%;height:100%;object-fit:contain;background:white}.food-front img[src*="chana"]{object-fit:cover;background:transparent}.food-symbol{font-size:58px;filter:drop-shadow(0 12px 8px #0004)}.food-badge{position:absolute;left:9px;bottom:9px;font-size:8px;letter-spacing:.7px;background:#102621e8;color:#dfefcc;border:1px solid #c8ec9d33;padding:5px 7px;border-radius:7px}.food-card-copy{padding:16px}.food-card-copy h3{font-size:15px;line-height:1.3;min-height:38px;margin:0}.food-card-copy p{font-size:12px;color:#a2b9ba;margin:9px 0}.food-card-bottom{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#aec5ba}.food-card-bottom b{font-size:17px;color:#d5eeae}.round-add{width:33px;height:33px;border-radius:11px;background:#d5ff73;color:#213728;font-size:25px;box-shadow:0 3px 0 #739348}.meal-tray{height:auto;position:sticky;top:24px;padding:23px;border:1px solid #5a786555;border-radius:26px;background:linear-gradient(140deg,#243e3a,#15232c);display:block;box-shadow:0 20px 45px #0004}.tray-head h2{font-size:29px}.tray-head h2 span{color:var(--lime)}.tray-head p{color:#abc0b6;font-size:13px}.tray-orbit{height:145px;display:flex;align-items:center;justify-content:center;flex-direction:column;margin:20px auto;position:relative}.tray-orbit:before{content:'';position:absolute;border:1px solid #afd28688;border-radius:50%;width:190px;height:135px;transform:rotate(-18deg);box-shadow:0 0 35px #d5ff7315,inset 0 0 35px #d5ff730b}.tray-orbit strong{font:800 41px Manrope;color:#e4f5b5;z-index:1}.tray-orbit small{font-size:12px;color:#adc6b2}.tray-empty{text-align:center;line-height:1.8;color:#a5b9b2;font-size:14px;margin:30px 0}.tray-item{display:grid;grid-template-columns:42px minmax(0,1fr) 20px;gap:10px;align-items:center;padding:14px 0;border-top:1px solid #ffffff15}.tray-thumb{height:42px;overflow:hidden;border-radius:12px;background:#243c3c;display:grid;place-items:center}.tray-thumb img{width:100%;height:100%;object-fit:cover}.tray-thumb .food-symbol{font-size:28px}.tray-item b{font-size:12px;line-height:1.5;display:block}.tray-item label{font-size:11px;color:#b2c4b8;display:block;margin-top:6px}.tray-item input{width:67px;padding:4px;font-size:12px;background:#122b2b;border:1px solid #4c6758;border-radius:5px}.tray-item button{background:none;color:#baceba;font-size:20px;padding:0}.tray-macros{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;border-top:1px solid #6b806544;padding-top:20px;margin-top:12px}.tray-macros b{font:700 16px Manrope;color:#dcf4b7}.tray-macros small{display:block;font-size:10px;margin-top:5px;color:#b0c4b6}.portion-photo{width:130px;height:130px;object-fit:contain;background:#fff;border-radius:18px;float:right;margin:12px 0 12px 20px}.training-intro{background:radial-gradient(ellipse at 90% 70%,#41895b44,transparent 70%),#17333b;padding:35px;border:1px solid #6b98854d;border-radius:25px}.training-intro h2{font-size:40px;margin:20px 0}.training-intro p{max-width:650px;line-height:1.6;color:#b3c9c5}.training-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.training-grid p,.phase-track p{font-size:14px;line-height:1.7;color:#b7c9c2}.phase-track{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.phase-track .eyebrow{display:block;margin-bottom:15px}.table-wrap{background:#142630}.chart path{stroke:#50645a}.chart-labels{color:#c8dbbc}.settings-grid p{color:#b9cbc4}#toast{background:#d5ff73;color:#18311f;border:1px solid #9ac055;font-weight:600}
@media(min-width:1450px){main{max-width:1540px}.journey{min-height:350px}.avatar-space{right:20px;width:255px}.journey-copy{max-width:58%}}
@media(max-width:1190px){.food-workspace{grid-template-columns:minmax(0,1fr) 280px;gap:18px}.visual-food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top-grid{grid-template-columns:1fr}.journey{min-height:340px}.avatar-space{right:40px}.combo-copy b{font-size:20px}.combo-copy{left:14px}.combo-row{grid-template-columns:1fr}.combo-card:first-child,.combo-card:not(:first-child){grid-row:auto;height:185px;min-height:0}.combo-card img{object-position:50% 50%}.combo-card:first-child img{object-position:50% 40%}}
@media(max-width:800px){aside:not(.meal-tray){background:#0e2029ef;backdrop-filter:blur(20px)}nav button span{font-size:9px}nav button.active{box-shadow:none}.food-workspace{display:flex;flex-direction:column;gap:24px}.food-shelf{width:100%}.meal-tray{width:100%;position:relative;top:auto;bottom:auto;z-index:1;height:auto;padding:24px;display:block}.journey{padding:24px;min-height:350px}.journey h2{font-size:30px}.journey-copy{max-width:61%}.avatar-space{right:-14px;top:80px;transform:scale(.8);transform-origin:right center}.journey p{max-width:175px}.scene-caption{left:24px;right:24px;font-size:9px}.combo-row{grid-template-columns:1fr 1fr}.combo-card:first-child{grid-column:1/-1;height:230px}.combo-card:not(:first-child){height:185px}.combo-copy b{font-size:19px}.combo-copy>span{font-size:11px}.food-workspace .section-heading{align-items:start;gap:10px}.section-heading .eyebrow{font-size:10px}.visual-food-grid{gap:12px}.food-card-copy{padding:13px}.food-front{height:145px}.food-card-copy h3{font-size:14px}.food-badge{font-size:7px}.search-dock{padding:6px 12px}.search-dock input{font-size:14px}.search-dock button{font-size:12px}.training-grid,.phase-track{grid-template-columns:1fr}.training-intro h2{font-size:32px}.training-intro{padding:25px}.training-intro p{font-size:14px}.tray-orbit{height:130px}.tray-macros b{font-size:20px}.tray-macros small{font-size:12px}.tray-item b{font-size:14px}.tray-item input{font-size:14px;width:85px}.food-symbol{font-size:52px}.meal-tray .primary{padding:16px}.food-workspace footer{line-height:1.7}.portion-photo{width:95px;height:95px;margin-left:10px}}
@media(prefers-reduced-motion:reduce){.journey,.combo-card,.visual-food-card{transform:none!important}}
/* Personal avatar and editable recipe studio. */
.identity-core.personal-avatar{left:28px;top:16px;width:184px;height:246px;border-radius:24px;padding:0;overflow:hidden;background:#153038;box-shadow:0 20px 35px #0005;border-color:#acd48855}.personal-avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 20%}.avatar-preview{display:block;max-width:100%;width:300px;max-height:60vh;object-fit:contain;margin:auto;border-radius:24px}.food-front img[src*="assets/foods/"]{object-fit:cover;background:#12262e}.portion-photo[src*="assets/foods/"]{object-fit:cover;background:#12262e}.recipe-ingredient{display:grid;grid-template-columns:42px minmax(0,1fr) 18px 32px;gap:10px;align-items:center;border-bottom:1px solid #ffffff16;padding:10px 0}.recipe-ingredient .field{margin:0;font-size:13px}.recipe-ingredient input{margin-top:6px;min-height:44px}.fat-shortcuts{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.fat-shortcuts button{font-size:12px;min-height:44px}.round-add{min-width:44px;min-height:44px}.tray-item input{min-height:44px}.tray-item button{min-height:44px}.visual-food-card:focus-within{outline:2px solid #d5ff73;outline-offset:3px}#customize-recipe{clear:both;margin:12px 0}#recipe-preview{min-height:70px}.tray-orbit strong{font-size:36px}
@media(max-width:450px){.journey{min-height:470px}.journey-copy{max-width:100%;z-index:2}.journey h2{font-size:28px}.journey p{max-width:190px}.avatar-space{top:198px;right:0;transform:scale(.72)}.journey-copy .primary{margin-top:6px}.scene-caption{max-width:180px;bottom:18px}.food-card-copy{padding:10px}.food-card-copy h3{font-size:13px}.food-card-bottom{gap:5px}.food-card-bottom b{font-size:15px}.food-front{height:135px}.nutrition-preview{flex-wrap:wrap}.recipe-ingredient{gap:7px;grid-template-columns:36px minmax(0,1fr) 12px 28px}}
.ingredient-source{font-size:11px;color:#d5ff73;display:block;margin-top:4px}.tray-item{grid-template-columns:42px minmax(0,1fr) 36px}.tray-item button{min-width:36px}.tray-orbit strong{font-variant-numeric:tabular-nums}

.personal-avatar img{object-fit:contain;object-position:center bottom}.identity-core.personal-avatar{background:radial-gradient(ellipse at 50% 90%,#40695777,transparent 70%);border:0;box-shadow:none;overflow:visible}
