@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;700;800&family=Russo+One&display=swap";:root{--neon-cyan:#00f3ff;--neon-gold:#ffc700;--neon-green:#0f8;--neon-crimson:#f36;--bg-deep:#080a0f;--surface-dark:#121722d9;--surface-card:#0e121cbf;--border-subtle:#ffffff1a;--border-glow:#00f3ff59}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}body{background-color:var(--bg-deep);color:#f1f5f9;width:100vw;height:100vh;font-family:Plus Jakarta Sans,sans-serif;overflow:hidden}.gym-arena{background:radial-gradient(at 50% 20%,#00f3ff0f 0%,#0000 60%),linear-gradient(#07090e 0%,#0d121c 100%);flex-direction:column;width:100vw;height:100vh;display:flex;position:relative}.scanlines{pointer-events:none;z-index:40;background:repeating-linear-gradient(0deg,#0000001f 0 1px,#0000 1px 2px);width:100%;height:100%;display:none;position:absolute;top:0;left:0}.arcade-header{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#080a0ff2 0%,#080a0f00 100%);justify-content:space-between;align-items:center;width:100%;padding:16px 28px;display:flex;position:absolute;top:0;left:0}.brand-badge{align-items:center;gap:12px;display:flex}.brand-title{letter-spacing:1.5px;background:linear-gradient(135deg, #fff 0%, var(--neon-cyan) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-family:Russo One,sans-serif;font-size:22px}.brand-pill{letter-spacing:2px;color:var(--neon-cyan);background:#00f3ff1f;border:1px solid #00f3ff4d;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:800}.mode-tabs{border:1px solid var(--border-subtle);background:#0e121cbf;border-radius:30px;gap:4px;padding:4px;display:flex;box-shadow:0 4px 20px #0006}.tab-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:24px;align-items:center;gap:8px;padding:8px 18px;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:700;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex}.tab-btn:hover{color:#fff}.tab-btn.active{color:var(--neon-cyan);background:linear-gradient(135deg,#00f3ff33 0%,#00f3ff14 100%);border:1px solid #00f3ff66;box-shadow:0 0 16px #00f3ff40}.header-actions{gap:8px;display:flex}.action-btn{border:1px solid var(--border-subtle);color:#cbd5e1;cursor:pointer;background:#141a2899;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:700;transition:all .2s;display:flex}.action-btn:hover{color:#fff;border-color:var(--neon-cyan);background:#00f3ff26}.action-btn.active-pill{color:var(--neon-cyan);background:#00f3ff38;border-color:#00f3ff99;box-shadow:0 0 14px #00f3ff59}.viewport-stage{flex:1;width:100%;height:100%;position:relative;overflow:hidden}#webcam-video{display:none}#game-canvas{object-fit:cover;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}#boxer-3d-canvas{display:none!important}.instruction-banner{color:#e2e8f0;z-index:35;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.5px;background:#0e121cd9;border:1px solid #00f3ff40;border-radius:20px;padding:6px 20px;font-size:12px;font-weight:700;position:absolute;top:76px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0000004d}.form-checker-panel{background:var(--surface-card);border:1px solid var(--border-glow);z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:14px;width:310px;padding:18px;position:absolute;bottom:28px;right:28px;box-shadow:0 8px 32px #00000080}.panel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel-title{letter-spacing:1px;color:#fff;font-family:Russo One,sans-serif;font-size:13px}.form-score-meter{background:#00000040;border-radius:10px;align-items:center;gap:14px;margin-bottom:14px;padding:10px 14px;display:flex}.score-badge{color:var(--neon-green);text-shadow:0 0 12px #00ff884d;font-family:Russo One,sans-serif;font-size:32px}.score-details{flex:1}.meter-bar-container{background:#ffffff14;border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.meter-fill{background:linear-gradient(90deg, var(--neon-cyan), var(--neon-green));width:100%;height:100%;transition:width .3s}.status-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.status-card{border-left:3px solid var(--neon-green);background:#00000040;border-radius:8px;padding:10px 12px}.status-card.warning{border-left-color:var(--neon-crimson)}.status-label{color:#64748b;letter-spacing:.5px;text-transform:uppercase;font-size:10px;font-weight:800}.status-val{color:#fff;margin-top:2px;font-family:Russo One,sans-serif;font-size:13px}.punch-stats-panel{background:var(--surface-card);border:1px solid var(--border-subtle);z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:14px;width:260px;padding:16px 18px;position:absolute;bottom:28px;left:28px;box-shadow:0 8px 32px #00000080}.stat-row{justify-content:space-between;margin-bottom:7px;font-size:12px;font-weight:700;display:flex}.stat-name{color:#94a3b8}.stat-num{color:var(--neon-gold);font-family:Russo One,sans-serif}.splash-modal{opacity:0;pointer-events:none;text-align:center;z-index:60;transition:all .25s cubic-bezier(.16,1,.3,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.85)}.splash-modal.active{opacity:1;transform:translate(-50%,-50%)scale(1)}.splash-main-text{letter-spacing:2px;color:#fff;text-shadow:0 4px 24px #000c,0 0 30px #00f3ff80;font-family:Russo One,sans-serif;font-size:68px}.splash-sub-text{color:var(--neon-cyan);letter-spacing:3px;margin-top:8px;font-size:18px;font-weight:800}.camera-gate{z-index:100;background:#080a0ff5;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:24px;display:flex;position:absolute;top:0;left:0}.gate-card{border:1px solid var(--border-glow);text-align:center;background:#121722f2;border-radius:20px;max-width:480px;padding:40px;box-shadow:0 20px 50px #0009,0 0 30px #00f3ff26}.gate-title{letter-spacing:1.5px;color:#fff;font-family:Russo One,sans-serif;font-size:32px}.gate-subtitle{color:var(--neon-cyan);letter-spacing:2px;margin-top:6px;font-size:13px;font-weight:800}.gate-desc{color:#94a3b8;margin:22px 0 30px;font-size:14px;line-height:1.6}.gate-btn{background:linear-gradient(135deg, var(--neon-cyan) 0%, #09c 100%);color:#000;letter-spacing:1px;cursor:pointer;border:none;border-radius:12px;width:100%;padding:16px 28px;font-family:Russo One,sans-serif;font-size:16px;transition:all .25s;box-shadow:0 4px 20px #00f3ff59}.gate-btn:hover{transform:translateY(-2px);box-shadow:0 6px 28px #00f3ff8c}.match-over-modal{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:95;background:#06080ee0;justify-content:center;align-items:center;width:100%;height:100%;animation:.3s ease-out fadeInModal;display:flex;position:absolute;top:0;left:0}@keyframes fadeInModal{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.match-card{border:2px solid var(--border-glow);text-align:center;background:linear-gradient(#121828 0%,#0a0d18 100%);border-radius:20px;width:90%;max-width:460px;padding:36px 32px;box-shadow:0 24px 60px #000c,0 0 40px #00f3ff33}.match-badge{color:#fff;letter-spacing:2px;background:#f05;border-radius:20px;margin-bottom:12px;padding:5px 16px;font-family:Russo One,sans-serif;font-size:13px;display:inline-block;box-shadow:0 0 15px #f059}.match-title{letter-spacing:2px;color:#fff;text-shadow:0 0 24px var(--neon-cyan);font-family:Russo One,sans-serif;font-size:42px}.match-subtitle{color:#94a3b8;letter-spacing:1.5px;margin-top:6px;font-size:13px;font-weight:700}.match-stats-row{background:#121a2a99;border:1px solid #ffffff14;border-radius:12px;justify-content:space-around;margin:26px 0 30px;padding:16px 10px;display:flex}.match-stat{flex-direction:column;align-items:center;display:flex}.m-stat-val{color:var(--neon-gold);font-family:Russo One,sans-serif;font-size:24px}.m-stat-label{color:#64748b;letter-spacing:.5px;margin-top:4px;font-size:10px;font-weight:800}.retry-btn{color:#060912;letter-spacing:1.5px;cursor:pointer;background:linear-gradient(135deg,#00f3ff 0%,#08f 100%);border:none;border-radius:14px;width:100%;padding:16px 24px;font-family:Russo One,sans-serif;font-size:17px;transition:all .25s;box-shadow:0 4px 25px #00f3ff66}.retry-btn:hover{background:linear-gradient(135deg,#33f6ff 0%,#0af 100%);transform:translateY(-2px);box-shadow:0 8px 35px #00f3ffa6}
