:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ph-bg:#0e0f1a;--ph-surface:#181a2b;--ph-surface-2:#222540;--ph-text:#f3f4fb;--ph-text-muted:#9da3c4;--ph-accent:#7c5cff;--ph-accent-2:#22d3a6;--ph-danger:#ff5c7a;--ph-radius:16px;--ph-radius-sm:10px;--ph-gap:12px;--ph-space-1:4px;--ph-space-2:8px;--ph-space-3:12px;--ph-space-4:16px;--ph-space-5:24px;--ph-space-6:32px;--ph-border:color-mix(in srgb, var(--ph-text) 12%, transparent);--ph-shadow:0 16px 40px #0000002e;--ph-motion-fast:.14s;--ph-motion:.22s;--ph-font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ph-safe-top:env(safe-area-inset-top,0px);--ph-safe-bottom:env(safe-area-inset-bottom,0px)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ph-bg:#f5f6fb;--ph-surface:#fff;--ph-surface-2:#eceefa;--ph-text:#14152a;--ph-text-muted:#5b6085}@media (prefers-reduced-motion:reduce){:root{--ph-motion:0s;--ph-motion-fast:0s}}*{box-sizing:border-box}html{background:var(--ph-bg);-webkit-tap-highlight-color:transparent;overscroll-behavior:none}body{background:var(--ph-bg);color:var(--ph-text);font:16px var(--ph-font);margin:0}button,select,a{font:inherit}button{color:inherit;cursor:pointer;border:0}button,a{touch-action:manipulation;-webkit-user-select:none;user-select:none}.app-shell{min-height:100dvh;padding-bottom:calc(76px + var(--ph-safe-bottom))}.topbar{height:calc(64px + var(--ph-safe-top));padding:var(--ph-safe-top) 18px 0;justify-content:space-between;align-items:center;display:flex}.brand{width:130px;color:var(--ph-text);background:0 0;padding:0}.brand img{width:100%;display:block}.avatar,.big-avatar,.rank-avatar{background:linear-gradient(135deg,var(--ph-accent),var(--ph-accent-2));color:#fff;border-radius:50%;place-items:center;font-weight:800;display:grid}.avatar{width:36px;height:36px}.page{max-width:1080px;margin:auto;padding:14px 16px}.hero{background:radial-gradient(circle at 75% 30%,color-mix(in srgb,var(--ph-accent) 28%,transparent),transparent 34%);padding:52px 0 44px}.eyebrow{letter-spacing:1.4px;color:var(--ph-accent-2);font-size:11px;font-weight:800}.hero h1,.page-title h1{letter-spacing:-.055em;margin:8px 0 16px;font-size:clamp(34px,8vw,62px);line-height:.96}.hero>p:not(.eyebrow),.page-title p{color:var(--ph-text-muted);max-width:440px;line-height:1.5}.primary,.secondary,.game-card>button{border-radius:var(--ph-radius-sm);min-height:48px;padding:0 18px;font-weight:750}.primary{background:var(--ph-accent);color:#fff;margin-top:12px}.secondary{background:var(--ph-surface-2)}.section-head{justify-content:space-between;align-items:center;margin:14px 0;display:flex}.section-head h2{font-size:20px}.text-button{color:var(--ph-accent-2);background:0 0;font-weight:700}.game-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.game-card{background:var(--ph-surface);border:1px solid var(--ph-border);border-radius:var(--ph-radius);grid-template-columns:62px 1fr auto;align-items:center;gap:10px;min-height:88px;padding:12px;display:grid}.game-card h3{margin:0 0 4px;font-size:16px}.game-card p{color:var(--ph-text-muted);margin:0;font-size:12px}.game-card>button{background:var(--ph-accent);color:#fff;min-height:36px;padding:0 11px;font-size:13px}.game-art{background:linear-gradient(135deg,#8b6cff,#ff758f);border-radius:13px;place-items:center;width:62px;height:62px;font-size:28px;font-weight:900;display:grid}.art-2048{background:linear-gradient(135deg,#ffb648,#ff758f);font-size:17px}.filters{gap:8px;padding:4px 0 18px;display:flex;overflow:auto}.chip{background:var(--ph-surface-2);white-space:nowrap;border-radius:99px;padding:9px 13px}.chip.active{background:var(--ph-accent);color:#fff}.page-title{padding:24px 0 14px}.page-title h1{font-size:38px}.room-actions{gap:10px;margin:14px 0;display:flex}.empty{text-align:center;color:var(--ph-text-muted);padding:64px 16px}.empty>span{font-size:38px}.empty h2{color:var(--ph-text);margin-bottom:4px;font-size:20px}.ranking{margin:8px 0;padding:0;list-style:none}.ranking li{border-bottom:1px solid var(--ph-border);align-items:center;gap:12px;padding:12px 4px;display:flex}.ranking strong{width:24px;color:var(--ph-text-muted)}.rank-avatar{width:36px;height:36px}.ranking em{margin-left:auto;font-style:normal;font-weight:800}.profile-head{align-items:center;gap:14px;padding:28px 0;display:flex}.profile-head h1{margin:0;font-size:28px}.profile-head p{color:var(--ph-text-muted);margin:4px 0}.big-avatar{width:70px;height:70px;font-size:28px}.icon-button{background:var(--ph-surface-2);border-radius:50%;width:42px;height:42px;margin-left:auto;font-size:21px}.stats{border-block:1px solid var(--ph-border);text-align:center;grid-template-columns:repeat(3,1fr);padding:16px 0;display:grid}.stats b,.stats span{display:block}.stats b{font-size:20px}.stats span,.muted{color:var(--ph-text-muted);font-size:12px}.settings{background:var(--ph-surface);border:1px solid var(--ph-border);border-radius:var(--ph-radius);overflow:hidden}.settings>*{text-align:left;border-bottom:1px solid var(--ph-border);width:100%;color:var(--ph-text);background:0 0;justify-content:space-between;padding:17px;display:flex}.settings>:last-child{border:0}.settings select{background:var(--ph-surface-2);color:var(--ph-text);border:0;border-radius:7px;padding:5px}.tabbar{z-index:3;padding:8px 8px calc(8px + var(--ph-safe-bottom));background:color-mix(in srgb,var(--ph-bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--ph-border);justify-content:center;gap:min(6vw,54px);display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--ph-text-muted);background:0 0;justify-items:center;gap:2px;min-width:56px;font-size:11px;display:grid}.nav-item i{font-size:21px;font-style:normal}.nav-item.active{color:var(--ph-accent-2)}.game-page{max-width:560px;min-height:100dvh;padding:calc(14px + var(--ph-safe-top)) 16px calc(20px + var(--ph-safe-bottom));margin:auto;position:relative}.game-top{align-items:center;gap:14px;display:flex}.game-top .icon-button{margin:0}.game-top div{gap:2px;display:grid}.game-top span{color:var(--ph-text-muted);font-size:12px}.game-top .icon-button:last-child{margin-left:auto}.scoreboard{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.scoreboard div{background:var(--ph-surface);border-radius:var(--ph-radius-sm);padding:12px}.scoreboard span,.scoreboard strong{display:block}.scoreboard span{color:var(--ph-text-muted);letter-spacing:1px;font-size:10px}.scoreboard strong{margin-top:3px;font-size:26px}.blocks-board{aspect-ratio:1;touch-action:none;border-radius:18px;width:100%;max-width:440px;margin:auto;display:block}.game-hint{text-align:center;color:var(--ph-text-muted);min-height:20px;font-size:13px}.hand{justify-content:space-around;min-height:92px;display:flex}.piece{background:var(--ph-surface);border-radius:var(--ph-radius-sm);border:2px solid #0000;place-items:center;width:30%;min-height:88px;display:grid}.piece.selected{border-color:var(--ph-accent-2);transform:translateY(-4px)}.piece:disabled{opacity:.3}.piece-art{gap:2px;display:grid}.piece-art i{border-radius:3px;width:12px;height:12px}.game-tip{z-index:4;left:16px;right:16px;bottom:calc(22px + var(--ph-safe-bottom));background:var(--ph-surface);border:1px solid var(--ph-border);max-width:450px;box-shadow:var(--ph-shadow);border-radius:var(--ph-radius);margin:auto;padding:20px;position:fixed}.game-tip b{font-size:20px}.game-tip p{color:var(--ph-text-muted);line-height:1.45}.game-tip .primary{width:100%}@media (hover:hover) and (pointer:fine){.game-card:hover{border-color:var(--ph-accent);transform:translateY(-2px)}.primary:hover{filter:brightness(1.1)}}button:active{transform:scale(.97)}@media (width>=720px){.page{padding:28px}.hero{padding:92px 0 72px}.game-page{padding-top:30px}}
