:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#07111f;color:#eef5ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #07111f;--bg-soft: #0d1b2f;--panel: rgba(16, 32, 54, .92);--panel-strong: #132845;--field: rgba(35, 50, 73, .92);--border: rgba(162, 190, 225, .22);--text: #eef5ff;--muted: #aebdd1;--blue: #4aa3ff;--blue-deep: #1e67b5;--gold: #f4c95d;--gold-deep: #a77a19;--danger: #f97066;--green: #56d39b;--shadow: 0 24px 80px rgba(0, 0, 0, .35)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;background:linear-gradient(115deg,rgba(86,211,155,.1) 0 14%,transparent 14% 100%),linear-gradient(145deg,#07111f,#11213a,#151323)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}table{width:100%;border-collapse:collapse}th,td{padding:.8rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{color:var(--gold);font-size:.82rem;text-transform:uppercase}.appShell{width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:clamp(1rem,2vw,2rem);overflow-x:clip}.topBar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:clamp(1rem,3vw,2.4rem)}.brandMark{display:flex;align-items:center;gap:.7rem;color:var(--gold);font-size:clamp(1.35rem,2.4vw,2rem);font-weight:900}.brandLogo{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.22))}.demoBadge,.notice{padding:.8rem 1rem;border:1px solid rgba(244,201,93,.42);border-radius:8px;background:#f4c95d1f;color:#ffe9a6;line-height:1.4}.debugPanel{border:1px solid rgba(74,163,255,.26);border-radius:8px;background:#4aa3ff14;padding:.85rem;color:var(--muted)}.debugGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.debugGrid div{min-width:0;display:grid;gap:.2rem;padding:.55rem;border-radius:8px;background:#ffffff0f}.debugGrid span{color:var(--muted);font-size:.78rem;font-weight:800}.debugGrid strong{color:var(--text);font-size:.86rem;overflow-wrap:anywhere}.debugWarning{margin:.7rem 0 0;color:#ffe9a6;line-height:1.35}.notice--warning{border-color:#f9706673;background:#f9706624;color:#ffd1cc}.appStage{min-height:calc(100vh - 7rem)}.panel{min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);padding:clamp(1rem,2vw,1.6rem);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.screenStack{display:grid;gap:1rem;min-width:0}.screenHeader{display:flex;align-items:center;gap:1rem;min-width:0}.screenHeader>div{min-width:0}.screenHeader h1,.panel h1,.startHero h1,.questionCard h1{margin:0;overflow-wrap:anywhere}.screenHeader h1{font-size:clamp(2rem,5vw,4.5rem)}.eyebrow{margin:0 0 .35rem;color:var(--gold);font-size:.84rem;font-weight:800;text-transform:uppercase}.muted{color:var(--muted)}.button,.iconButton{min-height:48px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:800}.button{padding:.85rem 1.15rem;color:var(--text);text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 14px 34px #00000038}.button:focus-visible,.iconButton:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(244,201,93,.56);outline-offset:3px}.button--primary{background:linear-gradient(135deg,var(--blue),var(--blue-deep))}.button--secondary{border:1px solid var(--border);background:#ffffff12}.button--danger{background:#f970662e;color:#ffd5d1}.button--xl{width:100%;min-height:64px;font-size:1.1rem}.buttonRow{display:flex;flex-wrap:wrap;gap:.75rem}.iconButton{width:52px;height:52px;color:var(--text);background:#ffffff14}.startGrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(1rem,4vw,2rem);align-items:stretch}.startHero{min-height:clamp(420px,65vh,680px);border:1px solid var(--border);border-radius:8px;background:linear-gradient(145deg,#132845e0,#0f1323f5),repeating-linear-gradient(115deg,rgba(244,201,93,.1) 0,rgba(244,201,93,.1) 1px,transparent 1px,transparent 24px);padding:clamp(1.5rem,5vw,4rem);display:flex;flex-direction:column;justify-content:center;box-shadow:var(--shadow)}.startHero__mark{width:clamp(96px,18vw,152px);height:clamp(96px,18vw,152px);display:flex;align-items:center;justify-content:center;margin-bottom:clamp(1.1rem,3vw,1.8rem);border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#ffffffe6;box-shadow:0 22px 44px #00000038}.startHero__logo{width:78%;height:78%;object-fit:contain}.startHero h1{font-size:clamp(3rem,10vw,8rem);line-height:.95}.startHero p{max-width:740px;color:var(--muted);font-size:clamp(1.05rem,2vw,1.5rem);line-height:1.5}.startActions{display:grid;align-content:center;gap:1rem}.startModeButton{justify-content:flex-start;min-height:74px;padding:.95rem 1rem}.startModeButton svg{flex:0 0 auto;color:var(--gold)}.startModeButton span{min-width:0;display:grid;gap:.18rem}.startModeButton strong,.startModeButton small{overflow-wrap:anywhere}.startModeButton strong{color:var(--text);font-size:1.02rem}.startModeButton small{color:var(--muted);font-size:.86rem;font-weight:750;line-height:1.25}.button--primary.startModeButton svg{color:#fff}.createLayout{display:grid;grid-template-columns:minmax(280px,430px) minmax(0,1fr);gap:1rem;align-items:start;min-width:0}.formGrid{display:grid;gap:1rem;min-width:0}label{display:grid;gap:.42rem;color:var(--muted);font-weight:700}input,select{min-height:48px;min-width:0;width:100%;border:1px solid var(--border);border-radius:8px;background:var(--field);color:var(--text);padding:.75rem .9rem}input::placeholder{color:#aebdd1b8}select option{background:#102036}.switchRow{grid-template-columns:24px 1fr;align-items:center}.switchRow input{min-height:24px;width:24px}.customTopicField{padding:.85rem;border:1px solid rgba(244,201,93,.34);border-radius:8px;background:linear-gradient(135deg,#f4c95d1a,#56d39b14),#ffffff0b}.customTopicField.is-active{border-color:#56d39b9e;box-shadow:0 16px 38px #56d39b1c}.fieldTitleRow{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.fieldTitleRow small{flex:0 0 auto;padding:.25rem .45rem;border-radius:8px;background:#f4c95d29;color:var(--gold);font-size:.75rem;font-weight:900}.customTopicInputShell{min-height:52px;display:flex;align-items:center;gap:.6rem;border:1px solid rgba(244,201,93,.42);border-radius:8px;background:#07111f5c;padding:0 .85rem;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.customTopicInputShell:focus-within{border-color:#56d39bbd;background:#07111f80;box-shadow:0 0 0 3px #56d39b29}.customTopicInputShell svg{flex:0 0 auto;color:var(--gold)}.customTopicInputShell input{min-height:50px;border:0;background:transparent;padding:0}.customTopicInputShell input:focus-visible{outline:0}.fieldHint{color:var(--muted);font-size:.82rem;line-height:1.35}.segmentedControl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;padding:.35rem;border:1px solid var(--border);border-radius:8px;background:#ffffff0d}.segmentedControl button{min-height:56px;border:0;border-radius:8px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-weight:900}.segmentedControl button.is-active{background:#f4c95d2e;color:var(--gold)}.localSetupGrid{display:grid;grid-template-columns:minmax(280px,440px) minmax(0,1fr);gap:1rem;align-items:start;min-width:0}.localModeInfo{min-height:100%;display:grid;align-content:start;gap:.8rem;background:linear-gradient(145deg,#12233cf2,#0b1729f5),repeating-linear-gradient(135deg,rgba(74,163,255,.08) 0,rgba(74,163,255,.08) 1px,transparent 1px,transparent 28px)}.localModeInfo h2{margin:0;font-size:clamp(1.8rem,4vw,3.5rem)}.modeHintList{display:grid;gap:.55rem}.modeHintList span{min-height:48px;display:flex;align-items:center;border-radius:8px;background:#ffffff12;padding:.7rem .9rem;color:var(--muted);font-weight:800}.tableWrap{overflow-x:auto}.validationList{margin-top:1rem;color:var(--muted)}.validationList ul{margin:0;padding-left:1.2rem}.lobbyGrid,.revealGrid,.endGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:1rem}.pinPanel{display:grid;gap:1rem}.pinCode{width:100%;padding:clamp(1.3rem,5vw,3rem);border-radius:8px;background:#eef5ff;color:#07111f;font-size:clamp(3.3rem,13vw,9rem);line-height:1;font-weight:950;text-align:center}.metaGrid{display:grid;grid-template-columns:auto 1fr;gap:.55rem 1rem}.metaGrid span{color:var(--muted)}.sectionTitle{display:flex;align-items:center;justify-content:space-between;gap:1rem}.sectionTitle span{min-width:44px;min-height:44px;border-radius:8px;display:grid;place-items:center;background:#4aa3ff2e;color:var(--blue);font-weight:900}.playerList{display:flex;flex-wrap:wrap;gap:.6rem}.playerChip{min-height:48px;display:inline-flex;align-items:center;padding:.6rem .85rem;border-radius:8px;background:#ffffff14;font-weight:800}.questionScreen{display:grid;gap:1rem}.questionTop{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--muted);font-weight:900;padding:.2rem .2rem 0}.questionTop strong{color:var(--gold);font-size:clamp(1.5rem,4vw,3rem)}.timeBar{height:18px;overflow:hidden;border-radius:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 7px #00000059}.timeBar--compact{height:12px}.timeBar span{display:block;height:100%;border-radius:inherit;transition:width .16s linear,background-color .18s ease,box-shadow .18s ease}.timeBar--green span{background:#38d878;box-shadow:0 0 18px #38d87873}.timeBar--yellow span{background:#f4d35e;box-shadow:0 0 18px #f4d35e6b}.timeBar--orange span{background:#f59f3a;box-shadow:0 0 18px #f59f3a6b}.timeBar--red span{background:#ef4444;box-shadow:0 0 22px #ef444480}.questionCard{min-height:clamp(160px,24vh,260px);border-radius:8px;border:1px solid var(--border);background:linear-gradient(135deg,rgba(74,163,255,.08),transparent 42%),var(--panel-strong);padding:clamp(1rem,3vw,2.4rem);display:grid;align-content:center;box-shadow:0 20px 70px #00000040}.questionCard h1{font-size:clamp(1.65rem,4.6vw,4.8rem);line-height:1.1}.answerGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.answerButton{min-height:clamp(84px,16vh,150px);border:1px solid rgba(255,255,255,.12);border-radius:8px;background:linear-gradient(135deg,#ffffff14,#ffffff0a),#ffffff0f;color:var(--text);display:flex;align-items:center;gap:.9rem;padding:clamp(.8rem,2vw,1.25rem);text-align:left;font-size:clamp(1rem,2.1vw,1.55rem);font-weight:850;overflow-wrap:anywhere;transition:transform .14s ease,border-color .14s ease,background-color .14s ease}.answerButton:not(:disabled):active,.localAnswerButton:not(:disabled):active{transform:scale(.985)}.answerButton span{flex:0 0 auto;width:42px;height:42px;border-radius:8px;display:grid;place-items:center;background:#f4c95d2b;color:var(--gold)}.answerButton--selected{border-color:var(--gold);background:#f4c95d38}.answerButton--locked{cursor:default}.answerGrid--host .answerButton{opacity:.8}.statusPanel{font-size:clamp(1rem,2vw,1.4rem);text-align:center}.revealAnswer h1{color:var(--gold);font-size:clamp(2rem,6vw,5.4rem);line-height:1}.leaderboardList{display:grid;gap:.55rem}.leaderboardRow{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:.7rem;align-items:center;min-height:54px;padding:.65rem;border-radius:8px;background:#ffffff12}.leaderboardRow span{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;background:#4aa3ff2e;color:var(--blue);font-weight:900}.leaderboardRow strong{overflow-wrap:anywhere}.leaderboardRow em{color:var(--gold);font-style:normal;font-weight:900;white-space:nowrap}.hallOfFamePanel{display:grid;gap:.85rem;align-content:start}.hallOfFameList{display:grid;gap:.55rem}.hallOfFameRow{min-height:58px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:.7rem;align-items:center;padding:.65rem;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:linear-gradient(135deg,rgba(244,201,93,.07),transparent 38%),#ffffff12}.hallOfFameRow>span{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;background:#f4c95d2e;color:var(--gold);font-weight:950}.hallOfFameRow div{min-width:0;display:grid;gap:.18rem}.hallOfFameRow strong,.hallOfFameRow small{overflow-wrap:anywhere}.hallOfFameRow small{color:var(--muted);font-weight:750;line-height:1.35}.hallOfFameRow em{color:var(--gold);font-style:normal;font-weight:950;white-space:nowrap}.answerStatus{width:fit-content;margin-top:1rem;padding:.55rem .8rem;border-radius:8px;background:#f970662e;color:#ffd5d1;font-weight:900}.answerStatus--right{background:#56d39b2e;color:#baf5d6}.scoreLine{font-size:1.35rem;font-weight:900}.gameOverHero{text-align:center}.gameOverHero h1{font-size:clamp(2.5rem,7vw,6rem)}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:end}.podiumPlace{min-height:160px;border-radius:8px;border:1px solid var(--border);background:#ffffff14;padding:1rem;display:grid;align-content:center;gap:.4rem;text-align:center}.podiumPlace--1{min-height:220px;background:#f4c95d29;border-color:#f4c95d73}.podiumPlace strong{font-size:clamp(1.25rem,3vw,2rem)}.podiumPlace em{color:var(--gold);font-style:normal;font-weight:900}.statsTable,.hardQuestionList{display:grid;gap:.65rem}.statsRow{display:grid;grid-template-columns:minmax(120px,1.2fr) repeat(5,minmax(88px,1fr));gap:.6rem;align-items:center;padding:.7rem;border-radius:8px;background:#ffffff12}.hardQuestionList div{padding:.8rem;border-radius:8px;background:#ffffff12}.hardQuestionList p{margin-bottom:0;color:var(--muted)}.localGameShell{min-height:100vh;padding:clamp(.8rem,2vw,1.4rem);background:linear-gradient(140deg,#07111ff5,#0c1c32fa),var(--bg);display:grid;gap:.85rem;align-content:start}.localGameShell--results{grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);align-items:start}.localGameTop{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:1rem;align-items:center}.localGameTop h1{margin:0;font-size:clamp(1.5rem,4vw,3rem)}.localGameTop>strong{color:var(--gold);font-size:clamp(1.5rem,4vw,3.2rem)}.localSoloGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,380px);gap:1rem;align-items:stretch}.localQuestionPanel{display:grid;gap:1rem;background:linear-gradient(135deg,rgba(74,163,255,.09),transparent 40%),var(--panel)}.localQuestionPanel h2{margin:0;font-size:clamp(1.7rem,4.2vw,4.4rem);line-height:1.1}.localAnswerGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.localAnswerButton{min-height:clamp(74px,14vh,132px);border:1px solid var(--border);border-radius:8px;background:linear-gradient(135deg,#ffffff14,#ffffff0a),#ffffff0f;color:var(--text);display:flex;align-items:center;gap:.75rem;padding:.8rem;text-align:left;font-size:clamp(.95rem,2vw,1.35rem);font-weight:850;overflow-wrap:anywhere;transition:transform .14s ease,border-color .14s ease,background-color .14s ease}.localAnswerButton span{flex:0 0 auto;width:40px;height:40px;border-radius:8px;display:grid;place-items:center;background:#4aa3ff33;color:var(--blue);font-weight:950}.localAnswerButton.is-selected{border-color:var(--gold);background:#f4c95d29}.localAnswerButton.is-correct{border-color:#56d39bcc;background:#56d39b2b}.localAnswerButton.is-wrong{border-color:#f97066cc;background:#f9706629}.localScorePanel{display:grid;gap:.75rem;align-content:start}.localScoreCard{min-height:96px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem 1rem;align-items:center;border-radius:8px;background:#ffffff12;padding:1rem}.localScoreCard span{color:var(--muted);font-weight:900}.localScoreCard strong{color:var(--gold);font-size:2.4rem}.localScoreCard em{grid-column:1 / -1;color:var(--blue);font-style:normal;font-weight:900}.localReveal{border-top:1px solid var(--border);padding-top:1rem}.localReveal h2{color:var(--gold)}.localResultHero{display:grid;gap:1rem}.localResultHero h1{margin:0;font-size:clamp(2.4rem,7vw,5rem)}.localRanking{display:grid;gap:.55rem}.duelGame{height:100vh;overflow:hidden;background:#07111f;display:grid;grid-template-rows:1fr auto 1fr}.duelPanel{min-height:0;display:grid;padding:clamp(.45rem,1.2vw,.8rem);background:radial-gradient(circle at 50% 0%,rgba(244,201,93,.08),transparent 38%),repeating-linear-gradient(115deg,rgba(74,163,255,.06) 0,rgba(74,163,255,.06) 1px,transparent 1px,transparent 22px),var(--panel-strong)}.duelPanel--north{border-bottom:1px solid rgba(244,201,93,.35)}.duelPanel--north .duelPanel__inner{transform:rotate(180deg)}.duelPanel__inner{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,.64fr) minmax(0,1fr);gap:clamp(.45rem,1.2vw,.8rem)}.duelPlayerBar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.75rem;align-items:center;color:var(--muted);font-weight:900}.duelPlayerBar strong{color:var(--gold);font-size:clamp(1.05rem,2.4vw,1.8rem)}.duelPlayerBar em{color:var(--blue);font-style:normal}.duelPanel h1{margin:0;align-self:center;text-align:center;font-size:clamp(1.15rem,3.4vw,2.8rem);line-height:1.08;overflow-wrap:anywhere}.duelPanel .localAnswerGrid{min-height:0}.duelPanel .localAnswerButton{min-height:0;height:100%;padding:clamp(.45rem,1.2vw,.8rem);font-size:clamp(.78rem,2vw,1.18rem)}.duelDivider{min-height:58px;display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.35rem clamp(.6rem,2vw,1rem);background:#07111f;border-block:1px solid rgba(244,201,93,.35);color:var(--gold);text-align:center;font-weight:950;box-shadow:0 0 34px #00000059}.duelDivider .button{min-height:44px;padding-inline:1rem}.duelDivider>span{color:var(--blue);font-size:1.25rem}.duelRevealBadge{position:fixed;left:50%;top:50%;width:min(560px,calc(100vw - 2rem));transform:translate(-50%,-50%);z-index:5;border:1px solid rgba(244,201,93,.45);border-radius:8px;background:#07111ff5;box-shadow:var(--shadow);padding:1rem;text-align:center}.duelRevealBadge strong{display:block;color:var(--gold);font-size:clamp(1.4rem,4vw,2.6rem);margin-bottom:.45rem}.duelRevealBadge span{color:var(--muted)}.joinScreen,.waitingScreen,.loadingScreen,.countdownScreen{min-height:calc(100vh - 9rem);display:grid;place-items:center}.joinForm{width:min(520px,100%);display:grid;gap:1rem}.joinForm h1{font-size:clamp(2.2rem,7vw,4.8rem)}.waitingScreen .panel{width:min(620px,100%);text-align:center}.waitingPulse{width:74px;height:74px;margin:1rem auto 0;border-radius:50%;border:6px solid rgba(74,163,255,.22);border-top-color:var(--blue);animation:spin 1.2s linear infinite}.countdownNumber{color:var(--gold);font-size:clamp(7rem,26vw,18rem);font-weight:950;line-height:.95;animation:pop .5s ease-out}.errorBox{width:min(760px,100%);margin:clamp(4rem,12vh,9rem) auto;border:1px solid rgba(249,112,102,.45);border-radius:8px;background:#f970661f;padding:1.25rem;display:flex;gap:1rem}.errorBox__icon{color:var(--danger);padding-top:.25rem}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pop{0%{transform:scale(.92);opacity:.4}to{transform:scale(1);opacity:1}}@media(max-width:960px){.startGrid,.createLayout,.localSetupGrid,.lobbyGrid,.revealGrid,.endGrid,.localSoloGrid,.localGameShell--results{grid-template-columns:1fr}.startHero{min-height:360px}.topBar{align-items:flex-start;flex-direction:column}.statsRow{grid-template-columns:1fr 1fr}}@media(max-width:680px){.appShell{padding:.85rem}.screenHeader{gap:.7rem}.screenHeader h1{font-size:clamp(1.9rem,8vw,3rem)}.answerGrid,.localAnswerGrid,.podium{grid-template-columns:1fr}.answerButton{min-height:72px}.duelPanel .localAnswerGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.duelPanel .localAnswerButton span{width:32px;height:32px}.leaderboardRow,.hallOfFameRow{grid-template-columns:36px minmax(0,1fr)}.leaderboardRow em,.hallOfFameRow em{grid-column:2}.buttonRow{flex-direction:column}.buttonRow .button{width:100%}.debugGrid{grid-template-columns:1fr}th,td{padding:.65rem}}@media(max-width:420px){.segmentedControl{grid-template-columns:1fr}.questionTop,.localGameTop,.duelPlayerBar{gap:.55rem}.localGameTop{grid-template-columns:48px minmax(0,1fr) auto}}
