:root{--bg:#0b1517;--panel:#142226;--panel2:#192b2e;--stroke:#314447;--cream:#efede4;--muted:#a1adab;--gold:#d8ab66;--goldlight:#f0cd95;--green:#95c19e;--yellow:#e7c178;--red:#e5a39b;--r:22px;--tab-h:72px;color-scheme:dark}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0;background:var(--bg);color:var(--cream);font-size:15px;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:var(--goldlight)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.045em}h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,10vw,64px);line-height:1.02;font-weight:400;margin-bottom:15px}h1 em{color:var(--goldlight);font-style:italic}h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:29px;line-height:1.08}p{line-height:1.55;color:var(--muted)}.app-frame{max-width:780px;margin:auto;min-height:100dvh;padding-bottom:calc(92px + env(safe-area-inset-bottom))}.masthead{display:flex;align-items:center;justify-content:space-between;padding:calc(22px + env(safe-area-inset-top)) 22px 19px;border-bottom:1px solid rgba(228,199,148,.13)}.brand{display:flex;gap:12px;align-items:center}.brand-mark{height:39px;width:39px;border:1px solid rgba(216,171,102,.75);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--goldlight);font-family:Georgia,serif;font-size:24px;position:relative;transform:rotate(-6deg)}.brand-beer{transform:rotate(6deg)}.brand-dot{position:absolute;font-size:12px;right:2px;top:0}.brand-name{font-size:14px;font-weight:800;letter-spacing:.15em}.brand-sub{margin-top:4px;color:#98a5a2;font-size:9px;letter-spacing:.18em}.icon-action{background:none;border:1px solid #314245;width:42px;height:42px;border-radius:50%;display:grid;place-items:center}.icon-action svg{fill:none;stroke:#b5bfbc;stroke-width:1.5;width:21px}.view{display:none;padding:0 22px 32px}.view.active{display:block}.hero{padding-top:39px;padding-bottom:25px}.hero>p{font-size:16px;max-width:355px}.overline,.section-eyebrow{font-size:10px;letter-spacing:.18em;font-weight:750;color:var(--gold)}.overline{display:flex;align-items:center;gap:8px;margin-bottom:19px}.signal{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a2c1a1;box-shadow:0 0 0 4px #a2c1a115}.scan-panel{background:linear-gradient(142deg,#203338 0,#142326 74%);border:1px solid #355054;border-radius:var(--r);overflow:hidden;box-shadow:0 17px 60px #0004}.scan-visual{height:180px;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 70%,#31535777,transparent 65%),repeating-linear-gradient(0deg,#21343722 0,#21343722 1px,transparent 1px,transparent 22px)}.scan-visual:after{content:"";position:absolute;top:50%;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,#e3ba778c,transparent);box-shadow:0 0 12px #e3ba77;transform:rotate(-8deg)}.scan-frame{height:120px;width:128px;border:1px solid #6b8c8f75;border-radius:16px;display:grid;place-items:center;transform:rotate(-8deg);box-shadow:0 16px 40px #050a0c44;background:#21373a99}.scan-frame svg{width:75px;fill:none;stroke:#caad7c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.scan-panel-body{padding:23px}.scan-panel-body h2{margin:7px 0 10px}.scan-panel-body p{margin-bottom:19px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.button{border-radius:12px;min-height:49px;padding:12px 16px;border:1px solid transparent;font-weight:750;font-size:13px;letter-spacing:.01em;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,color .15s}.button-primary{background:var(--gold);color:#182020}.button-primary:hover{background:var(--goldlight)}.button-outline{background:transparent;border-color:#567073;color:var(--cream)}.button-outline:hover{background:#253739}.button-secondary{background:#294044;color:var(--cream);border-color:#385458}.button-secondary:hover{background:#345157}.button-ico{font-size:18px;line-height:1}.block{width:100%}.small-instruction{font-size:11px;text-align:center;color:#95a5a3;margin-top:16px}.section-divider{display:flex;gap:15px;align-items:center;justify-content:center;margin:26px 0 24px;font-size:10px;letter-spacing:.16em;color:#849895}.section-divider:before,.section-divider:after{content:"";height:1px;flex:1;background:#2e3d40}.field-label{display:block;font-size:13px;font-weight:700;margin-bottom:10px}.optional{font-weight:400;color:#8ca09d}textarea,input,select{border:1px solid #405559;color:var(--cream);background:#111e21;border-radius:12px;width:100%;padding:12px 13px;font-size:14px;line-height:1.5}textarea{resize:vertical;min-height:145px}textarea::placeholder,input::placeholder{color:#6e8585}.row-between{display:flex;justify-content:space-between;align-items:center}.row-between.align-end{align-items:flex-end}.gap{gap:15px}.top-mini{margin-top:12px}.text-action{border:0;background:none;color:var(--goldlight);font-size:13px;padding:6px 0;font-weight:600}.text-action.danger{color:var(--red);margin:12px 0}.mode-section{padding:38px 0 8px}.small-section-title{font-size:25px;margin:9px 0 18px}.mode-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.mode{border-radius:13px;background:#152427;border:1px solid #34484a;color:#c9d3ce;text-align:left;padding:15px 13px;min-height:73px;display:flex;align-items:center;gap:10px;font-size:12.5px}.mode.selected{background:#3d372a;border-color:var(--gold);color:var(--goldlight)}.mode-icon{font-size:21px;width:25px;flex:none}.micro-info{color:#8c9d9a;font-size:12px;margin:15px 0 0}.photo-area{margin-top:20px;padding:18px;border:1px solid var(--stroke);border-radius:15px}.photo-area h3{margin:0;font-size:15px}.photo-tiles{display:flex;gap:10px;overflow-x:auto;margin:16px 0}.photo-tile{width:92px;height:92px;flex:none;position:relative}.photo-tile img{width:100%;height:100%;object-fit:cover;border-radius:9px}.photo-tile button{position:absolute;top:3px;right:4px;border:0;border-radius:100%;width:25px;height:25px;background:#0b1517de;color:#fff}.hidden{display:none!important}.back-link{background:transparent;color:var(--goldlight);border:0;padding:23px 0;font-size:13px}.page-heading{padding:16px 0 17px}.page-heading h1{margin-top:12px}.page-heading p{max-width:490px}.review-list{display:grid;gap:12px}.review-card{border:1px solid #314649;border-radius:15px;background:var(--panel);padding:16px}.review-index{font-size:10px;letter-spacing:.15em;color:var(--gold);font-weight:800}.review-head{margin-bottom:12px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.review-grid label{font-size:11px;color:#9bacaa;display:block}.review-grid input{margin-top:6px;min-width:0}.review-grid .wide{grid-column:span 2}.review-remove{font-size:13px;color:#e4a49b;background:none;border:0}.review-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:17px 0}.muted{font-size:12px;color:#9babaa}.sticky-action{position:sticky;bottom:calc(81px + env(safe-area-inset-bottom));padding-top:16px;padding-bottom:8px;background:linear-gradient(180deg,transparent,var(--bg) 22%)}.summary-metrics{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 25px}.summary-pill{font-size:11px;color:#b8c5be;padding:9px 12px;background:#1b2b2e;border:1px solid #2d4144;border-radius:100px}.recommendations{display:grid;gap:14px}.pick-card{padding:23px;border-radius:18px;background:var(--panel);border:1px solid #345054}.pick-card.top{background:linear-gradient(135deg,#30352d 0,#1b2a2a 70%);border-color:#78603e}.pick-ribbon{font-weight:750;letter-spacing:.12em;font-size:10px;color:var(--gold);display:flex;align-items:center;justify-content:space-between;gap:12px}.pick-name{font-size:27px;font-family:Georgia,serif;letter-spacing:-.03em;margin:14px 0 7px}.pick-brewery{color:#b6c5bb;font-size:13px;margin-bottom:12px}.tagline{display:flex;gap:7px;flex-wrap:wrap;margin:11px 0}.tag{border:1px solid #57716d;border-radius:50px;color:#c3d1c7;padding:5px 8px;font-size:10px}.tag.amber{border-color:#8e7150;color:var(--goldlight)}.tag.green{border-color:#58846b;color:var(--green)}.tag.warn{border-color:#9d685f;color:var(--red)}.reason{font-size:13px;color:#b3beba;margin:10px 0 0;line-height:1.6}.pick-card .details{margin-top:13px;border-top:1px solid #344548;padding-top:13px}.rating-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.rating-actions button{font-size:11px;border-radius:9px;padding:9px;border:1px solid #435b59;background:#182b2d;color:#d5d9d0}.rating-actions button:hover{border-color:var(--gold)}.rating-actions span{font-weight:800}.empty-card{border:1px dashed #4b5e5d;border-radius:16px;padding:18px;color:#bbc6c1}.extra-matches{margin-top:30px}.extra-matches h2{font-size:26px}.tried-row{border-bottom:1px solid #26393a;padding:15px 0;display:flex;justify-content:space-between;gap:10px;align-items:center}.tried-row>div:first-child{max-width:72%}.tried-row strong{display:block;font-size:14px;font-weight:700}.tried-row small{display:block;color:#9eaeaa;margin-top:5px}.rating-chip{font-size:11px;font-weight:700;white-space:nowrap}.rating-chip.green{color:var(--green)}.rating-chip.red{color:var(--red)}.rating-chip.yellow{color:var(--yellow)}.rating-chip.unrated{color:#a9b6b2}.more-list{display:grid;gap:8px;margin-top:15px}.more-item{background:#142427;padding:15px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.more-item strong{display:block;font-size:14px}.more-item small{display:block;color:#9fada9;margin-top:4px}.more-item .score{white-space:nowrap;color:var(--gold);font-size:11px}.bottom-actions{margin-top:34px}.taste-summary{background:linear-gradient(122deg,#2a3730,#172629);border:1px solid #526a58;border-radius:18px;padding:22px;margin:14px 0 23px}.count-number{font-family:Georgia,serif;font-size:41px;color:var(--goldlight)}.count-caption{font-size:12px;color:#b2c0b6}.taste-counts{display:flex;justify-content:space-between;gap:8px;margin-top:17px;border-top:1px solid #486051;padding-top:15px}.taste-counts span{font-size:11px;color:#b8c8bc}.taste-counts strong{display:block;font-size:21px;color:var(--cream)}.setting-block{border-top:1px solid #344648;padding:25px 0 20px}.setting-block h2{font-size:24px;margin-bottom:8px}.setting-block p{font-size:13px}.setting-block .button{margin-top:10px}.footnote{font-size:11px!important;margin-top:13px}.recent-scans>button{border:0;border-bottom:1px solid #304445;background:none;color:var(--cream);text-align:left;width:100%;padding:12px 2px}.recent-scans small{display:block;color:#95aaa5;margin-top:3px}.version{font-size:10px;text-align:center;letter-spacing:.15em;color:#6f8480;margin-top:36px}.tabbar{height:calc(var(--tab-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0;background:#0c171af0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid #2e4243;z-index:15;justify-content:space-around}.tab{border:0;background:none;color:#7f9792;display:flex;flex-direction:column;align-items:center;gap:4px;justify-content:center;min-width:95px;font-size:10px;font-weight:650}.tab svg{height:23px;width:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.tab.active{color:var(--goldlight)}.toast{position:fixed;bottom:calc(90px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%) translateY(40px);background:#e0bd7c;color:#142024;padding:12px 18px;max-width:90vw;min-width:min(330px,90vw);border-radius:12px;box-shadow:0 12px 30px #0008;font-size:13px;text-align:center;font-weight:700;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;z-index:30}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.tiny-help{font-size:12px;color:#9cadab}.source-label{font-weight:600}.scan-pill{margin:0 0 10px;font-size:12px;color:#e1bc81}
@media(min-width:650px){.masthead{padding-left:36px;padding-right:36px}.view{padding:0 36px 36px}.hero{padding-top:52px}.scan-panel{display:grid;grid-template-columns:38% 62%}.scan-visual{height:auto;min-height:250px}.scan-panel-body{padding:32px}.tabbar{max-width:780px;left:50%;right:auto;transform:translateX(-50%);width:100%}.action-grid{gap:10px}.mode-list{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Up to four curated first pours, with the top match visibly leading */
.first-list{display:grid;gap:12px}
.pick-heading{gap:12px;align-items:center}
.count-flag{color:var(--goldlight);font-size:10px;letter-spacing:.12em;font-weight:700;white-space:nowrap}
.first-picks{display:grid;gap:12px}
.first-picks .pick-card:not(.top){padding:19px 21px}
.first-picks .pick-card:not(.top) .pick-name{font-size:24px}
.extra-category{display:grid;gap:10px;margin-top:20px}
.category-label{margin-bottom:2px}
@media(min-width:650px){.first-picks{grid-template-columns:repeat(2,minmax(0,1fr))}.first-picks .pick-card.top{grid-column:span 2}}
