.cg{--ink:#eaf0ff;--soft:#a8b4cf;--line:rgba(255, 255, 255, 0.12);--panel:rgba(15, 23, 42, 0.78);--cg-background:linear-gradient(135deg, #0f172a, #1e1b4b 50%, #0f172a);position:relative;isolation:isolate;max-width:1120px;min-height:calc(100vh - 2rem);margin:1rem auto;padding:1rem;color:var(--ink);background:var(--cg-background);border-radius:24px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}.cg::before{content:'';position:fixed;inset:0;z-index:-2;background:var(--cg-background)}.cg__aurora{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.cg__aurora:after,.cg__aurora:before{content:'';position:absolute;width:44rem;height:44rem;border-radius:50%;filter:blur(90px);opacity:.16;animation:cg-aurora 15s ease-in-out infinite alternate}.cg__aurora:before{top:-20rem;left:-14rem;background:#6366f1}.cg__aurora:after{right:-16rem;bottom:-24rem;background:#8b5cf6;animation-delay:-7s}.cg *,.cg :after,.cg :before{box-sizing:border-box}.cg [hidden]{display:none!important}.cg__back{display:inline-block;margin:0 0 .8rem;color:#c7d2fe;font-weight:700;text-decoration:none}.cg__back:hover{color:#fff;text-decoration:underline}.cg__head{position:relative;overflow:hidden;padding:1.2rem 8rem 1.2rem 1.4rem;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.065);box-shadow:0 14px 34px #0003;backdrop-filter:blur(16px)}.cg__head h1{margin:.12rem 0 .35rem;color:#fff;font-size:clamp(1.7rem, 4vw, 2.7rem);line-height:1.05}.cg__head>p:last-of-type{max-width:48rem;margin:0;color:var(--soft);font-size:1.05rem}.cg__eyebrow{margin:0;color:#c4b5fd;font-size:.8rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.cg__eyebrow span{font-size:1.2rem}.cg__fullscreen{position:absolute;top:1rem;right:1rem;min-height:44px;padding:.6rem .75rem;color:#e0e7ff;border:1px solid #a5b4fc59;border-radius:10px;background:#6366f12e;font:inherit;font-weight:800;cursor:pointer}.cg__fullscreen:hover{background:#6366f161}.cg__settings{display:flex;flex-wrap:wrap;gap:.8rem;align-items:end;padding:1rem 0}.cg__settings label{display:grid;gap:.3rem;color:#cbd5e1;font-size:.82rem;font-weight:800}.cg button,.cg select{font:inherit}.cg select{min-height:42px;padding:.55rem .7rem;color:#f8fafc;border:1px solid var(--line);border-radius:9px;background:#18233d}.cg__done button,.cg__next,.cg__settings button{min-height:42px;padding:.6rem 1rem;color:#fff;border:0;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);font-weight:900;cursor:pointer}.cg__done button:hover,.cg__next:hover,.cg__settings button:hover{filter:brightness(1.12);transform:translateY(-1px)}.cg button:focus-visible,.cg select:focus-visible,.cg__back:focus-visible{outline:3px solid #fbbf24;outline-offset:3px}.cg__stage{position:relative;min-height:510px;padding:clamp(1rem,2vw,1.5rem);overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--panel);box-shadow:0 24px 55px #0005;backdrop-filter:blur(18px)}.cg__topline{display:flex;justify-content:space-between;gap:1rem;align-items:center;min-height:1.5rem;color:var(--soft);font-size:.92rem;font-weight:800}.cg__topline p{margin:0}.cg__turn{color:#c4b5fd}.cg__mode-scene{display:none}.cg__scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:1rem;max-width:720px;margin:1rem auto}.cg__score{padding:.85rem 1rem;text-align:center;border:1px solid #f871715c;border-radius:15px;background:linear-gradient(145deg,#ef444445,#7f1d1d1a);box-shadow:inset 0 1px #ffffff1f}.cg__score--b{border-color:#60a5fa66;background:linear-gradient(145deg,#3b82f647,#1e3a8a1f)}.cg__score-label{display:block;color:#fecaca;font-size:.76rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.cg__score--b .cg__score-label{color:#bfdbfe}.cg__score-value{display:block;color:#fff;font-size:clamp(2rem, 6vw, 4rem);line-height:1}.cg__arena-scene{position:relative;display:flex;height:70px;max-width:520px;margin:1.1rem auto 0;justify-content:space-between;align-items:center}.cg__spotlight{width:6rem;height:6rem;border-radius:50%;opacity:.75;filter:blur(12px)}.cg__spotlight--a{background:#ef4444}.cg__spotlight--b{background:#3b82f6}.cg__versus{z-index:1;display:grid;width:4rem;height:4rem;place-items:center;color:#fff;border:2px solid #ffffff4d;border-radius:50%;background:linear-gradient(135deg,#f97316,#ef4444);box-shadow:0 0 28px #f97316a6;font-size:1.3rem;transform:rotate(-8deg)}.cg__question-card{max-width:850px;margin:1rem auto 0;padding:clamp(1rem,2vw,1.4rem);border:1px solid #ffffff1a;border-radius:18px;background:#ffffff0c}.cg__question{min-height:1.3em;margin:0;color:#fff;font-size:clamp(1.35rem, 3.7vw, 2.35rem);font-weight:900;line-height:1.25;text-align:center}.cg__answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1.2rem}.cg__answer{min-height:68px;padding:.9rem;color:#eef2ff;border:2px solid #a5b4fc4d;border-radius:14px;background:#6366f124;font-size:clamp(1rem, 2.4vw, 1.2rem);font-weight:800;cursor:pointer}.cg__answer:hover{border-color:#a5b4fc;background:#6366f14d}.cg__answer[data-correct=true]{color:#dcfce7;border-color:#4ade80;background:#22c55e38}.cg__answer[data-correct=false]{color:#fee2e2;border-color:#f87171;background:#ef444438}.cg__feedback{min-height:1.5rem;margin:.8rem 0 0;color:#fef3c7;font-weight:900;text-align:center}.cg__next{display:block;margin:1rem auto 0}.cg__teams{display:flex;justify-content:center;gap:.8rem;margin:1rem auto 0}.cg__teams button{min-height:50px;padding:.7rem 1rem;color:#fff;border:2px solid #ffffff26;border-radius:12px;background:#ffffff0f;font-weight:900;cursor:pointer}.cg__teams button[data-team='a'][aria-pressed=true]{border-color:#f87171;background:#ef44444d}.cg__teams button[data-team='b'][aria-pressed=true]{border-color:#60a5fa;background:#3b82f652}.cg__race{max-width:860px;margin:1rem auto;padding:1rem;border:1px solid #4ade8038;border-radius:18px;background:#064e3b52}.cg__race-header{display:flex;justify-content:space-between;margin-bottom:.65rem;color:#86efac;font-size:.85rem;font-weight:900}.cg__lane{display:grid;grid-template-columns:5.8rem 1fr;gap:.6rem;align-items:center;margin:.65rem 0}.cg__lane-label{color:#d1fae5;font-size:.84rem;font-weight:900}.cg__rail{position:relative;height:48px;margin-right:3rem;overflow:visible;border:1px solid #ffffff21;border-radius:10px;background:repeating-linear-gradient(90deg,#ffffff14 0 24%,transparent 24.5% 25%),#ffffff09}.cg__runner{position:absolute;z-index:1;left:0;top:50%;width:44px;height:44px;display:grid;place-items:center;font-size:1.8rem;line-height:1;transform:translateY(-50%);transition:left .42s ease-out;filter:drop-shadow(0 2px 2px #0008)}.cg__runner--b{filter:hue-rotate(190deg) drop-shadow(0 2px 2px #0008)}.cg__finish{position:absolute;top:-4px;right:-3rem;width:2.5rem;height:56px;border-left:4px solid #ffffff73;background:repeating-conic-gradient(#fff 0 25%,#111 0 50%) 50%/12px 12px}.cg__boss-scene{position:relative;min-height:130px;margin:1rem auto 0;text-align:center}.cg__boss-scene>div:first-child,.cg__challenge-scene>div:first-child{color:#c4b5fd;letter-spacing:1rem}.cg__boss-character{display:inline-block;font-size:clamp(4.7rem, 10vw, 7rem);line-height:1;filter:drop-shadow(0 8px 12px #0008);animation:cg-float 2s ease-in-out infinite}.cg__boss-character.hit{animation:cg-hit .35s ease-in-out}.cg__boss-character.defeated{animation:cg-defeated 1s ease-out forwards}.cg__damage{position:absolute;top:35%;left:56%;display:block;color:#f87171;font-size:clamp(1.4rem, 4vw, 2.25rem);font-weight:1000;text-shadow:0 2px 5px #000;animation:cg-damage 1s ease-out forwards}.cg__boss-scene p{margin:.1rem 0;color:#ddd6fe;font-weight:900}.cg__meter{position:relative;max-width:720px;height:30px;margin:.7rem auto 1rem;overflow:hidden;border:2px solid #f871716b;border-radius:99px;background:#ffffff14}.cg__meter>span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ef4444,#f97316);transition:width .5s ease-out}.cg__meter:after{content:attr(aria-valuenow) ' / 100 PV';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:.78rem;font-weight:1000;text-shadow:0 1px 2px #000}.cg__challenge-scene{position:relative;margin:.45rem auto 0;text-align:center}.cg__challenge-scene p{margin:.1rem 0;color:#ddd6fe;font-size:1.05rem;font-weight:900}.cg__trophy{font-size:clamp(3.8rem, 8vw, 5.4rem);line-height:1;animation:cg-float 2.2s ease-in-out infinite;filter:drop-shadow(0 8px 12px #0006)}.cg__milestones{display:flex;justify-content:center;align-items:flex-end;gap:.35rem;max-width:440px;height:55px;margin:.3rem auto 0}.cg__milestones span{display:grid;min-width:29%;height:30px;place-items:center;padding:.2rem;color:#a8b4cf;border:1px solid #ffffff1f;border-radius:8px 8px 0 0;background:#ffffff0b;font-size:.68rem;font-weight:900;text-align:center}.cg__milestones span:nth-child(2){height:41px}.cg__milestones span:nth-child(3){height:53px}.cg__milestones span.reached{color:#20153d;border-color:#fbbf24;background:linear-gradient(180deg,#fcd34d,#f59e0b);box-shadow:0 0 16px #fbbf2473}.cg__progress-wrap{max-width:720px;margin:.55rem auto .7rem}.cg__progress{height:18px;overflow:hidden;border:1px solid #c4b5fd80;border-radius:99px;background:#ffffff17}.cg__progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6366f1,#a78bfa,#fbbf24);transition:width .4s ease}.cg__progress-label{margin:.4rem 0 0;color:#c4b5fd;font-size:.85rem;font-weight:900;text-align:center}.cg__podium{display:flex;justify-content:center;align-items:flex-end;gap:.7rem;min-height:180px;margin:1rem auto}.cg__podium-place{position:relative;min-width:110px;min-height:100px;padding:2rem .8rem .8rem;text-align:center;border:1px solid #9ca3af52;border-radius:14px 14px 0 0;background:linear-gradient(180deg,#9ca3af4d,#9ca3af14)}.cg__podium-place--winner{order:2;min-height:150px;border-color:#eab3087a;background:linear-gradient(180deg,#eab30859,#eab3081a)}.cg__podium-place:nth-child(2):not(.cg__podium-place--winner){order:1}.cg__podium-rank{position:absolute;top:-20px;left:50%;display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:#9ca3af;color:#172554;font-weight:1000;transform:translateX(-50%)}.cg__podium-place--winner .cg__podium-rank{background:#eab308}.cg__podium-name{display:block;color:#fff;font-weight:900}.cg__podium-score{display:block;margin-top:.25rem;color:#cbd5e1;font-weight:800}.cg__done{max-width:620px;margin:1.25rem auto 0;padding:1rem;text-align:center;border:1px solid #fbbf2466;border-radius:18px;background:#eab3081f}.cg__done>div{font-size:3rem}.cg__done p{margin:.4rem 0 .9rem;color:#fff;font-size:1.15rem;font-weight:900}.cg__countdown{position:absolute;z-index:5;inset:0;display:grid;place-items:center;background:#0f172ae6;backdrop-filter:blur(6px)}.cg__countdown span{color:#f87171;font-size:clamp(7rem, 24vw, 13rem);font-weight:1000;animation:cg-count 1s ease-in-out infinite}.cg__note{max-width:760px;margin:1rem auto .4rem;color:#b6c1d7;font-size:.82rem;text-align:center}.cg[data-mode=race]{--cg-background:linear-gradient(135deg, #064e3b, #065f46 50%, #064e3b)}.cg[data-mode=arena]{--cg-background:linear-gradient(135deg, #0f172a, #1e293b, #0f172a)}.cg[data-mode=arena] .cg__aurora:before{background:#ef4444}.cg[data-mode=arena] .cg__aurora:after{background:#f97316}.cg[data-mode=arena] .cg__head{border-color:#ef444459}.cg[data-mode=arena] .cg__eyebrow,.cg[data-mode=arena] .cg__turn{color:#fca5a5}.cg[data-mode=arena] .cg__done button,.cg[data-mode=arena] .cg__next,.cg[data-mode=arena] .cg__settings button{background:linear-gradient(135deg,#ef4444,#f97316)}.cg[data-mode=teams]{--cg-background:linear-gradient(135deg, #1e1b4b, #312e81, #1e1b4b)}.cg[data-mode=teams] .cg__arena-scene{display:none}.cg[data-mode=teams] .cg__scores{grid-template-columns:1fr auto 1fr;margin:1.25rem auto}.cg[data-mode=teams] .cg__scores:before{content:'VS';grid-column:2;grid-row:1;color:#a5b4fc;font-size:1.5rem;font-weight:900}.cg[data-mode=teams] .cg__score{grid-column:1;grid-row:1;background:0 0;border:0;box-shadow:none}.cg[data-mode=teams] .cg__score--b{grid-column:3}.cg[data-mode=teams] .cg__score-value{color:#f87171;font-size:clamp(3rem, 8vw, 5rem)}.cg[data-mode=teams] .cg__score--b .cg__score-value{color:#60a5fa}.cg[data-mode=race] .cg__scores{max-width:400px;margin:.5rem auto}.cg[data-mode=race] .cg__score-value{font-size:1.8rem}.cg[data-mode=race] .cg__eyebrow,.cg[data-mode=race] .cg__turn{color:#86efac}.cg[data-mode=race] .cg__done button,.cg[data-mode=race] .cg__next,.cg[data-mode=race] .cg__settings button{background:linear-gradient(135deg,#15803d,#166534)}.cg[data-mode=race] .cg__answer:not([data-correct]){border-color:#4ade804d;background:#22c55e14}.cg[data-mode=race] .cg__race{display:block}.cg[data-mode=race] .cg__answer:hover:not(:disabled){border-color:#4ade80}.cg__meter.low>span{background:linear-gradient(90deg,#22c55e,#4ade80)}.cg__runner.finished{filter:drop-shadow(0 0 5px #fbbf24)}.cg[data-mode=boss]{--cg-background:linear-gradient(135deg, #1a0a2e, #2d1b4e 50%, #1a0a2e)}.cg[data-mode=boss] .cg__turn,.cg[data-mode=challenge] .cg__turn{display:none}.cg[data-mode=race] .cg__arena-scene,.cg[data-mode=race] .cg__boss-scene,.cg[data-mode=race] .cg__challenge-scene,.cg[data-mode=race] .cg__progress-wrap{display:none}.cg[data-mode=arena] .cg__boss-scene,.cg[data-mode=arena] .cg__challenge-scene,.cg[data-mode=arena] .cg__progress-wrap,.cg[data-mode=arena] .cg__race,.cg[data-mode=teams] .cg__boss-scene,.cg[data-mode=teams] .cg__challenge-scene,.cg[data-mode=teams] .cg__progress-wrap,.cg[data-mode=teams] .cg__race{display:none!important}.cg[data-mode=boss] .cg__arena-scene,.cg[data-mode=boss] .cg__challenge-scene,.cg[data-mode=boss] .cg__progress-wrap,.cg[data-mode=boss] .cg__race,.cg[data-mode=boss] .cg__scores{display:none!important}.cg[data-mode=boss] .cg__boss-scene,.cg[data-mode=challenge] .cg__challenge-scene{display:block}.cg[data-mode=challenge] .cg__arena-scene,.cg[data-mode=challenge] .cg__boss-scene,.cg[data-mode=challenge] .cg__meter,.cg[data-mode=challenge] .cg__race,.cg[data-mode=challenge] .cg__scores{display:none!important}.cg[data-state=finished] .cg__answers,.cg[data-state=finished] .cg__feedback,.cg[data-state=finished] .cg__teams{display:none}.cg[data-state=finished] .cg__question{min-height:0}.cg:fullscreen{max-width:none;width:100%;height:100%;margin:0;padding:1rem max(1rem,calc((100vw - 1120px)/ 2));overflow:auto;border-radius:0}.cg:fullscreen .cg__back,.cg:fullscreen .cg__head>p,.cg:fullscreen .cg__note,.cg:fullscreen .cg__settings{display:none}.cg:fullscreen .cg__head{min-height:66px;padding:.8rem 15rem .8rem 1.2rem}.cg:fullscreen .cg__head h1{margin:0;font-size:clamp(1.5rem, 3vw, 2rem)}.cg:fullscreen .cg__fullscreen{top:.6rem}.cg:fullscreen .cg__stage{margin-top:1rem}@media screen and (min-width:900px) and (max-height:820px){.cg:fullscreen .cg__question-card,.cg:fullscreen .cg__stage{padding:.85rem}.cg:fullscreen .cg__answer{min-height:52px;padding:.6rem}.cg:fullscreen .cg__race,.cg:fullscreen .cg__scores{margin:.5rem auto}}.cg[data-outcome=success] .cg__done{border-color:#4ade8099;background:#22c55e29}.cg[data-outcome=retry] .cg__done{border-color:#f871718c;background:#ef444424}.cg[data-outcome=tie] .cg__done{border-color:#c4b5fd99}@keyframes cg-aurora{to{transform:translate(50px,30px) rotate(10deg)}}@keyframes cg-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes cg-hit{25%{transform:translateX(-12px) rotate(-4deg)}75%{transform:translateX(12px) rotate(4deg)}}@keyframes cg-defeated{50%{transform:scale(1.3) rotate(15deg)}100%{opacity:0;transform:scale(0) rotate(360deg)}}@keyframes cg-damage{to{opacity:0;transform:translateY(-80px) scale(1.4)}}@keyframes cg-count{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.15)}100%{opacity:1;transform:scale(1)}}@media screen and (max-width:600px){.cg{margin:0;padding:.7rem;min-height:100vh}.cg__head{padding:1rem 1rem 4.3rem}.cg__fullscreen{top:auto;right:1rem;bottom:1rem}.cg__stage{min-height:470px;padding:1rem .75rem;border-radius:18px}.cg__topline{align-items:flex-start;flex-direction:column;gap:.2rem}.cg__scores{gap:.5rem}.cg__score{padding:.65rem .45rem}.cg__versus{width:3rem;height:3rem;font-size:1rem}.cg__spotlight{width:4rem;height:4rem}.cg__answers{grid-template-columns:1fr}.cg__lane{grid-template-columns:4.7rem 1fr}.cg__lane-label{font-size:.75rem}.cg__rail{margin-right:2.5rem}.cg__finish{right:-2.5rem;width:2rem}.cg__podium-place{min-width:88px;padding-left:.45rem;padding-right:.45rem}.cg__fullscreen span{display:none}}@media (prefers-reduced-motion:reduce){.cg *,.cg :after,.cg :before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}}