:root{--primary:#4338ca;--primary-light:#6366f1;--primary-dark:#312e81;--primary-foreground:#fff;--gradient-primary:linear-gradient(135deg, #4338ca 0%, #6366f1 45%, #8b5cf6 100%);--gradient-primary-shadow:0 8px 20px -5px #6366f173;--gradient-primary-shadow-hover:0 14px 28px -6px #6366f18c;--secondary:#0ea5e9;--secondary-foreground:#fff;--accent:#f59e0b;--accent-foreground:#fff;--background:#fff;--foreground:#0f172a;--muted:#f8fafc;--muted-foreground:#64748b;--card:#fff;--card-foreground:#0f172a;--border:#e2e8f0;--input:#e2e8f0;--success:#22c55e;--warning:#eab308;--error:#ef4444;--radius:.5rem;--container-padding:2rem;--max-width:1200px;--surface-gradient-subtle:linear-gradient(135deg, #4338ca14 0%, #8b5cf614 100%);--surface-card-bg:linear-gradient(180deg, #fffffff5 0%, #f8fafceb 100%);--surface-card-border:#6366f12e;--surface-card-glow:0 20px 40px -18px #6366f12e;--surface-radius:1.25rem}[data-theme=dark]{--surface-gradient-subtle:linear-gradient(135deg, #6366f129 0%, #8b5cf61f 100%);--surface-card-bg:linear-gradient(180deg, #1e293beb 0%, #0f172ae6 100%);--surface-card-border:#6366f147;--surface-card-glow:0 20px 40px -18px #0000008c;--background:#0f172a;--foreground:#f8fafc;--muted:#1e293b;--muted-foreground:#94a3b8;--card:#1e293b;--card-foreground:#f8fafc;--border:#334155;--input:#334155;--primary:#6366f1;--primary-light:#818cf8;--primary-dark:#4338ca;--primary-foreground:#fff;--secondary:#38bdf8;--secondary-foreground:#fff;--accent:#fbbf24;--accent-foreground:#000}*{box-sizing:border-box;margin:0;padding:0}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body{background-color:var(--background);max-width:100vw;color:var(--foreground);padding-top:2rem;font-family:Inter,sans-serif;line-height:1.5}html{overflow:hidden scroll}body{overflow:visible}body.kiosk-projection{background-color:#0f172a;padding-top:0;overflow:hidden}body.kiosk-live-control{background:radial-gradient(circle at 10% 0,#3b82f629,#0000 38%),radial-gradient(circle at 95% 10%,#38bdf824,#0000 36%),linear-gradient(#f5f9ff,#eef4ff);padding-top:0}html.play-app,html.play-app body{padding-top:0}html.play-app{background-color:#0b1020}html.play-app[data-play-theme=light]{background-color:#f5f7ff}html.play-app body{background-color:#0000}html.scan-app,html.scan-app body{padding-top:0}html.scan-app{background-color:#f5f7ff}html.scan-app[data-scan-theme=dark]{background-color:#0b1020}html.scan-app body{background-color:#0000;height:100%;overflow:hidden}html.portal-app,html.portal-app body,html.auth-app,html.auth-app body{padding-top:0}a{color:inherit;text-decoration:none}input,textarea,select{color:var(--foreground);background-color:var(--background)}input::placeholder,textarea::placeholder{color:var(--muted-foreground)}input:-webkit-autofill{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}input:-webkit-autofill:hover{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}input:-webkit-autofill:focus{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}textarea:-webkit-autofill{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}textarea:-webkit-autofill:hover{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}textarea:-webkit-autofill:focus{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}select:-webkit-autofill{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}select:-webkit-autofill:hover{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}select:-webkit-autofill:focus{-webkit-text-fill-color:var(--foreground);-webkit-box-shadow:0 0 0px 1000px var(--background) inset;transition:background-color 5000s ease-in-out}.container{width:100%;max-width:var(--max-width);padding:0 var(--container-padding);margin:0 auto}.btn{border-radius:var(--radius);cursor:pointer;border:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--gradient-primary);color:var(--primary-foreground);box-shadow:var(--gradient-primary-shadow);border:none;font-weight:700}.btn-primary:hover{filter:brightness(1.06);box-shadow:var(--gradient-primary-shadow-hover);transform:translateY(-2px)}.btn-secondary{background-color:var(--muted);color:var(--foreground)}.btn-secondary:hover{background-color:var(--border)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}@media (max-width:768px){body.portal-mobile-tabbar #qc-cmp2-persistent-link{bottom:calc(60px + env(safe-area-inset-bottom))!important}}body.play-app #qc-cmp2-persistent-link,body.play-app a.qc-cmp2-persistent-link{display:none!important}#qc-cmp2-persistent-link,a.qc-cmp2-persistent-link{opacity:.35!important;transition:opacity .2s!important}#qc-cmp2-persistent-link:hover,#qc-cmp2-persistent-link:focus-visible,#qc-cmp2-persistent-link:active,a.qc-cmp2-persistent-link:hover,a.qc-cmp2-persistent-link:focus-visible,a.qc-cmp2-persistent-link:active{opacity:1!important}@media (max-width:768px){#qc-cmp2-persistent-link,a.qc-cmp2-persistent-link{opacity:.28!important;padding:.35rem .55rem!important;font-size:.75rem!important}#qc-cmp2-persistent-link:hover,#qc-cmp2-persistent-link:focus-visible,#qc-cmp2-persistent-link:active,a.qc-cmp2-persistent-link:hover,a.qc-cmp2-persistent-link:focus-visible,a.qc-cmp2-persistent-link:active{opacity:1!important}}
