:root{--bg: #0b0e1a;--fg: #e6e9f5}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--fg);font-family:system-ui,sans-serif;touch-action:manipulation;-webkit-user-select:none;user-select:none}#app{display:flex;flex-direction:column;height:100svh;max-width:480px;margin:0 auto}#game{flex:0 0 auto;height:min(max(62svh,min(100vw,480px) * 1.5),72svh);min-height:0}#panel{flex:1 1 auto;overflow-y:auto}#game{position:relative}#hint{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:2;pointer-events:none;padding:12px 16px;border-radius:12px;background:#0b0e1ad1;border:1px solid #2a3558;color:var(--fg);font-size:14px;line-height:1.4;text-align:center;transition:opacity .4s}#hint p{margin:4px 0;white-space:nowrap}#hint.is-gone{opacity:0}@media(min-aspect-ratio:1/1)and (min-width:800px){body{overflow:hidden}#app{flex-direction:row;justify-content:center;max-width:none;gap:16px}#game{height:100svh;width:min(100svh * 2 / 3,60vw)}#panel{flex:0 1 440px;height:100svh}}.ui-panel,#modal.ui-modal{--ui-card: #131a2e;--ui-card-2: #1a2240;--ui-line: #252f52;--ui-muted: #8d96b8;--ui-accent: #7cc4ff;--ui-accent-fg: #08121f;--ui-ok: #6fdc9a;--ui-warn: #ffb35c;--ui-danger: #ff6b6b;--c-crystal: #6fe3ff;--c-iron: #b8c0d4;--c-gems: #ff6fd8;--c-sparks: #ffb347}.ui-panel{font-size:15px;line-height:1.35;overscroll-behavior:contain;-webkit-tap-highlight-color:transparent;scrollbar-width:thin;scrollbar-color:var(--ui-line) transparent}:where(.ui-panel) button{font:inherit;color:inherit}.ui-top{position:sticky;top:-1px;z-index:2;padding-top:1px;background:var(--bg, #0b0e1a);box-shadow:inset 0 1px var(--ui-line)}.ui-strip{display:flex;gap:6px;padding:6px 10px 2px;overflow:hidden}.pill{display:flex;align-items:center;gap:6px;padding:3px 9px 3px 7px;border-radius:999px;background:var(--ui-card);font-variant-numeric:tabular-nums;font-weight:600;font-size:14px;white-space:nowrap}.pill[hidden]{display:none}.ui-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:4px 6px 0;border-bottom:1px solid var(--ui-line)}.tab{position:relative;min-height:44px;padding:0 2px;border:0;border-bottom:2px solid transparent;background:none;color:var(--ui-muted);font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab.is-active{color:var(--fg, #e6e9f5);border-bottom-color:var(--ui-accent)}.tab.has-dot:after{content:"";position:absolute;top:9px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--c-sparks)}.tab-body{display:flex;flex-direction:column;gap:8px;padding:10px 10px calc(16px + env(safe-area-inset-bottom))}.card{background:var(--ui-card);border:1px solid var(--ui-line);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px}.card-title{margin:0;display:flex;align-items:center;gap:8px;font-size:15px;font-weight:650}.card-meta{color:var(--ui-muted);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.desc{margin:0;color:var(--ui-muted);font-size:13px}.tag-ok{color:var(--ui-ok)}.tag-warn{color:var(--ui-warn)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 2px}.toolbar-label{color:var(--ui-muted);font-size:13px}.btn{min-height:44px;padding:4px 8px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-card-2);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;text-align:center;touch-action:manipulation;transition:background-color .12s,opacity .12s,transform .08s}.btn:active:not(:disabled){transform:scale(.97)}.btn:focus-visible,.tab:focus-visible,.switch:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}.btn-label{font-size:13.5px;font-weight:600;white-space:nowrap}.btn-cost{display:flex;align-items:center;gap:5px;font-size:13px;font-variant-numeric:tabular-nums;opacity:.9}.btn-cost[hidden]{display:none}.btn-primary{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-accent-fg)}.btn-primary .btn-label{font-size:14.5px}.btn-wide{width:100%}.btn-ghost{background:transparent;color:var(--ui-muted)}.btn-danger{background:transparent;border-color:var(--ui-danger);color:var(--ui-danger);font-weight:650}.btn-danger.is-armed{background:var(--ui-danger);color:#1a0606}.btn.is-off{opacity:.42}.btn-primary.is-off{background:var(--ui-card-2);border-color:var(--ui-line);color:var(--fg, #e6e9f5);opacity:.55}.btn:disabled{opacity:.35;cursor:default}.btn.is-max:disabled{opacity:.6;color:var(--ui-ok)}.seg{display:flex;gap:2px;padding:2px;border-radius:10px;background:var(--bg, #0b0e1a);border:1px solid var(--ui-line)}.seg-btn{flex:1 1 0;min-width:0;min-height:40px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--ui-muted);font-size:13.5px;font-weight:600}.seg-btn.is-active{background:var(--ui-card-2);color:var(--fg, #e6e9f5);box-shadow:inset 0 0 0 1px var(--ui-accent)}.seg-btn:disabled{opacity:.3}.cur{display:inline-block;flex:none;width:11px;height:11px}.cur-crystal{background:var(--c-crystal);transform:rotate(45deg) scale(.85);border-radius:1px}.cur-iron{background:var(--c-iron);border-radius:2px}.cur-gems{background:var(--c-gems);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.cur-sparks{background:var(--c-sparks);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);width:13px;height:13px}.btn-primary:not(.is-off) .cur{filter:brightness(.45)}.setting{display:flex;flex-direction:column;gap:4px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-direction:row}.setting-label{font-size:14px}.setting-value{color:var(--ui-muted);font-size:13px;font-variant-numeric:tabular-nums}.range{width:100%;height:44px;margin:0;accent-color:var(--ui-accent);background:transparent;touch-action:pan-y}.switch{flex:none;position:relative;width:52px;height:44px;border:0;background:none;cursor:pointer}.switch:before{content:"";position:absolute;left:2px;right:2px;top:10px;height:24px;border-radius:12px;background:var(--ui-line);transition:background-color .15s}.switch-knob{position:absolute;top:13px;left:5px;width:18px;height:18px;border-radius:50%;background:var(--fg, #e6e9f5);transition:transform .15s}.switch.is-on:before{background:var(--ui-accent)}.switch.is-on .switch-knob{transform:translate(22px);background:var(--ui-accent-fg)}#modal.ui-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:#04060eb8}#modal.ui-modal[hidden]{display:none}.dialog{width:min(360px,100%);background:var(--ui-card, #131a2e);border:1px solid var(--ui-line, #252f52);border-radius:16px;padding:18px 16px 16px;display:flex;flex-direction:column;gap:10px;color:var(--fg, #e6e9f5);font-size:15px}.dialog .btn{font:inherit;color:var(--ui-accent-fg)}.dialog-title{margin:0;font-size:19px}.report-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ico-report{width:24px;height:24px;color:var(--ui-muted)}.report-big{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.report-gain{color:var(--ui-ok);font-weight:700;font-variant-numeric:tabular-nums}.report-shards{display:flex;flex-wrap:wrap;gap:6px}.report-shard{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--ui-card-2);font-weight:700;font-variant-numeric:tabular-nums}.report-chips{display:flex;flex-wrap:wrap;gap:6px}.dialog .chip{font:inherit;font-size:12.5px;border:0}.dialog .chip-ok{color:var(--ui-ok)}.dialog .chip-warn{color:var(--ui-warn);min-height:32px;cursor:pointer}.report-picks{display:flex;flex-direction:column;gap:6px;padding-top:4px;border-top:1px solid var(--ui-line)}.report-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ui-muted);padding-top:6px}.picks{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.dialog .btn.pick{color:var(--fg, #e6e9f5);padding:8px 4px;gap:3px;min-height:92px}.pick-label{font-size:12.5px;font-weight:600;line-height:1.2}.ico-pick{width:30px;height:30px}.pick-icon{position:relative;display:inline-flex}.pick-badge{position:absolute;right:-7px;bottom:-4px;width:17px;height:17px;border-radius:50%;background:var(--ui-card);border:1px solid var(--ui-line);display:flex;align-items:center;justify-content:center}.pick-badge .ico{width:11px;height:11px}@media(prefers-reduced-motion:reduce){.btn,.switch:before,.switch-knob{transition:none}}.ico{display:block;flex:none;width:18px;height:18px;overflow:visible}.ico.is-hidden{display:none}.glyphs{display:inline-flex}.ico-xs{width:13px;height:13px}.ico-sm{width:16px;height:16px}.ico-btn{width:17px;height:17px}.ico-lead{width:30px;height:30px}.ico-lead.is-dim{opacity:.45}.ico-chip{width:13px;height:13px}.ico-opt{width:26px;height:26px}.ico-orb{width:40px;height:40px}.c-crystal{color:var(--c-crystal)}.c-sparks{color:var(--c-sparks)}.c-ok{color:var(--ui-ok)}.card.list{padding:2px 10px;gap:0}.card.list>.card-head{padding:8px 0 4px}.card.list>*+*{border-top:1px solid var(--ui-line)}.card.list>.card-head+*{border-top:0}.btn-act{gap:2px;padding:4px;min-width:0}.btn-top{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0}.btn-act .btn-label{font-size:13.5px;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}.btn-act .btn-label:empty{display:none}.btn-act .btn-cost{font-size:12.5px}.btn-side{width:92px;flex:none}.btn-small{flex:1 1 0}.btn-pair{display:flex;gap:6px;width:132px;flex:none}.btn-span{grid-column:2 / -1;flex-direction:row;gap:10px}.btn-span .btn-top{gap:6px}.btn-primary.is-full{background:transparent;border-color:var(--ui-warn);color:var(--ui-warn);opacity:1}.btn.is-hint{animation:ui-hint .45s ease-in-out 2}@keyframes ui-hint{50%{box-shadow:0 0 0 4px #7cc4ff73;transform:scale(1.03)}}.seg-buy{flex:0 1 auto}.seg-buy .seg-btn{min-height:44px;min-width:52px;padding:0 8px}.info-btn{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:none;color:var(--ui-muted);cursor:pointer}.info-btn:after{content:"";position:absolute;top:-11px;right:-11px;bottom:-11px;left:-11px}.info-btn[aria-expanded=true]{color:var(--ui-accent)}.ico-info{width:16px;height:16px}.info-pop{margin:0 0 8px;padding:8px 10px;border-radius:10px;background:var(--ui-card-2);display:flex;flex-direction:column;gap:6px;font-size:13px}.info-pop[hidden]{display:none}.info-note{margin:0;color:var(--ui-muted);font-size:13px}.info-line{display:flex;align-items:center;gap:8px}.info-label{flex:1;color:var(--ui-muted)}.info-line b{font-variant-numeric:tabular-nums}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:var(--ui-card-2);color:var(--ui-muted);font-size:12px;white-space:nowrap}.chip[hidden]{display:none}.slotbar{padding:8px 10px;gap:0}.slotbar-main{display:flex;align-items:center;gap:10px}.slotbar-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.slotbar-top{display:flex;align-items:center;gap:8px}.slot-count{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}.btn-slot{width:76px;flex:none}.slotbar .info-pop{margin:8px 0 0}.pips{display:flex;flex-wrap:wrap;gap:3px}.pip{width:11px;height:11px;border-radius:3px;border:1px solid var(--ui-muted);opacity:.7}.pip.is-used{background:var(--ui-accent);border-color:var(--ui-accent);opacity:1}.slotbar.is-full{border-color:var(--ui-warn)}.slotbar.is-full .slot-count,.slotbar.is-full .stat-lead{color:var(--ui-warn)}.slotbar.is-full .pip.is-used{background:var(--ui-warn);border-color:var(--ui-warn)}.orb-row{display:grid;grid-template-columns:62px 1fr 1fr 1fr;align-items:center;gap:6px;min-height:64px;padding:4px 0}.orb-row .btn{min-height:50px}.orb-lead{display:flex;flex-direction:column;align-items:center;gap:0}.orb-lead .info-btn{height:18px}.orb-cell{position:relative;width:48px;height:40px;display:flex;justify-content:center}.orb-badge{position:absolute;right:-6px;bottom:-2px;min-width:22px;padding:0 4px;border-radius:999px;background:var(--fg, #e6e9f5);color:var(--ui-accent-fg);font-size:12px;font-weight:700;line-height:17px;text-align:center;font-variant-numeric:tabular-nums}.orb-badge.is-zero{background:var(--ui-line);color:var(--ui-muted)}.orb-badge[hidden]{display:none}.orb-name{display:flex;align-items:center;gap:2px;font-size:12px;color:var(--ui-muted)}.orb-row.is-locked .ico-orb{opacity:.3;filter:grayscale(1)}.orb-lock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--fg, #e6e9f5)}.ico-lock{width:20px;height:20px}.sell-btn{position:absolute;left:-8px;top:-4px;display:flex;align-items:center;gap:2px;height:22px;min-width:22px;padding:0 3px;border:1px solid var(--ui-line);border-radius:999px;background:var(--ui-card-2);color:var(--ui-muted);font-size:12px;font-weight:700;cursor:pointer;z-index:1}.sell-btn:after{content:"";position:absolute;top:-11px;right:-11px;bottom:-11px;left:-11px}.sell-btn[hidden]{display:none}.ico-sell{width:14px;height:14px}.sell-btn.is-armed{background:var(--ui-danger);border-color:var(--ui-danger);color:#1a0606;padding-right:7px}.sell-amount:empty{display:none}.stat-row{display:flex;align-items:center;gap:10px;min-height:64px;padding:6px 0}.stat-lead{flex:none;width:36px;display:flex;justify-content:center;color:var(--fg, #e6e9f5)}.stat-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.stat-name{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--ui-muted)}.val{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.val-main{display:inline-flex;align-items:center;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.val-sub{font-size:12px;color:var(--ui-muted)}.val-sub:empty{display:none}.rate{display:inline-flex;align-items:center;gap:4px;font-size:15px}.rate .val-main{font-size:15px}.stat-row>.btn,.btn-pair .btn{min-height:52px}.slot{display:flex;align-items:center;gap:8px}.slot-num{flex:none;width:24px;height:24px;border-radius:50%;background:var(--ui-card-2);color:var(--ui-muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.seg-slot{flex:1}.seg-slot .seg-btn{min-height:48px;display:flex;align-items:center;justify-content:center;padding:0;color:var(--ui-muted)}.card-title .info-btn{margin-left:2px}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tile{background:var(--ui-card);border:1px solid var(--ui-line);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px;min-width:0}.tile-head{display:flex;align-items:center;gap:6px}.ico-tile{width:22px;height:22px}.tile-surge .ico-tile{color:#c9a7ff}.tile-boost .ico-tile{color:var(--c-sparks)}.tile-name{flex:1;font-size:14px;font-weight:650}.tile-status{display:flex;align-items:center;gap:6px}.tile-time{font-size:13px;color:var(--ui-muted);font-variant-numeric:tabular-nums;min-width:34px;text-align:right}.tile.is-active{border-color:var(--ui-ok)}.tile.is-active .tile-time{color:var(--ui-ok);font-weight:700}.tile .info-pop{margin:0}.bar{position:relative;flex:1;height:6px;border-radius:3px;background:var(--ui-line);overflow:hidden}.bar-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ui-ok);transform-origin:left;transform:scaleX(0);transition:transform .3s linear}.hero-top{display:flex;align-items:center;gap:8px}.ico-hero{width:30px;height:30px}.hero-num{font-size:28px;font-weight:750;color:var(--c-sparks);font-variant-numeric:tabular-nums}.hero-label{flex:1;font-size:13px;color:var(--ui-muted)}.hero-progress{display:flex;align-items:center;gap:8px}.hero-progress[hidden]{display:none}.hero-bar .bar-fill{background:var(--c-sparks)}.hero-sub{font-size:13px;color:var(--ui-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.btn-danger .btn-top{gap:6px}@media(prefers-reduced-motion:reduce){.btn.is-hint{animation:none;box-shadow:0 0 0 3px #7cc4ff73}.bar-fill{transition:none}}
