*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-1\/2{left:50%}.left-2{left:.5rem}.right-4{right:1rem}.top-1\/2{top:50%}.top-4{top:1rem}.z-50{z-index:50}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.size-11{width:2.75rem;height:2.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-9{width:2.25rem;height:2.25rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.max-h-96{max-height:24rem}.min-h-0{min-height:0}.min-h-11{min-height:2.75rem}.min-h-12{min-height:3rem}.min-h-9{min-height:2.25rem}.min-h-\[120px\]{min-height:120px}.w-24{width:6rem}.w-\[min\(calc\(100vw-32px\)\,520px\)\]{width:min(100vw - 32px,520px)}.w-\[min\(calc\(100vw-32px\)\,560px\)\]{width:min(100vw - 32px,560px)}.w-full{width:100%}.w-px{width:1px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.cursor-default{cursor:default}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-\[var\(--r-lg\)\]{border-radius:var(--r-lg)}.rounded-\[var\(--r-md\)\]{border-radius:var(--r-md)}.rounded-\[var\(--r-pill\)\]{border-radius:var(--r-pill)}.rounded-\[var\(--r-sm\)\]{border-radius:var(--r-sm)}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-2{border-width:2px}.border-\[var\(--danger\)\]{border-color:var(--danger)}.border-\[var\(--green\)\]{border-color:var(--green)}.border-\[var\(--line\)\]{border-color:var(--line)}.border-\[var\(--line-amber\)\]{border-color:var(--line-amber)}.border-\[var\(--line-green\)\]{border-color:var(--line-green)}.border-\[var\(--line-strong\)\]{border-color:var(--line-strong)}.border-transparent{border-color:#0000}.bg-\[var\(--amber-050\)\]{background-color:var(--amber-050)}.bg-\[var\(--bg-sunken\)\]{background-color:var(--bg-sunken)}.bg-\[var\(--danger\)\]{background-color:var(--danger)}.bg-\[var\(--danger-bg\)\]{background-color:var(--danger-bg)}.bg-\[var\(--green\)\]{background-color:var(--green)}.bg-\[var\(--green-050\)\]{background-color:var(--green-050)}.bg-\[var\(--ink\)\]{background-color:var(--ink)}.bg-\[var\(--line\)\]{background-color:var(--line)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-\[var\(--surface-2\)\]{background-color:var(--surface-2)}.bg-black\/45{background-color:#00000073}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-1{padding:.25rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pt-0{padding-top:0}.text-left{text-align:left}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-normal{letter-spacing:0}.text-\[var\(--amber-600\)\]{color:var(--amber-600)}.text-\[var\(--danger\)\]{color:var(--danger)}.text-\[var\(--green\)\]{color:var(--green)}.text-\[var\(--ink\)\]{color:var(--ink)}.text-\[var\(--ink-muted\)\]{color:var(--ink-muted)}.text-\[var\(--ink-soft\)\]{color:var(--ink-soft)}.text-\[var\(--on-green\)\]{color:var(--on-green)}.text-\[var\(--surface\)\]{color:var(--surface)}.text-current{color:currentColor}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline-offset-4{text-underline-offset:4px}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow-\[var\(--e-1\)\]{--tw-shadow-color:var(--e-1);--tw-shadow:var(--tw-shadow-colored)}.shadow-\[var\(--e-2\)\]{--tw-shadow-color:var(--e-2);--tw-shadow:var(--tw-shadow-colored)}.shadow-\[var\(--e-3\)\]{--tw-shadow-color:var(--e-3);--tw-shadow:var(--tw-shadow-colored)}.shadow-\[var\(--e-amber\)\]{--tw-shadow-color:var(--e-amber);--tw-shadow:var(--tw-shadow-colored)}.shadow-\[var\(--e-inset\)\]{--tw-shadow-color:var(--e-inset);--tw-shadow:var(--tw-shadow-colored)}.outline-none{outline-offset:2px;outline:2px solid #0000}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.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)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-\[background\,border-color\,color\,box-shadow\,transform\]{transition-property:background,border-color,color,box-shadow,transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0) scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0) scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.animate-in{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.fade-in-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.\[transition-timing-function\:var\(--ease\)\]{transition-timing-function:var(--ease)}@property --progress{syntax:"<percentage>";inherits:false;initial-value:0%}:root{--radius:.75rem;--background:39 43% 93%;--foreground:24 24% 11%;--card:42 100% 99%;--card-foreground:24 24% 11%;--popover:42 100% 99%;--popover-foreground:24 24% 11%;--primary:142 21% 26%;--primary-foreground:38 64% 95%;--secondary:32 72% 91%;--secondary-foreground:24 24% 11%;--muted:36 36% 89%;--muted-foreground:32 12% 38%;--accent:19 54% 45%;--accent-foreground:29 43% 11%;--destructive:6 59% 44%;--destructive-foreground:0 0% 100%;--border:35 15% 82%;--input:35 15% 82%;--ring:195 65% 33%;--bg:#f6f0e4;--bg-sunken:#efe7d8;--surface:#fffdf8;--surface-2:#faf3e8;--surface-tint:#f1ebdd;--green:#34503f;--green-700:#283f31;--green-050:#e8eee7;--amber:#b15c34;--amber-600:#9a4b2a;--amber-050:#f6e7da;--sub:#985234;--ink:#221c17;--ink-soft:#5a4f45;--ink-muted:#6e6356;--on-green:#fbf6ec;--on-amber:#2a1e10;--line:#28221a1a;--line-strong:#28221a29;--line-green:#34503f38;--line-amber:#b15c344d;--success:#3a6b50;--success-bg:#e8eee7;--danger:#b23b2e;--danger-bg:#fbedea;--warn:#a8691f;--info:#2c6e78;--gold:#9a4b2a;--gold-foil:linear-gradient(135deg, #c06a3f 0%, #a8522d 60%, #8f421f 100%);--gold-foil-soft:linear-gradient(135deg, #ecbb97, #e0a079 55%, #d68f63);--focus-ring:#1e6b8c;--focus-shadow:0 0 0 3px #1e6b8c66;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--s-20:80px;--bl:8px;--lh:24px;--cols:12;--gutter:24px;--maxw:1180px;--edge:clamp(16px, 4vw, 40px);--margin:max(var(--edge), calc((100% - var(--maxw)) / 2));--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-pill:999px;--e-0:none;--e-1:0 1px 2px #28221a0a;--e-2:0 1px 3px #28221a0d, 0 6px 16px #28221a0d;--e-3:0 4px 12px #28221a12, 0 14px 32px #28221a14;--e-amber:0 6px 18px #b15c3429;--e-inset:inset 0 1px 0 #ffffff80;--ease:cubic-bezier(.2, .7, .2, 1);--dur-1:.14s;--dur-2:.22s;--dur-3:.6s;--font-display:"Zen Kaku Gothic Antique", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;--font-body:"Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;--font-sans:var(--font-body);--t-display:clamp(40px, 7.2vw, 80px);--t-h1:clamp(32px, 5.2vw, 56px);--t-h2:clamp(24px, 3.6vw, 40px);--t-h3:clamp(20px, 2.6vw, 28px);--t-lead:clamp(18px, 2.2vw, 24px);--t-numeral:clamp(40px, 6vw, 48px);color:var(--ink);background:var(--bg)}.theme-dark{--background:30 13% 15%;--foreground:38 31% 93%;--card:30 14% 18%;--card-foreground:38 31% 93%;--popover:30 14% 18%;--popover-foreground:38 31% 93%;--primary:141 18% 52%;--primary-foreground:38 31% 93%;--secondary:29 14% 22%;--secondary-foreground:38 31% 93%;--muted:29 14% 22%;--muted-foreground:34 16% 64%;--accent:21 64% 68%;--accent-foreground:20 45% 11%;--destructive:5 62% 72%;--destructive-foreground:0 0% 100%;--border:38 31% 93% / .2;--input:38 31% 93% / .2;--ring:187 41% 69%;--bg:#2a2520;--bg-sunken:#221e1a;--surface:#332d27;--surface-2:#3a332c;--surface-tint:#423a32;--green:#6f9a7e;--green-700:#5c8369;--green-050:#6f9a7e29;--amber:#e0a079;--amber-600:#d18f64;--amber-050:#e0a07924;--sub:#e0a079;--ink:#f4eee4;--ink-soft:#ddd2c4;--ink-muted:#b3a594;--on-green:#f4eee4;--on-amber:#2a1810;--line:#f4eee41f;--line-strong:#f4eee433;--line-green:#6f9a7e6b;--line-amber:#e0a07966;--success:#7fc09a;--success-bg:#6f9a7e2e;--danger:#e6948a;--danger-bg:#b03b2e33;--warn:#e0b25a;--info:#8fc8d1;--gold:#ecc6a3;--gold-foil:linear-gradient(135deg, #f0d3b6, #e3ad85 60%, #d18f64);--gold-foil-soft:linear-gradient(135deg, #ecc6a3, #dca27f 60%, #cf8a60);--focus-ring:#8fc8d1;--focus-shadow:0 0 0 3px #8fc8d173;--e-1:0 1px 2px #0000004d;--e-2:0 3px 10px #0000005c;--e-3:0 8px 28px #0000006b;--e-amber:0 8px 26px #e0a07933;--e-inset:inset 0 1px 0 #f4eee40f;color:var(--ink)}*{box-sizing:border-box}body{min-width:320px;color:var(--ink);font-family:var(--font-body);font-feature-settings:"palt" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:var(--bg);margin:0;font-weight:400;line-height:1.72}p{font-weight:400}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{box-shadow:var(--focus-shadow);outline:none}.is-foil{background:var(--gold-foil);color:#0000;-webkit-text-fill-color:transparent;background-size:250% 100%;-webkit-background-clip:text;background-clip:text}@supports not ((-webkit-background-clip:text) or (background-clip:text)){.is-foil,.ticket-stack strong,.stamp-meter__ring strong,.countdown__num,.headstart__count{color:var(--gold);-webkit-text-fill-color:var(--gold);background:0 0}}.is-foil--shimmer{animation:none}.eyebrow--on-dark{color:var(--amber)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-frame{min-height:100vh}.app-frame--signage{background:#2a2520}.top-nav{z-index:20;justify-content:space-between;align-items:center;gap:var(--s-4);min-height:60px;padding:10px var(--margin);background:color-mix(in srgb, var(--surface) 86%, transparent);border-bottom:1px solid var(--line-strong);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;position:sticky;top:0}.top-nav>div{gap:var(--s-1);scrollbar-width:none;display:flex;overflow-x:auto}.top-nav>div::-webkit-scrollbar{display:none}.top-nav a{min-height:44px;color:var(--ink-soft);white-space:nowrap;border-radius:var(--r-sm);transition:color var(--dur-1) var(--ease), background var(--dur-1) var(--ease);align-items:center;padding:8px 12px;font-weight:600;display:inline-flex;position:relative}.top-nav a:hover{color:var(--green);background:var(--surface-tint)}.top-nav a.is-current{color:var(--green)}.top-nav a.is-current:after{content:"";background:var(--green);border-radius:var(--r-pill);height:2px;position:absolute;bottom:4px;left:12px;right:12px}.top-nav a small{color:var(--sub);margin-left:6px;font-size:10.5px;font-weight:700}.brand-mark{align-items:center;gap:var(--s-2);min-height:44px;font-family:var(--font-display);color:var(--ink);white-space:nowrap;font-size:18px;font-weight:700;display:inline-flex}.brand-mark span{width:36px;height:36px;color:var(--on-green);background:var(--green);box-shadow:var(--e-1);letter-spacing:.02em;border-radius:10px;place-items:center;font-size:14px;display:grid}.page-shell{width:min(var(--maxw), calc(100% - 2 * var(--edge)));padding:var(--s-6) 0 var(--s-20);margin:0 auto}.page-shell.narrow{width:min(760px, calc(100% - 2 * var(--edge)))}.section-block,.cta-band,.stamp-panel,.lottery-panel,.list-panel,.work-form,.state-panel,.headstart,.ranking-board,.flavor-finder,.prefes-checklist,.report-sheet,.momentum-strip{margin-top:var(--s-8)}.section-heading,.page-title{gap:var(--s-2);margin-bottom:var(--s-5);display:grid}.page-title h1{font-family:var(--font-display);font-size:var(--t-h1);letter-spacing:-.005em;margin:0;font-weight:700;line-height:1.15}.section-heading h2,.stamp-panel h2,.lottery-panel h2,.list-panel h2,.work-form h2,.headstart h2,.ranking-board h2,.flavor-finder h2,.prefes-checklist h2,.report-sheet h2{font-family:var(--font-display);font-size:var(--t-h2);margin:0;font-weight:600;line-height:1.2}.page-title--booth h2{font-family:var(--font-display);font-size:var(--t-h3);margin:0;font-weight:600;line-height:1.15}.page-title p:last-child,.lottery-panel p,.stamp-panel p{max-width:760px;color:var(--ink-soft);font-weight:400;line-height:1.72}.eyebrow{color:var(--sub);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11.5px;font-weight:700}.safety-copy{color:var(--ink-soft);margin:0;font-weight:500;line-height:1.7}.safety-footer{margin-top:var(--s-12);padding:var(--s-4);color:var(--ink-soft);background:var(--amber-050);border:1px solid var(--line-amber);border-radius:var(--r-md);font-weight:500;line-height:1.7}.hero-actions,.age-actions,.row-actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.btn{justify-content:center;align-items:center;gap:var(--s-2);min-height:44px;color:var(--ink);background:var(--surface);border-radius:var(--r-md);letter-spacing:.01em;box-shadow:var(--e-1);transition:transform var(--dur-1) var(--ease), background var(--dur-1) var(--ease), box-shadow var(--dur-1) var(--ease);border:1px solid #0000;padding:11px 18px;font-weight:700;display:inline-flex}.btn:active{transform:translateY(0)scale(.99)}.btn-primary{color:var(--on-green);background:var(--green)}.btn-primary:hover{background:var(--green-700);box-shadow:var(--e-2);transform:translateY(-1px)}.btn-ghost{color:var(--ink);background:var(--surface);border:1px solid var(--line-strong)}.btn-ghost:hover{background:var(--surface-tint)}.btn-icon-only{width:42px;min-width:42px;padding:0}.theme-dark .btn-primary{color:var(--on-amber);background:var(--gold-foil-soft)}.theme-dark .btn-ghost{color:var(--ink);border-color:var(--line-strong);background:0 0}.quick-action{min-height:44px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);white-space:nowrap;transition:background var(--dur-1) var(--ease);justify-content:center;align-items:center;padding:7px 12px;font-size:12.5px;font-weight:600;line-height:1.2;display:inline-flex}.quick-action:hover{background:var(--surface-tint)}.quick-action--icon{width:42px;min-width:42px;padding:0}.quick-action--share{color:var(--on-green);background:var(--green);border-color:#0000}.quick-action--share:hover{background:var(--green-700)}.hero-board{gap:var(--gutter);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface-2);box-shadow:var(--e-1);grid-template-columns:minmax(0,8fr) minmax(240px,4fr);align-items:center;padding:clamp(28px,6vw,56px);display:grid;overflow:clip}.hero-board__copy{gap:var(--s-4);min-width:0;display:grid}.booth-title{max-width:min(100%,920px);font-family:var(--font-display);letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-size:clamp(28px,5vw,48px);font-weight:700;line-height:1.2}.booth-title span{display:block}.booth-title span:not(:first-child){margin-top:var(--s-1);color:inherit;font-family:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit}.booth-title--page{font-size:var(--t-h1)!important}.hero-board__copy>p:not(.eyebrow):not(.safety-copy):not(.booth-context):not(.hero-lead):not(.hero-attribution){color:var(--amber);font-size:var(--t-lead);margin:0;font-weight:600}.booth-context{max-width:720px;color:var(--ink-soft);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-md);padding:12px 14px;font-weight:500;line-height:1.65;font-size:clamp(15px,2vw,18px)!important}.ticket-stack{aspect-ratio:3/4;background:radial-gradient(circle at 50% 18%, transparent 0 16px, var(--surface) 17px), var(--surface-tint);border:1px solid var(--line-amber);border-radius:var(--r-xl);width:min(100%,400px);box-shadow:var(--e-1);justify-self:center;place-items:center;gap:4px;padding:28px;display:grid;transform:rotate(1deg)}.ticket-stack strong{font-family:var(--font-display);background:var(--gold-foil);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(96px,18vw,176px);font-weight:700;line-height:.8}.ticket-stack span{color:var(--ink-soft);letter-spacing:.18em;text-transform:uppercase;font-size:clamp(13px,2.4vw,18px);font-weight:600}.bottle-grid{gap:var(--gutter);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));display:grid}.bottle-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--e-1);transition:transform var(--dur-2) var(--ease), box-shadow var(--dur-2) var(--ease), border-color var(--dur-2) var(--ease);grid-template-rows:auto auto;display:grid;overflow:hidden}.bottle-card:hover{border-color:var(--line-strong);box-shadow:var(--e-2);transform:translateY(-2px)}.bottle-card__visual{aspect-ratio:4/3;background:var(--surface-tint);width:100%;position:relative;overflow:hidden}.bottle-card__visual img,.detail-image img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform var(--dur-3) var(--ease)}.bottle-card__visual:hover img{transform:scale(1.04)}.bottle-fallback{width:100%;height:100%;min-height:180px;color:var(--sub);background:var(--surface-tint);place-items:center;display:grid}.bottle-fallback span,.detail-image .bottle-fallback{font-family:var(--font-display);font-size:42px;font-weight:700}.bottle-card__body{gap:var(--s-3);min-width:0;padding:var(--s-5);flex-direction:column;display:flex}.bottle-card__meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.bottle-card__meta span:not(.status-badge),.tag-row span,.stamp-chip,.empty-chip{min-height:26px;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill);align-items:center;padding:3px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.status-badge{border-radius:var(--r-pill);letter-spacing:.02em;border:1px solid #0000;align-items:center;min-height:26px;padding:5px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.status-badge--serving{color:var(--on-green);background:var(--green)}.status-badge--candidate{color:var(--on-amber);background:var(--amber-050);border-color:var(--line-amber)}.status-badge--hidden{color:var(--ink-muted);background:var(--surface-2);border-color:var(--line)}.bottle-card__title{font-family:var(--font-display);color:var(--ink);overflow-wrap:anywhere;transition:color var(--dur-1) var(--ease);font-size:clamp(18px,2.4vw,24px);font-weight:600;line-height:1.25}.bottle-card__title:hover{color:var(--green)}.bottle-card__brand,.bottle-card__reason,.bottle-card__presenter,.presenter-note,.booth-price{color:var(--ink-soft);margin:0;line-height:1.55}.bottle-card__brand{font-weight:500}.bottle-card__presenter{width:fit-content;max-width:100%;color:var(--green);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-sm);overflow-wrap:anywhere;padding:3px 8px;font-size:12px;font-weight:600}.bottle-card__reason{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:500;display:-webkit-box;overflow:hidden}.tag-row,.feature-note{flex-wrap:wrap;gap:6px;display:flex}.feature-note{background:var(--amber-050);border:1px solid var(--line-amber);border-radius:var(--r-md);gap:4px;padding:10px;display:grid}.feature-note strong{color:var(--sub);letter-spacing:.08em;text-transform:uppercase;font-size:11.5px;font-weight:700}.feature-note span{color:var(--ink);overflow-wrap:anywhere;font-size:13px;font-weight:500;line-height:1.55}.feature-note--detail{margin-top:var(--s-5);padding:var(--s-4)}.feature-note--detail span{font-size:16px}.presenter-note{border-left:3px solid var(--amber);padding-left:10px;font-size:13px;font-weight:500}.presenter-note--detail{margin-top:var(--s-5);font-size:16px}.detail-booth{margin:0 0 var(--s-4)}.reference-link{width:fit-content;max-width:100%;min-height:34px;color:var(--green);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-pill);overflow-wrap:anywhere;align-items:center;padding:6px 12px;font-size:12px;font-weight:600;line-height:1.25;display:inline-flex}.reference-link:after{content:"↗";margin-left:6px}.reference-link--detail{margin-top:var(--s-4);font-size:14px}.booth-price{width:fit-content;max-width:100%;color:var(--sub);background:var(--amber-050);border:1px solid var(--line-amber);border-radius:var(--r-sm);overflow-wrap:anywhere;padding:5px 10px;font-size:12.5px;font-weight:700}.booth-price--detail{margin-top:var(--s-4);font-size:15px}.internal-price{font-weight:700;color:var(--danger)!important}.bottle-card__actions{gap:var(--s-2);flex-wrap:wrap;align-items:center;margin-top:auto;display:flex}.rank-rivet{z-index:1;min-width:38px;min-height:38px;color:var(--on-amber);background:var(--gold-foil-soft);border-radius:var(--r-pill);box-shadow:var(--e-1);font-family:var(--font-display);border:none;place-items:center;padding:0 6px;font-weight:700;display:grid;position:absolute;top:8px;left:8px}.cta-band,.dual-cta,.status-strip,.passport-grid,.split-workspace,.ops-grid,.signage-columns{gap:var(--s-4);display:grid}.cta-band{color:var(--on-green);background:var(--green);border-radius:var(--r-lg);box-shadow:var(--e-amber);border:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:clamp(20px,4vw,28px)}.cta-band p,.cta-band .eyebrow{color:var(--on-green)}.cta-band .eyebrow{opacity:.82}.cta-band h2{font-family:var(--font-display);font-size:var(--t-h2);margin:0;font-weight:600;line-height:1.2}.cta-band .btn-primary{color:var(--green);background:var(--surface)}.cta-band .btn-primary:hover{background:var(--surface-tint)}.share-prompt{gap:var(--s-4);margin:var(--s-5) 0 var(--s-6);padding:var(--s-5);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-lg);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.share-prompt h2{font-family:var(--font-display);font-size:var(--t-h2);margin:0;font-weight:600;line-height:1.2}.share-prompt p:not(.eyebrow){margin:var(--s-2) 0 0;color:var(--ink-soft);font-weight:500;line-height:1.6}.dual-cta{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.dual-cta a,.status-strip a{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2);transition:transform var(--dur-2) var(--ease), box-shadow var(--dur-2) var(--ease);display:grid}.dual-cta a:hover,.status-strip a:hover{box-shadow:var(--e-3);transform:translateY(-2px)}.dual-cta a{gap:var(--s-2);min-height:128px;padding:var(--s-5)}.dual-cta span{color:var(--sub);letter-spacing:.08em;text-transform:uppercase;font-size:11.5px;font-weight:700}.dual-cta strong{font-family:var(--font-display);font-size:var(--t-lead);font-weight:600;line-height:1.25}.status-strip{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.status-strip a{gap:var(--s-2);min-height:110px;padding:var(--s-4)}.status-strip a strong{font-family:var(--font-display);font-weight:600}.status-strip a span{color:var(--ink-muted);font-size:12.5px;font-weight:500}.notice,.form-error{border-radius:var(--r-md);padding:12px 14px;font-weight:600}.notice{color:var(--success);background:var(--success-bg);border:1px solid var(--line-green)}.form-error{color:var(--danger);background:var(--danger-bg);border:1px solid color-mix(in srgb, var(--danger) 40%, transparent)}.turnstile-widget{width:min(100%,300px);min-height:1px}.detail-layout{gap:var(--s-6);grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);align-items:stretch;display:grid}.detail-layout h1{font-family:var(--font-display);font-size:var(--t-h1);overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.15}.detail-image{background:var(--surface-tint);border:1px solid var(--line);border-radius:var(--r-lg);min-height:520px;overflow:hidden}.lead{margin:var(--s-2) 0;color:var(--green);font-size:clamp(16px,2.2vw,20px);font-weight:600}.review-panel{gap:var(--s-3);margin-top:var(--s-1);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2);grid-column:1/-1;display:grid}.rating-control{gap:var(--s-2);grid-template-columns:repeat(5,minmax(0,1fr));width:min(100%,420px);display:grid}.rating-control button{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);min-height:42px;transition:background var(--dur-1) var(--ease);font-weight:600}.rating-control button:after{content:"★";color:var(--gold);margin-left:4px}.rating-control button.is-active{color:var(--on-green);background:var(--green);border-color:#0000}.review-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));display:grid}.review-flags{gap:var(--s-2);flex-wrap:wrap;display:flex}.review-flags label{align-items:center;gap:var(--s-2);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-pill);min-height:44px;padding:7px 12px;font-size:13px;font-weight:500;display:inline-flex}.review-flags input{width:18px;min-height:18px}.review-preview{gap:var(--s-2);padding:var(--s-3);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);display:grid}.review-preview strong{color:var(--sub);letter-spacing:.08em;text-transform:uppercase;font-size:11.5px;font-weight:700}.review-preview p{white-space:pre-wrap;margin:0;font-weight:500;line-height:1.6}.review-actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.share-panel{gap:var(--s-3);margin-top:var(--s-5);padding:var(--s-4);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-md);display:grid}.share-panel--compact{margin-top:var(--s-1);padding:var(--s-3);background:var(--surface-2);border-color:var(--line)}.share-panel__actions{gap:var(--s-2);grid-template-columns:repeat(4,minmax(42px,1fr));display:grid}.share-panel__actions button{min-height:42px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);justify-content:center;align-items:center;padding:8px 10px;font-size:12.5px;font-weight:600;line-height:1.25;display:inline-flex}.platform-glyph{place-items:center;width:18px;height:18px;font-size:16px;font-weight:700;line-height:1;display:inline-grid}.share-panel__actions button:first-child{color:var(--surface);background:var(--ink);border-color:#0000}.share-panel__actions button:nth-child(2){color:var(--on-green);background:var(--green);border-color:#0000}.share-panel__url{color:var(--green);overflow-wrap:anywhere;font-size:12px;font-weight:500;line-height:1.4}.share-panel__message{color:var(--success);margin:0;font-size:12.5px;font-weight:600}.photo-note{gap:var(--s-3);display:grid}.photo-note figure{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);width:min(100%,360px);margin:0;padding:8px}.photo-note img{aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;border-radius:var(--r-sm);width:100%;display:block}.photo-note figcaption{color:var(--ink-muted);overflow-wrap:anywhere;margin-top:6px;font-size:12px;font-weight:500}.photo-shelf{gap:var(--s-3);margin-top:var(--s-8);padding:var(--s-5);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-lg);display:grid}.photo-shelf__grid{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));display:grid}.photo-shelf__item{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--e-1);transition:transform var(--dur-2) var(--ease), box-shadow var(--dur-2) var(--ease);gap:6px;padding:10px;display:grid}.photo-shelf__item:hover{box-shadow:var(--e-2);transform:translateY(-2px)}.photo-shelf__item img{aspect-ratio:1;-o-object-fit:cover;object-fit:cover;border-radius:var(--r-sm);width:100%}.photo-shelf__item strong{font-family:var(--font-display);overflow-wrap:anywhere;font-weight:600}.photo-shelf__item span{color:var(--ink-muted);overflow-wrap:anywhere;font-size:12px;font-weight:500}.sticky-action-bar{gap:var(--s-2);margin-top:var(--s-6);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--e-2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:10px;padding-bottom:max(10px, env(safe-area-inset-bottom));grid-template-columns:repeat(2,1fr);display:grid;position:sticky;bottom:12px}.vote-tray{z-index:10;justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4);padding:var(--s-3) var(--s-4);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--e-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;position:sticky;top:72px}.vote-tray>div:first-child{gap:2px;min-width:0;display:grid}.vote-tray strong{font-family:var(--font-display);color:var(--gold);font-size:26px;font-weight:700}.vote-tray span{color:var(--green);font-size:12.5px;font-weight:600}.vote-tray__actions{justify-content:flex-end;gap:var(--s-2);flex-wrap:wrap;display:flex}.vote-tray__actions .turnstile-widget{flex-basis:100%;justify-content:flex-end;margin-left:auto;display:flex}.stamp-panel{padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2)}.stamp-meter{gap:var(--s-5);grid-template-columns:140px minmax(0,1fr);align-items:center;display:grid}.stamp-meter__ring{--progress:0%;aspect-ratio:1;background:radial-gradient(circle, var(--surface) 0 56%, transparent 57%), conic-gradient(var(--gold) var(--progress), var(--line) 0);border:1px solid var(--line-strong);border-radius:50%;place-items:center;display:grid}.stamp-meter__ring strong{font-family:var(--font-display);background:var(--gold-foil);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:42px;font-weight:700}.stamp-meter__ring span{color:var(--ink-soft);margin-top:44px;font-weight:600}.stamp-grid,.stamp-actions{gap:var(--s-2);margin-top:var(--s-4);flex-wrap:wrap;display:flex}.stamp-actions button{min-height:44px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);transition:background var(--dur-1) var(--ease);padding:8px 14px;font-weight:600}.stamp-actions button:hover{background:var(--surface-tint)}.lottery-panel{padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2)}.lottery-win{gap:var(--s-3);margin-top:var(--s-4);padding:var(--s-6);background:radial-gradient(120% 90% at 50% 0%, #b15c3429, transparent 60%), var(--bg);border:1px solid var(--line-amber);border-radius:var(--r-lg);box-shadow:var(--e-3);text-align:center;display:grid}.lottery-win__prize{font-family:var(--font-display);color:var(--gold);margin:0;font-size:clamp(22px,5vw,30px);font-weight:700}.claim-code{width:fit-content;color:var(--gold);background:var(--bg-sunken);border:1px solid var(--line-amber);border-radius:var(--r-md);font-family:var(--font-display);letter-spacing:.12em;align-self:center;padding:14px 22px;font-size:clamp(28px,7vw,40px);font-weight:700;display:inline-flex}.passport-grid,.ops-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.list-panel{align-content:start;gap:var(--s-3);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2);display:grid}.list-panel p{gap:var(--s-1);border-bottom:1px solid var(--line);margin:0;padding-bottom:10px;display:grid}.list-panel p:last-child{border-bottom:none;padding-bottom:0}.list-panel strong{font-weight:600}.list-panel span,.muted{color:var(--ink-muted);font-weight:500}.form-grid,.claim-form,.work-form{gap:var(--s-3);display:grid}.form-grid{margin:var(--s-4) 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.work-form{padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2)}label{color:var(--ink);gap:6px;font-weight:600;display:grid}input,select,textarea{width:100%;min-height:44px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);transition:border-color var(--dur-1) var(--ease), box-shadow var(--dur-1) var(--ease);padding:11px 13px}input::-moz-placeholder{color:var(--ink-muted)}textarea::-moz-placeholder{color:var(--ink-muted)}input::placeholder,textarea::placeholder{color:var(--ink-muted)}input:focus,select:focus,textarea:focus{border-color:var(--focus-ring);box-shadow:var(--focus-shadow);outline:none}textarea{resize:vertical;min-height:120px;line-height:1.6}.check-row{grid-template-columns:22px minmax(0,1fr);align-items:start;font-weight:500}.check-row input{width:22px;min-height:22px;accent-color:var(--green)}.age-gate{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#14100ed1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.age-panel{gap:var(--s-4);background:var(--surface);border:1px solid var(--line-amber);border-radius:var(--r-xl);width:min(560px,100%);box-shadow:var(--e-3);padding:clamp(22px,6vw,40px);display:grid}.age-panel h1{padding-bottom:var(--s-3);border-bottom:1px solid var(--line-amber);font-family:var(--font-display);font-size:var(--t-h1);margin:0;font-weight:700;line-height:1.15}.app-frame--signage .signage-view,.signage-view{gap:var(--s-8);min-height:100vh;color:var(--ink);background:radial-gradient(120% 70% at 50% -10%, #b15c3424, transparent 55%), var(--bg-sunken);grid-template-rows:auto 1fr auto;padding:clamp(28px,5vw,72px);display:grid}.signage-view header h1{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:clamp(52px,9vw,132px);font-weight:800;line-height:.92}.signage-view header p,.signage-safety{color:var(--amber);margin:0;font-weight:600}.signage-safety{font-size:clamp(13px,1.6vw,18px);line-height:1.6}.signage-columns{grid-template-columns:1fr 1fr}.signage-columns>div{align-content:start;gap:var(--s-3);border:1px solid var(--line-amber);border-radius:var(--r-lg);background:#ffffff05;padding:clamp(18px,3vw,28px);display:grid}.signage-columns h2{font-family:var(--font-display);margin:0;font-size:clamp(32px,5vw,70px);font-weight:700}.signage-columns article{padding:var(--s-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);gap:6px;display:grid;position:relative}.signage-columns article strong{font-family:var(--font-display);font-size:clamp(22px,3vw,42px);font-weight:700}.signage-columns article span{color:var(--ink-soft)}.split-workspace{grid-template-columns:minmax(280px,420px) minmax(0,1fr)}.work-list{align-content:start;gap:var(--s-3);display:grid}.admin-row{gap:var(--s-3);padding:var(--s-4);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.admin-row .row-actions{grid-template-columns:repeat(auto-fit,minmax(88px,1fr));width:100%;display:grid}.admin-row .row-actions button{width:100%}.admin-row>div:first-child{gap:var(--s-1);min-width:0;display:grid}.admin-row strong{font-weight:600}.admin-row span{color:var(--ink-soft);font-weight:500}.row-actions button{border-radius:var(--r-sm);min-height:44px;padding:6px 12px;font-weight:600}.dev-switcher{align-items:center;gap:var(--s-2);width:fit-content;margin:var(--s-3) 0;padding:var(--s-2) var(--s-3);color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);font-size:13px;font-weight:600;display:flex}.dev-switcher select{width:auto;min-height:36px}.state-panel{place-items:center;gap:var(--s-3);min-height:180px;padding:var(--s-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);display:grid}.state-panel strong{font-family:var(--font-display);font-weight:600}.loading-dial{border:4px solid var(--line);border-top-color:var(--green);border-radius:50%;width:40px;height:40px;animation:.85s linear infinite spin}.theme-dark .loading-dial{border-top-color:var(--gold)}.countdown-banner{gap:var(--s-3);justify-items:start;display:grid}.countdown-strip{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.countdown{gap:var(--s-2);flex-wrap:wrap;align-items:stretch;display:flex}.countdown__cell{text-align:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);min-width:64px;padding:10px 12px}.theme-dark .countdown__cell{background:#ffffff0a}.countdown__num{font-family:var(--font-display);font-size:var(--t-numeral);background:var(--gold-foil);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700;line-height:1;display:block}.countdown__label{color:var(--ink-muted);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:600;display:block}.countdown__note{color:var(--ink-soft);margin:0;font-weight:600}.countdown-badge{width:fit-content;color:var(--on-amber);background:var(--gold-foil-soft);border-radius:var(--r-pill);align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.countdown-badge--open{color:var(--on-green);background:var(--green)}.countdown-badge__dot{width:8px;height:8px;animation:pulse-dot 1.6s var(--ease) infinite;background:currentColor;border-radius:50%}.campaign-status{gap:var(--s-2);justify-items:start;display:grid}.campaign-status__line{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.countdown__note--demoted{color:var(--ink-muted);font-size:14px;font-weight:600}.campaign-status__sub{max-width:54ch;color:var(--ink-soft);margin:0;font-weight:500;line-height:1.65}.campaign-status__sub strong{color:var(--amber-600);font-weight:700}.campaign-status__cal{min-height:38px;padding:8px 14px;font-size:14px}.flow-note{margin:var(--s-4) 0 0;color:var(--ink-muted);font-size:13.5px;line-height:1.7}.lottery-terms{margin:var(--s-3) 0 0;padding:var(--s-4);gap:var(--s-2);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-soft);font-size:14px;line-height:1.65;list-style:none;display:grid}.lottery-terms li{padding-left:18px;position:relative}.lottery-terms li:before{content:"";background:var(--amber);border-radius:50%;width:6px;height:6px;position:absolute;top:9px;left:2px}.inline-terms{margin-top:var(--s-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:clip}.inline-terms>summary{cursor:pointer;color:var(--ink-soft);padding:12px 14px;font-size:14px;font-weight:600;list-style:none}.inline-terms>summary::-webkit-details-marker{display:none}.inline-terms>summary:after{content:"＋";float:right;color:var(--ink-muted)}.inline-terms[open]>summary:after{content:"－"}.inline-terms__body{gap:var(--s-3);color:var(--ink-soft);padding:0 14px 14px;font-size:13.5px;line-height:1.7;display:grid}.inline-terms__body p{margin:0}.check-row--required{color:var(--ink);font-weight:600}.safety-footer__meta{gap:var(--s-1);margin-bottom:var(--s-3);padding-bottom:var(--s-3);border-bottom:1px solid var(--line-amber);font-size:14px;display:grid}.safety-footer__meta p{margin:0}.safety-footer__meta strong{color:var(--ink)}.safety-footer__disclaimer{color:var(--ink-muted);font-size:13px;line-height:1.65}.safety-footer__safety{margin:0}.headstart{gap:var(--s-4);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-amber);border-radius:var(--r-lg);box-shadow:var(--e-2);display:grid}.headstart__head{justify-content:space-between;align-items:flex-end;gap:var(--s-3);flex-wrap:wrap;display:flex}.headstart__count{font-family:var(--font-display);font-size:var(--t-numeral);background:var(--gold-foil);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700;line-height:1}.headstart__bar{background:var(--line);border-radius:var(--r-pill);height:12px;overflow:hidden}.headstart__fill{background:var(--gold-foil);border-radius:inherit;width:0;height:100%;transition:width var(--dur-3) var(--ease)}.headstart__steps{gap:var(--s-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));display:grid}.headstart__step{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--ink);text-align:left;font:inherit;gap:2px;padding:10px 12px;display:grid}.headstart__step .step-label{font-size:13.5px;font-weight:700}.headstart__step .step-hint{color:var(--ink-muted);font-size:11.5px;font-weight:500}.headstart__step.is-done{color:var(--on-green);background:var(--green);border-color:#0000}.headstart__step.is-done .step-hint{color:#fbf6eccc}.headstart__step.is-done .step-label:before{content:"✓ ";font-weight:700}.headstart__step.is-action{cursor:pointer;transition:background var(--dur-1) var(--ease), transform var(--dur-1) var(--ease)}.headstart__step.is-action:hover{background:var(--surface-tint);transform:translateY(-1px)}.headstart__note{color:var(--ink-muted);margin:0;font-size:12px;font-weight:500}.ranking-board,.momentum-strip{gap:var(--s-3);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2);display:grid}.momentum-strip .ranking-board{box-shadow:none;background:0 0;border:none;padding:0}.ranking-row{align-items:center;gap:var(--s-3);border-bottom:1px solid var(--line);grid-template-columns:36px 1fr auto;padding:10px 0;display:grid}.ranking-row:last-child{border-bottom:none}.ranking-row__rank{border-radius:var(--r-pill);background:var(--surface-2);width:32px;height:32px;color:var(--ink-soft);font-family:var(--font-display);place-items:center;font-weight:700;display:grid}.ranking-row__rank.is-top{color:var(--on-amber);background:var(--gold-foil-soft)}.ranking-row__name{gap:2px;min-width:0;display:grid}.ranking-row__name strong{overflow-wrap:anywhere;font-weight:600}.ranking-row__name span{color:var(--ink-muted);font-size:12px;font-weight:500}.ranking-row__score{font-family:var(--font-display);color:var(--gold);white-space:nowrap;font-weight:700}.momentum-hero{gap:var(--s-1);padding:var(--s-4);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-md);display:grid}.momentum-hero strong{font-family:var(--font-display);font-size:clamp(18px,2.6vw,24px);font-weight:600}.momentum-hero .momentum-score{color:var(--gold);font-family:var(--font-display);font-weight:700}.flavor-finder{gap:var(--s-4);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2);display:grid}.flavor-finder__progress{gap:8px;display:flex}.flavor-finder__progress span{background:var(--line);border-radius:50%;width:10px;height:10px}.flavor-finder__progress span.is-active{background:var(--gold)}.flavor-finder__q{font-family:var(--font-display);font-size:var(--t-h3);margin:0;font-weight:600;line-height:1.15}.flavor-finder__options{gap:var(--s-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));display:grid}.flavor-finder__option{align-items:center;gap:var(--s-2);text-align:left;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);min-height:56px;transition:background var(--dur-1) var(--ease), transform var(--dur-1) var(--ease);padding:12px 14px;font-weight:600;display:flex}.flavor-finder__option:hover{background:var(--surface-tint);transform:translateY(-1px)}.flavor-finder__option.is-selected{color:var(--on-green);background:var(--green);border-color:#0000}.flavor-finder__option .glyph{font-size:22px;line-height:1}.flavor-finder__result{gap:var(--s-3);padding:var(--s-5);background:radial-gradient(120% 90% at 80% 0%, #c8862b29, transparent 55%), var(--bg);border:1px solid var(--line-amber);border-radius:var(--r-lg);display:grid}.flavor-finder__match{gap:var(--s-1);display:grid}.flavor-finder__match .match-badge{width:fit-content;color:var(--on-amber);background:var(--gold-foil-soft);border-radius:var(--r-pill);padding:3px 10px;font-size:11.5px;font-weight:700}.flavor-finder__match strong{font-family:var(--font-display);font-size:clamp(22px,4vw,32px);font-weight:700}.flavor-finder__alts{gap:var(--s-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));display:grid}.flavor-finder__alt{padding:var(--s-3);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);gap:2px;display:grid}.flavor-finder__alt strong{overflow-wrap:anywhere;font-weight:600}.flavor-finder__alt span{color:var(--ink-muted);font-size:12px}.flavor-finder__actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.my-lineup{gap:var(--s-3);padding-bottom:var(--s-2);scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.my-lineup::-webkit-scrollbar{display:none}.my-lineup__card{scroll-snap-align:start;padding:var(--s-3);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--e-1);flex:0 0 160px;gap:4px;display:grid;position:relative}.my-lineup__card strong{font-family:var(--font-display);overflow-wrap:anywhere;font-weight:600}.my-lineup__card span{color:var(--ink-muted);font-size:12px}.my-lineup__empty{padding:var(--s-4);color:var(--ink-muted);border:1px dashed var(--line-strong);border-radius:var(--r-md);text-align:center;flex:1 0 100%;font-weight:500}.prefes-checklist{gap:var(--s-3);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-2);display:grid}.prefes-checklist__item{gap:var(--s-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);transition:background var(--dur-1) var(--ease);grid-template-columns:28px 1fr auto;align-items:center;padding:12px;display:grid}.prefes-checklist__item:hover{background:var(--surface-tint)}.prefes-checklist__check{border:2px solid var(--line-strong);color:#0000;border-radius:50%;place-items:center;width:24px;height:24px;font-size:14px;font-weight:700;display:grid}.prefes-checklist__item.is-done .prefes-checklist__check{color:var(--on-green);background:var(--green);border-color:#0000}.prefes-checklist__body{gap:2px;min-width:0;display:grid}.prefes-checklist__body strong{font-weight:600}.prefes-checklist__body span{color:var(--ink-muted);font-size:12px;font-weight:500}.prefes-checklist__points{color:var(--on-amber);background:var(--gold-foil-soft);border-radius:var(--r-pill);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:700}.prefes-checklist__item.is-done .prefes-checklist__points{color:var(--ink-muted);background:var(--surface-2)}.report-sheet{gap:var(--s-3);padding:var(--s-5);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-lg);display:grid}.report-sheet p{color:var(--ink-soft);margin:0;font-weight:500;line-height:1.65}@keyframes spin{to{transform:rotate(360deg)}}@keyframes foil-shimmer{0%{background-position:-150% 0}to{background-position:250% 0}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}@keyframes pop-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.lottery-win{animation:pop-in var(--dur-3) var(--ease)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.is-foil--shimmer{animation:none}}@media (width<=760px){.top-nav{gap:var(--s-3)}.top-nav>div{flex:1;min-width:0}.hero-board,.detail-layout,.split-workspace,.signage-columns,.cta-band,.share-prompt{grid-template-columns:1fr}.ticket-stack{width:min(100% - 16px,320px);box-shadow:var(--e-2);transform:rotate(1deg)}.bottle-card__title{font-size:19px}.share-panel--compact .share-panel__actions{grid-template-columns:repeat(2,minmax(0,1fr))}.vote-tray{flex-direction:column;align-items:stretch}.vote-tray__actions{justify-content:stretch}.vote-tray__actions .btn{flex:160px}.detail-image{min-height:340px}.stamp-meter{text-align:center;grid-template-columns:1fr;justify-items:center}.stamp-meter__ring{width:140px}.headstart__steps{grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-action-bar{grid-template-columns:1fr 1fr}.admin-row{grid-template-columns:1fr}}@media (width<=480px){.bottle-card__body{padding:var(--s-3)}.countdown__cell{min-width:54px;padding:8px 10px}.headstart__steps{grid-template-columns:1fr}}.grid-overlay{z-index:90;pointer-events:none;opacity:0;transition:opacity var(--dur-2) var(--ease);position:fixed;inset:0}body.grid-on .grid-overlay{opacity:1}.grid-overlay__wrap{width:min(var(--maxw), calc(100% - 2 * var(--edge)));background-image:repeating-linear-gradient(to bottom, color-mix(in srgb, var(--green) 26%, transparent) 0 1px, transparent 1px var(--lh)), repeating-linear-gradient(to bottom, color-mix(in srgb, var(--green) 9%, transparent) 0 1px, transparent 1px var(--bl));height:100%;box-shadow:inset 1px 0 0 color-mix(in srgb, var(--danger) 55%, transparent), inset -1px 0 0 color-mix(in srgb, var(--danger) 55%, transparent);margin-inline:auto;position:relative}.grid-overlay__cols{grid-template-columns:repeat(var(--cols), 1fr);-moz-column-gap:var(--gutter);column-gap:var(--gutter);display:grid;position:absolute;inset:0}.grid-overlay__cols span{color:color-mix(in srgb, var(--sub) 92%, var(--ink));background:color-mix(in srgb, var(--amber) 11%, transparent);font-family:var(--font-sans);letter-spacing:.04em;text-align:center;padding-top:6px;font-size:10px;font-weight:700;display:block}.grid-toggle{right:16px;bottom:max(16px, env(safe-area-inset-bottom));z-index:91;min-height:36px;color:var(--on-green);background:var(--green);border:1px solid var(--green-700);border-radius:var(--r-pill);box-shadow:var(--e-2);font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;opacity:.62;transition:opacity var(--dur-1) var(--ease), transform var(--dur-1) var(--ease);align-items:center;gap:6px;padding:8px 14px;font-size:11.5px;font-weight:700;display:inline-flex;position:fixed}.grid-toggle:hover{opacity:1}body.grid-on .grid-toggle{color:var(--on-amber);background:var(--gold-foil-soft);border-color:var(--line-amber);opacity:1}@media (prefers-reduced-motion:reduce){.grid-overlay{transition:none}}.share-panel__note{color:var(--ink-soft);gap:4px;font-size:12px;font-weight:600;display:grid}.share-panel__note input{min-height:40px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:8px 10px;font-size:13px;font-weight:500}.bottle-card__post-msg{margin:var(--s-2) 0 0;color:var(--success);font-size:12.5px;font-weight:700}.post-stamp-card__counter{align-items:center;gap:var(--s-2);margin-top:var(--s-4);color:var(--sub);background:var(--amber-050);border:1px solid var(--line-amber);border-radius:var(--r-pill);padding:8px 14px;font-size:13.5px;font-weight:600;display:inline-flex}.post-stamp-card__counter strong{font-family:var(--font-display);color:var(--gold);font-size:18px;font-weight:700}.post-stamp-card__board{margin-top:var(--s-4)}.post-stamp-card__note{margin:var(--s-4) 0 0;color:var(--ink-muted);font-size:12.5px;font-weight:500;line-height:1.6}.hero-h1{max-width:min(100%,920px);font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);text-wrap:pretty;overflow-wrap:anywhere;margin:0;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.3}.hero-lead{max-width:560px;color:var(--ink-soft);margin:0;font-size:clamp(15px,1.9vw,17px);font-weight:500;line-height:1.75}.hero-attribution{margin:var(--s-1) 0 0;padding-top:var(--s-3);border-top:1px solid var(--line);color:var(--ink-muted);overflow-wrap:anywhere;font-size:12.5px;font-weight:500;line-height:1.6}.reward-medallion .reward-medallion__label{color:var(--sub);letter-spacing:.04em;text-transform:none;align-items:center;gap:6px;font-size:12.5px;font-weight:700;display:inline-flex}.reward-medallion .reward-medallion__unit{color:var(--ink-soft);letter-spacing:.02em;text-transform:none;font-size:clamp(13px,2.2vw,15px);font-weight:600}.flow-steps{gap:var(--gutter);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.flow-step{gap:var(--s-2);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-1);align-content:start;display:grid}.flow-step__no{color:var(--sub);letter-spacing:.14em;text-transform:uppercase;font-size:11.5px;font-weight:700}.flow-step__label{font-family:var(--font-display);font-size:var(--t-h3);color:var(--ink);font-weight:600;line-height:1.3}.flow-step__desc{color:var(--ink-soft);font-size:14px;font-weight:500;line-height:1.7}.flow-step--goal{background:var(--amber-050);border-color:var(--line-amber)}.internal-link{color:var(--green-700);background:var(--green-050);border-color:var(--line-green)}.contributor-shell{padding-bottom:max(96px, calc(72px + env(safe-area-inset-bottom)))}.contributor-hero{gap:var(--s-4)}.contributor-hero__actions,.editor-header{gap:var(--s-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.contributor-role,.save-indicator{min-height:36px;color:var(--ink-soft);background:var(--surface-tint);border:1px solid var(--line);border-radius:var(--r-pill);align-items:center;padding:7px 12px;font-size:13px;font-weight:700;display:inline-flex}.revision-strip,.revision-card,.missing-checklist,.ready-note{gap:var(--s-3);padding:var(--s-4);background:var(--amber-050);border:1px solid var(--line-amber);border-radius:var(--r-md);align-items:flex-start;display:flex}.revision-strip strong,.revision-card strong,.missing-checklist strong{font-family:var(--font-display);margin-bottom:4px;display:block}.revision-strip span,.revision-card p,.missing-checklist li,.missing-note{color:var(--ink-soft);font-size:14px;line-height:1.6}.contributor-metrics{gap:var(--s-3);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.contributor-metrics div{min-height:76px;padding:var(--s-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);align-content:center;gap:2px;display:grid}.contributor-metrics strong{font-family:var(--font-display);font-size:28px;line-height:1}.contributor-metrics span{color:var(--ink-soft);font-size:12px;font-weight:700}.contributor-list{gap:var(--s-3);display:grid}.contributor-card{gap:var(--s-4);padding:var(--s-3);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--e-1);grid-template-columns:112px minmax(0,1fr) auto;align-items:stretch;display:grid}.contributor-card--needs_revision{border-color:var(--line-amber);background:color-mix(in srgb, var(--amber-050) 42%, var(--surface))}.contributor-card__image{aspect-ratio:4/5;background:var(--surface-tint);border:1px solid var(--line);border-radius:var(--r-sm);place-items:center;display:grid;overflow:hidden}.contributor-card__image img,.photo-preview img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.contributor-card__image span,.photo-preview span{color:var(--green);font-family:var(--font-display);font-size:24px;font-weight:800}.contributor-card__body{align-content:start;gap:6px;min-width:0;display:grid}.contributor-card__body h2{font-family:var(--font-display);margin:0;font-size:clamp(18px,2.4vw,24px);line-height:1.25}.contributor-card__body p{color:var(--ink-soft);margin:0}.contributor-card__topline,.contributor-card__actions{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.contributor-card__topline{justify-content:space-between}.contributor-card__topline time{color:var(--ink-muted);font-size:12px;font-weight:700}.workflow-pill{width:fit-content;min-height:28px;color:var(--green-700);background:var(--green-050);border:1px solid var(--line-green);border-radius:var(--r-pill);align-items:center;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.revision-note{padding:var(--s-3);background:var(--surface);border:1px solid var(--line-amber);border-radius:var(--r-sm);gap:2px;display:grid}.contributor-card__actions{place-content:center flex-end}.contributor-fab{right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));z-index:20;width:58px;height:58px;color:var(--on-green);background:var(--green);box-shadow:var(--e-3);border-radius:50%;place-items:center;display:grid;position:fixed}.editor-header{margin-bottom:var(--s-2)}.editor-header>div:nth-child(2){flex:1;min-width:min(100%,360px)}.editor-header h1{font-family:var(--font-display);overflow-wrap:anywhere;margin:0;font-size:clamp(28px,4vw,48px);line-height:1.15}.stepper{gap:var(--s-2);margin:var(--s-4) 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stepper button{min-height:76px;padding:var(--s-3);text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);grid-template-rows:auto auto;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:2px 8px;display:grid}.stepper button span{width:28px;height:28px;color:var(--on-green);background:var(--green);border-radius:50%;grid-row:1/3;place-items:center;font-size:12px;font-weight:800;display:grid}.stepper button strong{font-family:var(--font-display);line-height:1.2}.stepper button small{color:var(--ink-muted);font-size:11px;line-height:1.25}.stepper button.is-current{background:var(--green-050);border-color:var(--line-green)}.bottle-wizard,.wizard-panel{gap:var(--s-4);display:grid}.wizard-panel{padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--e-1)}.section-kicker{color:var(--sub);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}.wizard-panel h2{font-family:var(--font-display);margin:0;font-size:clamp(22px,3vw,32px)}.form-grid{gap:var(--s-4);display:grid}.field{align-content:start}.field--wide{grid-column:1/-1}.optional-details{padding:var(--s-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md)}.optional-details summary{cursor:pointer;color:var(--ink);font-size:13px;font-weight:800}.optional-details .form-grid{margin-top:var(--s-4)}.field>span:first-child,.tag-editor>label>span,.slider-field>span,.slider-field__top span{color:var(--ink);font-size:13px;font-weight:800}.field-hint,.field-error{font-size:12px;line-height:1.5}.field-hint{color:var(--ink-muted)}.field-error{color:var(--danger);font-weight:700}.tag-editor{gap:var(--s-3);display:grid}.tag-list,.preset-tags,.tag-input-row{gap:var(--s-2);flex-wrap:wrap;display:flex}.tag-list button,.preset-tags button,.slider-field__top button{background:var(--surface-tint);border:1px solid var(--line);border-radius:var(--r-pill);min-height:36px;color:var(--ink);padding:7px 11px;font-weight:700}.tag-list button span{color:var(--danger);margin-left:8px}.tag-input-row input{flex:220px}.slider-grid{gap:var(--s-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.slider-field{gap:var(--s-2);min-height:94px;padding:var(--s-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);display:grid}.slider-field strong{font-family:var(--font-display);font-size:26px}.slider-field__top{justify-content:space-between;align-items:center;gap:var(--s-2);display:flex}.photo-workspace,.preview-grid{gap:var(--s-5);grid-template-columns:minmax(220px,.75fr) minmax(0,1fr);align-items:start;display:grid}.photo-preview{aspect-ratio:4/5;background:var(--surface-tint);border:1px solid var(--line-strong);border-radius:var(--r-md);place-items:center;display:grid;overflow:hidden}.image-picker{align-items:center;gap:var(--s-2);width:fit-content;min-height:48px;margin:var(--s-3) 0;color:var(--on-green);background:var(--green);border-radius:var(--r-md);cursor:pointer;padding:12px 16px;display:inline-flex}.image-picker input{opacity:0;block-size:1px;inline-size:1px;position:absolute}.image-picker.is-disabled{opacity:.6;cursor:not-allowed}.missing-checklist{display:block}.missing-checklist ul{margin:var(--s-2) 0 0;padding-left:var(--s-5)}.ready-note{color:var(--success);background:var(--success-bg);border-color:var(--line-green);align-items:center;font-weight:800}.preview-grid .detail-layout{grid-template-columns:1fr}.preview-grid .bottle-card,.preview-grid .detail-layout{height:fit-content}.wizard-footer{bottom:max(10px, env(safe-area-inset-bottom));z-index:10;gap:var(--s-3);padding:var(--s-3);background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--e-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex;position:sticky}.wizard-footer__center{gap:var(--s-2);flex-wrap:wrap;display:flex}.wizard-footer__actions{gap:var(--s-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.danger-action{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 32%, var(--line-strong))}.admin-revision-preview{color:var(--ink-soft);grid-column:1/-1;margin:4px 0 0;font-size:13px}.admin-proxy-form{gap:var(--s-3);margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--line);display:grid}.admin-proxy-form h3{font-family:var(--font-display);margin:0}.launch-settings{gap:var(--s-4);margin-bottom:var(--s-6);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--e-1);padding:clamp(18px,3vw,28px);display:grid}.launch-settings__header{justify-content:space-between;align-items:start;gap:var(--s-4);display:flex}.launch-settings__header h2,.launch-form h3{font-family:var(--font-display);margin:0;line-height:1.15}.launch-settings__header p{margin:var(--s-2) 0 0;color:var(--ink-soft)}.readiness-pill{color:var(--danger);background:var(--danger-bg);border:1px solid color-mix(in srgb, var(--danger) 30%, var(--line));border-radius:var(--r-pill);flex:none;padding:8px 12px;font-size:13px;font-weight:800}.readiness-pill--ok{color:var(--success);background:var(--success-bg);border-color:var(--line-green)}.readiness-grid{gap:var(--s-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.readiness-item{min-width:0;padding:var(--s-3);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);gap:4px;display:grid}.readiness-item strong{font-size:13px;line-height:1.3}.readiness-item span{color:var(--ink-soft);font-size:12px;line-height:1.5}.readiness-item--blocker{background:var(--danger-bg);border-color:color-mix(in srgb, var(--danger) 28%, var(--line))}.launch-settings__forms{gap:var(--s-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.launch-form{align-content:start;gap:var(--s-3);min-width:0;padding:var(--s-4);background:color-mix(in srgb, var(--surface) 86%, var(--bg-sunken));border:1px solid var(--line);border-radius:var(--r-md);display:grid}.launch-form--wide{grid-column:span 2}.launch-form label{gap:var(--s-2);color:var(--ink-soft);font-size:13px;font-weight:800;display:grid}.launch-form .check-row{align-items:center;gap:var(--s-2);color:var(--ink);display:flex}.launch-form textarea{min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.6}.user-management__layout{gap:var(--s-4);grid-template-columns:minmax(280px,360px) minmax(0,1fr);display:grid}.user-list{align-content:start;gap:var(--s-3);min-width:0;display:grid}.user-row{grid-template-columns:minmax(0,1fr) minmax(88px,max-content)}.csv-panel__actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.csv-panel__form{grid-column:1/-1}.csv-panel__form textarea{min-height:220px}.modal-backdrop{z-index:80;padding:var(--s-5);background:#221c1773;place-items:center;display:grid;position:fixed;inset:0}.revision-modal{gap:var(--s-4);width:min(560px,100%);padding:var(--s-5);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--e-3);display:grid}.revision-modal h2{font-family:var(--font-display);margin:0}@media (width<=760px){.launch-settings__header{display:grid}.readiness-grid,.launch-settings__forms,.user-management__layout{grid-template-columns:1fr}.launch-form--wide{grid-column:auto}.contributor-metrics,.stepper,.slider-grid,.photo-workspace,.preview-grid{grid-template-columns:1fr}.contributor-card{grid-template-columns:82px minmax(0,1fr)}.contributor-card__actions{grid-column:1/-1;justify-content:stretch}.contributor-card__actions .btn{flex:120px}.stepper{padding-bottom:var(--s-1);grid-template-columns:repeat(4,minmax(58px,1fr));overflow-x:auto}.stepper button{min-width:96px;min-height:66px;padding:var(--s-2);grid-template-columns:24px minmax(0,1fr)}.stepper button span{width:24px;height:24px}.stepper button small{display:none}.wizard-panel{padding:var(--s-4)}.wizard-footer{align-items:stretch}.wizard-footer>.btn,.wizard-footer__center,.wizard-footer__center .btn,.wizard-footer__actions,.wizard-footer__actions .btn{flex:auto}.flow-steps{grid-template-columns:1fr}.hero-h1{font-size:clamp(24px,6.4vw,32px)}}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-bold::file-selector-button{font-weight:700}.placeholder\:text-\[var\(--ink-muted\)\]::placeholder{color:var(--ink-muted)}.hover\:border-\[var\(--amber\)\]:hover{border-color:var(--amber)}.hover\:border-\[var\(--green-700\)\]:hover{border-color:var(--green-700)}.hover\:border-\[var\(--line-strong\)\]:hover{border-color:var(--line-strong)}.hover\:bg-\[var\(--green-700\)\]:hover{background-color:var(--green-700)}.hover\:bg-\[var\(--surface-2\)\]:hover{background-color:var(--surface-2)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:brightness-95:hover{--tw-brightness:brightness(.95);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)}.focus\:bg-\[var\(--surface-2\)\]:focus{background-color:var(--surface-2)}.focus\:text-\[var\(--ink\)\]:focus{color:var(--ink)}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-\[var\(--focus-ring\)\]:focus{--tw-ring-color:var(--focus-ring)}.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #0000}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-\[var\(--focus-ring\)\]:focus-visible{--tw-ring-color:var(--focus-ring)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-\[var\(--bg\)\]:focus-visible{--tw-ring-offset-color:var(--bg)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:border-\[var\(--green\)\][data-state=checked]{border-color:var(--green)}.data-\[state\=checked\]\:bg-\[var\(--green\)\][data-state=checked]{background-color:var(--green)}.data-\[state\=checked\]\:text-\[var\(--on-green\)\][data-state=checked]{color:var(--on-green)}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:animate-in[data-state=open]{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.data-\[state\=closed\]\:animate-out[data-state=closed]{--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial;animation-name:exit;animation-duration:.15s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}@media (width>=640px){.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-\[1\.05rem\] svg{width:1.05rem;height:1.05rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
