:root{color-scheme:dark;--bg:#080d17;--text:#f0f2fb;--muted:#939fb5;--border:#ffffff12;--accent:#b6a8ff;--panel:#101827;--container:1180px}
html{scroll-behavior:smooth}body{min-width:280px;color:var(--text);background:radial-gradient(ellipse at 50% -20%,#17223c 0,transparent 52%),var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input{font:inherit}a{color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #c0b5ff;outline-offset:4px}.skip-link{position:fixed;z-index:10;left:12px;top:12px;transform:translateY(-150%);padding:10px;border:0;border-radius:8px;background:#f2f0ff;color:#17132e}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.platform-header{height:76px;border-bottom:1px solid var(--border);position:relative;z-index:3}.header-content{max-width:var(--container);height:100%;margin:auto;padding:0 30px;display:flex;align-items:center;gap:55px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:13px;letter-spacing:.14em;font-weight:800}.brand-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#aa9bff,#6848e5);color:#fff;font-size:16px;box-shadow:inset 1px 1px #ffffff77,0 7px 24px #7055e044}.brand-dot{color:#a794ff}.main-nav{display:flex;align-items:center;gap:27px;flex:1}.main-nav a{text-decoration:none;color:#94a0b5;font-size:12px;transition:color .18s}.main-nav a:hover,.main-nav a.active{color:#f3f1ff}.main-nav span{color:#9b84ff}.lang-toggle{height:34px;min-width:38px;border:1px solid #ffffff1b;border-radius:8px;background:#ffffff07;color:#d0d7e6;font-size:11px;font-weight:700}.lang-toggle:hover{border-color:#a293ff80}
main#main{max-width:var(--container);min-height:calc(100vh - 150px);padding:0 30px;margin:auto;position:relative}.home-hero{padding:83px 0 72px}.kicker{margin:0 0 17px;color:#a08bfc;font-size:10px;font-weight:750;letter-spacing:.22em}.home-hero h1{font-size:clamp(43px,6vw,72px);line-height:1.12;letter-spacing:-.045em;margin:0;font-weight:750}.home-hero h1 span{background:linear-gradient(100deg,#b8a9ff,#8ba9ff 60%,#67d6e4);color:transparent;background-clip:text}.home-intro{max-width:500px;margin:24px 0;color:var(--muted);font-size:14px;line-height:1.9}.hero-actions{display:flex;align-items:center;gap:25px}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:46px;padding:11px 18px;border:1px solid transparent;border-radius:10px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:linear-gradient(110deg,#8b76ed,#7157d4);box-shadow:inset 0 1px #ffffff40,0 8px 25px #6f54d934}.button-primary:hover{background:linear-gradient(110deg,#9e8bf6,#7f65e1)}.text-link{font-size:12px;color:#c4cce0;text-decoration:none}.text-link b{color:#ae97ff}.text-link:hover{color:#fff}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.section-heading .kicker{margin:0 0 8px}.kicker.muted{color:#70809d}.section-heading h2{margin:0;font-size:23px;letter-spacing:-.02em}.section-heading small{font-size:11px;font-weight:400;color:#6f7e96}.count{font-size:11px;color:#8090a9}.library-tools{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}.filters{display:flex;flex-wrap:wrap;gap:5px}.filter{border:1px solid transparent;border-radius:8px;background:transparent;color:#8592a9;padding:8px 12px;font-size:11px}.filter:hover{color:#f1efff}.filter[aria-pressed="true"]{background:#211d3b;border-color:#a991ff30;color:#dcd4ff}.search{display:flex;align-items:center;gap:8px;min-width:210px;padding:0 11px;border:1px solid #ffffff18;background:#0e1624;border-radius:9px;color:#8492a9}.search svg{width:15px;height:15px;flex:none}.search input{width:100%;height:35px;border:0;outline:0;background:transparent;color:#f1f3fa;font-size:11px}.search:focus-within{outline:2px solid #a493fa;outline-offset:2px}.search input:focus-visible{outline:0}.platform-game-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding-bottom:76px}.game-tile{border:1px solid #ffffff12;border-radius:17px;overflow:hidden;background:linear-gradient(145deg,#121a2a,#0b111e);box-shadow:0 20px 60px #0003;transition:transform .22s,border-color .22s,box-shadow .22s}.game-tile:hover{transform:translateY(-4px);border-color:#9784f655;box-shadow:0 25px 70px #0005,0 0 35px #7056d912}.tile-link{display:block;color:inherit;text-decoration:none}.game-tile .cover{height:auto;aspect-ratio:1.08}.tile-body{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:19px 18px 12px}.tile-body h3{font-size:15px;margin:0 0 6px}.tile-body p{font-size:11px;line-height:1.5;color:#8c9ab0;margin:0;min-height:17px}.tile-arrow{color:#9b8be9;font-size:20px}.tile-meta{display:flex;gap:6px;padding:0 18px 18px}.tile-meta span,.pills span{font-size:10px;color:#94a2ba;border:1px solid #ffffff10;padding:4px 7px;border-radius:6px;background:#ffffff05}.empty{border:1px solid var(--border);padding:36px;color:var(--muted);border-radius:14px;margin-bottom:76px;text-align:center}.empty[hidden]{display:none}
.featured{display:grid;grid-template-columns:1fr 1fr;min-height:290px;overflow:hidden;border:1px solid #a895ff30;border-radius:20px;background:linear-gradient(120deg,#211d40,#111a2a);margin-bottom:58px}.featured>div:first-child{padding:40px;align-self:center}.featured h2{font-size:30px;margin:0 0 12px}.featured p:not(.kicker){color:var(--muted);font-size:13px;line-height:1.8}.featured-art .cover{height:100%}
.breadcrumbs{padding:40px 0 26px}.breadcrumbs a{font-size:12px;color:#a6b1c5;text-decoration:none}.breadcrumbs a:hover{color:#eee}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.detail-visual{overflow:hidden;border:1px solid var(--border);border-radius:20px}.detail-visual .cover{height:auto;aspect-ratio:1.12}.detail-visual .cover .blocks,.detail-visual .tank-mark,.detail-visual .bomber-mark,.detail-visual .grape-mark,.detail-visual .oath-mark{scale:1.35}.detail-visual .road-car{scale:1.2}.detail-copy h1{font-size:clamp(34px,4vw,52px);letter-spacing:-.04em;line-height:1.15;margin:0}.detail-intro{color:var(--muted);font-size:14px;line-height:1.9;max-width:470px;margin:20px 0}.pills{display:flex;gap:7px;margin-bottom:25px}.play-link{min-width:148px}.external-note{color:#8d9bb0;font-size:11px;line-height:1.65;margin:12px 0 0}.detail-info{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:42px 0 85px}.detail-info article{border:1px solid var(--border);background:#10182799;border-radius:14px;padding:21px}.detail-info h2{font-size:13px;margin:0 0 9px}.detail-info p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}
.together-page{min-height:65vh;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:70px 0 100px}.together-page h1{font-size:clamp(40px,5vw,64px);line-height:1.15;letter-spacing:-.04em;margin:0}.together-page p:not(.kicker){color:var(--muted);font-size:14px;line-height:1.9;max-width:470px;margin:23px 0 28px}.people-art{display:grid;place-items:center;min-height:320px}.people-ring{position:relative;width:min(300px,70vw);aspect-ratio:1;border:1px solid #a38eff33;border-radius:50%;background:radial-gradient(circle,#7863cc29,transparent 65%);box-shadow:0 0 0 30px #9a8aff08,0 0 0 65px #9a8aff05}.avatar{display:grid;place-items:center;position:absolute;width:74px;height:74px;border-radius:24px;font-size:27px;font-weight:800;box-shadow:inset 2px 2px #ffffff59,0 20px 35px #0008}.avatar.first{left:12%;top:31%;background:linear-gradient(145deg,#b9a6ff,#6a50d1);transform:rotate(-9deg)}.avatar.second{right:12%;top:44%;background:linear-gradient(145deg,#86e2dd,#3198a8);transform:rotate(9deg)}.people-star{position:absolute;left:49%;top:26%;color:#f0d991;font-size:30px}.not-found{padding:110px 0}.not-found h1{font-size:32px;margin:0 0 25px}
footer.platform-footer{max-width:var(--container);margin:auto;padding:25px 30px 35px;border-top:1px solid var(--border);display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;color:#6f7d94;font-size:10px;letter-spacing:.06em}footer.platform-footer b{color:#aa96ff}
@media(max-width:900px){.platform-game-list{grid-template-columns:repeat(3,minmax(0,1fr))}.home-hero{padding:70px 0 60px}.detail-layout{gap:30px}.detail-visual .cover .blocks,.detail-visual .tank-mark,.detail-visual .bomber-mark,.detail-visual .grape-mark,.detail-visual .oath-mark{scale:1}}
@media(max-width:650px){.platform-header{height:68px}.header-content{padding:0 20px;gap:22px}.main-nav{gap:15px}.main-nav a{font-size:11px}main#main{padding:0 20px}.home-hero{padding:56px 0 52px}.home-hero h1{font-size:clamp(38px,9vw,49px)}.home-intro{font-size:13px}.hero-actions{gap:15px}.library-tools{flex-wrap:wrap}.filters{width:100%;justify-content:space-between}.filter{padding:8px}.search{width:100%}.platform-game-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.tile-body{padding:15px 13px 9px}.tile-body h3{font-size:13px}.tile-body p{font-size:10px;min-height:30px}.tile-meta{padding:0 13px 14px}.game-tile .cover .blocks{scale:.72}.game-tile .tank-mark,.game-tile .bomber-mark,.game-tile .grape-mark,.game-tile .oath-mark{scale:.72}.game-tile .road-car{scale:.75}.game-tile .cover-title{font-size:9px;letter-spacing:.15em}.game-tile .play-disc{width:28px;height:28px}.detail-layout{grid-template-columns:1fr;gap:25px}.detail-visual .cover{aspect-ratio:1.5}.detail-copy h1{font-size:36px}.detail-info{grid-template-columns:1fr;margin:30px 0 65px}.together-page{grid-template-columns:1fr;gap:15px;padding:55px 0}.people-art{min-height:260px}.people-ring{width:220px}.featured{grid-template-columns:1fr}.featured>div:first-child{padding:28px}.featured-art{height:190px}footer.platform-footer{padding:22px 20px;flex-direction:column;text-align:center}}
@media(max-width:340px){.header-content{gap:12px}.brand{font-size:11px}.main-nav{gap:10px}.main-nav a{font-size:10px}.platform-game-list{grid-template-columns:1fr}.game-tile .cover{aspect-ratio:1.35}.game-tile .cover .blocks,.game-tile .tank-mark,.game-tile .bomber-mark,.game-tile .grape-mark,.game-tile .oath-mark{scale:1}.tile-body p{min-height:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Integrated games own the stage; the platform retains only essential controls. */
.button-muted{background:#202738;color:#9aa5b7;cursor:not-allowed;border-color:#ffffff12}.button-muted:hover{transform:none}
body.is-playing{overflow:hidden;background:#030913}body.is-playing .platform-header,body.is-playing .platform-footer,body.is-playing>.ambient,body.is-playing .skip-link{display:none}body.is-playing main#main{max-width:none;width:100%;height:100dvh;min-height:0;margin:0;padding:0}
.game-host{position:fixed;inset:0;overflow:hidden;background:#050b15;color:#f1f4fb;isolation:isolate}.game-host-canvas{position:absolute;inset:0}.game-host-header{position:absolute;z-index:3;top:max(16px,env(safe-area-inset-top));left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.game-host-header>*{pointer-events:auto}.game-host-header h1{font-size:15px;letter-spacing:.06em;margin:0;padding:8px 11px;border-radius:9px;background:#091321cc}.game-host-tools{position:absolute;z-index:3;bottom:max(16px,env(safe-area-inset-bottom));left:20px;display:flex;gap:8px}.game-host-button{min-height:42px;padding:9px 13px;border:1px solid #829abc50;border-radius:9px;background:#0d1929e8;color:#e0e9f5;font-size:12px}.game-host-button:hover{background:#1c3048}.game-host-button:disabled{opacity:.55;cursor:wait}.game-host-button[hidden]{display:none}.game-host-overlay{position:absolute;z-index:2;inset:0;display:grid;place-items:center;background:#050b15d9;padding:20px}.game-host-overlay[hidden]{display:none}.game-host-message{text-align:center}.game-host-message h2{font-size:22px;margin:0}.game-host-message p{color:#aab7c9;font-size:13px;min-height:18px}.game-exit-dialog{border:1px solid #91a8ca50;border-radius:16px;background:#101b2b;color:#f4f6fb;padding:26px;width:min(420px,calc(100vw - 32px));box-shadow:0 24px 90px #0009}.game-exit-dialog::backdrop{background:#020711b8;backdrop-filter:blur(3px)}.game-exit-dialog h2{margin:0;font-size:21px}.game-exit-dialog p{font-size:13px;line-height:1.8;color:#aab7c9;margin:12px 0 22px}.game-dialog-actions{display:flex;justify-content:flex-end;gap:10px}.game-dialog-actions .button{min-height:42px}
@media(max-width:650px){.game-host-header{left:14px;right:14px}.game-host-tools{left:14px}.game-host-button{min-height:44px}.game-exit-dialog{padding:22px}.game-dialog-actions{flex-wrap:wrap}}
/* Friend challenges keep the same dark, spacious visual language as the library. */
.detail-play-actions,.together-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.duo-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;min-height:46px;padding:11px 16px}
.duo-page{max-width:860px;margin:0 auto;padding:42px 0 90px}.duo-page .breadcrumbs{margin-bottom:42px}.duo-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:30px}.duo-heading h1,.duo-card h1{font-size:clamp(30px,4.5vw,48px);line-height:1.16;letter-spacing:-.04em;margin:0}.duo-heading p,.duo-card>p:not(.duo-hint){color:var(--muted);line-height:1.8;font-size:14px;margin:16px 0 0}.duo-avatars{display:flex;align-items:center;justify-content:center;gap:12px;flex:none}.duo-avatars span,.duo-player-steps span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:linear-gradient(145deg,#b4a2ff,#6a54d4);color:white;font-size:22px;font-weight:800;box-shadow:0 12px 28px #7055e044}.duo-avatars span:last-child{background:linear-gradient(145deg,#89dfd2,#3694a7)}.duo-avatars i{font-style:normal;color:#c7b9ff;font-size:20px}.duo-card,.duo-resume{border:1px solid #ffffff1c;border-radius:22px;background:linear-gradient(145deg,#151f32,#0c1422);box-shadow:0 20px 60px #0003;padding:32px}.duo-resume{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:20px 24px}.duo-resume strong{font-size:14px}.duo-resume p{font-size:12px;color:var(--muted);margin:6px 0 0;line-height:1.6}.duo-player-steps{display:flex;align-items:center;gap:18px;margin-bottom:25px}.duo-player-steps>div{display:flex;align-items:center;gap:10px;font-size:13px}.duo-player-steps span{width:38px;height:38px;border-radius:12px;font-size:12px}.duo-player-steps>div:last-child span{background:linear-gradient(145deg,#89dfd2,#3694a7)}.duo-player-steps>b{color:#9585dd;font-size:18px}.duo-rules{display:flex;flex-direction:column;gap:7px;border-top:1px solid #ffffff15;padding-top:20px;color:#9caac0;font-size:12px;line-height:1.65}.duo-rules strong{color:#e2e2f3}.duo-card form{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-top:25px}.duo-card form label{flex-basis:100%;font-size:12px;color:#b9c4d7;font-weight:650}.duo-card select{min-height:46px;min-width:160px;border:1px solid #8994b345;border-radius:10px;background:#0b1524;color:#e7ebf7;padding:10px 14px}.duo-hint{color:#8796ad;font-size:11px;line-height:1.7;margin:15px 0 0}.duo-handoff{text-align:center;max-width:620px;margin:0 auto}.duo-handoff .duo-avatars{margin:10px 0 30px}.duo-handoff .duo-rules{text-align:left;margin:28px 0 24px}.duo-result{max-width:720px;margin:auto}.duo-scores{display:flex;align-items:center;gap:14px;margin:28px 0}.duo-scores>b{color:#b5a6ff}.duo-score{display:flex;flex:1;min-width:0;flex-direction:column;gap:9px;padding:24px;border:1px solid #afa3ff35;border-radius:16px;background:linear-gradient(145deg,#292b49,#1a2133)}.duo-score:last-child{border-color:#8ae2d335;background:linear-gradient(145deg,#20343c,#17232f)}.duo-score span{font-size:12px;color:#c4cede;font-weight:700}.duo-score strong{font-size:30px;color:#f3f2ff}.duo-score small{font-size:11px;color:#a3b2c5}.duo-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
@media(max-width:650px){.duo-page{padding:28px 0 70px}.duo-page .breadcrumbs{margin-bottom:30px}.duo-heading{align-items:flex-start}.duo-heading .duo-avatars{gap:5px}.duo-heading .duo-avatars span{width:40px;height:40px;border-radius:12px;font-size:16px}.duo-card{padding:22px}.duo-resume{align-items:flex-start;flex-direction:column}.duo-score{padding:16px}.duo-score strong{font-size:24px}.duo-card form select{flex:1;min-width:120px}}
.challenge-next-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.challenge-browse{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.challenge-replay-note{max-width:480px;color:#9caac0;font-size:12px;line-height:1.7;margin:14px 0 0}
.play-recap{position:relative;overflow:hidden;margin:0 0 25px;padding:20px;border:1px solid #a894ff42;border-radius:16px;background:radial-gradient(circle at 95% 2%,#7664bd38,transparent 52%),linear-gradient(145deg,#211e3a,#141c2d)}.challenge-share .play-recap .recap-eyebrow{margin:0 0 10px;color:#ad9afb;font-size:9px;font-weight:750;letter-spacing:.14em}.play-recap h3{font-size:17px;line-height:1.4;margin:0;color:#f3f2ff}.challenge-share .play-recap .recap-caption{margin:8px 0 18px;color:#b4bfd1;font-size:11px}.recap-game{display:flex;justify-content:space-between;gap:10px;color:#b8aaff;font-size:10px;font-weight:700;letter-spacing:.08em}.recap-scores{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:13px 0 18px;font-size:11px;color:#ccd5e4}.recap-scores strong{font-size:20px;color:#fff}.recap-scores>span:nth-child(2){color:#aa95ff}.recap-copy{width:100%;min-height:44px}.play-recap textarea{width:100%;min-height:110px;margin:0 0 10px;padding:10px;border:1px solid #aa9de84d;border-radius:9px;background:#101727;color:#e7e6f4;font:inherit;font-size:13px;resize:vertical}.play-recap textarea[hidden]{display:none}.challenge-share .play-recap .recap-help{margin:10px 0 0;font-size:11px;color:#a7b5c9}
.challenge-page{padding:68px 0 100px}.challenge-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.challenge-heading h1{font-size:clamp(34px,4.8vw,56px);line-height:1.16;letter-spacing:-.04em;margin:0}.challenge-heading p{color:var(--muted);line-height:1.9;font-size:14px;max-width:620px;margin:20px 0 30px}.challenge-orbit{position:relative;flex:none;width:125px;height:125px;border:1px solid #a78fff35;border-radius:50%;background:radial-gradient(circle,#8e7fff30,transparent 70%);box-shadow:0 0 0 17px #a18bff08}.challenge-orbit span,.challenge-orbit i,.challenge-orbit b{position:absolute;font-style:normal;filter:drop-shadow(0 6px 12px #0007)}.challenge-orbit span{font-size:48px;color:#bba7ff;top:28px;left:38px}.challenge-orbit i{font-size:32px;color:#7bded0;top:12px;right:4px}.challenge-orbit b{font-size:27px;color:#f49e8d;bottom:10px;left:7px}.challenge-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}.challenge-panel,.challenge-share{border:1px solid #ffffff16;border-radius:20px;background:linear-gradient(145deg,#141c2d,#0c1422);box-shadow:0 20px 60px #0003;padding:30px}.challenge-panel-top{display:flex;justify-content:space-between;color:#9f91e8;letter-spacing:.16em;font-size:10px;font-weight:700}.challenge-panel h2{font-size:24px;margin:30px 0 8px}.challenge-result-note{color:#9caac0;font-size:13px;line-height:1.75;margin:0}.challenge-scores{display:flex;align-items:center;gap:12px;margin:28px 0}.challenge-score{display:flex;flex:1;min-width:0;flex-direction:column;gap:8px;padding:22px;border-radius:15px;border:1px solid #afa3ff2c;background:linear-gradient(145deg,#272842,#1a2133)}.challenge-score:nth-child(3){border-color:#8ae2d32c;background:linear-gradient(145deg,#1f323b,#17232f)}.challenge-score.is-waiting{background:#101a28;border-style:dashed;border-color:#ffffff25}.challenge-score .challenge-person{font-size:12px;font-weight:650;color:#c1c8d8}.challenge-score strong{font-size:36px;line-height:1.1;color:#f3f2ff}.challenge-score strong small{font-size:12px;color:#aab8cb}.challenge-score>span:last-child{color:#8999b0;font-size:11px}.challenge-versus{color:#a894ff}.challenge-rules{display:flex;flex-direction:column;gap:7px;color:#9aa8be;border-top:1px solid #ffffff12;padding-top:21px;font-size:12px;line-height:1.6}.challenge-rules strong{color:#d9def0}.challenge-start{margin-top:24px}.challenge-share h2{font-size:19px;margin:0 0 18px}.challenge-share input{display:block;width:100%;border:1px solid #ffffff20;border-radius:9px;background:#0b1220;color:#c5cce0;font:inherit;font-size:11px;padding:12px;outline-color:#ac96ff}.challenge-copy{width:100%;margin-top:10px}.challenge-share p:not(.kicker){font-size:11px;line-height:1.8;color:#929fb3;margin:16px 0}.challenge-share .challenge-warning{color:#f2c28c!important;border-left:2px solid #e4a660;padding-left:10px}.challenge-expiry{padding-top:15px;border-top:1px solid #ffffff12}.challenge-refresh{border:0;padding:0;background:transparent;color:#baaaff;font-size:12px}.challenge-refresh:hover{color:#fff}.game-host-message .challenge-submit-note{color:#f2c28c;max-width:350px;line-height:1.6}.game-result-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.game-result-actions[hidden]{display:none}
@media(max-width:700px){.challenge-page{padding:48px 0 70px}.challenge-heading{align-items:start}.challenge-orbit{width:75px;height:75px;margin-top:15px}.challenge-orbit span{font-size:30px;top:17px;left:21px}.challenge-orbit i{font-size:21px}.challenge-orbit b{font-size:17px}.challenge-layout{grid-template-columns:1fr}.challenge-panel,.challenge-share{padding:22px}.challenge-score{padding:16px}.challenge-score strong{font-size:30px}.challenge-heading p{font-size:13px}}

.button[hidden]{display:none}

/* Mobile controls remain comfortable to tap; 16px inputs avoid Safari auto-zoom. */
@media(max-width:700px){
  .search input,.duo-card select,.challenge-share input{font-size:16px}
  .search input{min-height:44px}
  .filter,.challenge-refresh{min-height:44px}
  .game-host-overlay{overflow:auto;place-items:safe center}
}
/* Avoid large off-screen blur layers in mobile Safari's safe-area compositing. */
@media(max-width:700px), (max-height:560px){body>.ambient{display:none}}
@media(max-height:560px) and (orientation:landscape){
  .game-host-overlay{overflow:auto;place-items:safe center}
}
