:root{--ink:#18382e;--muted:#536c62;--bg:#f8fcf9;--panel:#fff;--line:#d3e9dd;--green:#17664f;--green2:#237b60;--soft:#e2f5e9;--gold:#d6a747;--red:#9a3b43;--shadow:0 14px 38px rgba(25,83,57,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(47,121,100,.25);outline-offset:2px}.hidden{display:none!important}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,#dcece5 0,transparent 32%),linear-gradient(145deg,#f7faf8,#eaf1ed)}.auth-card{width:min(480px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:38px;box-shadow:var(--shadow)}.logo-mark{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,var(--green),var(--green2));color:#fff;font-weight:800;font-size:1.35rem;box-shadow:0 8px 22px rgba(30,89,72,.22)}.small-logo{width:40px;height:40px;border-radius:12px}.eyebrow{margin:18px 0 6px;color:var(--green2);font-weight:800;font-size:.74rem;letter-spacing:.12em}.auth-card h1,.page-heading h1{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.08;margin:0 0 10px;letter-spacing:-.035em}.muted{color:var(--muted)}.fine-print{font-size:.78rem;color:var(--muted);margin:20px 0 0}.stack{display:grid;gap:15px;margin-top:24px}label{display:grid;gap:6px;font-weight:650;font-size:.88rem}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);padding:11px 12px}textarea{resize:vertical}.button{border:0;border-radius:11px;padding:11px 16px;font-weight:750}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:#174a3b}.button.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.text-button{border:0;background:transparent;color:var(--green);font-weight:750;padding:6px}.icon-button{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:38px;height:38px;font-size:1.2rem}.toast{position:fixed;top:18px;right:18px;z-index:100;max-width:420px;background:#173f36;color:#fff;border-radius:12px;padding:12px 16px;box-shadow:var(--shadow);opacity:0;transform:translateY(-10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:#7d2932}
.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:#143b32;color:#fff;padding:20px 14px;display:flex;flex-direction:column}.brand-block{display:flex;align-items:center;gap:11px;padding:4px 8px 24px}.brand-block strong,.brand-block span{display:block}.brand-block span{font-size:.78rem;color:#b7d0c7}.sidebar nav{display:grid;gap:5px}.nav-button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:#d6e5df;border-radius:11px;padding:11px 13px;text-align:left;font-weight:650}.nav-button span{width:20px;text-align:center}.nav-button:hover,.nav-button.active{background:rgba(255,255,255,.12);color:#fff}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.14);padding:16px 8px 4px}.sidebar-footer .text-button{color:#d6e5df;padding-left:0}.user-summary strong,.user-summary span{display:block}.user-summary span{font-size:.78rem;color:#b7d0c7}.workspace{min-width:0;padding:28px 34px 70px}.mobile-header{display:none}.view{display:none;max-width:1180px;margin:auto}.view.active{display:block}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.page-heading .eyebrow{margin-top:0}.role-pill{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;background:var(--soft);color:var(--green);font-size:.78rem;font-weight:800;padding:7px 11px}.safety-banner{border-left:4px solid var(--green2);background:var(--soft);padding:13px 16px;border-radius:12px;margin-bottom:18px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}.metric-card{display:block;text-align:left;border:1px solid var(--line);background:#fff;border-radius:16px;padding:17px;color:var(--ink);box-shadow:0 4px 12px rgba(25,53,43,.03)}button.metric-card:hover{border-color:#9ebeb2;transform:translateY(-1px)}.metric-card span,.metric-card small,.metric-card strong{display:block}.metric-card span{font-size:.78rem;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.05em}.metric-card strong{font-size:1.65rem;margin:5px 0}.metric-card small{color:var(--muted)}.content-grid{display:grid;grid-template-columns:1.3fr .9fr;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:16px;box-shadow:0 3px 12px rgba(25,53,43,.025)}.panel h2{margin:0 0 8px;font-size:1.15rem}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.panel-heading .eyebrow{margin:0 0 3px}.list-state{display:grid;gap:9px}.empty-state{border:1px dashed var(--line);border-radius:12px;padding:20px;color:var(--muted);text-align:center}.list-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0}.list-row strong,.list-row span{display:block}.list-row small{color:var(--muted)}.entry-icon{width:34px;height:34px;border-radius:10px;background:var(--soft);color:var(--green);display:grid;place-items:center;flex:none;font-weight:800}.row-main{display:flex;gap:10px;min-width:0}.row-meta{text-align:right;white-space:nowrap}.date-control{width:auto}.checklist-list{display:grid}.check-item{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.check-item:last-child{border-bottom:0}.check-item input{width:21px;height:21px}.check-item strong,.check-item span{display:block}.check-item span{font-size:.8rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;gap:10px}.filter-row{display:flex;gap:10px;justify-content:flex-end;margin-bottom:12px}.filter-row select{width:auto}.bar-chart{height:210px;display:grid;grid-template-columns:repeat(7,1fr);gap:10px;align-items:end;padding-top:18px}.chart-column{height:100%;display:grid;grid-template-rows:1fr auto;gap:7px;text-align:center;font-size:.75rem;color:var(--muted)}.chart-bar{align-self:end;background:linear-gradient(var(--green2),var(--green));border-radius:8px 8px 3px 3px;min-height:4px}.summary-list .list-row{align-items:center}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px}th,td{text-align:left;padding:11px 9px;border-bottom:1px solid var(--line)}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.numeric{text-align:right}.routine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.routine-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:19px}.routine-card h2{margin:5px 0}.routine-card .routine-meta{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.mini-pill{border-radius:999px;background:var(--soft);color:var(--green);padding:5px 8px;font-size:.75rem;font-weight:750}.day-options,.permission-options{display:flex;flex-wrap:wrap;gap:8px 14px}.day-options label,.permission-options label,.toggle-label{display:flex;align-items:center;gap:7px}.day-options input,.permission-options input,.toggle-label input{width:auto}fieldset{border:1px solid var(--line);border-radius:12px;padding:11px 13px}legend{font-size:.82rem;font-weight:750;padding:0 5px}
.phase-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.phase-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}.phase-card span,.phase-card strong,.phase-card small{display:block}.phase-card span{color:var(--green2);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.phase-card strong{margin:6px 0;font-size:1rem}.phase-card small{color:var(--muted)}.meal-timeline{display:grid}.meal-slot{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.meal-slot:last-child{border-bottom:0}.meal-slot h3{margin:7px 0 2px}.meal-slot p{margin:0 0 8px}.meal-time{font-weight:850;color:var(--green);white-space:nowrap}.meal-slot details,.recipe-card details{margin-top:8px}.meal-slot summary,.recipe-card summary{cursor:pointer;font-weight:750;color:var(--green)}.meal-slot ul,.recipe-card ul,.recipe-card ol{margin:8px 0 0;padding-left:22px}.meal-log-link{padding-left:0;margin-top:5px}.section-heading{margin:26px 0 12px}.recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:18px}.recipe-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.recipe-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.recipe-heading h3{margin:8px 0 0}.recipe-time{color:var(--muted);font-size:.8rem;white-space:nowrap}.source-note{display:block;color:var(--muted);margin-top:14px}.reference-note{border-left:4px solid var(--gold)}
.protocol-timing{padding:12px 14px;border:1px solid var(--gold);border-radius:12px;background:#fffaf0;color:var(--green);font-weight:750}.checkbox-field{display:flex;align-items:center;gap:9px}.checkbox-field input{width:auto}.smoothie-log-button{margin-top:14px}
.pyramid-weekly-protocol{margin:16px 0;padding:14px 16px;border-radius:14px;background:#f3f8f5;border:1px solid var(--line)}.pyramid-weekly-protocol span,.pyramid-weekly-protocol strong{display:block}.pyramid-weekly-protocol span{color:var(--green2);font-size:.74rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.pyramid-weekly-protocol strong{margin-top:5px}.pyramid-weekly-protocol ul{margin:9px 0 0;padding-left:20px}.pyramid-weekly-protocol li+li{margin-top:4px}
@media(max-width:950px){.metric-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.routine-grid{grid-template-columns:1fr}.phase-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:-270px;z-index:40;width:250px;transition:.2s;padding-bottom:max(20px,env(safe-area-inset-bottom))}.sidebar.open{left:0;box-shadow:20px 0 50px rgba(0,0,0,.2)}.workspace{padding:calc(78px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(50px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.mobile-header{position:fixed;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);padding:calc(12px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left))}.page-heading{display:block}.page-heading>.role-pill,.page-heading>.button,.page-heading>.date-control{margin-top:14px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.filter-row{justify-content:stretch}.filter-row>*{width:50%!important}.auth-card{padding:28px 22px}.metric-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.recipe-grid{grid-template-columns:1fr}.meal-slot{grid-template-columns:1fr;gap:6px}.phase-grid{grid-template-columns:1fr}}
@media(max-width:480px){.metric-grid{grid-template-columns:1fr}.form-actions{display:grid}.routine-grid{grid-template-columns:1fr}}
td small{display:block;color:var(--muted);margin-top:3px;max-width:420px}.numeric{white-space:nowrap}.mini-pill{display:inline-block}
.store-row td{background:var(--soft);color:var(--green);border-bottom-color:#c9ddd5}.store-row strong{font-size:.92rem}.purchase-check{display:flex;align-items:center;gap:8px;white-space:nowrap}.purchase-check input{width:21px;height:21px}.purchase-check span{font-size:.78rem}.purchased-row td:not(:first-child){opacity:.58}.purchased-row td:nth-child(2) strong{text-decoration:line-through}
.preview-banner{max-width:1180px;margin:0 auto 18px;padding:14px 16px;border:1px solid #d3b169;border-radius:15px;background:#fff7e7;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 8px 22px rgba(95,69,20,.08)}.preview-banner strong,.preview-banner span{display:block}.preview-banner strong{color:#76561f}.preview-banner span{color:#6f6553;font-size:.86rem;margin-top:2px}.preview-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:4px solid var(--gold)}.preview-intro .eyebrow{margin:0 0 4px}.preview-user-button{white-space:nowrap;padding:8px 12px}
@media(max-width:760px){.preview-banner{margin-top:8px;align-items:stretch;flex-direction:column}.preview-banner .button{width:100%}.preview-intro{align-items:flex-start;flex-direction:column}#allowedRows td:last-child{position:sticky;right:0;background:#fff}}
.pyramid-controls{display:grid;grid-template-columns:auto minmax(240px,1fr) auto;gap:16px;align-items:center}.pyramid-controls .button:disabled{cursor:not-allowed;opacity:.45}.pyramid-range-label{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}.pyramid-range-label span,.pyramid-range-label strong,.pyramid-range-label small{display:block}.pyramid-range-label small{color:var(--muted);white-space:nowrap}.pyramid-range-label input{padding:0;accent-color:var(--green2)}.pyramid-layout{display:grid;grid-template-columns:minmax(480px,1.2fr) minmax(300px,.8fr);gap:20px;align-items:start;margin-bottom:16px;overflow:hidden}.pyramid-cone-stage{padding:18px 20px 10px;perspective:900px}.pyramid-hint{text-align:center;color:var(--muted);font-size:.82rem;margin:12px 0 0}.pyramid-visual{display:flex;flex-direction:column;align-items:center;gap:0;padding:8px 0 18px;filter:drop-shadow(0 20px 18px rgba(25,53,43,.18));transform-style:preserve-3d}.pyramid-level{position:relative;min-height:62px;border:0;border-top:1px solid rgba(255,255,255,.68);border-bottom:5px solid rgba(19,47,38,.16);clip-path:polygon(11% 0,89% 0,100% 88%,96% 100%,4% 100%,0 88%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 9%;background:linear-gradient(165deg,#f7faf8 4%,#dce8e3 58%,#b8ccc4 100%);color:#3f514a;transform:rotateX(-5deg);transform-origin:center bottom;transition:transform .28s ease,filter .2s ease,background .2s ease,color .2s ease}.pyramid-level::after{content:"";position:absolute;inset:3px 12% auto;height:12px;border-radius:50%;background:linear-gradient(180deg,rgba(255,255,255,.6),rgba(255,255,255,0));pointer-events:none}.pyramid-level.level-8{width:22%;min-height:82px;clip-path:polygon(50% 0,100% 84%,91% 100%,9% 100%,0 84%);padding:29px 13px 8px;grid-template-columns:1fr}.pyramid-level.level-7{width:33%}.pyramid-level.level-6{width:44%}.pyramid-level.level-5{width:55%}.pyramid-level.level-4{width:66%}.pyramid-level.level-3{width:77%}.pyramid-level.level-2{width:88%}.pyramid-level.level-1{width:100%}.pyramid-level.foundation{background:linear-gradient(165deg,#f4f9e8,#cfe3b7 62%,#9fbe7b)}.pyramid-level.fruit{background:linear-gradient(165deg,#fff8df,#f0d889 62%,#d4ab45)}.pyramid-level.fasting{background:linear-gradient(165deg,#fff1df,#efc193 62%,#ce826d)}.pyramid-level:hover{filter:brightness(1.02);transform:rotateX(-5deg) translateZ(12px) scale(1.012)}.pyramid-level.active.foundation{background:linear-gradient(165deg,#dff2cd,#75b261 65%,#4f8f4d);color:#102f23}.pyramid-level.active.fruit{background:linear-gradient(165deg,#fff0b8,#e7bb50 65%,#c58a25);color:#382707}.pyramid-level.active.fasting{background:linear-gradient(165deg,#f8d6c5,#da8b76 65%,#b55b52);color:#3d1714}.pyramid-level.selected{box-shadow:inset 0 0 0 3px rgba(20,32,28,.72);filter:saturate(1.1);transform:rotateX(-5deg) translateZ(24px) scale(1.035);z-index:2}.pyramid-level span{font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.pyramid-level strong{font-size:.86rem;line-height:1.15;text-align:center}.pyramid-level small{font-size:.65rem;white-space:nowrap;opacity:.72}.pyramid-level.level-8 span,.pyramid-level.level-8 small{display:none}.pyramid-level.level-8 strong{font-size:.7rem;max-width:100px;margin:auto}.pyramid-detail{position:sticky;top:28px;animation:pyramidDrawerIn .36s cubic-bezier(.2,.8,.2,1);box-shadow:-12px 12px 28px rgba(25,53,43,.12)}.pyramid-drawer-close{position:absolute;right:14px;top:14px}.pyramid-detail h2{padding-right:34px}.pyramid-active-levels{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 14px}.pyramid-level-inspection{border-top:1px solid var(--line);margin-top:16px;padding-top:15px}.pyramid-level-inspection strong,.pyramid-level-inspection small{display:block}.pyramid-level-inspection p{margin:7px 0}.pyramid-level-inspection small{color:var(--muted)}.pyramid-inspection-label{display:block;color:var(--green2);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px}.pyramid-caution{display:grid;gap:4px;background:#fae9e4;border-left:4px solid var(--red);border-radius:11px;padding:12px 14px;margin-top:16px}.pyramid-caution span{color:#6e433b;font-size:.84rem}.pyramid-timeline{display:grid;grid-template-columns:repeat(19,minmax(32px,1fr));gap:6px}.pyramid-day{min-height:43px;border:1px solid var(--line);border-radius:10px;background:#f7faf8;color:var(--ink);display:grid;place-items:center;padding:3px}.pyramid-day span{font-weight:800;font-size:.82rem;grid-row:1;grid-column:1}.pyramid-day small{font-size:.58rem;color:var(--red);grid-row:2;grid-column:1;line-height:1}.pyramid-day:hover{border-color:#8fb4a6}.pyramid-day.selected{background:var(--green);border-color:var(--green);color:#fff}.pyramid-day.selected small{color:#fff}.pyramid-day.fasting:not(.selected){background:#fae9e4;border-color:#e6b8aa}@keyframes pyramidDrawerIn{from{opacity:0;transform:translateX(-42px)}to{opacity:1;transform:translateX(0)}}
.pyramid-level{min-height:62px;margin-top:-1px;border-radius:0;clip-path:polygon(var(--cone-inset) 0,calc(100% - var(--cone-inset)) 0,100% 100%,0 100%);grid-template-columns:1fr;place-items:center;padding:8px 7%;transform:none}.pyramid-level::after{inset:1px 10% auto;height:10px;border-radius:50%;opacity:.42}.pyramid-level.level-8{--cone-inset:50%;min-height:76px;margin-top:0;border-radius:0;clip-path:polygon(50% 0,100% 100%,0 100%);padding:20px 10px 8px;grid-template-columns:1fr}.pyramid-level.level-7{--cone-inset:16.667%}.pyramid-level.level-6{--cone-inset:12.5%}.pyramid-level.level-5{--cone-inset:10%}.pyramid-level.level-4{--cone-inset:8.333%}.pyramid-level.level-3{--cone-inset:7.143%}.pyramid-level.level-2{--cone-inset:6.25%}.pyramid-level.level-1{--cone-inset:5.5%}.pyramid-level:hover{filter:brightness(1.05);transform:none}.pyramid-level.selected{box-shadow:inset 0 0 0 3px rgba(20,32,28,.8);filter:saturate(1.18) brightness(1.02);transform:none;z-index:2}.pyramid-level span{display:block;font-size:.74rem;font-weight:900;letter-spacing:.08em}.pyramid-level strong,.pyramid-level small,.pyramid-level.level-8 strong,.pyramid-level.level-8 small{display:none}.pyramid-level.level-8 span{display:block}
.pyramid-visual{position:relative;filter:drop-shadow(18px 24px 18px rgba(25,53,43,.24));transform:perspective(900px) rotateX(4deg) rotateY(-3deg);transform-origin:center bottom}.pyramid-visual::before{content:"";position:absolute;z-index:4;pointer-events:none;inset:8px 0 18px;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(108deg,rgba(255,255,230,.58) 0%,rgba(255,255,255,.14) 34%,rgba(19,49,37,.08) 50%,rgba(34,88,48,.32) 74%,rgba(10,42,29,.46) 100%);mix-blend-mode:multiply}.pyramid-visual::after{content:"";position:absolute;z-index:5;pointer-events:none;top:8px;bottom:18px;left:50%;width:2px;background:linear-gradient(180deg,rgba(15,47,30,.75),rgba(15,47,30,.28) 72%,rgba(15,47,30,.06));transform-origin:top center;transform:skewX(-4deg);box-shadow:-1px 0 rgba(255,255,255,.35)}.pyramid-level span{position:relative;z-index:6;text-shadow:0 1px 1px rgba(255,255,255,.45)}
.pyramid-layout{grid-template-columns:minmax(620px,1.55fr) minmax(280px,.65fr)}.pyramid-cone-stage{padding-left:4px;padding-right:4px}.pyramid-level.level-8{width:26%;background:linear-gradient(160deg,#efe5ff 3%,#aa7bd2 58%,#72489d 100%)}.pyramid-level.level-7{width:37%;--cone-inset:14.865%;background:linear-gradient(160deg,#ffe6ef 3%,#e780a6 58%,#b84d79 100%)}.pyramid-level.level-6{width:48%;--cone-inset:11.458%;background:linear-gradient(160deg,#ffe8df 3%,#ee9978 58%,#c8604a 100%)}.pyramid-level.level-5{width:59%;--cone-inset:9.322%;background:linear-gradient(160deg,#fff2c8 3%,#e6be55 58%,#b88724 100%)}.pyramid-level.level-4{width:70%;--cone-inset:7.857%;background:linear-gradient(160deg,#eff4bd 3%,#b8c950 58%,#7d9630 100%)}.pyramid-level.level-3{width:80%;--cone-inset:6.25%;background:linear-gradient(160deg,#d9f4d9 3%,#69b878 58%,#39865a 100%)}.pyramid-level.level-2{width:90%;--cone-inset:5.556%;background:linear-gradient(160deg,#d6f4ef 3%,#54bcb3 58%,#267f82 100%)}.pyramid-level.level-1{width:100%;--cone-inset:5%;background:linear-gradient(160deg,#dceeff 3%,#609ccf 58%,#32689e 100%);color:#102942}
.pyramid-cone-stage{padding-top:28px;padding-bottom:34px;perspective:760px}.pyramid-visual{transform:perspective(760px) rotateX(16deg) rotateY(-9deg) rotateZ(-1deg)!important;transform-origin:50% 88%;filter:drop-shadow(24px 30px 20px rgba(25,53,43,.28))}.pyramid-visual::before{background:linear-gradient(104deg,rgba(255,255,225,.68) 0%,rgba(255,255,255,.18) 28%,rgba(28,61,43,.06) 43%,rgba(32,82,44,.31) 64%,rgba(8,38,26,.5) 100%)}.pyramid-visual::after{left:43%;transform:skewX(-3deg);background:linear-gradient(180deg,rgba(12,38,25,.82),rgba(12,38,25,.34) 72%,rgba(12,38,25,.08))}
.pyramid-cone-stage{padding-top:18px;padding-bottom:18px;perspective:none}.pyramid-visual{transform:none!important;filter:drop-shadow(0 18px 16px rgba(25,53,43,.18))}.pyramid-visual::before,.pyramid-visual::after{display:none}
@media(max-width:950px){.pyramid-layout{grid-template-columns:1fr}.pyramid-detail{position:static}.pyramid-timeline{grid-template-columns:repeat(10,minmax(32px,1fr))}}
@media(max-width:760px){.pyramid-controls{grid-template-columns:1fr 1fr}.pyramid-range-label{grid-column:1/-1;grid-row:1;grid-template-columns:1fr;gap:8px}.pyramid-controls .button{width:100%}.pyramid-layout{display:block}.pyramid-level{min-height:48px;padding-left:12%;padding-right:12%}.pyramid-level span,.pyramid-level.level-8 span{display:block}.pyramid-timeline{grid-template-columns:repeat(6,minmax(38px,1fr))}}
.pyramid-day.stage-1{background:#609ccf;border-color:#407bab;color:#102942}.pyramid-day.stage-2{background:#54bcb3;border-color:#318f89;color:#123d3c}.pyramid-day.stage-3{background:#69b878;border-color:#458f5b;color:#173f27}.pyramid-day.stage-4{background:#b8c950;border-color:#879a31;color:#30360f}.pyramid-day.stage-5{background:#e6be55;border-color:#b68b29;color:#4a3508}.pyramid-day.stage-6{background:#ee9978;border-color:#c66d51;color:#502219}.pyramid-day.stage-7{background:#e780a6;border-color:#b84d79;color:#4b1830}.pyramid-day.stage-8{background:#aa7bd2;border-color:#72489d;color:#301948}.pyramid-day.stage-2-3{background:linear-gradient(90deg,#54bcb3 0 50%,#69b878 50% 100%);border-color:#3c9272;color:#173f30}.pyramid-day.selected{background-color:inherit;outline:3px solid var(--green);outline-offset:2px;color:inherit;box-shadow:0 0 0 2px #fff}.pyramid-day.selected small{color:var(--red)}
.pyramid-day.stage-1.selected{background:#609ccf}.pyramid-day.stage-2.selected{background:#54bcb3}.pyramid-day.stage-3.selected{background:#69b878}.pyramid-day.stage-4.selected{background:#b8c950}.pyramid-day.stage-5.selected{background:#e6be55}.pyramid-day.stage-6.selected{background:#ee9978}.pyramid-day.stage-7.selected{background:#e780a6}.pyramid-day.stage-8.selected{background:#aa7bd2}.pyramid-day.stage-2-3.selected{background:linear-gradient(90deg,#54bcb3 0 50%,#69b878 50% 100%)}.pyramid-level.level-1.active{background:linear-gradient(160deg,#dceeff 3%,#609ccf 58%,#32689e 100%)}.pyramid-level.level-2.active{background:linear-gradient(160deg,#d6f4ef 3%,#54bcb3 58%,#267f82 100%)}.pyramid-level.level-3.active{background:linear-gradient(160deg,#d9f4d9 3%,#69b878 58%,#39865a 100%)}.pyramid-level.level-4.active{background:linear-gradient(160deg,#eff4bd 3%,#b8c950 58%,#7d9630 100%)}.pyramid-level.level-5.active{background:linear-gradient(160deg,#fff2c8 3%,#e6be55 58%,#b88724 100%)}.pyramid-level.level-6.active{background:linear-gradient(160deg,#ffe8df 3%,#ee9978 58%,#c8604a 100%)}.pyramid-level.level-7.active{background:linear-gradient(160deg,#ffe6ef 3%,#e780a6 58%,#b84d79 100%)}.pyramid-level.level-8.active{background:linear-gradient(160deg,#efe5ff 3%,#aa7bd2 58%,#72489d 100%)}.pyramid-level.active{box-shadow:inset 0 0 0 3px rgba(255,255,255,.72),0 0 0 2px rgba(20,59,50,.42)}
.pyramid-day-stage-notice{display:grid;grid-template-columns:auto 52px auto;align-items:center;justify-content:center;gap:10px;width:max-content;max-width:100%;margin:0 auto 18px;padding:10px 18px;border:1px solid #b9d4ca;border-radius:999px;background:#fff;box-shadow:0 7px 20px rgba(25,53,43,.08);color:var(--green)}.pyramid-day-stage-notice strong{font-size:.95rem}.pyramid-day-stage-notice small{grid-column:1/-1;text-align:center;color:var(--muted)}.pyramid-stage-arrow{position:relative;font-size:1.65rem;font-weight:900;line-height:1;text-align:center;animation:pyramidArrowPulse 1.25s ease-in-out infinite}.pyramid-stage-arrow::after{content:"";position:absolute;left:3px;right:3px;bottom:-4px;height:3px;border-radius:999px;background:var(--green2);opacity:.22}@keyframes pyramidArrowPulse{0%,100%{transform:translateX(-3px)}50%{transform:translateX(4px)}}
@media(max-width:480px){.pyramid-day-stage-notice{grid-template-columns:auto 38px auto;width:100%;border-radius:16px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.pyramid-level{transition:none}.pyramid-detail,.pyramid-stage-arrow{animation:none}}
.button:disabled{cursor:default;opacity:.62}
.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.about-brand-card{display:flex;align-items:flex-start;gap:18px}.about-brand-card .eyebrow{margin-top:0}.about-brand-card h2{font-size:1.45rem}.about-brand-card p:last-child{margin-bottom:0}.about-facts dl{margin:12px 0 0}.about-facts dl div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.about-facts dl div:last-child{border-bottom:0}.about-facts dt{color:var(--muted);font-weight:700}.about-facts dd{margin:0;font-weight:750;overflow-wrap:anywhere}.pending-label{display:inline-block;margin-left:5px;padding:2px 7px;border-radius:999px;background:#fff3d6;color:#795a19;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.release-list{margin:8px 0 0;padding-left:22px}.release-list li+li{margin-top:7px}.about-credit{text-align:center;color:var(--muted);font-size:.82rem;margin:24px 0 0}@media(max-width:760px){.about-grid{grid-template-columns:1fr}.about-brand-card{flex-direction:column}.about-facts dl div{grid-template-columns:1fr;gap:2px}}
/* Personal chef: private draft planning, with no browser-persisted financial inputs. */
.chef-modes{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}
.chef-recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px;margin:20px 0}
.chef-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0}
.chef-scope-grid>div,.chef-scope-grid>output{padding:18px;background:#eff6f3;border-radius:12px}
.chef-scope-grid output{display:block;line-height:1.6;margin-top:12px}
.chef-notice{padding:14px 18px;border-left:4px solid #aa8546;background:#fbf5e7;color:#4f4126}
.chef-review{border-left:4px solid #aa8546}
#chefWorkspace .panel{margin-bottom:20px}
#chefWorkspace li{margin-bottom:10px;line-height:1.6}
#chefWorkspace details{margin:16px 0}
#chefWorkspace summary{cursor:pointer;font-weight:700}
#chefWorkspace [hidden]{display:none!important}
#chefWorkspace .chef-price{width:135px;min-width:110px}
#chefWorkspace label{margin-bottom:14px}
#chefWorkspace th[scope=row]{font-weight:600}
#chefWorkspace a{text-decoration:underline;color:#185642}
@media(max-width:650px){.chef-scope-grid{grid-template-columns:1fr}.chef-modes .button{width:100%;white-space:normal}}
#starterShoppingItems .purchase-check{align-items:flex-start;gap:14px;line-height:1.5}
#starterShoppingItems .purchase-check small{display:block;margin-top:5px;color:var(--muted,#607069)}
#starterShoppingItems input[type=checkbox]{margin-top:5px;flex:none}
.trend-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:end}
.trend-controls label{flex:1;min-width:145px}
.trend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:20px}
.trend-number{font-size:2rem;font-weight:750;color:#183f59}
.trend-number span{font-size:1rem;font-weight:500}
.trend-delta{font-size:1.15rem;font-weight:700;color:#294a64}
.trend-line{display:block;width:100%;height:auto;margin:16px 0}
.trend-line text{font:12px system-ui;fill:#41586a}
.trend-gridline{stroke:#dce4ea;stroke-width:1}
.trend-path{stroke:#245c83;stroke-width:2.5;vector-effect:non-scaling-stroke}
.trend-point{fill:#245c83}
.sidebar{background:linear-gradient(160deg,#25765d,#175943);border-right:1px solid #cfe6d8}
.workspace{background:radial-gradient(ellipse at top right,#fff6da 0,transparent 45%),linear-gradient(150deg,#f0fbf4,#fcfdf9)}
.nav-button.active{background:#e7f8ed;color:#174d39;box-shadow:inset 3px 0 #d6a747}
.brand-block span,.user-summary span{color:#e0f2e8}
.panel,.metric-card,.routine-card{box-shadow:0 5px 20px rgba(33,105,73,.055)}
.chef-submission{padding:16px 0;border-bottom:1px solid var(--line)}
.nav-button.nav-subsection{width:calc(100% - 20px);margin-left:20px;padding-left:13px;font-size:.88rem;border-left:1px solid rgba(255,255,255,.32);border-radius:0 10px 10px 0}
#chefNavChildren[hidden]{display:none!important}
.nav-children[hidden]{display:none!important}
.sidebar{overflow-y:auto}
.nav-button .nav-chevron{margin-left:auto;width:auto}
.chef-submission .form-actions{flex-wrap:wrap;margin-top:12px}
.chef-preserve{white-space:pre-wrap;overflow-wrap:anywhere}
.chef-review-check{display:flex;align-items:flex-start;gap:10px}
.chef-review-check input{width:20px;flex:none;margin-top:3px}
#chefSubmissions [data-save-status]{overflow-wrap:anywhere}
#chefSubmissions form .form-actions{flex-wrap:wrap}
.trend-card{min-width:0}.trend-card details{margin-top:12px}.trend-card summary{cursor:pointer}
#trendWorkspace [hidden]{display:none!important}
#trendWorkspace>article,#trendWorkspace>[data-lab-owner]>article{margin-bottom:20px}
@media(max-width:600px){.trend-controls{display:grid;grid-template-columns:1fr}.trend-number{font-size:1.7rem}}
