:root{color-scheme:dark;--bg:#090d14;--panel:#111924;--line:#283441;--ink:#edf3ed;--muted:#a4b1bc;--lime:#b8ff18;--pink:#ff73b3;--cyan:#37d8ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#15252b,transparent 65%),var(--bg);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,sans-serif}button,a,input,select{touch-action:manipulation}button,input,select{font:inherit}button,a{transition:background .16s,border-color .16s,transform .16s}button{cursor:pointer;color:var(--ink);background:#192330;border:1px solid var(--line);border-radius:9px;padding:10px 16px;font-weight:650}button:hover:not(:disabled){border-color:var(--lime);background:#233426}button:disabled{opacity:.43;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}a{color:var(--lime);text-decoration:none}.primary{background:var(--lime);color:#142000;border-color:var(--lime)}.quiet{background:transparent}.danger{color:#ff9797}header{max-width:1440px;margin:auto;padding:22px 32px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;color:var(--ink);font-weight:800;letter-spacing:2px;white-space:nowrap}.brand small{display:block;color:var(--muted);font:9px/1.8 ui-monospace,monospace;letter-spacing:1px}.mark{font-size:29px;font-weight:950;color:var(--lime);letter-spacing:-3px;transform:skew(-7deg)}nav{display:flex;gap:5px;align-items:center;margin:auto}nav button{border:0;background:none;color:var(--muted);font-size:13px}nav a{font-size:12px;margin-left:12px;color:var(--muted)}nav .active{color:var(--lime);background:#b8ff1810}.mode{padding:7px 20px;background:#c4eaff07;color:var(--muted);border-bottom:1px solid #1b2833;text-align:center;font:11px/1.5 ui-monospace,monospace;letter-spacing:.7px}main{max-width:1240px;min-height:76vh;margin:auto;padding:30px 24px 50px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(34px,5vw,60px);letter-spacing:-2px;line-height:1.05;margin-bottom:16px}h2{font-size:26px;letter-spacing:-.7px}h3{font-size:16px}small,.muted{color:var(--muted)}.eyebrow{color:var(--lime);font:11px/1.6 ui-monospace,monospace;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px}.hero{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:30px;margin-bottom:26px}.hero p{max-width:480px;color:var(--muted)}.hero-art{position:relative;aspect-ratio:1.6;background:radial-gradient(ellipse,#3b573832,transparent 70%)}.hero-art canvas{width:100%;height:100%;position:absolute;inset:0}.chips,.actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.chip{font:11px ui-monospace,monospace;border:1px solid var(--line);border-radius:5px;padding:6px 9px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{padding:22px;border:1px solid var(--line);background:linear-gradient(145deg,#151e2a,#101820);border-radius:15px}.card p{color:var(--muted);font-size:13px}.card .number{font:12px ui-monospace,monospace;color:var(--lime);margin-bottom:16px}.pet-summary{display:flex;align-items:center;gap:14px}.portrait{width:70px;height:70px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.scene-portrait{position:relative;flex-shrink:0;width:80px;height:80px;border-radius:12px;overflow:hidden;background:#090d14}.scene-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.stack{display:grid;gap:16px}.login{max-width:840px;margin:45px auto}.login form{display:grid;grid-template-columns:2fr 2fr 1fr;gap:16px}.login button{grid-column:1/-1}label{display:grid;gap:6px;font-size:12px;color:var(--muted)}input,select{background:#090e16;border:1px solid var(--line);border-radius:8px;padding:11px 12px;color:var(--ink);width:100%}.section-head{margin:20px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.build-layout{display:grid;grid-template-columns:300px 1fr;gap:22px}.stats{display:grid;gap:8px}.stat{display:grid;grid-template-columns:45px 1fr 35px 35px;align-items:center;gap:7px;padding:8px;background:#0b121a;border-radius:7px}.stat button{padding:3px}.stat strong{font:20px ui-monospace,monospace}.moves{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.move{position:relative;border:1px solid var(--line);padding:15px;border-radius:12px;background:#121c27;min-height:140px;text-align:left;color:var(--ink)}.move.selected{border-color:var(--lime);box-shadow:inset 0 0 0 1px #b8ff1844}.move.locked{opacity:.5}.move .type{font:10px ui-monospace,monospace;letter-spacing:1px;color:var(--cyan);margin-bottom:7px}.move[data-type=defense] .type{color:var(--pink)}.move h3{margin-bottom:5px}.move p{font-size:12px;margin:8px 0;color:var(--muted)}.move small{font:11px/1.6 ui-monospace,monospace}.move .rank{display:flex;gap:8px;margin-top:12px;align-items:center}.move .rank button{padding:4px 9px;font-size:11px}.move .pick{width:100%;background:transparent;padding:0;border:0;text-align:left}.epic{border:1px solid #ad80ff88;background:linear-gradient(100deg,#43264b44,#141c2a);border-radius:12px;padding:18px;margin:18px 0}.epic .eyebrow{color:#d0a2ff}.arena-shell{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#0b121b}.battle-head{padding:16px 22px;display:grid;grid-template-columns:1fr 120px 1fr;gap:15px;align-items:center}.fighter-label{display:flex;gap:10px;align-items:center}.fighter-label .portrait{width:42px;height:42px}.fighter-label.right{flex-direction:row-reverse;text-align:right}.health{height:8px;background:#303a44;border-radius:5px;overflow:hidden;margin-top:7px}.health i{height:100%;display:block;background:var(--lime);transition:width .35s}.right .health i{background:var(--pink)}.fighter-meta{flex:1}.fighter-meta small{font-size:10px}.clock{text-align:center;font:27px ui-monospace,monospace}.clock small{display:block;font-size:9px;letter-spacing:2px}.stage{position:relative;background:#080d13}.stage canvas{width:100%;display:block;aspect-ratio:2.5}.stage-banner{position:absolute;top:18px;left:0;right:0;text-align:center;pointer-events:none}.stage-banner span{background:#061016d9;padding:8px 15px;border:1px solid #314752;border-radius:20px;color:var(--lime);font:11px ui-monospace,monospace}.turn-strip{height:4px;background:#23313d}.turn-strip i{height:100%;display:block;background:var(--cyan)}.command{padding:18px 22px}.command .row{font-size:12px;margin-bottom:13px}.command .battle-moves{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.battle-moves .move{min-height:104px;padding:12px;display:block;width:100%}.battle-moves .move strong{font-size:14px;display:block;margin:4px 0}.battle-moves .move.selected{background:#263919}.epic-button{border-color:#8755b0;color:#e5c3ff;background:#392849}.log{margin-top:20px;background:#0b121b;border:1px solid var(--line);border-radius:12px;padding:18px;font:11px/1.8 ui-monospace,monospace}.log div{padding:7px 0;border-bottom:1px solid #1c2931}.log .you{color:var(--lime)}.log .rival{color:var(--pink)}.result{text-align:center;padding:24px;border-bottom:1px solid var(--line);background:#b8ff180b}.result h2{color:var(--lime);margin:0 0 5px}.invite{display:grid;gap:14px;max-width:750px;margin:45px auto}.code{font:12px ui-monospace,monospace;overflow-wrap:anywhere;padding:12px;background:#080e15;border-radius:7px}.bracket{display:flex;gap:18px;overflow-x:auto;padding:10px 0}.bracket-round{min-width:245px;flex:1;display:flex;flex-direction:column;justify-content:space-around;gap:15px}.bracket-match{padding:16px;background:#121d27;border:1px solid var(--line);border-radius:10px}.bracket-match .entrant{padding:7px 0;font-size:13px}.roster{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.slot{border:1px dashed var(--line);border-radius:10px;padding:16px;min-height:100px}.slot img{width:42px;height:42px;border-radius:7px;float:left;margin-right:8px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:20;background:#21322a;border:1px solid var(--lime);padding:12px 20px;border-radius:10px;max-width:90%;box-shadow:0 8px 50px #0008;display:none}footer{padding:18px 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;color:#82939e;font:10px ui-monospace,monospace}.history{margin-top:22px}.history button{font-size:11px;margin:4px}.form-row{display:grid;grid-template-columns:1fr 120px auto;align-items:end;gap:12px}.notice{font-size:12px;color:var(--muted);border-left:2px solid var(--cyan);padding-left:12px;margin:18px 0}.hidden{display:none!important}
@media(max-width:850px){header{padding:15px;gap:12px;flex-wrap:wrap}nav{order:3;width:100%;justify-content:center}#sound{margin-left:auto}.hero{grid-template-columns:1fr 1fr;gap:0}.hero-art{aspect-ratio:.9}.grid{grid-template-columns:1fr 1fr}.grid .card:last-child{grid-column:1/-1}.build-layout{grid-template-columns:240px 1fr}.moves{grid-template-columns:1fr}.battle-head{padding:12px;grid-template-columns:1fr 65px 1fr}.command{padding:14px}.battle-moves .move{padding:9px}.roster{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){main{padding:20px 12px 35px}.brand{font-size:12px}.brand small{font-size:7px}.mark{font-size:25px}.hero{grid-template-columns:1fr;gap:0}.hero-art{aspect-ratio:1.8;order:-1}.hero h1{font-size:42px}.hero p{font-size:13px}.grid{grid-template-columns:1fr}.card{padding:18px}.login{margin:20px auto}.login form{grid-template-columns:1fr}.build-layout{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stat{grid-template-columns:35px 1fr 26px 26px;padding:5px;gap:4px}.stat strong{font-size:17px}.fighter-label .portrait{display:none}.fighter-meta strong{font-size:12px}.clock{font-size:22px}.stage canvas{aspect-ratio:1.55}.stage-banner{top:7px}.stage-banner span{font-size:9px;padding:5px 9px}.command .battle-moves{grid-template-columns:1fr 1fr;gap:8px}.battle-moves .move{min-height:94px}.command .row{flex-wrap:wrap;gap:5px;font-size:10px}.command>.actions{margin-top:10px}.form-row{grid-template-columns:1fr 90px}.form-row button{grid-column:1/-1}footer{flex-direction:column;padding:18px}.section-head{align-items:flex-start}.section-head h2{font-size:23px}.row{flex-wrap:wrap}.roster{grid-template-columns:1fr 1fr}.chips{gap:5px}.chip{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:560px){body.in-battle header{padding:8px 12px}.in-battle nav,.in-battle .brand small{display:none}.in-battle #sound{font-size:11px;padding:7px 10px}.in-battle .mode{font-size:8px;padding:4px 10px}.in-battle main{padding:8px}.in-battle .section-head{margin:8px 0 12px;align-items:center}.in-battle .section-head h2{font-size:16px;letter-spacing:0;margin:0}.in-battle .section-head .eyebrow{font-size:8px;margin-bottom:4px}.in-battle .section-head button{padding:7px 10px;font-size:11px}.in-battle .battle-head{padding:9px}.in-battle .stage canvas{aspect-ratio:1.9}.in-battle .command{padding:10px}.in-battle .command .battle-moves .move{min-height:76px;padding:8px}.in-battle .battle-moves .move strong{font-size:12px}.in-battle .battle-moves .move small{font-size:9px}.in-battle .command>.actions{gap:6px}.in-battle .command>.actions button{font-size:10px;padding:8px}.in-battle .command>.actions small{font-size:10px}.in-battle .command .row{font-size:9px}.in-battle .notice{font-size:10px;margin:12px 0}}

.history button {text-align:left;margin:4px;line-height:1.6;max-width:100%;overflow-wrap:anywhere} #replay-position {scroll-margin-top:20px} #replay-canvas {width:100%;height:300px} .actions button {min-height:44px} code {overflow-wrap:anywhere} @media(max-width:600px){#replay-canvas{height:220px}}

#connection:not([hidden]) {padding:12px;margin:8px;border:1px solid #ffb855;border-radius:8px;background:#201b13;line-height:1.6} #connection button {margin-left:8px} #replay-position:focus-visible {outline:2px solid var(--lime)}

/* v1.4 private Challenge Room: additive, no motion or sound changes. */
.challenge-room{max-width:1180px;margin:auto}.challenge-room h1{font-size:clamp(2.2rem,6vw,4.5rem);overflow-wrap:anywhere}.challenge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:18px}.challenge-card{min-width:0;overflow-wrap:anywhere;display:flex;flex-direction:column;align-items:flex-start}.challenge-card h3{font-size:1.5rem;margin:18px 0 4px}.challenge-card .row{width:100%;flex-wrap:wrap;gap:10px}.challenge-card button{margin-top:auto;max-width:100%;white-space:normal}.challenge-icon{color:var(--lime);font-size:2rem}.own-challenge{border-color:var(--lime);margin:24px 0}.challenge-empty{grid-column:1/-1}.challenge-room .actions{flex-wrap:wrap}.challenge-room button{min-height:44px}.challenge-room .section-head{flex-wrap:wrap;gap:12px}.challenge-room :focus-visible{outline:3px solid var(--lime);outline-offset:4px}.challenge-room h1:focus,.challenge-room h1:focus-visible{outline:none}@media(max-width:600px){.challenge-room .section-head{align-items:flex-start}.challenge-room .card{padding:20px}.challenge-room .chip{font-size:10px}.challenge-room h2{font-size:1.35rem}}
.challenge-room .primary:hover:not(:disabled),.invite [data-action="room-post"].primary:hover:not(:disabled){background:#d0ff64;color:#142000;border-color:#d0ff64}

/* 1.5 game UI: viewport shell; scoped so an older open client keeps its layout. */
.game-ui{height:100vh;height:100dvh;min-height:360px;overflow:hidden;display:flex;flex-direction:column;background:#080d12;font-size:13px;--glass:rgba(9,17,24,.88);--line:#31404b}
.game-ui button{font-size:12px;padding:8px 12px;border-radius:6px;min-height:36px;letter-spacing:.15px}
.game-ui button.primary:hover:not(:disabled){background:#d0ff64;color:#142000;border-color:#d0ff64}
.game-ui button:disabled{opacity:.42}.game-ui button.active{color:var(--lime);background:#b8ff1814;border-color:#829d37}
.game-ui .game-header{height:58px;min-height:58px;width:100%;max-width:none;padding:8px 22px;gap:20px;background:#0a1119;border-bottom:1px solid #2a3b47;position:relative;z-index:5}
.game-ui .brand{font-size:11px;gap:11px;letter-spacing:2px}.game-ui .mark{font-size:28px}.game-ui .brand small{font-size:8px;letter-spacing:1px}
.game-ui nav{margin:0 auto;gap:5px;width:auto;order:0}.game-ui nav button{font-size:12px;min-height:36px;padding:7px 16px;border-radius:4px;text-transform:uppercase;letter-spacing:.8px}
.game-system{display:flex;gap:7px;align-items:center;margin-left:auto}.game-ui #sound{padding:7px 9px;font-size:11px;margin:0}.game-ui #fullscreen{font-size:22px;line-height:1;padding:5px 11px;min-width:42px}
.game-ui .mode{font-size:9px;line-height:16px;min-height:19px;padding:1px 10px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background:#0b151a;color:#a3b6bc}
.game-ui main{flex:1;min-height:0;width:100%;max-width:none;margin:0;padding:0;overflow:auto;position:relative;outline:none}
.game-ui .game-footer{height:24px;min-height:24px;padding:4px 18px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:8px;background:#091019;border-color:#24323d;letter-spacing:.8px}
.game-footer a{font-size:9px;color:#b8ccd0}.game-ui .eyebrow{font-size:10px;margin:0;letter-spacing:1.8px}.game-ui h1{font-size:30px;letter-spacing:-.6px}.game-ui h2{font-size:19px}.game-ui h3{font-size:14px}.game-ui .actions{gap:7px}.game-ui .actions button{min-height:36px}
.skip-link{position:fixed;top:-100px;left:12px;z-index:100;background:#09131c;border:2px solid var(--cyan);padding:10px}.skip-link:focus{top:8px}
.game-ui #connection:not([hidden]){position:fixed;z-index:40;top:78px;left:50%;transform:translateX(-50%);width:min(680px,calc(100% - 24px));margin:0;font-size:12px;box-shadow:0 12px 30px #0009}
.game-ui #toast{bottom:32px;border-radius:6px;padding:10px 15px;font-size:12px;max-width:min(520px,90%);z-index:80}
.game-ui .entry-screen{position:relative;isolation:isolate;min-height:100%;max-width:none;margin:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:35px 20px;text-align:center;background:linear-gradient(#071019ad,#071019ed),url('/arena/assets/arena.webp') center/cover}
.entry-emblem{font-weight:950;font-size:72px;letter-spacing:-8px;transform:skew(-8deg);color:var(--lime);text-shadow:0 0 50px #b8ff1838;margin-bottom:10px;line-height:1.2}
.entry-screen h1{font-size:clamp(32px,5vw,52px);margin:12px 0}.entry-screen>p{max-width:460px}.game-ui .entry-screen .card{max-width:680px;background:#0a121beb;border-color:#3c515d;padding:22px;margin-top:16px}.entry-screen .card h2{font-size:18px}.entry-screen .card p{font-size:12px}.entry-screen .card a{display:inline-flex;align-items:center;min-height:44px;padding:8px 13px;border:1px solid #839c38;border-radius:5px;margin-right:6px}.game-ui .entry-screen form{width:100%}.game-ui .entry-screen button{min-height:44px}
.loading-track{height:3px;width:180px;background:linear-gradient(90deg,transparent,var(--lime),transparent);animation:load-pulse 1.3s ease-in-out infinite;margin:16px}@keyframes load-pulse{50%{opacity:.25;transform:scaleX(.55)}}
/* Ready room: the Pet is the focal point; the action rail replaces landing-page cards. */
.game-lobby{height:100%;min-height:480px;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 250px;grid-template-rows:auto minmax(140px,1fr) auto;padding:26px 32px 22px;gap:12px 25px}
.lobby-scene{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#06101535 45%,#07111cec),linear-gradient(0deg,#07121afa,transparent 60%),url('/arena/assets/arena.webp') center/cover;filter:saturate(.8)}
.lobby-id{grid-column:1;position:relative;z-index:2}.lobby-id h1{margin:6px 0 9px;font-size:clamp(24px,3vw,40px);color:#f0f7eb;overflow-wrap:anywhere}.level-pill{display:inline-block;font:11px ui-monospace,monospace;color:var(--lime);border:1px solid #7b9e3a;background:#142319c9;padding:3px 8px;margin-right:10px;border-radius:4px}
.lobby-pet{grid-column:1;grid-row:1/3;min-height:0;align-self:stretch;position:relative;padding-top:60px;pointer-events:none}.lobby-pet canvas{display:block;width:100%;height:100%;position:absolute;inset:0}.rig-note{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);font-size:9px;color:#99adb2;white-space:nowrap}
.lobby-rail{grid-column:2;grid-row:1/3;align-self:center;display:grid;gap:6px;padding:12px;background:#08121ccf;border:1px solid #334956;border-radius:8px;box-shadow:0 20px 50px #0004}
.rail-label{padding:7px 10px;font:10px ui-monospace,monospace;letter-spacing:2px;color:var(--lime)}
.game-ui .rail-choice{display:grid;grid-template-columns:24px 1fr;text-align:left;align-items:center;gap:0 8px;padding:9px 11px;min-height:47px;background:#111e29;border-color:#293e4d;letter-spacing:.3px}
.rail-choice>span{grid-row:1/3;font-size:21px;color:var(--lineage,var(--lime))}.rail-choice small{grid-column:2;font-size:9px;line-height:1.6}.rail-choice:hover{transform:translateX(-3px)}
.lobby-bottom{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,660px) minmax(180px,1fr);gap:18px;align-items:stretch;position:relative;z-index:2}
.lobby-build,.lobby-readiness{background:#08131ded;border:1px solid #354b57;padding:14px;border-radius:8px;backdrop-filter:blur(10px)}.lobby-build .row{margin-bottom:8px;flex-wrap:nowrap}.lobby-build>small{display:block;margin-top:8px;font-size:10px;color:#d0b6e8}.lobby-readiness{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:7px}.lobby-readiness strong{font-size:16px}.lobby-readiness small{font-size:10px}.beta-note{font-size:9px;color:#93aeb8;margin-top:5px}.review-switch{position:absolute;top:12px;right:20px;z-index:3}
.loadout-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.loadout-tile{position:relative;text-align:center;padding:8px 5px;background:linear-gradient(145deg,#1b2c38,#0c1620);border:1px solid #425767;border-radius:5px;min-width:0}.loadout-tile kbd{position:absolute;left:5px;top:3px;font-size:9px;color:#8fa5b5}.loadout-tile strong{display:block;font-size:11px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}.loadout-tile small{font-size:9px}.ability-symbol{display:block;font-size:24px;line-height:1.2;margin:1px 0 4px;color:var(--lineage,var(--cyan))}.loadout-tile .ability-symbol{font-size:22px}
/* Pet workshop: fixed shell with independent content scroll, no oversized move cards. */
.workshop{height:100%;min-height:400px;display:flex;flex-direction:column;gap:0;background:radial-gradient(ellipse at 5% 45%,#24483b33,transparent 50%),#0a1119;padding:20px 24px 12px}
.workshop-header{display:flex;align-items:center;gap:18px;min-height:57px;border-bottom:1px solid #2b3e4c;padding-bottom:12px}.workshop-header h1{font-size:24px;margin:2px 0 0}.workshop-header .actions{margin-left:auto}.save-state{font:9px ui-monospace,monospace;color:#a7bcc5;letter-spacing:1px}.workshop-header .primary{min-width:105px}
.workshop-body{display:grid;grid-template-columns:minmax(160px,.85fr) minmax(200px,.8fr) minmax(370px,1.75fr);gap:20px;min-height:0;flex:1;padding:16px 0}
.workshop-fighter{display:flex;flex-direction:column;min-height:0;border-right:1px solid #253744;padding-right:18px}.workshop-rig{min-height:120px;flex:1;position:relative;background:radial-gradient(ellipse at 50% 80%,#65824c26,transparent 65%)}.workshop-rig canvas{width:100%;height:100%;position:absolute;inset:0}.workshop-identity{display:flex;align-items:center;gap:10px;margin:8px 0}.workshop-identity .scene-portrait{width:56px;height:56px}.workshop-identity strong{display:block;font-size:14px}.workshop-identity small{display:block;font-size:10px}.passive-note{border-top:1px solid #263b46;padding-top:12px}.passive-note p{font-size:11px;color:#b6c8ce;margin:7px 0}.passive-note>small{font-size:9px}
.workshop-stats,.workshop-loadout{min-height:0;overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:#3e5565 #0b141c}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.panel-heading h2{font-size:15px;margin:0}.points-badge{font:10px ui-monospace,monospace;color:var(--lime);background:#b8ff1810;border:1px solid #526136;border-radius:4px;padding:4px 7px;white-space:nowrap}
.game-ui .workshop .stats{display:grid;grid-template-columns:1fr;gap:7px}.game-ui .workshop .stat{grid-template-columns:30px minmax(20px,1fr) 36px 36px;gap:6px;padding:5px 7px;background:#111f2a;border:1px solid #273c4a}.workshop .stat strong{font-size:21px}.game-ui .workshop .stat button{min-height:34px;padding:3px;font-size:18px}.stat-guide{font-size:11px;color:#b5c4cc;line-height:1.8;margin:14px 0 8px}.workshop-stats>small{font-size:10px}
.skill-tabs{display:flex;gap:5px;border-bottom:1px solid #2e424f;padding:12px 0 9px;margin-bottom:8px}.skill-tabs button{flex:1}.skill-list{display:grid;gap:5px}.skill-row{display:grid;grid-template-columns:minmax(0,1fr) 68px;gap:5px;background:#111d28;border:1px solid #2b4050;border-radius:5px;padding:5px;min-height:70px}.skill-row.selected{border-color:#829a45;box-shadow:inset 3px 0 #b8ff18}.skill-row.locked{opacity:.52}.game-ui .skill-equip{display:flex;align-items:center;gap:12px;text-align:left;background:transparent;border:0;padding:3px 7px;min-width:0}.skill-equip>.ability-symbol{width:27px;flex-shrink:0;font-size:23px}.skill-equip strong{display:block;font-size:12px}.skill-equip small{display:block;font:10px/1.55 ui-monospace,monospace;color:#a0b4c1;overflow-wrap:anywhere}.skill-rank{display:grid;grid-template-columns:1fr 1fr;gap:3px;align-content:center}.skill-rank small{grid-column:1/-1;font-size:9px;text-align:center}.game-ui .skill-rank button{padding:2px;min-height:30px;font-size:16px}
.workshop-epic{padding:15px;text-align:center;background:radial-gradient(ellipse at 50% 15%,#68408e40,transparent 75%);border:1px solid #644d80;border-radius:7px;min-height:240px}.epic-emblem{display:block;font-size:38px;color:#dfb3ff;line-height:1.2;margin:5px}.workshop-epic h2{font-size:18px;margin:9px 0}.workshop-epic p{font-size:11px;color:#c0b6cf;line-height:1.7}.workshop-epic .actions{justify-content:center}.workshop-epic small{font-size:10px}.workshop-footnote{margin:0;border-top:1px solid #283b45;padding-top:9px;font-size:10px;color:#a0b6be}.workshop-mobile-tabs{display:none}
/* Combat: maximum stage area, overlaid health HUD, compact bottom ability dock. */
.game-ui.in-battle .game-header{height:47px;min-height:47px;padding:5px 15px}.game-ui.in-battle nav{display:none}.game-ui.in-battle .game-footer{display:none}.game-ui.in-battle .brand small{display:none}.game-ui.in-battle main{padding:0;overflow:hidden}
.combat-screen{height:100%;display:grid;grid-template-rows:31px minmax(80px,1fr) auto;min-height:0;background:#080f16}.combat-topline{display:flex;align-items:center;justify-content:space-between;padding:3px 14px;background:#0c1720;border-bottom:1px solid #253b49}.combat-topline .eyebrow{font-size:9px}.game-ui .combat-topline button{padding:2px 10px;min-height:25px;font-size:10px}.combat-topline .actions{gap:5px}
.game-ui .arena-shell.combat-field{position:relative;border:0;border-radius:0;overflow:hidden;min-height:0;background:#070d12}.combat-field>.stage{height:100%;position:absolute;inset:0}.game-ui .combat-field .stage canvas{height:100%;width:100%;aspect-ratio:auto}.combat-field .battle-head{position:absolute;left:0;right:0;top:0;z-index:2;display:grid;grid-template-columns:1fr 80px 1fr;padding:18px 24px 28px;gap:24px;background:linear-gradient(#071019ed,#0710196b,transparent);pointer-events:none}
.game-ui .fighter-label{min-width:0;gap:10px}.game-ui .fighter-label .portrait{width:48px;height:48px;border-color:#5b7457;display:block}.fighter-meta{min-width:0}.game-ui .fighter-meta>strong{display:block;font-size:14px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fighter-meta>strong small{font-size:8px;color:var(--lime);margin-left:5px}.game-ui .fighter-meta>small{display:block;font:10px/1.6 ui-monospace,monospace;color:#d2e3e9}.game-ui .health{height:12px;margin:4px 0;border-radius:2px;background:#182b35;border:1px solid #526974;box-shadow:0 2px 8px #0008}.game-ui .health i{background:linear-gradient(90deg,#82ae20,#c1f347)}.game-ui .right .health i{background:linear-gradient(90deg,#d46185,#ffb0c4)}.game-ui .clock{font-size:26px;color:#f1f5df;align-self:start;line-height:1.3;white-space:nowrap;text-shadow:0 2px 10px #000}.game-ui .clock small{font-size:8px;letter-spacing:1px;color:#aabcc1}
.game-ui .combat-field>.stage-banner{top:91px;z-index:2}.game-ui .stage-banner span{font-size:9px;border-radius:4px;padding:5px 11px;background:#07141cd9;border-color:#496472;letter-spacing:1px}
.game-ui .combat-dock{position:relative;padding:9px 18px 8px;background:linear-gradient(180deg,#15252f,#0a131c);border-top:1px solid #496370;min-height:0}.combat-dock>.turn-strip{position:absolute;top:0;left:0;right:0;height:3px}.command-status{display:flex;align-items:center;justify-content:space-between;max-width:850px;margin:0 auto 6px;gap:8px;font:10px ui-monospace,monospace}.command-status>strong{color:#c1e795;letter-spacing:1px;font-size:10px}.command-status>b,.command-status b{font-size:15px;color:var(--cyan)}.command-status small{font-size:8px}
.command-loadout{display:grid;grid-template-columns:minmax(0,1fr) 148px;gap:12px;max-width:850px;margin:auto}.game-ui .combat-dock .battle-moves{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.game-ui .battle-moves .ability{min-height:77px;max-height:96px;padding:5px 6px 6px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:5px;background:linear-gradient(140deg,#233844,#101b25);border-color:#537181;position:relative;overflow:hidden}.game-ui .battle-moves .ability:hover:not(:disabled){background:linear-gradient(140deg,#354e3a,#162820);border-color:#c0e96e}.game-ui .battle-moves .ability:disabled{opacity:.52;filter:saturate(.4)}.game-ui .battle-moves .ability.selected{opacity:1;filter:none;background:#29432a;border-color:#bded63;box-shadow:inset 0 0 12px #b8ff1820}.ability kbd,.ability-utility kbd{position:absolute;left:5px;top:3px;font:9px ui-monospace,monospace;color:#b1c1cc}.game-ui .battle-moves .ability strong{font-size:11px;line-height:1.1;display:block;margin:2px 0;overflow-wrap:anywhere;max-width:100%}.game-ui .battle-moves .ability small{font:9px/1.3 ui-monospace,monospace;color:#b8cbd7}.game-ui .battle-moves .ability .ability-symbol{font-size:23px;line-height:1;color:#aadaeb;margin:0 0 2px}.ability[data-type=defense] .ability-symbol{color:#bdb3f1!important}.cooldown-mark{position:absolute;right:5px;top:2px;font:16px ui-monospace,monospace;color:#ffcd8c}
.command-utility{display:grid;grid-template-columns:1fr 1fr;gap:6px}.game-ui .ability-utility{position:relative;min-height:77px;padding:5px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#12202a;border:1px solid #436476}.game-ui .ability-utility>span{font-size:22px;line-height:1.2;color:var(--cyan)}.game-ui .ability-utility>strong{font:12px ui-monospace,monospace}.game-ui .ability-utility>small{font-size:8px}.game-ui .ability-utility.epic-button{background:linear-gradient(140deg,#3c2857,#1b1729);border-color:#8861ad}.game-ui .ability-utility.epic-button>span{color:#d7adff}.command-readout{display:flex;align-items:center;gap:7px;max-width:850px;margin:6px auto 0;font:9px ui-monospace,monospace;min-height:15px;color:#b6cbd5}.energy-meter{display:flex;gap:2px}.energy-meter i{display:block;width:6px;height:9px;background:#263a47;border-radius:1px}.energy-meter i.filled{background:#58d9f5;box-shadow:0 0 5px #37d8ff28}.move-info{margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:65%;color:#b7b2cc}.spectator-note{text-align:center;font-size:11px;margin:9px}
.game-ui .combat-log{position:absolute;left:12px;bottom:10px;z-index:4;margin:0;padding:0;max-width:min(540px,calc(100% - 24px));background:#07131edb;border:1px solid #42606e;border-radius:5px;font:10px/1.7 ui-monospace,monospace}.combat-log summary{cursor:pointer;min-height:32px;padding:6px 10px;color:#c0d7dd;outline-offset:3px}.combat-log summary:focus-visible{outline:2px solid var(--cyan)}.combat-log-scroll{padding:7px 12px;max-height:180px;overflow:auto}.combat-log-scroll p{font-size:10px;margin:5px 0;color:#a1b7c3}
.result-overlay{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;background:#030b13a3;backdrop-filter:blur(3px);padding:16px}.game-ui .result-overlay .result{max-width:510px;width:100%;padding:20px 22px;background:linear-gradient(145deg,#17271bed,#101b26f5);border:1px solid #84995b;border-radius:9px;box-shadow:0 18px 80px #0007}.result-emblem{display:block;color:var(--lime);font-size:38px;line-height:1.2;margin:9px}.game-ui .result h2{font-size:23px;overflow-wrap:anywhere}.result p{font-size:11px;color:#b2c4cb}.result .actions{justify-content:center}.result>small{display:block;font-size:10px;margin-top:10px}.result .actions button{font-size:11px;min-height:36px}
/* Secondary pages stay inside the game shell rather than becoming landing pages. */
.game-ui main>.section-head,.game-ui main>.card,.game-ui main>.history,.game-ui main>.bracket,.game-ui main>.notice{margin:18px 24px}.game-ui .section-head h1{font-size:27px;line-height:1.2;letter-spacing:-.5px}.game-ui .card{border-radius:7px;padding:18px}.game-ui .challenge-room{padding:14px 24px;max-width:1180px}.game-ui .challenge-room h1{font-size:28px}.game-ui .challenge-room .own-challenge{margin:13px 0;padding:14px 18px}.game-ui .challenge-room .section-head{margin:10px 0}.game-ui .challenge-room .notice{font-size:11px;margin:10px 0}.game-ui .challenge-grid{gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}.game-ui .challenge-card{padding:16px;gap:0}.game-ui .challenge-card h3{font-size:18px;margin:5px 0}.game-ui .challenge-card p{font-size:11px;margin-bottom:8px}.game-ui .challenge-card button{font-size:11px;min-height:36px}.game-ui .challenge-card .portrait{width:48px;height:48px}.game-ui .challenge-room>p.muted{font-size:11px}.game-ui .challenge-room .card p{font-size:11px}
.game-ui .invite{margin:20px auto;max-width:640px;gap:10px}.game-ui .invite h2{font-size:21px;margin:0}.game-ui .invite h3{font-size:12px;margin:0}.game-ui .invite p{font-size:12px;margin-bottom:5px}.game-ui .invite .code{font-size:10px}.game-ui .invite small{font-size:10px}
.game-ui dialog{color:var(--ink);background:#0c1721;border:1px solid #526d7b;border-radius:8px;box-shadow:0 20px 90px #000b;max-width:min(640px,calc(100vw - 28px));max-height:85dvh;padding:20px}.game-ui dialog::backdrop{background:#02080fba;backdrop-filter:blur(5px)}.game-panel{width:620px}.game-panel>.row{margin-bottom:12px}.game-panel h2{margin:0;font-size:19px}.game-ui .icon-button{min-width:36px;padding:4px;font-size:20px}.game-history{margin-top:0;display:grid;gap:5px}.game-ui .history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;margin:0;text-align:left;padding:10px 12px;background:#12232d;min-height:54px}.history-row strong{font-size:12px;overflow-wrap:anywhere}.history-row>span{font-size:10px;color:var(--lime)}.history-row>small{grid-column:1/-1;font-size:9px}
.game-ui .replay-screen{margin:14px auto;max-width:1120px}.game-ui .replay-screen h2{font-size:22px;margin:9px 0}.game-ui .replay-screen p{font-size:11px}.game-ui .replay-screen .actions button{min-height:36px}.game-ui .replay-screen #replay-canvas{height:clamp(180px,40dvh,440px);aspect-ratio:auto}.game-ui .replay-screen .grid{grid-template-columns:1fr 1fr;gap:18px}.game-ui .replay-screen .grid article{min-width:0}.game-ui .replay-screen #replay-position{font-size:13px;margin:13px 0 8px}
@media(max-width:1000px){.workshop-body{grid-template-columns:165px 185px minmax(0,1fr);gap:12px}.workshop{padding:15px}.workshop-fighter{padding-right:10px}.skill-row{grid-template-columns:minmax(0,1fr) 58px}.game-ui .skill-equip{gap:6px;padding:3px}.skill-equip small{font-size:9px}.skill-equip strong{font-size:11px}.lobby-bottom{grid-template-columns:minmax(0,1fr) 235px}.game-lobby{padding:20px;grid-template-columns:minmax(0,1fr) 225px}}
@media(max-width:760px){.game-ui .game-header{padding:7px 12px;gap:10px;height:54px;min-height:54px;flex-wrap:nowrap}.game-ui .brand{font-size:9px;gap:7px}.game-ui .brand small{font-size:7px}.game-ui .mark{font-size:24px}.game-ui nav{gap:0;order:0;width:auto}.game-ui nav button{padding:7px 9px;font-size:10px}.game-ui #sound{font-size:9px;padding:7px 5px}.game-ui #fullscreen{font-size:20px;min-width:36px;padding:3px}.game-system{gap:4px}.game-ui .game-footer{font-size:7px;padding:4px 10px}.game-footer>span:first-child{display:none}.game-ui .mode{font-size:8px}
 .game-lobby{padding:15px;grid-template-columns:minmax(0,1fr) 190px;gap:8px 12px;min-height:440px}.lobby-id h1{font-size:24px}.lobby-id .eyebrow{font-size:8px}.lobby-rail{padding:7px;gap:5px}.game-ui .rail-choice{padding:7px 8px;min-height:44px;font-size:11px;grid-template-columns:20px 1fr;gap:0 6px}.rail-choice>span{font-size:18px}.lobby-bottom{grid-template-columns:1fr;gap:7px}.lobby-readiness{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:8px 12px;gap:4px 10px}.lobby-readiness strong{font-size:12px}.lobby-readiness .beta-note{display:none}.lobby-readiness .eyebrow{font-size:8px}.lobby-readiness>small{font-size:9px}.lobby-readiness button{padding:5px 10px;min-height:32px}.lobby-build{padding:10px}.lobby-build .eyebrow{font-size:8px}.game-ui .lobby-build button{font-size:10px;min-height:32px}.rig-note{font-size:8px}.level-pill{font-size:9px}.lobby-id>.muted{font-size:10px}
 .workshop{padding:12px}.workshop-header{gap:7px;flex-wrap:wrap;padding-bottom:8px}.workshop-header h1{font-size:20px}.workshop-header .eyebrow{font-size:9px}.workshop-header .actions{gap:5px}.save-state{font-size:8px}.game-ui .workshop-header button{font-size:10px;padding:7px 10px;min-height:36px}.workshop-header .primary{min-width:80px}.workshop-mobile-tabs{display:flex;gap:6px;padding-top:10px}.workshop-mobile-tabs button{flex:1;min-height:36px}.workshop-body{grid-template-columns:140px minmax(0,1fr);gap:12px;min-height:0;padding-top:12px}.workshop[data-panel=moves] .workshop-stats{display:none}.workshop[data-panel=stats] .workshop-loadout{display:none}.workshop-fighter{grid-column:1}.workshop-loadout,.workshop-stats{grid-column:2}.workshop-identity{display:block;text-align:center}.workshop-identity .scene-portrait{margin:auto auto 7px}.passive-note p{font-size:10px}.passive-note .eyebrow{font-size:8px}.loadout-tile strong{font-size:9px}.loadout-tile{padding:7px 3px}.loadout-tile .ability-symbol{font-size:20px}.points-badge{font-size:8px;padding:4px}.panel-heading h2{font-size:12px}.skill-equip>.ability-symbol{width:20px}.workshop-footnote{font-size:9px}.workshop .stat-guide{font-size:10px}.game-ui .workshop .stat button{min-height:38px}
 .combat-field .battle-head{padding:12px 14px 24px;grid-template-columns:1fr 62px 1fr;gap:12px}.game-ui .fighter-meta>strong{font-size:12px}.game-ui .fighter-label .portrait{width:38px;height:38px}.game-ui .clock{font-size:22px}.game-ui .combat-field>.stage-banner{top:78px}.command-loadout{grid-template-columns:minmax(0,1fr) 130px;gap:8px}.game-ui .combat-dock{padding:9px 12px 8px}.game-ui .battle-moves .ability strong{font-size:10px}.game-ui .combat-log summary{font-size:9px;min-height:30px}
}
@media(max-width:520px){.game-ui .game-header{height:86px;min-height:86px;flex-wrap:wrap;gap:4px 10px;padding:7px 12px}.game-ui nav{order:3;width:100%;justify-content:center;margin:0}.game-ui nav button{flex:1;min-height:32px;font-size:10px;padding:5px 8px}.game-ui #sound{font-size:10px;min-height:36px}.game-ui #fullscreen{min-height:36px}.game-ui .brand small{display:none}.game-ui .game-footer{height:22px;min-height:22px}.game-ui .mode{font-size:7px;min-height:17px;line-height:15px}.game-ui #connection:not([hidden]){top:106px}
 .game-lobby{min-height:440px;grid-template-columns:minmax(0,1fr) 154px;padding:12px;gap:8px}.lobby-id h1{font-size:21px;max-width:160px}.lobby-id .eyebrow{font-size:7px;letter-spacing:1px}.lobby-pet{grid-row:1/3;transform:translateX(-8%);margin-right:-24px}.lobby-rail{padding:5px;gap:4px}.rail-label{font-size:8px;padding:4px 6px}.game-ui .rail-choice{font-size:10px;padding:6px;gap:0 5px;min-height:44px}.rail-choice small{font-size:8px}.lobby-readiness>small{display:none}.lobby-bottom{gap:6px}.loadout-tile strong{font-size:10px}.lobby-build>small{font-size:9px}.rig-note{display:none}.lobby-id>.muted{display:block;margin-top:4px}.review-switch{top:auto;right:13px;bottom:180px;font-size:8px!important;min-height:25px!important}
 .workshop-body{grid-template-columns:1fr;grid-template-rows:100px minmax(0,1fr);gap:10px;overflow:hidden}.workshop-fighter{grid-column:1;grid-row:1;display:grid;grid-template-columns:95px 1fr;border-right:0;border-bottom:1px solid #253744;padding:0 0 5px;gap:10px;position:relative}.workshop-rig{grid-row:1/3;min-height:90px}.workshop-identity{margin:0;display:flex;text-align:left;gap:9px}.workshop-identity .scene-portrait{width:38px;height:38px;margin:0}.workshop-identity strong{font-size:12px}.workshop-identity small{font-size:9px}.passive-note{border-top:0;padding:0}.passive-note>.eyebrow,.passive-note>small{display:none}.passive-note p{margin:0;font-size:9px;line-height:1.4}.workshop-loadout,.workshop-stats{grid-column:1;grid-row:2;overflow:auto}.panel-heading{margin-bottom:8px}.panel-heading h2{font-size:13px}.skill-row{min-height:72px;grid-template-columns:minmax(0,1fr) 78px}.skill-equip strong{font-size:12px}.skill-equip small{font-size:10px}.game-ui .skill-rank button{min-height:36px}.game-ui .skill-equip{gap:9px}.skill-tabs button{min-height:40px}.game-ui .workshop .stat{grid-template-columns:35px minmax(20px,1fr) 44px 44px;padding:4px 10px}.game-ui .workshop .stat button{min-height:40px}.workshop-header .actions button{min-height:38px}.workshop-header h1{font-size:18px}.workshop-header .save-state{order:3;width:100%}.workshop-mobile-tabs{padding-top:7px}.workshop-footnote{font-size:8px;line-height:1.5}
 .game-ui.in-battle .game-header{height:44px;min-height:44px;flex-wrap:nowrap;padding:4px 10px}.game-ui.in-battle nav{display:none}.game-ui.in-battle #connection:not([hidden]){top:64px}.combat-topline{padding:2px 10px}.combat-topline .eyebrow{font-size:8px;letter-spacing:1px}.game-ui .combat-topline button{min-height:27px}.combat-field .battle-head{padding:10px 12px 20px;grid-template-columns:1fr 50px 1fr;gap:8px}.game-ui .fighter-label .portrait{display:none}.game-ui .fighter-meta>strong{font-size:11px}.game-ui .fighter-meta>small{font-size:9px}.game-ui .health{height:10px}.game-ui .clock{font-size:20px}.game-ui .clock small{font-size:7px;letter-spacing:.5px}.game-ui .combat-field>.stage-banner{top:68px}.game-ui .stage-banner span{font-size:8px;padding:4px 7px}.game-ui .combat-dock{padding:8px 9px 6px}.command-status{font-size:9px;margin-bottom:5px}.command-status>strong{font-size:9px;letter-spacing:.5px}.command-loadout{grid-template-columns:1fr;gap:5px}.game-ui .combat-dock .battle-moves{gap:5px}.game-ui .battle-moves .ability{min-height:78px;max-height:90px;padding:5px}.game-ui .battle-moves .ability strong{font-size:11px}.game-ui .battle-moves .ability small{font-size:9px}.game-ui .battle-moves .ability .ability-symbol{font-size:22px}.command-utility{display:flex;justify-content:center;gap:7px}.game-ui .ability-utility{display:grid;grid-template-columns:20px auto auto;gap:5px;min-height:38px;padding:4px 12px 4px 24px;min-width:135px;position:relative}.game-ui .ability-utility>span{font-size:20px}.game-ui .ability-utility>strong{font-size:12px}.game-ui .ability-utility>small{font-size:8px}.ability-utility kbd{left:5px;top:12px;font-size:8px}.command-readout{font-size:8px;margin-top:4px;gap:5px}.move-info{max-width:58%;font-size:8px}.game-ui .combat-log{bottom:8px;left:8px;max-width:calc(100% - 16px)}.game-ui .result-overlay .result{padding:12px}.result-emblem{font-size:26px;margin:5px}.game-ui .result h2{font-size:19px}.game-ui .result .actions button{min-height:36px;font-size:10px;padding:6px 9px}.result p{font-size:10px;margin:6px 0}.result>small{font-size:8px}.result-overlay{padding:10px}
 .game-ui main>.section-head,.game-ui main>.card,.game-ui main>.history,.game-ui main>.bracket,.game-ui main>.notice{margin:12px}.game-ui .challenge-room{padding:10px 12px}.game-ui .challenge-room h1{font-size:24px}.game-ui .challenge-room .card{padding:13px}.game-ui .challenge-room .actions button,.game-ui .challenge-card button{min-height:40px}.game-ui .challenge-room .notice{font-size:10px}.game-ui .invite{margin:12px;gap:10px}.game-ui .invite .actions button{min-height:40px}.game-ui .replay-screen{margin:10px}.game-ui .replay-screen .actions button{min-height:40px;font-size:10px}.game-ui .replay-screen h2{font-size:19px}.game-ui .replay-screen #replay-canvas{height:200px}.game-ui .history-row{grid-template-columns:1fr}.history-row>span{grid-column:1}.entry-screen .entry-emblem{font-size:56px}.game-ui .entry-screen{padding:18px 14px}.game-ui .entry-screen h1{font-size:32px}.game-ui .entry-screen .card{padding:15px}.game-ui .entry-screen form{grid-template-columns:1fr;gap:9px}
}
@media(max-height:560px) and (min-width:521px){.game-ui .game-header{height:42px;min-height:42px;padding:4px 12px}.game-ui .mode{height:16px;min-height:16px;line-height:14px}.game-ui .game-footer{display:none}.game-lobby{min-height:340px;padding:10px 16px;grid-template-columns:1fr 215px;gap:6px}.lobby-id h1{font-size:24px}.lobby-rail{padding:4px;gap:3px}.game-ui .rail-choice{min-height:35px;padding:4px 8px}.rail-choice small{display:none}.lobby-build{padding:8px}.lobby-build .row{margin-bottom:4px}.lobby-build>small{display:none}.loadout-tile{padding:4px}.loadout-tile .ability-symbol{font-size:16px}.lobby-readiness{padding:8px}.workshop{min-height:300px;padding:8px 14px}.workshop-header{min-height:40px;padding-bottom:6px}.workshop-body{padding:8px 0}.workshop-footnote{display:none}.passive-note{display:none}.workshop-rig{min-height:75px}.combat-screen{grid-template-rows:26px minmax(80px,1fr) auto}.combat-field .battle-head{padding:7px 14px 16px}.game-ui .fighter-label .portrait{width:30px;height:30px}.game-ui .combat-field>.stage-banner{top:62px}.game-ui .combat-dock{padding:6px 14px 4px}.game-ui .battle-moves .ability,.game-ui .ability-utility{min-height:61px;max-height:72px}.game-ui .battle-moves .ability .ability-symbol{font-size:18px}.game-ui .battle-moves .ability strong{font-size:10px}.command-readout{margin-top:3px;font-size:8px}.game-ui .result-overlay .result{padding:10px 16px}.result-emblem{display:none}.game-ui .result h2{font-size:18px}.result p{margin:5px 0}}
@media(prefers-reduced-motion:reduce){.game-ui *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.game-ui .rail-choice:hover{transform:none}}
@supports(padding:max(0px)){.game-ui .game-header{padding-top:max(5px,env(safe-area-inset-top))}.game-ui .combat-dock{padding-bottom:max(6px,env(safe-area-inset-bottom))}}
/* Safe-area padding also reserves height, so a notch cannot cover the game nav. */
.game-ui{--shell-header:58px}.game-ui.in-battle{--shell-header:47px}
@media(max-width:760px){.game-ui{--shell-header:54px}}
@media(max-width:520px){.game-ui{--shell-header:86px}.game-ui.in-battle{--shell-header:44px}}
@media(max-height:560px) and (min-width:521px){.game-ui{--shell-header:42px}}
@supports(padding:max(0px)){.game-ui .game-header{height:calc(var(--shell-header) + env(safe-area-inset-top));min-height:calc(var(--shell-header) + env(safe-area-inset-top));padding-top:calc(5px + env(safe-area-inset-top))}.game-ui .game-footer{height:calc(24px + env(safe-area-inset-bottom));min-height:calc(24px + env(safe-area-inset-bottom));padding-bottom:calc(4px + env(safe-area-inset-bottom))}.game-ui #connection:not([hidden]){top:calc(var(--shell-header) + env(safe-area-inset-top) + 20px)}}

/* UI 1.6: cinematic ready room, icon-led mode menu and tactile combat deck. */
.game-ui{--gold:#d6bd83;--edge:#42606b;--font-hud:ui-monospace,SFMono-Regular,monospace}
.game-icon{width:26px;height:26px;display:block;flex-shrink:0;pointer-events:none}
.game-ui .game-header{background:linear-gradient(180deg,#17232c,#0b121a);box-shadow:0 3px 24px #0005;border-bottom-color:#587064}
.game-ui nav button{position:relative;border-radius:0;color:#b6c3ca;overflow:visible}.game-ui nav button.active{color:#e2ffb4;background:linear-gradient(0deg,#b8ff1817,transparent)}
.game-ui nav button.active:after{content:'';position:absolute;bottom:0;left:18%;right:18%;height:2px;background:#c6f28b;box-shadow:0 0 10px #b8ff1870}
.game-ui .guide-toggle{width:36px;padding:4px;font:17px var(--font-hud);border:1px solid #45606b;border-radius:50%;color:#d9e7d0}
.game-ui .game-lobby{grid-template-columns:minmax(0,1fr) 290px;padding:26px 32px 18px}
.lobby-scene{background:linear-gradient(90deg,#06101522 30%,#07111cba 76%,#07111cec),linear-gradient(0deg,#06111bef,transparent 50%),url('/arena/assets/arena.webp') center/cover;filter:saturate(.95)}
.scene-grid{position:absolute;inset:45% 25% 0 0;z-index:-1;opacity:.15;pointer-events:none;background-image:linear-gradient(#88dcb720 1px,transparent 1px),linear-gradient(90deg,#88dcb720 1px,transparent 1px);background-size:50px 50px;transform:perspective(300px) rotateX(45deg);mask-image:linear-gradient(transparent,#000)}
.game-ui .lobby-id h1{font-size:clamp(25px,3.5vw,48px);font-weight:850;text-shadow:0 4px 30px #000b;letter-spacing:-1px;max-width:85%}.lobby-id .eyebrow{color:#d5e5be}.level-pill{border-color:#bfdc7855;border-radius:0;background:linear-gradient(120deg,#344921,#13261be6);font-weight:750;color:#e7fbbb}
.lobby-pet:after{content:'';position:absolute;bottom:4%;left:20%;right:15%;height:8%;border-bottom:1px solid #b8ff1830;box-shadow:0 12px 35px -20px var(--lineage);border-radius:50%;pointer-events:none}
.game-ui .lobby-rail{background:linear-gradient(145deg,#1d2c32e6,#0b1721ed);border:1px solid #61786770;border-top:2px solid #c6dca56b;border-radius:3px;padding:12px;gap:7px;box-shadow:0 20px 60px #0007,0 0 0 5px #07101960;backdrop-filter:blur(12px)}
.rail-label{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1px;padding:7px 4px 12px}.rail-label small{font-size:7px;color:#a6b5bb}
.game-ui .rail-choice{grid-template-columns:46px 1fr;gap:1px 11px;padding:9px;min-height:59px;position:relative;background:linear-gradient(110deg,#283a44,#14212c);border-color:#52697660;border-radius:3px;overflow:hidden;transition:background .18s,border-color .18s,transform .18s,box-shadow .18s}
.game-ui .rail-choice .menu-glyph{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border:1px solid #90b57a4d;border-radius:3px;background:radial-gradient(circle at 30% 20%,#dfff8f23,#09131f);color:#d4ecba;transform:rotate(-4deg)}
.rail-choice .menu-glyph .game-icon{width:27px;height:27px;transform:rotate(4deg)}.rail-choice b{font-size:13px;letter-spacing:.3px;font-weight:650}.rail-choice small{font-size:9px;letter-spacing:.2px;color:#a8bfca}
.game-ui .rail-choice:first-of-type{background:linear-gradient(110deg,#425f30,#1a2e25);border-color:#bad97e9c}.game-ui .rail-choice:hover:not(:disabled),.game-ui .rail-choice:focus-visible{transform:translateX(-4px);border-color:#daf0a0;box-shadow:inset 3px 0 #d7f798,0 5px 14px #0004}
.game-ui .rail-choice:active:not(:disabled){transform:translateX(-2px) scale(.985)}.rail-choice:after{content:'›';position:absolute;right:9px;top:50%;transform:translateY(-50%);color:#bbd79e;font-size:22px}
.game-ui .lobby-build,.game-ui .lobby-readiness{background:linear-gradient(120deg,#15262ef2,#091620f2);border-radius:3px;border-color:#5e766867;box-shadow:inset 0 1px #d3e6a412,0 12px 28px #0004}.lobby-readiness strong{color:#d9eab9}
.game-ui .loadout-tile{background:radial-gradient(ellipse at 50% 20%,#47697b55,transparent 70%),linear-gradient(160deg,#223640,#0d1924);border-color:#68879773;box-shadow:inset 0 1px #b1cfdf20,0 3px 8px #0003;border-radius:3px;padding:9px 6px}.loadout-tile .ability-symbol{display:grid;place-items:center;min-height:29px}.loadout-tile .game-icon{width:25px;height:25px;filter:drop-shadow(0 0 8px #acf99a30)}.loadout-tile kbd{background:#07121ccc;padding:1px 4px;border:1px solid #65808955}.loadout-tile>small{font:8px var(--font-hud)}
.game-ui .workshop{background:radial-gradient(ellipse at 0 40%,#25493866,transparent 50%),linear-gradient(110deg,#0c1821,#0a1019)}.workshop-header{border-bottom-color:#68826570}.workshop-header h1{color:#e1eccb}.workshop-rig{border:1px solid #7d9e7030;border-radius:3px;background:radial-gradient(ellipse at 50% 80%,#65824c38,transparent 65%)}
.game-ui .skill-row{background:linear-gradient(110deg,#1f3340,#111e2b);border-color:#49677765;border-radius:3px}.skill-equip>.ability-symbol{display:grid;place-items:center;width:38px;height:38px;background:#081823;border:1px solid #58768650;border-radius:3px}.skill-equip .game-icon{width:25px;height:25px}.game-ui .skill-row.selected{background:linear-gradient(110deg,#2a3d30,#172529);border-color:#97b66888}.workshop-stats .stat{box-shadow:inset 2px 0 #8ebd6d55}.game-ui .workshop-epic{background:radial-gradient(ellipse at 50% 15%,#895ea655,transparent 75%),#141323;box-shadow:inset 0 1px #dfbbff30}.epic-emblem .game-icon{width:58px;height:58px;margin:auto;filter:drop-shadow(0 0 16px #a472db70)}
.game-ui .combat-field .battle-head{background:linear-gradient(#08121aee,#08121a8c,transparent);padding-bottom:32px}.game-ui .fighter-label .portrait{border-radius:3px;border:1px solid #b3cd86;box-shadow:0 4px 12px #0006}.game-ui .fighter-label.right .portrait{border-color:#c790a3}.game-ui .health{height:14px;border-radius:1px;border-color:#a6c09780;box-shadow:0 2px 8px #0008,inset 0 1px #f7ffe033;transform:skewX(-8deg)}.game-ui .health:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent 19.6%,#04131c66 19.6%,#04131c66 20%)}.game-ui .health{position:relative}.game-ui .health i{background:linear-gradient(#def6a2,#86b648);box-shadow:inset 0 2px #f3ffc366}.game-ui .right .health i{background:linear-gradient(#f0aabd,#bc678a)}.game-ui .clock{font-weight:700;color:#e8efd7;text-shadow:0 0 20px #b8d29b30}.game-ui .stage-banner span{background:linear-gradient(130deg,#1d3328ee,#101f29ee);border-radius:2px;border-color:#9bbb6d80;box-shadow:0 4px 18px #0006}
.game-ui .combat-dock{background:linear-gradient(180deg,#29404d,#14232f 22%,#09151e);border-top:1px solid #abc39799;padding:10px 22px 9px;box-shadow:0 -10px 32px #0005,inset 0 2px #d9ebc81a}
.command-loadout,.command-status,.command-readout{max-width:940px}.command-status{padding:0 2px;font-size:10px}.command-status>strong:before{content:'◆';display:inline-block;margin-right:8px;font-size:8px;color:#caee98}.command-loadout{grid-template-columns:minmax(0,1fr) 164px;gap:14px}
.game-ui .battle-moves .ability{min-height:109px;max-height:120px;gap:2px;padding:8px 7px 7px;background:radial-gradient(ellipse at 50% 24%,#45677590,transparent 65%),linear-gradient(150deg,#233e4d,#11222e 60%,#0b1620);border-radius:3px;border:1px solid #728d9c;box-shadow:inset 0 1px #bddae83b,inset 0 -3px #0004,0 4px 10px #0005;overflow:hidden;transition:transform .12s,border-color .15s,box-shadow .15s}
.ability-art{display:grid;place-items:center;width:43px;height:43px;color:#daf3d2;filter:drop-shadow(0 3px 2px #0008) drop-shadow(0 0 8px #aef5bc44)}.ability-art .game-icon{width:34px;height:34px;stroke-width:1.5}.game-ui .battle-moves .ability[data-type=defense]{background:radial-gradient(ellipse at 50% 20%,#68528180,transparent 65%),linear-gradient(145deg,#2a2c49,#111b2b)}.ability[data-type=defense] .ability-art{color:#e0cdfc}
.game-ui .battle-moves .ability strong{font-size:12px;line-height:1.15;z-index:1}.game-ui .battle-moves .ability small{font-size:9px;z-index:1}.ability-check{font:7px var(--font-hud);letter-spacing:1px;color:#92b8c4;margin-top:3px;z-index:1}.game-ui .battle-moves .ability kbd,.game-ui .ability-utility kbd{border:1px solid #8aa2ad70;background:#07111ce6;min-width:16px;padding:1px 3px;border-radius:2px;box-shadow:0 2px #0006;color:#d6e6e8;z-index:2}
.game-ui .battle-moves .ability:hover:not(:disabled),.game-ui .battle-moves .ability:focus-visible{transform:translateY(-3px);border-color:#d4efab;box-shadow:inset 0 0 24px #b8ff1810,0 0 0 1px #bedf8460,0 8px 18px #0007}.game-ui .battle-moves .ability:active:not(:disabled){transform:translateY(0) scale(.97)}
.game-ui .battle-moves .ability:disabled{opacity:.65;filter:saturate(.45)}.game-ui .battle-moves .ability.selected{background:radial-gradient(ellipse at 50% 20%,#87ba4244,transparent 70%),#203c2c;opacity:1;filter:none;border:1px solid #e0f7a4;box-shadow:inset 0 0 20px #b8ff1820,0 0 13px #b8ff1820}.ability.selected .ability-check{color:#dfff9f}.cooldown-mark{right:5px;top:6px;background:#101621e8;border:1px solid #b2a27c66;border-radius:3px;padding:2px 5px;min-width:25px;text-align:center;font-size:16px;z-index:3}.cooldown-mark small{display:block!important;font-size:6px!important;color:#c4b99c!important}
.game-ui .ability-utility{min-height:109px;background:linear-gradient(145deg,#233b49,#0b1826);border-radius:3px;border-color:#8197a76b;box-shadow:inset 0 1px #d6f4ff20,0 4px 10px #0005;gap:3px}.game-ui .ability-utility.epic-button{background:radial-gradient(ellipse at 50% 25%,#8957c366,transparent 70%),linear-gradient(135deg,#302147,#151528);border-color:#aa83c6aa}.epic-ring{width:44px;height:44px;display:grid;place-items:center;position:relative;border-radius:50%;background:conic-gradient(#dbc0ff var(--charge),#56426244 0);padding:3px}.epic-ring:before{content:'';position:absolute;inset:3px;background:#281e3c;border-radius:50%}.epic-ring .game-icon{z-index:1;width:27px;height:27px}.game-ui .ability-utility>span:not(.epic-ring) .game-icon{width:30px;height:36px}.command-utility .ability-utility:disabled{opacity:.65}
.command-readout{margin-top:8px}.energy-meter{gap:3px}.energy-meter i{height:10px;width:9px;border:1px solid #598c9b55;transform:skewX(-12deg)}.energy-meter i.filled{background:linear-gradient(#c8f9ff,#43bbd3);box-shadow:0 0 6px #72d7f750}.move-info{font-size:10px;color:#d1dfe3;max-width:70%}.game-ui .combat-log{background:linear-gradient(130deg,#102631e6,#0a1722e6);border-color:#829d7d66;border-radius:2px;box-shadow:0 4px 20px #0005}
[data-command-state=locked] .command-status>strong{color:#a4dfee}[data-command-state=reveal] .command-status>strong{color:#d7bbff}[data-command-state=urgent] .command-status>strong,[data-command-state=urgent] #turn-clock{color:#ffd596}[data-command-state=urgent] #turn-bar{background:#edba72}[data-command-state=complete] .command-status>strong{color:#bfcab2}
.game-ui .result-overlay .result{border-radius:3px;border-top:2px solid #dbeda6;background:radial-gradient(ellipse at top,#49612e55,transparent 70%),linear-gradient(135deg,#142b28f5,#101b2af5);box-shadow:0 0 0 5px #06121b60,0 28px 80px #0009}.game-ui .result h2{font-size:clamp(20px,3vw,34px);letter-spacing:1px;text-transform:uppercase}.result-emblem{color:#e3eca2;text-shadow:0 0 30px #c9e09770}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.guide-grid article{background:linear-gradient(130deg,#243945,#101c29);border:1px solid #627c6866;padding:15px;border-radius:3px}.guide-grid .game-icon{color:#d0eaa8;margin-bottom:10px}.guide-grid h3{margin:0 0 5px}.guide-grid p{font-size:12px;margin:0;color:#bfcfd6}.guide-warning{color:#f0ce97;border-left:2px solid #e2c27f;padding-left:10px}.game-ui .game-panel{background:radial-gradient(ellipse at top left,#2a473866,transparent 75%),#0c1721;border-color:#8ca97588}.game-ui .game-panel>p{font-size:11px}.guide-grid kbd{border:1px solid #7b9c8666;padding:1px 4px;border-radius:3px}
.game-ui .challenge-card{border-radius:3px;background:radial-gradient(ellipse at 50% 0,#45614833,transparent 70%),linear-gradient(135deg,#1b2b36,#0f1b27);border-color:#70897260;box-shadow:0 9px 24px #0003}.challenge-card .portrait{width:62px!important;height:62px!important;border-radius:3px;border-color:#a8c08480}.challenge-card h3{color:#daedc1}.game-ui .bracket-match,.game-ui .slot{border-radius:3px;background:linear-gradient(130deg,#1e3240,#111d2a);border-color:#68847477}.game-ui .bracket-round h3{font:11px var(--font-hud);text-transform:uppercase;color:#d4eab7;letter-spacing:2px}.game-ui .history-row{border-radius:3px;border-left:2px solid #aaca8c77;background:linear-gradient(110deg,#1d343a,#12212d)}
@media(min-width:1000px) and (min-height:650px){.lobby-rail{margin-right:12px}.game-ui .game-lobby{padding:35px 40px 25px}.game-ui .lobby-build{padding:16px}.game-ui .rail-choice{min-height:64px}}
@media(max-width:1000px){.game-ui .game-lobby{grid-template-columns:minmax(0,1fr) 255px;padding:18px}.game-ui .rail-choice{min-height:54px}.game-ui .rail-choice .menu-glyph{width:36px;height:36px}.game-ui .rail-choice{grid-template-columns:38px 1fr}.rail-choice b{font-size:12px}.rail-label small{display:none}}
@media(max-width:760px){.game-ui .game-lobby{grid-template-columns:minmax(0,1fr) 210px;padding:13px}.game-ui .lobby-rail{padding:7px;gap:5px}.game-ui .rail-choice{grid-template-columns:31px 1fr;gap:0 7px;padding:7px;min-height:50px}.game-ui .rail-choice .menu-glyph{width:30px;height:32px}.menu-glyph .game-icon{width:23px!important;height:23px!important}.rail-choice b{font-size:11px}.rail-choice:after{display:none}.rail-choice small{font-size:8px}.game-ui .battle-moves .ability{min-height:99px;padding:7px 4px}.ability-art{width:36px;height:36px}.ability-art .game-icon{width:29px;height:29px}.game-ui .battle-moves .ability strong{font-size:10px}.game-ui .ability-utility{min-height:99px}.command-loadout{grid-template-columns:minmax(0,1fr) 144px;gap:9px}.game-ui .combat-dock{padding:9px 12px}.game-ui .guide-toggle{width:32px;min-height:32px}.game-system{gap:5px}.game-ui .skill-equip>.ability-symbol{width:28px;height:30px}.skill-equip .game-icon{width:22px;height:22px}.game-ui .lobby-id h1{max-width:100%;font-size:28px}}
@media(max-width:520px){.game-ui .game-lobby{grid-template-columns:minmax(0,1fr) 165px;padding:12px;min-height:460px}.game-ui .lobby-id h1{font-size:23px;max-width:160px}.game-ui .rail-choice{grid-template-columns:27px 1fr;min-height:48px;padding:6px;gap:0 6px}.game-ui .rail-choice .menu-glyph{width:27px;height:30px}.game-ui .lobby-rail{padding:5px;gap:4px}.rail-choice b{font-size:10px}.rail-choice small{font-size:7px}.rail-label{font-size:8px;padding:5px}.game-ui .lobby-build{padding:9px}.game-ui .loadout-tile{padding:7px 3px}.loadout-tile>small{font-size:7px}.loadout-tile .game-icon{width:22px;height:22px}.game-ui .lobby-readiness{padding:8px 10px}.scene-grid{display:none}.game-ui .combat-dock{padding:8px 8px max(6px,env(safe-area-inset-bottom))}.command-loadout{grid-template-columns:1fr;gap:6px}.game-ui .battle-moves .ability{min-height:98px;max-height:108px;padding:7px 3px}.game-ui .battle-moves .ability strong{font-size:10px}.game-ui .battle-moves .ability small{font-size:8px}.ability-check{font-size:6px}.ability-art{height:34px;width:34px}.game-ui .ability-utility{min-height:40px;max-height:44px;grid-template-columns:26px auto auto;padding:3px 12px 3px 26px;gap:6px}.epic-ring{width:29px;height:29px}.epic-ring .game-icon{width:19px;height:19px}.game-ui .ability-utility>span:not(.epic-ring) .game-icon{height:29px;width:23px}.energy-meter i{width:7px;height:9px}.command-readout{margin-top:6px}.move-info{font-size:8px;max-width:57%}.game-ui .health{height:11px}.guide-grid{grid-template-columns:1fr}.guide-grid article{padding:12px}.guide-grid .game-icon{float:left;margin-right:12px}.game-ui .game-panel{padding:15px}.game-ui .result h2{font-size:21px}.game-ui .ability-utility kbd{top:11px}.cooldown-mark small{font-size:6px!important}}
@media(max-height:560px) and (min-width:521px){.game-ui .game-lobby{padding:9px 14px;min-height:345px;grid-template-columns:minmax(0,1fr) 240px}.game-ui .lobby-rail{padding:5px;gap:3px}.game-ui .rail-choice{min-height:36px;padding:3px 7px;grid-template-columns:29px 1fr}.game-ui .rail-choice .menu-glyph{width:27px;height:27px}.game-ui .rail-choice small{display:none}.rail-label{padding:3px 5px}.game-ui .lobby-id h1{font-size:26px}.game-ui .lobby-build{padding:7px}.game-ui .loadout-tile{padding:4px}.loadout-tile .ability-symbol{min-height:22px}.loadout-tile .game-icon{height:19px;width:19px}.game-ui .combat-dock{padding:6px 12px}.game-ui .battle-moves .ability,.game-ui .ability-utility{min-height:70px;max-height:78px}.ability-art{height:25px;width:25px}.ability-art .game-icon{height:23px;width:23px}.game-ui .battle-moves .ability strong{font-size:10px}.ability-check{display:none}.epic-ring{height:30px;width:30px}.epic-ring .game-icon{height:21px;width:21px}.game-ui .ability-utility>span:not(.epic-ring) .game-icon{height:24px}.command-readout{margin-top:4px}.game-ui .health{height:10px}}
@media(prefers-reduced-motion:no-preference){.game-lobby,.workshop,.entry-screen,.game-panel{animation:game-enter .28s ease-out both}@keyframes game-enter{from{opacity:.6;transform:translateY(5px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){.game-ui *{animation:none!important;transition:none!important}.game-ui .rail-choice:hover,.game-ui .battle-moves .ability:hover{transform:none!important}}
/* UI 1.7: authoritative attack/defense resource economy, not a second simulation. */
.hud-energy{height:17px;position:relative;background:#091d2a;border:1px solid #68b7ca80;border-radius:2px;overflow:hidden;margin-top:5px;min-width:0}.hud-energy-fill{height:100%;background:linear-gradient(#71d5e2,#267e9e);transition:width .2s}.hud-energy:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 9.7%,#041724aa 9.7%,#041724aa 10%);pointer-events:none}.hud-energy>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 6px;z-index:1;color:#e1f7fd;font:8px var(--font-hud);text-shadow:0 1px 3px #00121f}.hud-energy b{font-weight:750}.energy-console{max-width:940px;margin:0 auto 9px;padding:9px 12px;background:linear-gradient(110deg,#173442,#0c1b2b);border:1px solid #69b1bb70;border-left:3px solid #79d3da;border-radius:3px;display:grid;grid-template-columns:170px minmax(100px,1fr) 205px;align-items:center;gap:5px 15px;box-shadow:inset 0 1px #d4f3ff18}.energy-console-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.energy-console-title>span{display:flex;align-items:center;gap:6px;font:8px var(--font-hud);letter-spacing:.7px;color:#bedde4}.energy-console-title .game-icon{width:18px;height:22px;color:#8ce8ef}.energy-console-title>strong{font:23px var(--font-hud);color:#cefbff;white-space:nowrap}.energy-console-title strong small{font-size:10px;color:#8bb6c3}.energy-console .hud-energy{height:19px;margin:0}.energy-console .hud-energy>span{font-size:8px}.energy-rules{display:flex;flex-direction:column;gap:3px;font:9px var(--font-hud);color:#aacdd4}.energy-console p{grid-column:1/-1;font:10px/1.5 var(--font-hud);color:#c6e1e6;margin:0;min-height:15px}.energy-console[data-low=true]{border-left-color:#f0c17c;border-color:#ba975e90}.energy-console[data-low=true] .energy-console-title>strong{color:#f5d59b}.game-ui .battle-moves .ability .cost-badge{background:#071b27d9;border:1px solid #5c9baf85;border-radius:3px;min-width:49px;padding:2px 5px;font-size:9px;color:#c4f2f7}.game-ui .battle-moves .ability .cost-badge[data-affordable=false]{color:#fbd195;border-color:#c6a06999;background:#36271dd9}.game-ui .battle-moves .ability[data-type=defense] .cost-badge{border-color:#a28ac48c}.game-ui .combat-field>.stage-banner{top:114px}.game-ui .combat-field .battle-head{padding-bottom:24px}.fighter-meta .hud-energy{max-width:100%}.game-ui .combat-dock .command-readout>.energy-meter,.game-ui .combat-dock .command-readout>.energy-meter+span{display:none}.game-ui .combat-dock .move-info{margin-left:0;max-width:100%}.game-ui .combat-dock .command-readout{min-height:14px}
@media(max-width:760px){.energy-console{grid-template-columns:155px minmax(100px,1fr);padding:7px 9px;gap:5px 10px}.energy-rules{grid-column:1/-1;flex-direction:row;justify-content:space-between;font-size:8px}.energy-console p{font-size:9px}.game-ui .combat-field>.stage-banner{top:101px}.hud-energy{height:15px}}
@media(max-width:520px){.energy-console{grid-template-columns:135px minmax(70px,1fr);padding:6px 8px;margin-bottom:6px;gap:4px 8px}.energy-console-title>strong{font-size:20px}.energy-console-title>span{font-size:7px;letter-spacing:.2px}.energy-console .hud-energy{height:16px}.energy-console .hud-energy>span{font-size:7px}.energy-console p{font-size:8px;line-height:1.35;min-height:22px}.energy-rules{font-size:7px;gap:5px}.game-ui .combat-field>.stage-banner{top:88px}.fighter-meta .hud-energy>span{font-size:7px;padding:0 3px}.game-ui .battle-moves .ability{min-height:86px;max-height:95px}.ability-art{height:27px}.ability-art .game-icon{width:25px;height:25px}.game-ui .battle-moves .ability .cost-badge{font-size:8px;padding:1px 4px;min-width:45px}.game-ui .combat-dock .command-readout{display:none}}
@media(max-height:560px) and (min-width:521px){.energy-console{grid-template-columns:150px minmax(90px,1fr) 190px;padding:4px 9px;margin-bottom:5px;gap:3px 10px}.energy-rules{grid-column:auto;flex-direction:column;font-size:8px;gap:1px}.energy-console p{font-size:8px;min-height:12px;line-height:1.3}.energy-console-title>strong{font-size:18px}.energy-console .hud-energy{height:15px}.game-ui .combat-field>.stage-banner{top:82px}.fighter-meta .hud-energy{height:12px;margin-top:3px}.game-ui .combat-dock .command-readout{display:none}.game-ui .battle-moves .ability,.game-ui .ability-utility{min-height:65px;max-height:72px}.game-ui .battle-moves .ability .cost-badge{padding:0 3px;font-size:8px}}

/* UI 1.8 / INTEGRATED_COMBAT_PRESENTATION. Field and command dock share one scene. */
.game-ui .combat-screen{position:relative;display:block;height:100%;min-height:480px;isolation:isolate;--dock-height:216px;background:#08151e}
.game-ui .arena-shell.combat-field{position:absolute;inset:0;border:0;border-radius:0;overflow:hidden}
.game-ui .combat-topline{position:absolute;top:0;left:0;right:0;z-index:5;height:44px;padding:0 20px;pointer-events:none;background:linear-gradient(#08121ef5,#08121e70)}
.combat-topline .actions{pointer-events:auto}.game-ui .combat-topline button{min-height:44px;font-size:12px}
.game-ui .combat-field .battle-head{top:44px;padding:12px 24px 26px;grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr);gap:18px;pointer-events:none}
.game-ui .fighter-label{min-width:0;gap:10px}.game-ui .fighter-label .portrait{display:block;width:48px;height:48px;object-fit:contain;background:#12232e}
.game-ui .fighter-meta{min-width:0;flex:1}.game-ui .fighter-meta>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:22px}
.game-ui .fighter-meta>small{font-size:11px}.game-ui .health{height:13px;transform:none}.game-ui .right .health i{background:linear-gradient(#96e8f6,#4099b4)}
.game-ui .fighter-meta .hud-energy{height:18px;margin-top:4px}.game-ui .fighter-meta .hud-energy>span{font-size:10px;padding:0 5px}
.game-ui .clock{font:700 26px var(--font-hud)}.game-ui .clock small{font-size:9px}.exchange-clock{display:block;margin-top:7px;font:11px var(--font-hud);color:#b8d4dc}
.game-ui .combat-field>.stage-banner{top:153px}.game-ui .stage-banner span{font-size:10px;letter-spacing:1px}
.game-ui .combat-dock{position:absolute;z-index:6;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,1040px);height:var(--dock-height);box-sizing:border-box;padding:12px 18px max(10px,env(safe-area-inset-bottom));border:1px solid #65848e;border-bottom:0;border-radius:18px 18px 0 0;background:linear-gradient(160deg,#223d48f5,#0b1c29f8 65%);box-shadow:0 -12px 36px #0005,inset 0 1px #c9e0d522;backdrop-filter:blur(8px)}
.game-ui .command-status{font-size:12px;margin-bottom:0}.game-ui .command-status>strong{font-size:12px;letter-spacing:.4px}.reactor-readout{display:flex;align-items:center;justify-content:space-between;gap:8px;height:34px;color:#c4dce4;font:11px var(--font-hud)}.reactor-readout b{color:#88e8f4}.game-ui .reactor-readout button{min-height:44px;padding:4px 8px;font-size:11px;position:relative;z-index:2}
.game-ui .command-loadout{grid-template-columns:minmax(0,1fr) 160px;gap:10px}.game-ui .combat-dock .battle-moves{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.game-ui .battle-moves .ability{height:94px;min-height:94px;max-height:none;padding:7px 4px;gap:2px;border-color:#658491;box-shadow:inset 0 1px #d4e9e922,0 3px 8px #0004}.game-ui .battle-moves .ability strong{font-size:12px;line-height:1.15;max-width:100%;overflow-wrap:normal}.game-ui .ability-art{width:30px;height:28px;filter:none}.ability-art .game-icon{width:27px;height:27px}.game-ui .battle-moves .ability .cost-badge{font-size:10px;padding:1px 4px}.game-ui .ability-check{font-size:8px;letter-spacing:.3px;margin:0}
.game-ui .command-utility{display:grid;grid-template-columns:1fr 1fr;gap:6px}.game-ui .ability-utility{display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:94px;height:94px;max-height:none;padding:6px;position:relative}.game-ui .ability-utility strong{font-size:13px}.game-ui .ability-utility small{font-size:10px}.game-ui .epic-ring{width:30px;height:30px}.game-ui .ability-utility kbd{top:3px;left:3px}.game-ui .ability-utility>span:not(.epic-ring) .game-icon{height:30px}
.game-ui .combat-dock .command-readout{display:block;margin-top:7px;min-height:32px;max-height:36px;overflow:auto;font:11px/1.4 var(--font-hud)}.command-readout p{margin:0;color:#d3e9e9}.game-ui .combat-dock .move-info{display:none}
.game-ui .combat-log{bottom:calc(var(--dock-height) + 10px);left:16px;z-index:7;max-width:min(560px,calc(100% - 32px))}.game-ui .combat-log summary{font-size:11px;min-height:44px;padding:12px}.combat-log-scroll{max-height:180px;overflow:auto}
.game-ui .result-overlay{z-index:8;bottom:var(--dock-height);padding:18px}.game-ui .result .actions button{min-height:44px}.combat-screen[data-command-state=complete] .combat-dock{opacity:.65}.combat-screen[data-command-state=disconnected] .command-status strong{color:#ffd19e}.combat-screen[data-command-state=submitting] .command-status strong{color:#ffd19e}.combat-screen[data-command-state=committed] .command-status strong{color:#9de3ef}
.move-inspection{display:grid;grid-template-columns:1fr 1fr;gap:10px}.move-inspection article{padding:12px;background:#142935;border:1px solid #466575}.move-inspection h3{font-size:14px;margin:0}.move-inspection .game-icon{display:inline-block;vertical-align:middle}.move-inspection p,.move-inspection small{font-size:12px;line-height:1.5}
.game-ui .combat-screen button:focus-visible{outline:3px solid #d6ff99;outline-offset:2px}
@media(max-width:520px){.game-ui .combat-screen{min-height:580px;--dock-height:266px}.game-ui .combat-topline{padding:0 10px}.game-ui .combat-topline .eyebrow{font-size:10px}.game-ui .combat-field .battle-head{padding:9px 10px 20px;grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr);gap:6px}.game-ui .fighter-label{display:block;position:relative}.game-ui .fighter-label .portrait{width:32px;height:32px;float:left;margin-right:5px}.game-ui .fighter-label.right .portrait{float:right;margin:0 0 0 5px}.game-ui .fighter-meta>strong{font-size:12px;line-height:18px}.game-ui .fighter-meta>small{font-size:10px}.game-ui .fighter-meta .hud-energy{clear:both;margin-top:6px}.game-ui .fighter-meta .hud-energy>span{font-size:9px}.game-ui .clock{font-size:19px}.game-ui .clock small{font-size:8px}.exchange-clock{font-size:10px}.game-ui .combat-field>.stage-banner{top:151px}.game-ui .combat-dock{padding:10px 10px max(10px,env(safe-area-inset-bottom));border-radius:14px 14px 0 0}.game-ui .command-status>strong{font-size:11px}.game-ui .command-loadout{grid-template-columns:1fr;gap:6px}.game-ui .combat-dock .battle-moves{gap:6px}.game-ui .battle-moves .ability{height:96px;min-height:96px}.game-ui .battle-moves .ability strong{font-size:11px}.game-ui .command-utility{grid-template-columns:1fr 1fr;gap:8px}.game-ui .ability-utility{flex-direction:row;gap:8px;height:44px;min-height:44px;padding:4px 8px 4px 24px}.game-ui .ability-utility kbd{top:12px}.game-ui .combat-dock .command-readout{font-size:10px;max-height:30px;min-height:28px;margin-top:5px}.reactor-readout{font-size:10px;height:36px}.reactor-readout>span:nth-child(2){display:none}.game-ui .combat-log{left:10px;max-width:calc(100% - 20px)}.move-inspection{grid-template-columns:1fr}}
@media(max-height:560px) and (min-width:521px){.game-ui .combat-screen{min-height:300px;--dock-height:142px}.game-ui .combat-topline{left:auto;width:110px;top:0;padding:0 8px}.combat-topline>.eyebrow{display:none}.game-ui .combat-field .battle-head{top:0;padding:8px 124px 12px 14px;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:10px}.game-ui .fighter-label .portrait{width:32px;height:32px}.game-ui .fighter-meta>strong{font-size:12px;line-height:16px}.game-ui .fighter-meta>small{font-size:10px}.game-ui .fighter-meta .hud-energy{height:14px;margin-top:3px}.game-ui .fighter-meta .hud-energy>span{font-size:9px}.game-ui .clock{font-size:20px}.exchange-clock{margin-top:2px}.game-ui .combat-field>.stage-banner{display:none}.game-ui .combat-dock{padding:6px max(12px,env(safe-area-inset-right)) 6px max(12px,env(safe-area-inset-left));display:grid;grid-template-columns:180px minmax(0,1fr);grid-template-rows:34px 60px 30px;gap:0 12px}.game-ui .command-status{grid-column:1;display:block;line-height:17px}.game-ui .command-status>span{display:block}.reactor-readout{grid-column:1;grid-row:2;display:flex;flex-wrap:wrap;align-content:start;height:auto;gap:0;font-size:10px}.reactor-readout>span:nth-child(2){display:none}.game-ui .reactor-readout button{padding:0;min-height:44px}.game-ui .command-loadout{grid-column:2;grid-row:1/3;align-self:center;grid-template-columns:minmax(0,1fr) 126px;gap:7px}.game-ui .battle-moves .ability,.game-ui .ability-utility{height:86px;min-height:86px}.game-ui .battle-moves .ability strong{font-size:11px}.game-ui .ability-check{display:none}.game-ui .combat-dock .command-readout{grid-column:1/-1;grid-row:3;margin:3px 0 0;font-size:10px;min-height:26px}.game-ui .combat-log{bottom:calc(var(--dock-height) + 2px);left:auto;right:8px}.game-ui .combat-log summary{min-height:44px}.game-ui .result-overlay{bottom:var(--dock-height)}.game-ui .result-overlay .result{max-height:100%;overflow:auto}}
@media(prefers-reduced-motion:reduce){.game-ui .combat-screen *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.game-ui .central-turn{display:block;margin-top:5px;font:700 14px var(--font-hud);color:#b8edf4}.game-ui .central-turn small{display:inline;font-size:8px}.commitment-note{font:9px var(--font-hud);color:#a9c3ce}@media(max-width:520px){.commitment-note{display:none}.game-ui .central-turn{font-size:12px;margin-top:3px}.game-ui .exchange-clock{margin-top:3px}}

/* Completed log stays above the result veil, with bounded scrollable content. */
.game-ui .combat-field .combat-log{z-index:9;max-width:calc(100% - 24px);}
.game-ui .combat-log[open] .combat-log-scroll{max-height:min(24vh,160px);overflow:auto;}
.terminal-result[hidden]{display:none;}

/* Separate completed log and result actions into reserved vertical regions.
   Both regions scroll independently; the log cannot cover terminal actions. */
.game-ui .combat-screen[data-command-state=complete] .result-overlay{box-sizing:border-box;padding-bottom:116px;}
.game-ui .combat-screen[data-command-state=complete] .result-overlay .result{box-sizing:border-box;max-height:100%;overflow:auto;}
.game-ui .combat-screen[data-command-state=complete] .combat-log{box-sizing:border-box;max-height:96px;overflow:auto;}
.game-ui .combat-screen[data-command-state=complete] .combat-log summary{position:sticky;top:0;background:#142935;}

@media(max-height:560px) and (min-width:521px){
 .game-ui .combat-screen[data-command-state=complete] .result-overlay{padding:8px calc(50% + 8px) 8px 8px;}
 .game-ui .combat-screen[data-command-state=complete] .combat-log{width:calc(50% - 16px);max-width:calc(50% - 16px);max-height:calc(100% - var(--dock-height) - 16px);}
}


/* UI1.9 / ARCADE ACTION BAR. Additive visual skin; authoritative UI geometry unchanged. */
.arcade-ui{--arcade-lime:#d0ff56;--arcade-amber:#ffcd72;--arcade-pink:#ff86c6;--arcade-cyan:#75e9fa;--arcade-edge:#50626c;--font-hud:ui-monospace,SFMono-Regular,Consolas,monospace;}
.arcade-ui .game-header{background:linear-gradient(100deg,#102127,#111624 70%);border-bottom:2px solid #68734b;box-shadow:0 4px 18px #0006;}
.arcade-ui .brand .mark{text-shadow:3px 2px 0 #47674d;letter-spacing:-2px;}
.arcade-ui nav button.active{border-bottom:2px solid var(--arcade-lime);background:#c4f75116;}
.arcade-ui .combat-topline{background:linear-gradient(90deg,#0b171fef,#122024d9);border-bottom:1px solid #677a5e;}
.arcade-ui .combat-topline .eyebrow{color:#e9f1b6;font-weight:800;letter-spacing:1.5px;}
.arcade-ui .combat-topline .eyebrow::before{content:'AXO // ';color:var(--arcade-lime);}
.arcade-ui .combat-topline button{border:1px solid #68756b;background:#111e25;}
.arcade-ui .combat-field .battle-head{gap:16px;padding-top:8px;padding-bottom:18px;background:linear-gradient(#08101be8,#08131a95,transparent);}
.arcade-ui .fighter-label{position:relative;padding:5px 8px;border:1px solid #7d966a;border-left:4px solid var(--arcade-lime);border-radius:3px 12px 3px 3px;background:linear-gradient(110deg,#1b302aed,#0c1c27e8);box-shadow:inset 0 1px #e5ffc32b,0 6px 16px #0005;align-self:start;}
.arcade-ui .fighter-label.right{border-left:1px solid #657a8e;border-right:4px solid var(--arcade-cyan);border-radius:12px 3px 3px 3px;background:linear-gradient(250deg,#1d3446ed,#0c1c27e8);}
.arcade-ui .fighter-label .portrait{border-radius:4px;border:2px solid #849763;box-shadow:3px 3px 0 #030b1488;width:48px;height:48px;}
.arcade-ui .fighter-callsign{position:absolute;left:10px;right:10px;top:-5px;display:flex;justify-content:space-between;align-items:center;font:800 8px/1.2 var(--font-hud);letter-spacing:1px;color:var(--arcade-lime);margin-bottom:3px;}
.arcade-ui .fighter-callsign i{font-style:normal;opacity:.7;}.arcade-ui .right .fighter-callsign{color:var(--arcade-cyan);flex-direction:row-reverse;}
.arcade-ui .fighter-meta>strong{font-weight:900;letter-spacing:.3px;color:#f2f7eb;}
.arcade-ui .health{height:15px;border-radius:2px;border:1px solid #83966d;background:#07151b;box-shadow:inset 0 2px 4px #0008,0 1px #0009;position:relative;}
.arcade-ui .health::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 1px),#0a111c55 calc(10% - 1px),#0a111c55 10%);pointer-events:none;}
.arcade-ui .health i{background:linear-gradient(#e8ffaf,#a2db44);}.arcade-ui .right .health i{background:linear-gradient(#baf6ff,#53c5dd);}
.arcade-ui .fighter-meta .hud-energy{border-color:#367283;border-radius:2px;background:#0b1b29;}
.arcade-ui .hud-energy-fill{background:linear-gradient(#77e5ed,#258ca7);}
.arcade-ui .fighter-meta .hud-energy::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 2px),#06131e88 calc(10% - 2px),#06131e88 10%);pointer-events:none;}
.arcade-ui .fighter-meta .hud-energy>span{z-index:1;color:#f0fdff;letter-spacing:.2px;text-shadow:0 1px 2px #000;}
.arcade-ui .clock{position:relative;padding:8px 2px;border:1px solid #b7bc74;border-radius:3px;background:linear-gradient(#2f3425,#141e22);box-shadow:0 4px 0 #030a12;line-height:1.1;}
.arcade-ui .arcade-versus{display:block;font:900 10px/1 var(--font-hud);letter-spacing:4px;color:var(--arcade-amber);margin-bottom:5px;}
.arcade-ui .clock #battle-clock{font-variant-numeric:tabular-nums;letter-spacing:-1px;color:#f4ffd2;}
.arcade-ui .exchange-clock{color:#d9e7e5;border-top:1px solid #77815b66;padding-top:5px;margin-top:5px;}
.arcade-ui .central-turn{font-variant-numeric:tabular-nums;color:var(--arcade-amber);}
.arcade-ui .stage-banner span{border-radius:2px;border:1px solid #9baa62;background:#101f28ee;box-shadow:3px 3px 0 #0006;font-weight:800;color:#e5f3b7;}
/* Cabinet-style control deck: four move keys + epic/recharge module. No extra HUD rows. */
.game-ui.arcade-ui .arcade-actionbar{border:2px solid #8b9871;border-bottom:0;border-radius:12px 12px 0 0;background:linear-gradient(125deg,#31433ce8,#182832f5 42%,#17242cf8),repeating-linear-gradient(45deg,#ffffff05 0 2px,transparent 2px 6px);box-shadow:0 -6px 0 #08121cc7,0 -7px 0 #b2c98355,0 -20px 45px #0007,inset 0 2px #f0fbd82b;}
.arcade-actionbar::before,.arcade-actionbar::after{content:'';position:absolute;top:9px;width:6px;height:6px;border-radius:50%;background:#071319;box-shadow:inset 1px 1px 0 #becdaf66;pointer-events:none;}.arcade-actionbar::before{left:6px;}.arcade-actionbar::after{right:6px;}
.arcade-ui .turn-strip{height:4px;background:#071219;border-radius:10px 10px 0 0;overflow:hidden;}
.arcade-ui .turn-strip i{background:linear-gradient(90deg,var(--arcade-cyan),var(--arcade-lime));box-shadow:0 0 8px #90fdb155;}
.arcade-ui .command-status{border-bottom:1px solid #86947555;padding-bottom:3px;}
.arcade-ui .command-status>strong{font-weight:900;color:#dcfba4;letter-spacing:.7px;}
.arcade-ui .commitment-note{color:#b2c8c5;white-space:nowrap;}.arcade-dot{display:inline-block;width:5px;height:5px;background:var(--arcade-lime);transform:rotate(45deg);}
.arcade-ui .reactor-label{font-weight:800;letter-spacing:.7px;color:#bfe9ed;}.arcade-ui .reactor-label b{color:#edfeff;}
.arcade-ui .reactor-readout button{background:#0b1d28;border-color:#476674;border-radius:3px;}
.arcade-ui .command-loadout{padding:1px;border:1px solid #6d7d7466;border-radius:6px;background:#06111b70;gap:8px;}
.game-ui.arcade-ui .battle-moves .ability{--key-color:var(--arcade-amber);--key-dark:#443326;background:linear-gradient(155deg,#403e32,#18232e 68%);border:1px solid #b9a173;border-bottom:4px solid #695940;border-radius:5px;box-shadow:inset 0 2px #fff2c32b,0 3px 0 #071018;filter:none;}
.game-ui.arcade-ui .battle-moves .ability[data-type=defense]{--key-color:var(--arcade-pink);--key-dark:#3d2c4e;background:linear-gradient(155deg,#40304c,#172330 68%);border-color:#a48bad;border-bottom-color:#61516e;}
.game-ui.arcade-ui .battle-moves .ability .ability-art{color:var(--key-color);display:grid;place-items:center;width:30px;height:24px;background:radial-gradient(ellipse,#ffffff12,transparent);}
.game-ui.arcade-ui .ability-art .game-icon{width:24px;height:24px;stroke-width:1.8;}
.game-ui.arcade-ui .battle-moves .ability strong{color:#f5f4e4;font-weight:800;font-size:12px;line-height:1.12;overflow-wrap:anywhere;}
.arcade-ui .ability kbd,.arcade-ui .ability-utility kbd{color:#f0f5df;background:#081620;border:1px solid #596d73;border-radius:2px;min-width:15px;padding:1px 3px;font-weight:800;font-size:9px;}
.game-ui.arcade-ui .battle-moves .ability .cost-badge{color:#fbdfad;border:0;background:#06131ac2;font-weight:800;}
.game-ui.arcade-ui .battle-moves .ability .cost-badge[data-affordable=false]{color:#ffb6b6;}
.game-ui.arcade-ui .ability-check{color:#ccd9c6;font-size:8px;letter-spacing:.8px;}
.game-ui.arcade-ui .battle-moves .ability:hover:not(:disabled){background:linear-gradient(155deg,#566047,#223530);border-color:#dafaa4;box-shadow:inset 0 2px #f8ffd13b,0 3px 0 #071018,0 0 12px #b9f26622;}
.game-ui.arcade-ui .battle-moves .ability.selected{opacity:1;border-color:var(--arcade-lime);background:linear-gradient(155deg,#365337,#102b29);box-shadow:inset 0 0 0 1px #dbff8366,0 3px 0 #061018;}
.game-ui.arcade-ui .battle-moves .ability.selected .ability-check{color:#deff9a;}
.game-ui.arcade-ui .battle-moves .ability:disabled:not(.selected){opacity:.65;filter:saturate(.55);}.arcade-ui .cooldown-mark{background:#19212bef;border:1px solid #ae8d64;padding:0 3px;border-radius:2px;z-index:1;}
.game-ui.arcade-ui .ability-utility{border-radius:6px;border:1px solid #6da1ab;border-bottom:4px solid #355363;background:linear-gradient(155deg,#224452,#102333);box-shadow:inset 0 2px #d6fbff1f,0 3px 0 #071018;}
.game-ui.arcade-ui .ability-utility.epic-button{background:radial-gradient(ellipse at 50% 20%,#655088,#21172f 80%);border-color:#b199d6;border-bottom-color:#5b477a;}
.arcade-ui .epic-ring{box-shadow:0 0 10px #b19cff24;border:1px solid #c5a9f86b;}.arcade-ui .command-readout{color:#bfd7d8;padding-left:6px;border-left:2px solid #6bb9bc;}
.arcade-ui .combat-screen[data-command-state=disconnected] .arcade-actionbar{border-color:#efae72;}.arcade-ui .combat-screen[data-command-state=committed] .arcade-actionbar{border-color:#9cda85;}
.arcade-ui .combat-screen[data-command-state=complete] .arcade-actionbar{filter:saturate(.65);}
/* Decorative, noninteractive decals. They never announce gameplay/financial claims. */
.arcade-decals{position:absolute;inset:0;z-index:1;pointer-events:none;user-select:none;overflow:hidden;}
.decal{position:absolute;display:block;padding:4px 7px;font:900 9px/1.25 var(--font-hud);letter-spacing:.5px;border:1px solid currentColor;box-shadow:2px 2px 0 #0007;}
.decal-hodl{bottom:calc(var(--dock-height) + 17px);left:calc(50% - 85px);transform:rotate(-3deg);background:#e4e6a1;color:#17272c;}
.decal-rug{right:10px;top:calc(50% - 50px);transform:rotate(5deg);background:#24201bf0;color:#d9b779;border-style:dashed;}
.decal-free{left:10px;top:calc(50% - 50px);transform:rotate(-5deg);background:#15252eed;color:#7ba6aa;font-size:8px;opacity:.8;}
.lobby-decals{position:absolute;left:35px;top:128px;display:flex;gap:10px;pointer-events:none;z-index:1;}
.lobby-decals>span{display:block;transform:rotate(-7deg);padding:7px 10px;background:#d6e79b;color:#14212a;box-shadow:3px 3px 0 #0008;font:900 12px/1.15 var(--font-hud);letter-spacing:.5px;}
.lobby-decals b{display:block;font-size:19px;}.lobby-decals>span+span{background:#233338;color:#93bec6;border:1px solid #5d7a7e;transform:rotate(5deg);font-size:10px;}
.arcade-ui .lobby-rail{border:1px solid #9aa277;border-radius:3px;box-shadow:5px 5px 0 #050d16;}.arcade-ui .rail-label{color:#e6faaa;font-weight:800;}
.arcade-ui .combat-log summary{color:#d8e9ae;font-weight:800;letter-spacing:.3px;}.arcade-ui .combat-log{border-color:#84926d;}
.arcade-ui .result-overlay .result{border:2px solid #b1bd7e;border-radius:3px;box-shadow:6px 6px 0 #050b14;}.arcade-ui .result-emblem{color:#e7fb9d;text-shadow:3px 3px 0 #596237;}
/* Preserve the216/266/142px dock reservations and44px interactive targets. */
@media(max-width:520px){
 .arcade-ui .combat-field .battle-head{padding:8px 8px 20px;gap:5px;}
 .arcade-ui .fighter-label{padding:6px;border-left-width:2px;}.arcade-ui .fighter-label.right{border-right-width:2px;}
 .arcade-ui .fighter-label .portrait{width:28px;height:28px;margin-right:4px;}.arcade-ui .fighter-label.right .portrait{margin-left:4px;}
 .arcade-ui .fighter-callsign{font-size:7px;letter-spacing:.3px;margin-bottom:2px;}.arcade-ui .fighter-callsign i{display:none;}
 .arcade-ui .fighter-meta>strong{font-size:11px;line-height:17px;}.arcade-ui .fighter-meta>small{font-size:9px;}.arcade-ui .health{height:12px;}
 .arcade-ui .clock{padding:5px 1px;font-size:18px;}.arcade-ui .arcade-versus{font-size:8px;letter-spacing:2px;margin-bottom:3px;}.arcade-ui .clock small{font-size:7px;}
 .arcade-ui .exchange-clock{font-size:9px;margin-top:3px;padding-top:3px;}.arcade-ui .central-turn{font-size:11px;}
 .arcade-ui .command-status>strong{font-size:10px;}.arcade-ui .command-loadout{padding:2px;gap:5px;}
 .game-ui.arcade-ui .battle-moves .ability strong{font-size:11px;}.game-ui.arcade-ui .battle-moves .ability{padding:6px 3px;}
 .game-ui.arcade-ui .ability-utility{min-height:44px;height:44px;border-bottom-width:2px;}
 .decal-rug,.decal-free{display:none;}.decal-hodl{font-size:8px;left:auto;right:12px;bottom:calc(var(--dock-height) + 12px);}
 .lobby-decals{left:15px;top:107px;}.lobby-decals>span{font-size:9px;padding:5px;}.lobby-decals b{font-size:13px;}.lobby-decals>span+span{display:none;}
}
@media(max-height:560px) and (min-width:521px){
 .arcade-ui .combat-field .battle-head{gap:8px;padding-top:5px;padding-bottom:8px;}
 .arcade-ui .fighter-label{padding:3px 6px;border-left-width:2px;}.arcade-ui .fighter-label.right{border-right-width:2px;}
 .arcade-ui .fighter-callsign,.arcade-ui .arcade-versus{display:none;}.arcade-ui .fighter-meta>strong{font-size:11px;line-height:15px;}.arcade-ui .fighter-meta>small{font-size:9px;}
 .arcade-ui .fighter-meta .hud-energy{height:12px;margin-top:2px;}.arcade-ui .health{height:10px;margin:2px 0;}
 .arcade-ui .clock{padding:3px 1px;font-size:18px;}.arcade-ui .clock small{font-size:7px;}.arcade-ui .exchange-clock{margin-top:2px;padding-top:2px;font-size:9px;}.arcade-ui .central-turn{margin-top:2px;font-size:11px;}
 .arcade-ui .command-loadout{padding:2px;}.arcade-ui .command-status{padding:0;border:0;}.arcade-ui .command-status>strong{font-size:10px;}
 .game-ui.arcade-ui .ability-utility{min-height:86px;height:86px;}.game-ui.arcade-ui .battle-moves .ability strong{font-size:11px;}
 .decal-rug,.decal-free,.lobby-decals{display:none;}.decal-hodl{font-size:8px;left:12px;bottom:calc(var(--dock-height) + 5px);}
}
@media(prefers-reduced-motion:reduce){.arcade-ui *{animation:none!important;transition:none!important;scroll-behavior:auto!important;}.arcade-ui .epic-ring{box-shadow:none;}}

/* UI1.9 matchmaking: notices, available players and server-timed fight intro. */
.match-notice[hidden],.fight-intro[hidden]{display:none;}
.match-notice{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;padding:10px 14px;border-bottom:2px solid #cfdf87;background:#172d30;color:#e9f6c2;z-index:12;}
.game-ui .match-notice button{min-height:44px;}.match-notice>span{font-size:11px;color:#b7d3d3;}
.online-room{border-color:#6b9a87!important;}.online-room h2{margin:4px 0;}.online-room>p{font-size:11px;max-width:850px;}
.online-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px;}
.online-player{display:flex;justify-content:space-between;align-items:center;gap:9px;padding:12px;border:1px solid #4b6e76;background:#0c1e2b;min-width:0;}
.online-player>div{min-width:0;}.online-player strong,.online-player small,.online-status{display:block;overflow-wrap:anywhere;}.online-player strong{font-size:13px;}.online-player small{font-size:10px;color:#adc9ce;}.online-status{font:9px/1.6 var(--font-hud);color:#c8f29e;}
.online-player .portrait{width:38px!important;height:38px!important;float:left;margin-right:8px;}.game-ui .online-player button,.game-ui .online-room button{min-height:44px;flex-shrink:0;}
.fight-intro{position:absolute;z-index:4;top:172px;bottom:var(--dock-height);left:0;right:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center;gap:8px;overflow:hidden;background:radial-gradient(ellipse,#08121c66,transparent 65%);}
.fight-intro>span{font:900 10px/1.4 var(--font-hud);letter-spacing:2px;color:#e9fcae;padding:5px 12px;background:#101f29ed;border:1px solid #82986c;}
.fight-intro strong{font:1000 clamp(52px,13vw,144px)/.9 system-ui,sans-serif;font-style:italic;letter-spacing:-4px;color:#f0ffad;text-shadow:4px 4px 0 #496d62,8px 8px 0 #03121dbb;}
.fight-intro[data-phase=fight] strong{color:#ffdc89;letter-spacing:-2px;}.fight-intro small{font:10px var(--font-hud);color:#c7e0dd;background:#101f29ed;padding:4px 8px;}
.combat-screen[data-command-state=countdown] .command-status strong{color:#ffe8a6;}
@media(max-width:520px){.match-notice{padding:7px 9px;gap:5px;}.match-notice>span{display:none;}.online-player{flex-wrap:wrap;}.online-player>button{width:100%;}.fight-intro{top:172px;}.fight-intro>span{font-size:8px;letter-spacing:.8px;}.fight-intro small{font-size:8px;}}
@media(max-height:560px) and (min-width:521px){.fight-intro{top:78px;gap:3px;}.fight-intro strong{font-size:54px;}.fight-intro>span{font-size:8px;padding:2px 8px;}.fight-intro small{display:none;}.match-notice{padding:3px 8px;}.match-notice>span{display:none;}}
@media(prefers-reduced-motion:reduce){.fight-intro strong{text-shadow:none;}.fight-intro{background:none;}}

/* IMPACT_REVISION_2: one connected icon rail, not four text-card buttons.
   Native buttons intentionally retain keyboard, focus and disabled semantics. */
.game-ui.arcade-ui.impact-ui .arcade-actionbar{background:linear-gradient(180deg,#091822dd,#07121cf2);border:0;border-top:1px solid #60859380;border-radius:0;box-shadow:0 -12px 30px #0006;backdrop-filter:blur(6px);}
.impact-ui .arcade-actionbar::before,.impact-ui .arcade-actionbar::after{display:none;}
.impact-ui .command-status{border:0;}.impact-ui .command-status>strong{color:#dce7eb;font-size:10px;letter-spacing:1.6px;}
.impact-ui .reactor-readout{max-width:640px;margin:0 auto;}.impact-ui .reactor-readout button{border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;}
.game-ui.arcade-ui.impact-ui .hotbar-rail{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(6,minmax(44px,1fr));align-items:start;gap:8px;max-width:480px;width:100%;height:104px;padding:4px 0 28px;margin:0 auto;border:0;border-radius:0;background:none;box-sizing:border-box;}
.impact-ui .hotbar-rail::before{content:'';position:absolute;left:-10px;right:-10px;top:24px;height:34px;z-index:-1;pointer-events:none;background:linear-gradient(#3e5a69,#142431 35%,#07111c 70%,#445d65);clip-path:polygon(2% 0,98% 0,100% 50%,98% 100%,2% 100%,0 50%);box-shadow:0 2px 0 #a9d5ce;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .battle-moves,.game-ui.arcade-ui.impact-ui .hotbar-rail .command-utility{display:contents;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot{position:relative;display:grid;place-items:center;align-content:center;gap:0;width:100%;min-width:44px;min-height:44px;height:auto;max-height:72px;aspect-ratio:1;padding:0;overflow:visible;border:1px solid #708d99;border-radius:50%;background:radial-gradient(circle at 40% 25%,#44606c,#132b38 50%,#081522 72%);box-shadow:inset 0 0 0 3px #08131d,inset 0 0 0 4px #8ab7bf66,0 3px 8px #0009;color:#d8f4f5;filter:none;transform:none;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot[data-type=defense]{background:radial-gradient(circle at 40% 25%,#4d436a,#232439 50%,#101a2a 72%);border-color:#a28dbd;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot[data-key=epic]{border-color:#dbb56e;background:radial-gradient(circle,#6a4c50,#2d2240 55%,#141b2c 73%);}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot[data-key=recharge]{border-color:#6ab6c0;background:radial-gradient(circle,#295d69,#142e3e 55%,#081d2b 73%);}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .ability-art{width:40px;height:40px;background:none;color:#ffe4a8;filter:drop-shadow(0 2px 2px #000);}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot[data-type=defense] .ability-art{color:#e4c2ff;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .game-icon{width:34px;height:34px;stroke-width:2;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot>strong{position:absolute;top:calc(100% + 5px);left:-3px;right:-3px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:26px;font:800 10px/12px var(--font-hud);letter-spacing:-.2px;text-align:center;color:#e0eef0;overflow-wrap:normal;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot kbd{position:absolute;left:1px;top:0;z-index:2;min-width:15px;height:16px;padding:0 2px;line-height:15px;border:1px solid #819ea9;border-radius:2px;background:#101d29;color:#f1f9e5;font-size:10px;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .cost-badge{position:absolute;bottom:0;left:50%;transform:translateX(-50%);z-index:2;max-width:120%;padding:1px 4px;white-space:nowrap;font-size:9px;line-height:12px;border:1px solid #567381;background:#091621;border-radius:2px;color:#c9edf3;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .ability-check{display:none;}
.impact-ui .slot-sweep{position:absolute;inset:4px;border-radius:50%;pointer-events:none;background:conic-gradient(#060f1ce6 0 var(--cooldown-fill),transparent var(--cooldown-fill) 100%);z-index:1;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .cooldown-mark{position:absolute;inset:12px;display:grid;place-content:center;border:0;border-radius:50%;padding:0;background:#091625d9;z-index:2;font:bold 18px/1 var(--font-hud);color:#e4eefa;}.impact-ui .hotbar-rail .cooldown-mark small{font-size:7px;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot:disabled:not(.selected){opacity:.6;filter:saturate(.45);}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot.selected{opacity:1;border-color:#d8ff91;background:radial-gradient(circle,#40684e,#142c31 70%);box-shadow:inset 0 0 0 3px #08131d,inset 0 0 0 4px #d9ff93,0 0 14px #b3ef7944;}
.impact-ui .hotbar-rail .hotbar-slot.selected::after{content:'✓';position:absolute;right:0;top:0;z-index:3;color:#122322;background:#d9ff93;border-radius:50%;font:bold 12px/16px system-ui;width:16px;height:16px;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot:hover:not(:disabled){border-color:#eaffb3;background:radial-gradient(circle,#52757d,#183242 70%);box-shadow:inset 0 0 0 3px #08131d,inset 0 0 0 4px #dfffa780,0 0 16px #9be7dc40;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot:focus-visible{outline:3px solid #e0ff94;outline-offset:3px;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .ability-utility>small{position:absolute;bottom:1px;left:0;right:0;font-size:8px;z-index:2;color:#ddf2f2;}
.game-ui.arcade-ui.impact-ui .hotbar-rail .epic-ring{height:38px;width:38px;border:0;box-shadow:none;}
.game-ui.arcade-ui.impact-ui .combat-dock .command-readout{max-width:640px;margin:0 auto;max-height:28px;min-height:24px;padding-left:8px;border-left:2px solid #88acb1;font-size:10px;}
/* Outcome artwork stays presentation-only; canonical winner/reason text is unchanged. */
.game-ui.arcade-ui.impact-ui .winner-decal{display:inline-block!important;margin:6px 0;padding:5px 16px;background:#e0fa95;color:#172a31;font:italic 1000 clamp(15px,2.8vw,25px)/1.1 system-ui,sans-serif;letter-spacing:1px;text-shadow:none;transform:rotate(-3deg);box-shadow:3px 3px 0 #506952;clip-path:polygon(3% 0,100% 0,97% 100%,0 100%);pointer-events:none;}
.impact-ui .winner-decal[data-outcome=draw]{background:#cae7ed;box-shadow:3px 3px 0 #406975;}
.impact-ui .fighter-label[data-outcome=defeat]{filter:saturate(.35);}.impact-ui .fighter-label[data-outcome=winner]{border-color:#defc96;}
.game-ui.arcade-ui.impact-ui .result-overlay{backdrop-filter:none;background:#030b1333;}
.game-ui.arcade-ui.impact-ui .result-overlay .result{max-width:420px;background:linear-gradient(135deg,#132c2aee,#101b2aef);}
@media(max-width:520px){
 .game-ui.arcade-ui.impact-ui .hotbar-rail{gap:4px;padding-top:12px;height:118px;align-content:start;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot{min-width:44px;min-height:44px;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .game-icon{width:26px;height:26px;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .ability-art{width:30px;height:30px;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot>strong{font-size:8px;line-height:11px;max-height:23px;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .cost-badge{font-size:7px;padding:0 2px;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .epic-ring{height:30px;width:30px;}
 .game-ui.arcade-ui.impact-ui .combat-dock .command-readout{font-size:10px;max-height:44px;}
}
@media(max-height:560px) and (min-width:521px){
 .game-ui.arcade-ui.impact-ui .hotbar-rail{height:90px;gap:6px;max-width:430px;grid-row:1/3;grid-column:2;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot{max-height:60px;min-height:44px;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot .game-icon{width:28px;height:28px;}
 .game-ui.arcade-ui.impact-ui .hotbar-rail .hotbar-slot>strong{font-size:9px;line-height:11px;}
 .game-ui.arcade-ui.impact-ui .combat-dock .command-readout{max-width:100%;width:100%;}
 .game-ui.arcade-ui.impact-ui .winner-decal{font-size:15px;padding:3px 10px;}
}
@media(prefers-reduced-motion:reduce){.impact-ui .winner-decal{transform:none;}.impact-ui .hotbar-slot{transition:none!important;}.impact-ui .hotbar-rail .hotbar-slot.selected{box-shadow:inset 0 0 0 3px #d9ff93;}}

/* Combat clarity candidate: inspection only; no battlefield layout change. */
.game-ui #game-panel[data-panel="move-inspection"]{overflow-y:auto;}
.game-ui #game-panel[data-panel="move-inspection"] .icon-button{min-width:44px;min-height:44px;}
#inspection-body>p,.first-battle-rules p{font-size:14px;line-height:1.6;}
#inspection-body .move-availability{color:#edf3ed;font-size:14px;overflow-wrap:anywhere;}
#inspection-status{border-left:3px solid #37d8ff;padding-left:10px;}
@media(max-width:520px){#inspection-body .move-inspection{grid-template-columns:minmax(0,1fr);}}


/* 2026-09-19 bounded upgrade: persistent targets and private/guided panels. */
@media(max-width:760px), (max-height:560px) and (min-width:521px){
 .game-ui .brand,.game-ui .guide-toggle,.game-ui #sound,.game-ui #fullscreen{min-height:44px}
 .game-ui .guide-toggle,.game-ui #fullscreen{min-width:44px}
}
.practice-guide,.privacy-preview{border:1px solid rgba(55,216,255,.45);background:linear-gradient(135deg,rgba(8,22,29,.97),rgba(18,33,42,.95));padding:16px;border-radius:14px}
.practice-guide{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px}.practice-guide h3{margin:.2rem 0}.practice-guide p{max-width:64ch}.privacy-preview{max-width:760px;margin:24px auto}
@media(max-width:620px){.practice-guide{align-items:stretch;flex-direction:column}.practice-guide .actions button{min-height:44px}}

/* Arena V1 productization: first-run, moderation, and revocable spectator controls. */
.first-run-prompt{position:absolute;z-index:6;top:72px;left:50%;width:min(760px,calc(100% - 32px));padding:14px 16px;border:1px solid rgba(214,255,77,.48);border-radius:14px;background:linear-gradient(120deg,rgba(7,26,18,.97),rgba(9,18,29,.97));transform:translateX(-50%);box-shadow:0 18px 50px rgba(0,0,0,.42);display:flex;align-items:center;justify-content:space-between;gap:18px}.first-run-prompt strong,.first-run-prompt small{display:block}.first-run-prompt strong{margin:.25rem 0;color:#f3ffe5}.first-run-prompt small{color:#a6b6ad}
.privacy-summary small:last-child{color:#8fa59a}.spectator-access{position:relative;z-index:4;margin:10px 0;padding:13px;border-color:rgba(177,132,255,.42);background:linear-gradient(135deg,rgba(22,13,35,.96),rgba(8,22,29,.96));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;align-items:center}.spectator-access h3{margin:.2rem 0}.spectator-access p{margin:.2rem 0;color:#a9adb8}.spectator-share,.capability-list{grid-column:1/-1}.spectator-share{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.spectator-share label{min-width:0;color:#c9b8ef;font-size:.72rem}.spectator-share input{display:block;width:100%;margin-top:5px;padding:9px;border:1px solid rgba(177,132,255,.35);border-radius:8px;background:#05070a;color:#e5dcf7}.capability-list{display:grid;gap:6px}.capability-list>div{display:grid;grid-template-columns:minmax(90px,.5fr) minmax(140px,1fr) auto;gap:8px;align-items:center;padding:7px;border:1px solid rgba(177,132,255,.18);border-radius:8px}.capability-list code{color:#d7c4ff}.report-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.report-options button{min-height:44px}
@media(max-width:700px){.first-run-prompt{top:64px;align-items:stretch;flex-direction:column}.spectator-access{grid-template-columns:1fr}.spectator-access .actions{justify-content:flex-start}.spectator-share{grid-template-columns:1fr}.capability-list>div{grid-template-columns:1fr auto}.capability-list>div span{grid-column:1/-1}.report-options{grid-template-columns:1fr}}

/* Acceptance repair: the three portrait section tabs were rendered at 32px on
   a 390px viewport. Reserve the extra row height instead of clipping them. */
@media(max-width:520px){
 .game-ui:not(.in-battle){--shell-header:98px}
 .game-ui:not(.in-battle) .game-header{height:98px;min-height:98px}
 .game-ui:not(.in-battle) nav button{min-height:44px}
}
@supports(padding:max(0px)){
 @media(max-width:520px){.game-ui:not(.in-battle) .game-header{height:calc(var(--shell-header) + env(safe-area-inset-top));min-height:calc(var(--shell-header) + env(safe-area-inset-top))}}
}
