:root{font-family:Microsoft YaHei,system-ui,sans-serif;color:#ecede8;background:#101719;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#28332e 0,transparent 65%)}main{max-width:1120px;margin:auto;padding:30px 32px 24px}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #f6ce78;outline-offset:4px}button:disabled{cursor:default}a{color:#b9c9c3;text-decoration:none}a:hover{color:#f3d590}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:#98aaa0;margin:0 0 8px}h1{font-size:28px;margin:0;letter-spacing:3px}h1 span{font-size:14px;font-weight:400;letter-spacing:1px;color:#aebcb3;margin-left:18px}nav{display:flex;gap:24px;font-size:12px}.arena{position:relative;aspect-ratio:16/9;background:#23312e;border:1px solid #465046;box-shadow:0 16px 60px #0005;isolation:isolate}#game{position:absolute;inset:0}canvas{display:block;image-rendering:pixelated}.hud{position:absolute;inset:0;pointer-events:none;container-type:inline-size}.fighter-panel{position:absolute;top:3.4%;width:34.375%;text-shadow:0 1px 3px #000}.player-panel{left:9.375%}.target-panel{right:9.375%}.fighter-name{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5cqw;font-size:1.45cqw}.fighter-name span{font:1.15cqw ui-monospace,monospace;color:#eee5ce}.health-track{height:1.9cqw;padding:2px;background:#121b20e8;border:1px solid #b4a87c}.health-track i,.energy-track i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#b98a3c,#f5d385)}.target-panel .health-track i{background:linear-gradient(90deg,#6c9d92,#a0c9b0);margin-left:auto}.energy-track{height:.8cqw;margin-top:.65cqw;background:#101c24;border:1px solid #668f9c}.energy-track i{width:0;background:#8dcede}.meter-caption{display:block;margin-top:.5cqw;font-size:1.1cqw;color:#e3dcc6}.target-panel .meter-caption{text-align:right}.training-badge{position:absolute;left:46%;top:3%;width:8%;text-align:center;font-size:3cqw;font-weight:700;color:#ffe3a6;text-shadow:0 2px 8px #000}.training-badge span{display:block;font-size:.9cqw;letter-spacing:.2cqw;color:#cfcebd}.skill-dock{position:absolute;left:2.5%;bottom:3%;display:flex;gap:.85cqw;pointer-events:auto}.skill-card{position:relative;display:flex;align-items:center;gap:.8cqw;background:#111c20ed;color:#f7ecd5;border:1px solid #85774f;padding:.75cqw 1cqw;min-width:16cqw;text-align:left;overflow:hidden}.skill-card:not(:disabled):hover{background:#374035}.skill-card:disabled{border-color:#485149;color:#aeb5aa}.skill-card kbd{font:700 1.7cqw ui-monospace,monospace;color:#f2d38b;background:#2b332b;border:1px solid #6a735d;padding:.6cqw}.skill-card strong{display:block;font-size:1.35cqw;font-weight:500}.skill-card small{display:block;font-size:1cqw;margin-top:.4cqw;color:#c1c3b3}.skill-card>i{position:absolute;left:0;bottom:0;height:2px;background:#f3cf80;width:0}.arena-result{position:absolute;right:3%;bottom:6.8%;max-width:34%;font-size:1.25cqw;color:#f3e3b6;text-shadow:0 2px 4px #000}.pause-overlay{position:absolute;inset:0;z-index:2;background:#0a1216b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px}.pause-overlay[hidden]{display:none}.pause-overlay strong{font-size:clamp(20px,3vw,32px);letter-spacing:4px}.pause-overlay span{font-size:12px;color:#c1cabe}.pause-overlay button{background:#ebcb87;border:0;color:#202820;padding:10px 24px}.under-arena{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;color:#a9b8af;padding:14px 0 20px}.under-arena p{margin:0;line-height:2}.under-arena p>span{display:inline-block;white-space:nowrap;margin-right:4px}.under-arena kbd{font:10px ui-monospace,monospace;display:inline-block;background:#26322f;border:1px solid #46574d;padding:0 5px;border-radius:3px;margin-right:3px}.under-arena>span{color:#e3cd98;white-space:nowrap}.training-tools{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;background:#1a2421;border:1px solid #34443b;padding:20px 22px}h2{font-size:16px;font-weight:500;letter-spacing:2px;margin:0}.tool-actions{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.tool-actions button{background:#2c3830;border:1px solid #50604c;color:#e2e5d6;padding:8px 12px;font-size:12px}.tool-actions button:hover{background:#3b493a}.tool-options{flex-basis:100%;display:flex;flex-wrap:wrap;gap:22px;font-size:12px;color:#b7c4b8}.tool-options label{display:flex;align-items:center;gap:6px;cursor:pointer}input{accent-color:#d2b66d}.status{font-size:12px;line-height:1.7;color:#d8c397;min-height:20px;margin:15px 0 10px}footer{font-size:11px;line-height:1.9;color:#84978c;border-top:1px solid #2d3b32;padding-top:12px}@media(max-width:650px){main{padding:18px 12px}.page-header{align-items:flex-start;gap:14px;margin-bottom:18px}h1{font-size:22px}h1 span{display:block;margin:8px 0 0;font-size:12px}nav{flex-direction:column;gap:10px;font-size:11px}.training-tools{padding:16px;gap:16px}.tool-actions{margin-left:0}.under-arena{align-items:flex-start;padding-bottom:14px;gap:6px}.under-arena p{max-width:80%}.under-arena>span{font-size:10px}.tool-options{gap:12px}}@media(max-width:650px){.arena{margin-bottom:82px}.skill-dock{top:calc(100% + 12px);bottom:auto;left:0;right:0;gap:6px}.skill-card{flex:1;min-width:0;min-height:60px;gap:6px;padding:8px 6px}.skill-card span{min-width:0}.skill-card kbd{font-size:12px;padding:5px}.skill-card strong{font-size:10px}.skill-card small{font-size:9px;line-height:1.5;margin-top:3px}.fighter-name{font-size:9px}.fighter-name span{font-size:7px}.health-track{height:7px;padding:1px}.energy-track{height:4px}.meter-caption{font-size:7px}.training-badge{font-size:16px}.training-badge span{font-size:6px}.arena-result{font-size:8px}}.energy-track.energy-full{border-color:#f2cf80;box-shadow:0 0 9px #e9bd5d66}.energy-track.energy-full>i{background:linear-gradient(90deg,#b68734,#ffdf8e)}.skill-card.energy-full{border-color:#e9c77c;box-shadow:inset 0 0 14px #dbb05722}
