:root{--bg:#0d1020;--bg-elevated:#171b32;--bg-input:#10142a;--surface:rgba(255,255,255,0.04);--border:rgba(255,255,255,0.1);--border-strong:rgba(255,255,255,0.22);--text:#f4f5fb;--text-muted:#a2a8c8;--brand:#7c5cff;--brand-bright:#9b7bff;--danger:#ff5470;--success:#2fd07f;--warning:#ffc043;--option-1:#e8384f;--option-2:#2b7fff;--option-3:#f0a30a;--option-4:#1fa971;--option-5:#9b5de5;--option-6:#ec4899;--radius:14px;--radius-lg:22px;--shadow:0 18px 45px rgba(0,0,0,0.45);--font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{background:radial-gradient(1200px 700px at 15% -10%,rgba(124,92,255,.28),transparent 60%),radial-gradient(900px 600px at 105% 10%,rgba(43,127,255,.2),transparent 55%),var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}h1,h2,h3{margin:0 0 .4em;line-height:1.15;letter-spacing:-.02em}h1{font-size:clamp(1.8rem,4vw,2.6rem)}p{margin:0 0 1em;line-height:1.6;color:var(--text-muted)}a{color:var(--brand-bright)}.page{max-width:1100px;margin:0 auto;padding:32px 20px 80px}.page--narrow{max-width:460px}.stack{flex-direction:column;gap:16px}.row,.stack{display:flex}.row{align-items:center;gap:12px;flex-wrap:wrap}.row--between{justify-content:space-between}.spacer{flex:1 1}.grid{display:grid;grid-gap:16px;gap:16px}@media (min-width:720px){.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:1.15rem;letter-spacing:-.03em;color:var(--text);text-decoration:none}.brand__logo{display:block;height:38px;width:auto}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow)}.card--flat{background:var(--surface);box-shadow:none}.card__title{font-size:1.1rem;font-weight:700;margin:0 0 4px}.muted{color:var(--text-muted)}.small,label{font-size:.85rem}label{display:block;font-weight:600;margin-bottom:6px;color:var(--text-muted)}input,select,textarea{width:100%;padding:12px 14px;font:inherit;color:var(--text);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);outline:none;transition:border-color .15s ease}input:focus,select:focus,textarea:focus{border-color:var(--brand)}textarea{resize:vertical;min-height:80px}input[type=checkbox]{width:auto}.field{margin-bottom:14px}.field--inline{display:flex;gap:12px}.field--inline>*{flex:1 1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;font:inherit;font-weight:700;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer;text-decoration:none;transition:transform .08s ease,filter .15s ease,background .15s ease}.btn:hover:not(:disabled){filter:brightness(1.12)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:linear-gradient(140deg,var(--brand),#5b7cff);border-color:transparent}.btn--danger{background:transparent;border-color:rgba(255,84,112,.5);color:var(--danger)}.btn--ghost{background:transparent;border-color:var(--border)}.btn--big{padding:16px 28px;font-size:1.05rem;border-radius:16px}.btn--block{width:100%}.alert{padding:12px 14px;border-radius:var(--radius);border:1px solid rgba(255,84,112,.4);background:rgba(255,84,112,.12);color:#ffc9d3;font-size:.92rem}.alert--info{border-color:rgba(124,92,255,.45);background:rgba(124,92,255,.14);color:#d8ccff}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.badge--live{border-color:rgba(47,208,127,.5);color:var(--success)}.dot{width:8px;height:8px;border-radius:50%;background:currentColor}.options{display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr}@media (min-width:560px){.options--2col{grid-template-columns:repeat(2,minmax(0,1fr))}}.option{position:relative;display:flex;align-items:center;gap:14px;padding:18px;min-height:84px;border:none;border-radius:16px;color:#fff;font:inherit;font-weight:700;font-size:1.05rem;text-align:left;cursor:pointer;background:var(--option-color,#444);box-shadow:inset 0 -4px 0 rgba(0,0,0,.22);transition:transform .1s ease,opacity .2s ease}.option:active:not(:disabled){transform:scale(.98)}.option:disabled{cursor:default}.option--dim{opacity:.32}.option--chosen{outline:3px solid #fff;outline-offset:3px}.option__glyph{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(0,0,0,.22);font-size:1.05rem}.option__count{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:rgba(0,0,0,.25);padding:4px 10px;border-radius:999px;font-size:.9rem}.stage{min-height:100vh;display:flex;flex-direction:column;padding:20px clamp(16px,3vw,40px) 28px;gap:18px}.stage__header{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.stage__body{flex:1 1;display:flex;flex-direction:column;justify-content:center;justify-content:safe center;min-height:0;overflow-y:auto;gap:20px}.stage__question{font-size:clamp(1.6rem,3.4vw,3rem);font-weight:800;text-align:center;letter-spacing:-.02em;line-height:1.15}.joincode{font-size:clamp(2.6rem,9vw,6rem);font-weight:900;letter-spacing:.16em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;background:linear-gradient(120deg,#fff,#b9a6ff);-webkit-background-clip:text;background-clip:text;color:transparent}.player-chip{padding:10px 16px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-weight:700;animation:pop .25s ease}.player-chip--offline{opacity:.45}@keyframes pop{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}.video-frame{position:relative;width:100%;max-width:1000px;margin:0 auto;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;background:#000;border:1px solid var(--border)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-frame--compact{max-width:min(1000px,52vh)}@media (max-height:860px){.video-frame--compact{max-width:min(1000px,40vh)}.stage__body--withvideo{gap:12px}.options--withvideo .option{min-height:62px;padding:12px 16px}}.stage__question--compact{font-size:clamp(1.2rem,2.2vw,2rem)}.timer{display:grid;place-items:center;width:78px;height:78px;border-radius:50%;font-size:1.9rem;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--bg-elevated);border:3px solid var(--brand)}.timer--urgent{border-color:var(--danger);color:var(--danger);animation:pulse .8s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.06)}}.progressbar{height:10px;border-radius:999px;background:var(--surface);overflow:hidden}.progressbar__fill{height:100%;background:linear-gradient(90deg,var(--brand),#2b7fff);transition:width .25s linear}.board{display:flex;flex-direction:column;gap:8px}.board__row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);font-weight:600}.board__row--me{border-color:var(--brand);background:rgba(124,92,255,.16)}.board__rank{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(0,0,0,.3);font-weight:800}.board__score{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:800}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;grid-gap:12px;gap:12px;max-width:760px;margin:0 auto}.podium__step{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 12px;border-radius:18px 18px 0 0;background:var(--bg-elevated);border:1px solid var(--border);border-bottom:none;text-align:center}.podium__step--1{min-height:210px;background:linear-gradient(180deg,rgba(255,192,67,.28),var(--bg-elevated));border-color:rgba(255,192,67,.5);order:2}.podium__step--2{min-height:165px;order:1}.podium__step--3{min-height:135px;order:3}.podium__medal{font-size:1.8rem}.podium__name{font-weight:800;word-break:break-word}.play{min-height:100dvh;display:flex;flex-direction:column;padding:16px;gap:14px}.play__header{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--text-muted)}.play__body{flex:1 1;display:flex;flex-direction:column;justify-content:center;gap:16px}.play__status{text-align:center;padding:28px 16px}.play__status h2{font-size:1.5rem}.play__footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid var(--border);font-weight:700;font-size:.9rem}.verdict{text-align:center;padding:28px 18px;border-radius:var(--radius-lg);font-weight:800}.verdict--good{background:rgba(47,208,127,.16);border:1px solid rgba(47,208,127,.5)}.verdict--bad{background:rgba(255,84,112,.14);border:1px solid rgba(255,84,112,.45)}.verdict__points{font-size:2.4rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.code-input{font-size:2rem;letter-spacing:.35em;text-align:center;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.list{display:flex;flex-direction:column;gap:12px}.list__item{display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.list__item h3{margin:0;font-size:1rem}.empty{padding:40px 20px;text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}.drag-handle,.empty{color:var(--text-muted)}.drag-handle{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qr{background:#fff;padding:12px;border-radius:16px;line-height:0}.qr img{display:block;width:100%;height:auto;max-width:260px}.center{text-align:center}.nowrap{white-space:nowrap}.hide-sm{display:none}@media (min-width:720px){.hide-sm{display:initial}}@keyframes vraag-in{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}@keyframes optie-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes uitslag-in{0%{opacity:0;transform:scale(.94)}60%{transform:scale(1.02)}to{opacity:1;transform:none}}.anim-vraag{animation:vraag-in .45s cubic-bezier(.22,1,.36,1) both}.anim-uitslag{animation:uitslag-in .5s cubic-bezier(.22,1,.36,1) both}.anim-optie{animation:optie-in .4s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--i, 0) * 70ms)}.podium__step{opacity:0;transform:translateY(28px);transition:opacity .5s ease,transform .6s cubic-bezier(.22,1,.36,1)}.podium__step--in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.anim-optie,.anim-uitslag,.anim-vraag{animation:none}.podium__step{opacity:1;transform:none;transition:none}}.hostnav{gap:18px;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid var(--border)}.hostnav,.hostnav__menu{display:flex;align-items:center;flex-wrap:wrap}.hostnav__menu{gap:4px}.hostnav__link{padding:8px 14px;border-radius:10px;color:var(--text-muted);text-decoration:none;font-weight:600;font-size:.95rem;white-space:nowrap}.hostnav__link--active,.hostnav__link:hover{color:var(--text);background:var(--bg-elevated)}.hostnav__link--active{box-shadow:inset 0 0 0 1px var(--border)}.stats{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:32px}.stat{padding:20px;border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px solid var(--border)}.stat__value{font-size:2.4rem;font-weight:900;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.03em}.stat__label{color:var(--text-muted);font-size:.9rem}.stat--top .stat__value{background:linear-gradient(120deg,#fff,#b9a6ff);-webkit-background-clip:text;background-clip:text;color:transparent}