/* Code-drawn artwork keeps the arena sharp on every screen without image downloads. */
:root{--bg:#09121a;--ink:#f3f5ee;--cyan:#c9fa77;--gold:#e9f3ba;--muted:#a6b8bc}
body{color:var(--ink);background:radial-gradient(ellipse at 85% 0,#18382d 0,transparent 36%),radial-gradient(ellipse at 0 35%,#112b38 0,transparent 38%),var(--bg)}
main{max-width:1220px;padding:0 32px}nav{min-height:78px}nav .brand{font-size:14px;letter-spacing:1.5px}.brand span{color:var(--cyan)}
.global-progress{display:inline-flex;width:auto!important;min-height:38px;align-items:center;margin:20px 0 0;padding:10px 16px!important;border-radius:30px!important;font-size:11px!important;background:#ffffff06!important;border-color:#ffffff19!important;color:var(--muted)!important}
#lobby{padding-top:34px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--cyan)}
.arena-hero{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:48px;margin:6px 0 52px;min-height:440px}.hero-message h1{font-size:clamp(45px,5.8vw,76px);font-weight:950;letter-spacing:-3.5px;line-height:1.03;margin:26px 0}.hero-message h1 em{color:var(--cyan)}.hero-message .intro{font-size:16px;line-height:1.75;max-width:450px}.hero-actions{display:flex;align-items:center;gap:24px;margin:30px 0}.hero-actions .primary{width:auto;min-width:230px;display:flex;justify-content:space-between;gap:26px}.hero-browse{font-size:12px;color:#e4ebe5;border-bottom:1px solid #9fb29866;padding:8px 0;white-space:nowrap}.hero-facts{display:flex;gap:30px;font-size:11px;color:var(--muted);margin-top:28px}.hero-facts b{display:block;font-size:24px;font-weight:800;color:#f0f5e9;margin-bottom:6px}
.hero-feature{position:relative;border:1px solid #c9fa7745;border-radius:30px;background:linear-gradient(140deg,#203b30,#0e2227 75%);padding:26px;overflow:hidden;box-shadow:0 32px 70px #0005,inset 0 1px #ffffff15;transform:rotate(2deg)}.hero-feature::before{content:'';position:absolute;width:300px;height:300px;border:1px solid #c9fa7717;border-radius:50%;right:-70px;top:30px;box-shadow:0 0 0 36px #c9fa7707,0 0 0 72px #c9fa7704;pointer-events:none}.feature-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.feature-badge{font-size:10px;letter-spacing:2px;border:1px solid #c9fa7755;border-radius:20px;padding:8px 10px;color:var(--cyan)}#hero-art .card-art{display:block;width:100%;height:220px;transform:scale(1.15)}.feature-bottom{position:relative;border-top:1px solid #c9fa7722;padding-top:18px}.feature-bottom h2{font-size:30px;margin:0 0 9px;letter-spacing:-1px}.feature-bottom p{font-size:13px;color:var(--cyan);margin:0 0 12px}.feature-bottom>span{font-size:12px;color:var(--muted);line-height:1.7}
.primary{background:var(--cyan);color:#111d13;border:1px solid #e1ffb1;border-radius:12px;box-shadow:0 4px 0 #789f3c;font-weight:800;min-height:54px;transition:transform .18s,filter .18s}.primary:hover{filter:brightness(1.08);transform:translateY(-2px)}.primary:active{transform:translateY(2px);box-shadow:0 2px 0 #789f3c}.secondary{border-radius:12px;background:#ffffff04;border-color:#ffffff25;min-height:48px;color:#e3ece7}.secondary:hover{background:#ffffff0d;border-color:#c9fa7777}.text-button{color:var(--muted)}
.invite-steps{border-block:1px solid #ffffff14;padding:22px 0;margin:0 0 18px;font-size:11px;letter-spacing:.25px}.invite-steps li{display:flex;align-items:center;gap:12px}.invite-steps b{font-size:12px;display:inline-flex;justify-content:center;align-items:center;border:1px solid #c9fa7740;width:28px;height:28px;border-radius:50%}.entry-actions{margin:0 0 48px}.entry-actions .secondary{flex:initial;min-width:150px;font-size:12px}
.catalog-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;padding-top:10px;scroll-margin-top:24px}.catalog-heading h2{font-size:36px;letter-spacing:-1.5px;margin:14px 0 0}.catalog-heading>p{font-size:12px;line-height:1.7;color:var(--muted);text-align:right}.filters{margin:24px 0}.filters button{font-size:12px;background:transparent;border-color:#ffffff1f;min-height:42px;padding:10px 20px}.filters .active{background:#c9fa7718;color:var(--cyan);border-color:#c9fa7790}
.catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.game-card{--accent:#72dec8;min-height:242px;padding:0;border-radius:19px;background:linear-gradient(145deg,#163039,#101d28);transition:transform .2s,box-shadow .2s,border-color .2s;isolation:isolate}.game-card[data-category="Спорт"]{--accent:#ffac76;background:linear-gradient(145deg,#342a28,#151e29)}.game-card[data-category="Спринт"]{--accent:#bfa1ff;background:linear-gradient(145deg,#29283c,#141d2d)}.game-card[data-category="Микс"]{--accent:#d4ff86;background:linear-gradient(145deg,#2c3b25,#14252a)}.game-card::before{background:radial-gradient(circle,var(--accent),transparent 65%);opacity:.08;width:220px;height:220px;top:-100px;right:-70px}.game-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 12px 24px #0004}.game-card:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 18px 26px #0004}.card-number{position:absolute;top:16px;left:18px;font-size:10px;letter-spacing:2px;color:var(--accent);opacity:.7}.card-art{display:block;width:100%;height:170px;transition:transform .3s}.game-card:hover .card-art{transform:scale(1.04)}.game-card-caption{display:block;position:relative;padding:0 20px 20px}.game-card small{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);margin:0 0 9px}.game-card strong{font-size:17px;letter-spacing:-.4px;padding-right:44px}.card-cta{position:absolute;right:18px;bottom:20px;font-size:10px;color:var(--accent)}
.setup{display:grid;grid-template-columns:.8fr 1.5fr;align-items:center;gap:32px;background:linear-gradient(120deg,#1b3028,#12242b);padding:32px;border-color:#c9fa7733;margin:30px 0 50px;scroll-margin-top:22px}.setup h2{font-size:34px;letter-spacing:-1px}.setup-copy>p{font-size:13px;line-height:1.7}.setup-copy .fine{font-size:10px}.setup-copy>.primary,.setup-copy>.secondary{width:100%;margin-top:10px}.setup-copy select{background:#0d1c25;border-color:#ffffff25;color:#eef5e7}.setup-options{margin:18px 0;gap:14px}.quality-label{font-size:12px;color:var(--muted)}#selected-art .card-art{height:auto;max-height:260px}.inbox{padding:30px;background:#0e1e27;border-color:#ffffff1c}.inbox>h2{font-size:30px;letter-spacing:-1px}.inbox>h3{margin-top:28px;font-size:18px}.rivalry-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.rivalry-card{background:#142a32;border:1px solid #ffffff16;border-radius:16px;padding:20px}.rivalry-card h3{font-size:15px;margin:0}.rivalry-score{display:flex;align-items:center;gap:16px;margin:18px 0}.rivalry-score strong{font-size:42px;color:var(--cyan)}.rivalry-score strong:last-child{color:#e7eee7}.rivalry-score span{color:var(--muted)}.rivalry-card .fine{font-size:10px}.rivalry-card a{display:block;text-align:center;padding:12px;font-size:11px}.reply-card{background:#14232c;border:1px solid #ffffff12;padding:20px;border-radius:16px;margin:12px 0}
#play{max-width:780px;margin:auto;padding-top:24px}.score{border-bottom:1px solid #ffffff20;padding-bottom:20px;margin-bottom:24px}.score strong{color:var(--cyan)}.board{background:linear-gradient(145deg,#19303a,#10232d);border-color:#ffffff25;box-shadow:0 14px 40px #0002}.tile{background:linear-gradient(145deg,#284b55,#17313f)}.tile.found{background:#294a31;color:var(--cyan)}.triathlon-board{flex-direction:column;gap:20px}.triathlon-heading{width:100%;max-width:550px}.triathlon-heading h2{font-size:28px;letter-spacing:-1px}.triathlon-progress{display:flex;gap:7px}.triathlon-progress span{flex:1;font-size:9px;border-top:3px solid #ffffff20;padding-top:12px;line-height:1.5;color:var(--muted)}.triathlon-progress .current{border-color:var(--cyan);color:var(--cyan)}.triathlon-progress .done{border-color:#72dec8;color:#72dec8}
#result{position:relative;isolation:isolate;overflow:hidden;max-width:790px;margin:36px auto;padding:38px;background:linear-gradient(155deg,#243728,#10242d 70%);border:1px solid #c9fa7740;border-radius:28px;box-shadow:0 24px 80px #0005}#result::before{content:'';position:absolute;top:-120px;left:calc(50% - 200px);width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,#c9fa7714,transparent 65%);z-index:-1}.result-emblem{width:68px;height:68px;margin:0 auto 24px;border:1px solid #c9fa7755;border-radius:50%;display:grid;place-items:center;color:var(--cyan);font-size:36px;background:#c9fa770c}#result h2{font-size:clamp(26px,4vw,40px);letter-spacing:-1px}.result-score{font-size:clamp(42px,8vw,72px);color:var(--cyan);letter-spacing:-2px}#result-time{color:var(--muted);font-size:12px;line-height:1.8}.result-comparison{display:grid;grid-template-columns:1fr 1fr;border:1px solid #ffffff22;border-radius:18px;margin:24px 0;overflow:hidden}.result-comparison>div{display:flex;flex-direction:column;gap:10px;padding:22px;background:#c9fa7706}.result-comparison>div+div{border-left:1px solid #ffffff22;background:#ffffff03}.result-comparison span{font-size:9px;letter-spacing:2px;color:var(--muted)}.result-comparison strong{font-size:24px}.result-comparison small{font-size:10px;color:var(--muted)}.round-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0}.round-stat{padding:20px 10px;border:1px solid #ffffff18;background:#ffffff03;border-radius:14px;display:flex;flex-direction:column;gap:9px}.round-stat>span{font-size:10px;color:var(--cyan);letter-spacing:2px}.round-stat>strong{font-size:13px}.round-stat>b{font-size:23px;font-weight:800}.round-stat>small{font-size:10px;color:var(--muted)}#result>.primary,#result>.secondary{display:block;width:100%;margin-top:14px}#result>a.secondary{padding:15px;font-size:12px;box-sizing:border-box}#result[data-verdict="win"] .result-emblem{animation:arena-win .7s ease-out}#result[data-verdict="loss"]{background:linear-gradient(155deg,#302b3e,#10242d 70%)}#result[data-verdict="tie"]{border-color:#77d9ec88}#share-box{display:block;margin:20px 0 0}#share-box input{margin-top:8px;font-size:12px}.invite-panel,.recovery-panel{background:#17302c;border-color:#c9fa7755}.invite{color:#eef9d8}.notice{color:var(--cyan)}footer{color:#91a3a8;padding:40px 0;line-height:1.8}
@keyframes arena-win{0%{transform:scale(.5) rotate(-40deg);opacity:.1}65%{transform:scale(1.2) rotate(10deg)}100%{transform:scale(1) rotate(0);opacity:1}}
@media(max-width:900px){.arena-hero{gap:28px;grid-template-columns:1.2fr 1fr}.hero-message h1{font-size:52px;letter-spacing:-3px}.hero-actions{flex-direction:column;align-items:start;gap:14px}.hero-feature{padding:22px}#hero-art .card-art{height:180px}.feature-bottom h2{font-size:25px}.catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.game-card strong{font-size:14px;padding-right:0}.card-cta{display:none}.setup{grid-template-columns:.65fr 1.4fr;gap:18px}}
@media(max-width:650px){main{padding:0 18px}nav{gap:14px;min-height:68px;flex-wrap:wrap}nav a{font-size:9px}nav .brand{font-size:11px}.global-progress{font-size:10px!important;padding:9px 12px!important;margin-top:18px}.arena-hero{grid-template-columns:1fr;gap:26px;margin-bottom:34px}.hero-message h1{font-size:clamp(37px,10.5vw,60px);letter-spacing:-2px;margin:20px 0}.hero-message .intro{font-size:14px}.hero-actions{flex-direction:row;align-items:center;gap:18px;flex-wrap:wrap;margin:24px 0}.hero-actions .primary{min-width:210px;font-size:13px}.hero-browse{font-size:11px}.hero-facts{gap:26px;font-size:10px}.hero-facts b{font-size:22px}.hero-feature{transform:none;border-radius:22px;padding:20px}.feature-top{position:relative;z-index:1}#hero-art .card-art{height:165px;width:54%;margin:0 0 0 auto;transform:none}.feature-bottom{position:absolute;bottom:24px;left:22px;border:0;padding:0}.feature-bottom h2{font-size:22px;max-width:140px}.feature-bottom p{font-size:10px}.feature-bottom>span{font-size:10px}.invite-steps{padding:18px 0;gap:13px}.invite-steps li{font-size:11px}.entry-actions{flex-direction:row;gap:7px;margin-bottom:30px}.entry-actions .secondary{flex:1;min-width:90px;min-height:44px;font-size:10px;padding:10px 8px}.catalog-heading h2{font-size:28px}.catalog-heading>p{display:none}.filters{gap:7px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.filters button{padding:9px 15px;font-size:11px;flex-shrink:0}.catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.game-card{min-height:190px;border-radius:16px}.card-art{height:130px}.game-card-caption{padding:0 13px 16px}.game-card strong{font-size:14px;line-height:1.3}.game-card small{font-size:8px;letter-spacing:.8px;line-height:1.6;min-height:13px}.card-number{font-size:8px;top:12px;left:14px}.setup{grid-template-columns:1fr;padding:22px;gap:0;margin:24px 0 34px}#selected-art{display:none}.setup h2{font-size:29px}.setup-copy>p{font-size:12px}.inbox{padding:22px}.inbox>h2{font-size:27px}.rivalry-list{grid-template-columns:1fr}.rivalry-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.rivalry-card .rivalry-score{margin:0}.rivalry-card>.fine{grid-column:1/-1;margin:0}.rivalry-card>a{grid-column:1/-1}.rivalry-score strong{font-size:32px}.triathlon-heading h2{font-size:25px}.triathlon-progress{gap:6px}.triathlon-progress span{font-size:8px}#result{padding:28px 18px;margin:24px auto}.result-emblem{width:58px;height:58px;font-size:30px}.round-breakdown{gap:7px}.round-stat{padding:15px 5px}.round-stat>b{font-size:19px}.round-stat>strong{font-size:11px}.round-stat>small{font-size:8px}.result-comparison>div{padding:18px 12px}.result-comparison strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){.primary,.game-card,.card-art{transition:none}.game-card:hover,.primary:hover{transform:none}#result[data-verdict="win"] .result-emblem{animation:none}}

/* A visible target makes the recorded challenge a race, without implying live play. */
.race-hud{display:grid;gap:8px;padding:18px 22px;margin:12px 0 20px;border:1px solid #b7ef5344;border-radius:18px;background:#112726}.race-hud[hidden]{display:none}.race-hud>strong{font-size:clamp(22px,5vw,34px);font-variant-numeric:tabular-nums}.race-hud>span:last-of-type{color:#d2dfdd;font-variant-numeric:tabular-nums}.race-splits{display:flex;gap:8px;flex-wrap:wrap}.race-splits:empty{display:none}.race-splits p{margin:0;padding:7px 10px;background:#ffffff09;border-radius:8px;font-size:13px}[data-pace=ahead]{color:#c6f970}[data-pace=behind]{color:#ffb39e}.penalty-flash{animation:penalty-pulse .4s ease-out}.personal-best{padding:16px;border:1px solid #b7ef5370;border-radius:14px;color:#c6f970;background:#b7ef530b}.personal-best[hidden]{display:none}@keyframes penalty-pulse{from{box-shadow:inset 0 0 0 3px #ff886b}to{box-shadow:inset 0 0 0 0 transparent}}@media(prefers-reduced-motion:reduce){.penalty-flash{animation:none}}@media(max-width:650px){.race-hud{padding:13px 16px;gap:5px}.race-splits{gap:4px}}

@media(max-width:650px){body[data-duel-screen=play] nav,body[data-duel-screen=play] .global-progress,body[data-duel-screen=play] #ofwProductNav{display:none!important}#play{padding-top:10px}.play-top{margin-bottom:8px}#play .score{padding-bottom:8px;margin:8px 0}#play .score strong{font-size:30px}#play .instruction{font-size:12px;margin:10px 0}.triathlon-board{padding:14px;gap:12px;min-height:0}.triathlon-heading h2{font-size:21px;margin:10px 0}.triathlon-heading .fine{font-size:11px;margin:8px 0}.triathlon-progress span{padding-top:7px}.race-hud>strong{font-size:22px}.race-hud>span:last-of-type{font-size:12px}.race-splits p{font-size:11px}#play .number-grid .tile,#play .pair-grid .tile{min-height:48px}}

.typing-progress{width:100%;height:12px;accent-color:var(--cyan);margin:12px 0}.phrase .typed-correct{color:var(--cyan)}.phrase .typed-next{background:#c9fa771a;border-bottom:3px solid var(--cyan)}.phrase .typed-next.mismatch{background:#ff886b33;border-color:#ff886b}.cube-sample{margin:0 auto 20px;max-width:240px}.cube-sample figcaption{font-size:12px;color:var(--muted);margin-bottom:10px;text-align:center}.cube-sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.cube-sample-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.cube-sample-grid span{position:relative;display:grid;place-items:center;min-height:44px;padding:7px 12px;border:1px solid #ffffff22;border-radius:8px;background:#ffffff06;font-size:24px}.cube-sample-grid small{position:absolute;left:5px;top:4px;font-size:8px;color:var(--muted)}.tile.aligned{border-color:var(--cyan);color:var(--cyan)}.puzzle-goal{width:100%;font-size:13px;color:var(--muted)}.puzzle-goal .cube-sample-grid{max-width:220px;margin:10px auto}.puzzle-goal .cube-sample-grid span{font-size:20px}.puzzle-goal summary{min-height:44px}.phrase{white-space:pre-wrap;overflow-wrap:anywhere}


.next-games{margin-top:28px;padding-top:22px;border-top:1px solid #ffffff20}.next-games h3{font-size:21px;margin:0 0 8px}.next-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.next-game-card{padding:12px 14px 18px;border:1px solid #ffffff22;border-radius:16px;background:#ffffff04;text-align:left;min-width:0}.next-game-card:hover{background:#c9fa770d;border-color:#c9fa77}.next-game-card .card-art{height:100px}.next-game-card small{display:block;font-size:10px;letter-spacing:1px;color:var(--muted);margin:8px 0}.next-game-card strong{display:block;font-size:15px;line-height:1.4}.next-games>.text-button{margin-top:12px;min-height:44px}@media(max-width:380px){.next-choices{gap:8px}.next-game-card{padding:8px 10px 14px}.next-game-card strong{font-size:13px}.next-game-card .card-art{height:80px}}
