/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.hidden{display:none}.inline{display:inline}.table{display:table}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--bg:#0e0d0b;--surface:#171511;--surface-2:#221f1a;--text:#f3ebe0;--muted:#a09484;--line:#353028;--accent:#c27040;--accent-2:#d9ae6a;--ease-out:cubic-bezier(.22,1,.36,1);--ease-spring:cubic-bezier(.32,.72,0,1);--shadow-warm:0 18px 48px var(--bg)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-warm:0 18px 48px color-mix(in srgb,var(--bg) 55%,#3a2414)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:radial-gradient(980px 560px at 6% -12%, var(--accent), transparent 58%), radial-gradient(720px 480px at 100% 0%, var(--accent-2), transparent 52%), radial-gradient(640px 420px at 70% 110%, var(--accent), transparent 55%), var(--bg);min-width:320px;margin:0;font-family:Outfit,system-ui,sans-serif;font-weight:400}@supports (color:color-mix(in lab, red, red)){body{background:radial-gradient(980px 560px at 6% -12%, color-mix(in srgb,var(--accent) 18%,transparent), transparent 58%), radial-gradient(720px 480px at 100% 0%, color-mix(in srgb,var(--accent-2) 8%,transparent), transparent 52%), radial-gradient(640px 420px at 70% 110%, color-mix(in srgb,var(--accent) 7%,transparent), transparent 55%), var(--bg)}}body:after{content:"";pointer-events:none;z-index:1;opacity:.055;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:fixed;inset:0}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.app-shell{grid-template-columns:260px 1fr;min-height:100dvh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);height:100dvh;padding:24px 16px;padding-bottom:max(20px,env(safe-area-inset-bottom));z-index:40;flex-direction:column;display:flex;position:sticky;top:0;overflow:hidden}.brand{flex:none;align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand-mark{border:1px solid var(--accent);width:40px;height:40px;color:var(--accent-2);border-radius:10px;place-items:center;display:grid;transform:rotate(45deg)}.brand-mark svg{width:21px;transform:rotate(-45deg)}.brand strong{text-wrap:balance;letter-spacing:-.01em;font-family:Playfair Display,serif;font-size:17px;font-weight:600;line-height:1.15;display:block}.brand span,.nav-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:3px;font-size:9px;font-weight:600;display:block}.sidebar nav{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.nav-label{padding:12px}.sidebar nav button{width:100%;color:var(--muted);cursor:pointer;text-align:left;transition:background .22s var(--ease-out),color .22s var(--ease-out),transform .18s var(--ease-spring);background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;margin:2px 0;padding:11px 12px;display:flex}.sidebar nav button svg:last-child{opacity:0;transition:opacity .2s var(--ease-out);margin-left:auto}.sidebar nav button:hover,.sidebar nav button.active{color:var(--text);background:var(--surface-2)}.sidebar nav button:active{transform:scale(.98)}.sidebar nav button.active{box-shadow:inset 3px 0 var(--accent)}.sidebar nav button.active svg:last-child{opacity:.6}.sidebar-footer{border-top:1px solid var(--line);padding-top:15px;padding-bottom:max(20px,env(safe-area-inset-bottom));flex:none;margin-top:auto}.sidebar-footer button{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;width:100%;display:flex}.sidebar-footer svg{background:var(--surface-2);width:40px;height:40px;color:var(--accent-2);border-radius:50%;padding:9px}.sidebar-footer strong,.sidebar-footer small{display:block}.sidebar-footer small{color:var(--muted);margin-top:2px}.mobile-close{display:none!important}main{min-width:0}.topbar{border-bottom:1px solid var(--line);background:var(--bg);justify-content:flex-end;align-items:center;height:72px;padding:0 4vw;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in srgb,var(--bg) 86%,transparent)}}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20}.top-actions{align-items:center;gap:10px;display:flex}.backup-banner{border:0;border-bottom:1px solid var(--accent);width:100%;min-height:42px}@supports (color:color-mix(in lab, red, red)){.backup-banner{border-bottom:1px solid color-mix(in srgb,var(--accent) 50%,var(--line))}}.backup-banner{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.backup-banner{background:color-mix(in srgb,var(--accent) 14%,var(--surface))}}.backup-banner{color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:9px;display:flex}.backup-banner svg{color:var(--accent-2)}.backup-banner strong{color:var(--accent-2);margin-left:6px}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;width:40px;height:40px;transition:border-color .2s var(--ease-out),background .2s var(--ease-out),transform .18s var(--ease-spring);border-radius:10px;place-items:center;display:grid}.icon-button:hover{border-color:var(--accent);background:var(--surface-2)}.icon-button:active{transform:scale(.96)}.icon-button svg{width:19px}.scan-button,.primary,.secondary{cursor:pointer;border:1px solid var(--line);min-height:40px;transition:background .22s var(--ease-out),border-color .22s var(--ease-out),color .22s var(--ease-out),transform .18s var(--ease-spring),box-shadow .22s var(--ease-out);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 17px;font-weight:600;display:inline-flex}.scan-button,.secondary{background:var(--surface)}.scan-button:hover,.secondary:hover{border-color:var(--accent);background:var(--surface-2)}.scan-button:active,.secondary:active,.primary:active{transform:scale(.98)}.primary{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 8px 24px var(--accent)}@supports (color:color-mix(in lab, red, red)){.primary{box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 28%,transparent)}}.primary:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.primary:hover{background:color-mix(in srgb,var(--accent) 88%,var(--accent-2))}}.primary:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.primary:hover{border-color:color-mix(in srgb,var(--accent) 70%,var(--accent-2))}}.primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.danger{color:#e9796d}.page{max-width:1440px;margin:auto;padding:54px clamp(22px,5vw,82px) 88px}.eyebrow{letter-spacing:.16em;color:var(--accent-2);text-transform:uppercase;font-size:10px;font-weight:600}.hero{border-bottom:1px solid var(--line);min-height:min(420px,70dvh);animation:rise-in .7s var(--ease-out) both;grid-template-columns:1fr 300px;align-items:center;gap:12px 28px;margin-bottom:52px;padding-bottom:36px;display:grid}.hero-wordmark{letter-spacing:-.02em;text-wrap:balance;color:var(--text);max-width:none;margin:10px 0 8px;font-family:Playfair Display,serif;font-size:clamp(44px,5.4vw,72px);font-weight:600;line-height:1.02}.hero-greeting,.page-title h1{color:var(--muted);text-wrap:pretty;max-width:36ch;margin:0 0 10px;font-family:Playfair Display,serif;font-size:clamp(22px,2.4vw,30px);font-weight:500;line-height:1.25}.hero-greeting em{color:var(--accent-2);font-style:italic;font-weight:600}.page-title h1{color:var(--text);max-width:none;margin-bottom:12px;font-size:clamp(40px,4vw,58px);font-weight:600}.hero-lede,.page-title p{color:var(--muted);max-width:62ch;font-size:17px;line-height:1.7}.hero-orbit{border:1px solid var(--line);width:240px;height:240px}@supports (color:color-mix(in lab, red, red)){.hero-orbit{border:1px solid color-mix(in srgb,var(--line) 80%,var(--accent))}}.hero-orbit{background:radial-gradient(circle at 42% 38%, var(--accent-2), transparent 42%), radial-gradient(circle,var(--surface-2),transparent 68%);border-radius:50%;place-items:center;margin:auto;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.hero-orbit{background:radial-gradient(circle at 42% 38%, color-mix(in srgb,var(--accent-2) 22%,transparent), transparent 42%), radial-gradient(circle,var(--surface-2),transparent 68%)}}.hero-orbit{box-shadow:inset 0 1px 0 #ffffff14,var(--shadow-warm);animation:5.5s ease-in-out infinite orbit-glow}.hero-orbit:before,.hero-orbit:after{content:"";border:1px solid var(--line);border-radius:50%;position:absolute;inset:18px}.hero-orbit:after{border-color:var(--accent);inset:48px}@supports (color:color-mix(in lab, red, red)){.hero-orbit:after{border-color:color-mix(in srgb,var(--accent) 70%,var(--line))}}.hero-orbit svg{width:56px;height:56px;color:var(--accent);opacity:.28}.hero-orbit span{text-align:center;font-variant-numeric:tabular-nums;font-family:Playfair Display;font-size:36px;position:absolute}.hero-orbit small{letter-spacing:.18em;color:var(--muted);font:600 9px Outfit,sans-serif;display:block}.section-heading{justify-content:space-between;align-items:end;margin-bottom:22px;display:flex}.section-heading h2{letter-spacing:-.015em;text-wrap:balance;margin:7px 0;font:600 30px/1.15 Playfair Display}.guest-badge{border:1px solid var(--line);color:var(--muted);letter-spacing:.1em;border-radius:8px;gap:6px;padding:7px 11px;font-size:10px;font-weight:600;display:flex}.stat-grid{grid-template-columns:repeat(6,1fr);gap:12px;display:grid}.stat-grid.guest-stats{grid-template-columns:repeat(3,1fr)}.stat-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;min-height:160px;padding:20px}@supports (color:color-mix(in lab, red, red)){.stat-card{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.stat-card{text-align:left;cursor:pointer;transition:transform .28s var(--ease-spring),border-color .22s var(--ease-out),box-shadow .28s var(--ease-out);position:relative;box-shadow:inset 0 1px #ffffff0a}.stat-card:hover{border-color:var(--accent);box-shadow:var(--shadow-warm);transform:translateY(-4px)}.stat-card:active{transform:translateY(-1px)scale(.99)}.stat-card>svg:first-child{color:var(--accent);width:24px}.stat-card>svg:last-child{color:var(--muted);width:16px;position:absolute;top:17px;right:16px}.stat-card span{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:20px;font:600 36px Playfair Display;display:block}.stat-card small{letter-spacing:.12em;color:var(--muted);font-size:9px;font-weight:600}.stat-hint{letter-spacing:0;color:var(--muted);margin-top:6px;font:400 11px Outfit,sans-serif;display:block}.feature-grid{grid-template-rows:auto auto;grid-template-columns:1.35fr 1fr;gap:14px;margin-top:56px;display:grid}.feature-card{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;min-height:168px;transition:transform .28s var(--ease-spring),border-color .22s var(--ease-out),box-shadow .28s var(--ease-out);border-radius:18px;justify-content:space-between;align-items:end;padding:28px;display:flex;box-shadow:inset 0 1px #ffffff0d}.feature-card-lead{flex-direction:column;grid-row:1/span 2;justify-content:space-between;align-items:stretch;min-height:100%}.feature-card:hover{border-color:var(--accent);box-shadow:var(--shadow-warm);transform:translateY(-3px)}.feature-card:active{transform:translateY(-1px)scale(.99)}.feature-card.warm{background:linear-gradient(145deg,var(--accent),var(--accent-2) 55%,var(--surface))}@supports (color:color-mix(in lab, red, red)){.feature-card.warm{background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 26%,var(--surface)),color-mix(in srgb,var(--accent-2) 8%,var(--surface)) 55%,var(--surface))}}.feature-card h2{letter-spacing:-.015em;text-wrap:balance;margin:8px 0;font:600 28px/1.12 Playfair Display}.feature-card p{color:var(--muted);max-width:36ch;font-size:15px;line-height:1.55}.feature-card>svg{color:var(--accent);opacity:.4;flex:none}.overview-board{margin:8px 0 36px}.overview-board .section-heading .secondary{min-height:36px;padding:0 12px;font-size:13px}.overview-taps{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.overview-tap,.overview-brew,.overview-low{border:1px solid var(--line);background:var(--surface);text-align:left;color:inherit;cursor:pointer;border-radius:14px;flex-direction:column;gap:6px;min-height:132px;padding:14px;display:flex}.overview-tap:hover,.overview-brew:hover,.overview-low:hover{border-color:var(--accent);transform:translateY(-2px)}.overview-tap.empty{opacity:.55;min-height:96px;padding:12px}.overview-tap strong,.overview-brew strong,.overview-low strong{white-space:nowrap;text-overflow:ellipsis;margin:2px 0;font:600 18px Playfair Display;overflow:hidden}.overview-tap strong{text-transform:capitalize}.overview-tap small,.overview-brew small,.overview-low small{color:var(--muted);font-size:12px}.overview-tap-fill{background:var(--surface-2);border-radius:5px;height:5px;margin-top:auto;display:block}.overview-tap-fill>span{background:var(--accent);border-radius:5px;height:100%;display:block}.overview-brew-row,.overview-low-row{gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.overview-brew{flex:0 0 min(240px,78vw);min-height:120px}.overview-low{flex-direction:row;flex:0 0 min(280px,80vw);align-items:center;gap:12px;min-height:0}.overview-low .card-icon{width:52px;height:68px}.restock-list{flex-direction:column;gap:10px;max-width:720px;display:flex}.restock-row{border:1px solid var(--line);background:var(--surface);text-align:left;width:100%;min-height:76px;color:inherit;cursor:pointer;border-radius:14px;align-items:center;gap:14px;padding:12px 14px;display:flex}.restock-row:hover{border-color:var(--accent)}.restock-row.got{opacity:.55}.restock-row.got strong{text-decoration:line-through}.restock-row .card-icon{width:52px;height:68px}.restock-row strong{margin:2px 0;font:600 20px Playfair Display;display:block}.restock-row small{color:var(--muted)}.restock-main{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:14px;padding:0;display:flex}.restock-drop{flex:none;margin-left:4px}.wanted-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;max-width:720px;margin-bottom:24px;padding:22px}.wanted-card h2{margin:8px 0 6px;font:600 28px Playfair Display}.wanted-card>p{color:var(--muted);margin:0 0 16px;line-height:1.6}.wanted-form{flex-direction:column;gap:10px;display:flex}.wanted-form .primary{align-self:flex-start}.restock-check{border:2px solid var(--accent);width:28px;height:28px;color:var(--accent-2);border-radius:8px;flex:none;place-items:center;font-size:16px;font-weight:700;display:grid}.restock-row.got .restock-check{background:var(--accent);border-color:var(--accent);color:#fff}.restock-open{border:1px solid var(--line);background:var(--surface-2);border-radius:9px;flex:none;margin-left:auto;padding:8px 12px;font-size:13px}.hero{grid-template-areas:"copy orbit""lede orbit";column-gap:24px}.hero-copy{grid-area:copy;min-width:0}.hero-orbit{grid-area:orbit}.hero-lede{grid-area:lede;margin:4px 0 0}.page-title{margin-bottom:35px}.page-title h1{margin-bottom:12px;font-size:clamp(40px,4vw,58px)}.page-title p{margin:0}.toolbar{justify-content:space-between;gap:15px;margin-bottom:14px;display:flex}.filter-row{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.filter-row select{min-width:140px;min-height:40px}.chip-row{flex-wrap:wrap;gap:7px;display:flex}.chip{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);cursor:pointer;transition:background .2s var(--ease-out),border-color .2s var(--ease-out),color .2s var(--ease-out),transform .16s var(--ease-spring);border-radius:8px;padding:6px 11px;font-size:12px;font-weight:500}.chip:hover{border-color:var(--accent);color:var(--text)}.chip:active{transform:scale(.97)}.chip.active,.chip.static{border-color:var(--accent);color:var(--text);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.chip.active,.chip.static{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}}.chip.static{cursor:default}.tag-input-row{gap:8px;margin-top:8px;display:flex}.tag-input-row input{flex:1}.detail-chips{margin-top:4px}.detail-chip-block{flex-direction:column;gap:8px;margin-top:4px;display:flex}.detail-chip-block .eyebrow{margin:0}.toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}.search{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:1;align-items:center;gap:9px;max-width:480px;height:44px;padding:0 13px;display:flex}.search svg{width:17px;color:var(--muted)}.search input{color:var(--text);background:0 0;border:0;outline:0;width:100%}.inventory-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.inventory-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:15px;padding:18px;display:flex;position:relative}.inventory-card-button{text-align:left;width:100%;color:inherit;cursor:pointer}.inventory-card-button:hover{border-color:var(--accent);transform:translateY(-2px)}.card-icon{background:var(--surface-2);width:62px;height:82px;color:var(--accent);border-radius:10px;flex:none;place-items:center;display:grid;overflow:hidden}.card-icon img{object-fit:cover;width:100%;height:100%}.card-content{flex:1;min-width:0}.card-content h3{white-space:nowrap;text-overflow:ellipsis;margin:5px 0;font:600 21px Playfair Display;overflow:hidden}.meta{flex-wrap:wrap;gap:6px;display:flex}.meta span{color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:3px 6px;font-size:10px}.fill{background:var(--surface-2);border-radius:5px;height:5px;margin-top:16px;position:relative}.fill>span{background:var(--accent);border-radius:5px;height:100%;display:block}.fill small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.card-actions{opacity:0;gap:4px;transition:all .2s;display:flex;position:absolute;top:8px;right:8px}.inventory-card:hover .card-actions{opacity:1}.card-actions .icon-button{width:31px;height:31px}.empty{border:1px dashed var(--line);text-align:center;border-radius:16px;place-content:center;min-height:360px;display:grid}.empty svg{color:var(--accent);width:44px;height:44px;margin:auto}.empty h3{margin:15px 0 4px;font:600 25px Playfair Display}.empty p{color:var(--muted)}.empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;display:flex}.load-error{margin-bottom:20px}.quota-stat{border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.quota-stat span{color:var(--muted);font-size:12px}.unlock-modal .secondary.wide{margin-top:8px}.bottle-detail{flex-direction:column;gap:24px;display:flex}.back-button{align-self:flex-start}.bottle-detail-hero{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;align-items:start;gap:28px;padding-bottom:24px;display:grid}.bottle-detail-image{background:var(--surface);border:1px solid var(--line);width:180px;height:240px;color:var(--accent);border-radius:14px;place-items:center;display:grid;overflow:hidden}.bottle-detail-image img{object-fit:cover;width:100%;height:100%}.bottle-detail-hero h1{margin:8px 0 14px;font:600 clamp(34px,4vw,52px)/1.05 Playfair Display}.bottle-detail-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.bottle-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.bottle-detail-grid>div{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:14px 16px}.bottle-detail-grid>div.full{grid-column:1/-1}.bottle-detail-grid span{letter-spacing:.12em;color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.bottle-detail-grid strong,.bottle-detail-grid a{color:var(--text);word-break:break-word;font-size:15px}.bottle-notes{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:20px}.bottle-notes p{color:var(--text);margin:10px 0 0;line-height:1.7}.finder-modal{width:min(720px,100%)}.finder-search{max-width:none;margin-bottom:12px}.finder-results{flex-direction:column;gap:8px;max-height:55vh;display:flex;overflow:auto}.finder-result{text-align:left;border:1px solid var(--line);background:var(--surface-2);width:100%;color:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.finder-result:hover{border-color:var(--accent)}.finder-result strong{margin:3px 0;font:600 16px Playfair Display;display:block}.finder-result small{color:var(--muted)}.finder-result>svg{color:var(--muted);margin-left:auto}.image-field{flex-direction:column;gap:10px;display:flex}.image-field-preview{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;width:100%;height:180px;position:relative;overflow:hidden}.image-field-preview img{object-fit:contain;width:100%;height:100%}.image-field-preview .icon-button{background:var(--surface);position:absolute;top:8px;right:8px}.image-paste-wrap{position:relative}.image-paste-well{border:1px dashed var(--line);background:var(--surface-2);color:#0000;caret-color:#0000;cursor:text;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;border-radius:12px;outline:none;min-height:128px;padding:18px;font-size:16px;line-height:1.45;overflow:hidden}.image-paste-well:focus,.image-paste-well.dragover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab, red, red)){.image-paste-well:focus,.image-paste-well.dragover{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}}.image-paste-hint{text-align:center;color:var(--muted);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:18px;font-size:14px;line-height:1.45;display:flex;position:absolute;inset:0}.image-paste-hint strong{color:var(--text);font-size:16px;display:block}.image-paste-hint svg{color:var(--accent-2)}.image-field-actions{flex-wrap:wrap;gap:8px;display:flex}.image-field-actions .file-button{flex:1;min-width:140px;margin-top:0}.image-url-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;width:fit-content;min-height:auto;padding:0;font-size:13px;display:inline-flex}.image-url-toggle:hover{color:var(--text)}.suggest-wrap,.suggest-list{flex-direction:column;gap:6px;display:flex}.suggest-item{text-align:left;border:1px solid var(--line);background:var(--surface-2);width:100%;color:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:10px;min-height:56px;padding:10px;display:flex}.suggest-item:hover,.suggest-item.active{border-color:var(--accent)}.suggest-item strong{margin:2px 0;font:600 15px Playfair Display;display:block}.suggest-item small{color:var(--muted)}.suggest-item .card-icon{flex:none;width:40px;height:52px}.suggest-status{color:var(--muted);align-items:center;gap:8px;padding:8px;font-size:13px;display:flex}.vote-box{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.vote-button{border:1px solid var(--line);background:var(--surface-2);width:48px;height:48px;color:var(--muted);cursor:pointer;border-radius:12px;place-items:center;display:grid}.vote-button:hover,.vote-button.active{border-color:var(--accent);color:var(--accent-2);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.vote-button:hover,.vote-button.active{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}}.vote-button.down.active{color:#e9796d;background:#e9796d22;border-color:#e9796d}.vote-score{flex-direction:column;min-width:64px;display:flex}.vote-score strong{font:600 28px/1 Playfair Display}.vote-score small{color:var(--muted);margin-top:4px;font-size:11px}.vote-box .error{width:100%;margin:0}.guest-reviews{border-top:1px solid var(--line);flex-direction:column;gap:16px;padding-top:28px;display:flex}.guest-reviews h2{margin:8px 0 0;font:600 28px Playfair Display}.review-form{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:minmax(140px,220px) 1fr;align-items:end;gap:12px;padding:18px;display:grid}.review-form label{flex-direction:column;gap:7px;display:flex}.review-form label>span{color:var(--muted);font-size:11px;font-weight:600}.review-form .full{grid-column:1/-1}.review-form textarea{min-height:96px}.review-form .primary{width:fit-content}.review-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.review-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;justify-content:space-between;align-items:start;gap:12px;padding:16px;display:flex}.review-card strong{font:600 18px Playfair Display;display:block}.review-card small{color:var(--muted);font-size:12px}.review-card p{white-space:pre-wrap;margin:8px 0 0;line-height:1.65}.review-empty{color:var(--muted);margin:0}.wine-scale{flex-direction:column;gap:10px;display:flex}.wine-scale-track{background:linear-gradient(90deg,#cfc3a6 0%,#e8d48a 42%,#c77647 100%);border-radius:99px;height:8px;margin:6px 4px 2px;position:relative}.wine-scale-marker{background:var(--accent-2);border:2px solid var(--surface);width:14px;height:14px;box-shadow:0 0 0 1px var(--accent);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab, red, red)){.wine-scale-marker{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}}.wine-scale-stops{flex-wrap:wrap;gap:6px;display:flex}.wine-scale-stop{border:1px solid var(--line);background:var(--surface-2);min-width:72px;min-height:44px;color:var(--muted);cursor:pointer;text-align:center;border-radius:10px;flex:calc(33.33% - 6px);padding:6px 8px;font-size:11px;line-height:1.25}.wine-scale-stop.active{border-color:var(--accent);color:var(--text);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.wine-scale-stop.active{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}}.wine-scale.read-only .wine-scale-stop{cursor:default}.brew-scale .wine-scale-track{background:linear-gradient(90deg,#5c564c 0%,#c77647 58%,#e1b46e 82%,#6b6356 100%)}.fill-scale .wine-scale-track{background:linear-gradient(90deg,#e1b46e 0%,#c77647 55%,#5c564c 100%)}.brew-pipeline{gap:4px;margin-top:12px;display:flex}.brew-pipeline span{background:var(--surface-2);border-radius:99px;flex:1;height:4px;display:block}.brew-pipeline span.done{background:var(--accent)}.brew-pipeline span.current{background:var(--accent-2)}.inventory-card.archived-brew,.inventory-card.out-of-stock{opacity:.72}.count-stepper{align-items:center;gap:12px;display:flex}.count-stepper strong{text-align:center;min-width:2ch;font:600 32px Playfair Display}.field-hint{color:var(--muted);font-size:12px;line-height:1.45}.drink-one:disabled{opacity:.5;cursor:not-allowed}.tap-fill{margin-top:4px}.inventory-card.empty-tap{opacity:.78}.inventory-card.empty-tap h3{color:var(--muted);font-style:italic}.cocktail-search{max-width:none;margin:0 0 18px}.ingredient-preview{margin:10px 0 0;padding-left:18px;font-size:13px;line-height:1.55}.ingredient-preview .missing{color:#e4b86e}.ingredient-list{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.ingredient-list li{align-items:start;gap:10px;font-size:15px;line-height:1.45;display:flex}.ingredient-list .mark{color:#80ca8c;flex:none;width:1em}.ingredient-list .substitute .mark{color:var(--accent-2)}.ingredient-list .missing .mark{color:#e4b86e}.ingredient-list small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.ticket-board,.favorite-board{margin:8px 0 28px}.ticket-row,.favorite-row{gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.ticket-card,.favorite-card{border:1px solid var(--line);background:var(--surface);text-align:left;color:inherit;border-radius:14px;flex-direction:column;flex:0 0 min(280px,80vw);gap:8px;padding:14px;display:flex}.ticket-card img,.favorite-card img,.recipe-hero,.import-preview img{object-fit:cover;border:1px solid var(--line);background:var(--surface-2);border-radius:10px;width:100%;height:120px}.ticket-card h3,.favorite-card strong,.import-preview h3{margin:4px 0;font:600 20px Playfair Display}.ticket-card p,.favorite-card small{color:var(--muted);margin:0}.ticket-actions{align-items:center;gap:8px;margin-top:auto;display:flex}.favorite-card{cursor:pointer;flex-direction:row;align-items:center}.favorite-card .card-icon{width:56px;height:72px}.recipe-thumb{object-fit:cover;border-radius:10px;width:100%;height:140px;margin:0 0 12px;display:block}.fav-tag{color:var(--accent-2);letter-spacing:.12em;text-transform:uppercase;font-size:9px;position:absolute;top:48px;left:17px}.ticket-form{border-top:1px solid var(--line);flex-direction:column;gap:10px;margin-top:8px;padding-top:18px;display:flex}.ticket-form label{flex-direction:column;gap:6px;display:flex}.fav-check{color:var(--muted);align-items:center;gap:8px;margin:12px 0;display:flex}.import-preview{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;grid-template-columns:160px 1fr;gap:16px;margin:18px 0;padding:14px;display:grid}.import-preview ul{margin:8px 0 0;padding-left:18px;font-size:13px;line-height:1.6}.import-actions{flex-wrap:wrap;gap:8px;margin:12px 0 4px;display:flex}.import-actions .primary,.import-actions .secondary{flex:1;min-width:150px}.recipe-details a{color:var(--accent-2);word-break:break-word}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#000b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.review-backdrop{z-index:120}.modal{border:1px solid var(--line);background:var(--surface);border-radius:18px;width:min(650px,100%);max-height:92vh;padding:26px;overflow:auto;box-shadow:0 30px 90px #0009}.modal-header{justify-content:space-between;align-items:start;margin-bottom:23px;display:flex}.modal-header h2{margin:7px 0;font:600 31px Playfair Display}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.form-grid label,.form-grid .field-block,.settings-card label{flex-direction:column;gap:7px;display:flex}.form-grid label>span,.form-grid .field-block>span,.settings-card label>span{color:var(--muted);font-size:11px;font-weight:600}.form-grid .full{grid-column:1/-1}input,select,textarea{border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:8px;min-height:42px;padding:9px 11px}textarea{resize:vertical;min-height:90px}.range-wrap{align-items:center;gap:10px;display:flex}.range-wrap input{flex:1;padding:0}.modal-footer{justify-content:flex-end;gap:9px;margin-top:25px;display:flex}.wide{width:100%}.error{color:#f08c82;font-size:13px}.unlock-modal{text-align:center;width:min(390px,100%);position:relative}.unlock-modal .close{position:absolute;top:18px;right:18px}.lock-seal{border:1px solid var(--accent);width:75px;height:75px;color:var(--accent-2);box-shadow:0 0 35px var(--accent);border-radius:50%;place-items:center;margin:8px auto 22px;display:grid}@supports (color:color-mix(in lab, red, red)){.lock-seal{box-shadow:0 0 35px color-mix(in srgb,var(--accent) 25%,transparent)}}.unlock-modal h2{margin:7px;font:600 31px Playfair Display}.unlock-modal p{color:var(--muted)}.unlock-modal>input{text-align:center;letter-spacing:.3em;width:100%;margin:12px 0;font-size:27px}.unlock-modal>small{color:var(--muted);margin-top:13px;display:block}.scanner-modal{width:min(580px,100%)}.segmented{background:var(--surface-2);border-radius:10px;margin-bottom:17px;padding:4px;display:flex}.segmented button{min-height:39px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:7px;display:flex}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:0 2px 10px #0003}.camera-frame{aspect-ratio:16/9;background:#050505;border-radius:12px;margin-bottom:12px;overflow:hidden}.camera-frame video{object-fit:cover;width:100%;height:100%}.scanner-hint{color:var(--muted);margin:10px 0;font-size:12px;line-height:1.5}.file-button{margin-top:10px;position:relative}.file-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.scanner-status{text-align:center;color:var(--muted);font-size:12px}.vision-card{text-align:center;border:1px dashed var(--line);border-radius:12px;padding:35px}.vision-card svg{color:var(--accent)}.vision-card h3{margin:10px;font:600 22px Playfair Display}.vision-card p{color:var(--muted);font-size:13px}.cocktail-toolbar{justify-content:space-between;align-items:start;gap:14px;display:flex}.cocktail-filters{width:min(500px,100%)}.surprise-button{white-space:nowrap}.season-section{margin:8px 0 24px}.season-filters{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.season-filters button{border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;transition:background .2s var(--ease-out),border-color .2s var(--ease-out),color .2s var(--ease-out);border-radius:8px;padding:7px 12px}.season-filters button:hover,.season-filters button.active{border-color:var(--accent);color:var(--text);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.season-filters button:hover,.season-filters button.active{background:color-mix(in srgb,var(--accent) 14%,var(--surface))}}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.recipe-card{border:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;cursor:pointer;border-radius:14px;padding:21px;transition:all .2s;position:relative}.recipe-card:hover{border-color:var(--accent);transform:translateY(-2px)}.recipe-card h3{margin:12px 0 4px;font:600 25px Playfair Display}.recipe-card p,.recipe-card small{color:var(--muted)}.recipe-card ul{padding-left:18px;font-size:13px;line-height:1.7}.status{letter-spacing:.13em;border-radius:5px;padding:5px 7px;font-size:9px}.status.ready{color:#80ca8c;background:#487c5133}.status.almost{color:#e4b86e;background:#aa783633}.status.missing{background:var(--surface-2);color:var(--muted)}.season-tag{color:var(--accent-2);letter-spacing:.12em;text-transform:uppercase;font-size:9px;position:absolute;top:18px;right:17px}.recipe-modal{background:radial-gradient(circle at top left,var(--accent),var(--surface) 55%);width:min(620px,100%)}@supports (color:color-mix(in lab, red, red)){.recipe-modal{background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 14%,var(--surface)),var(--surface) 55%)}}.recipe-modal .modal-header p{color:var(--muted);margin:0}.recipe-modal-body{border-top:1px solid var(--line);grid-template-columns:1.4fr 1fr;gap:30px;padding-top:24px;display:grid}.recipe-modal-body ul{padding-left:18px;line-height:2}.recipe-details{flex-direction:column;gap:15px;display:flex}.recipe-details div{border-bottom:1px solid var(--line);padding-bottom:12px}.recipe-details span,.recipe-details strong{display:block}.recipe-details span{color:var(--muted);letter-spacing:.15em;margin-bottom:4px;font-size:9px}.recipe-warning{color:#e4b86e;background:#aa783622;border:1px solid #aa783655;border-radius:8px;padding:11px;font-size:13px}.mixologist{border:1px solid var(--line);background:radial-gradient(circle at top left,var(--accent),var(--surface) 55%);border-radius:18px;max-width:760px}@supports (color:color-mix(in lab, red, red)){.mixologist{background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 16%,var(--surface)),var(--surface) 55%)}}.mixologist{padding:35px}.mixologist>svg{color:var(--accent-2)}.prompt-chips{flex-wrap:wrap;gap:7px;margin:20px 0;display:flex}.prompt-chips button{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);cursor:pointer;transition:border-color .2s var(--ease-out),color .2s var(--ease-out),background .2s var(--ease-out);border-radius:8px;padding:7px 10px}.mixologist textarea{width:100%;min-height:140px;margin-bottom:12px;font-size:17px}.ai-result{white-space:pre-wrap;border-top:1px solid var(--line);margin-top:25px;padding-top:25px;line-height:1.7}.settings-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.settings-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:13px;padding:24px;display:flex}.settings-card h3{margin:0;font:600 24px Playfair Display}.settings-card>p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.theme-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.theme-grid button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;padding:9px}.theme-grid button.active{border-color:var(--accent)}.theme-swatch{border-radius:5px;height:35px;margin-bottom:6px;display:block}.theme-swatch.light{background:linear-gradient(135deg,#e9e7e2 50%,#8f5a38 50%)}.theme-swatch.dark{background:linear-gradient(135deg,#171511 50%,#c27040 50%)}.theme-swatch.punk{background:linear-gradient(135deg,#0b0709 50%,#ff2d6a 50%)}.stack{flex-direction:column;gap:8px;display:flex}.toast{background:var(--text);color:var(--bg);z-index:100;border-radius:9px;padding:12px 18px;position:fixed;bottom:22px;right:22px}.action-toast,.notice-toast{background:var(--surface);max-width:min(470px,100vw - 32px);color:var(--text);border:1px solid var(--line);align-items:center;gap:12px;display:flex;box-shadow:0 18px 60px #0008}.action-toast>div{flex-direction:column;flex:1;gap:2px;display:flex}.action-toast span{color:var(--muted);font-size:12px}.action-toast .icon-button,.notice-toast .icon-button{width:32px;height:32px}.notice-toast span{flex:1}.mixologist-actions{flex-wrap:wrap;gap:9px;display:flex}.ai-settings-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.environment-badge{color:#89d39a;letter-spacing:.08em;text-transform:uppercase;background:#4f8f5f20;border:1px solid #4f8f5f66;border-radius:8px;padding:5px 8px;font-size:9px;font-weight:700}.spinner{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.ai-loading,.ai-error{border-radius:11px;align-items:center;gap:13px;margin-top:17px;padding:15px;display:flex}.ai-loading{border:1px solid var(--line);background:var(--surface-2)}.ai-loading>svg{color:var(--accent-2)}.ai-loading div,.ai-error div{flex-direction:column;flex:1;gap:3px;display:flex}.ai-loading span,.ai-error span{color:var(--muted);font-size:12px}.ai-error{color:#f2988f;background:#b84d4518;border:1px solid #b84d4566}.ai-error>svg{flex:none}.generated-recipe{border-top:1px solid var(--line);margin-top:26px;padding-top:27px}.generated-heading{justify-content:space-between;gap:20px;display:flex}.generated-heading h2{margin:7px 0;font:600 34px Playfair Display}.generated-heading p{color:var(--muted);line-height:1.6}.generated-heading>svg{color:var(--accent-2);width:38px;height:38px}.generated-recipe .recipe-modal-body{margin-top:22px}.generated-actions{align-items:center;gap:12px;margin-top:22px;display:flex}.generated-actions small{color:var(--muted)}@media (width<=1050px){.stat-grid{grid-template-columns:repeat(3,1fr)}.stat-grid.guest-stats{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-rows:none;grid-template-columns:1fr}.feature-card-lead{grid-row:auto;min-height:200px}.overview-taps{padding-bottom:6px;display:flex;overflow-x:auto}.overview-tap{flex:0 0 min(160px,72vw)}.hero{grid-template-columns:minmax(0,1fr) 168px;grid-template-areas:"copy orbit""lede lede";align-items:center;min-height:0;margin-bottom:36px;padding-bottom:28px}.hero-wordmark{font-size:clamp(36px,7vw,52px)}.hero-greeting{font-size:clamp(18px,3.2vw,24px)}.hero-orbit{width:148px;height:148px;margin:0}.hero-orbit svg{width:34px;height:34px}.hero-orbit span{font-size:28px}.hero-orbit:before{inset:14px}.hero-orbit:after{inset:34px}.settings-grid{grid-template-columns:1fr}.sidebar{width:260px;transition:left .28s cubic-bezier(.22,1,.36,1);position:fixed;left:-280px}.sidebar.open{left:0}.app-shell{display:block}.mobile-close{position:absolute;top:10px;right:10px;display:grid!important}.topbar{justify-content:space-between;gap:12px}.nav-backdrop{z-index:30;background:#0009;border:0;position:fixed;inset:0}.page{padding-top:38px}}@media (width<=700px){.page{padding:30px 16px 60px}.topbar{padding:0 14px}.scan-button{width:40px;padding:0;font-size:0}.scan-button svg{margin:0}.hero{grid-template-columns:minmax(0,1fr) 112px;column-gap:10px;min-height:0;margin-bottom:28px;padding-bottom:22px}.hero-wordmark{margin:8px 0 6px;font-size:34px}.hero-greeting{margin:0;font-size:18px}.hero-orbit{width:104px;height:104px}.hero-orbit span{font-size:24px}.hero-orbit small{letter-spacing:.14em;font-size:8px}.hero-orbit svg{width:26px;height:26px}.hero-orbit:before{inset:10px}.hero-orbit:after{inset:24px}.hero-lede{margin-top:12px;font-size:15px}.stat-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:135px}.feature-grid{grid-template-columns:1fr}.feature-card,.feature-card-lead{min-height:168px}.toolbar{flex-direction:column;align-items:stretch}.toolbar-actions{width:100%}.toolbar-actions .primary,.toolbar-actions .secondary{flex:1}.toolbar .primary{font-size:inherit;width:auto;padding:0 17px}.toolbar .primary svg{margin:0}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.modal{padding:20px}.inventory-grid,.settings-grid{grid-template-columns:1fr}.card-actions{opacity:1}.guest-badge{display:none}.cocktail-toolbar{flex-direction:column;align-items:stretch}.cocktail-filters{max-width:none}.surprise-button{width:100%}.season-filters{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.season-filters button{white-space:nowrap}.recipe-modal-body,.bottle-detail-hero{grid-template-columns:1fr}.bottle-detail-image{width:100%;height:220px}.bottle-detail-grid{grid-template-columns:1fr}.filter-row select{flex:1;min-width:calc(50% - 8px)}.tag-input-row{flex-direction:column}.review-form{grid-template-columns:1fr}.review-form .primary{width:100%}.import-preview{grid-template-columns:1fr}.cocktail-toolbar .toolbar-actions{width:100%}}.restock-stops .chip{min-height:42px;padding:8px 14px;font-size:14px}.next-board{margin:8px 0 40px}.next-lede{color:var(--muted);max-width:640px;margin:-8px 0 16px;line-height:1.6}.next-add{border:1px solid var(--line);background:var(--surface);border-radius:16px;flex-direction:column;gap:12px;max-width:720px;margin-bottom:16px;padding:18px;display:flex}.next-list{flex-direction:column;gap:10px;max-width:720px;display:flex}.next-row{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:12px;width:100%;min-height:76px;padding:12px 14px;display:flex}.next-row .card-icon{width:52px;height:68px}.next-main{flex:1;min-width:0}.next-main strong{white-space:nowrap;text-overflow:ellipsis;margin:2px 0;font:600 20px Playfair Display;display:block;overflow:hidden}.next-main small{color:var(--muted)}.next-vote{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;width:64px;min-height:64px;color:var(--muted);border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;display:flex}.next-vote strong{color:var(--text);font:600 22px/1 Playfair Display}.next-vote.active{border-color:var(--accent);color:var(--accent-2);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.next-vote.active{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}}.next-vote-pair{flex:none;align-items:center;gap:6px;display:flex}.next-vote-pair .vote-score{text-align:center;min-width:56px}.next-empty{color:var(--muted);margin:0}@media (width<=360px){.hero{grid-template-columns:1fr;grid-template-areas:"copy""orbit""lede";justify-items:start}.hero-orbit{width:124px;height:124px;margin:10px 0 0}.hero-orbit span{font-size:26px}.hero-wordmark{font-size:32px}}.settings-card .eyebrow{margin:0}.settings-pin input{letter-spacing:.18em;min-height:48px;font-size:20px}.theme-grid button{min-height:72px}@media (width<=700px){.theme-grid{grid-template-columns:1fr}}.scan-stage{max-width:640px}.scan-tabs{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:14px;padding:4px;display:grid}.scan-tabs button{min-height:48px;color:var(--muted);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-weight:600;display:flex}.scan-tabs button.active{background:var(--surface-2);color:var(--text)}.scan-tabs button:disabled{opacity:.55}.scan-stage .camera-frame{aspect-ratio:3/4;border:1px solid var(--line);background:#050505;border-radius:16px;max-height:min(62vh,560px);margin-bottom:12px;position:relative;overflow:hidden}.scan-stage .camera-frame video{object-fit:cover;width:100%;height:100%}.scan-stage .label-frame:after{content:"";border:2px dashed var(--accent);position:absolute;inset:12%}@supports (color:color-mix(in lab, red, red)){.scan-stage .label-frame:after{border:2px dashed color-mix(in srgb,var(--accent) 70%,transparent)}}.scan-stage .label-frame:after{pointer-events:none;border-radius:18px}.scan-stage .scanner-hint,.scan-stage .scanner-status{color:var(--muted);margin:8px 0 12px;font-size:14px;line-height:1.5}.scan-stage .scanner-status{color:var(--text);font-weight:600}.scan-stage .scan-shutter{margin:0 0 10px}.scan-stage .file-button{margin-top:0}.scan-miss h3{margin:8px 0;font:600 28px Playfair Display}.scan-miss .finder-search{margin:14px 0 8px}.scan-miss .finder-results{flex-direction:column;gap:8px;margin-top:8px;display:flex}.scan-miss .upc-chip{font-variant-numeric:tabular-nums;letter-spacing:.03em}.scan-miss-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}@media (width>=700px){.scan-stage .camera-frame{aspect-ratio:4/3}}.import-review{max-width:760px}.import-upload{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.import-sticky{z-index:12;border:1px solid var(--line);background:var(--bg);border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;display:flex;position:sticky;top:72px}@supports (color:color-mix(in lab, red, red)){.import-sticky{background:color-mix(in srgb,var(--bg) 88%,transparent)}}.import-sticky{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.import-sticky span{color:var(--muted);font-size:13px}.import-sticky strong{color:var(--text);font:600 20px Playfair Display}.import-sticky .primary{margin-left:auto}.import-rows{flex-direction:column;gap:10px;margin-top:14px;display:flex}.import-row{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.import-row.ready{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.import-row.ready{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}}.import-row.skipped{opacity:.62}.import-row header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.import-row p{margin:0;line-height:1.5}.import-row-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.import-search,.import-label{flex-direction:column;gap:8px;margin-top:8px;display:flex}.source-chip{letter-spacing:.04em}.miss-chip{border-color:#e9796d}@supports (color:color-mix(in lab, red, red)){.miss-chip{border-color:color-mix(in srgb,#e9796d 45%,var(--line))}}.miss-chip{color:#e4b86e}.topbar-start{flex:1;align-items:center;gap:12px;min-width:0;display:none}.topbar-title{white-space:nowrap;text-overflow:ellipsis;color:var(--text);font:600 15px Playfair Display;display:none;overflow:hidden}.menu-button,.more-topbar,.nav-hint-banner,.mobile-bottom-nav{display:none}body.nav-open{overflow:hidden}.kiosk-lock{border:1px solid var(--accent);align-items:center;gap:8px;min-height:46px;padding:0 18px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.kiosk-lock{border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line))}}.kiosk-lock{background:var(--accent);color:#fff;letter-spacing:.02em;cursor:pointer;box-shadow:0 8px 22px var(--accent);border-radius:12px;font-size:14px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.kiosk-lock{box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 34%,transparent)}}.kiosk-lock{transition:background .2s var(--ease-out),transform .16s var(--ease-spring)}.kiosk-lock:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.kiosk-lock:hover{background:color-mix(in srgb,var(--accent) 86%,var(--accent-2))}}.kiosk-lock:active{transform:translateY(1px)scale(.98)}.topbar-inbox{position:relative}.topbar-badge{background:var(--accent);color:#fff;border-radius:8px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;font-weight:700;display:grid;position:absolute;top:-4px;right:-4px}.nav-badge{background:var(--accent);color:#fff;border-radius:8px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:grid}.nav-external{color:var(--muted);border-radius:11px;align-items:center;gap:11px;margin-top:6px;padding:11px 13px;font-size:14px;text-decoration:none;display:flex}.nav-external:hover{background:var(--surface-2);color:var(--text)}.nav-external svg:last-child{margin-left:auto}.guest-footer{border-top:1px solid var(--line);background:var(--bg);margin-top:34px;padding:12px 0 0}.guest-footer button{border:1px solid var(--line);background:var(--surface);width:100%;min-height:52px;color:var(--text);cursor:pointer;text-align:center;border-radius:13px;justify-content:center;align-items:center;gap:10px;font-size:14px;display:flex}.guest-footer button:hover{border-color:var(--accent);color:var(--accent)}@media (width<=700px){.kiosk-lock span{display:none}.kiosk-lock{padding:0 14px}.guest-footer button{padding:0 12px;font-size:13px}}@media (width<=1050px){.topbar-start{display:flex}.topbar-title{max-width:min(42vw,220px);display:block}.menu-button{display:none!important}.nav-hint-banner{border-bottom:1px solid var(--accent);align-items:center;gap:10px;padding:11px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.nav-hint-banner{border-bottom:1px solid color-mix(in srgb,var(--accent) 40%,var(--line))}}.nav-hint-banner{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.nav-hint-banner{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}}.nav-hint-banner{color:var(--muted);font-size:13px;line-height:1.4}.nav-hint-banner svg{color:var(--accent-2);flex:none}.nav-hint-banner strong{color:var(--text)}.nav-hint-dismiss{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;margin-left:auto;display:grid}.nav-hint-dismiss:hover{color:var(--text);background:var(--surface-2)}.more-sheet-handle{background:var(--line);border-radius:99px;flex:none;width:42px;height:4px;margin:4px auto 10px}.more-sheet-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex:none;margin:0 8px 6px;font-size:10px;font-weight:700}.more-sheet-body{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.more-sheet .nav-label{padding:10px 12px 4px}.more-sheet-item{width:100%;min-height:48px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:11px;padding:10px 13px;font-size:14px;text-decoration:none;display:flex}.more-sheet-item svg:last-child{color:var(--muted);flex:none;margin-left:auto}.more-sheet-item.active{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.more-sheet-item.active{background:color-mix(in srgb,var(--accent) 14%,transparent)}}.more-sheet-item.active,.more-sheet-item.active svg{color:var(--accent-2)}.more-sheet-social{color:var(--muted)}.more-sheet-lock{border:1px solid var(--line);background:var(--surface-2);width:100%;color:var(--text);cursor:pointer;text-align:left;border-radius:12px;flex:none;align-items:center;gap:12px;margin-top:8px;padding:12px 13px;display:flex}.more-sheet-lock span{flex-direction:column;gap:2px;display:flex}.more-sheet-lock small{color:var(--muted);font-size:12px}}.more-sheet-overlay,.more-sheet{display:none}@media (width<=1050px) and (orientation:portrait){.mobile-bottom-nav{z-index:90;background:var(--bg);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.mobile-bottom-nav{background:color-mix(in srgb,var(--bg) 94%,transparent)}}.mobile-bottom-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom));gap:4px}.mobile-bottom-nav button{min-height:54px;color:var(--muted);letter-spacing:.02em;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 4px;font-size:10px;font-weight:600;display:flex;position:relative}.mobile-bottom-nav button.active{color:var(--accent-2);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.mobile-bottom-nav button.active{background:color-mix(in srgb,var(--accent) 12%,transparent)}}.mobile-bottom-nav button svg{flex:none}.mobile-nav-badge{color:#1a1004;background:#ff6b00;border-radius:99px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:700;display:grid;position:absolute;top:4px;right:calc(50% - 24px)}.has-mobile-nav .page{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.has-mobile-nav .guest-footer{margin-bottom:calc(64px + env(safe-area-inset-bottom))}.more-sheet-overlay{inset:0;bottom:calc(66px + env(safe-area-inset-bottom));z-index:70;opacity:0;pointer-events:none;background:#0009;border:0;padding:0;transition:opacity .2s;display:block;position:fixed}.more-sheet-overlay.open{opacity:1;pointer-events:auto}.more-sheet{left:0;right:0;bottom:calc(66px + env(safe-area-inset-bottom));z-index:80;border:0;border-top:1px solid var(--line);background:var(--surface);pointer-events:none;border-radius:18px 18px 0 0;flex-direction:column;max-height:min(72vh,640px);padding:8px 12px 12px;transition:transform .28s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;overflow:hidden;transform:translateY(110%);box-shadow:0 -18px 60px #0007}.more-sheet.open{pointer-events:auto;transform:translateY(0)}}@media (width<=1050px) and (orientation:landscape){.more-topbar{border:1px solid var(--accent);align-items:center;gap:6px;width:auto;min-height:36px;padding:0 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.more-topbar{border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line))}}.more-topbar{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.more-topbar{background:color-mix(in srgb,var(--accent) 14%,var(--surface))}}.more-topbar{letter-spacing:.02em;color:var(--text);cursor:pointer;border-radius:8px;font-size:12px;font-weight:700}.more-topbar svg{flex:none}.more-topbar.open{border-color:var(--accent);color:var(--accent-2);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.more-topbar.open{background:color-mix(in srgb,var(--accent) 18%,var(--surface))}}.topbar{z-index:85}.mobile-bottom-nav,.more-sheet-overlay,.more-sheet{display:none!important}.sidebar{z-index:80;height:calc(100dvh - 72px);top:72px;box-shadow:18px 0 48px #0008}.sidebar nav{overflow-y:auto}.nav-backdrop{z-index:70;top:72px}}.blocked-ribbon{background:#f0a020;border-radius:99px;align-self:flex-start;align-items:center;padding:4px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.blocked-ribbon{background:color-mix(in srgb,#f0a020 22%,var(--surface))}}.blocked-ribbon{color:#f0a020;letter-spacing:.1em;text-transform:uppercase;border:1px solid #f0a020;font-size:10px;font-weight:700}.inventory-card .blocked-ribbon{z-index:2;position:absolute;top:10px;right:10px}.inventory-card.blocked-bottle{border-color:#f0a020;position:relative}@supports (color:color-mix(in lab, red, red)){.inventory-card.blocked-bottle{border-color:color-mix(in srgb,#f0a020 45%,var(--line))}}.detail-ribbon{margin:6px 0 0}.draft-restore{background:#f0a020;border:1px solid #f0a020;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:13px 16px;display:flex}@supports (color:color-mix(in lab, red, red)){.draft-restore{background:color-mix(in srgb,#f0a020 12%,var(--surface))}}.draft-restore strong{font-size:14px;display:block}.draft-restore span{color:var(--muted);font-size:13px}.draft-restore-actions{gap:8px;display:flex}.toggle-field{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;align-items:flex-start;gap:11px;padding:13px 15px;display:flex}.toggle-field input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin-top:2px}.toggle-field strong{font-size:14px;display:block}.toggle-field small{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.45;display:block}.patron-add{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:24px;padding:16px;display:flex}.patron-add label{flex:200px}.legend-banner{background:linear-gradient(135deg,#d4af37,var(--surface));border:1px solid #d4af37;border-radius:18px;align-items:center;gap:22px;margin-bottom:26px;padding:28px 30px;display:flex}@supports (color:color-mix(in lab, red, red)){.legend-banner{background:linear-gradient(135deg,color-mix(in srgb,#d4af37 22%,var(--surface)),var(--surface))}}.legend-banner{color:var(--text)}.legend-banner svg{color:#d4af37;flex:none}.legend-banner .eyebrow{color:#d4af37;margin:0 0 6px}.legend-banner h2{margin:0 0 8px;font:600 clamp(32px,4vw,54px)/1.05 Playfair Display}.legend-banner p{color:var(--muted);margin:0}.legend-actions{gap:8px;margin-left:auto;display:flex}.patron-board{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.patron-row{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:16px;padding:14px 18px;display:flex}.patron-rank{color:var(--accent);min-width:44px;font:600 20px Playfair Display}.patron-identity{flex:1;min-width:0}.patron-identity strong{font-size:16px;display:block}.patron-identity small{color:var(--muted);font-size:12px}.patron-visits{color:var(--muted);white-space:nowrap;font-size:13px}.patron-actions{gap:6px;display:flex}.board-footnote{color:var(--muted);margin-top:16px;font-size:13px}@media (width<=700px){.legend-banner{flex-wrap:wrap;gap:14px;padding:20px}.legend-actions{margin-left:0}.patron-row{flex-wrap:wrap}}.tip-jar-card,.bartender-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-bottom:26px;padding:24px 26px}.bartender-card{border-color:var(--accent);gap:24px;display:flex}.bartender-portrait{background:var(--surface-2);border:1px solid var(--line);width:132px;height:132px;color:var(--accent);border-radius:14px;flex:none;place-items:center;display:grid;overflow:hidden}.bartender-portrait img{object-fit:cover;width:100%;height:100%}.bartender-body{flex:1;min-width:0}.bartender-body h2{margin:4px 0 10px;font:600 clamp(26px,3vw,38px) Playfair Display}.bartender-body p{color:var(--muted);margin:0 0 16px}.tip-handle-row{flex-wrap:wrap;gap:14px;display:flex}.tip-handle{border:1px solid var(--line);background:var(--surface-2);text-align:center;border-radius:14px;flex-direction:column;flex:180px;align-items:center;gap:10px;padding:16px;display:flex}.tip-handle.apple-cash{border-color:var(--accent-2)}.tip-handle-link{color:var(--text);flex-direction:column;align-items:center;gap:4px;text-decoration:none;display:flex}.tip-handle-link strong{align-items:center;gap:6px;font-size:16px;display:inline-flex}.tip-handle-link span{color:var(--muted);font-size:13px}.tip-handle small{color:var(--muted);font-size:11px}.qr-code{flex-direction:column;align-items:center;gap:7px;margin:0;display:flex}.qr-code svg{background:#fff;border-radius:8px}.qr-code figcaption{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px}@media (width<=700px){.bartender-card{flex-direction:column}.bartender-portrait{width:100%;height:200px}}.event-composer label,.rsvp-card label{margin-bottom:12px;display:block}.event-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.event-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex;position:relative}.event-card img{object-fit:cover;border-radius:10px;width:100%;height:150px}.event-card h3{margin:6px 0 8px;font:600 22px Playfair Display}.event-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.event-card .eyebrow{align-items:center;gap:6px;margin:0;display:inline-flex}.event-card.event-unpublished{opacity:.62;border-style:dashed}.event-card .card-actions{gap:6px;display:flex;position:absolute;top:12px;right:12px}.rsvp-card{margin-top:26px}.subscriber-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.subscriber-list li{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:14px;padding:13px 16px;display:flex}.subscriber-list strong{font-size:15px;display:block}.subscriber-list small{color:var(--muted);font-size:12px}.subscriber-list p{color:var(--muted);flex:1;margin:0;font-size:13px}.subscriber-list button{margin-left:auto}.merch-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.merch-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:16px;padding:18px;display:flex;position:relative}.merch-card.merch-unavailable{opacity:.62}.merch-thumb{background:var(--surface-2);border:1px solid var(--line);width:74px;height:74px;color:var(--accent);border-radius:11px;flex:none;place-items:center;display:grid;overflow:hidden}.merch-thumb img{object-fit:cover;width:100%;height:100%}.merch-card h3{margin:0 0 6px;font:600 19px Playfair Display}.merch-card p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.5}.merch-price{color:var(--accent);font-size:14px;font-weight:600}.merch-card .card-actions{gap:6px;display:flex;position:absolute;top:12px;right:12px}.lab-tier{margin-bottom:32px}.lab-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.lab-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:16px;padding:18px;display:flex}.lab-card.lab-pouring{border-color:var(--accent)}.lab-thumb{background:var(--surface-2);border:1px solid var(--line);width:64px;height:64px;color:var(--accent);border-radius:11px;flex:none;place-items:center;display:grid;overflow:hidden}.lab-thumb img{object-fit:cover;width:100%;height:100%}.lab-body{flex:1;min-width:0}.lab-body h3{margin:6px 0 9px;font:600 20px/1.15 Playfair Display}.tap-badges{flex-wrap:wrap;gap:6px;display:flex}.tap-badge{background:var(--accent);border-radius:99px;padding:3px 9px}@supports (color:color-mix(in lab, red, red)){.tap-badge{background:color-mix(in srgb,var(--accent) 20%,var(--surface))}}.tap-badge{border:1px solid var(--accent);color:var(--accent);letter-spacing:.1em;font-size:10px;font-weight:700}.lab-stage{background:var(--surface-2);border:1px solid var(--line);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-block}.lab-stage.fermenting{border-color:var(--accent-2);color:var(--accent-2)}.lab-stage.conditioning{border-color:var(--accent);color:var(--accent)}.lab-stats{flex-wrap:wrap;gap:6px;display:flex}.lab-stats span{background:var(--surface-2);color:var(--muted);border-radius:99px;align-items:center;gap:5px;padding:3px 9px;font-size:12px;display:inline-flex}.lab-stage-days{color:var(--muted);margin-top:10px;font-size:12px;display:block}.lab-empty{color:var(--muted);margin:0}.lab-log{flex-direction:column;gap:6px;margin:8px 0 18px;padding:0;list-style:none;display:flex}.lab-log li{border:1px solid var(--line);background:var(--surface);border-radius:10px;justify-content:space-between;gap:14px;padding:10px 14px;font-size:14px;display:flex}.lab-log span{color:var(--muted);font-size:13px}.lab-footer-actions{flex-wrap:wrap;gap:8px;display:flex}.archive-block{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:16px 18px}.archive-block summary{cursor:pointer;font-size:15px;font-weight:600}.archive-block[open] summary{margin-bottom:14px}.substitutes-backdrop{z-index:60}.substitutes-drawer{max-width:560px}.substitutes-trigger{margin-top:14px}.substitutes-body{flex-direction:column;gap:18px;display:flex}.substitute-group{border:1px solid var(--line);background:var(--surface-2);border-radius:13px;padding:16px 18px}.substitute-group .eyebrow{margin:0}.substitute-group h3{margin:4px 0 12px;font:600 21px Playfair Display}.substitute-options{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.substitute-options li{border:1px solid var(--line);background:var(--surface);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:11px 14px;display:flex}.substitute-options strong{font-size:15px;display:block}.substitute-options small{color:var(--muted);font-size:12px}.substitute-fill{color:var(--accent);white-space:nowrap;font-size:12px}.substitute-fill.low{color:#f0a020}.message-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.message-list li{border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:18px 20px;position:relative}.message-list li.message-unread{border-left:3px solid #ff6b00}.message-list li.message-read{opacity:.72}.message-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.message-head strong{font-size:16px;display:block}.message-head small{color:var(--muted);font-size:12px}.message-meta{color:var(--muted);flex-direction:column;align-items:flex-end;gap:4px;font-size:12px;display:flex}.discord-flag{background:#5865f2;border-radius:99px;padding:2px 8px}@supports (color:color-mix(in lab, red, red)){.discord-flag{background:color-mix(in srgb,#5865f2 20%,var(--surface))}}.discord-flag{color:#8b93f6;letter-spacing:.06em;text-transform:uppercase;border:1px solid #5865f2;font-size:10px;font-weight:700}.message-list p{margin:0 0 12px;line-height:1.55}.message-list .card-actions{gap:6px;display:flex}.contact-modal{max-width:520px}.contact-modal label{margin-bottom:14px;display:block}.contact-modal textarea{min-height:120px}.contact-modal p{color:var(--muted);line-height:1.55}.crew-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.crew-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;flex-direction:column;gap:14px;padding:20px;display:flex;position:relative}.crew-portrait{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;place-items:center;width:100%;height:220px;display:grid;overflow:hidden}.crew-portrait img{object-fit:cover;width:100%;height:100%}.crew-initials{color:var(--accent-2);font:600 46px Playfair Display,serif}.crew-body h3{margin:0 0 8px;font:600 24px Playfair Display,serif}.crew-body p{color:var(--muted);margin:10px 0 0;line-height:1.6}.crew-role{border:1px solid var(--accent);background:var(--accent);display:inline-block}@supports (color:color-mix(in lab, red, red)){.crew-role{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}}.crew-role{color:var(--accent-2);letter-spacing:.12em;text-transform:uppercase;border-radius:99px;padding:5px 11px;font-size:10px;font-weight:700}.crew-actions{margin-top:auto}.crew-edit .form-grid{margin-bottom:14px}.gallery-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;display:flex}.gallery-count{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.gallery-tile{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;margin:0;display:flex;position:relative;overflow:hidden}.gallery-open{background:var(--surface-2);cursor:pointer;aspect-ratio:1;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.gallery-open img,.gallery-open video{object-fit:cover;width:100%;height:100%;display:block}.gallery-play{color:#fff;background:#000000b0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;inset:auto 10px 10px auto}.gallery-tile figcaption{flex-direction:column;gap:3px;padding:12px 14px;display:flex}.gallery-tile figcaption strong{font-size:14px;line-height:1.4}.gallery-tile figcaption small{color:var(--muted);font-size:11px}.gallery-stamp{opacity:.75}.gallery-delete{background:#000000b8;width:32px;height:32px;position:absolute;top:9px;right:9px}.gallery-upload{max-width:520px}.gallery-upload label{margin-bottom:14px;display:block}.gallery-pick{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.gallery-pick .secondary{flex:1;min-width:190px}.gallery-chosen{color:var(--accent-2);align-items:center;gap:8px;margin:0 0 14px;font-size:13px;display:flex}.gallery-lightbox{padding:clamp(12px,3vw,40px)}.lightbox-stage{flex-direction:column;gap:14px;max-width:min(1100px,100%);max-height:100%;margin:0;display:flex}.lightbox-stage img,.lightbox-stage video{object-fit:contain;background:#000;border-radius:14px;max-width:100%;max-height:72vh}.lightbox-stage figcaption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.lightbox-stage figcaption strong{margin-bottom:4px;font-size:16px;display:block}.lightbox-stage figcaption small{color:var(--muted);font-size:12px}.lightbox-actions{flex-wrap:wrap;gap:9px;display:flex}.lightbox-actions .secondary{color:var(--text);text-decoration:none}.lightbox-close{z-index:2;position:absolute;top:16px;right:16px}.lightbox-nav{z-index:2;width:46px;height:46px;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav.prev{left:14px}.lightbox-nav.next{right:14px}.bulk-import-input{resize:vertical;width:100%;min-height:150px;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.bulk-import-actions{flex-wrap:wrap;gap:8px;display:flex}.bulk-import-banner{border:1px solid var(--accent);margin:0}@supports (color:color-mix(in lab, red, red)){.bulk-import-banner{border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line))}}.bulk-import-banner{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bulk-import-banner{background:color-mix(in srgb,var(--accent) 14%,var(--surface))}}.bulk-import-banner{color:var(--text);border-radius:11px;padding:11px 14px;font-size:13px}.bulk-import-result{border:1px solid var(--line);background:var(--surface-2);border-radius:11px;flex-direction:column;gap:4px;max-height:220px;padding:12px 14px;font-size:13px;display:flex;overflow:auto}.bulk-import-result .muted{color:var(--muted)}.image-field-retake{cursor:pointer;display:block;position:absolute;inset:0}.image-field-retake img{object-fit:contain;width:100%;height:100%}.image-field-preview .icon-button{z-index:2}.image-field-retake input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.image-field-retake-hint{color:#fff;letter-spacing:.04em;opacity:0;pointer-events:none;background:#000000ad;justify-content:center;align-items:center;gap:6px;padding:7px;font-size:11px;transition:opacity .15s;display:flex;position:absolute;bottom:0;left:0;right:0}.image-field-retake:hover .image-field-retake-hint,.image-field-retake:focus-within .image-field-retake-hint{opacity:1}@media (hover:none){.image-field-retake-hint{opacity:1}}.unlock-modal{text-align:center;width:min(380px,100%)}.pin-dots{justify-content:center;gap:15px;margin:20px 0 8px;display:flex}.pin-dot{border:1px solid var(--accent);border-radius:50%;width:14px;height:14px}@supports (color:color-mix(in lab, red, red)){.pin-dot{border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line))}}.pin-dot{transition:background .12s,transform .12s}.pin-dot.filled{background:var(--accent-2);border-color:var(--accent-2);transform:scale(1.14)}.pin-dots.shake{animation:.45s pin-shake}@keyframes pin-shake{0%,to{transform:translate(0)}15%{transform:translate(-9px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(5px)}80%{transform:translate(-3px)}}.pin-message{min-height:20px;color:var(--muted);margin:0 0 16px;font-size:13px}.pin-message.error{color:#e2836f}.numpad-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:320px;margin:0 auto 18px;display:grid}.numpad-btn{border:1px solid var(--line);background:var(--surface-2);min-height:60px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-radius:13px;place-items:center;font:600 25px Playfair Display,serif;transition:transform 80ms,background .12s,border-color .12s;display:grid}.numpad-btn:active:not(:disabled){background:var(--accent);transform:scale(.95)}@supports (color:color-mix(in lab, red, red)){.numpad-btn:active:not(:disabled){background:color-mix(in srgb,var(--accent) 24%,var(--surface))}}.numpad-btn:active:not(:disabled){border-color:var(--accent)}.numpad-btn:disabled{opacity:.4;cursor:not-allowed}.numpad-aux{color:var(--muted)}.numpad-enter{color:var(--accent-2);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.numpad-enter{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}}@media (hover:hover){.numpad-btn:hover:not(:disabled){border-color:var(--accent)}}.settings-pin small{color:var(--muted);font-size:11px}.settings-pin input:disabled{opacity:.5}.settings-subhead{margin:22px 0 0;font-size:16px}.tab-order-list{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.tab-order-row{border:1px solid var(--line);background:var(--surface-2);border-radius:11px;align-items:center;gap:12px;padding:8px 10px;display:flex}.tab-order-row.tab-order-off{opacity:.62}.tab-order-rank{background:var(--accent);border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}@supports (color:color-mix(in lab, red, red)){.tab-order-rank{background:color-mix(in srgb,var(--accent) 18%,var(--surface))}}.tab-order-rank{color:var(--accent-2);font-size:11px;font-weight:700}.tab-order-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tab-order-hidden{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:8px;padding:3px 7px;font-size:9px}.tab-order-actions{gap:6px;display:flex}.tab-order-actions .icon-button{width:34px;height:34px}.tab-order-actions .icon-button:disabled{opacity:.35;cursor:not-allowed}@media (width<=700px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.crew-portrait{height:180px}.lightbox-stage img,.lightbox-stage video{max-height:56vh}.lightbox-stage figcaption{flex-direction:column;align-items:flex-start}.tab-order-actions .icon-button{width:40px;height:40px}.numpad-btn{min-height:64px;font-size:26px}.pin-dots{gap:18px}}html[data-theme=punk]{--punk-ink:#09060a;--punk-hard:5px 5px 0 #ff2d6a;--punk-hard-y:5px 5px 0 #ffe14a;--punk-hard-k:4px 4px 0 #000;--radius:10px;--display:"Archivo Black","Arial Black",sans-serif;--body:"Outfit",system-ui,sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=punk] body{font-family:var(--body);background:radial-gradient(920px 540px at 8% -10%, var(--accent), transparent 58%), radial-gradient(680px 460px at 100% 0%, var(--accent-2), transparent 52%), radial-gradient(520px 380px at 80% 110%, var(--accent), transparent 55%), var(--bg)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] body{background:radial-gradient(920px 540px at 8% -10%, color-mix(in srgb,var(--accent) 28%,transparent), transparent 58%), radial-gradient(680px 460px at 100% 0%, color-mix(in srgb,var(--accent-2) 14%,transparent), transparent 52%), radial-gradient(520px 380px at 80% 110%, color-mix(in srgb,var(--accent) 12%,transparent), transparent 55%), var(--bg)}}html[data-theme=punk] body:before{content:"";pointer-events:none;z-index:1;opacity:.18;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;animation:7s steps(2,end) infinite punk-grain-drift;position:fixed;inset:0}html[data-theme=punk] body:after{content:"";pointer-events:none;z-index:35;opacity:.7;mix-blend-mode:overlay;background:linear-gradient(101.5deg,#0000 7%,#ffffffe6 7.15%,#0000 7.55%),linear-gradient(97deg,#0000 23%,#ffffff8c 23.12%,#0000 23.55%),linear-gradient(109deg,#0000 41%,#fff0f5bf 41.1%,#0000 41.55%),linear-gradient(94deg,#0000 58%,#ffffff80 58.12%,#0000 58.5%),linear-gradient(113deg,#0000 76%,#ffffffa6 76.1%,#0000 76.5%),linear-gradient(12deg,#0000 18%,#000000bf 18.35%,#0000 19%),linear-gradient(168deg,#0000 52%,#0000008c 52.4%,#0000 53.1%),linear-gradient(8deg,#0000 71%,#140008b3 71.3%,#0000 72%),linear-gradient(106deg,#0000 34%,#ff2d6a8c 34.15%,#0000 34.7%),radial-gradient(1.5px 180px at 16% 30%,#ffffffd9,#0000 3px),radial-gradient(1.5px 210px at 81% 55%,#fff9,#0000 3px),radial-gradient(2px 90px at 48% 72%,#000000b3,#0000 3px);animation:7.5s linear infinite punk-scratch-pan;position:fixed;inset:-14%}@keyframes punk-grain-drift{0%,to{transform:translate(0)}50%{transform:translate(-2%,1.5%)}}@keyframes punk-scratch-pan{0%{transform:translate(0)rotate(0)}to{transform:translate(-4%,3%)rotate(.4deg)}}html[data-theme=punk] .brand strong,html[data-theme=punk] .hero-wordmark,html[data-theme=punk] .page-title h1,html[data-theme=punk] .section-heading h2,html[data-theme=punk] .feature-card h2,html[data-theme=punk] .stat-card span,html[data-theme=punk] .modal-header h2,html[data-theme=punk] .topbar-title,html[data-theme=punk] .card-content h3,html[data-theme=punk] .recipe-card h3,html[data-theme=punk] .generated-heading h2,html[data-theme=punk] .legend-banner h2,html[data-theme=punk] .bartender-body h2,html[data-theme=punk] .crew-body h3,html[data-theme=punk] .unlock-modal h2,html[data-theme=punk] .favorite-card strong,html[data-theme=punk] .ticket-card h3,html[data-theme=punk] .overview-tap strong,html[data-theme=punk] .overview-brew strong,html[data-theme=punk] .wanted-card h2,html[data-theme=punk] .lab-body h3,html[data-theme=punk] .event-card h3,html[data-theme=punk] .merch-card h3,html[data-theme=punk] .next-main strong{font-family:var(--display);letter-spacing:-.03em;font-weight:400;line-height:.95}html[data-theme=punk] .hero-wordmark{color:#fff;text-transform:none;z-index:1;text-shadow:5px 5px 0 var(--accent), -2px 0 0 var(--accent-2);font-size:clamp(48px,6.5vw,92px);position:relative}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .hero-wordmark{text-shadow:5px 5px 0 var(--accent), -2px 0 0 color-mix(in srgb,var(--accent-2) 75%,transparent)}}html[data-theme=punk] .hero-copy{isolation:isolate;padding:12px 8px 16px 4px;position:relative}html[data-theme=punk] .hero-copy:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(ellipse 70% 55% at 35% 40%, var(--accent), transparent 70%), radial-gradient(ellipse 50% 45% at 70% 60%, var(--accent-2), transparent 65%), linear-gradient(115deg, transparent 42%, var(--accent) 50%, transparent 58%);position:absolute;inset:-22% -14% -18% -18%}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .hero-copy:before{background:radial-gradient(ellipse 70% 55% at 35% 40%, color-mix(in srgb,var(--accent) 32%,transparent), transparent 70%), radial-gradient(ellipse 50% 45% at 70% 60%, color-mix(in srgb,var(--accent-2) 16%,transparent), transparent 65%), linear-gradient(115deg, transparent 42%, color-mix(in srgb,var(--accent) 18%,transparent) 50%, transparent 58%)}}html[data-theme=punk] .hero-copy:before{filter:contrast(1.15)saturate(1.2);clip-path:polygon(2% 6%,18% 1%,47% 4%,78% 0%,98% 7%,100% 38%,97% 72%,100% 94%,76% 100%,42% 96%,12% 100%,0% 78%,3% 42%);opacity:.95;animation:.4s steps(2,end) infinite alternate punk-film-jitter;transform:rotate(-1.5deg)}html[data-theme=punk] .hero-copy:after{content:"";z-index:2;pointer-events:none;opacity:.9;mix-blend-mode:overlay;clip-path:polygon(1% 8%,22% 2%,55% 5%,88% 0%,99% 12%,100% 55%,96% 88%,70% 100%,28% 97%,0% 85%,2% 40%);background:linear-gradient(100deg,#0000 8%,#fffffff2 8.2%,#0000 8.75%),linear-gradient(96deg,#0000 26%,#ffffffb3 26.18%,#0000 26.7%),linear-gradient(108deg,#0000 44%,#ff2d6acc 44.2%,#0000 44.85%),linear-gradient(93deg,#0000 62%,#fffc 62.15%,#0000 62.7%),linear-gradient(111deg,#0000 79%,#fff9 79.15%,#0000 79.65%),linear-gradient(17deg,#0000 30%,#000000b3 30.4%,#0000 31.2%),linear-gradient(175deg,#0000 55%,#00000080 55.35%,#0000 56%),radial-gradient(circle at 22% 28%,#ffffff59 0 1px,#0000 2px),radial-gradient(circle at 68% 62%,#ffffff40 0 1px,#0000 2px),radial-gradient(circle at 40% 78%,#0006 0 1.5px,#0000 3px);animation:.2s steps(2,end) infinite punk-scratch-flicker;position:absolute;inset:-18% -10% -12% -14%}@keyframes punk-scratch-flicker{0%{opacity:.7;transform:translate(0)scaleX(1)}to{opacity:1;transform:translate(.6%,-.4%)scaleX(1.01)}}html[data-theme=punk] .hero-copy>*{z-index:1;position:relative}@keyframes punk-film-jitter{0%{transform:rotate(-1.5deg)translate(0)}to{transform:rotate(-.7deg)translate(.5%,-.4%)}}html[data-theme=punk] .hero-greeting{font-family:var(--body);letter-spacing:0;text-transform:none;color:var(--muted);max-width:36ch;font-size:clamp(18px,2.2vw,26px);font-weight:500;line-height:1.3}html[data-theme=punk] .hero-greeting em{color:var(--accent-2);font-style:normal;font-family:var(--display);letter-spacing:-.02em;text-decoration:underline;-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:6px;text-decoration-thickness:6px}html[data-theme=punk] .eyebrow,html[data-theme=punk] .nav-label,html[data-theme=punk] .guest-badge,html[data-theme=punk] .chip,html[data-theme=punk] .status,html[data-theme=punk] .season-tag,html[data-theme=punk] .fav-tag,html[data-theme=punk] .lab-stage,html[data-theme=punk] .tap-badge,html[data-theme=punk] .crew-role{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;font-weight:400}html[data-theme=punk] .brand-mark{border:2px solid var(--accent-2);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .brand-mark{background:color-mix(in srgb,var(--accent) 28%,var(--surface))}}html[data-theme=punk] .brand-mark{box-shadow:var(--punk-hard-k);border-radius:10px;transform:rotate(45deg)}html[data-theme=punk] .brand-mark svg{transform:rotate(-45deg)}html[data-theme=punk] .sidebar{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .sidebar{background:color-mix(in srgb,var(--surface) 94%,#000)}}html[data-theme=punk] .sidebar{border-right:2px solid var(--line)}html[data-theme=punk] .sidebar nav button{border-radius:var(--radius);font-family:var(--body);border:1px solid #0000;font-weight:600}html[data-theme=punk] .sidebar nav button.active{background:var(--accent-2);color:var(--punk-ink);border-color:var(--punk-ink);box-shadow:var(--punk-hard);font-family:var(--display);letter-spacing:-.01em;text-transform:uppercase;transform:rotate(-1deg)}html[data-theme=punk] .sidebar nav button.active svg{color:var(--punk-ink)}html[data-theme=punk] .sidebar nav button:hover:not(.active){border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .sidebar nav button:hover:not(.active){background:color-mix(in srgb,var(--accent) 14%,var(--surface-2))}}html[data-theme=punk] .topbar{border-bottom:2px solid var(--line);background:var(--bg)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .topbar{background:color-mix(in srgb,var(--bg) 78%,transparent)}}html[data-theme=punk] .icon-button,html[data-theme=punk] .scan-button,html[data-theme=punk] .secondary,html[data-theme=punk] .guest-footer button,html[data-theme=punk] .search,html[data-theme=punk] .chip{border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--punk-hard-k);background:var(--surface)}html[data-theme=punk] .icon-button svg,html[data-theme=punk] .sidebar nav button svg,html[data-theme=punk] .stat-card>svg:first-child,html[data-theme=punk] .feature-card>svg,html[data-theme=punk] .mobile-bottom-nav button svg{stroke-width:2.6px;filter:drop-shadow(1px 1px 0 var(--accent))}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .icon-button svg,html[data-theme=punk] .sidebar nav button svg,html[data-theme=punk] .stat-card>svg:first-child,html[data-theme=punk] .feature-card>svg,html[data-theme=punk] .mobile-bottom-nav button svg{filter:drop-shadow(1px 1px 0 color-mix(in srgb,var(--accent) 55%,transparent))}}html[data-theme=punk] .stat-card>svg:first-of-type,html[data-theme=punk] .feature-card>svg:last-of-type,html[data-theme=punk] .feature-card>svg:first-of-type{opacity:1;box-sizing:content-box;background:var(--accent-2);border:2px solid var(--punk-ink);outline:2px solid var(--accent);outline-offset:3px;width:1.35em;height:1.35em;box-shadow:4px 4px 0 var(--accent);border-radius:3px;padding:10px;transform:rotate(-9deg);color:var(--punk-ink)!important}html[data-theme=punk] .feature-card:nth-child(2n)>svg:last-of-type,html[data-theme=punk] .stat-card:nth-child(odd)>svg:first-of-type{background:var(--accent);outline-color:var(--accent-2);box-shadow:4px 4px 0 var(--accent-2);transform:rotate(7deg);color:#fff!important}html[data-theme=punk] .feature-card:hover>svg:last-of-type,html[data-theme=punk] .stat-card:hover>svg:first-of-type{background:var(--accent-2);box-shadow:5px 5px 0 var(--accent);transform:rotate(12deg)scale(1.12);color:var(--punk-ink)!important}html[data-theme=punk] .primary{border:2px solid var(--punk-ink);background:var(--accent-2);color:var(--punk-ink);border-radius:var(--radius);box-shadow:var(--punk-hard);font-family:var(--display);letter-spacing:-.02em;text-transform:uppercase;font-weight:400}html[data-theme=punk] .primary:hover{background:var(--accent-2)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .primary:hover{background:color-mix(in srgb,var(--accent-2) 86%,#fff)}}html[data-theme=punk] .stat-card,html[data-theme=punk] .feature-card,html[data-theme=punk] .overview-tap,html[data-theme=punk] .overview-brew,html[data-theme=punk] .overview-low,html[data-theme=punk] .favorite-card,html[data-theme=punk] .ticket-card,html[data-theme=punk] .inventory-card,html[data-theme=punk] .settings-card,html[data-theme=punk] .event-card,html[data-theme=punk] .merch-card,html[data-theme=punk] .lab-card,html[data-theme=punk] .crew-card,html[data-theme=punk] .gallery-tile,html[data-theme=punk] .patron-row,html[data-theme=punk] .message-list li,html[data-theme=punk] .next-row,html[data-theme=punk] .next-add,html[data-theme=punk] .bartender-card,html[data-theme=punk] .tip-jar-card,html[data-theme=punk] .wanted-card,html[data-theme=punk] .mixologist,html[data-theme=punk] .modal,html[data-theme=punk] .recipe-card{border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--punk-hard-k);background:var(--surface)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .stat-card,html[data-theme=punk] .feature-card,html[data-theme=punk] .overview-tap,html[data-theme=punk] .overview-brew,html[data-theme=punk] .overview-low,html[data-theme=punk] .favorite-card,html[data-theme=punk] .ticket-card,html[data-theme=punk] .inventory-card,html[data-theme=punk] .settings-card,html[data-theme=punk] .event-card,html[data-theme=punk] .merch-card,html[data-theme=punk] .lab-card,html[data-theme=punk] .crew-card,html[data-theme=punk] .gallery-tile,html[data-theme=punk] .patron-row,html[data-theme=punk] .message-list li,html[data-theme=punk] .next-row,html[data-theme=punk] .next-add,html[data-theme=punk] .bartender-card,html[data-theme=punk] .tip-jar-card,html[data-theme=punk] .wanted-card,html[data-theme=punk] .mixologist,html[data-theme=punk] .modal,html[data-theme=punk] .recipe-card{background:color-mix(in srgb,var(--surface) 90%,#000)}}html[data-theme=punk] .stat-card,html[data-theme=punk] .feature-card,html[data-theme=punk] .overview-tap,html[data-theme=punk] .overview-brew,html[data-theme=punk] .overview-low,html[data-theme=punk] .favorite-card,html[data-theme=punk] .ticket-card,html[data-theme=punk] .inventory-card,html[data-theme=punk] .settings-card,html[data-theme=punk] .event-card,html[data-theme=punk] .merch-card,html[data-theme=punk] .lab-card,html[data-theme=punk] .crew-card,html[data-theme=punk] .gallery-tile,html[data-theme=punk] .patron-row,html[data-theme=punk] .message-list li,html[data-theme=punk] .next-row,html[data-theme=punk] .next-add,html[data-theme=punk] .bartender-card,html[data-theme=punk] .tip-jar-card,html[data-theme=punk] .wanted-card,html[data-theme=punk] .mixologist,html[data-theme=punk] .modal,html[data-theme=punk] .recipe-card{isolation:isolate;position:relative;overflow:hidden}html[data-theme=punk] .feature-card,html[data-theme=punk] .stat-card{clip-path:polygon(0 2%,3% 0,97% 1%,100% 4%,99% 96%,97% 100%,4% 99%,0 95%)}html[data-theme=punk] .feature-card:nth-child(2n){clip-path:polygon(1% 0,96% 2%,100% 5%,98% 97%,95% 100%,2% 98%,0 94%,2% 3%)}html[data-theme=punk] .stat-card:before,html[data-theme=punk] .feature-card:before,html[data-theme=punk] .overview-tap:before{content:"";pointer-events:none;z-index:0;opacity:.95;mix-blend-mode:overlay;background:linear-gradient(102deg,#0000 5%,#ffffffd9 5.25%,#0000 5.9%),linear-gradient(98deg,#0000 21%,#ffffff8c 21.2%,#0000 21.8%),linear-gradient(111deg,#0000 47%,#ff2d6ab3 47.25%,#0000 48%),linear-gradient(94deg,#0000 69%,#fff9 69.2%,#0000 69.85%),linear-gradient(15deg,#0000 36%,#000000a6 36.4%,#0000 37.3%),linear-gradient(170deg,#0000 78%,#00000073 78.35%,#0000 79%),repeating-linear-gradient(-24deg,#0000 0 8px,#ffe14a24 8px 9px,#0000 9px 18px);animation:3.2s steps(3,end) infinite punk-card-scratch;position:absolute;inset:0}html[data-theme=punk] .stat-card:after,html[data-theme=punk] .feature-card:after{content:"";pointer-events:none;z-index:0;opacity:.35;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:100px 100px;position:absolute;inset:0}html[data-theme=punk] .feature-card-lead:after,html[data-theme=punk] .feature-card.warm:after{content:"";z-index:2;pointer-events:none;opacity:.9;mix-blend-mode:normal;background:var(--accent-2);width:54px;height:18px;position:absolute;top:-6px;right:18px}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .feature-card-lead:after,html[data-theme=punk] .feature-card.warm:after{background:color-mix(in srgb,var(--accent-2) 78%,#fff)}}html[data-theme=punk] .feature-card-lead:after,html[data-theme=punk] .feature-card.warm:after{background-image:none;transform:rotate(8deg);box-shadow:1px 1px #00000073}html[data-theme=punk] .stat-card>*,html[data-theme=punk] .feature-card>*,html[data-theme=punk] .overview-tap>*{z-index:1;position:relative}html[data-theme=punk] .section-heading{isolation:isolate;margin-left:-2px;padding:12px 14px 10px;position:relative}html[data-theme=punk] .section-heading:before{content:"";pointer-events:none;opacity:.7;z-index:-1;background:repeating-linear-gradient(-18deg, var(--accent-2) 0 9px, transparent 9px 18px), var(--accent);border:none;position:absolute;inset:-6px -8px;transform:rotate(-.8deg);box-shadow:4px 4px #000}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .section-heading:before{background:repeating-linear-gradient(-18deg, color-mix(in srgb,var(--accent-2) 22%,transparent) 0 9px, transparent 9px 18px), color-mix(in srgb,var(--accent) 20%,var(--surface))}}html[data-theme=punk] .section-heading:before{clip-path:polygon(0 8%,4% 0,100% 4%,98% 100%,2% 96%);mix-blend-mode:normal;animation:.5s steps(2,end) infinite alternate punk-film-jitter}@keyframes punk-card-scratch{0%,to{opacity:.85;transform:translate(0)}33%{opacity:1;transform:translate(-1.8%,1.1%)}66%{opacity:.75;transform:translate(1.4%,-.9%)}}html[data-theme=punk] .stat-card:nth-child(2n),html[data-theme=punk] .overview-tap:nth-child(odd){transform:rotate(-.7deg)}html[data-theme=punk] .stat-card:nth-child(3n),html[data-theme=punk] .overview-tap:nth-child(2n){transform:rotate(.8deg)}html[data-theme=punk] .stat-card:hover,html[data-theme=punk] .overview-tap:hover,html[data-theme=punk] .overview-brew:hover,html[data-theme=punk] .feature-card:hover,html[data-theme=punk] .inventory-card-button:hover,html[data-theme=punk] .recipe-card:hover{border-color:var(--accent-2);box-shadow:var(--punk-hard-y);transform:translate(-3px,-3px)rotate(-1.2deg)}html[data-theme=punk] .feature-card.warm,html[data-theme=punk] .feature-card-lead{background:linear-gradient(135deg,var(--accent),var(--accent-2))}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .feature-card.warm,html[data-theme=punk] .feature-card-lead{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 42%,var(--surface)),color-mix(in srgb,var(--accent-2) 14%,var(--surface)))}}html[data-theme=punk] .feature-card.warm,html[data-theme=punk] .feature-card-lead{border-color:var(--accent)}html[data-theme=punk] .hero{border-bottom:2px solid var(--line)}html[data-theme=punk] .hero-orbit{border:2px solid var(--line);box-shadow:var(--punk-hard);background:radial-gradient(circle,var(--accent),transparent 65%);border-radius:50%}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .hero-orbit{background:radial-gradient(circle,color-mix(in srgb,var(--accent) 28%,var(--surface-2)),transparent 65%)}}html[data-theme=punk] .hero-orbit{animation:5.5s ease-in-out infinite orbit-glow}html[data-theme=punk] .hero-orbit:before,html[data-theme=punk] .hero-orbit:after{border-radius:50%}html[data-theme=punk] .hero-orbit:after{border-color:var(--accent-2);border-width:2px}html[data-theme=punk] .chip.active,html[data-theme=punk] .chip.static{background:var(--accent-2);color:var(--punk-ink);border-color:var(--punk-ink)}html[data-theme=punk] .mobile-bottom-nav{border-top:2px solid var(--line);background:var(--bg)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .mobile-bottom-nav{background:color-mix(in srgb,var(--bg) 92%,#000)}}html[data-theme=punk] .mobile-bottom-nav{border-radius:var(--radius) var(--radius) 0 0}html[data-theme=punk] .mobile-bottom-nav button{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius);font-size:9px}html[data-theme=punk] .mobile-bottom-nav button.active{color:var(--punk-ink);background:var(--accent-2);box-shadow:var(--punk-hard-k);border:2px solid var(--punk-ink)}html[data-theme=punk] .more-topbar{border:2px solid var(--punk-ink);background:var(--accent-2);color:var(--punk-ink);box-shadow:var(--punk-hard);border-radius:var(--radius);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase}html[data-theme=punk] .more-topbar svg{color:var(--punk-ink)}html[data-theme=punk] .more-sheet{border-top:2px solid var(--punk-ink);border-radius:var(--radius) var(--radius) 0 0;background:var(--surface)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .more-sheet{background:color-mix(in srgb,var(--surface) 94%,#000)}}html[data-theme=punk] .more-sheet-handle{background:var(--accent-2)}html[data-theme=punk] .more-sheet-kicker,html[data-theme=punk] .more-sheet .nav-label{font-family:var(--display);letter-spacing:.08em}html[data-theme=punk] .more-sheet-item{font-family:var(--display);letter-spacing:.03em;border-radius:var(--radius);border:1px solid #0000;font-size:13px}html[data-theme=punk] .more-sheet-item.active{background:var(--accent-2);color:var(--punk-ink);border-color:var(--punk-ink);box-shadow:var(--punk-hard)}html[data-theme=punk] .more-sheet-item.active svg{color:var(--punk-ink)}html[data-theme=punk] .more-sheet-lock{border:2px solid var(--line);border-radius:var(--radius)}html[data-theme=punk] .kiosk-lock{border:2px solid var(--punk-ink);background:var(--accent-2);color:var(--punk-ink);box-shadow:var(--punk-hard-y);border-radius:var(--radius);font-family:var(--display);letter-spacing:.04em;text-transform:uppercase}html[data-theme=punk] .topbar-badge,html[data-theme=punk] .nav-badge{background:var(--accent);color:#fff;font-family:var(--display);border-radius:6px}html[data-theme=punk] .nav-hint-banner{border-bottom:2px solid var(--punk-ink);background:repeating-linear-gradient(-18deg, var(--accent-2) 0 8px, transparent 8px 16px), var(--accent)}@supports (color:color-mix(in lab, red, red)){html[data-theme=punk] .nav-hint-banner{background:repeating-linear-gradient(-18deg, color-mix(in srgb,var(--accent-2) 18%,transparent) 0 8px, transparent 8px 16px), color-mix(in srgb,var(--accent) 18%,var(--surface))}}html[data-theme=punk] .nav-hint-banner{color:var(--text)}html[data-theme=punk] .nav-hint-banner strong{color:var(--accent-2);font-family:var(--display)}html[data-theme=punk] input,html[data-theme=punk] select,html[data-theme=punk] textarea{border:2px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}html[data-theme=punk] .theme-grid button.active{border:2px solid var(--accent-2);box-shadow:var(--punk-hard-k)}html[data-theme=punk] .sidebar-footer svg{border:2px solid var(--accent);box-shadow:var(--punk-hard-k)}html[data-theme=punk] .fill>span,html[data-theme=punk] .overview-tap-fill>span{background:linear-gradient(90deg,var(--accent),var(--accent-2))}@media (prefers-reduced-motion:reduce){html[data-theme=punk] body:before,html[data-theme=punk] body:after,html[data-theme=punk] .hero-copy:before,html[data-theme=punk] .hero-copy:after,html[data-theme=punk] .stat-card:before,html[data-theme=punk] .feature-card:before,html[data-theme=punk] .section-heading:before{animation:none}html[data-theme=punk] .stat-card:hover,html[data-theme=punk] .overview-tap:hover,html[data-theme=punk] .feature-card:hover{transform:none}.more-sheet,.more-sheet-overlay,.sidebar{transition:none}}.ai-loading .spinner{flex:none}.ai-loading{animation:2.4s ease-in-out infinite mixologist-wait}@keyframes mixologist-wait{0%,to{border-color:var(--line)}50%{border-color:color-mix(in srgb,var(--accent-2) 55%,var(--line))}}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes orbit-glow{0%,to{box-shadow:inset 0 1px 0 #ffffff14,0 18px 48px color-mix(in srgb,var(--bg) 55%,#3a2414)}50%{box-shadow:inset 0 1px 0 #ffffff1a,0 22px 56px color-mix(in srgb,var(--accent) 22%,#3a2414)}}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=light] body:after{opacity:.035;mix-blend-mode:multiply}html[data-theme=light] .primary,html[data-theme=light] .kiosk-lock{color:#fff}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero,.hero-orbit,.ai-loading{animation:none}.stat-card:hover,.feature-card:hover,.overview-tap:hover,.overview-brew:hover,.overview-low:hover{transform:none}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
