:root{--brand-green:#3aaa76;--brand-gold:#f1b343;--bottle:#082d23;--deep:#061e18;--green:#8cc997;--gold:#e8b452;--ink:#153b2d;--muted:#62736a;--paper:#f6f7f1;--line:#dce4d8}
*{box-sizing:border-box}body{margin:0;background:#e7ece4!important;color:var(--ink);font-family:'Plus Jakarta Sans',sans-serif!important;padding:32px 18px!important}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold)!important;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed}svg{flex-shrink:0}
.app-shell{max-width:920px!important;margin:auto;border-radius:28px!important;background:var(--bottle)!important;border:1px solid #42614b!important;box-shadow:0 24px 80px #153b2d20!important;min-height:0!important;overflow:hidden}
.app-header{padding:28px 36px 20px!important;background:linear-gradient(115deg,#092e22,#061e18)!important;border-bottom:1px solid #36523a!important;color:#f6f7ef}
.brand-lockup{display:flex;align-items:center;gap:20px}.official-logo{width:112px;height:77px;object-fit:contain;background:transparent;border-radius:0;padding:0;flex-shrink:0}.brand-copy{min-width:0}.brand-name{font-family:'Poppins',sans-serif;font-size:32px;line-height:1.2;letter-spacing:-1.2px;font-weight:700;color:var(--brand-green)}.brand-name span{color:var(--brand-gold)}.brand-name sup{font-size:.46em;vertical-align:super}.brand-copy p{margin:7px 0 0;font-size:13px;line-height:1.5;color:#e1e9dd}.brand-copy .brand-promise{color:#a6ca89;font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-top:3px}
.app-header>div:nth-last-child(2){margin-top:22px!important}.app-header #step-header-label{font-size:10px!important;letter-spacing:.12em;color:#b5c9aa!important;margin-top:12px!important;font-weight:500!important}.app-header [id^=pb-step]{background:var(--gold)!important}
.product-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:9px 24px;background:#0b3126!important;border-bottom:1px solid #35503a!important}.product-tabs button{font-family:'Plus Jakarta Sans',sans-serif!important;font-size:12px!important;letter-spacing:.035em;font-weight:700!important;min-height:47px;line-height:1.3!important;color:#a7bbae!important;border:1px solid transparent!important;border-radius:10px;white-space:normal}.product-tabs button[aria-current=page]{color:#f0ca7e!important;border-color:#8b713b!important;background:#3e432629}.product-tabs button:hover{background:#ffffff09}.product-tabs button>span{font-size:inherit!important}
.app-main{padding:0!important;background:var(--paper)!important;overflow:visible!important}#content-area{padding:34px;min-height:400px}.app-footer{background:var(--deep)!important;color:#9eb39f!important;border-top:1px solid #38533b!important;padding:25px 30px!important;margin:0!important;gap:8px!important;line-height:1.6}.app-footer .footer-name{font-weight:700;font-size:14px;color:#d5d7b5}.app-footer p{font-size:12px;margin:0}.app-footer small{font-size:11px;color:#9cad9d}
/* A single type scale for forms, dialogs, and configuration cards. */
#content-area:not(:has(.premium-drs)){color:var(--ink)}#content-area:not(:has(.premium-drs)) h1{font:600 clamp(25px,3.5vw,34px)/1.2 'Poppins',sans-serif!important;letter-spacing:-.8px!important;margin-bottom:12px}#content-area:not(:has(.premium-drs)) h2{font-size:26px!important;line-height:1.25!important;letter-spacing:-.5px}#content-area:not(:has(.premium-drs)) h3{font-size:20px!important;line-height:1.3!important}#content-area:not(:has(.premium-drs)) h4{font-size:16px!important;line-height:1.4!important}#content-area:not(:has(.premium-drs)) p{font-size:14px!important;line-height:1.65!important}#content-area:not(:has(.premium-drs)) label{font-size:11px!important;letter-spacing:.06em;line-height:1.5!important}#content-area:not(:has(.premium-drs)) button{min-height:44px;font-size:13px;line-height:1.45}#content-area:not(:has(.premium-drs)) input:not([type=checkbox]),#content-area select{min-height:48px;font-size:15px!important;border-radius:12px!important;padding:12px!important;background:#fff;color:var(--ink)}#content-area input[type=checkbox]{min-width:20px;min-height:20px;accent-color:#26744f}#content-area .font-mono{font-family:'Plus Jakarta Sans',sans-serif!important}#content-area [class*="text-[8px]"],#content-area [class*="text-[9px]"],#content-area [class*="text-[10px]"]{font-size:11px!important;line-height:1.5!important}#content-area:not(:has(.premium-drs)) .animate-bounce{animation:none}#modal-portal p{font-size:14px!important;line-height:1.6}#modal-portal button{min-height:44px}#modal-portal [class*="max-h-"]{max-height:85vh;overflow:auto}
.travel-preferences{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.travel-preferences>button{height:238px!important;padding:24px 15px!important;border-radius:18px!important;border:1px solid #d1dacb!important;background:#fff!important;color:#244638!important;box-shadow:0 4px 12px #163c2504}.travel-preferences>button[aria-pressed=true]{background:#edf2e4!important;border:2px solid #a18747!important;box-shadow:inset 0 0 0 3px #faf8ec}.travel-preferences>button p{color:#526b5b!important;font-size:12px!important;line-height:1.55!important}.travel-preferences>button [class*=text-white],.travel-preferences>button [class*=text-amber]{color:#4a694c!important}.travel-preferences>button>div:first-child>div{font-size:13px!important;line-height:1.5!important;min-height:38px!important;letter-spacing:.02em}.travel-preferences>button>div:last-child{border-color:#cfd7bf!important}.travel-preferences>button>div:first-child>span{font-size:28px!important}
/* DRS uses the darker visual language of the supplied reference. */
.showing-drs .app-main{background:var(--deep)!important}.showing-drs #content-area{padding:0}.premium-drs{color:#e9eee1;background:radial-gradient(ellipse at 50% 200px,#153d28 0,transparent 540px),var(--deep);padding:24px 34px 34px}.drs-context{display:flex;justify-content:space-between;gap:16px;font-size:11px;line-height:1.5;color:#97b399;border-bottom:1px solid #2b4934;padding-bottom:18px}.drs-context>span:first-child{letter-spacing:.12em;color:#d1bb7e;flex-shrink:0}.drs-context>span:last-child{text-align:right}.bb-eyebrow{font-size:12px;letter-spacing:.025em;font-weight:500;color:#9ec989;margin:0}.decision-gauge{text-align:center;padding:26px 0 30px}.decision-gauge>.bb-eyebrow{letter-spacing:.16em;font-size:11px}.decision-gauge h1{font:600 32px/1.25 'Poppins',sans-serif;margin:6px 0 0;letter-spacing:-.8px;color:#f2f4eb}.gauge-art{display:block;width:100%;max-width:490px;margin:4px auto -8px;overflow:visible}.gauge-art text{fill:#92ac92;font-size:10px;font-family:inherit}.gauge-needle{transform-origin:200px 190px;transform:rotate(var(--needle-angle));animation:needle-arrive 1.1s cubic-bezier(.17,.67,.26,1) both}.score-number{display:flex;justify-content:center;align-items:baseline;gap:9px;line-height:1;margin-top:2px}.score-number strong{font-size:70px;font-weight:600;letter-spacing:-4px;color:#b5d887}.score-number>span{font-size:29px;color:#a9b6a5;font-weight:300}.score-label{display:inline-flex;align-items:center;gap:9px;border:1px solid #6f965e;border-radius:50px;padding:8px 20px;margin:16px 0 10px;color:#c5df9f;font-size:16px}.score-label svg{width:20px;height:20px}.score-helper{font-size:13px;color:#c0cab9;line-height:1.6;margin:0}.score-footnote{display:block;font-size:10px;color:#86a18b;margin:9px 0 0;letter-spacing:.025em}
.choice-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px}.choice-switch button{border:1px solid #35543e;border-radius:12px;min-height:48px;color:#a9bda6;background:#0b2c20;font-size:11px;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;gap:7px}.choice-switch button span{color:#d8bc72;font-size:13px}.choice-switch svg{width:15px;height:15px}.choice-switch [aria-pressed=true]{background:#e8b452;color:#163225;border-color:#e8b452;font-weight:800}.choice-switch [aria-pressed=true] span{color:#163225}
.bb-recommendation{border:1px solid #4f6544;border-radius:22px;padding:26px;background:linear-gradient(125deg,#102f22aa,#092219aa)}.recommendation-heading{display:flex;align-items:center;gap:13px;margin-bottom:20px}.bb-emblem{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#183b25;border:1px solid #33553b;color:#b2d98e;flex-shrink:0}.bb-emblem svg{width:25px;height:25px}.selection-note{color:#9eaf95;font-size:11px;margin:4px 0 0}.recommendation-intro{display:grid;grid-template-columns:1fr 168px;gap:24px;align-items:start}.recommendation-intro h2{font:500 26px/1.3 'Poppins',sans-serif;letter-spacing:-.6px;margin:0 0 12px;color:#f1f4e8}.fit-reason{font-size:14px;line-height:1.75;color:#bfccba;margin:0}.bb-food-image,.bb-food-placeholder{width:168px;height:145px;border:1px solid #37523a;border-radius:16px;object-fit:cover}.bb-food-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#102f23;color:#b0c1a9;text-align:center;padding:14px}.bb-food-placeholder svg{width:30px;height:30px;opacity:.65}.bb-food-placeholder span{font-size:11px;line-height:1.5}.bb-food-placeholder small{font-size:9px;color:#7f9b80}.bb-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;border-top:1px solid #34513a;margin-top:22px;padding-top:20px}.bb-detail h3{color:#bdcf9c;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin:0 0 8px}.bb-detail p{font-size:13px;line-height:1.75;color:#c9d4c3;margin:0}.bb-sip{display:flex;align-items:flex-start;gap:14px;border-top:1px solid #34513a;margin-top:22px;padding-top:22px}.bb-sip h3{font-size:19px;line-height:1.45;font-weight:500;color:#f1f4e8;margin:7px 0}.bb-sip p:last-child{font-size:12px;color:#9fb397;line-height:1.7;margin:0}.bb-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:24px}.bb-actions-three{grid-template-columns:repeat(3,minmax(0,1fr))}.bb-actions button,.bb-actions a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:64px;border:1px solid #897441;border-radius:14px;background:#76602e15;color:#e7c779;font-size:14px;text-decoration:none}.bb-actions svg{width:22px;height:22px}.bb-actions svg:last-child{width:12px}.bb-actions button:hover,.bb-actions a:hover{background:#e8b452;color:#173425}
.bb-alternatives,.bb-toolbox{margin-top:28px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px}.section-heading h2{font-size:17px;font-weight:500;color:#dce6d3;margin:0}.section-heading>span{font-size:11px;color:#92ab90}.alternative-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.alternative-choice{border:1px solid #31513a;border-radius:16px;background:#102e22;padding:18px;text-align:left;color:#dce7d3;display:flex;flex-direction:column}.alternative-choice[aria-pressed=true]{border-color:#b39958;background:#243d24}.alternative-meta{display:flex;justify-content:space-between;gap:8px;font-size:10px;letter-spacing:.04em;color:#b7c994}.alternative-meta strong{color:#e6c879;white-space:nowrap}.alternative-choice h3{font-size:15px;line-height:1.45;font-weight:600;margin:13px 0 8px}.alternative-choice p{font-size:12px;line-height:1.6;color:#a8bba1;margin:0 0 16px}.alternative-bottom{font-size:11px;color:#c5cc9b;display:flex;gap:8px;align-items:center;margin-top:auto}.alternative-bottom svg{width:15px;height:15px}.bb-more{margin-top:22px;border:1px solid #34503a;border-radius:14px;color:#cedbc2}.bb-more summary{padding:17px 20px;cursor:pointer;font-size:13px;list-style:none;display:flex;justify-content:space-between}.bb-more summary::-webkit-details-marker{display:none}.bb-more-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px 20px 20px;gap:22px}.bb-takeaway{border-left:2px solid #9c9a55;padding:4px 0 4px 18px;margin:26px 0}.bb-takeaway>p:last-child{font-size:13px;line-height:1.8;color:#bacaad;margin:7px 0 0}.bb-toolbox{padding:22px;background:#102d21;border:1px solid #35533a;border-radius:18px}.export-actions{display:flex;gap:8px;flex-wrap:wrap}.export-actions button{padding:12px 16px;min-height:45px;border:1px solid #5b714a;border-radius:10px;color:#dce5c8;font-size:12px}.export-actions button:first-child{background:#e5b65c;color:#173226;border-color:#e5b65c;font-weight:700}.share-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px;padding-top:14px;border-top:1px solid #35533a}.share-actions button{font-size:11px;min-height:44px;padding:8px 11px;color:#b3c7a8;border-radius:8px;border:1px solid #35533a}.drs-reset{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:24px}.drs-reset button{font-size:12px;min-height:44px;color:#a8bb9b;text-decoration:underline;text-underline-offset:5px}
#content-area:not(:has(.premium-drs)) button{border-radius:12px}
#content-area button.bg-amber-500:not([aria-pressed]){background:#e8b452!important;color:#173425!important}
#content-area:not(:has(.premium-drs)) .animate-pulse{animation:none!important}
@keyframes needle-arrive{from{transform:rotate(0deg)}to{transform:rotate(var(--needle-angle))}}
@media(min-width:768px){#content-area:not(:has(.premium-drs))>div{max-width:780px;margin-left:auto;margin-right:auto}.decision-gauge{padding-top:30px}.decision-gauge h1{font-size:36px}}
@media(max-width:639px){body{padding:0!important}.app-shell{border-radius:0!important;border:0!important;max-width:none!important}.app-header{padding:20px 18px 15px!important}.brand-lockup{gap:12px}.official-logo{width:83px;height:auto;padding:0;border-radius:0}.brand-name{font-size:21px;letter-spacing:-.85px;white-space:normal;line-height:1.25}.brand-name sup{font-size:10px}.brand-copy p{font-size:11px;line-height:1.5;margin-top:4px}.brand-copy .brand-promise{font-size:9px;letter-spacing:.03em}.product-tabs{padding:8px 10px;gap:4px}.product-tabs button{font-size:11.5px!important;letter-spacing:0;min-height:48px;padding:8px 3px!important}.app-header>div:nth-last-child(2){margin-top:16px!important}#content-area{padding:25px 20px}.app-footer{padding:25px 20px!important}.travel-preferences{grid-template-columns:1fr!important}.travel-preferences>button{height:210px!important}.premium-drs{padding:18px 16px 24px}.drs-context{font-size:10px;gap:10px}.drs-context>span:last-child{max-width:65%}.decision-gauge{padding:23px 0}.decision-gauge h1{font-size:29px}.gauge-art{margin-top:10px}.score-number strong{font-size:60px}.score-number>span{font-size:25px}.score-label{font-size:14px;padding:7px 17px;margin-top:13px}.score-helper{font-size:12px;max-width:265px;margin:auto}.score-footnote{font-size:9px}.choice-switch{gap:6px}.choice-switch button{font-size:10px;gap:4px}.choice-switch button span{font-size:12px}.bb-recommendation{padding:20px 17px;border-radius:18px}.recommendation-heading{gap:10px}.recommendation-heading .bb-eyebrow{font-size:12px}.bb-emblem{width:39px;height:39px}.recommendation-intro{grid-template-columns:1fr;gap:18px}.recommendation-intro h2{font-size:24px;line-height:1.35}.fit-reason{font-size:13px;line-height:1.7}.bb-food-image,.bb-food-placeholder{width:100%;height:105px}.bb-food-placeholder{gap:6px}.bb-food-placeholder svg{width:24px;height:24px}.bb-food-placeholder small{display:none}.bb-detail-grid{grid-template-columns:1fr;gap:18px}.bb-detail p{font-size:13px}.bb-sip h3{font-size:17px}.bb-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bb-actions-three{grid-template-columns:1fr}.bb-actions button,.bb-actions a{min-height:55px;font-size:14px}.alternative-grid{grid-template-columns:1fr}.alternative-choice{padding:18px}.alternative-choice h3{font-size:16px}.alternative-choice p{font-size:13px}.alternative-meta{font-size:11px}.section-heading>span{display:none}.bb-more-body{grid-template-columns:1fr}.bb-toolbox{padding:18px}.export-actions{display:grid;grid-template-columns:1fr 1fr}.export-actions button{padding:11px 8px;font-size:11px}.share-actions{display:grid;grid-template-columns:repeat(3,1fr)}.share-actions button{padding:8px 5px}#pdf-download-dialog{max-width:calc(100% - 32px)}#modal-portal{padding:12px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0s!important;transition-duration:0s!important;scroll-behavior:auto!important}.gauge-needle{animation:none!important;transform:rotate(var(--needle-angle))}}

.brand-balanced{color:var(--brand-green)!important}.brand-buyte{color:var(--brand-gold)!important}.app-footer{background:var(--bottle)!important}.bb-sip .pairing-image{margin-top:14px}.bb-sip .pairing-image .bb-food-placeholder{width:100%;height:85px}
figure[data-image-id]{margin:0;min-width:0;width:100%;max-width:360px}figure[data-image-id] .bb-food-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:16px}figure[data-image-id] figcaption{font-size:11px;line-height:1.5;color:var(--green);margin-top:6px}

/* Fail-closed presentation only; supported DRS screens are unaffected. */
#content-area:has(.unavailable-result){min-height:0;padding:20px!important}
#content-area .unavailable-result{background:#082d23;color:#f6f3e8;border:1px solid #8d7540;border-radius:18px;padding:24px;max-width:680px;margin:0 auto}
#content-area .unavailable-result .unavailable-eyebrow{color:#edc46e;font-size:11px!important;font-weight:700;letter-spacing:.12em;margin:0 0 12px}
#content-area .unavailable-result h2{color:#f6f3e8;font-size:27px!important;line-height:1.25!important;margin:0 0 14px}
#content-area .unavailable-result .unavailable-body,#content-area .unavailable-result .unavailable-trust{color:#d4dfd7;line-height:1.5!important;margin:0 0 12px}
#content-area .unavailable-result .unavailable-trust{border-left:2px solid #edc46e;padding-left:12px}
.unavailable-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
#content-area .unavailable-actions button{min-height:46px;padding:12px 16px;border:1px solid #edc46e;border-radius:12px;background:transparent;color:#f6f3e8;font-weight:600}
#content-area .unavailable-actions button:first-child{background:#edc46e;color:#082d23}
@media(max-width:639px){#content-area:has(.unavailable-result){padding:14px!important}#content-area .unavailable-result{padding:18px}#content-area .unavailable-result h2{font-size:24px!important}.unavailable-actions{display:grid;grid-template-columns:1fr;margin-top:16px;gap:8px}.app-shell:has(.unavailable-result) .app-footer{padding:14px 20px!important}}

/* Next uses light cards; keep its labels readable without changing demo styling. */
body:not(.bb-demo-active) .balanced-next .bb-eyebrow{color:#276345}
