:root{color:#142629;font-synthesis:none;text-rendering:optimizelegibility;--ink:#092c2b;--ink-2:#123d3a;--paper:#f7f4ee;--surface:#fffdfa;--surface-2:#f2eee7;--line:#d8d6cf;--muted:#6b7777;--accent:#bd6428;--accent-deep:#a8531c;--success:#17744d;--success-wash:#edf7ef;--shadow:0 16px 42px #092c2b14;background:#f7f4ee;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--paper);min-width:320px}body{background:var(--paper);min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #bd64286b}a{color:inherit}.app-shell{background:var(--paper);min-height:100vh;display:flex}.sidebar-wrap{flex:0 0 242px;width:242px}.sidebar{z-index:10;background:var(--ink);color:#f2f4ec;flex-direction:column;width:242px;height:100vh;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden}.brand-lockup{border-bottom:1px solid #ffffff14;padding:26px 26px 25px}.brand-name{letter-spacing:.04em;font-family:Georgia,Times New Roman,serif;font-size:21px;font-weight:700;line-height:.98}.brand-subtitle{color:#d37b36;letter-spacing:.06em;white-space:nowrap;margin-top:9px;font-size:11px;font-weight:750;line-height:1.2}.brand-subtitle span{color:#eeac70}.sidebar-menu{padding:28px 0}.sidebar-item{color:#f5f7f1e0;text-align:left;background:0 0;border:0;border-left:3px solid #0000;align-items:center;gap:15px;width:100%;min-height:58px;padding:0 25px;font-size:15px;transition:background .2s,color .2s,border-color .2s;display:flex}.sidebar-item:hover,.sidebar-item.active{color:#f0a269;background:#ffffff12;border-left-color:#d17a38}.sidebar-icon{color:currentColor;place-items:center;width:22px;display:grid}.sidebar-sketch{opacity:.24;border-top:1px solid #ffffff14;height:230px;margin-top:auto;position:relative;overflow:hidden}.sketch-line{border:2px solid #8a9892;border-bottom:0;border-radius:45% 45% 0 0;width:120px;height:150px;position:absolute;top:30px;left:62px;transform:rotate(-12deg)}.sketch-circle{border:2px solid #8a9892;border-radius:50%;width:46px;height:46px;position:absolute;top:63px;left:152px}.sketch-glass{border:2px solid #8a9892;border-top:0;border-radius:5px 5px 22px 22px;width:84px;height:105px;position:absolute;bottom:-40px;left:28px;transform:skew(-5deg)}.sidebar-footer{color:#f2f4ecb8;padding:22px 26px 27px;font-size:11px;line-height:1.55}.sidebar-footer span{color:#f2f4ec73}.app-main{flex:1;min-width:0}.topbar{background:var(--ink);color:#f3f4ef;justify-content:space-between;align-items:center;height:98px;padding:0 clamp(24px,4vw,60px);display:flex}.topbar-title{letter-spacing:-.035em;margin:0;font-size:27px;font-weight:720}.topbar-actions{color:#f5f7f1de;align-items:center;gap:22px;font-size:14px;display:flex}.help-link,.venue-select,.mobile-menu{color:inherit;background:0 0;border:0;align-items:center;gap:9px;padding:6px 0;display:inline-flex}.help-link:hover,.venue-select:hover{color:#f0a269}.topbar-divider{background:#ffffff2b;width:1px;height:24px}.venue-select{gap:12px}.mobile-menu{display:none}.workspace{max-width:1420px;margin:0 auto;padding:40px clamp(22px,4vw,62px) 38px}.workspace-header{justify-content:space-between;align-items:end;gap:18px;margin-bottom:30px;display:flex}.workspace-header h1{letter-spacing:-.055em;color:var(--ink);margin:0;font-size:clamp(29px,3vw,40px);line-height:1}.workspace-header p{color:var(--muted);margin:10px 0 0;font-size:15px}.workspace-meta{color:var(--muted);letter-spacing:.04em;white-space:nowrap;align-items:center;gap:13px;font-size:12px;display:flex}.workspace-meta b{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;margin-left:4px;font-family:Georgia,serif;font-size:14px;display:inline-grid}.meta-separator{background:var(--line);width:1px;height:17px}.mode-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(5,1fr);margin-bottom:28px;display:grid}.mode-tab{min-width:0;min-height:78px;color:var(--muted);text-align:left;background:0 0;border:0;border-bottom:3px solid #0000;justify-content:center;align-items:center;gap:12px;padding:10px 12px;transition:color .2s,border-color .2s,background .2s;display:flex}.mode-tab:hover{color:var(--ink);background:#ffffff59}.mode-tab.active{color:var(--ink);border-bottom-color:var(--accent)}.mode-icon{color:currentColor;place-items:center;display:grid}.mode-tab strong,.mode-tab small{display:block}.mode-tab strong{font-size:15px;line-height:1.15}.mode-tab small{color:inherit;opacity:.76;margin-top:4px;font-size:12px}.objective-block{margin-bottom:23px}.objective-block h2{letter-spacing:-.02em;margin:0 0 13px;font-size:16px}.objective-switcher{border:1px solid var(--line);background:#ffffff73;border-radius:7px;grid-template-columns:repeat(3,1fr);max-width:840px;display:grid;overflow:hidden}.objective-option{border:0;border-right:1px solid var(--line);color:#536060;text-align:left;background:0 0;align-items:center;gap:13px;min-height:54px;padding:0 20px;font-size:14px;display:flex}.objective-option:last-child{border-right:0}.objective-option:hover,.objective-option.active{color:var(--ink);background:var(--surface)}.objective-option.active{box-shadow:inset 0 0 0 1px var(--accent)}.radio-dot{border:1.5px solid #b8b9b4;border-radius:50%;flex:0 0 19px;width:19px;height:19px;position:relative}.objective-option.active .radio-dot{border-color:var(--accent)}.objective-option.active .radio-dot:after{content:"";background:var(--accent);border-radius:50%;position:absolute;inset:4px}.calculator-layout{grid-template-columns:minmax(330px,.9fr) minmax(500px,1.4fr);align-items:start;gap:26px;display:grid}.input-panel,.results-panel{background:var(--surface);box-shadow:var(--shadow);border:1px solid #dedbd4;border-radius:7px}.input-panel{padding:27px 25px 24px}.results-panel{padding:27px 28px 0;overflow:hidden}.panel-heading{border-bottom:1px solid #eeeae4;margin-bottom:4px;padding-bottom:18px}.panel-heading h3,.results-heading h3,.comparison h4,.workings h4{color:#152a2b;letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif}.panel-heading h3{margin:0;font-size:24px;line-height:1.1}.panel-heading p,.results-heading p{color:var(--muted);margin:8px 0 0;font-size:13px}.field{min-width:0;margin-top:18px}.field-label-row{align-items:center;gap:7px;min-height:17px;margin-bottom:8px;display:flex}.field label{color:#213537;font-size:13px;font-weight:700}.field-hint{color:var(--muted);margin-left:auto;font-size:11px}.info-label{color:#7d8886;vertical-align:-2px;cursor:help;margin-left:3px;display:inline-grid}.input-wrap{align-items:stretch;display:flex;position:relative}.input-wrap input,.input-wrap select,.ingredient-row input,.ingredient-row select{color:#182d30;background:#fff;border:1px solid #cfd0ca;border-radius:5px;width:100%;min-height:44px;padding:0 12px;font-size:15px;transition:border-color .18s,box-shadow .18s}.input-wrap input:hover,.input-wrap select:hover,.ingredient-row input:hover,.ingredient-row select:hover{border-color:#aeb5b1}.input-wrap input:focus,.input-wrap select:focus,.ingredient-row input:focus,.ingredient-row select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #bd64281a}.input-wrap.has-prefix input{padding-left:32px}.input-wrap.has-suffix input{padding-right:98px}.input-adornment{color:#51605e;pointer-events:none;z-index:1;place-items:center;font-size:13px;display:grid;position:absolute;top:0;bottom:0}.input-adornment.prefix{left:12px}.input-adornment.suffix{background:#f9f8f4;border-left:1px solid #dedfd9;border-radius:0 5px 5px 0;width:max-content;min-width:72px;padding:0 10px;font-size:12px;right:0}.input-wrap select{appearance:none;padding-right:38px}.select-chevron{pointer-events:none;color:#4c5e5b;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.form-grid{gap:16px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.form-grid.three .input-adornment.suffix{min-width:48px;padding:0 4px}.reset-button{color:#4c5d5c;background:0 0;border:1px solid #bfc3bd;border-radius:5px;justify-content:center;align-items:center;gap:9px;min-height:42px;margin-top:23px;padding:0 16px;font-size:13px;font-weight:650;display:inline-flex}.reset-button:hover{border-color:var(--accent);color:var(--accent-deep);background:#fffaf5}.advanced-settings{border-top:1px solid #e4e1db;margin-top:20px;padding-top:16px}.advanced-settings summary{cursor:pointer;color:#294240;align-items:center;gap:6px;font-size:13px;font-weight:700;list-style:none;display:flex}.advanced-settings summary::-webkit-details-marker{display:none}.advanced-settings summary span{color:var(--muted);margin-left:auto;font-size:11px;font-weight:400}.advanced-settings summary svg{transition:transform .2s}.advanced-settings[open] summary svg{transform:rotate(180deg)}.advanced-content{padding-bottom:2px}.advanced-content .field{margin-top:15px}.microcopy{color:var(--muted);margin:14px 0 0;font-size:11px;line-height:1.55}.results-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.results-heading h3{margin:0;font-size:24px;line-height:1.1}.status-mark{color:#6a7775;border:1px solid #c8cbc4;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.status-mark.met{color:var(--success);background:#f2faf4;border-color:#17744d80}.primary-result{margin-top:19px}.primary-result>span{color:var(--muted);font-size:13px;font-weight:680;display:block}.primary-result>div{align-items:baseline;gap:13px;margin-top:2px;display:flex}.primary-result strong{color:var(--accent);letter-spacing:-.065em;font-family:Georgia,Times New Roman,serif;font-size:clamp(56px,6vw,77px);font-weight:500;line-height:.92}.primary-result em{color:var(--ink);font-size:24px;font-style:normal;font-weight:700}.metrics-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 22px;display:grid}.metric{grid-template-rows:auto auto;grid-template-columns:30px 1fr;align-items:center;column-gap:7px;min-width:0;display:grid}.metric-icon{color:var(--ink);grid-row:1/span 2;place-items:center;display:grid}.metric-label{color:#455553;white-space:nowrap;font-size:12px}.metric strong{color:#16292c;margin-top:4px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500;line-height:1.1;display:block}.metric strong.accent{color:var(--accent)}.target-strip{border-top:1px solid #e2dfd8;border-bottom:1px solid #e2dfd8;grid-template-columns:repeat(3,1fr);padding:19px 0 17px;display:grid}.target-strip>div{border-right:1px solid #e2dfd8;min-width:0;padding:0 17px}.target-strip>div:first-child{padding-left:0}.target-strip>div:last-child{border-right:0;padding-right:0}.target-strip span,.target-strip small{display:block}.target-strip span{color:#334847;font-size:13px;font-weight:700}.target-strip strong{color:#192e2f;letter-spacing:-.04em;white-space:nowrap;margin:7px 0 5px;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:500;display:block}.target-strip small{color:var(--muted);font-size:11px;line-height:1.3}.target-strip small.target-missed{color:var(--accent-deep)}.target-strip small.target-met{color:var(--success)}.encouragement{background:var(--success-wash);color:#175a3e;border:1px solid #519573;border-radius:6px;align-items:flex-start;gap:12px;margin:18px 0;padding:13px 16px;display:flex}.encouragement-icon{border:1.5px solid;border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;display:grid}.encouragement strong{font-size:14px;display:block}.encouragement p{color:#37634f;margin:3px 0 0;font-size:12px}.result-actions{border-top:1px solid #e2dfd8;flex-wrap:wrap;gap:10px;padding:18px 0;display:flex}.result-actions button{color:#253a3b;background:#fff;border:1px solid #9fa6a1;border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 15px;font-size:12px;font-weight:700;display:inline-flex}.result-actions button:hover{border-color:var(--accent);color:var(--accent-deep);background:#fffaf5}.result-actions .primary-action{background:var(--accent);border-color:var(--accent);color:#fff;padding-left:15px}.result-actions .primary-action:hover{background:var(--accent-deep);color:#fff}.result-actions .primary-action svg{transition:transform .2s;transform:rotate(0)}.result-actions .primary-action:has(+button) svg{transform:rotate(0)}.workings{background:#f4f1ea;border:1px solid #e4e1d9;border-radius:5px;margin:0 0 20px;padding:18px 20px 15px}.workings h4{margin:0 0 13px;font-size:18px}.workings p{color:#51605e;margin:7px 0;font-size:12px;line-height:1.65}.workings strong{color:var(--ink)}.detail-grid{border-top:1px solid #e2dfd8;grid-template-columns:repeat(3,1fr);gap:0;padding:16px 0 19px;display:grid}.detail-grid>div{border-right:1px solid #e2dfd8;padding:0 13px}.detail-grid>div:first-child{padding-left:0}.detail-grid>div:last-child{border-right:0;padding-right:0}.detail-grid span{color:var(--muted);font-size:11px;line-height:1.35;display:block}.detail-grid strong{color:#1e3435;margin-top:4px;font-family:Georgia,serif;font-size:20px;font-weight:500;display:block}.empty-result{text-align:center;max-width:320px;min-height:340px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;margin:0 auto;display:flex}.empty-icon{width:61px;height:61px;color:var(--accent);border:1px solid #d2d1ca;border-radius:50%;place-items:center;margin-bottom:17px;display:grid}.empty-result strong{color:var(--ink);font-size:16px}.empty-result p{color:var(--muted);margin:9px 0 0;font-size:13px;line-height:1.55}.comparison{border-top:1px solid #e2dfd8;padding:18px 0 22px}.comparison-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.comparison h4{margin:0;font-size:19px}.comparison-heading p{color:var(--muted);margin:5px 0 0;font-size:11px}.comparison-note{color:var(--muted);text-align:right;font-size:11px}.comparison-table{border-top:1px solid #dfe0db;margin-top:14px}.comparison-row{border-bottom:1px solid #e8e6e0;grid-template-columns:.8fr 1.2fr 1.2fr .8fr .9fr;align-items:center;min-height:38px;font-size:12px;display:grid}.comparison-row span,.comparison-row strong{padding:0 8px}.comparison-row span:first-child,.comparison-row strong:first-child{padding-left:0}.comparison-row.header{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.comparison-row strong{color:var(--ink);font-weight:750}.comparison-footnote{color:var(--muted);margin:12px 0 0;font-size:11px}.ingredient-list{margin-top:18px}.ingredient-list-heading{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;margin-bottom:7px;font-size:10px;font-weight:800;display:flex}.ingredient-row{grid-template-columns:minmax(100px,1.4fr) 70px 70px 62px 68px 62px 62px 28px;align-items:center;gap:5px;margin-top:7px;display:grid}.ingredient-row input,.ingredient-row select{min-width:0;min-height:38px;padding:0 6px;font-size:11px}.ingredient-cost{text-align:right;white-space:nowrap;font-family:Georgia,serif;font-size:14px}.icon-button{color:#7c8581;background:0 0;border:0;place-items:center;width:28px;height:32px;padding:0;display:grid}.icon-button:hover{color:var(--accent-deep)}.add-ingredient{color:var(--accent-deep);background:0 0;border:0;align-items:center;gap:6px;margin-top:10px;padding:4px 0;font-size:12px;font-weight:750;display:inline-flex}.methodology{border-top:1px solid #dedbd4;border-bottom:1px solid #dedbd4;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:32px;padding:17px 0;display:grid}.methodology-icon{color:var(--muted);place-items:center;display:grid}.methodology strong{color:#334847;font-size:13px}.methodology p{color:var(--muted);margin:3px 0 0;font-size:12px}.methodology a{color:var(--ink);border-bottom:1px solid var(--accent);white-space:nowrap;padding-bottom:2px;font-size:12px;font-weight:750;text-decoration:none}.methodology a:hover{color:var(--accent-deep)}.methodology a span{color:var(--accent)}.app-footer{color:#7a8380;justify-content:space-between;gap:15px;padding-top:18px;font-size:11px;display:flex}.toast{z-index:50;background:var(--ink);color:#fff;border-radius:5px;padding:12px 17px;font-size:13px;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0003}.mobile-sidebar-overlay{display:none}@media (width<=1120px){.sidebar-wrap,.sidebar{flex-basis:205px;width:205px}.sidebar-item{padding-left:19px}.brand-lockup,.sidebar-footer{padding-left:20px}.calculator-layout{grid-template-columns:minmax(300px,.85fr) minmax(430px,1.15fr);gap:18px}.input-panel{padding:22px 19px}.results-panel{padding-left:22px;padding-right:22px}.ingredient-row{grid-template-columns:minmax(80px,1.35fr) 60px 60px 55px 60px 55px 55px 24px}}@media (width<=860px){.sidebar-wrap,.sidebar{width:230px}.sidebar-wrap{z-index:30;transition:transform .24s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebar-wrap.open{transform:translate(0)}.mobile-sidebar-overlay{z-index:20;background:#05181885;position:fixed;inset:0}.mobile-sidebar-overlay.visible{display:block}.mobile-menu{margin-right:17px;display:inline-flex}.topbar{justify-content:flex-start}.topbar-actions{margin-left:auto}.topbar-title{font-size:22px}.workspace{padding-top:28px}.calculator-layout{grid-template-columns:1fr}.input-panel{order:1}.results-panel{order:2}}@media (width<=640px){.topbar{height:72px;padding:0 17px}.topbar-title{font-size:18px}.topbar-actions{gap:11px;font-size:12px}.help-link span,.topbar-divider,.venue-select svg,.workspace-meta{display:none}.workspace{padding:25px 14px 28px}.workspace-header{align-items:flex-start;margin-bottom:23px}.workspace-header h1{font-size:31px}.workspace-header p{max-width:260px;font-size:13px}.mode-tabs{scrollbar-width:none;margin-right:-14px;padding-right:14px;display:flex;overflow-x:auto}.mode-tabs::-webkit-scrollbar{display:none}.mode-tab{flex:0 0 142px;gap:8px;min-height:70px;padding:8px 7px}.mode-icon svg{width:24px;height:24px}.mode-tab strong{font-size:13px}.mode-tab small{font-size:10px}.objective-switcher{grid-template-columns:1fr}.objective-option{border-right:0;border-bottom:1px solid var(--line);min-height:48px;font-size:13px}.objective-option:last-child{border-bottom:0}.input-panel,.results-panel{border-radius:6px}.results-panel{padding:22px 17px 0}.input-panel{padding:22px 17px}.panel-heading h3,.results-heading h3{font-size:22px}.form-grid.two,.form-grid.three{grid-template-columns:1fr;gap:0}.field{margin-top:16px}.primary-result strong{font-size:62px}.primary-result em{font-size:21px}.metrics-grid{gap:10px;margin-top:20px}.metric{grid-template-columns:24px 1fr;column-gap:5px}.metric-icon svg{width:20px;height:20px}.metric-label{white-space:normal;font-size:10px;line-height:1.15}.metric strong{font-size:20px}.target-strip{grid-template-columns:1fr;gap:14px;padding:17px 0}.target-strip>div,.target-strip>div:first-child,.target-strip>div:last-child{border-bottom:1px solid #e2dfd8;border-right:0;padding:0 0 13px}.target-strip>div:last-child{border-bottom:0;padding-bottom:0}.target-strip strong{font-size:27px}.result-actions{grid-template-columns:1fr 1fr;display:grid}.result-actions button{width:100%}.result-actions .primary-action{grid-column:1/-1}.detail-grid{grid-template-columns:1fr 1fr;row-gap:16px}.detail-grid>div:nth-child(2n){border-right:0}.detail-grid>div:nth-child(3){padding-left:0}.detail-grid>div:nth-child(4){padding-right:0}.comparison{overflow:hidden}.comparison-heading{display:block}.comparison-note{text-align:left;margin-top:7px;display:block}.comparison-table{padding-bottom:4px;overflow-x:auto}.comparison-row{min-width:480px}.ingredient-list{padding-bottom:4px;overflow-x:auto}.ingredient-list-heading,.ingredient-row{min-width:560px}.methodology{grid-template-columns:24px 1fr}.methodology a{grid-column:2;width:max-content}.app-footer{line-height:1.6;display:block}.app-footer span{display:block}.app-footer span+span{margin-top:5px}}@media print{@page{margin:14mm}body{background:#fff}.sidebar-wrap,.topbar,.mode-tabs,.objective-block,.input-panel,.methodology,.app-footer,.result-actions,.toast{display:none!important}.app-shell,.app-main,.workspace{min-height:0;display:block}.workspace{max-width:none;padding:0}.calculator-layout{display:block}.results-panel:before{content:"Behind The Pumps · Drinks GP Calculator";color:#555;margin-bottom:18px;font-size:11px;display:block}.results-panel{box-shadow:none;border:0;padding:0}.results-heading h3{font-size:26px}.primary-result strong{font-size:58px}.encouragement,.workings,.comparison,.detail-grid{break-inside:avoid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
