@import url(https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;900&family=Rajdhani:wght@400;500;600;700&family=Fira+Code:wght@400;500;600&display=swap);.room-lobby{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #0f8;border-radius:20px;box-shadow:0 20px 60px #00ff884d;margin:40px auto;max-width:900px;padding:30px}.room-lobby-header{margin-bottom:30px;text-align:center}.room-lobby-header h2{color:#0f8;font-size:32px;margin:0 0 10px;text-shadow:0 0 20px #00ff8880}.room-lobby-header p{color:#8892b0;font-size:16px;margin:0}.room-menu{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.room-menu-btn{align-items:center;background:#00ff880d;border:2px solid #00ff884d;border-radius:15px;cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:30px;transition:all .3s ease}.room-menu-btn:hover{background:#00ff881a;border-color:#0f8;box-shadow:0 10px 30px #00ff884d;transform:translateY(-5px)}.room-menu-btn .btn-icon{font-size:48px}.room-menu-btn .btn-text{color:#0f8;font-size:24px;font-weight:700}.room-menu-btn .btn-desc{color:#8892b0;font-size:14px}.room-code-display{align-items:center;background:#00ff881a;border:2px solid #0f8;border-radius:12px;box-shadow:0 0 30px #00ff884d;display:flex;gap:15px;justify-content:center;margin-top:15px;padding:15px 25px}.room-code-label{color:#8892b0;font-size:14px;font-weight:600}.room-code-value{color:#0f8;font-family:Courier New,monospace;font-size:32px;font-weight:900;letter-spacing:5px;text-shadow:0 0 15px #0f8c}.room-code-copy{background:#0f83;border:2px solid #0f8;border-radius:8px;color:#0f8;cursor:pointer;font-size:18px;padding:8px 12px;transition:all .3s ease}.room-code-copy:hover{background:#00ff884d;transform:scale(1.1)}.room-code-input-container{margin:30px 0}.room-code-input{background:#00ff880d;border:3px solid #00ff884d;border-radius:12px;color:#0f8;font-family:Courier New,monospace;font-size:36px;font-weight:900;letter-spacing:8px;padding:20px;text-align:center;transition:all .3s ease;width:100%}.room-code-input:focus{background:#00ff881a;border-color:#0f8;box-shadow:0 0 30px #00ff884d;outline:none}.room-settings{display:flex;flex-direction:column;gap:25px;margin-bottom:30px}.setting-group label{color:#0f8;display:block;font-size:16px;font-weight:600;letter-spacing:1px;margin-bottom:12px;text-transform:uppercase}.setting-options{display:flex;gap:12px}.setting-option{background:#00ff880d;border:2px solid #0f83;border-radius:10px;color:#8892b0;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px;transition:all .3s ease}.setting-option:hover{background:#00ff881a;border-color:#00ff8880}.setting-option.active{background:#0f83;border-color:#0f8;box-shadow:0 0 20px #00ff884d;color:#0f8}.room-info{background:#00ff880d;border-radius:12px;display:flex;justify-content:space-around;margin:25px 0;padding:20px}.room-info-item{align-items:center;display:flex;flex-direction:column;gap:8px}.info-label{color:#8892b0;font-size:14px}.info-value{color:#0f8;font-size:20px;font-weight:700}.room-players{grid-gap:20px;align-items:center;display:grid;gap:20px;grid-template-columns:1fr auto 1fr;margin:30px 0}.player-card{background:#00ff880d;border:2px solid #0f83;border-radius:15px;display:flex;flex-direction:column;min-height:180px;padding:20px;transition:all .3s ease}.player-card.selected{background:#00ff881a;border-color:#0f8;box-shadow:0 0 30px #0f83}.player-role-header{align-items:center;border-bottom:2px solid #0f83;display:flex;gap:10px;margin-bottom:15px;padding-bottom:15px}.player-role-header .role-icon{font-size:28px}.player-role-header .role-name{color:#0f8;font-size:20px;font-weight:700}.player-info{display:flex;flex:1 1;flex-direction:column;gap:12px;justify-content:center}.player-name{color:#fff;font-size:18px;font-weight:600}.player-status{font-size:14px}.status-ready{color:#0f8;font-weight:600}.status-not-ready{color:orange;font-weight:600}.select-role-btn{background:#00ff881a;border:2px dashed #00ff884d;border-radius:10px;color:#0f8;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:15px;transition:all .3s ease}.select-role-btn:hover:not(:disabled){background:#0f83;border-color:#0f8;border-style:solid}.select-role-btn:disabled{cursor:not-allowed;opacity:.4}.vs-divider{color:#0f8;font-size:32px;font-weight:900;text-shadow:0 0 20px #0f8c}.ready-btn{background:#ffa50033;border:2px solid orange;border-radius:12px;color:orange;cursor:pointer;font-size:20px;font-weight:700;margin:20px 0;padding:18px;transition:all .3s ease;width:100%}.ready-btn:hover{background:#ffa5004d;box-shadow:0 5px 20px #ffa5004d;transform:translateY(-2px)}.ready-btn.ready{background:#0f83;border-color:#0f8;color:#0f8}.ready-btn.ready:hover{background:#00ff884d;box-shadow:0 5px 20px #00ff884d}.room-actions{display:flex;flex-direction:column;gap:15px;margin-top:25px}.start-game-btn{animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #00ff8880}50%{box-shadow:0 0 40px #0f8c}}.waiting-message{background:#ffa5001a;border:2px solid #ffa5004d;border-radius:10px;color:orange;font-weight:600}.room-error,.waiting-message{font-size:16px;padding:15px;text-align:center}.room-error{background:#ff44441a;border:2px solid #f44;border-radius:10px;color:#ff6b6b;margin:20px 0}@media (max-width:768px){.room-players{gap:15px;grid-template-columns:1fr}.vs-divider{margin:10px 0;transform:rotate(90deg)}.room-code-value{font-size:24px;letter-spacing:3px}.room-code-input{font-size:28px;letter-spacing:5px}}.scenario-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-top:10px}.scenario-option{align-items:center;background:#00ff880d;border:2px solid #0f83;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:15px;text-align:center;transition:all .3s ease}.scenario-option:hover{background:#00ff881a;border-color:#00ff8880;transform:translateY(-3px)}.scenario-option.active{background:#00ff8826;border-color:#0f8;box-shadow:0 0 20px #00ff884d}.scenario-option.easy{border-color:#0f86}.scenario-option.medium{border-color:#ffa50066}.scenario-option.hard{border-color:#f446}.scenario-option.easy.active{border-color:#0f8;box-shadow:0 0 20px #0f86}.scenario-option.medium.active{border-color:orange;box-shadow:0 0 20px #ffa50066}.scenario-option.hard.active{border-color:#f44;box-shadow:0 0 20px #f446}.scenario-icon{font-size:36px;margin-bottom:5px}.scenario-name{color:#fff;font-size:13px;font-weight:600;line-height:1.3}.scenario-difficulty{color:#8892b0;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.scenario-option.active .scenario-difficulty{color:#0f8}.scenario-hint{color:#8892b0;font-size:13px;font-style:italic;margin-top:10px;text-align:center}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.z-\[-10\]{z-index:-10}.mx-auto{margin-left:auto;margin-right:auto}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.size-full{height:100%;width:100%}.h-1{height:.25rem}.h-12{height:3rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-auto{height:auto}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-12{width:3rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-md{max-width:28rem}.shrink{flex-shrink:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-cyan-500\/20{border-color:#06b6d433}.border-cyan-500\/30{border-color:#06b6d44d}.border-cyan-500\/50{border-color:#06b6d480}.border-gray-800{--tw-border-opacity:1;border-color:#1f2937;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.border-gray-900{--tw-border-opacity:1;border-color:#111827;border-color:rgb(17 24 39/var(--tw-border-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/80{background-color:#000c}.bg-cyan-400{--tw-bg-opacity:1;background-color:#22d3ee;background-color:rgb(34 211 238/var(--tw-bg-opacity,1))}.bg-cyan-500\/10{background-color:#06b6d41a}.bg-gray-900\/50{background-color:#11182780}.bg-transparent{background-color:initial}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-black{--tw-gradient-from:#000 var(--tw-gradient-from-position);--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-400{--tw-gradient-from:#22d3ee var(--tw-gradient-from-position);--tw-gradient-to:#22d3ee00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from:#06b6d4 var(--tw-gradient-from-position);--tw-gradient-to:#06b6d400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-500\/10{--tw-gradient-from:#06b6d41a var(--tw-gradient-from-position);--tw-gradient-to:#06b6d400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gray-500{--tw-gradient-from:#6b7280 var(--tw-gradient-from-position);--tw-gradient-to:#6b728000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from:#111827 var(--tw-gradient-from-position);--tw-gradient-to:#11182700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500{--tw-gradient-from:#22c55e var(--tw-gradient-from-position);--tw-gradient-to:#22c55e00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-400{--tw-gradient-from:#c084fc var(--tw-gradient-from-position);--tw-gradient-to:#c084fc00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:#a855f700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from:#9333ea var(--tw-gradient-from-position);--tw-gradient-to:#9333ea00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500{--tw-gradient-from:#ef4444 var(--tw-gradient-from-position);--tw-gradient-to:#ef444400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from:#eab308 var(--tw-gradient-from-position);--tw-gradient-to:#eab30800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-purple-400{--tw-gradient-to:#c084fc00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#c084fc var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0000 var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-black{--tw-gradient-to:#000 var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-cyan-400{--tw-gradient-to:#22d3ee var(--tw-gradient-to-position)}.to-cyan-500{--tw-gradient-to:#06b6d4 var(--tw-gradient-to-position)}.to-emerald-600{--tw-gradient-to:#059669 var(--tw-gradient-to-position)}.to-gray-600{--tw-gradient-to:#4b5563 var(--tw-gradient-to-position)}.to-gray-900{--tw-gradient-to:#111827 var(--tw-gradient-to-position)}.to-green-400{--tw-gradient-to:#4ade80 var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to:#4f46e5 var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to:#ea580c var(--tw-gradient-to-position)}.to-pink-400{--tw-gradient-to:#f472b6 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to:#ec4899 var(--tw-gradient-to-position)}.to-pink-600{--tw-gradient-to:#db2777 var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to:#a855f7 var(--tw-gradient-to-position)}.to-purple-500\/10{--tw-gradient-to:#a855f71a var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position)}.to-rose-600{--tw-gradient-to:#e11d48 var(--tw-gradient-to-position)}.to-teal-500{--tw-gradient-to:#14b8a6 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{object-fit:contain}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-32{padding-bottom:8rem;padding-top:8rem}.py-4{padding-top:1rem}.pb-4,.py-4{padding-bottom:1rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.text-cyan-400{--tw-text-opacity:1;color:#22d3ee;color:rgb(34 211 238/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:#d1d5db;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-transparent{color:#0000}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.shadow-\[0_0_30px_rgba\(6\2c 182\2c 212\2c 0\.2\)\]{--tw-shadow:0 0 30px #06b6d433;--tw-shadow-colored:0 0 30px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.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)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.\[mask-image\:radial-gradient\(ellipse_at_center\2c black\2c transparent\)\]{-webkit-mask-image:radial-gradient(ellipse at center,#000,#0000);mask-image:radial-gradient(ellipse at center,#000,#0000)}.\[mask-image\:radial-gradient\(ellipse_at_center\2c transparent\2c black\)\]{-webkit-mask-image:radial-gradient(ellipse at center,#0000,#000);mask-image:radial-gradient(ellipse at center,#0000,#000)}:root{--bg-primary:#050810;--bg-secondary:#0a0f1a;--bg-tertiary:#12182b;--bg-card:#0a0f1afa;--bg-glass:#0f1423d9;--accent-green:#00ff9f;--accent-green-dark:#00d17a;--accent-green-bright:#39ffbb;--accent-red:#f06;--accent-red-dark:#cc0052;--accent-red-bright:#ff3385;--accent-blue:#00f0ff;--accent-blue-dark:#00c4d4;--accent-blue-bright:#33f3ff;--accent-purple:#b833ff;--accent-purple-dark:#9419e6;--accent-purple-bright:#c966ff;--accent-yellow:#ffeb3b;--accent-cyan:#0ff;--accent-pink:#f0f;--accent-orange:#ff6f3c;--accent-gold:gold;--text-primary:#fff;--text-secondary:#c5d1e8;--text-muted:#7a8599;--text-glow:#e0f2fe;--border-color:#00ff9f66;--border-danger:#ff006680;--border-blue:#00f0ff80;--border-purple:#b833ff80;--border-gold:#ffd70080;--shadow-glow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;--shadow-glow-red:0 0 60px #ff006659,0 20px 60px #00000080,0 0 120px #ff006626;--shadow-glow-blue:0 0 60px #00f0ff59,0 20px 60px #00000080,0 0 120px #00f0ff26;--shadow-glow-purple:0 0 60px #b833ff59,0 20px 60px #00000080,0 0 120px #b833ff26;--shadow-glow-gold:0 0 60px #ffd70059,0 20px 60px #00000080,0 0 120px #ffd70026;--glass-bg:#0f192dbf;--glass-border:#ffffff1a;--glass-shadow:0 8px 32px #0000005e;--terminal-font:"Fira Code","Courier New",monospace;--ui-font:"Rajdhani",sans-serif;--heading-font:"Orbitron",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px}body{background:radial-gradient(ellipse at top,#1a0f3e 0,#0d0520 25%,#050810 60%,#000 100%);background-attachment:fixed;color:#fff;color:var(--text-primary);font-family:Rajdhani,sans-serif;font-family:var(--ui-font);min-height:100vh;overflow-x:hidden;position:relative}body:before{animation:gridMove 40s linear infinite;background-image:linear-gradient(#00ff9f0d 2px,#0000 0),linear-gradient(90deg,#00ff9f0d 2px,#0000 0),linear-gradient(#00f0ff08 1px,#0000 0),linear-gradient(90deg,#b833ff08 1px,#0000 0);background-size:120px 120px,120px 120px,30px 30px,30px 30px;opacity:.8}body:after,body:before{content:"";height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}body:after{animation:particleFloat 30s ease-in-out infinite;background-image:radial-gradient(3px 3px at 20% 30%,#00ff9f99,#0000),radial-gradient(2px 2px at 60% 70%,#00f0ff80,#0000),radial-gradient(2px 2px at 50% 50%,#ff006680,#0000),radial-gradient(3px 3px at 80% 10%,#b833ff99,#0000),radial-gradient(2px 2px at 30% 80%,#ffd70066,#0000),radial-gradient(2px 2px at 90% 50%,#f0f6,#0000),radial-gradient(1px 1px at 15% 60%,#00ffff80,#0000);background-position:0 0;background-size:250% 250%;opacity:.9}@keyframes gridMove{0%{transform:translate(0)}to{transform:translate(100px,100px)}}@keyframes particleFloat{0%,to{background-position:0 0;opacity:.4}50%{background-position:100% 100%;opacity:.7}}#root{position:relative;z-index:1}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0a0f1a;background:var(--bg-secondary);border-radius:5px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#00ff9f,#00f0ff);background:linear-gradient(180deg,var(--accent-green) 0,var(--accent-blue) 100%);border:2px solid #0a0f1a;border:2px solid var(--bg-secondary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#00f0ff,#b833ff);background:linear-gradient(180deg,var(--accent-blue) 0,var(--accent-purple) 100%)}.app{min-height:100vh;padding:30px 20px}.app-header{animation:headerPulse 6s ease-in-out infinite;-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);background:linear-gradient(135deg,#00ff9f14,#00f0ff14 50%,#b833ff14);background-clip:padding-box,border-box;background-image:linear-gradient(#0f1423d9,#0f1423d9),linear-gradient(135deg,#00ff9f99,#00f0ff99 50%,#b833ff99);background-image:linear-gradient(var(--bg-glass),var(--bg-glass)),linear-gradient(135deg,#00ff9f99 0,#00f0ff99 50%,#b833ff99 100%);background-origin:border-box;border:3px solid #0000;border-radius:28px;box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26,inset 0 0 60px #00ff9f0d;box-shadow:var(--shadow-glow),inset 0 0 60px #00ff9f0d;margin-bottom:60px;overflow:hidden;padding:60px 40px;position:relative;text-align:center}@keyframes headerPulse{0%,to{box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26,inset 0 0 60px #00ff9f0d;box-shadow:var(--shadow-glow),inset 0 0 60px #00ff9f0d}50%{box-shadow:0 0 60px #00f0ff59,0 20px 60px #00000080,0 0 120px #00f0ff26,inset 0 0 80px #00f0ff14;box-shadow:var(--shadow-glow-blue),inset 0 0 80px #00f0ff14}}.app-header:before{animation:headerShine 4s linear infinite;background:linear-gradient(45deg,#0000 30%,#00ff9f26 50%,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes headerShine{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.app-header h1{-webkit-text-fill-color:#0000;animation:titleGlow 4s ease-in-out infinite;background:linear-gradient(135deg,#39ffbb,#0ff 30%,#33f3ff 60%,#c966ff);background:linear-gradient(135deg,var(--accent-green-bright) 0,var(--accent-cyan) 30%,var(--accent-blue-bright) 60%,var(--accent-purple-bright) 100%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 50px rgba(0,255,159,.7));font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:4.5rem;font-weight:900;letter-spacing:10px;margin-bottom:20px;position:relative;text-transform:uppercase;z-index:1}@keyframes titleGlow{0%,to{filter:drop-shadow(0 0 30px rgba(0,255,159,.7)) brightness(1)}50%{filter:drop-shadow(0 0 60px rgba(0,240,255,.9)) brightness(1.3)}}.app-header p{color:#c5d1e8;color:var(--text-secondary);font-size:1.4rem;font-weight:600;letter-spacing:3px;position:relative;text-shadow:0 0 20px #00f0ff80;z-index:1}.role-selection{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f1419f2,#1a2332f2);border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:24px;box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;box-shadow:var(--shadow-glow);margin:0 auto;max-width:900px;padding:50px}.role-selection h2{color:#00ff9f;color:var(--accent-green);font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:2.5rem;font-weight:700;letter-spacing:3px;margin-bottom:40px;text-align:center;text-transform:uppercase}.role-buttons{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:40px}.role-button{background:linear-gradient(135deg,#0f1419cc,#1a2332cc);border:3px solid #0000;border-radius:16px;cursor:pointer;overflow:hidden;padding:40px 30px;position:relative;text-align:center;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.role-button:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.role-button:hover:before{left:100%}.role-button:hover{box-shadow:0 20px 60px #0006;transform:translateY(-10px) scale(1.02)}.role-button.attacker{background:linear-gradient(135deg,#ff00550d,#0f1419e6);border-color:#ff006680;border-color:var(--border-danger)}.role-button.attacker:hover{border-color:#f06;border-color:var(--accent-red);box-shadow:0 0 60px #ff006659,0 20px 60px #00000080,0 0 120px #ff006626;box-shadow:var(--shadow-glow-red)}.role-button.defender{background:linear-gradient(135deg,#00e5ff0d,#0f1419e6);border-color:#00f0ff80;border-color:var(--border-blue)}.role-button.defender:hover{border-color:#00f0ff;border-color:var(--accent-blue);box-shadow:0 0 60px #00f0ff59,0 20px 60px #00000080,0 0 120px #00f0ff26;box-shadow:var(--shadow-glow-blue)}.role-button h3{font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:2rem;font-weight:700;letter-spacing:2px;margin-bottom:15px}.role-button.attacker h3{color:#f06;color:var(--accent-red);text-shadow:0 0 20px #ff005580}.role-button.defender h3{color:#00f0ff;color:var(--accent-blue);text-shadow:0 0 20px #00e5ff80}.role-button p{color:#c5d1e8;color:var(--text-secondary);font-size:1.1rem;font-weight:500;line-height:1.6}.session-input{display:flex;gap:15px;margin-top:30px}.session-input input{background:#0f1419cc;border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:12px;color:#fff;color:var(--text-primary);flex:1 1;font-family:Fira Code,Courier New,monospace;font-family:var(--terminal-font);font-size:1.05rem;font-weight:500;padding:16px 20px;transition:all .3s ease}.session-input input:focus{background:#0f1419f2;border-color:#00ff9f;border-color:var(--accent-green);box-shadow:0 0 20px #00ff884d;outline:none}.session-input input::placeholder{color:#7a8599;color:var(--text-muted)}.btn{background:linear-gradient(135deg,#39ffbb,#0ff);background:linear-gradient(135deg,var(--accent-green-bright) 0,var(--accent-cyan) 100%);border:none;border-radius:16px;box-shadow:0 10px 35px #00ff9f80,0 0 60px #00ff9f33;color:#000;cursor:pointer;font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:1.15rem;font-weight:800;letter-spacing:2.5px;overflow:hidden;padding:20px 42px;position:relative;text-transform:uppercase;transform-style:preserve-3d;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.btn:before{background:#ffffff80;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .7s,height .7s;width:0}.btn:hover:before{height:400px;width:400px}.btn:after{animation:btnShine 3s linear infinite;background:linear-gradient(45deg,#0000,#ffffff26,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);width:200%}@keyframes btnShine{0%{transform:translateX(-100%) rotate(45deg)}to{transform:translateX(100%) rotate(45deg)}}.btn:hover{box-shadow:0 20px 50px #00ff9fb3,0 0 80px #00ff9f66;transform:translateY(-5px) scale(1.03)}.btn:active{transform:translateY(-2px) scale(.98)}.btn-secondary{background:linear-gradient(135deg,#33f3ff,#c966ff);background:linear-gradient(135deg,var(--accent-blue-bright) 0,var(--accent-purple-bright) 100%);box-shadow:0 10px 35px #00f0ff80,0 0 60px #00f0ff33}.btn-secondary:hover{box-shadow:0 20px 50px #00f0ffb3,0 0 80px #00f0ff66}.btn-primary{background:linear-gradient(135deg,#c966ff,#f0f);background:linear-gradient(135deg,var(--accent-purple-bright) 0,var(--accent-pink) 100%);box-shadow:0 10px 35px #b833ff80,0 0 60px #b833ff33;color:#fff}.btn-primary:hover{box-shadow:0 20px 50px #b833ffb3,0 0 80px #b833ff66}.btn-danger{background:linear-gradient(135deg,#ff3385,#ff6f3c);background:linear-gradient(135deg,var(--accent-red-bright) 0,var(--accent-orange) 100%);box-shadow:0 10px 35px #ff006680,0 0 60px #f063;color:#fff}.btn-danger:hover{box-shadow:0 20px 50px #ff0066b3,0 0 80px #f066}.btn-small{font-size:.95rem;padding:12px 24px}.game-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr;margin:0 auto;max-width:1800px}@media (min-width:1200px){.game-container{grid-template-columns:2fr 1fr}}.terminal{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f1419f2,#1a2332f2);border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:16px;box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;box-shadow:var(--shadow-glow);display:flex;flex-direction:column;height:700px;overflow:hidden}.terminal-header{align-items:center;background:linear-gradient(135deg,#00ff881a,#00e5ff1a);border-bottom:2px solid #00ff9f66;border-bottom:2px solid var(--border-color);display:flex;gap:15px;padding:16px 24px}.terminal-header-dots{display:flex;gap:10px}.terminal-dot{border-radius:50%;box-shadow:0 0 10px currentColor;height:14px;width:14px}.terminal-dot.red{background:#f06;background:var(--accent-red);box-shadow:0 0 10px #f06;box-shadow:0 0 10px var(--accent-red)}.terminal-dot.yellow{background:#ffeb3b;background:var(--accent-yellow);box-shadow:0 0 10px #ffeb3b;box-shadow:0 0 10px var(--accent-yellow)}.terminal-dot.green{background:#00ff9f;background:var(--accent-green);box-shadow:0 0 10px #00ff9f;box-shadow:0 0 10px var(--accent-green)}.terminal-title{color:#fff;color:var(--text-primary);font-size:1rem;font-weight:600;letter-spacing:1px}.terminal-output,.terminal-title{font-family:Fira Code,Courier New,monospace;font-family:var(--terminal-font)}.terminal-output{flex:1 1;font-size:.95rem;line-height:1.8;overflow-y:auto;padding:24px}.terminal-line{animation:fadeInSlide .3s ease;margin-bottom:10px}@keyframes fadeInSlide{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.terminal-line.success{color:#00ff9f;color:var(--accent-green);text-shadow:0 0 10px #00ff8880}.terminal-line.error{color:#f06;color:var(--accent-red);text-shadow:0 0 10px #ff005580}.terminal-line.warning{color:#ffeb3b;color:var(--accent-yellow);text-shadow:0 0 10px #ffd70080}.terminal-line.info{color:#00f0ff;color:var(--accent-blue);text-shadow:0 0 10px #00e5ff80}.terminal-line.critical{animation:criticalBlink 1s ease infinite;color:#f06;color:var(--accent-red);font-weight:700;text-shadow:0 0 15px #f05c}@keyframes criticalBlink{0%,to{opacity:1}50%{opacity:.5}}.terminal-prompt{color:#00ff9f;color:var(--accent-green);font-weight:600;margin-right:10px}.terminal-input-container{align-items:center;background:linear-gradient(135deg,#00ff880d,#00e5ff0d);border-top:2px solid #00ff9f66;border-top:2px solid var(--border-color);display:flex;gap:12px;padding:18px 24px}.terminal-input-container input{background:#0000;border:none;color:#fff;color:var(--text-primary);flex:1 1;font-family:Fira Code,Courier New,monospace;font-family:var(--terminal-font);font-size:1rem;font-weight:500;outline:none}.dashboard{display:flex;flex-direction:column;gap:25px}.dashboard-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f1419f2,#1a2332f2);border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:16px;box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;box-shadow:var(--shadow-glow);padding:25px;transition:all .3s ease}.dashboard-card:hover{border-color:#00f0ff;border-color:var(--accent-blue);box-shadow:0 0 60px #00f0ff59,0 20px 60px #00000080,0 0 120px #00f0ff26;box-shadow:var(--shadow-glow-blue)}.dashboard-card h3{align-items:center;color:#00f0ff;color:var(--accent-blue);display:flex;font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:1.5rem;font-weight:700;gap:12px;letter-spacing:2px;margin-bottom:20px;text-shadow:0 0 15px #00e5ff80;text-transform:uppercase}.score-display{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.score-item{background:linear-gradient(135deg,#0f1419cc,#1a2332cc);border:3px solid #0000;border-radius:12px;overflow:hidden;padding:25px;position:relative;text-align:center;transition:all .4s ease}.score-item:before{animation:scoreShine 3s linear infinite;background:linear-gradient(45deg,#0000 30%,#ffffff0d 50%,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes scoreShine{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.score-item.attacker{border-color:#ff006680;border-color:var(--border-danger)}.score-item.attacker:hover{border-color:#f06;border-color:var(--accent-red);box-shadow:0 0 60px #ff006659,0 20px 60px #00000080,0 0 120px #ff006626;box-shadow:var(--shadow-glow-red);transform:scale(1.05)}.score-item.defender{border-color:#00f0ff80;border-color:var(--border-blue)}.score-item.defender:hover{border-color:#00f0ff;border-color:var(--accent-blue);box-shadow:0 0 60px #00f0ff59,0 20px 60px #00000080,0 0 120px #00f0ff26;box-shadow:var(--shadow-glow-blue);transform:scale(1.05)}.score-label{color:#c5d1e8;color:var(--text-secondary);font-size:.9rem;font-weight:600;letter-spacing:2px;margin-bottom:12px;text-transform:uppercase}.score-label,.score-value{position:relative;z-index:1}.score-value{font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:2.5rem;font-weight:900}.score-item.attacker .score-value{color:#f06;color:var(--accent-red);text-shadow:0 0 20px #f059}.score-item.defender .score-value{color:#00f0ff;color:var(--accent-blue);text-shadow:0 0 20px #00e5ff99}.network-grid{grid-gap:15px;display:grid;gap:15px}.server-card{background:linear-gradient(135deg,#0f1419cc,#1a2332cc);border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:12px;overflow:hidden;padding:20px;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.server-card:before{background:linear-gradient(90deg,#0000,#00ff881a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.server-card:hover:before{left:100%}.server-card:hover{border-color:#00ff9f;border-color:var(--accent-green);box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;box-shadow:var(--shadow-glow);transform:translateX(8px) scale(1.02)}.server-card.compromised{background:linear-gradient(135deg,#ff00551a,#1a2332cc);border-color:#f06;border-color:var(--accent-red);box-shadow:0 0 60px #ff006659,0 20px 60px #00000080,0 0 120px #ff006626;box-shadow:var(--shadow-glow-red)}.server-card.isolated{border-color:#ffeb3b;border-color:var(--accent-yellow);opacity:.7}.server-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.server-name{color:#fff;color:var(--text-primary);font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:1.1rem}.server-name,.server-status{font-weight:700;letter-spacing:1px}.server-status{border-radius:6px;font-size:.75rem;padding:6px 12px;text-transform:uppercase}.server-status.online{background:#0f83;box-shadow:0 0 10px #00ff884d;color:#00ff9f;color:var(--accent-green)}.server-status.compromised{animation:statusPulse 2s ease infinite;background:#f053;box-shadow:0 0 10px #ff00554d;color:#f06;color:var(--accent-red)}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.7}}.server-status.isolated{background:#ffd70033;box-shadow:0 0 10px #ffd7004d;color:#ffeb3b;color:var(--accent-yellow)}.server-ip{color:#c5d1e8;color:var(--text-secondary);font-family:Fira Code,Courier New,monospace;font-family:var(--terminal-font);font-size:.9rem;font-weight:500;margin-bottom:12px}.server-services{display:flex;flex-wrap:wrap;gap:8px}.service-badge{background:#0f1419cc;border:2px solid #0000;border-radius:6px;font-family:Fira Code,Courier New,monospace;font-family:var(--terminal-font);font-size:.8rem;font-weight:600;padding:6px 12px;transition:all .3s ease}.service-badge.vulnerable{border-color:#f06;border-color:var(--accent-red);box-shadow:0 0 10px #f053;color:#f06;color:var(--accent-red)}.service-badge.vulnerable:hover{background:#ff00551a;transform:scale(1.1)}.service-badge.patched{border-color:#00ff9f;border-color:var(--accent-green);box-shadow:0 0 10px #0f83;color:#00ff9f;color:var(--accent-green)}.service-badge.patched:hover{background:#00ff881a;transform:scale(1.1)}.action-buttons{grid-gap:12px;display:grid;gap:12px;margin-top:20px}.action-btn{background:linear-gradient(135deg,#0f1419cc,#1a2332cc);border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:10px;color:#fff;color:var(--text-primary);cursor:pointer;font-size:1rem;font-weight:600;overflow:hidden;padding:14px 20px;position:relative;text-align:left;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.action-btn:before{background:#00ff9f;background:var(--accent-green);content:"";height:0;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:height .3s;width:4px}.action-btn:hover:before{height:80%}.action-btn:hover{background:linear-gradient(135deg,#00ff881a,#1a2332e6);border-color:#00ff9f;border-color:var(--accent-green);box-shadow:0 5px 20px #0f83;transform:translateX(10px)}.action-btn:active{transform:translateX(5px)}.log-viewer{max-height:350px;overflow-y:auto}.log-entry{animation:logSlideIn .3s ease;background:linear-gradient(135deg,#0f1419cc,#1a2332cc);border-left:4px solid #00ff9f;border-left:4px solid var(--accent-green);border-radius:6px;font-family:Fira Code,Courier New,monospace;font-family:var(--terminal-font);font-size:.9rem;margin-bottom:8px;padding:12px 16px;transition:all .3s ease}.log-entry:hover{background:linear-gradient(135deg,#0f1419f2,#1a2332f2);transform:translateX(5px)}@keyframes logSlideIn{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}.log-entry.attacker{border-left-color:#f06;border-left-color:var(--accent-red);box-shadow:-4px 0 10px #ff00551a}.log-entry.defender{border-left-color:#00f0ff;border-left-color:var(--accent-blue);box-shadow:-4px 0 10px #00e5ff1a}.log-entry.system{border-left-color:#00ff9f;border-left-color:var(--accent-green);box-shadow:-4px 0 10px #00ff881a}.log-timestamp{color:#7a8599;color:var(--text-muted);font-size:.75rem;margin-right:10px}.log-role{font-weight:700;letter-spacing:1px;margin-right:10px}.log-entry.attacker .log-role{color:#f06;color:var(--accent-red)}.log-entry.defender .log-role{color:#00f0ff;color:var(--accent-blue)}.modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000e6;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal{animation:modalSlideIn .5s cubic-bezier(.175,.885,.32,1.275);background:linear-gradient(135deg,#0f1419fa,#1a2332fa);border:3px solid #00ff9f66;border:3px solid var(--border-color);border-radius:24px;box-shadow:0 30px 80px #0009,0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;box-shadow:0 30px 80px #0009,var(--shadow-glow);max-width:700px;padding:50px;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.8) translateY(-50px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal h2{-webkit-text-fill-color:#0000;animation:titleGlow 2s ease-in-out infinite;background:linear-gradient(135deg,#00ff9f,#00f0ff);background:linear-gradient(135deg,var(--accent-green) 0,var(--accent-blue) 100%);-webkit-background-clip:text;background-clip:text;font-family:Orbitron,sans-serif;font-family:var(--heading-font);font-size:3rem;font-weight:900;letter-spacing:3px;margin-bottom:30px;text-align:center;text-transform:uppercase}.modal-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin:40px 0}.modal-stat{background:linear-gradient(135deg,#0f1419cc,#1a2332cc);border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:12px;padding:25px;text-align:center;transition:all .3s ease}.modal-stat:hover{border-color:#00ff9f;border-color:var(--accent-green);box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;box-shadow:var(--shadow-glow);transform:scale(1.05)}.modal-stat-label{animation:spin 1s cubic-bezier(.68,-.55,.265,1.55) infinite;box-shadow:0 0 20px #00ff884d;color:#c5d1e8;color:var(--text-secondary);font-size:1rem;margin-bottom:12px}@keyframes spin{to{transform:rotate(1turn)}}.connection-status{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f1419f2,#1a2332f2);border:2px solid #00ff9f66;border:2px solid var(--border-color);border-radius:12px;box-shadow:0 0 60px #00ff9f59,0 20px 60px #00000080,0 0 120px #00ff9f26;box-shadow:var(--shadow-glow);display:flex;font-size:.9rem;font-weight:600;gap:10px;padding:12px 20px;position:fixed;right:25px;top:25px;z-index:100}.connection-indicator{animation:connectionPulse 2s ease infinite;background:#00ff9f;background:var(--accent-green);border-radius:50%;box-shadow:0 0 10px #00ff9f;box-shadow:0 0 10px var(--accent-green);height:10px;width:10px}@keyframes connectionPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.connection-status.disconnected .connection-indicator{background:#f06;background:var(--accent-red);box-shadow:0 0 10px #f06;box-shadow:0 0 10px var(--accent-red)}.hover\:border-cyan-500\/50:hover{border-color:#06b6d480}.hover\:bg-cyan-500\/10:hover{background-color:#06b6d41a}.hover\:bg-cyan-900\/10:hover{background-color:#164e631a}.hover\:text-cyan-400:hover{--tw-text-opacity:1;color:#22d3ee;color:rgb(34 211 238/var(--tw-text-opacity,1))}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-cyan-500\/50:hover{--tw-shadow-color:#06b6d480;--tw-shadow:var(--tw-shadow-colored)}.group:hover .group-hover\:opacity-10{opacity:.1}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width:640px){.sm\:flex-row{flex-direction:row}}@media (min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:text-8xl{font-size:6rem;line-height:1}}.error-boundary{align-items:center;background:linear-gradient(135deg,#0a0e1a,#1a0f2e);display:flex;justify-content:center;min-height:100vh;padding:20px}.error-boundary-content{animation:errorSlideIn .5s cubic-bezier(.175,.885,.32,1.275);background:linear-gradient(135deg,#0f1419f2,#1a2332f2);border:2px solid #ff005559;border:2px solid var(--border-danger,#ff005559);border-radius:24px;box-shadow:0 30px 80px #0009,0 0 30px #f053;max-width:600px;padding:50px 40px;text-align:center;width:100%}@keyframes errorSlideIn{0%{opacity:0;transform:scale(.8) translateY(-50px)}to{opacity:1;transform:scale(1) translateY(0)}}.error-icon{animation:errorPulse 2s ease-in-out infinite;font-size:5rem;margin-bottom:20px}@keyframes errorPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.error-boundary-content h1{color:#f05;color:var(--accent-red,#f05);font-family:Orbitron,sans-serif;font-family:var(--heading-font,"Orbitron",sans-serif);font-size:2rem;letter-spacing:2px;margin-bottom:15px;text-transform:uppercase}.error-message{color:#b4bcd0;color:var(--text-secondary,#b4bcd0);font-size:1.1rem;line-height:1.6;margin-bottom:30px}.error-details{background:#0000004d;border:1px solid #00ff8840;border:1px solid var(--border-color,#00ff8840);border-radius:8px;margin:20px 0;padding:15px;text-align:left}.error-details summary{color:#00e5ff;color:var(--accent-blue,#00e5ff);cursor:pointer;font-weight:600;padding:5px;-webkit-user-select:none;user-select:none}.error-details summary:hover{color:#0f8;color:var(--accent-green,#0f8)}.error-stack{background:#00000080;border-radius:6px;color:#b4bcd0;color:var(--text-secondary,#b4bcd0);font-family:Fira Code,monospace;font-family:var(--terminal-font,"Fira Code",monospace);font-size:.85rem;margin-top:15px;overflow-x:auto;padding:15px;white-space:pre-wrap;word-break:break-word}.error-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin:30px 0 20px}.error-help{color:#6b7280;color:var(--text-muted,#6b7280);font-size:.9rem;margin-top:20px}@media (max-width:768px){.error-boundary-content{padding:30px 20px}.error-boundary-content h1{font-size:1.5rem}.error-icon{font-size:4rem}.error-actions{flex-direction:column}.error-actions button{width:100%}}
/*# sourceMappingURL=main.222ccbef.css.map*/