:root{--em-blackberry:#2a034c;--em-night:#180a30;--em-night-deep:#120322;--em-plum:#3a1164;--em-teal:#00ca9f;--em-mint:#7ef5bd;--em-teal-ink:#042b29;--em-radius-control:5px;--em-radius-panel:8px;--em-radius-dialog:10px;--em-track-tight:-.045em;--em-track-caps:.18em;--em-glow:0 0 14px #7ef5bdb3;--em-backdrop:#05000cc7;--font:Montserrat, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-slide:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg:var(--em-night);--surface:var(--em-blackberry);--surface-2:var(--em-plum);--text:#fbfaff;--text-muted:#c5c5d6;--border:#e2e2f230;--accent:var(--em-teal);--accent-text:var(--em-teal);--accent-contrast:var(--em-teal-ink);--accent-soft:#073d3d;--outline:var(--em-mint);--outline-contrast:var(--em-teal-ink);--danger:#662532;--danger-border:#ee8290;--danger-contrast:#fff2f3;--warning-bg:#f0c36e1f;--warning-text:#fab600;--error-bg:#ff91ca1f;--error-text:#ff91ca;--ok-text:var(--accent-text);--shadow-dialog:0 30px 90px #0200087a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root{--bg:#f6f4fb;--surface:#fff;--surface-2:#efebf7;--text:var(--em-blackberry);--text-muted:#5d5572;--border:#2a034c24;--accent-text:#007a62;--accent-soft:#d9f5ed;--outline:var(--em-teal);--warning-bg:#fff1cc;--warning-text:#8a5a00;--error-bg:#fde6f1;--error-text:#b0226b;--shadow-dialog:0 30px 90px #2a034c29;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}html,body{height:100%;margin:0}html{background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:var(--font);font-synthesis:none;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;overscroll-behavior:none}html.kiosk-active,html.kiosk-active body{background:#000}.sr-slide{font-family:var(--font-slide)}#app{min-height:100dvh}button,input,select{font-family:inherit;font-size:16px}a{color:var(--accent-text)}.muted{color:var(--text-muted)}h1,h2{letter-spacing:var(--em-track-tight);text-wrap:balance;font-weight:700;line-height:1}h1{font-size:clamp(2rem,5vw,3rem)}h2{margin:0 0 16px;font-size:1.5rem}h3{font-weight:700}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{border-radius:var(--em-radius-control);border:1px solid var(--border);background:var(--surface-2);min-width:44px;min-height:44px;color:var(--text);letter-spacing:.015em;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.5em;padding:10px 18px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-contrast);border-color:#0000;font-weight:800}.btn-danger{background:var(--danger);border-color:var(--danger-border);color:var(--danger-contrast)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-big{min-height:56px;padding:14px 28px;font-size:17px}.setup-screen{max-width:900px;margin:0 auto;padding:32px 20px 80px}.setup-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-bottom:12px;display:flex}.setup-header h1{margin:0}.setup-version{color:var(--text-muted);margin:2px 0 0;font-size:.85rem}.setup-logo{--logo-w:178px;margin:calc(var(--logo-w) * -.134) calc(var(--logo-w) * -.134) calc(var(--logo-w) * -.134) auto;flex:none;display:block}.setup-logo img{width:var(--logo-w);height:auto;display:block}.setup-sub{color:var(--text-muted);margin:0 0 24px;line-height:1.6}.setup-step,.admin-stats,.admin-export,.admin-clear{background:var(--surface);border:1px solid var(--border);border-radius:var(--em-radius-panel);margin-bottom:20px;padding:20px}.setup-step--disabled{opacity:.55}.load-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.clear-data-btn{color:var(--error-text);border-color:var(--error-text);background:0 0;margin-left:auto}.sr-only-input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.load-status{color:var(--text-muted)}.issue-group{border-radius:var(--em-radius-panel);margin-top:12px;padding:12px 16px}.issue-group--error{background:var(--error-bg);color:var(--error-text)}.issue-group--warning{background:var(--warning-bg);color:var(--warning-text)}.issue-group h3{margin-top:0}.issue-ok{color:var(--ok-text);font-weight:600}.checkbox-row{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:flex}.checkbox-row input{width:22px;height:22px;accent-color:var(--accent)}.preview-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.preview-stage{aspect-ratio:16/9;border-radius:var(--em-radius-panel);background:#000;width:100%;position:relative;overflow:hidden}.preview-btn-outline{border:3px solid var(--outline);box-sizing:border-box;cursor:pointer;justify-content:flex-start;align-items:flex-end;display:flex}.preview-btn-label{background:var(--outline);color:var(--outline-contrast);font-family:var(--font);padding:2px 8px;font-size:22px;font-weight:700}.preview-poll-outline{border-style:dashed;border-color:var(--accent)}.preview-poll-outline .preview-btn-label{background:var(--accent);color:var(--accent-contrast)}.thumb-grid{grid-template-columns:repeat(auto-fill,164px);gap:12px;margin-top:8px;display:grid}.thumb{border:2px solid var(--border);border-radius:var(--em-radius-panel);text-align:center;color:var(--text-muted);font-size:13px;overflow:hidden}.thumb--unlinked{border-color:var(--error-text)}.thumb-label{padding:4px;display:block}.field-list{flex-direction:column;gap:10px;margin:8px 0 16px;display:flex}.field-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.field-row input[type=text],.field-row input[type=password],.field-row input[type=number],.field-row input[type=datetime-local],select,input[type=text],input[type=number]{border-radius:var(--em-radius-control);border:1px solid var(--border);background:var(--surface-2);min-height:44px;color:var(--text);padding:8px 12px}input[type=range]{accent-color:var(--accent)}.storage-info{color:var(--text-muted);margin-top:16px;font-size:14px}.modal-backdrop{background:var(--em-backdrop);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--em-radius-dialog);box-shadow:var(--shadow-dialog);width:100%;max-width:520px;max-height:90vh;padding:28px;overflow:auto}.checklist{margin:12px 0;padding:0;list-style:none}.modal-actions{justify-content:flex-end;gap:12px;margin-top:16px;display:flex}.warning-text{background:var(--warning-bg);color:var(--warning-text);border-radius:var(--em-radius-panel);padding:10px 14px}.admin-overlay{background:var(--bg);z-index:500;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);position:fixed;inset:0;overflow:auto}.admin-screen{max-width:900px;margin:0 auto;padding:32px 20px 60px}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.admin-header h1{margin:0}.admin-actions{gap:12px;display:flex}.stat-row{flex-wrap:wrap;gap:12px;display:flex}.stat-tile{background:var(--bg);border:1px solid var(--border);border-radius:var(--em-radius-panel);flex-direction:column-reverse;justify-content:space-between;gap:12px;min-width:120px;padding:14px 18px;display:flex}.stat-value{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:2.2rem;font-weight:700;line-height:1}.stat-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.export-buttons{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.export-preview{margin:8px 0}.clear-confirm-input{min-height:44px}.modal-card .clear-confirm-input{box-sizing:border-box;width:100%}.admin-footer{margin-top:24px;font-size:13px}.pinpad-overlay{background:var(--em-backdrop);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pinpad-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--em-radius-dialog);box-shadow:var(--shadow-dialog);text-align:center;width:320px;padding:28px 24px 24px}.pinpad-title{color:var(--accent-text);letter-spacing:var(--em-track-caps);text-transform:uppercase;margin-bottom:16px;font-size:12px;font-weight:600}.pinpad-dots{justify-content:center;gap:12px;margin-bottom:20px;display:flex}.pinpad-dot{border:2px solid var(--text-muted);border-radius:50%;width:16px;height:16px}.pinpad-dot--filled{background:var(--accent);border-color:var(--accent);box-shadow:var(--em-glow)}.pinpad-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.pinpad-key{border-radius:var(--em-radius-panel);border:1px solid var(--border);background:var(--surface-2);min-height:56px;color:var(--text);font-variant-numeric:tabular-nums;cursor:pointer;font-size:22px;font-weight:600}.pinpad-spacer{min-height:56px}.pinpad-cancel{width:100%;margin-top:16px}@keyframes pinpad-shake{10%,90%{transform:translate(-4px)}20%,80%{transform:translate(6px)}30%,50%,70%{transform:translate(-8px)}40%,60%{transform:translate(8px)}}.pinpad-shake .pinpad-card{animation:.4s pinpad-shake}.glow-swatches{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.glow-swatch{border:2px solid var(--border);cursor:pointer;border-radius:50%;width:44px;height:44px;padding:0}.glow-custom{border:2px solid #0000;border-radius:22px;align-items:center;gap:6px;min-height:44px;padding:0 10px 0 4px;display:inline-flex}.glow-custom input[type=color]{background:0 0;border:none;width:40px;height:36px;padding:0}.glow-swatch--selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}.glow-fields input[type=range]{flex:200px;min-height:44px}.glow-value{font-variant-numeric:tabular-nums;min-width:8ch}.attract-slide-grid{grid-template-columns:repeat(auto-fill,104px);gap:10px;margin:4px 0 16px;display:grid}.attract-slide-check{color:var(--text-muted);flex-direction:column;align-items:center;gap:4px;font-size:13px;display:flex}.kiosk-root{overscroll-behavior:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:none;width:100vw;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);z-index:1;background:#000;position:fixed;inset:0}.kiosk-glow-layer{pointer-events:none;animation:kiosk-glow-in var(--glow-fade-in,0s) ease-out both;position:absolute;inset:0}@keyframes kiosk-glow-in{0%{opacity:0}to{opacity:1}}.kiosk-glow{box-sizing:border-box;pointer-events:none;box-shadow:0 0 var(--glow-blur) var(--glow-spread) var(--glow-color);will-change:opacity;animation:kiosk-glow-pulse var(--glow-half-period) ease-in-out infinite alternate;position:absolute}@keyframes kiosk-glow-pulse{0%{opacity:.15}to{opacity:1}}@media (prefers-reduced-motion:reduce){.kiosk-glow{animation:none}}.kiosk-attract-pulse-layer{opacity:0;pointer-events:none;position:absolute;inset:0}.kiosk-attract-pulse .kiosk-attract-pulse-layer{animation:1.6s ease-in-out infinite alternate kiosk-attract-pulse-fade}@keyframes kiosk-attract-pulse-fade{0%{opacity:.55}to{opacity:1}}.kiosk-attract-tap{color:#fff;white-space:nowrap;background:#00000073;border-radius:999px;padding:16px 32px;font-size:36px;font-weight:600;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.kiosk-attract-pulse .kiosk-attract-pulse-layer{opacity:1;animation:none}}.kiosk-poll-thanks{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#0000008c;border-radius:999px;padding:14px 28px;font-size:28px;font-weight:600;transition:opacity .2s ease-in-out;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.kiosk-poll-thanks--visible{opacity:1}@media (prefers-reduced-motion:reduce){.kiosk-poll-thanks{transition:none}}
