@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,600;1,600&display=swap";@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}:root,:host{--font-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.flex{display:flex}.grid{display:grid}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}*{box-sizing:border-box;margin:0;padding:0}:root{--font-display:"Lora","Times New Roman",serif;--font-serif:"Lora","Times New Roman",serif;--font-body:"Inter","Helvetica Neue",Arial,sans-serif;--font-mono:"IBM Plex Mono","Fira Code","JetBrains Mono",monospace;--color-bg:#f6f7f8;--color-surface:#fff;--color-surface-warm:#d6d2c4;--color-ink:#0f0f0f;--color-ink-muted:#3f3f3f;--color-accent:#fdda24;--color-accent-strong:#002e5d;--color-highlight:#b7ace8;--color-teal:#00a7b5;--color-border:#0f0f0f1f;--color-success:#00a7b5;--color-warning:#fdda24;--color-error:#c8463b;--color-info:#002e5d;--radius-lg:28px;--radius-md:18px;--radius-sm:12px;--shadow-soft:0 24px 54px #00000014;--shadow-tight:0 10px 24px #00000014}html{color:var(--color-ink);font-family:var(--font-body);background:var(--color-bg)}body{font-family:var(--font-body);font-feature-settings:"rlig" 1,"calt" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(1200px circle at 15% -10%,#fdda2433,transparent 65%),radial-gradient(1000px circle at 85% 5%,#b7ace833,transparent 70%),var(--color-bg);min-height:100vh;color:var(--color-ink);line-height:1.6}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.015em;font-weight:600}a{color:var(--color-ink);text-decoration:none}a:hover{color:var(--color-accent-strong)}::-moz-selection{background:var(--color-accent);color:var(--color-ink)}::selection{background:var(--color-accent);color:var(--color-ink)}button{border-radius:var(--radius-sm);font-weight:600;font-family:var(--font-body);cursor:pointer;border:1px solid var(--color-ink);background:var(--color-accent);color:var(--color-ink);padding:.75rem 1.6rem;font-size:.875rem;transition:transform .2s,box-shadow .2s,background .2s}button:hover{box-shadow:var(--shadow-tight);transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{color:var(--color-ink);border-color:var(--color-ink);background:0 0}input,textarea,select{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-ink);background:#ffffffe6;padding:.75rem 1rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus,select:focus{border-color:var(--color-ink);outline:none;box-shadow:0 0 0 3px #fdda2459}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-soft);padding:1.8rem}.notice{border-radius:var(--radius-md);border:1px solid var(--color-border);background:#ffffffe6;padding:1rem 1.25rem;font-weight:600}.notice.error{color:var(--color-error)}.notice.success{color:var(--color-success)}.notice.info{color:var(--color-info)}.gradient-text{background:linear-gradient(120deg,var(--color-accent),var(--color-teal));color:#0000;-webkit-background-clip:text;background-clip:text}.home-page{background:#141414;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.home-bg-glow{filter:blur(140px);opacity:.18;pointer-events:none;border-radius:50%;animation:18s ease-in-out infinite home-float;position:absolute}.home-bg-glow-1{background:radial-gradient(circle,#dc262680,#0000 70%);width:500px;height:500px;top:-15%;left:-8%}.home-bg-glow-2{background:radial-gradient(circle,#dc26264d,#0000 70%);width:400px;height:400px;animation-delay:-9s;bottom:-20%;right:-5%}.home-navigate-overlay{z-index:50;color:#ccc;letter-spacing:.06em;text-transform:uppercase;background:#0a0e17;flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.9rem;font-weight:600;display:flex;position:absolute;inset:0}.home-content{z-index:1;justify-content:center;align-items:center;gap:6rem;width:100%;max-width:1100px;padding:2rem;display:flex;position:relative}.home-logo{width:clamp(260px,32vw,480px);animation:.8s cubic-bezier(.16,1,.3,1) both home-fade-in-left}.home-buttons{flex-direction:column;gap:.75rem;display:flex}.mil-btn{color:#e5e5e5;min-width:260px;font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#232323;border:1px solid #ffffff14;border-left:3px solid #dc2626;border-radius:3px;flex-direction:column;align-items:flex-start;gap:.15rem;padding:1rem 1.6rem 1rem 2rem;font-size:.85rem;font-weight:700;transition:background .2s,border-color .2s,box-shadow .2s,transform .15s;animation:.7s cubic-bezier(.16,1,.3,1) both home-fade-in-right;display:flex;position:relative}.mil-btn:hover{background:#2c2c2c;border-left-color:#ef4444;transform:translate(2px);box-shadow:0 0 20px #dc26261a,inset 0 0 30px #dc262608}.mil-btn:active{background:#1e1e1e;transform:translate(0)}.mil-btn-sub{letter-spacing:.04em;text-transform:none;color:#888;font-size:.65rem;font-weight:400}.mil-btn-delay-1{animation-delay:.15s}.mil-btn-delay-2{animation-delay:.3s}.mil-btn-delay-3{animation-delay:.45s}.home-load-row{align-items:stretch;gap:.5rem;animation:.4s cubic-bezier(.16,1,.3,1) both home-fade-in-right;display:flex}.home-load-input{color:#e5e5e5;font-size:.85rem;font-family:var(--font-mono,monospace);background:#1e1e1e;border:1px solid #ffffff1f;border-left:3px solid #dc2626;border-radius:3px;outline:none;flex:1;min-width:0;padding:.7rem .9rem;transition:border-color .2s,box-shadow .2s}.home-load-input::-moz-placeholder{color:#ffffff4d;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.home-load-input::placeholder{color:#ffffff4d;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.home-load-input:focus{border-color:#dc262666;box-shadow:0 0 0 2px #dc26261a}.home-load-go{color:#fff;font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#dc2626;border:1px solid #ffffff14;border-radius:3px;padding:.7rem 1.2rem;font-size:.8rem;font-weight:700;transition:background .2s}.home-load-go:hover{background:#ef4444}.home-load-go:active{background:#b91c1c}.game-page{background:#0a0e17;width:100vw;height:100vh;position:relative;overflow:hidden}.game-3d{width:100%;height:100%;position:absolute;inset:0}.game-loading-overlay{z-index:10;color:#ccc;letter-spacing:.06em;text-transform:uppercase;background:#0a0e17;flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.9rem;font-weight:600;display:flex;position:absolute;inset:0}.game-loading-spinner{border:3px solid #ffffff1a;border-top-color:#dc2626;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite hud-spin}.game-hud-top{z-index:20;pointer-events:none;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem;display:flex;position:absolute;top:0;left:0;right:0}.game-hud-top>*{pointer-events:auto}.game-hud-session{font-family:var(--font-mono,monospace);color:#ffffff59;letter-spacing:.06em;text-transform:uppercase;background:#0006;border:1px solid #ffffff0f;border-radius:2px;padding:.3rem .6rem;font-size:.7rem;font-weight:500}.game-hud-switch{color:#ffffffb3;font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#00000080;border:1px solid #ffffff1a;border-radius:2px;padding:.45rem .9rem;font-size:.7rem;font-weight:700;transition:background .2s,color .2s,border-color .2s}.game-hud-switch:hover{color:#fff;background:#dc262633;border-color:#dc262666}.game-hud-switch:disabled{opacity:.4;cursor:not-allowed}.game-hud-bottom{z-index:20;pointer-events:auto;max-width:380px;padding:1.25rem;position:absolute;bottom:0;left:0}.hud-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#d4d4d4;background:#0a0e17d9;border:1px solid #ffffff14;border-left:3px solid #dc2626;border-radius:3px;flex-direction:column;gap:.6rem;padding:1rem 1.1rem;font-size:.8rem;display:flex}.hud-panel-title{letter-spacing:.12em;text-transform:uppercase;color:#dc2626;font-size:.65rem;font-weight:700}.hud-panel-status{color:#fff9;font-size:.78rem;line-height:1.4}.hud-panel-status strong{color:#fff;font-weight:600}.hud-panel-scores{font-family:var(--font-mono,monospace);color:#ffffff80;gap:.75rem;font-size:.7rem;display:flex}.hud-panel-scores .active{color:#dc2626;font-weight:600}.hud-panel-scores .active .hud-panel-address{color:#dc2626bf}.hud-panel-address{color:#fff6;cursor:default;margin-top:.15rem;font-size:.6rem}.hud-input{color:#e5e5e5;font-size:.78rem;font-family:var(--font-mono,monospace);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:2px;outline:none;width:100%;padding:.45rem .6rem;transition:border-color .2s}.hud-input:focus{border-color:#dc262666}.hud-btn{color:#fff;font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:#dc2626;border:1px solid #ffffff1a;border-radius:2px;padding:.55rem 1rem;font-size:.75rem;font-weight:700;transition:background .15s}.hud-btn:hover{background:#ef4444}.hud-btn:active{background:#b91c1c}.hud-btn:disabled{opacity:.4;cursor:not-allowed}.hud-btn-secondary{background:#ffffff14;border-color:#ffffff1f}.hud-btn-secondary:hover{background:#ffffff24}.hud-legend{border-top:1px solid #ffffff14;padding-top:.5rem}.hud-legend-title{letter-spacing:.1em;text-transform:uppercase;color:#ffffff59;margin-bottom:.35rem;font-size:.6rem;font-weight:700}.hud-legend-items{color:#ffffff8c;flex-wrap:wrap;gap:.5rem .75rem;font-size:.65rem;display:flex}.hud-legend-items>span{align-items:center;gap:.3rem;display:flex}.hud-legend-swatch{border:1px solid #ffffff26;border-radius:2px;width:10px;height:10px;display:inline-block}.game-over-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:30;color:#e5e5e5;background:#0a0e17e6;flex-direction:column;justify-content:center;align-items:center;gap:1rem;animation:.4s both hud-fade-in;display:flex;position:absolute;inset:0}.game-over-overlay h3{font-size:2rem;font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:#fff;font-weight:800}.game-over-overlay p{color:#fff9;font-size:.85rem;font-family:var(--font-mono,monospace)}.toast-container{z-index:100;pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#d4d4d4;background:#0a0e17eb;border:1px solid #ffffff14;border-left:3px solid #dc2626;border-radius:3px;max-width:500px;padding:.7rem 1.2rem;font-size:.8rem;font-weight:500;animation:.35s cubic-bezier(.16,1,.3,1) both toast-in}.toast a{color:#ef4444;font-weight:600;text-decoration:underline}.toast a:hover{color:#f87171}.toast-error{color:#fca5a5;border-left-color:#ef4444}.toast-success{border-left-color:#22c55e}.toast-exit{animation:.3s both toast-out}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}@keyframes hud-spin{to{transform:rotate(360deg)}}@keyframes hud-fade-in{0%{opacity:0}to{opacity:1}}@keyframes home-fade-in-left{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes home-fade-in-right{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes home-float{0%,to{transform:translate(0)scale(1)}50%{transform:translate(20px,15px)scale(1.05)}}@media(max-width:768px){.home-content{text-align:center;flex-direction:column;gap:3rem}.home-logo{width:clamp(200px,70vw,360px);animation-name:home-fade-in-up}.mil-btn{min-width:220px;animation-name:home-fade-in-up}.home-load-row{animation-name:home-fade-in-up}.game-hud-bottom{max-width:100%;padding:.75rem}@keyframes home-fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
