:root{color-scheme:dark;--bg: #0b1220;--bg-elevated: #141d33;--bg-card: #1a2540;--border: #2a3757;--text: #eef2ff;--text-dim: #9aa5c7;--accent: #f2b705;--accent-dim: #a67c00;--accent-tint: #3d3007;--team-a: #2f6fed;--team-a-dim: #1a3d85;--team-b: #e34848;--team-b-dim: #7a2020;--success: #2fbf71;--danger: #d6335f;--danger-text: #ff9fb6;--radius: 14px;--shadow: 0 8px 24px rgba(0, 0, 0, .35);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--fs-xs: .75rem;--fs-sm: .85rem;--fs-md: 1rem;--tap: 44px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(circle at 50% 0%,var(--bg-elevated),var(--bg) 60%);color:var(--text);font-family:Segoe UI,Tahoma,Noto Sans Arabic,Arial,sans-serif;direction:rtl;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;border-radius:10px;font-weight:600;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:filter .12s ease,transform 80ms ease,background-color .12s ease,border-color .12s ease}button:disabled{cursor:not-allowed;opacity:.5}@media (hover: hover){button:hover:not(:disabled),a.btn-primary:hover,a.btn-secondary:hover,a.btn-danger:hover{filter:brightness(1.14)}}button:active:not(:disabled){transform:translateY(1px);filter:brightness(.94)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}input,select{font-family:inherit;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:10px 12px;font-size:1rem}a{color:var(--accent)}.page{min-height:100%;padding:24px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5)}.card-title{margin:0 0 var(--space-3);font-size:var(--fs-md);font-weight:700}.btn-primary{background:var(--accent);color:#1a1400;padding:12px 20px;font-size:1rem}.btn-secondary{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);padding:12px 20px}.btn-danger{background:var(--danger);color:#fff;padding:10px 16px}.btn-quiet{background:transparent;border:1px solid var(--border);color:var(--text-dim);padding:9px 14px;font-size:var(--fs-sm)}.btn-quiet-danger{background:transparent;border:1px solid var(--danger);color:var(--danger-text);padding:9px 14px;font-size:var(--fs-sm)}.icon-btn{width:var(--tap);height:var(--tap);display:inline-flex;align-items:center;justify-content:center;flex:none;background:transparent;border:1px solid transparent;color:var(--text-dim);border-radius:10px;font-size:1rem}@media (hover: hover){.icon-btn:hover:not(:disabled){border-color:var(--danger);color:var(--danger-text);filter:none}}.center-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.spinner{width:34px;height:34px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation-duration:2s}button{transition:none}button:active:not(:disabled){transform:none}}.hexboard{display:block;width:100%;height:auto;max-height:78vh}.hexboard--host{max-height:60vh}.hex--selectable{cursor:pointer}@media (hover: hover){.hex--selectable:hover polygon{filter:brightness(1.35)}}.hex--selectable:focus-visible{outline:none}.hex--selectable:focus-visible polygon{stroke:var(--accent);stroke-width:5}.host-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--space-5);align-items:start}.host-side{display:grid;gap:var(--space-4);align-content:start}.display-layout{display:grid;grid-template-columns:1fr 2fr 1fr;gap:20px;align-items:start}.display-team-panel{text-align:right}.room-card{display:flex;justify-content:space-between;align-items:center;gap:16px}.host-header{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4)}.host-header-main{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;flex:1 1 auto;min-width:0}.host-title{margin:0;font-size:clamp(1.15rem,4.6vw,1.7rem);line-height:1.2;overflow-wrap:anywhere}.pin-chip{display:inline-flex;align-items:baseline;gap:var(--space-2);background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;padding:4px 12px}.pin-chip-label{font-size:var(--fs-xs);color:var(--text-dim)}.pin-chip-value{font-size:1.1rem;font-weight:700;letter-spacing:.1em;font-variant-numeric:tabular-nums;direction:ltr}.host-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.score-chips{display:flex;gap:var(--space-2);flex-wrap:wrap}.score-chip{display:inline-flex;align-items:center;gap:var(--space-2);border-radius:999px;padding:4px 12px;font-size:var(--fs-sm);font-weight:700;border:1px solid transparent}.score-chip--a{background:var(--team-a-dim);border-color:var(--team-a);color:#dce8ff}.score-chip--b{background:var(--team-b-dim);border-color:var(--team-b);color:#ffe2e2}.score-chip-value{font-variant-numeric:tabular-nums;font-size:var(--fs-md)}.join-panel{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.join-panel-text{flex:1 1 200px;min-width:0}.host-board-head{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.host-board-card--correcting{border-color:var(--accent);box-shadow:0 0 0 2px #f2b70559,var(--shadow)}.correction-badge{display:inline-flex;align-items:center;gap:var(--space-1);background:var(--accent);color:#1a1400;border-radius:999px;padding:4px 10px;font-size:var(--fs-xs);font-weight:700}.correction-hint{flex-basis:100%;color:var(--text-dim);font-size:var(--fs-sm);line-height:1.5;margin:0}.question-block{display:grid;gap:var(--space-3);align-content:start}.question-card{border-inline-start:4px solid transparent}.question-card--a{border-inline-start-color:var(--team-a)}.question-card--b{border-inline-start-color:var(--team-b)}.q-letter{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-size:var(--fs-sm);font-weight:600;color:var(--text-dim)}.q-letter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 8px;border-radius:10px;background:var(--accent);color:#1a1400;font-size:1.4rem;font-weight:800}.q-text{font-size:clamp(1.3rem,2.5vw + .8rem,1.6rem);line-height:1.55;font-weight:600;margin:0 0 var(--space-3)}.q-answer{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;background:#2fbf711f;border:1px solid rgba(47,191,113,.45);border-radius:12px;padding:10px 12px;color:var(--success);font-size:1.05rem;font-weight:700}.q-answer-label{background:var(--success);color:#06281a;border-radius:999px;padding:2px 10px;font-size:var(--fs-xs);font-weight:700}.q-note{margin:var(--space-3) 0 0;color:var(--accent);font-weight:600}.q-empty{color:var(--danger-text);font-weight:600;margin:0}.buzz-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;border-radius:12px;padding:12px 14px;margin:var(--space-3) 0 0;color:#fff}.buzz-banner--a{background:var(--team-a)}.buzz-banner--b{background:var(--team-b)}.buzz-label{display:block;font-size:var(--fs-xs);opacity:.85}.buzz-name{font-size:1.5rem;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.buzz-team{font-size:var(--fs-sm);opacity:.9}.btn-release{background:#0000004d;border:1px solid rgba(255,255,255,.45);color:#fff;padding:10px 14px;font-size:var(--fs-sm);min-height:var(--tap)}.judge-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.judge-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:56px;padding:10px 12px;border-radius:12px;font-size:var(--fs-md);line-height:1.25;text-align:center}.judge-btn--a{background:var(--team-a);color:#fff}.judge-btn--b{background:var(--team-b);color:#fff}.judge-btn--wrong{grid-column:1 / -1;min-height:52px;background:transparent;border:2px solid var(--danger);color:var(--danger-text)}.judge-glyph{font-size:1.15rem;line-height:1}.judge-utils{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin-top:var(--space-3)}.judge-utils .btn-secondary{padding:10px 12px;font-size:var(--fs-sm);font-weight:500;min-height:var(--tap)}.judge-spacer{display:none}.player-group+.player-group{margin-top:var(--space-3)}.player-group-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:700;margin-bottom:var(--space-1)}.player-row{display:flex;align-items:center;gap:var(--space-2)}.player-dot{width:10px;height:10px;border-radius:50%;flex:none}.player-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-status{font-size:var(--fs-xs);color:var(--text-dim);flex:none}.player-row--offline .player-name{color:var(--text-dim)}.winner-banner{text-align:center;margin-bottom:var(--space-4);border-width:2px}.winner-banner--a{background:var(--team-a-dim);border-color:var(--team-a)}.winner-banner--b{background:var(--team-b-dim);border-color:var(--team-b)}.winner-banner h2{margin:0;font-size:clamp(1.3rem,5vw,2rem)}.host-toast{position:fixed;inset-inline:12px;bottom:12px;z-index:60;max-width:520px;margin-inline:auto;background:var(--bg-elevated);border:1px solid var(--danger);color:var(--danger-text);border-radius:12px;padding:12px 14px;box-shadow:var(--shadow);text-align:center;font-weight:600;cursor:pointer}.host-empty{color:var(--text-dim);text-align:center;padding:28px var(--space-5);line-height:1.6}.home-shell{width:100%;max-width:820px;display:grid;gap:var(--space-4)}.home-header{text-align:center}.home-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:var(--space-4);align-items:start}.home-field{display:block;margin-bottom:var(--space-3);font-size:var(--fs-sm);color:var(--text-dim)}.home-field input{width:100%;margin-top:6px}.home-footer{display:flex;justify-content:center;align-items:center;gap:var(--space-4);flex-wrap:wrap;font-size:var(--fs-sm);color:var(--text-dim)}@media (max-width: 860px){.home-grid,.host-layout{grid-template-columns:1fr}.host-side{display:contents}.host-area-question{order:1}.host-board-card{order:2}.host-area-players{order:3}.host-area-manual{order:4}.display-layout{grid-template-columns:1fr}}@media (max-width: 640px){.page,.card{padding:14px}.display-team-panel{text-align:center}.room-card{flex-direction:column;align-items:stretch;text-align:center}input,select{font-size:16px}.btn-primary,.btn-secondary,.btn-danger{padding:12px 16px}.hexboard--host{max-height:42vh}.judge-sticky{position:fixed;inset-inline:0;bottom:0;z-index:40;background:var(--bg-elevated);border-top:1px solid var(--border);padding:10px 12px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -8px 24px #00000080}.judge-spacer{display:block;height:150px}.host-toast--raised{bottom:calc(160px + env(safe-area-inset-bottom))}}
