@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/bebas-neue-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/bebas-neue-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Syne;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/syne-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Syne;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/syne-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--neon-lime:#af0;--neon-pink:#ff0080;--neon-blue:#00d4ff;--neon-yellow:#ffe600;--dark-void:#050a0e;--dark-surface:#0d1821;--dark-card:#0f1e2e;--panel:var(--dark-card);--line:#1f3347;--muted:#9aa899;--foam:var(--neon-lime);--ok:var(--neon-lime);--danger:var(--neon-pink);--ink:#f0ffe0;--font-heading:"Bebas Neue", Impact, sans-serif;--font-body:"Syne", ui-sans-serif, system-ui, -apple-system, sans-serif;--radius:4px;--ease:cubic-bezier(.4, 0, .2, 1);font-family:var(--font-body);color:#f0ffe0;background:var(--dark-void)}*{box-sizing:border-box}body{background:radial-gradient(ellipse 70% 45% at 85% -5%, #aaff0012, transparent 70%), var(--dark-void);min-height:100vh;margin:0}.virtual-keyboard{z-index:2000;border:1px solid var(--neon-blue);background:#050a0efa;padding:14px;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 0 35px #00d4ff40}.keyboard-keys{gap:7px;display:grid}.keyboard-row{grid-template-columns:repeat(12,1fr);gap:7px;display:grid}.keyboard-row-2{padding-inline:2.2%}.keyboard-row-3{padding-inline:4.4%}.keyboard-row-4{grid-template-columns:repeat(11,1fr);padding-inline:7%}.keyboard-keys button,.keyboard-actions button{border:1px solid var(--line);min-height:52px;color:var(--ink);background:var(--dark-card);font-weight:800}.keyboard-keys button:active{color:var(--dark-void);background:var(--neon-lime)}.keyboard-actions button.active{color:var(--dark-void);background:var(--neon-blue)}.keyboard-actions{grid-template-columns:1fr 2fr 1fr 1fr;gap:7px;margin-top:8px;display:grid}.show-password{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:flex!important}.show-password input{width:24px;height:24px}@media (width<=900px){.keyboard-keys button,.keyboard-actions button{min-height:44px;font-size:13px}}button,input,textarea,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}.admin-topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#050a0eeb;justify-content:space-between;align-items:center;min-height:74px;padding:0 4vw;display:flex}.admin-topbar>div{align-items:center;gap:14px;display:flex}.brand-mark{object-fit:cover;border:1px solid #aaff0080;border-radius:50%;width:42px;height:42px;box-shadow:0 0 14px #aaff0059}.admin-topbar strong{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-size:24px;font-weight:400}.brand,.eyebrow{color:var(--neon-lime);letter-spacing:.28em;text-transform:uppercase;text-shadow:0 0 10px #aaff0080;font-size:11px;font-weight:700}.top-actions a,.quiet{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;transition:color .3s var(--ease);background:0 0;border:0;font-size:12px;font-weight:700;text-decoration:none}.top-actions a:hover,.quiet:hover{color:var(--neon-lime)}.instance-label{color:var(--neon-blue);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}main{width:min(1220px,92vw);margin:0 auto;padding:48px 0 90px}h1,h2,h3{font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase;font-weight:400;line-height:.98}h1{margin:6px 0 12px;font-size:clamp(38px,5vw,66px)}h2{margin:6px 0 0;font-size:30px}.muted{color:var(--muted);line-height:1.6}.login-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);width:min(480px,100%);margin:8vh auto;padding:40px;box-shadow:0 30px 80px #00000080}form label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;gap:8px;font-size:11px;font-weight:700;display:grid}input,textarea,select{border:1px solid var(--line);border-radius:var(--radius);color:#f0ffe0;background:var(--dark-void);width:100%;min-height:48px;transition:border-color .3s var(--ease), box-shadow .3s var(--ease);padding:10px 12px}input:focus,textarea:focus,select:focus{border-color:var(--neon-lime);outline:none;box-shadow:0 0 0 3px #aaff0026}textarea{resize:vertical;min-height:86px}.login-card form{gap:18px;margin-top:30px;display:grid}.primary,.secondary{border-radius:var(--radius);letter-spacing:.12em;text-transform:uppercase;min-height:50px;transition:all .3s var(--ease);border:0;padding:0 22px;font-size:13px;font-weight:800}.primary{color:var(--dark-void);background:var(--neon-lime);box-shadow:0 0 20px #aaff004d}.primary:hover{box-shadow:0 0 32px #aaff008c}.secondary{color:var(--neon-lime);background:0 0;border:1px solid #aaff0073}.secondary:hover{background:#aaff001f}.error{min-height:20px;color:var(--neon-pink);font-size:14px;font-weight:700}.page-heading,.section-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.section-card{border:1px solid var(--line);border-radius:var(--radius);background:#0f1e2ee6;margin-top:22px;padding:28px}.service-state-card{justify-content:space-between;align-items:center;gap:24px;display:flex}.service-state-card.is-blocked{border-color:var(--neon-pink);background:#ff008014}.service-state-card.is-limited{border-color:var(--neon-yellow);background:#ffe6000f}.service-state-card .primary{flex:none}.safety-note{max-width:330px;color:var(--muted);text-align:right;font-size:12px;line-height:1.55}.provider-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px;display:grid}.provider{border:1px solid var(--line);border-radius:var(--radius);min-height:150px;color:inherit;background:var(--dark-surface);text-align:left;transition:all .3s var(--ease);align-content:space-between;padding:20px;display:grid}.provider:hover:not(:disabled){border-color:#aaff0080;transform:translateY(-2px)}.provider.active{border-color:var(--neon-lime);box-shadow:0 0 25px #af03, inset 0 0 0 1px var(--neon-lime)}.provider:disabled{cursor:not-allowed;opacity:.45}.provider strong{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;font-size:24px;font-weight:400}.provider small{color:var(--muted);line-height:1.5}.active-payment-list{gap:10px;margin-top:18px;display:grid}.active-payment{border:1px solid #ffe60066;border-left:3px solid var(--neon-yellow);border-radius:var(--radius);background:#ffe60012;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:16px;display:grid}.active-payment p{margin:0 0 4px}.active-payment small{color:var(--muted)}.active-payment button{border-radius:var(--radius);color:#fff;background:var(--danger);letter-spacing:.1em;text-transform:uppercase;border:0;min-height:42px;padding:0 16px;font-size:12px;font-weight:800}.status-pill{border-radius:var(--radius);width:fit-content;color:var(--dark-void);background:var(--neon-lime);letter-spacing:.1em;text-transform:uppercase;border:1px solid #0000;padding:5px 9px;font-size:10px;font-weight:900}.status-pill.is-active{color:var(--dark-void);background:var(--neon-lime)}.status-pill.is-ready{color:var(--neon-lime);background:0 0;border-color:#aaff008c}.status-pill.is-pending{color:var(--neon-yellow);background:#ffe6001f;border-color:#ffe60080}.status-pill.is-off{color:var(--muted);border-color:var(--line);background:0 0}.tap-summary{color:var(--neon-lime);letter-spacing:.12em;text-transform:uppercase;margin:18px 0 0;font-size:12px;font-weight:700}.tap-admin-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.tap-admin-head h3{margin:0}.product-form{grid-template-columns:2fr 2fr 1fr 1fr;gap:14px;margin-top:24px;display:grid}.product-form .wide{grid-column:span 3}.product-list{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.product-chip{border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);padding:9px 13px;font-size:13px}.tap-admin-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px;display:grid}.tap-admin{border:1px solid var(--line);border-radius:var(--radius);background:var(--dark-surface);padding:22px}.tap-admin h3{color:var(--neon-lime);margin:0 0 18px;font-size:26px}.tap-admin.is-hidden-tap{opacity:.72}.tap-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tap-fields .wide{grid-column:1/-1}.switch-line{align-items:center;gap:10px;min-height:48px;display:flex}.switch-line input{width:auto;min-height:0}.stock-row{border-top:1px solid var(--line);grid-template-columns:1fr 1.5fr auto;gap:8px;margin-top:14px;padding-top:14px;display:grid}.stock-summary{color:var(--neon-lime);margin:14px 0 0;font-size:13px;font-weight:700}.event-list{margin-top:20px}.event{border-top:1px solid var(--line);color:var(--muted);grid-template-columns:170px 1fr;gap:16px;padding:11px 0;font-size:13px;display:grid}.event code{color:var(--neon-lime);font-size:12px}.toast{z-index:50;border-radius:var(--radius);max-width:420px;color:var(--dark-void);background:var(--neon-lime);letter-spacing:.04em;padding:16px 20px;font-size:13px;font-weight:800;position:fixed;bottom:24px;right:24px;box-shadow:0 0 40px #aaff0073,0 12px 40px #0009}.modes-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px;display:grid}.mode-field{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;gap:8px;font-size:11px;font-weight:700;display:grid}.mode-field.wide{grid-column:1/-1}.mode-control{border:1px solid var(--line);border-radius:var(--radius);background:var(--dark-surface);justify-content:space-between;align-items:center;gap:18px;padding:20px;display:flex}.mode-control.wide{flex-direction:column;grid-column:1/-1;align-items:stretch}.mode-info{flex-direction:column;gap:5px;display:flex}.mode-info strong{font-size:16px}.mode-info small{color:var(--muted);font-size:13px;line-height:1.45}.switch-toggle{flex-shrink:0;width:54px;height:30px;display:inline-block;position:relative}.switch-toggle input{opacity:0;width:0;height:0}.slider{cursor:pointer;border:1px solid var(--line);background-color:#16283a;border-radius:34px;transition:all .3s;position:absolute;inset:0}.slider:before{content:"";background-color:var(--muted);border-radius:50%;width:22px;height:22px;transition:all .3s;position:absolute;bottom:3px;left:3px}input:checked+.slider{background-color:var(--neon-lime);border-color:var(--neon-lime);box-shadow:0 0 15px #aaff0080}input:checked+.slider:before{background-color:var(--dark-void);transform:translate(24px)}.inline-form{grid-template-columns:1fr auto;gap:10px;margin-top:10px;display:grid}.manual-dispense-box{border-radius:var(--radius);background:#aaff000d;border:1px dashed #aaff0080;margin-top:16px;padding:16px}.manual-title{color:var(--neon-lime);letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:800;display:block}.manual-row{grid-template-columns:1fr auto;gap:10px;display:grid}.manual-pour-btn{min-height:44px;padding:0 16px;font-size:12px}@media (width<=820px){.provider-grid,.tap-admin-grid,.modes-grid{grid-template-columns:1fr}.product-form{grid-template-columns:1fr 1fr}.product-form .wide{grid-column:1/-1}.mode-field.wide{grid-column:auto}}@media (width<=560px){.page-heading,.section-heading{flex-direction:column;align-items:start}.safety-note{text-align:left}.product-form,.tap-fields,.stock-row,.inline-form,.manual-row{grid-template-columns:1fr}.product-form .wide,.tap-fields .wide{grid-column:auto}.event{grid-template-columns:1fr;gap:3px}.active-payment{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{transition-duration:1ms!important}}.service-guidance{border:1px solid #ffe60066;border-left:3px solid var(--neon-yellow);border-radius:var(--radius);background:#ffe60012;align-items:flex-start;gap:14px;margin-top:16px;padding:16px 18px;display:flex}.service-guidance p{color:var(--ink);margin:0;font-size:14px;line-height:1.55}.service-guidance-code{border-radius:var(--radius);color:var(--dark-void);background:var(--neon-yellow);font-family:var(--font-heading);letter-spacing:.08em;flex:none;padding:5px 10px;font-size:16px}#root{min-height:100svh}
