:root{--bg-top: #06080a;--bg-bottom: #080a0d;--fg: #ffffff;--hint: #869a8b;--muted: #888c8f;--muted-tab: #5b6169;--panel: #060708;--panel-2: #11151a;--line: #191f25;--glass: rgba(6, 7, 8, .8);--glass-border: #191f25;--card: var(--panel);--accent: #00c853;--accent-fg: #060708;--gold: #ffe54e;--r-pill: 32px;--r-card: 24px;--r-tile: 12px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,var(--bg-top),var(--bg-bottom)) fixed;color:var(--fg);font:14px/1.4 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}main{max-width:480px;margin:0 auto;padding:12px 16px 96px}h1{font-size:20px;margin:8px 0 16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-card);padding:16px;margin-bottom:12px}.big{font-size:40px;font-weight:700;letter-spacing:-.02em}.row{display:flex;justify-content:space-between;padding:6px 0}.muted{color:var(--muted)}.small{font-size:13px}.error{color:#ff6b6b}.warn{color:#ffc46b}.actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px}.row.mine{font-weight:600}.result{border-top:1px solid rgba(255,255,255,.08);margin-top:12px;padding-top:8px}textarea{width:100%;margin:8px 0;font:12px/1.3 ui-monospace,monospace}button{background:var(--panel-2);color:var(--fg);border:1px solid var(--line);border-radius:var(--r-pill);padding:15px 16px;font-size:12px}.btn-primary{background:var(--panel-2);border-color:var(--line);color:var(--fg);box-shadow:0 0 16px #ffffff0f}.actions button:not(.btn-primary){background:var(--panel)}button:disabled{opacity:.4}.card-title{color:var(--muted);font-size:13px;margin-bottom:8px}.empty{color:var(--muted);font-size:14px;padding:8px 0}.tabs{position:fixed;left:16px;right:16px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:10;height:64px;display:flex;align-items:center;padding:0 8px;border-radius:64px;border:0;background:#040505cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:448px;margin:0 auto}.tab{flex:1;background:transparent;border:0;color:var(--muted-tab);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;font-size:10px;letter-spacing:-.2px}.tab i{display:block;width:24px;height:24px;background:currentColor;-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat}.tab-active{color:var(--fg)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:4px 0 12px}.topbar-balance{display:inline-flex;align-items:center;gap:6px;height:32px;background:#060708b3;border:0;border-radius:var(--r-pill);padding:0 12px 0 10px;font-size:12px;font-weight:600}.topbar-balance .chip-icon{width:18px;height:18px}.topbar-balance em{color:var(--accent);font-style:normal}.topbar-refresh{background:#060708b3;border:0;color:var(--fg);width:32px;height:32px;border-radius:var(--r-pill);display:grid;place-items:center;padding:0}.topbar-refresh i{display:block;width:16px;height:16px;background:currentColor;-webkit-mask:url(/ui/reload.svg) center / contain no-repeat;mask:url(/ui/reload.svg) center / contain no-repeat}.seg{display:flex;height:44px;background:var(--panel);border:0;border-radius:var(--r-pill);padding:0;margin-bottom:16px}.seg-item{flex:1;background:transparent;border:1px solid transparent;color:var(--muted);border-radius:var(--r-pill);padding:8px 16px;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:5px}.seg-active{background:var(--panel-2);border-color:var(--line);color:var(--fg)}.seg-dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.decay{color:#d98a8a;font-size:13px;margin-top:6px}.charge-line{padding:4px 0 10px}.banner{position:relative;display:flex;align-items:center;min-height:104px;padding:16px;margin-bottom:12px;border-radius:var(--r-card);overflow:hidden;background:var(--panel) right center / cover no-repeat}.banner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06080aeb 30%,#06080a40)}.banner-clickable{cursor:pointer}.banner-text{position:relative;min-width:0;max-width:60%}.banner-title{font-size:18px;font-weight:600;margin-bottom:6px}.banner-body{font-size:13px;line-height:18px;color:#bfc7cc}.acc{position:relative;overflow:hidden;border-radius:var(--r-card);padding:20px;margin-bottom:16px;background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.acc-bg{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#060708b8,#0607088c),url(/accumulator.webp) center / cover no-repeat}.acc>*:not(.acc-bg){position:relative;z-index:1}.acc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.acc-title{color:var(--hint);font-size:12px;line-height:14px;margin-bottom:8px}.acc-value{display:flex;align-items:center;gap:6px;font-size:36px;line-height:42px;font-weight:700}.acc-bolt{width:36px;height:36px;display:block}.acc-badge{background:#fff;color:var(--accent-fg);border-radius:16px;padding:4px 10px;font-size:10px;line-height:12px;font-weight:500;white-space:nowrap;margin-left:10px}.acc-side{display:flex;flex-direction:column;gap:16px;text-align:center}.acc-side b{display:inline-flex;align-items:center;font-size:14px;line-height:16px}.acc-side img{display:block}.acc-hint{color:var(--hint);font-size:10px;line-height:12px}.acc-empty{margin-top:10px;color:var(--hint);font-size:12px}.gauge{position:relative;height:27px;margin-top:16px}.gauge-bg{display:block;width:100%;height:27px}.gauge-fill{position:absolute;inset:0;display:block;width:100%;height:27px;transition:clip-path .5s cubic-bezier(.2,.8,.2,1)}.gauge-zero{position:absolute;left:0;top:0;width:24px;height:27px;background:linear-gradient(90deg,#a8203f,#d8324f);clip-path:polygon(22% 0,100% 0,78% 100%,0 100%)}.acc-super .gauge-fill{filter:hue-rotate(-95deg) saturate(1.4);animation:supercharge 2.2s ease-in-out infinite}@keyframes supercharge{0%,to{filter:hue-rotate(-95deg) saturate(1.4) brightness(1)}50%{filter:hue-rotate(-95deg) saturate(1.4) brightness(1.25)}}.onb-title{font-size:22px;font-weight:700;margin-bottom:12px}.onb-line{color:var(--fg);margin:8px 0}.onb-demo{margin:16px 0;text-align:center}.onb-chest{font-size:18px;padding:18px 28px}.onb-dots{display:flex;gap:6px;justify-content:center;margin:20px 0 8px}.dot{width:6px;height:6px;border-radius:50%;background:var(--muted);opacity:.4}.dot-active{opacity:1;background:var(--accent)}button.ghost{background:transparent;color:var(--muted)}.modal-back{position:fixed;inset:0;background:#0000008c;display:flex;align-items:flex-end;justify-content:center}.modal{background:var(--card);border-radius:14px 14px 0 0;padding:16px;width:100%;max-width:480px;max-height:80vh;overflow-y:auto}@keyframes reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.reveal{animation:reveal .45s ease-out}.ticker{display:inline-flex;align-items:center}.ticker-slot{display:inline-block;height:1em;overflow:hidden;flex:0 0 auto;align-self:center}.ticker-reel{display:flex;flex-direction:column;transition:transform cubic-bezier(.2,.8,.2,1)}.ticker-digit{height:1em;line-height:1em}.ticker-sep{display:inline-block}.reveal-back{position:fixed;inset:0;z-index:20;display:flex;align-items:flex-end;justify-content:center;background:#0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sheet{width:100%;max-width:480px;max-height:92vh;overflow-y:auto;background:#0f1116;border:1px solid var(--glass-border);border-bottom:0;border-radius:24px 24px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));text-align:center}.sheet-head{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:18px}.sheet-title{font-size:22px;font-weight:700}.sheet-close{width:100%}.reveal-window{position:relative;overflow:hidden;padding-top:14px}.reveal-arrow{position:absolute;top:0;left:50%;transform:translate(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid #ffffff;z-index:2}.reveal-strip{display:flex;height:100%;transition-property:transform;transition-timing-function:cubic-bezier(.1,.8,.2,1)}.reveal-cell{flex:0 0 132px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 6px;opacity:.35;transition:opacity .3s ease,transform .3s ease}.reveal-winner{opacity:1;transform:scale(1.08);background:var(--glass);border-radius:16px}.reveal-caption{margin-top:16px;font-size:24px;font-weight:700}.reveal-fly{animation:fly .7s cubic-bezier(.4,0,.2,1) forwards}@keyframes fly{to{transform:translateY(-42vh) scale(.5);opacity:0}}.reveal-burst{position:relative;height:0}.spark{position:absolute;left:50%;top:-48px;width:6px;height:6px;border-radius:50%;background:var(--accent);animation:spark .6s ease-out forwards;transform:rotate(calc(var(--i) * 30deg)) translateY(0)}@keyframes spark{to{transform:rotate(calc(var(--i) * 30deg)) translateY(-70px);opacity:0}}.charge-spark{display:block;width:10px;height:10px;border-radius:50%;background:var(--accent);margin:4px auto 0;animation:charge .6s ease-in forwards}@keyframes charge{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(120px) scale(.4);opacity:0}}@media(prefers-reduced-motion:reduce){.ticker-reel,.reveal-strip,.reveal-cell,.gauge-fill{transition:none}.reveal-fly,.spark,.charge-spark,.acc-super .gauge-fill{animation:none}}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.case-card{background:var(--panel);border:1px solid transparent;border-radius:var(--r-tile);padding:0 0 8px;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--fg);font-size:10px;text-align:center}.case-card .art{width:100%;height:96px;object-fit:cover;border-radius:var(--r-tile)}.case-picked{border-color:var(--accent);color:var(--fg);box-shadow:0 0 18px #2fd07a40}.case-name{font-weight:500;padding:6px 8px 0;text-transform:capitalize}.case-hint{font-size:10px;color:var(--muted);padding:0 6px}.cost-pill{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-pill);padding:15px 16px;text-align:center;font-size:12px}.art{display:block;object-fit:contain}.chip-icon{width:.9em;height:.9em;vertical-align:-.1em;display:inline-block}.prizes{margin-top:14px}.prize-grid{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.prize{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:2px;background:#ffffff0a;border-radius:12px;padding:8px 10px;min-width:84px}.prize-won{text-align:center;margin:4px 0 8px}.keyrow{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:8px}.keychip{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;background:var(--glass);border:1px solid var(--glass-border);border-radius:999px;padding:6px 12px 6px 6px;font-size:14px}.rank-wooden{--rank: #8b5e3c}.rank-bronze{--rank: #cd7f4f}.rank-silver{--rank: #9aa7b3}.rank-gold{--rank: #e8931f}.rank-platinum{--rank: #9dbdd6}.rank-diamond{--rank: #87cbf4}.rank-legendary{--rank: #e23a55}.who{display:flex;align-items:center;gap:10px;margin-bottom:12px}.who-avatar{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;border:2px solid var(--rank, var(--glass-border));background:var(--glass);font-weight:600}.who-name{font-weight:600;margin-right:auto}.rank-pill{background:var(--rank, var(--glass));color:#0d0d0d;font-weight:600;border-radius:999px;padding:4px 12px;font-size:14px;text-transform:capitalize}.rb{position:relative;overflow:hidden;border:1px solid var(--glass-border);border-radius:20px;padding:18px 16px 16px;margin-bottom:12px}.rb-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center}.rb:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#080a0e73,#080a0eb8)}.rb>*:not(.rb-bg){position:relative;z-index:1}.rb-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.rb-amount{font-size:40px;font-weight:700;letter-spacing:-.02em}.rb-pct{text-align:right}.rb-pct b{font-size:28px;color:var(--rank, var(--fg))}.rb-claim{width:100%;background:var(--rank, var(--accent));color:#0d0d0d;border-color:transparent;font-weight:600;padding:14px 18px}.section-head{display:flex;justify-content:space-between;margin:16px 2px 8px;font-size:15px}.ops{display:flex;flex-direction:column;gap:6px}.op{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:var(--glass);border:1px solid var(--glass-border);border-radius:14px;padding:12px 14px}.op-name{min-width:0}.path-head{text-align:center;margin:8px 0 20px}.path-head h2{font-size:26px;margin:0 0 4px}.levels{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;text-align:center}.level-side{color:var(--muted)}.level-bubble{width:84px;height:84px;margin:0 auto 8px;border-radius:999px;background:var(--glass);display:grid;place-items:center;font-size:30px;font-weight:700;color:#ffffff59}.level-done{color:var(--accent)}.level-now{position:relative;width:132px;height:132px;display:grid;place-items:center}.level-now svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.level-now circle{fill:none;stroke-width:6;stroke-linecap:round}.ring-track{stroke:#ffffff14}.ring-value{stroke:var(--rank, var(--accent));transition:stroke-dasharray .6s ease-out}.level-now span{font-size:44px;font-weight:700}.level-title{text-align:center;font-size:22px;font-weight:700;margin-top:12px}.level-reward{text-align:center;margin-bottom:16px}.xp-card{border-radius:16px;padding:14px 16px;margin-bottom:10px;background:linear-gradient(90deg,rgba(0,0,0,.55),var(--rank, var(--glass)));border:1px solid var(--glass-border)}.xp-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.xp-rank{display:inline-flex;align-items:center;gap:8px}.rank-pill-light{background:#fff;color:#0d0d0d;border-radius:999px;padding:4px 12px;font-weight:600}.xp-bar{height:6px;border-radius:999px;background:#00000073;overflow:hidden}.xp-bar span{display:block;height:100%;background:#fff;border-radius:999px}.next-rank{width:100%;text-align:center;padding:12px 14px}.linkish{background:transparent;border:0;color:var(--muted);padding:0;font-size:15px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center;margin-bottom:12px}.stats b{font-size:20px}.milestones{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;margin-bottom:6px}.ms{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:4px;opacity:.45;text-align:center;min-width:76px}.ms-taken{opacity:1}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:end;margin-bottom:12px}.podium-card{background:var(--glass);border:1px solid var(--glass-border);border-radius:16px;padding:12px 8px;text-align:center}.podium-place{font-size:26px;font-weight:700}.podium-1{border-color:#ffc44d;box-shadow:0 0 24px #ffc44d33;padding-top:22px}.podium-2{border-color:#9aa7b3}.podium-3{border-color:#cd7f4f}.my-place{text-align:center;margin:12px 0;font-size:17px}.op-me{border-color:#ffffff40}.prize-line{display:flex;align-items:center;gap:10px;color:var(--gold);font-size:13px;margin:6px 2px}.prize-line:before,.prize-line:after{content:"";flex:1;height:1px;background:#ffc44d59}.op-race{grid-template-columns:28px 1fr auto}.rank-pill-light,.level-reward b{text-transform:capitalize}.state-screen{text-align:center;padding:40px 16px}.state-screen svg{width:48px;height:48px;fill:var(--fg);opacity:.85;margin-bottom:14px}.state-title{font-size:20px;font-weight:700;margin-bottom:6px}.state-body{max-width:320px;margin:0 auto 18px}.case-locked{opacity:.4}.tour{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;flex-direction:column;justify-content:flex-end;padding:30px 16px calc(104px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(17,21,26,0),var(--panel-2));pointer-events:none}.tour-card{pointer-events:auto;background:linear-gradient(180deg,var(--bg-top),var(--bg-bottom));border-radius:var(--r-pill);padding:24px;display:flex;flex-direction:column;gap:20px;max-width:448px;margin:0 auto;width:100%}.tour-title{font-size:20px;line-height:24px;font-weight:500}.tour-body{margin:0;font-size:14px;line-height:20px;font-weight:300;color:#bfc7cc}.tour-actions{display:flex;gap:8px;align-items:center}.tour-next{flex:1;background:#fff;color:var(--accent-fg);border:1px solid #e6e7e9;border-radius:var(--r-pill);padding:15px 16px;font-size:12px}.tour-count{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-pill);font-size:12px}.tour-slash{color:#ffffff40}.tour-total{color:#ffffff80}.tour-skip{background:transparent;border:0;color:var(--muted);font-size:12px;text-decoration:underline;padding:0}.loader{min-height:70vh;display:grid;place-items:center}.loader img{animation:loader-pulse 1.6s ease-in-out infinite}@keyframes loader-pulse{0%,to{opacity:.45;transform:scale(.94)}50%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.loader img{animation:none;opacity:1}}.leagues{text-align:left}.leagues-title{display:block;margin-bottom:18px}.leagues-head,.league{display:grid;grid-template-columns:96px 1fr 1fr auto;gap:8px;align-items:center}.leagues-head{color:var(--muted);font-size:12px;padding:0 12px 8px}.league{padding:10px 12px;border-radius:14px;border:1px solid transparent}.league:nth-child(odd){background:var(--panel)}.league-mine{border-color:var(--rank);box-shadow:0 0 16px color-mix(in srgb,var(--rank) 30%,transparent)}.podium-card{position:relative}.podium-cup{position:absolute;top:-14px;left:50%;transform:translate(-50%);width:28px;height:28px;border-radius:999px;background:#ffc44d url(/ui/tab-race.svg) center / 16px no-repeat}.invite{display:flex;gap:8px;align-items:center;margin:10px 0}.invite-link{flex:1;min-width:0;overflow-wrap:anywhere;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 12px;font-size:12px;font-family:ui-monospace,monospace}.friend-state{font-size:12px}.friend-active{color:var(--accent)}.friend-started{color:var(--gold)}.friend-idle{color:var(--muted)}.ms-bar{height:4px;border-radius:999px;background:var(--panel);overflow:hidden;margin:4px 0 6px}.ms-bar span{display:block;height:100%;background:var(--accent);border-radius:999px}.op-friend{grid-template-columns:72px 1fr auto}.friend-id{font-family:ui-monospace,monospace}.friend-rank:first-letter{text-transform:uppercase}.rank-word{display:inline-block}.rank-word:first-letter{text-transform:uppercase}
