html.play body{overflow:hidden}html.obs body{background:0 0}.obs-canvas{--camera-w:640px;--camera-h:360px;--score-text:160px;--label-text:48px;--score-gap:40px;--card-title:48px;--country-text:48px;--option-text:38px;--option-height:72px;--status-text:40px;--flag-basis:290px;--card-gap:40px;--panel:#0f172a;--card:#1e293b;--option:#334155;--option-hover:#475569;--text:#f8fafc;--p1:#2563eb;--p2:#f59e0b;--p3:#7c3aed;--p4:#10b981;--p5:#ec4899;--correct:#15803d;--wrong:#b91c1c;width:calc(100vw / var(--scale,1));height:calc(100vh / var(--scale,1));transform:scale(var(--scale,1));transform-origin:0 0;grid-template-columns:var(--camera-w) 1fr;grid-template-rows:var(--camera-h) minmax(0, 1fr);color:var(--text);grid-template-areas:"camera game""score game";font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:normal;display:grid;position:fixed;top:0;left:0}html:not(.dark) .obs-canvas{--panel:#e7e5e4;--card:#fafaf9;--option:#fff;--option-hover:#e7e5e4;--text:#1c1917;--p1:#1d4ed8;--p2:#b45309;--p3:#6d28d9;--p4:#047857;--p5:#be185d;--correct:#15803d;--wrong:#b91c1c}html:not(.dark) .obs-canvas .options button{box-shadow:inset 0 0 0 2px #d6d3d1}.obs-canvas[data-players="3"]{--score-text:120px;--label-text:40px;--score-gap:28px;--card-title:40px;--country-text:40px;--option-text:30px;--option-height:60px;--status-text:32px;--flag-basis:220px;--card-gap:28px}.obs-canvas[data-players="4"]{--score-text:96px;--label-text:36px;--score-gap:20px;--card-title:34px;--country-text:34px;--option-text:25px;--option-height:52px;--status-text:28px;--flag-basis:180px;--card-gap:22px}.obs-canvas[data-players="5"]{--score-text:80px;--label-text:32px;--score-gap:16px;--card-title:30px;--country-text:28px;--option-text:21px;--option-height:46px;--status-text:24px;--flag-basis:150px;--card-gap:18px}.obs-canvas.standard{background:var(--panel);grid-template:"score game"minmax(0,1fr)/480px 1fr}.obs-canvas button{font:inherit;color:inherit;cursor:pointer}.obs-canvas button:focus-visible,.obs-canvas a:focus-visible{outline:6px solid var(--text);outline-offset:4px}.obs-canvas .p1{--player:var(--p1);--on-player:#fff}.obs-canvas .p2{--player:var(--p2);--on-player:var(--panel)}.obs-canvas .p3{--player:var(--p3);--on-player:#fff}.obs-canvas .p4{--player:var(--p4);--on-player:var(--panel)}.obs-canvas .p5{--player:var(--p5);--on-player:#fff}.obs-canvas .scoreboard{gap:var(--score-gap);background:var(--panel);min-height:0;box-shadow:2px 0 var(--panel);flex-direction:column;grid-area:score;padding:40px 48px;display:flex;position:relative;overflow:hidden}.obs-canvas .round{font-size:56px;font-weight:700}.obs-canvas .player{border-left:20px solid var(--player);padding-left:32px}.obs-canvas .label{font-size:var(--label-text);overflow-wrap:anywhere;font-weight:700}.obs-canvas .score{font-size:var(--score-text);font-variant-numeric:tabular-nums;font-weight:800;line-height:1}.obs-canvas .exit{opacity:.8;font-size:28px;text-decoration:underline;position:absolute;bottom:24px;left:48px}.obs-canvas .game,.obs-canvas .results{background:var(--panel);grid-area:game;padding:32px 40px}.obs-canvas .game{grid-template-columns:repeat(var(--players,2), minmax(0, 1fr));gap:24px var(--card-gap);grid-template-rows:minmax(0,1fr) 104px;display:grid}.obs-canvas .card{background:var(--card);border-radius:16px;flex-direction:column;gap:14px;min-height:0;padding:0 24px 24px;display:flex;overflow:hidden}.obs-canvas .card>*{flex-shrink:0}.obs-canvas .card h2{background:var(--player);color:var(--on-player);font-size:var(--card-title);overflow-wrap:anywhere;border-radius:16px 16px 0 0;margin:0 -24px;padding:8px 24px;font-weight:700}.obs-canvas .flag{flex:0 1 var(--flag-basis);aspect-ratio:4/3;outline:2px solid #ffffff59;min-height:80px;margin-inline:auto;display:block}.obs-canvas .country{font-size:var(--country-text);text-align:center;text-wrap:balance;overflow-wrap:anywhere;font-weight:700}.obs-canvas .options{gap:12px;display:grid}.obs-canvas .options button{min-height:var(--option-height);background:var(--option);font-size:var(--option-text);text-align:left;border:0;border-radius:12px;align-items:center;gap:16px;padding:8px 20px;font-weight:600;display:flex}.obs-canvas .options button:hover:enabled{background:var(--option-hover)}.obs-canvas .options button:disabled{cursor:default;opacity:.4}.obs-canvas .options button.correct{background:var(--correct);opacity:1}.obs-canvas .options button.wrong{background:var(--wrong);opacity:1}.obs-canvas .tag{margin-left:auto;font-size:36px}.obs-canvas .status{min-height:48px;font-size:var(--status-text);text-align:center;font-weight:700}.obs-canvas .next-row{grid-column:1/-1;justify-content:center;align-items:center;display:flex}.obs-canvas .next-row button,.obs-canvas .results button{background:var(--text);color:var(--panel);border:0;border-radius:16px;padding:16px 64px;font-size:44px;font-weight:700}.obs-canvas .results{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:48px;display:flex}.obs-canvas .results h2{font-size:120px;font-weight:700}.obs-canvas .results p{font-variant-numeric:tabular-nums;font-size:64px}.obs-canvas .results .mode-title{font-size:96px}.obs-canvas .modes,.obs-canvas .results .actions{gap:40px;display:flex}.obs-canvas .modes button{flex-direction:column;align-items:center;gap:12px;padding:40px 56px;display:flex}.obs-canvas .mode-name{font-size:80px}.obs-canvas .mode-detail,.obs-canvas .results .mode-note{font-size:40px;font-weight:600}.obs-canvas .results button.secondary{color:var(--text);box-shadow:inset 0 0 0 4px var(--text);background:0 0}.obs-canvas .setup{gap:24px}.obs-canvas .setup-group{flex-direction:column;align-items:center;gap:12px;display:flex}.obs-canvas .setup-label{opacity:.75;font-size:32px;font-weight:700}.obs-canvas .setup .mode-title{font-size:72px}.obs-canvas .setup .modes button{padding:16px 40px}.obs-canvas .setup .mode-name{font-size:44px}.obs-canvas .setup .mode-detail,.obs-canvas .setup .mode-note{font-size:26px}.obs-canvas .counts{gap:16px;display:flex}.obs-canvas .counts button{min-width:88px;padding:10px 20px;font-size:44px}.obs-canvas .setup [aria-pressed=true]{box-shadow:inset 0 0 0 6px var(--p1)}.obs-canvas .setup button:disabled{cursor:default;opacity:.35}.obs-canvas .names{flex-wrap:wrap;justify-content:center;gap:12px 20px;display:flex}.obs-canvas .name-field{text-align:left;flex-direction:column;gap:4px;font-size:26px;display:flex}.obs-canvas .name-field label{color:var(--player);font-weight:700}.obs-canvas .name-field input{border:4px solid var(--player);background:var(--card);width:300px;color:var(--text);font:inherit;border-radius:12px;padding:8px 14px;font-size:30px}.obs-canvas .name-field input:focus-visible{outline:6px solid var(--text);outline-offset:4px}.obs-canvas .name-error{color:#fca5a5;font-size:22px;font-weight:600}
