@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";:root{color-scheme:dark;font-family:"Press Start 2P",monospace;--ink: #f2e9d4;--ink-muted: rgba(242, 233, 212, .7);--hud-bg: rgba(17, 23, 20, .8);--hud-strong: rgba(13, 18, 16, .9);--hud-border: rgba(255, 255, 255, .08);--accent: #d2ac73;--accent-strong: #82b189;--shadow: 0 4px 24px rgba(0, 0, 0, .5)}*{box-sizing:border-box}html,body,#root{width:100%;height:100%}body{margin:0;overflow:hidden;color:var(--ink);background:#0f1510}button{font:inherit}.game-root{position:fixed;top:0;right:0;bottom:0;left:0}.game-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.game-viewport canvas{display:block;width:100%!important;height:100%!important;cursor:crosshair}.game-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.wallet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center}.wallet-overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wallet-overlay-card{position:relative;display:grid;gap:20px;padding:32px 28px;border:1px solid rgba(180,140,90,.35);border-radius:6px;background:linear-gradient(180deg,#101412fa,#0a0e0cf5);box-shadow:0 8px 48px #0009;text-align:center;max-width:360px;width:calc(100vw - 48px)}.wallet-overlay-title{margin:0;font-size:1.15rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(180deg,#f0d89c,#c29a4a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.wallet-overlay-text{margin:0;color:var(--ink-muted);font-size:.88rem;line-height:1.45}.overlay-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--hud-border);border-radius:14px;background:var(--hud-bg);color:var(--ink);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);cursor:pointer;font-size:.84rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overlay-button:hover{background:#1d2520e6;transform:translateY(-1px)}.overlay-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.overlay-button-wide{width:100%}.overlay-button-active{border-color:#d2ac7370;background:#403422d9}.btn3d{--btn3d-front-bg: hsl(42deg 30% 55%);--btn3d-text: #f0e4c8;--btn3d-font-size: .84rem;--btn3d-padding: 8px 18px;--btn3d-radius: 12px;--btn3d-front-offset: -4px;--btn3d-shadow-offset: 2px;--btn3d-edge-from: hsl(40deg 25% 29%);--btn3d-edge-mid: hsl(112, 28%, 41%);--btn3d-edge-to: hsl(40deg 25% 29%);position:relative;border:none;background:transparent;padding:0;cursor:pointer;outline-offset:4px;transition:filter .25s;-webkit-user-select:none;user-select:none;touch-action:manipulation;font-family:inherit}.btn3d-wide{width:100%}.btn3d:disabled{cursor:not-allowed;filter:grayscale(35%) brightness(70%)}.btn3d:disabled:active .btn3d-front{transform:translateY(var(--btn3d-front-offset, -4px))}.btn3d-shadow{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:var(--btn3d-radius);background:#00000040;will-change:transform;transform:translateY(var(--btn3d-shadow-offset, 2px));transition:transform .6s cubic-bezier(.3,.7,.4,1);pointer-events:none}.btn3d-edge{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:var(--btn3d-radius);background:linear-gradient(to left,var(--btn3d-edge-from) 0%,var(--btn3d-edge-mid) 8%,var(--btn3d-edge-mid) 92%,var(--btn3d-edge-to) 100%);pointer-events:none}.btn3d-front{display:block;position:relative;padding:var(--btn3d-padding);border-radius:var(--btn3d-radius);font-size:var(--btn3d-font-size);color:var(--btn3d-text);background:var(--btn3d-front-bg);will-change:transform;transform:translateY(var(--btn3d-front-offset, -4px));transition:transform .6s cubic-bezier(.3,.7,.4,1);pointer-events:none}.btn3d:hover{filter:brightness(110%)}.btn3d:hover .btn3d-front{transform:translateY(calc(var(--btn3d-front-offset, -4px) - 2px));transition:transform .25s cubic-bezier(.3,.7,.4,1.5)}.btn3d:active .btn3d-front{transform:translateY(calc(var(--btn3d-front-offset, -4px) + 2px));transition:transform 34ms}.btn3d:hover .btn3d-shadow{transform:translateY(calc(var(--btn3d-shadow-offset, 2px) + 2px));transition:transform .25s cubic-bezier(.3,.7,.4,1.5)}.btn3d:active .btn3d-shadow{transform:translateY(calc(var(--btn3d-shadow-offset, 2px) - 1px));transition:transform 34ms}.btn3d:focus:not(:focus-visible){outline:none}.btn3d-icon{--btn3d-padding: 12px 10px;--btn3d-radius: 8px;--btn3d-font-size: .75rem;--btn3d-front-offset: -2px;--btn3d-shadow-offset: 1px}.minimap-anchor{position:absolute;top:18px;right:18px;pointer-events:auto;z-index:2}.minimap-container{border:2px solid rgba(180,140,90,.5);overflow:hidden;box-shadow:0 0 0 3px #140f0ab3,0 0 20px #00000080,inset 0 0 10px #0000004d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.minimap-canvas{display:block}.marketplace-button-wrapper{margin-top:8px}.game-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.game-modal-panel{width:min(580px,calc(100vw - 24px));max-height:calc(100vh - 48px);overflow-y:auto;overflow-x:hidden;display:grid;gap:16px;padding:20px 22px;border:1px solid var(--hud-border);border-radius:14px;background:var(--hud-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.game-modal-panel>*{min-width:0}.game-menu-actions{display:grid;gap:10px;width:100%}.game-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.game-modal-title{margin:0;font-size:1.08rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.game-modal-body{display:grid;gap:16px}.bottom-hud-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);padding:10px 16px;z-index:6}.bottom-hud-toggle-row{display:flex;gap:8px}.session-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:flex;align-items:center;justify-content:center;background:#0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.session-modal-card{display:grid;gap:24px;padding:28px 24px;border:1px solid var(--hud-border);border-radius:16px;background:linear-gradient(180deg,#141a17f7,#0a0e0cf0);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);max-width:400px;width:calc(100vw - 48px);text-align:center}.session-modal-title{margin:0;font-size:1.12rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(180deg,#f0d89c,#c29a4a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.session-modal-text{margin:0;color:var(--ink-muted);font-size:.9rem;line-height:1.5}.session-modal-buttons{display:grid;gap:10px}.hud-left-rail{position:absolute;top:18px;left:18px;width:min(260px,calc(100vw - 36px));display:grid;gap:10px;z-index:2}.hud-character-machine{display:grid;grid-template-columns:auto 1fr;gap:8px 10px;align-items:center;padding:10px 14px;border:1px solid var(--hud-border);border-radius:12px;background:linear-gradient(180deg,#141a17f7,#0c110ff0);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);pointer-events:auto}.hud-status-detail-strip{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:10px 14px;border:1px solid var(--hud-border);border-radius:12px;background:var(--hud-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);pointer-events:auto}.hud-status-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.hud-status-chip{display:flex;gap:6px;align-items:center;padding:8px 10px;border:1px solid var(--hud-border);border-radius:10px;background:var(--hud-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow);pointer-events:auto}.hud-skill-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.hud-skill-card{display:flex;flex-direction:column;gap:4px;padding:8px 12px;border:1px solid var(--hud-border);border-radius:10px;background:var(--hud-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow);pointer-events:auto}.hud-character-heading{display:grid;gap:2px}.hud-character-note{margin:4px 0 0;color:var(--ink-muted);font-size:.8rem;line-height:1.4}.hud-chip-label{margin:0;color:var(--ink-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.hud-status-copy{color:var(--ink-muted);font-size:.82rem;line-height:1.4}.hud-character-menu{position:absolute;width:min(260px,calc(100vw - 24px));padding:14px 16px;border:1px solid var(--hud-border);border-radius:12px;background:linear-gradient(180deg,#141a17f7,#0c110ff0);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);display:grid;gap:12px;pointer-events:auto;z-index:4}.hud-character-actions{display:grid;grid-template-columns:1fr;gap:6px}.hud-dialogue-card{position:absolute;left:18px;bottom:86px;width:min(400px,calc(100vw - 36px));padding:14px 16px;border:1px solid var(--hud-border);border-radius:12px;background:var(--hud-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);z-index:2}.hud-dialogue-speaker{margin:4px 0 0;font-size:.95rem}.hud-dialogue-lines{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.hud-dialogue-lines li{padding:8px 10px;border-radius:10px;background:#ffffff0d;color:var(--ink-muted);font-size:.86rem;line-height:1.45}.profile-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--hud-border);border-radius:12px;background:#ffffff0a}.profile-card-copy{display:grid;gap:2px}.profile-avatar-placeholder{width:52px;height:52px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff12;color:var(--ink-muted);font-size:.72rem;text-transform:uppercase;flex-shrink:0}.profile-avatar-image{width:52px;height:52px;border-radius:12px;object-fit:cover;border:1px solid var(--hud-border);flex-shrink:0}.profile-form{display:grid;gap:8px}.profile-field{display:grid;gap:4px}.profile-input{width:100%;min-height:38px;padding:0 10px;border:1px solid var(--hud-border);border-radius:10px;background:#ffffff0d;color:var(--ink);font-size:.84rem}.profile-hint{color:var(--ink-muted);font-size:.78rem;line-height:1.4}.wallet-box>div{width:100%}.system-panel{display:grid;gap:16px}.system-section{display:grid;gap:14px}.system-section-heading{display:flex;flex-direction:column;gap:2px}.system-section-heading strong{font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.system-status{display:flex;flex-direction:column;gap:6px;padding:10px 14px;border:1px solid var(--hud-border);border-radius:10px;background:#ffffff08;color:var(--ink-muted);font-size:.72rem;line-height:1.5;word-break:break-all}.system-status-online{border-color:#82b1894d;background:#82b1890f}.system-status-offline{border-color:#c846464d;background:#c846460f}.system-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 900px){.hud-left-rail{width:calc(100vw - 36px);max-width:none}.hud-status-detail-strip,.hud-status-summary-grid,.hud-skill-grid,.hud-character-actions{grid-template-columns:1fr}}@keyframes loadingPulse{0%,to{opacity:.4}50%{opacity:1}}.death-screen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483646;display:flex;align-items:center;justify-content:center;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:deathFadeIn .6s ease-out}.death-screen-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;animation:deathCardPop .5s cubic-bezier(.34,1.56,.64,1) .3s both}.death-screen-bg{display:block;width:min(50vw,400px);height:auto;object-fit:contain;pointer-events:none}.death-screen-respawn-button{font-family:"Press Start 2P",monospace;font-size:.82rem;color:#f0d090;background:linear-gradient(135deg,#5a2a2a,#3a1818);border:2px solid #a05050;border-radius:8px;padding:12px 36px;cursor:pointer;text-shadow:1px 1px 0 #000;transition:background .2s,border-color .2s,transform .1s;box-shadow:0 4px 16px #0006}.death-screen-respawn-button:hover{background:linear-gradient(135deg,#7a3a3a,#5a2828);border-color:#d08080;color:#feb;transform:scale(1.04)}.death-screen-respawn-button:active{transform:scale(.97)}@keyframes deathFadeIn{0%{opacity:0}to{opacity:1}}@keyframes deathCardPop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes deathTextPulse{0%,to{opacity:1}50%{opacity:.7}}.duel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:duelOverlayIn .25s ease-out}@keyframes duelOverlayIn{0%{opacity:0}to{opacity:1}}.duel-card{width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow-y:auto;display:flex;flex-direction:column;gap:16px;padding:22px 24px;border:2px solid rgba(255,70,70,.5);border-radius:16px;background:linear-gradient(180deg,#121815fa,#0a0f0cf7);box-shadow:0 0 50px #ff3c3c59,0 8px 40px #0000008c;animation:duelCardPop .35s cubic-bezier(.34,1.56,.64,1) .1s both}@keyframes duelCardPop{0%{opacity:0;transform:scale(.9) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.duel-header{display:flex;align-items:center;gap:14px}.duel-avatar-wrap{flex-shrink:0;width:64px;height:64px;border-radius:16px;overflow:hidden;border:2px solid rgba(255,255,255,.15);box-shadow:0 0 16px #ff3c3c4d}.duel-avatar-img{width:100%;height:100%;object-fit:cover;display:block}.duel-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#ffffff0f;color:var(--ink-muted);font-size:1.4rem;font-weight:700;text-transform:uppercase}.duel-header-info{display:flex;flex-direction:column;gap:4px;min-width:0}.duel-chip{display:inline-block;padding:2px 10px;border-radius:6px;background:#ff3c3c26;border:1px solid rgba(255,60,60,.35);color:#ff6b6b;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;width:fit-content}.duel-name{margin:0;font-size:1rem;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duel-level-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.duel-level-badge{display:inline-block;padding:2px 8px;border-radius:5px;background:#ffffff14;color:var(--ink-muted);font-size:.65rem;font-weight:700;letter-spacing:.04em}.duel-level-diff{display:inline-block;padding:2px 8px;border-radius:5px;font-size:.6rem;font-weight:700;letter-spacing:.03em}.duel-level-diff-upper{background:#ff505026;border:1px solid rgba(255,80,80,.3);color:#ff6b6b}.duel-level-diff-lower{background:#64c8641f;border:1px solid rgba(100,200,100,.25);color:#7ed87e}.duel-level-diff-even{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--ink-muted)}.duel-stats-section{display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;background:#ffffff05}.duel-stats-header{display:grid;grid-template-columns:90px 1fr 32px 1fr;padding:8px 12px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.08)}.duel-stats-col{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.duel-stats-col-challenger{color:#f88;text-align:center}.duel-stats-col-you{color:var(--accent-strong);text-align:center}.duel-stats-col-vs{text-align:center;color:#fff3}.duel-stat-row{display:grid;grid-template-columns:90px 1fr 32px 1fr;align-items:center;padding:7px 12px;border-bottom:1px solid rgba(255,255,255,.04)}.duel-stat-row:last-child{border-bottom:none}.duel-stat-label{font-size:.7rem;font-weight:700;color:var(--ink)}.duel-stat-val{font-size:.7rem;text-align:center;color:var(--ink-muted);text-transform:capitalize}.duel-stat-advantage{color:#7ed87e;font-weight:700;text-shadow:0 0 8px rgba(100,200,100,.3)}.duel-stat-disadvantage{color:#ff6b6b;font-weight:700;text-shadow:0 0 8px rgba(255,80,80,.25)}.duel-stat-vs{font-size:.55rem;text-align:center;color:#ffffff2e;font-weight:700;text-transform:uppercase}.duel-actions{display:flex;gap:12px}.duel-footer-note{margin:0;font-size:.6rem;color:var(--ink-muted);text-align:center;line-height:1.45}.chat-container{pointer-events:auto;position:fixed;bottom:80px;left:12px;z-index:1000;display:flex;flex-direction:column;align-items:flex-start}.chat-panel{width:340px;max-height:300px;display:flex;flex-direction:column;background:#0d1210eb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(210,172,115,.35);border-radius:10px;box-shadow:0 4px 24px #00000080;overflow:hidden}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#0000004d;border-bottom:1px solid rgba(210,172,115,.2)}.chat-header-title{font-family:"Press Start 2P",monospace;font-size:.65rem;color:#d2ac73;letter-spacing:.5px}.chat-messages{flex:1;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:6px;max-height:200px;scrollbar-width:thin;scrollbar-color:rgba(210,172,115,.3) transparent}.chat-messages::-webkit-scrollbar{width:5px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#d2ac734d;border-radius:3px}.chat-empty{font-family:"Press Start 2P",monospace;font-size:.55rem;color:#ffffff4d;text-align:center;padding:20px 0}.chat-message{display:flex;gap:8px;align-items:flex-start;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.03);animation:chatFadeIn .2s ease}@keyframes chatFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-message-own .chat-username{color:#8dd278}.chat-avatar-wrap{flex-shrink:0;width:24px;height:24px;border-radius:50%;overflow:hidden;border:1px solid rgba(210,172,115,.3);background:#0000004d;display:flex;align-items:center;justify-content:center}.chat-avatar-img{width:100%;height:100%;object-fit:cover}.chat-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:"Press Start 2P",monospace;font-size:.55rem;color:#d2ac73;background:#d2ac7326}.chat-avatar-hidden{display:none}.chat-message-content{flex:1;min-width:0}.chat-message-header{display:flex;align-items:baseline;gap:8px;margin-bottom:2px}.chat-username{font-family:"Press Start 2P",monospace;font-size:.55rem;font-weight:700;color:#d2ac73}.chat-timestamp{font-family:monospace;font-size:.5rem;color:#ffffff47}.chat-message-text{font-family:"Press Start 2P",monospace;font-size:.5rem;color:#ffffffc7;line-height:1.5;word-break:break-word}.chat-input-row{display:flex;gap:6px;padding:8px 12px;background:#00000040;border-top:1px solid rgba(210,172,115,.15)}.chat-input{flex:1;background:#0006;border:1px solid rgba(210,172,115,.25);border-radius:6px;padding:6px 10px;font-family:"Press Start 2P",monospace;font-size:.52rem;color:#fff;outline:none;transition:border-color .2s}.chat-input::placeholder{color:#ffffff40}.chat-input:focus{border-color:#d2ac7399}
