*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#0e0f10;color:#f7f7f8;font-family:'Segoe UI',system-ui,sans-serif}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #4fe49e;outline-offset:4px}button{border:0;color:inherit;background:none}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}header{max-width:1056px;margin:auto;padding:30px 24px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{font-size:35px;line-height:1;font-weight:950;letter-spacing:-1.8px;color:#fff;text-decoration:none}.brand span{color:#ff8741}.profile-chip{display:flex;gap:8px;align-items:center;background:#292a2c;border:1px solid #ffffff0a;padding:9px 13px;border-radius:24px;max-width:200px;font-size:12px}.profile-chip b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-chip i{font-style:normal;color:#ffcd53;font-size:20px}main{max-width:1056px;margin:auto;padding:0 24px 120px}.section{margin:28px 0 36px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px}h1,h2{font-size:22px;font-weight:750;letter-spacing:-.5px;margin:0}h1{font-size:30px}h3{margin:0}.section-head small{font-size:11px;color:#8f9299}.rail{display:flex;gap:18px;overflow:auto;padding:10px 0 10px;scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.quick-game{position:relative;flex:0 0 116px;border-radius:16px;background:linear-gradient(#151617,#28292b);padding:0 9px 12px;text-align:left;margin-top:18px}.quick-game img{display:block;width:94px;height:94px;object-fit:cover;border-radius:22px;margin:-18px auto 12px}.quick-game span{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:14px;color:#d8d9dc}.bolt{position:absolute;top:-18px;right:10px;background:#26d38b;border-radius:0 17px 0 11px;width:25px;height:24px;font-size:16px;line-height:24px;font-style:normal;text-align:center;color:white}.recommend-card{position:relative;flex:0 0 186px;min-height:215px;margin-top:38px;border-radius:18px;background:var(--game-color);padding:0 16px 16px;overflow:visible;isolation:isolate}.recommend-card:before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 90% 10%,#ffffff33,transparent 65%),repeating-linear-gradient(35deg,transparent 0 38px,#ffffff06 39px 60px);z-index:-1}.recommend-card img{display:block;width:108px;height:108px;object-fit:cover;border-radius:24px;margin:-38px auto 14px;box-shadow:0 8px 16px #0002}.recommend-card h3{text-align:center;font-size:19px;font-weight:650;letter-spacing:-.3px}.recommend-card p{font-size:10px;opacity:.9;text-align:center;margin:6px 0 13px}.play-button{background:#fff;color:var(--game-color);border-radius:24px;width:100%;padding:8px 0;font-weight:850;font-size:17px}.recent-game{flex:0 0 98px;text-align:left;padding:0}.recent-game img{width:90px;height:90px;border-radius:22px;display:block;margin-bottom:11px}.recent-game span{font-size:13px;color:#bfc1c7}.empty{color:#92959d;font-size:13px;line-height:1.7;background:#17191c;border:1px solid #ffffff08;border-radius:16px;padding:20px}.puzzle-card{display:flex;gap:14px;align-items:center;background:#191b1e;border:1px solid #ffffff08;border-radius:18px;padding:14px;text-align:left;width:100%;margin:12px 0}.puzzle-card img{width:68px;height:68px;border-radius:18px}.puzzle-card div{flex:1}.puzzle-card h3{font-size:16px}.puzzle-card p{font-size:11px;color:#8e929d;margin:5px 0 0}.puzzle-card b{color:#38d998;font-size:22px}.random{position:fixed;bottom:94px;left:50%;transform:translateX(-50%);border-radius:35px;background:#ff8738;color:#fff;padding:15px 26px;font-size:17px;font-weight:750;box-shadow:0 8px 30px #0005;z-index:5}.random span{font-size:24px;vertical-align:middle;margin-right:10px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#101112f5;backdrop-filter:blur(12px);border-top:1px solid #ffffff0b;display:flex;justify-content:center;padding:9px 12px max(10px,env(safe-area-inset-bottom));gap:12px;z-index:6}.bottom-nav button{width:120px;padding:4px 12px;color:#898d95;font-size:10px;letter-spacing:.6px}.bottom-nav i{display:block;font-size:24px;line-height:29px;font-style:normal;margin-bottom:3px}.bottom-nav button.active{color:#31d58b}.intro{color:#999da7;font-size:13px;line-height:1.7}.selectors{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:23px 0 14px}select,input{background:#1e2126;color:#f3f4f5;border:1px solid #383c44;border-radius:12px;padding:12px;min-width:0;width:100%}.metric{font-size:12px;color:#b6bac4;margin:20px 0}.leader-table{width:100%;border-collapse:collapse;background:#17191d;border-radius:16px;overflow:hidden}.leader-table th{text-align:left;color:#858b97;font-size:10px;text-transform:uppercase;letter-spacing:1px;padding:16px}.leader-table td{padding:17px 16px;border-top:1px solid #ffffff07;font-size:14px}.leader-table td:last-child,.leader-table th:last-child{text-align:right}.leader-table tr.me{background:#1d382c}.rank{color:#edc55c;font-weight:750}.mine{margin:16px 0;padding:16px;background:#1d3429;border:1px solid #2c6346;border-radius:14px;font-size:13px}.refresh{color:#44dc9b;font-size:12px;padding:10px 0}.profile-panel{max-width:520px;background:#181b1f;border:1px solid #ffffff0b;border-radius:20px;padding:24px;margin-top:24px}.profile-panel label{display:block;font-size:12px;color:#a4a9b2;margin:20px 0 9px}.action{background:#30d58b;color:#09281b;font-weight:750;border-radius:12px;padding:13px 20px;margin-top:15px;width:100%}.form-status{font-size:12px;line-height:1.7;color:#c6cbd5;min-height:24px}.muted{color:#858b96;font-size:11px;line-height:1.7}.play-overlay{position:fixed;inset:0;background:#10131c;z-index:20;display:grid;grid-template-rows:52px minmax(0,1fr)}.play-header{display:flex;align-items:center;gap:16px;padding:0 16px;border-bottom:1px solid #ffffff10}.play-header button{font-size:13px;color:#ccd1dd;padding:10px 0}.play-header strong{flex:1;font-size:14px;text-align:center}.play-header .rank-button{color:#46d49c}.play-overlay iframe{width:100%;height:100%;border:0;background:#10131c}.toast{position:fixed;left:50%;bottom:170px;transform:translateX(-50%);max-width:90%;padding:12px 18px;background:#32383f;border-radius:14px;z-index:40;font-size:12px;box-shadow:0 5px 30px #0004;text-align:center}.leader-dialog{position:fixed;inset:52px 0 0;background:#101112;overflow:auto;padding:24px;z-index:25}.leader-dialog>div{max-width:700px;margin:auto}.close-ranking{float:right;font-size:20px;padding:0 10px}.row-link{color:#898e99;font-size:12px}.row-link span{font-size:20px;vertical-align:middle}@media(min-width:700px){header{padding-top:40px}.brand{font-size:44px}.section{margin-top:36px}.quick-game{flex-basis:140px}.quick-game img{width:114px;height:114px}.recommend-card{flex-basis:240px;min-height:240px}.recommend-card img{width:135px;height:135px}.recommend-card h3{font-size:22px}.recommend-card p{font-size:12px}.puzzles{display:grid;grid-template-columns:1fr 1fr;gap:16px}.selectors{max-width:640px}.play-overlay{grid-template-rows:56px minmax(0,1fr)}}@media(max-width:380px){header{padding:24px 18px 12px}.brand{font-size:30px}.profile-chip{font-size:10px;padding:7px 10px;max-width:150px}main{padding-left:18px;padding-right:18px}h2{font-size:21px}.rail{gap:14px}.quick-game{flex-basis:108px}.recommend-card{flex-basis:170px}.selectors{grid-template-columns:1fr}.leader-table th,.leader-table td{padding:14px 10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Player identity: one arcade-wide control, styled as a game player card. */
.profile-chip .user-symbol{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#ff91451a;color:#ffad68}.user-symbol svg{width:20px;height:20px}.profile-chip{padding:6px 12px 6px 6px}.profile-heading{margin-top:30px}.eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:2.5px;color:#ab96ff;margin-bottom:9px}.profile-heading h1{font-weight:850}.profile-panel{position:relative;max-width:560px;padding:26px;border:1px solid #7660c14f;background:radial-gradient(ellipse at 95% 0%,#7146c92b,transparent 55%),linear-gradient(145deg,#20202d,#15171e);box-shadow:0 24px 70px #0004;overflow:hidden}.profile-panel:before{content:'';position:absolute;top:0;left:25px;right:25px;height:2px;background:linear-gradient(90deg,transparent,#b195ff,#56e9b1,transparent)}.player-banner{display:flex;align-items:center;gap:20px;padding:4px 0 26px;border-bottom:1px solid #ffffff10}.player-badge{flex:0 0 76px;width:76px;height:84px;display:grid;place-items:center;color:#beabff;filter:drop-shadow(0 0 15px #a176ff40)}.player-badge svg{width:76px;height:76px}.player-banner>div{min-width:0;flex:1}.player-banner h2{font-size:23px;font-weight:900;overflow-wrap:anywhere;letter-spacing:.5px}.player-state{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:#7de6b8;margin-top:10px}.player-state:before{content:'';width:5px;height:5px;background:#63e4ab;border-radius:50%;box-shadow:0 0 9px #63e4ab80}.card-spark{align-self:flex-start;color:#9981db;font-size:24px}.profile-panel label{font-size:10px;font-weight:800;letter-spacing:1.8px;color:#d0c8e8;margin-top:25px}.name-field{display:flex;align-items:center;border:1px solid #696074;border-radius:12px;background:#101219;overflow:hidden}.name-field:focus-within{border-color:#b39aff;box-shadow:0 0 0 3px #a27bff18}.name-field>span{font-size:25px;padding-left:15px;color:#ad95f3}.name-field input{background:transparent;border:0;padding:16px 12px;outline:none;font-weight:650}.profile-panel .action{margin-top:12px;background:linear-gradient(110deg,#ac8bff,#d3b9ff);color:#23123e;box-shadow:0 5px 0 #594081,0 9px 25px #8256d526;border:1px solid #dfc9ff6b;font-weight:850;padding:15px;transition:transform .15s}.profile-panel .action:active{transform:translateY(3px);box-shadow:0 2px 0 #594081}.profile-sync{display:flex;align-items:center;gap:10px;border-radius:10px;background:#64dbab0a;padding:0 12px;color:#8be4bf;font-size:11px}.profile-sync>span{font-size:20px}.profile-footer{display:flex;justify-content:space-between;gap:12px;margin-top:22px;padding-top:17px;border-top:1px solid #ffffff0b;font-size:8px;font-weight:750;letter-spacing:1.2px;color:#787b8c}@media(max-width:440px){.profile-heading h1{font-size:26px}.profile-panel{padding:20px}.player-banner{gap:12px}.player-badge{flex-basis:60px;width:60px}.player-badge svg{width:60px}.player-banner h2{font-size:20px}.card-spark{display:none}.profile-chip{max-width:170px}}
/* Arena */
.rank-heading{display:flex;justify-content:space-between;align-items:center;margin:30px 0 24px}.rank-heading h1{font-size:clamp(26px,4vw,38px);font-weight:900}.arena-emblem{font-size:65px;color:#edc96d;filter:drop-shadow(0 0 25px #d5a54850)}.rank-games{display:flex;gap:12px;overflow:auto;padding:5px 2px 12px}.rank-game-card{display:flex;align-items:center;gap:14px;min-width:230px;flex:1;text-align:left;padding:15px;background:#1b1a24;border:1px solid #ffffff0d;border-radius:20px}.rank-game-card.selected{border-color:#b09af5;background:linear-gradient(130deg,#352a52,#1d1a29);box-shadow:0 5px 24px #0002}.rank-game-card img{width:58px;height:58px;border-radius:15px}.rank-game-card strong,.rank-game-card small{display:block}.rank-game-card strong{font-size:16px}.rank-game-card small{font-size:11px;color:#aaa3bc;margin-top:5px}.game-arrow{margin-left:auto;color:#bda8f0;font-size:22px}.rank-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px 0 20px}#rank-modes{display:flex;gap:8px;flex-wrap:wrap}.mode-pill{font-size:12px;padding:10px 14px;border:1px solid #36313f;border-radius:30px;color:#a9a3b5}.mode-pill.selected{color:#e8ddff;background:#3a2e53;border-color:#735697}.champion-stage{background:radial-gradient(ellipse at 50% 5%,#6351a94a,transparent 65%),linear-gradient(145deg,#242038,#151522);border:1px solid #a68ce526;border-radius:26px;padding:23px 22px 0;overflow:hidden}.stage-heading{display:flex;justify-content:space-between;gap:10px}.stage-heading .eyebrow{font-size:10px}.season-tag{font-size:9px;letter-spacing:1.5px;color:#a99abb}.podium{display:flex;justify-content:center;align-items:end;gap:20px;max-width:620px;margin:25px auto 0}.podium-slot{width:31%;min-width:0;display:flex;align-items:center;flex-direction:column;position:relative;text-align:center}.player-avatar{display:block;width:48px;height:48px;border-radius:16px;object-fit:cover;flex-shrink:0}.podium-slot .player-avatar,.open-avatar{width:82px;height:82px;border-radius:26px;border:3px solid #a8afcb;box-shadow:0 0 0 6px #adb8da10}.place-1 .player-avatar{border-color:#f2d07b;box-shadow:0 0 0 7px #f1c56615,0 10px 35px #e4b14e20}.place-3 .player-avatar{border-color:#ce967c}.podium-crown{color:#a5a7d2;font-size:26px;margin-bottom:7px}.place-1 .podium-crown{color:#ffda80;font-size:40px;line-height:43px;filter:drop-shadow(0 0 12px #f5c95744)}.place-3 .podium-crown{color:#da9b7d}.medal{margin-top:-11px;background:#aab0cd;border:3px solid #242137;border-radius:20px;padding:3px 8px;color:#212136;font-size:11px;font-weight:900;z-index:1}.place-1 .medal{background:#f5d17c}.place-3 .medal{background:#d39c80}.podium-name{font-size:13px;margin-top:10px;max-width:100%;overflow-wrap:anywhere}.podium-value{font-size:12px;font-weight:800;color:#c3afea;margin-top:6px}.place-1 .podium-value{color:#f3d586}.you-label{font-size:8px;color:#71dcb1;letter-spacing:2px;margin-top:6px}.podium-plinth{width:100%;height:39px;margin-top:16px;border-radius:12px 12px 0 0;background:linear-gradient(#78739a33,#34304708);border-top:1px solid #9a8bb830}.place-1 .podium-plinth{height:68px;background:linear-gradient(#d8ae4933,#5c472808);border-color:#e1c07855}.place-3 .podium-plinth{height:25px;background:linear-gradient(#ad745d33,#34304708)}.open-avatar{display:grid;place-items:center;color:#887e9f;font-size:32px;border:2px dashed #706381;background:#ffffff04;box-shadow:none}.unclaimed .podium-name{color:#a199b0}.unclaimed .podium-value{color:#776d8d;font-weight:500;font-size:11px}.standings-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:26px 0 16px}.standings-heading h2{font-size:19px}.standings-heading>span{font-size:10px;color:#9890a9}.standings{list-style:none;padding:0;margin:0;display:grid;gap:9px}.standing{display:flex;align-items:center;gap:15px;padding:14px 18px;background:#1c1b28;border:1px solid #ffffff09;border-radius:18px}.standing.is-you{border-color:#8a72c866;background:linear-gradient(100deg,#322742,#1e242b)}.standing-rank{font-weight:850;color:#baacd7;font-size:14px;min-width:28px}.standing-name{flex:1;min-width:0}.standing-name strong{display:block;font-size:14px;overflow-wrap:anywhere}.standing-name small{display:block;font-size:8px;color:#827b93;letter-spacing:1.2px;margin-top:6px}.standing-value{color:#a5e6ce;font-size:14px;white-space:nowrap}.personal-rank{display:flex;align-items:center;gap:13px;padding:17px;margin-top:20px;border-radius:18px;border:1px solid #b69ae84a;background:linear-gradient(100deg,#392a51,#242132)}.personal-rank small,.personal-rank strong{display:block}.personal-rank small{font-size:8px;letter-spacing:1.5px;color:#b19bcf;margin-bottom:7px}.personal-rank strong{font-size:13px}.ranking-note{font-size:10px;color:#868092;text-align:center;line-height:1.7}.first-record{text-align:center;border:1px solid #ffffff0c;border-radius:22px;padding:24px;background:#1c1b27}.first-record p{font-size:12px;color:#a49bb6;line-height:1.7}.first-record h2{font-size:20px}.first-record .action{max-width:300px;background:#ae91ef;color:#241639}.record-icon{font-size:32px;color:#ddc17d;display:block;margin-bottom:12px}.ranking-loading{min-height:280px;display:grid;place-items:center;color:#c3b4df;background:linear-gradient(135deg,#252035,#171720);border-radius:24px}.avatar-tools{display:flex;align-items:center;gap:14px;margin:18px 0 0;flex-wrap:wrap}.avatar-tools .photo-upload{margin:0;font-size:11px;letter-spacing:0;color:#ccb5ff;cursor:pointer;border:1px solid #77608e;padding:10px 12px;border-radius:10px}.avatar-tools button{font-size:11px;color:#a49bb6}.player-badge .player-avatar{width:70px;height:70px;border-radius:22px}@media(min-width:800px){#rank-panel{max-width:800px;margin:auto}.rank-games{max-width:800px;margin:auto}.rank-heading{max-width:800px;margin:30px auto}}@media(max-width:480px){.arena-emblem{font-size:44px}.rank-game-card{min-width:205px;padding:12px;gap:10px}.rank-game-card img{width:46px;height:46px}.rank-game-card strong{font-size:14px}.rank-toolbar{align-items:flex-start}.mode-pill{font-size:10px;padding:9px 10px}.rank-toolbar .refresh{font-size:10px;white-space:nowrap}.champion-stage{padding:18px 12px 0;border-radius:22px}.podium{gap:10px;margin-top:20px}.podium-slot .player-avatar,.open-avatar{width:66px;height:66px;border-radius:22px}.podium-name{font-size:10px}.podium-value{font-size:11px}.standings-heading{align-items:flex-start;flex-direction:column}.standing{gap:9px;padding:12px}.standing .player-avatar{width:40px;height:40px;border-radius:13px}.standing-name strong{font-size:12px}.standing-value{font-size:12px}.standing-rank{font-size:12px;min-width:24px}}@media(max-width:350px){.podium-slot .player-avatar,.open-avatar{width:54px;height:54px}.podium{gap:8px}.stage-heading .eyebrow{letter-spacing:1px;font-size:9px}.personal-rank strong{font-size:11px}}
.rank-games{scrollbar-width:none}.rank-games::-webkit-scrollbar{display:none}
