:root{--font-display: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-primary: #070913;--bg-secondary: #0e1326;--bg-card: rgba(18, 24, 48, .7);--bg-card-hover: rgba(26, 34, 66, .85);--border-subtle: rgba(255, 255, 255, .08);--border-focus: rgba(99, 102, 241, .5);--accent-primary: #6366f1;--accent-primary-hover: #4f46e5;--accent-glow: rgba(99, 102, 241, .25);--accent-cyan: #06b6d4;--accent-emerald: #10b981;--accent-amber: #f59e0b;--accent-rose: #f43f5e;--text-main: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-main);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;background-image:radial-gradient(ellipse at 20% 10%,rgba(99,102,241,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(6,182,212,.12) 0%,transparent 50%);background-attachment:fixed}h1,h2,h3,h4,.font-heading{font-family:var(--font-display);letter-spacing:-.02em}.glass-panel{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:16px;box-shadow:0 8px 32px #0000005e}.glass-panel-glow{background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-focus);border-radius:20px;box-shadow:0 0 40px var(--accent-glow)}.btn-primary{background:linear-gradient(135deg,var(--accent-primary) 0%,#4338ca 100%);color:#fff;font-weight:600;padding:12px 24px;border-radius:12px;border:none;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 14px #6366f163}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #6366f180;background:linear-gradient(135deg,#7174f8,#4f46e5)}.btn-secondary{background:#ffffff0d;color:var(--text-main);font-weight:600;padding:12px 24px;border-radius:12px;border:1px solid var(--border-subtle);cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-secondary:hover{background:#ffffff1a;border-color:#fff3}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:9999px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.badge-emerald{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.badge-amber{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.badge-indigo{background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.3)}@keyframes countdownPop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.animate-countdown{animation:countdownPop .35s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes pulseGlow{0%,to{transform:scale(1);box-shadow:0 0 25px #ef444499}50%{transform:scale(1.04);box-shadow:0 0 60px #ef4444e6}}.animate-pulse-glow{animation:pulseGlow 1.2s infinite ease-in-out}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(300px) rotate(720deg);opacity:0}}.confetti-dot{position:absolute;width:10px;height:10px;border-radius:4px;animation:confettiFall 2.5s ease-out infinite}.touch-press-button{user-select:none;-webkit-user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:root{--host-bg: #070b14;--host-surface: #0d1525;--host-surface-hover: #111c30;--host-card: rgba(13, 21, 37, .9);--host-border: rgba(255, 255, 255, .08);--host-border-light: rgba(255, 255, 255, .16);--host-accent: #6366f1;--host-accent-hover: #4f46e5;--host-accent-glow: rgba(99, 102, 241, .35);--host-success: #10b981;--host-success-hover: #059669;--host-danger: #ef4444;--host-danger-hover: #dc2626;--host-warning: #f59e0b}.host-panel{background:var(--host-surface);border:1px solid var(--host-border);border-radius:16px;box-shadow:0 10px 30px #0006}.host-panel-elevated{background:#111c30;border:1px solid var(--host-border-light);border-radius:16px;box-shadow:0 12px 36px #00000080}.host-input,.host-select,.host-textarea{background-color:#0b1220!important;color:#f8fafc!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:10px!important;padding:10px 14px!important;font-size:.875rem!important;font-family:var(--font-body);transition:all .2s ease;width:100%;box-sizing:border-box}.host-input:focus,.host-select:focus,.host-textarea:focus{outline:none!important;border-color:#6366f1!important;box-shadow:0 0 0 3px #6366f140!important}.host-select option{background-color:#0d1525!important;color:#f8fafc!important}.host-label{display:block;font-size:.75rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.host-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-body);font-weight:600;font-size:.875rem;min-height:42px;padding:8px 18px;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:all .18s ease;-webkit-user-select:none;user-select:none;text-decoration:none;line-height:1.2}.host-btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.host-btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border-color:#ffffff26;box-shadow:0 4px 14px #6366f159}.host-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#7174f8,#4338ca);box-shadow:0 6px 20px #6366f180;transform:translateY(-1px)}.host-btn-primary:active:not(:disabled){transform:translateY(0)}.host-btn-secondary{background:#ffffff0f;color:#f1f5f9;border-color:#ffffff1f}.host-btn-secondary:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff38}.host-btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#ffffff26;box-shadow:0 4px 14px #10b98159}.host-btn-success:hover:not(:disabled){background:linear-gradient(135deg,#34d399,#047857);box-shadow:0 6px 20px #10b98180;transform:translateY(-1px)}.host-btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#ffffff26;box-shadow:0 4px 14px #ef444459}.host-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#f87171,#b91c1c);box-shadow:0 6px 20px #ef444480;transform:translateY(-1px)}.host-btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#070b14;font-weight:700;box-shadow:0 4px 14px #f59e0b59}.host-btn-warning:hover:not(:disabled){background:linear-gradient(135deg,#fbbf24,#b45309);box-shadow:0 6px 20px #f59e0b80;transform:translateY(-1px)}.host-btn-ghost{background:transparent;color:#94a3b8;border-color:transparent}.host-btn-ghost:hover:not(:disabled){background:#ffffff0f;color:#f8fafc}.host-btn-icon{width:38px;height:38px;min-height:38px;padding:0;border-radius:8px}.host-btn-hero{min-height:56px;padding:14px 28px;font-size:1.25rem;font-weight:800;border-radius:16px;letter-spacing:.02em}.host-tabs-bar{display:flex;align-items:center;gap:4px;background:#0d1525f2;padding:4px;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.host-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:9px;font-size:.825rem;font-weight:700;color:#94a3b8;background:transparent;border:none;cursor:pointer;transition:all .18s ease;letter-spacing:.03em;text-transform:uppercase}.host-tab-btn:hover{color:#fff;background:#ffffff0d}.host-tab-btn.active{color:#fff;background:#111c30;border:1px solid rgba(99,102,241,.45);box-shadow:0 2px 10px #0006}.question-bank-container{display:flex;flex-direction:column;gap:6px}.question-bank-row{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#0d1525;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 16px;min-height:74px;transition:all .15s ease}.question-bank-row:hover{background:#111c30;border-color:#ffffff29}.question-row-active{border-color:#6366f180!important;background:#6366f114!important}.host-dropdown-menu{position:absolute;right:0;top:100%;margin-top:6px;background:#0d1525;border:1px solid rgba(255,255,255,.14);border-radius:10px;box-shadow:0 10px 25px #0009;z-index:100;min-width:160px;padding:6px;display:flex;flex-direction:column;gap:2px}.host-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;font-weight:600;color:#cbd5e1;background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:all .12s ease;width:100%}.host-dropdown-item:hover{background:#ffffff14;color:#fff}.host-dropdown-item.danger{color:#f87171}.host-dropdown-item.danger:hover{background:#ef44442e;color:#fca5a5}.host-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#070b14d1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.host-modal-dialog{background:#0d1525;border:1px solid rgba(255,255,255,.14);border-radius:20px;box-shadow:0 24px 60px #000000b3;width:100%;max-width:640px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden}.host-status-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:9999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.badge-ready{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.35)}.badge-missing{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.35)}.badge-error{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.35)}.badge-checking{background:#6366f126;color:#a5b4fc;border:1px solid rgba(99,102,241,.35)}
