:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--bg:#15151f;--panel:#1d1d2b;--border:#2e2e44;--fg:#e8e8f0;--muted:#9a9ab0;--accent:#6c7cff}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--fg);-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none;min-height:100dvh;font-family:system-ui,-apple-system,Segoe UI,Hiragino Sans,sans-serif}#app{width:100%;max-width:440px;min-height:100svh;padding:calc(12px + var(--safe-top)) calc(12px + var(--safe-right)) calc(12px + var(--safe-bottom)) calc(12px + var(--safe-left));flex-direction:column;gap:12px;margin:0 auto;display:flex}button{min-width:44px;min-height:44px;font:inherit;color:var(--fg);cursor:pointer;background:#262638;border:1px solid #3a3a52;border-radius:8px}button:active{background:#313148}button:disabled{opacity:.4}.panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:6px;padding:12px;display:flex}.row{justify-content:space-between;align-items:center;gap:8px;display:flex}.muted{color:var(--muted);font-size:13px}.modal-overlay{padding:calc(16px + var(--safe-top)) 16px calc(16px + var(--safe-bottom));z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:12px;width:100%;max-width:360px;padding:20px;display:flex}.modal h2{margin:0;font-size:18px}.offline-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.offline-list li{border-bottom:1px solid #26263a;justify-content:space-between;padding:6px 0;display:flex}.offline-list b{color:#ffd479;font-variant-numeric:tabular-nums}.modal-claim{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.modal-actions{flex-direction:column;gap:8px;display:flex}.modal-x2{color:#ffd479;background:#2e2a16;border-color:#5a4a2a;font-weight:700}.modal-confirm{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.modal-confirm.danger{background:#b1334a;border-color:#b1334a}.modal-cancel{background:#262638}.footer{text-align:center;margin-top:4px}.dangerbtn{color:#e0556b;background:0 0;border-color:#5a2a2a;min-height:36px;font-size:13px}.dangerbtn:active{background:#2a1620}.privacy{color:#5a5a72;margin:8px 0 0;font-size:11px}.bar{background:#0e0e16;border-radius:7px;height:14px;position:relative;overflow:hidden}.bar .fill{width:0%;height:100%;transition:width .1s linear}.bar.hp .fill{background:#e0556b}.bar.sp .fill{background:#4aa3ff}.bar.exp .fill{background:#7d6cff}.bar.enemy .fill{background:#b15cff}.bartext{color:#f0f0ff;justify-content:center;align-items:center;font-size:10px;display:flex;position:absolute;inset:0}.arena{justify-content:space-around;align-items:center;padding:8px 0;font-size:40px;display:flex}.sprite{transition:opacity .2s linear}.status{text-align:center;color:#ffb86b;min-height:18px;font-size:13px}.jobchoice{flex-direction:column;gap:8px;margin:4px 0;display:flex}.jobbtn{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;padding:10px 12px;display:flex}.jobname{font-weight:700}.jobblurb{color:var(--muted);font-size:11px}.stagelist{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:4px;display:grid}.stagebtn{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;display:flex}.stagebtn.current{border-color:var(--accent);background:#2b2b46}.stagebtn.locked{opacity:.45}.stagetitle{font-weight:700}.stagesub{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.respec{flex-direction:column;gap:8px;margin-top:4px;display:flex}.respecbtn{padding:10px 12px}.skills{flex-direction:column;gap:0;margin-top:4px;display:flex}.skillrow{border-top:1px solid #26263a;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:8px 0;display:flex}.skills .skillrow:first-child{border-top:none}.skillname{font-weight:700}.skillbadge{color:var(--muted);border:1px solid #3a3a52;border-radius:999px;padding:1px 6px;font-size:10px}.skillbadge.active{color:#ffd479;border-color:#5a4a2a}.skillbadge.passive{color:#8fd0ff;border-color:#2a4a5a}.skilllvl{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.skillrow button{margin-left:auto}.skilldesc{color:var(--muted);flex-basis:100%;order:1;font-size:12px}.stats{flex-direction:column;gap:6px;margin-top:4px;display:flex}.statrow{grid-template-columns:48px 1fr 44px;align-items:center;gap:8px;display:grid}.statlabel{font-weight:700}.statval{text-align:right;font-variant-numeric:tabular-nums}
