:root{--bg:#11100e;--panel:#181613;--panel2:#211e19;--cream:#f7e8bf;--text:#fff4da;--muted:#b7aa8e;--line:#4a3b2b;--yellow:#f7b42d;--orange:#f47b20;--burnt:#d94b18;--red:#bf3217;--accent:#f47b20;--good:#f6c44f;--blue:#65a9c9}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(circle at 75% 0,#2d2218 0,transparent 30%),var(--bg);color:var(--text);font:14px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}.hidden{display:none!important}.topbar{max-width:1440px;margin:auto;padding:18px 28px;display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #3a2d20}.brandline{display:flex;align-items:center;gap:18px;color:inherit;text-decoration:none;min-width:0}.brandline img{width:118px;height:92px;object-fit:cover;object-position:center 54%;border-radius:12px}.brandline h1{margin:2px 0 0;font-size:clamp(18px,2.1vw,30px);letter-spacing:-.025em}.eyebrow,.kicker{font-size:11px;letter-spacing:.18em;font-weight:900;color:var(--yellow);margin:0;text-transform:uppercase}.top-actions{display:flex;gap:8px;flex-wrap:wrap}.layout{max-width:1440px;margin:auto;padding:24px 28px 42px;display:grid;grid-template-columns:minmax(430px,560px) minmax(0,1fr);gap:20px}.panel,.hero-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(34,30,25,.96),rgba(22,20,17,.96));box-shadow:0 14px 35px rgba(0,0,0,.17)}.controls{padding:18px;align-self:start}.results{display:grid;gap:14px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.section-head>div{display:flex;align-items:center;gap:9px}.section-head h2{font-size:18px;margin:0}.section-head.compact{margin-bottom:10px}.step{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(180deg,var(--yellow),var(--orange));color:#20140b;font-size:10px;font-weight:1000}.sport-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.sport{border:1px solid var(--line);background:#171411;color:var(--muted);padding:10px;border-radius:11px;cursor:pointer;font-weight:800}.sport.active{background:linear-gradient(180deg,#f7b42d,#f47b20);color:#1a110b;border-color:transparent}.grid{display:grid;gap:10px}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:2fr 1fr 1fr}label{display:block;font-size:11px;font-weight:800;color:#decfb0;margin:0 0 10px;position:relative}.unit{float:right;color:#8f806b;font-weight:600}input,select{width:100%;margin-top:5px;border:1px solid #59452f;background:#100f0d;color:var(--text);border-radius:10px;padding:10px 11px;outline:none}input:focus,select:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(244,123,32,.13)}input[type=range]{padding:0;accent-color:var(--orange)}.range-row{display:grid;grid-template-columns:1fr 56px;align-items:center;gap:10px}.range-row output{background:#0e0d0b;border:1px solid #4e3a28;border-radius:10px;padding:8px;text-align:center;color:var(--yellow);font-size:16px;font-weight:900}.divider{height:1px;background:#3d3023;margin:17px 0}.subcard{background:#12100e;border:1px solid #473726;border-radius:13px;padding:11px 12px;margin:10px 0}.mini-title{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:var(--yellow);margin:0 0 4px}.hint{font-size:11px;color:var(--muted);margin:5px 0 12px}.switch-row{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#13110e;border:1px solid #473726;border-radius:12px;padding:11px 12px}.switch-row strong,.switch-row small{display:block}.switch-row small{font-weight:400;color:var(--muted);margin-top:2px}.switch-row input{width:42px;height:22px;accent-color:var(--orange);margin:0}.primary,.ghost,.text-btn{border-radius:10px;padding:10px 13px;cursor:pointer;font-weight:850}.primary{border:0;background:linear-gradient(180deg,var(--yellow),var(--orange));color:#21140b}.ghost{border:1px solid #65503a;background:#171411;color:var(--text)}.ghost:hover,.text-btn:hover{border-color:var(--orange)}.text-btn{border:0;background:transparent;color:var(--muted);padding:4px}.danger{color:#ffb9a7}.small{padding:7px 10px;font-size:12px}.wide{width:100%}.profile-row{display:grid;grid-template-columns:1fr auto auto;gap:7px}.profile-row select{margin:0}.hero-card{padding:22px;background:linear-gradient(140deg,#201b15,#12100e 60%,#2f1b0d)}.hero-top{display:flex;justify-content:space-between;gap:20px}.hero-top h2{font-size:48px;line-height:1;margin:6px 0}.hero-top p:last-child{color:var(--muted);margin:0}.badge{align-self:start;border:1px solid var(--orange);color:var(--yellow);border-radius:999px;padding:8px 12px;font-size:10px;font-weight:900;letter-spacing:.1em}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.metric{text-align:center}.ring{width:118px;height:118px;border:8px solid #433224;border-top-color:var(--orange);border-right-color:var(--yellow);border-radius:50%;margin:auto;display:grid;place-content:center}.ring strong{display:block;font-size:24px}.ring span{font-size:11px;color:var(--muted)}.metric p{font-size:11px;color:var(--muted)}.totals-card,.timeline-card,.schedule-card,.science-card{padding:18px}.carry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.carry{background:#12100e;border:1px solid #4a3929;border-radius:12px;padding:13px}.carry strong{display:block;font-size:20px}.carry span{font-size:11px;color:var(--muted)}.visual-timeline{display:flex;min-height:82px;align-items:center;overflow-x:auto;padding:14px 6px}.time-node{min-width:64px;position:relative;text-align:center;color:var(--muted);font-size:10px}.time-node:before{content:"";position:absolute;left:0;right:0;top:17px;height:2px;background:#4a3929}.time-node:first-child:before{left:50%}.time-node:last-child:before{right:50%}.dot{position:relative;z-index:2;margin:auto;width:13px;height:13px;border-radius:50%;background:#7b654b;border:3px solid #17130f;box-shadow:0 0 0 1px #7b654b}.time-node.fuel .dot{background:var(--yellow);box-shadow:0 0 0 1px var(--yellow)}.time-node.drink .dot{border-color:var(--blue)}.time-node.caf .dot{background:var(--orange);box-shadow:0 0 0 1px var(--orange)}.time-node span{display:block;margin-top:10px}.legend{font-size:10px;color:var(--muted)}.legend i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--yellow);margin:0 4px 0 8px}.legend i:nth-child(2){background:var(--blue)}.legend i:nth-child(3){background:var(--orange)}.schedule-head,.schedule-row{display:grid;grid-template-columns:70px minmax(210px,1fr) 70px 75px 80px;gap:8px;align-items:center}.schedule-head{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:8px 10px}.schedule-row{padding:11px 10px;border-top:1px solid #3f3022}.schedule-row:nth-child(even){background:#12100e}.pill{display:inline-block;border-radius:999px;padding:3px 7px;background:#352719;color:#f1d49e;font-size:9px!important;margin-left:6px}.notes-list{display:grid;gap:9px}.note{background:#12100e;border-left:3px solid var(--orange);border-radius:8px;padding:10px 12px;color:#eedebe}.note.warn{border-left-color:var(--yellow)}.disclaimer{font-size:10px;color:#887b68;margin-top:14px}.results .panel{overflow:hidden}footer{max-width:1440px;margin:auto;padding:0 28px 40px;color:#8b7d68;font-size:11px}#toast{position:fixed;right:22px;bottom:22px;background:var(--cream);color:#25170d;border-radius:10px;padding:10px 14px;opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none;font-weight:800}#toast.show{opacity:1;transform:none}.locker-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.saved-fuels{margin-top:12px;padding:10px;border:1px solid #5b432c;border-radius:12px;background:#14110e}.saved-fuels-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.saved-fuels-head p{margin:0}.saved-fuels-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fuel-pick{display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;align-items:start;border:1px solid #59442f;border-radius:11px;padding:9px 10px;margin:0;background:#100e0c;cursor:pointer}.fuel-pick input[type=checkbox]{grid-row:1/3;width:18px!important;height:18px!important;min-width:18px;margin:2px 0 0!important;padding:0!important;accent-color:var(--orange)}.fuel-pick .fuel-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.fuel-pick .grams{font-size:12px;font-weight:900;color:var(--yellow);white-space:nowrap}.fuel-pick strong{display:block;line-height:1.25;font-size:12px}.fuel-pick .brand{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.locker-browser{margin-top:12px}.locker-browser>summary{cursor:pointer;font-weight:800;color:#f1dfbb;padding:8px 0}.locker-tools{display:flex;gap:8px;align-items:center;margin-bottom:10px}.locker-tools input{margin:0}.fuel-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:390px;overflow:auto;padding-right:4px}.library-item{border:1px solid #4b3928;border-radius:11px;padding:10px;background:#110f0d}.library-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.library-item strong{display:block;font-size:12px;line-height:1.25}.library-item .brand{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:3px}.library-item .grams{font-size:12px;font-weight:900;color:var(--yellow);white-space:nowrap}.library-actions{display:flex;gap:6px;margin-top:8px}.library-actions button{padding:6px 8px;font-size:10px}.library-actions .saved{border-color:var(--yellow);color:var(--yellow)}.custom-details{margin-top:12px}.aid-row{display:grid;grid-template-columns:90px 1fr 1fr auto;gap:8px;align-items:center;margin-top:8px}.aid-row label{margin:0}.aid-row .check{display:flex;align-items:center;gap:5px;font-size:.8rem}.aid-row .check input{width:18px;margin:0}.aid-callout{border-left:3px solid var(--orange);padding-left:10px;margin:8px 0}.auth-gate{position:fixed;inset:0;z-index:1000;background:rgba(10,9,8,.94);display:grid;place-items:center;padding:20px}.auth-card{width:min(440px,100%);background:#171410;border:1px solid #59422b;border-radius:22px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.45)}.auth-card img{width:190px;height:150px;object-fit:cover;object-position:center 54%;display:block;margin:auto}.auth-card h1{font-size:28px;line-height:1.05;margin:10px 0}.auth-card p{color:var(--muted)}.auth-status{min-height:20px;color:var(--yellow)!important}.back-link{display:inline-block;color:#d8c49f;margin-top:8px}.auth-card label{margin-top:14px}
@media(max-width:900px){.topbar{align-items:start;flex-direction:column}.layout{grid-template-columns:1fr}.carry-grid{grid-template-columns:1fr 1fr}.schedule-card{overflow-x:auto}.schedule-head,.schedule-row{min-width:650px}}@media(max-width:600px){.topbar,.layout{padding-left:14px;padding-right:14px}.brandline img{width:92px;height:74px}.top-actions{width:100%}.top-actions button{flex:1}.metrics{grid-template-columns:1fr}.carry-grid,.grid.two,.saved-fuels-grid,.fuel-library{grid-template-columns:1fr}.profile-row{grid-template-columns:1fr 1fr}.profile-row select{grid-column:1/-1}.grid.three,.aid-row{grid-template-columns:1fr 1fr}}
@media print{.top-actions,.controls,footer,#copyBtn{display:none!important}.layout{display:block;padding:0}.results{display:block}.panel,.hero-card{break-inside:avoid;box-shadow:none;border:1px solid #ccc;margin-bottom:12px;background:white;color:#111}}

.account-chip{display:inline-flex;align-items:center;max-width:250px;padding:9px 11px;border:1px solid #59452f;border-radius:999px;color:#ead9b7;background:#13110e;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.strategy-card{padding:13px}.strategy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.strategy-choice{display:flex;align-items:center;gap:10px;border:1px solid #59442f;border-radius:11px;padding:11px;background:#100e0c;margin:0;cursor:pointer}.strategy-choice input{width:18px!important;height:18px!important;min-width:18px;margin:0!important;padding:0!important;accent-color:var(--orange)}.strategy-choice span{min-width:0}.strategy-choice strong,.strategy-choice small{display:block}.strategy-choice strong{font-size:12px;color:var(--text)}.strategy-choice small{font-size:10px;color:var(--muted);font-weight:500;margin-top:2px}.flask-fields{margin-top:10px;padding-top:10px;border-top:1px solid #3f3022}.selection-count{align-self:start;border:1px solid #5d432c;border-radius:999px;padding:4px 8px;color:var(--yellow);font-size:10px;font-weight:900;white-space:nowrap}.fuel-pick.picked{border-color:var(--orange);box-shadow:inset 3px 0 0 var(--orange);background:#17110d}.empty-aids{color:var(--muted);font-size:11px;margin:8px 0 2px}.carry-grid{display:block}.carry-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.carry-summary>div{background:#12100e;border:1px solid #4a3929;border-radius:11px;padding:10px}.carry-summary strong{display:block;font-size:22px;color:var(--yellow)}.carry-summary span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.carry-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.carry-fuel{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:0 9px;align-items:center;background:#12100e;border:1px solid #4a3929;border-radius:11px;padding:10px;min-width:0}.carry-fuel strong{grid-row:1/3;font-size:22px;color:var(--cream)}.carry-fuel span{font-size:11px;font-weight:800;line-height:1.2;min-width:0}.carry-fuel small{font-size:9px;color:var(--muted);margin-top:2px}.carry-warning,.carry-empty{grid-column:1/-1;border:1px dashed #5a432d;border-radius:11px;padding:14px;color:var(--muted);background:#12100e}.schedule-empty{padding:16px;color:var(--muted)}
@media(max-width:900px){.carry-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.strategy-grid,.carry-summary,.carry-items{grid-template-columns:1fr}.account-chip{max-width:100%;width:100%;justify-content:center}}
.grid.three-even{grid-template-columns:repeat(3,minmax(0,1fr))}.science-hint{margin-top:-3px;padding:7px 9px;border-left:2px solid var(--yellow);background:#15120f;border-radius:5px}.carry-hint{margin:-3px 0 11px}.carry-list{display:grid;gap:7px}.carry-row{display:grid;grid-template-columns:minmax(0,1fr) 150px 80px;gap:12px;align-items:center;background:#12100e;border:1px solid #4a3929;border-radius:12px;padding:10px 12px}.carry-name{min-width:0}.carry-name .brand{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.carry-name strong{display:block;font-size:12px;line-height:1.25;margin-top:2px}.carry-name small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.carry-carb{text-align:right}.carry-carb strong{display:block;font-size:18px;color:var(--yellow)}.carry-carb span{font-size:9px;color:var(--muted);text-transform:uppercase}.qty-control{display:grid;grid-template-columns:34px 58px 34px;gap:5px;justify-content:end}.qty-control button{height:34px;border:1px solid #654c35;background:#1a1612;color:var(--cream);border-radius:8px;font-size:18px;cursor:pointer}.qty-control input{height:34px;padding:5px;text-align:center;margin:0;border-radius:8px}.qty-source{display:block;text-align:right;color:var(--muted);font-size:8px;margin-top:2px}.carry-summary .on-target{border-color:#83702f}.carry-summary .over{border-color:#8b5325}.carry-summary .under{border-color:#785342}.bottle-card{padding:18px}.bottle-plan-head h3{margin:3px 0 4px;font-size:18px}.bottle-plan-head p{margin:0;color:var(--muted);font-size:11px}.bottle-visuals{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-end;margin:18px 0}.bottle-wrap{text-align:center}.bottle-shape{width:84px;height:150px;border:4px solid #e9d7b4;border-radius:21px 21px 15px 15px;background:linear-gradient(180deg,#28231c 0 34%,#e7a832 35%,#e77722 100%);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:visible;box-shadow:inset 0 0 0 3px #15120f}.bottle-cap{position:absolute;top:-16px;width:48px;height:18px;border:4px solid #e9d7b4;border-bottom:0;border-radius:8px 8px 0 0;background:#1a1713}.bottle-shape img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#111;border:2px solid #f6e5bf}.bottle-shape span{font-size:10px;font-weight:900;color:#20150c;background:#f7e8bf;border-radius:999px;padding:3px 6px;margin-top:7px}.bottle-dose{font-size:10px;color:var(--yellow);font-weight:900;margin-top:7px;max-width:105px}.refill-list{display:grid;gap:6px;margin-top:10px}.refill-row{display:grid;grid-template-columns:90px 1fr 1.4fr 1fr;gap:8px;align-items:center;border-top:1px solid #3f3022;padding:9px 4px;font-size:10px}.refill-row span{color:var(--muted)}.bottle-empty{padding:15px;border:1px dashed #5a432d;border-radius:11px;color:var(--muted);background:#12100e}
@media(max-width:700px){.grid.three-even{grid-template-columns:1fr}.carry-row{grid-template-columns:minmax(0,1fr) 132px}.carry-carb{grid-column:1/-1;text-align:left;display:flex;gap:6px;align-items:baseline}.qty-control{grid-template-columns:32px 52px 32px}.refill-row{grid-template-columns:1fr 1fr}.refill-row span:nth-child(3),.refill-row span:nth-child(4){grid-column:1/-1}.bottle-visuals{gap:13px}.bottle-shape{width:72px;height:132px}.bottle-shape img{width:36px;height:36px}}

.meter-range{accent-color:#f08a24}
.hint-band{margin:8px 0 12px;padding:10px 12px;border-radius:12px;background:#191613;border:1px solid #433426;color:#dbc9a8;font-size:12px;line-height:1.45}
.hint-band.good{border-color:#4f7b54;background:#132015;color:#dbeed6}
.hint-band.warn{border-color:#b98a2f;background:#221b10;color:#f7e1a6}
.hint-band.high{border-color:#a85638;background:#251613;color:#f2c1b5}
.flask-card{padding:13px}
.profile-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}.profile-actions .wide{width:100%}
.compact-switch{margin-top:10px}
.carry-compact{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.carry-chip{display:inline-flex;gap:6px;align-items:center;border:1px solid #5b452f;background:#181512;color:#f7ead0;border-radius:999px;padding:8px 10px;font-size:12px}.carry-list{display:grid;gap:10px}.carry-row{display:grid;grid-template-columns:minmax(0,1fr) auto 86px;gap:12px;align-items:center;border:1px solid #453525;background:#12100e;border-radius:12px;padding:12px}.carry-name strong{display:block}.carry-name small{display:block;color:#b7aa8e;margin-top:2px}.carry-qty{display:flex;justify-content:center}.carry-carb{text-align:right}.carry-warning{border:1px dashed #6a543d;border-radius:12px;padding:15px;color:#d7c4a1;background:#171310}.cycle-bottle{display:flex;flex-direction:column;align-items:center;position:relative}.cycle-lid{width:34px;height:15px;background:#17130f;border:3px solid #efe0ba;border-bottom:0;border-radius:8px 8px 0 0}.cycle-neck{width:24px;height:12px;background:#17130f;border:3px solid #efe0ba;border-top:0;border-bottom:0}.cycle-body{width:88px;height:148px;border:3px solid #efe0ba;border-radius:20px 20px 16px 16px;background:linear-gradient(180deg,#101010 0 18%,#efc55f 18% 44%,#f29a2a 44% 68%,#e55e24 68% 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 3px #17130f}.cycle-body img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#111;border:2px solid #f7e7be}.cycle-body span{margin-top:8px;background:#f8ead0;color:#1e140c;border-radius:999px;padding:3px 7px;font-weight:900;font-size:10px}.bottle-dose{margin-top:8px;font-size:12px;font-weight:800;color:#f6b53a;text-align:center}.bottle-empty,.schedule-empty,.carry-empty{padding:18px;border:1px dashed #5d4933;border-radius:12px;color:#d3c2a0;background:#171310}.science-hint{margin-top:6px}.results .hero-card .badge{cursor:default}.profile-row{margin-bottom:10px}
@media(max-width:760px){.carry-row{grid-template-columns:1fr;}.carry-carb{text-align:left}.carry-qty{justify-content:flex-start}.cycle-body{width:74px;height:128px}.cycle-body img{width:34px;height:34px}}

.cycle-nozzle{width:22px;height:12px;border:3px solid #efe0ba;border-bottom:0;border-radius:8px 8px 0 0;background:#0f0d0b;margin-bottom:-1px}.cycle-cap{width:50px;height:26px;border:3px solid #efe0ba;border-radius:10px 10px 6px 6px;background:repeating-linear-gradient(90deg,#0f0d0b 0 5px,#efe0ba 5px 6px);box-shadow:inset 0 0 0 8px #0f0d0b}.cycle-body{width:94px;height:168px;border:3px solid #efe0ba;border-radius:18px 18px 12px 12px;background:linear-gradient(180deg,#111 0 16%,#efc55f 16% 42%,#f29a2a 42% 67%,#e55e24 67% 100%);clip-path:polygon(24% 0,76% 0,80% 6%,80% 18%,70% 24%,70% 37%,80% 43%,80% 56%,70% 62%,70% 74%,79% 80%,79% 100%,21% 100%,21% 80%,30% 74%,30% 62%,20% 56%,20% 43%,30% 37%,30% 24%,20% 18%,20% 6%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 3px #17130f}.cycle-body img{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#111;border:2px solid #f7e7be}.cycle-body span{margin-top:8px;background:#f8ead0;color:#1e140c;border-radius:999px;padding:3px 7px;font-weight:900;font-size:10px}.bottle-dose{margin-top:8px;font-size:12px;font-weight:800;color:#f6b53a;text-align:center}.dose-label{display:block;font-size:10px;letter-spacing:.06em;color:#b7aa8e;margin-bottom:4px}.scoop-row,.extra-scoop-row{display:flex;gap:6px;justify-content:center;align-items:center;flex-wrap:wrap}.scoop-icon{display:inline-block;width:24px;height:18px;border:2px solid #efe0ba;border-radius:11px 11px 8px 8px;position:relative;background:transparent}.scoop-icon::after{content:"";position:absolute;right:-12px;top:7px;width:12px;height:2px;background:#efe0ba;border-radius:2px}.scoop-icon.solo{margin:2px 0}.extra-scoops{margin-top:16px;border-top:1px solid #433325;padding-top:14px}.scoop-text{font-size:11px;color:#b7aa8e}.refill-row{grid-template-columns:72px 1.1fr 1.3fr 1fr}.carry-summary .on-target,.carry-summary .over,.carry-summary .under{display:flex;flex-direction:column}.bottle-empty,.schedule-empty,.carry-empty{padding:18px;border:1px dashed #5d4933;border-radius:12px;color:#d3c2a0;background:#171310}@media(max-width:760px){.cycle-body{width:80px;height:150px}.cycle-body img{width:34px;height:34px}.refill-row{grid-template-columns:1fr}.cycle-cap{width:44px;height:22px}.cycle-nozzle{width:18px;height:10px}}

/* V4.6 targeted layout simplification */
.estimate-line{margin:-1px 0 12px;padding:10px 12px;border:1px solid #4d3b2a;background:#12100e;border-radius:11px;color:#f6c44f;font-weight:800}.advanced-details{margin-top:12px;border:1px solid #473726;border-radius:12px;background:#12100e}.advanced-details summary{padding:11px 12px;cursor:pointer;font-weight:850;color:#e8d8b7}.advanced-body{padding:0 12px 12px}.result-overview{padding:20px}.result-overview .hero-top h2{font-size:28px;margin:4px 0}.primary-results{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.primary-result{background:#100e0c;border:1px solid #5e452f;border-radius:15px;padding:18px}.primary-result>span{display:block;color:var(--yellow);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:950}.primary-result strong{display:block;font-size:32px;line-height:1.05;margin:7px 0 5px}.primary-result small{display:block;color:var(--muted);font-size:11px}.secondary-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.secondary-metrics>div{background:#15120f;border:1px solid #423225;border-radius:11px;padding:11px}.secondary-metrics strong{display:block;font-size:17px;color:#f7e8bf}.secondary-metrics span{display:block;font-size:9px;color:#9e8f77;text-transform:uppercase;letter-spacing:.07em;margin-top:2px}.sodium-comparison{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;padding:12px;border:1px solid #493827;border-radius:12px;background:#12100e}.sodium-comparison>div{background:#0f0d0b;border-radius:9px;padding:10px}.sodium-comparison span{display:block;color:#9e8f77;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.sodium-comparison strong{display:block;font-size:18px;margin-top:3px}.sodium-comparison p{grid-column:1/-1;margin:3px 0 0;font-size:11px}.sodium-comparison p.short{color:#f1c564}.sodium-comparison p.close{color:#bfe0a9}.sodium-comparison p.above{color:#efb391}.carry-grid{display:block}.carry-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.carry-summary>div{background:#100e0c;border:1px solid #4c3929;border-radius:11px;padding:11px}.carry-summary strong{display:block;font-size:20px;color:var(--yellow)}.carry-summary span{font-size:10px;color:var(--muted)}.carry-compact{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.carry-chip{border:1px solid #5b452f;background:#181512;border-radius:999px;padding:7px 10px;font-size:11px}.carry-list{display:grid;gap:8px}.carry-row{display:grid;grid-template-columns:minmax(0,1fr) auto 80px;gap:10px;align-items:center;border:1px solid #453525;background:#12100e;border-radius:11px;padding:10px}.carry-name .brand{display:block;color:#9d8f78;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.carry-name small{display:block;color:var(--muted);font-size:10px}.carry-carb{text-align:right}.carry-carb strong{display:block;color:var(--yellow);font-size:16px}.carry-carb span{font-size:9px;color:var(--muted)}.cycle-nozzle{width:22px;height:12px;border:3px solid #efe0ba;border-bottom:0;border-radius:8px 8px 0 0;background:#0f0d0b;margin-bottom:-1px}.cycle-cap{width:50px;height:26px;border:3px solid #efe0ba;border-radius:10px 10px 6px 6px;background:repeating-linear-gradient(90deg,#0f0d0b 0 5px,#efe0ba 5px 6px);box-shadow:inset 0 0 0 8px #0f0d0b}.cycle-body{width:92px;height:168px;border:3px solid #efe0ba;border-radius:18px 18px 12px 12px;background:linear-gradient(180deg,#111 0 16%,#efc55f 16% 42%,#f29a2a 42% 67%,#e55e24 67% 100%);clip-path:polygon(22% 0,78% 0,84% 7%,84% 18%,70% 26%,70% 38%,82% 46%,82% 58%,70% 65%,70% 100%,30% 100%,30% 65%,18% 58%,18% 46%,30% 38%,30% 26%,16% 18%,16% 7%);display:flex;flex-direction:column;align-items:center;justify-content:center}.cycle-body img{width:38px;height:38px;border-radius:50%;object-fit:contain}.cycle-body span{margin-top:8px;background:#f8ead0;color:#1e140c;border-radius:999px;padding:3px 7px;font-weight:900;font-size:10px}.scoop-icon{display:inline-block;width:24px;height:18px;border:2px solid #efe0ba;border-radius:11px 11px 8px 8px;position:relative}.scoop-icon:after{content:"";position:absolute;right:-12px;top:7px;width:12px;height:2px;background:#efe0ba;border-radius:2px}.scoop-row,.extra-scoop-row{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap}.extra-scoops{margin:14px 0;padding:12px;border-top:1px solid #433325;border-bottom:1px solid #433325}.bottle-visuals{display:flex;gap:18px;align-items:flex-end;flex-wrap:wrap;margin:14px 0}.bottle-wrap{text-align:center}.dose-label{display:block;color:#9f9078;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.bottle-dose{margin-top:7px}.refill-row{display:grid;grid-template-columns:72px 1.4fr 1fr .8fr;gap:8px;padding:10px 4px;border-top:1px solid #3d3023;font-size:10px}.refill-row span{color:var(--muted)}
@media(max-width:760px){.layout{grid-template-columns:1fr;padding:14px}.topbar{padding:12px 14px}.brandline img{width:74px;height:58px}.brandline h1{font-size:17px}.top-actions{justify-content:flex-end}.primary-results{grid-template-columns:1fr 1fr}.primary-result strong{font-size:25px}.secondary-metrics{grid-template-columns:1fr 1fr}.carry-row{grid-template-columns:1fr}.carry-carb{text-align:left}.refill-row{grid-template-columns:1fr}.sodium-comparison{grid-template-columns:1fr}.sodium-comparison p{grid-column:1}.setup-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.primary-results{grid-template-columns:1fr}.setup-grid{grid-template-columns:1fr}.top-actions #saveProfileBtn{display:none}}

/* Bottle silhouette refinement */
.cycle-bottle{position:relative;width:96px;height:190px;display:grid;place-items:center}.bottle-svg{position:absolute;inset:0;width:100%;height:100%;display:block}.bottle-logo{position:absolute;width:38px;height:38px;object-fit:contain;border-radius:50%;top:78px;left:50%;transform:translateX(-50%)}.bottle-volume{position:absolute;top:120px;left:50%;transform:translateX(-50%);background:#f8ead0;color:#1e140c;border-radius:999px;padding:3px 7px;font-weight:900;font-size:10px;white-space:nowrap}.cycle-nozzle,.cycle-cap,.cycle-body{display:none!important}
@media(max-width:760px){.cycle-bottle{width:84px;height:166px}.bottle-logo{width:32px;height:32px;top:68px}.bottle-volume{top:105px;font-size:9px}}

/* V4.7 — cleaner controls, locker inventory, readable draggable timeline */
input[type=number]{appearance:textfield;-moz-appearance:textfield}
input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
select{background-image:linear-gradient(45deg,transparent 50%,#f7b42d 50%),linear-gradient(135deg,#f7b42d 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px;appearance:none}

.saved-fuels-grid{grid-template-columns:1fr;gap:9px}
.fuel-pick{display:block;border:1px solid #59442f;border-radius:12px;padding:10px;background:#100e0c;margin:0;cursor:default}
.fuel-pick.picked{border-color:#d97922;box-shadow:0 0 0 1px rgba(244,123,32,.18) inset}
.fuel-pick-main{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;align-items:start;margin:0;cursor:pointer}
.fuel-pick-main input[type=checkbox]{width:18px!important;height:18px!important;min-width:18px;margin:2px 0 0!important;padding:0!important;accent-color:var(--orange)}
.fuel-copy{min-width:0}.fuel-copy .fuel-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.fuel-copy .brand{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fuel-copy .grams{font-size:12px;font-weight:900;color:var(--yellow);white-space:nowrap}.fuel-copy strong{display:block;font-size:12px;line-height:1.25;margin-top:2px}
.fuel-pick-controls{display:grid;grid-template-columns:minmax(120px,180px) 34px;gap:8px;align-items:end;margin:9px 0 0 33px}.fuel-pick-controls label{margin:0;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#9d8f78}.fuel-pick-controls select{margin-top:4px;padding:7px 30px 7px 8px;font-size:11px}.locker-delete{width:34px;height:34px;border-radius:9px;border:1px solid #713b2f;background:#21120e;color:#ffb7a3;font-size:20px;line-height:1;cursor:pointer}.locker-delete:hover{border-color:#e56a45;background:#2a1510}
.flask-config{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0 0 33px;padding-top:9px;border-top:1px solid #3b2d21}.flask-config label,.flask-library-config label{margin:0;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#9d8f78}.flask-config select,.flask-library-config select{margin-top:4px;padding:7px 30px 7px 8px;font-size:11px}
.flask-library-config{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px;padding-top:8px;border-top:1px solid #382b20}.library-flask{border-color:#67503a}
.selection-count{white-space:nowrap}

.carry-select-label{margin:0;min-width:92px;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#9d8f78}.carry-select-label select{margin-top:4px;padding:7px 30px 7px 8px;font-size:11px}.carry-summary .on-target{border-color:#4f8a50;background:#132015}.carry-summary .on-target strong{color:#a9dd9c}.carry-summary .under{border-color:#a9812f;background:#201b10}.carry-summary .under strong{color:#f2c75e}.carry-summary .over{border-color:#a54b39;background:#24120f}.carry-summary .over strong{color:#ff8f78}.carry-summary .on-target span,.carry-summary .under span,.carry-summary .over span{color:#e6dbc0}

/* Bottle shape follows a classic cycling bidon: cap, upper chamber, one waist, long lower body. */
.cycle-bottle{position:relative;width:102px;height:204px;display:grid;place-items:center}.bottle-svg{position:absolute;inset:0;width:100%;height:100%;display:block}.bottle-line{stroke:#efe0ba;stroke-width:3;stroke-linejoin:round}.bottle-fill{fill:#15120f}.bottle-body-fill{fill:#15120f}.bottle-detail{fill:none;stroke:#a97738;stroke-width:2.2;stroke-linecap:round}.bottle-detail-faint{stroke:#5b422c}.bottle-ribs{fill:none;stroke:#8c673c;stroke-width:1.2}.bottle-logo{position:absolute;width:42px;height:42px;object-fit:contain;border-radius:50%;top:112px;left:50%;transform:translateX(-50%)}.bottle-volume{position:absolute;top:157px;left:50%;transform:translateX(-50%);background:#f8ead0;color:#1e140c;border-radius:999px;padding:3px 7px;font-weight:900;font-size:10px;white-space:nowrap}
.scoop-svg{width:54px;height:30px;overflow:visible}.scoop-bowl,.scoop-handle,.scoop-end{fill:none;stroke:#efe0ba;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.scoop-svg.solo{margin:2px 0}.scoop-row,.extra-scoop-row{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}.extra-scoop-row .scoop-svg{width:48px;height:27px}.extra-scoops{margin:14px 0;padding:12px;border-top:1px solid #433325;border-bottom:1px solid #433325}

.timeline-help{margin:0 0 12px;color:#c9b999;font-size:11px;max-width:760px}.visual-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;min-height:0;overflow:visible;padding:0}.timeline-block{position:relative;min-height:118px;border:1px solid #6b5239;border-radius:14px;background:linear-gradient(180deg,#18130f,#0f0d0b);padding:14px 42px 13px 14px;cursor:grab;box-shadow:0 8px 18px rgba(0,0,0,.14);user-select:none}.timeline-block:active{cursor:grabbing}.timeline-block.solid{border-color:#c3973c}.timeline-block.food{border-color:#9f7534}.timeline-block.gel{border-color:#c7632f}.timeline-block.flask{border-color:#d9902d}.timeline-block.drink{border-color:#6f9eb4}.timeline-time{font-size:18px;font-weight:950;color:#f7c653;letter-spacing:-.02em}.timeline-action{font-size:13px;font-weight:800;line-height:1.32;margin-top:7px;color:#fff0cf}.timeline-carb{display:inline-block;margin-top:10px;border-radius:999px;background:#2a2118;padding:4px 8px;color:#e8d6b2;font-size:10px;font-weight:850}.timeline-drag-handle{position:absolute;right:9px;top:9px;width:30px;height:36px;border:1px solid #67503a;border-radius:8px;background:#17130f;color:#e5cfaa;font-size:18px;line-height:1;cursor:grab;touch-action:none}.timeline-block.dragging{opacity:.58;transform:scale(.985)}.timeline-block.drag-target{outline:2px solid var(--yellow);outline-offset:2px}.legend{display:none}
.schedule-row strong{color:#f7c653}.schedule-row span:nth-child(2){color:#f4e5c7}

@media(max-width:760px){
  .fuel-pick-controls,.flask-config{margin-left:0}.fuel-pick-controls{grid-template-columns:1fr 34px}.flask-config{grid-template-columns:1fr 1fr}.visual-timeline{grid-template-columns:1fr}.timeline-block{min-height:104px;padding-right:46px}.timeline-time{font-size:20px}.timeline-action{font-size:14px}.cycle-bottle{width:92px;height:184px}.bottle-logo{width:38px;height:38px;top:100px}.bottle-volume{top:142px}.carry-qty{justify-content:flex-start}.carry-select-label{width:140px}
}
@media(max-width:480px){.flask-config{grid-template-columns:1fr}.saved-fuels-head{align-items:flex-start;flex-direction:column}.saved-fuels-head .hint{margin:0}.fuel-library{grid-template-columns:1fr}}


/* V4.8 — compact inputs, denser locker, direct carry steppers, straighter bottle, live reordering */
.controls input:not([type=range]):not([type=search]):not([type=checkbox]),
.controls select{width:auto;max-width:100%;min-width:0}
#distance{width:8ch}#rideSpeed{width:15ch}#runPace{width:16ch}#intensity{width:22ch}#weight{width:9ch}
#fuelInterval{width:17ch}#caffeineTarget{width:12ch}#startBottles{width:8ch}#bottleSize{width:15ch}
#electrolyteProduct{width:min(34ch,100%)}#packetSodium{width:10ch}#sweatMode{width:22ch}#sweatRate{width:18ch}
#profileSelect{width:min(24ch,100%)}#customFuelCarbs{width:9ch}#customFuelUnit{width:12ch}
.locker-tools input[type=search],#customFuelName{width:100%!important}
.advanced-grid{display:flex;gap:16px;align-items:end;flex-wrap:wrap}.advanced-grid label{margin-bottom:10px}

.saved-fuels-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.fuel-pick{padding:8px;border-radius:10px;min-width:0}.fuel-pick-main{grid-template-columns:20px minmax(0,1fr);gap:7px}.fuel-copy .fuel-top{gap:5px}.fuel-copy .brand{font-size:8px}.fuel-copy .grams{font-size:11px}.fuel-copy strong{font-size:11px}
.fuel-pick-controls{display:flex;align-items:end;gap:6px;margin:7px 0 0 27px}.fuel-pick-controls label{width:auto}.fuel-pick-controls select{width:6ch!important;min-width:6ch;padding:6px 22px 6px 7px;background-position:calc(100% - 12px) 50%,calc(100% - 7px) 50%}.locker-delete{width:30px;height:30px;border-radius:8px;font-size:18px;padding:0}
.flask-config{grid-template-columns:auto auto;justify-content:start;gap:6px;margin:7px 0 0 27px;padding-top:7px}.flask-config select,.flask-library-config select{width:auto!important;min-width:0;padding:6px 22px 6px 7px;background-position:calc(100% - 12px) 50%,calc(100% - 7px) 50%}.flask-size-saved,.flask-size-lib{max-width:11ch}.flask-carbs-saved,.flask-carbs-lib{max-width:10ch}

.carry-stepper{display:grid;grid-template-columns:auto 30px 24px;align-items:center;gap:5px;justify-content:start}.carry-stepper-label{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#9d8f78}.carry-stepper-value{display:grid;place-items:center;min-width:30px;height:34px;border:1px solid #5b432e;border-radius:8px;background:#0f0d0b;color:#f7e8bf;font-size:16px}.carry-stepper-arrows{display:grid;grid-template-rows:1fr 1fr;gap:2px}.qty-step{width:24px;height:16px;padding:0;border:1px solid #65503a;border-radius:5px;background:#171411;color:#f7c653;font-size:8px;line-height:1;cursor:pointer}.qty-step:hover{border-color:var(--orange)}

.scoop-end{display:none}.scoop-svg{width:64px;height:30px}.scoop-bowl,.scoop-handle{stroke-width:3.2}
.timeline-block{transition:box-shadow .16s ease,border-color .16s ease,opacity .16s ease}.timeline-block.dragging{opacity:.7;box-shadow:0 18px 34px rgba(0,0,0,.35);z-index:5}.timeline-block.drag-target{outline:none}

@media(max-width:760px){
  .saved-fuels-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .fuel-pick{padding:7px}.fuel-pick-controls,.flask-config{margin-left:0}.fuel-pick-controls{display:flex}.flask-config{grid-template-columns:auto auto}
  .fuel-pick-controls select{width:5.5ch!important;min-width:5.5ch}.locker-delete{width:28px;height:28px}
  .controls input:not([type=range]):not([type=search]):not([type=checkbox]),.controls select{max-width:100%}
}
@media(max-width:390px){.saved-fuels-grid{gap:5px}.fuel-copy .brand{max-width:8ch}.flask-config{grid-template-columns:1fr}.flask-config select{max-width:11ch}}

/* V4.8.1 – one vertical schedule, simpler bottle + scoop, drink mix integration */
.timeline-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.timeline-card,.science-card{padding:18px}.visual-timeline{display:grid !important;grid-template-columns:1fr !important;gap:10px;align-items:stretch;overflow:visible;padding:0}.timeline-block{min-height:0;padding:14px 14px 13px 14px}.timeline-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.timeline-action{padding-right:0}.timeline-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.timeline-fluid{display:inline-block;margin-top:10px;border-radius:999px;background:#17202a;padding:4px 8px;color:#cfe2f0;font-size:10px;font-weight:850}.timeline-drag-handle{position:static;width:30px;height:32px;flex:0 0 auto}.schedule-card,.schedule-head,#schedule{display:none !important}.drink-mix-card{margin:0 0 14px;padding:12px;border:1px solid #4d3b2a;border-radius:12px;background:#14110e}.drink-mix-row{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding:10px 0;border-top:1px solid #3a2d21}.drink-mix-row:first-of-type{border-top:0;padding-top:2px}.drink-mix-row strong{color:#f7c653}.drink-mix-row span{color:#cdbd9b;font-size:11px}.bottle-svg .bottle-body-fill{fill:#15120f}.bottle-svg .bottle-detail{stroke:#a97738}.scoop-svg{width:58px;height:26px}.scoop-bowl,.scoop-handle{fill:none;stroke:#efe0ba;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.scoop-row .scoop-svg,.extra-scoop-row .scoop-svg{width:58px;height:26px}@media(max-width:760px){.timeline-actions{width:100%;justify-content:flex-end}.timeline-block{padding:13px}.timeline-time{font-size:20px}.timeline-action{font-size:14px}}


/* V4.8.2 account-storage test */
.cloud-status{font-size:10px;font-weight:850;letter-spacing:.04em;border:1px solid #5b4935;border-radius:999px;padding:5px 8px;color:#c7b99d;background:#14110e;white-space:nowrap}
.cloud-status.saved{border-color:#4f8a50;color:#a9dd9c;background:#132015}
.cloud-status.syncing{border-color:#a9812f;color:#f2c75e;background:#201b10}
.cloud-status.error{border-color:#a54b39;color:#ff9a84;background:#24120f}
.cloud-status.local{color:#a99c85}


/* V4.9 — compact flow, carb-bottle configuration, account storage retained */
#resetBtn{white-space:nowrap}
.drink-config{display:flex;align-items:end;gap:6px;flex-wrap:wrap;margin:7px 0 0 27px;padding-top:7px;border-top:1px solid #3b2d21}
.drink-config label{margin:0;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#9d8f78}
.drink-config select{margin-top:4px!important;width:auto!important;min-width:0;padding:6px 22px 6px 7px!important;background-position:calc(100% - 12px) 50%,calc(100% - 7px) 50%!important}
.drink-total{align-self:center;margin-top:16px;font-size:10px;font-weight:900;color:#f7c653;white-space:nowrap}
.library-drink{border-color:#506c77}

/* Half-size bottle visualization: information first, illustration second. */
.bottle-visuals{gap:10px;margin:8px 0 10px;align-items:flex-end}
.cycle-bottle{width:54px!important;height:108px!important}
.bottle-logo{width:20px!important;height:20px!important;top:57px!important}
.bottle-volume{display:none!important}
.bottle-dose{margin-top:3px!important;max-width:88px;font-size:9px!important}
.dose-label{font-size:8px!important;margin-bottom:1px!important}
.carb-bolt{position:absolute;right:-5px;top:35px;display:flex;align-items:center;gap:1px;border:1px solid #f7c653;background:#20170c;color:#ffd25a;border-radius:999px;padding:1px 3px;font-size:10px;font-weight:950;line-height:1;z-index:3;box-shadow:0 2px 5px rgba(0,0,0,.3)}
.carb-bolt em{font-style:normal;font-size:7px;line-height:1}
.scoop-svg{width:34px!important;height:16px!important}.scoop-cup,.scoop-rim,.scoop-handle{fill:none;stroke:#efe0ba;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.scoop-row,.extra-scoop-row{gap:5px!important}
.drink-mix-card{margin:8px 0 10px;padding:9px 10px}
.drink-mix-card .hint{margin:3px 0 6px}
.drink-mix-row{padding:7px 0}
.refill-row{padding:8px 4px}

/* One compact sortable schedule: alternating rows instead of cards. */
.visual-timeline{display:block!important;padding:0!important;border:1px solid #3f3022;border-radius:10px;overflow:hidden!important}
.timeline-row{display:grid;grid-template-columns:58px minmax(0,1fr) 54px 30px;gap:8px;align-items:center;min-height:44px;padding:8px 9px;background:#12100e;cursor:grab;user-select:none;border:0}
.timeline-row:nth-child(even){background:#1a1713}
.timeline-row:hover{background:#211c16}
.timeline-row.dragging{opacity:.62;box-shadow:0 8px 22px rgba(0,0,0,.35);position:relative;z-index:5}
.timeline-row .timeline-time{font-size:13px!important;margin:0;color:#f7c653;white-space:nowrap}
.timeline-row .timeline-action{font-size:11px!important;line-height:1.3;margin:0;color:#f3e3c3;font-weight:700}
.timeline-row .timeline-carb{font-size:10px;margin:0;padding:0;background:transparent;color:#d8c8a8;text-align:right;white-space:nowrap}
.timeline-row .timeline-drag-handle{position:static!important;width:27px!important;height:28px!important;padding:0;border:0;background:transparent;color:#b9a98b;font-size:17px;cursor:grab;touch-action:none}
.timeline-row .timeline-drag-handle:hover{color:#f7c653}
.timeline-help{margin-bottom:8px!important}
.compact-disclaimer{margin:9px 0 0}

@media(max-width:760px){
  .drink-config{margin-left:0}
  .cycle-bottle{width:50px!important;height:100px!important}.bottle-logo{width:19px!important;height:19px!important;top:53px!important}.carb-bolt{top:32px;right:-8px}
  .timeline-row{grid-template-columns:50px minmax(0,1fr) 42px 28px;gap:6px;padding:8px 7px}.timeline-row .timeline-action{font-size:11px!important}.timeline-row .timeline-carb{font-size:9px}
}


/* V4.9.2 — compact water card + partial reservoir fueling */
body.auth-checking .topbar,body.auth-checking #plannerRoot,body.auth-checking footer{visibility:hidden}
body.auth-checking{min-height:100vh;background:#11100e}
.fixed-value{display:block;margin-top:4px;padding:6px 8px;border:1px solid #4b3928;border-radius:8px;background:#100f0d;color:#f7c653;font-size:11px;font-weight:900;white-space:nowrap}
.formula-config{align-items:end}.formula-config label{min-width:auto}
.bottle-card{padding:14px!important}.bottle-card .section-head{margin-bottom:6px}.compact-water-head h3{font-size:15px!important;margin:1px 0 2px!important}.compact-water-head .mini-title{margin-bottom:1px}.water-summary-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:4px 0}.water-summary-row .bottle-visuals{margin:2px 0!important;flex:0 0 auto}.cycle-bottle{width:42px!important;height:84px!important}.bottle-logo{width:16px!important;height:16px!important;top:44px!important}.carb-bolt{top:25px!important;right:-8px!important;font-size:8px!important;padding:1px 3px!important}.carb-bolt em{font-size:6px!important}.bottle-dose{max-width:74px!important;font-size:8px!important}.dose-label{font-size:7px!important}.scoop-svg{width:27px!important;height:13px!important}.compact-sodium{display:grid!important;grid-template-columns:auto auto!important;gap:6px!important;margin:0!important;padding:7px!important;min-width:260px;flex:1}.compact-sodium>div{padding:6px 8px!important}.compact-sodium span{font-size:8px!important}.compact-sodium strong{font-size:15px!important}.compact-sodium p{grid-column:1/-1!important;margin:0!important;font-size:9px!important}.drink-mix-card{margin:6px 0!important;padding:7px 9px!important}.drink-mix-row{padding:5px 0!important;gap:2px!important}.drink-mix-row span{font-size:9px!important}.drink-mix-row strong{font-size:10px}.mix-warning{color:#efb391!important}.refill-list{margin-top:4px!important;gap:0!important}.refill-row{padding:5px 2px!important;grid-template-columns:64px 1.2fr 1fr 1fr!important;font-size:9px!important}.refill-row.compact-start{border-top:1px solid #3f3022}.timeline-row{min-height:40px!important;padding:6px 8px!important}.timeline-row .timeline-drag-handle{font-size:16px!important}.carry-name small{line-height:1.3}
@media(max-width:760px){.water-summary-row{align-items:flex-start;gap:9px}.compact-sodium{min-width:0;width:100%}.refill-row{grid-template-columns:58px minmax(0,1fr)!important}.refill-row span:nth-child(n+4){grid-column:2}.cycle-bottle{width:40px!important;height:80px!important}.bottle-logo{top:42px!important}.carb-bolt{top:24px!important}.formula-config{margin-left:0!important}}
