:root{--bg-app:#0b0b0f;--bg-elevated:#14141a;--bg-card:#1a1a22;--border-subtle:rgba(255,255,255,0.08);--border-accent:rgba(124,92,255,0.55);--text-primary:#f5f5f7;--text-secondary:#9a9aa3;--accent:#7c5cff;--accent-soft:#9b87ff;--accent-tile-2:#6b4de6;--positive:#3dffb5;--danger:#ff5c7a;--radius:12px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);color-scheme:dark}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:var(--bg-app);color:var(--text-primary);font-family:Plus Jakarta Sans,Noto Sans SC,Noto Sans JP,Noto Sans KR,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.app-shell{width:100%;max-width:480px;margin:0 auto;min-height:100dvh;padding-bottom:calc(16px + var(--safe-bottom))}.icon-btn,.outline-btn,.primary-btn{min-height:44px;min-width:44px;border-radius:var(--radius);border:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);padding:0 14px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;padding:0}.primary-btn{background:var(--accent);border-color:transparent;color:#fff;font-weight:600}a.primary-btn{display:inline-flex;align-items:center;justify-content:center}.outline-btn:disabled,.primary-btn:disabled{opacity:.45;cursor:not-allowed}.app-top-stack{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:rgba(11,11,15,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle)}.brand-banner{display:flex;align-items:center;justify-content:center;min-height:78px;padding:calc(20px + var(--safe-top)) 12px 20px;border-bottom:1px solid rgba(0,240,255,.12);background:radial-gradient(120% 80% at 50% 0,rgba(0,240,255,.08),transparent 55%),radial-gradient(80% 60% at 70% 100%,rgba(255,43,214,.07),transparent 50%)}.app-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:8px;gap:8px;padding:6px 12px 8px;background:transparent;border-bottom:none}.app-header .icon-btn,.app-header .outline-btn{min-height:36px;min-width:36px;height:36px;border-radius:8px;padding:0 12px;font-size:13px}.app-header .icon-btn{width:36px;padding:0}.app-header .menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(165deg,rgba(255,255,255,.08),rgba(124,92,255,.14));color:var(--text-primary);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 1px 2px rgba(0,0,0,.25);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease}.app-header .menu-trigger:hover{border-color:rgba(124,92,255,.45);background:linear-gradient(165deg,rgba(255,255,255,.1),rgba(124,92,255,.22))}.app-header .menu-trigger:active{transform:scale(.96)}.app-header .menu-trigger.is-open{border-color:rgba(124,92,255,.55);background:linear-gradient(165deg,rgba(124,92,255,.28),rgba(124,92,255,.12));box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 0 1px rgba(124,92,255,.2),0 0 12px rgba(124,92,255,.25)}.menu-trigger-bars{position:relative;display:block;width:16px;height:12px}.menu-trigger-bars span{position:absolute;left:0;display:block;width:100%;height:1.5px;border-radius:999px;background:#f5f5f7;box-shadow:0 0 6px rgba(155,135,255,.35);transition:transform .2s ease,opacity .16s ease,top .2s ease,width .2s ease,left .2s ease}.menu-trigger-bars span:first-child{top:0}.menu-trigger-bars span:nth-child(2){top:5px;width:70%}.menu-trigger-bars span:nth-child(3){top:10px;width:85%}.menu-trigger.is-open .menu-trigger-bars span:first-child{top:5px;transform:rotate(45deg)}.menu-trigger.is-open .menu-trigger-bars span:nth-child(2){opacity:0;transform:scaleX(.4)}.menu-trigger.is-open .menu-trigger-bars span:nth-child(3){top:5px;width:100%;transform:rotate(-45deg)}.app-header .lang-pill{min-height:32px;border-radius:8px}.app-header .lang-pill button{min-height:32px;padding:4px 12px;font-size:13px}.header-left{justify-self:start}.header-center{justify-self:center}.header-right{justify-self:end}.brand-lockup{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.brand-wordmark{font-family:Orbitron,Eurostile,Rajdhani,Segoe UI,system-ui,sans-serif;font-weight:800;font-size:clamp(24px,6.5vw,30px);letter-spacing:.2em;line-height:1.3;white-space:nowrap;background:linear-gradient(90deg,#00f0ff,#7cffef 42%,#ff2bd6);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 6px rgba(0,240,255,.55)) drop-shadow(0 0 14px rgba(255,43,214,.35));animation:brandPulse 3.2s ease-in-out infinite}.brand-2048{letter-spacing:.08em;margin-left:.06em;background:linear-gradient(90deg,#5cffd7,#00f0ff 55%,#ff4ec8);-webkit-background-clip:text;background-clip:text;color:transparent}@keyframes brandPulse{0%,to{filter:drop-shadow(0 0 5px rgba(0,240,255,.45)) drop-shadow(0 0 12px rgba(255,43,214,.28))}50%{filter:drop-shadow(0 0 9px rgba(0,240,255,.75)) drop-shadow(0 0 18px rgba(255,43,214,.5))}}@media (prefers-reduced-motion:reduce){.brand-wordmark{animation:none}}.lang-pill{display:inline-flex;border:1px solid var(--border-subtle);border-radius:999px;overflow:hidden;min-height:36px}.lang-pill button{border:0;background:transparent;color:var(--text-secondary);padding:6px 14px;min-height:36px}.lang-pill button.active{background:var(--accent);color:#fff}.drawer-mask{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.45)}.drawer{position:absolute;top:0;left:0;bottom:0;width:min(66.666vw,320px);background:var(--bg-elevated);border-right:1px solid var(--border-subtle);padding:calc(12px + var(--safe-top)) 12px 20px;overflow-y:auto;animation:slideIn .18s ease-out}@keyframes slideIn{0%{transform:translateX(-8%);opacity:.7}to{transform:none;opacity:1}}.menu-item{width:100%;text-align:left;border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);border-radius:var(--radius);padding:12px 14px;margin-bottom:8px;min-height:44px}.menu-item.disabled{opacity:.55}.menu-panel{margin:0 0 10px;padding:12px;border-radius:var(--radius);background:#101016;border:1px solid var(--border-subtle)}.profile-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;border:1px solid var(--border-subtle)}.muted{color:var(--text-secondary);font-size:13px}.page-main{padding:12px;display:flex;flex-direction:column;gap:14px}.pool-board{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:14px;padding:12px}.pool-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.pool-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:12px;min-height:88px}.pool-card.ok{border-color:var(--border-accent)}.pool-card .name{font-weight:600;font-size:14px}.pool-card .cond{color:var(--text-secondary);font-size:12px;margin-top:4px}.pool-card .count{margin-top:8px;color:var(--positive);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.settle-note{margin-top:10px;text-align:center;color:var(--text-secondary);font-size:12px;line-height:1.4}.banner{background:rgba(124,92,255,.15);border:1px solid var(--border-accent);color:var(--text-primary);border-radius:var(--radius);padding:8px 10px;font-size:13px;text-align:center}.game-section{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:14px;padding:12px}.game-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.game-head h2{margin:0;font-size:28px;letter-spacing:.02em}.score-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin:12px 0}.score-box{background:var(--bg-card);border-radius:10px;padding:10px;text-align:center}.score-box .label{color:var(--text-secondary);font-size:12px}.score-box .value{color:var(--positive);font-size:22px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.board{aspect-ratio:1;width:100%;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;padding:10px;border-radius:12px;border:1px solid var(--border-accent);background:#0e0e14;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tile{border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;background:#15151d;font-size:clamp(16px,5vw,22px)}.tile.v2{background:var(--accent-tile-2)}.tile.v4{background:var(--accent-soft)}.tile.v8{background:#5a3fd4}.tile.v16{background:#4a32b8}.tile.v32{background:#3d2a9a}.tile.v64{background:#322280}.tile.v128{background:#7c5cff}.tile.v256{background:#8f74ff}.tile.v512{background:#a48dff}.tile.v1024{background:#b9a6ff;color:#1a1a22}.tile.v2048{background:var(--positive);color:#0b0b0f}.fund-page{padding:12px;display:flex;flex-direction:column;gap:12px;padding-bottom:calc(88px + var(--safe-bottom))}.fund-page h1{margin:0;font-size:22px}.card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:14px;padding:14px}.field-label{color:var(--text-secondary);font-size:13px;margin-bottom:6px}.input{width:100%;min-height:44px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);padding:0 12px}.sticky-cta{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:min(100%,480px);padding:12px 12px calc(12px + var(--safe-bottom));background:linear-gradient(transparent,var(--bg-app) 30%)}.radio-row{display:flex;flex-direction:column;gap:8px}.radio-row label{display:flex;gap:10px;align-items:center;min-height:44px;padding:8px 10px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--bg-card)}.stepper{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.step-chip{font-size:11px;padding:4px 8px;border-radius:999px;border:1px solid var(--border-subtle);color:var(--text-secondary)}.step-chip.active{border-color:var(--border-accent);color:#fff;background:rgba(124,92,255,.25)}.overlay{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:20px}.overlay-card{width:min(360px,100%);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:14px;padding:18px;text-align:center}.legal-footer{margin-top:28px;padding-top:16px;border-top:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.legal-footer-link{border:0;background:transparent;color:var(--text-secondary);padding:4px 0;font-size:13px;text-decoration:underline;text-underline-offset:3px}.legal-footer-link:hover{color:var(--accent-soft)}.legal-footer-sep{color:var(--text-secondary);opacity:.5}.legal-sheet-mask{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.62);display:flex;align-items:flex-end;justify-content:center;padding:12px}.legal-sheet{width:min(480px,100%);max-height:min(86dvh,720px);display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:16px 16px 12px 12px;overflow:hidden;box-shadow:0 -8px 40px rgba(0,0,0,.45)}.legal-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 0}.legal-sheet-header h2{margin:0;font-size:17px;font-weight:700}.legal-sheet-close{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-subtle);background:rgba(255,255,255,.04);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.legal-sheet-updated{margin:8px 14px 0;font-size:12px}.legal-sheet-body{flex:1 1;overflow-y:auto;padding:12px 14px 8px;-webkit-overflow-scrolling:touch}.legal-section{margin-bottom:16px}.legal-section h3{margin:0 0 8px;font-size:14px;color:var(--accent-soft)}.legal-section p{margin:0 0 8px;font-size:13px;line-height:1.55;color:var(--text-secondary)}.legal-sheet-footer{padding:10px 14px calc(12px + var(--safe-bottom));border-top:1px solid var(--border-subtle);background:rgba(11,11,15,.55)}.toast-stack{position:fixed;left:50%;bottom:calc(24px + var(--safe-bottom));transform:translateX(-50%);z-index:90;display:flex;flex-direction:column;gap:8px;width:min(90vw,360px);pointer-events:none}.toast{background:#22222c;border:1px solid var(--border-subtle);border-radius:10px;padding:10px 12px;text-align:center;font-size:14px}.lang-list button{width:100%;text-align:left;min-height:40px;border:0;background:transparent;color:var(--text-primary);padding:8px 4px}.lang-list button.active{color:var(--accent-soft);font-weight:600}.row-between{display:flex;justify-content:space-between;align-items:center;gap:8px}.amount-xl{font-size:28px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}