:root{font-family:Inter,Segoe UI,system-ui,sans-serif;line-height:1.5;font-weight:400;color:#0f172a;background-color:#f1f5f9;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh}h1,h2,h3{font-weight:700;margin:0;color:#111827}p{margin:0}*{box-sizing:border-box}.app{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;padding:3rem 1rem;background:radial-gradient(circle at top,#fef3c7,#f8fafc 60%)}.card{max-width:540px;width:100%;background:#fff;border-radius:24px;padding:2.5rem;box-shadow:0 24px 60px -24px #0f172a59;text-align:center}.title{margin:0 0 1rem;font-size:clamp(2rem,2.5vw + 1rem,2.75rem);color:#1f2937}.subtitle{margin:0 0 2rem;color:#4b5563;font-size:1.05rem}.button-row{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}button{border:none;border-radius:999px;padding:.85rem 1.75rem;font-size:1rem;font-weight:600;cursor:pointer;background:#0f172a;color:#fff;transition:transform .15s ease,box-shadow .15s ease}button:hover{transform:translateY(-2px);box-shadow:0 12px 24px -12px #0f172a73}button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}button.primary{background:#2563eb}button.danger{background:#dc2626}.link-button{background:none;color:#2563eb;padding:0;font-weight:500}.dashboard{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:1.5rem;align-items:start;max-width:1100px;width:100%}.panel{background:#fff;border-radius:20px;padding:1.75rem;box-shadow:0 18px 48px -22px #0f172a59;width:100%}.panel--error{border-left:4px solid #dc2626;color:#b91c1c}.status{background:#eff6ff;color:#1d4ed8}.session-header{display:flex;flex-direction:column;gap:1rem}.auto-run{display:flex;flex-direction:column;gap:.75rem}.auto-run__toggle{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;color:#1f2937}.auto-run__timing{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.auto-run__timing label{display:grid;gap:.35rem;text-align:left;color:#334155}.auto-run__countdown{margin:0;color:#2563eb;font-weight:500}.session-header h2{margin:0}.code{font-size:2.75rem;letter-spacing:.35rem;margin:0;color:#1d4ed8;font-weight:700}.controls{display:flex;flex-wrap:wrap;gap:.75rem}.question{display:flex;flex-direction:column;gap:1rem}.question__meta{display:flex;justify-content:space-between;font-size:.95rem;color:#475569}.question__reference{font-size:.9rem;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.options{display:flex;flex-direction:column;gap:.75rem}.option-bar{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr) auto;gap:.75rem;align-items:center}.option-bar__label{font-weight:600;color:#1f2937}.option-bar__track{width:100%;height:12px;background:#e2e8f0;border-radius:999px;overflow:hidden}.option-bar__fill{height:100%;background:linear-gradient(90deg,#2563eb,#38bdf8);border-radius:999px;transition:width .3s ease}.option-bar__value{font-size:.9rem;color:#475569}.answer-callout{padding:1.1rem 1.25rem;border-radius:16px;background:#fef9c3;border:1px solid #facc15}.scoreboard{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.scoreboard__item{display:flex;justify-content:space-between;align-items:center;padding:.65rem .85rem;border-radius:12px;background:#f8fafc;font-weight:500}.scoreboard__item--me{background:#dbeafe}.scoreboard__score{font-variant-numeric:tabular-nums;color:#1d4ed8}.participant{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:1.5rem;max-width:1100px;width:100%}.participant__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.join-form{display:flex;flex-direction:column;gap:1rem}.join-form label{display:grid;gap:.45rem;text-align:left;color:#334155}input{padding:.75rem 1rem;border-radius:12px;border:1px solid #cbd5f5;font-size:1rem;font-family:inherit}input:focus{outline:2px solid #2563eb;border-color:transparent}.answer-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.answer{display:flex;align-items:center;gap:1rem;background:#f8fafc;border-radius:16px;padding:1rem 1.25rem;justify-content:flex-start;text-align:left;color:#0f172a}.answer__label{display:inline-flex;width:36px;height:36px;border-radius:50%;align-items:center;justify-content:center;background:#e2e8f0;font-weight:700}.answer--selected{border:2px solid #2563eb;background:#dbeafe}.answer--correct{border:2px solid #16a34a;background:#dcfce7}.status-text{margin-top:1rem;color:#2563eb}.error-text{color:#dc2626;margin:0}@media (max-width: 960px){.dashboard,.participant{grid-template-columns:1fr}.controls{flex-direction:column;align-items:stretch}}@media (max-width: 640px){.app{padding:2rem .75rem}.card{padding:2rem 1.5rem}.panel{padding:1.5rem}}#root{min-height:100vh;width:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
