:root{--bg-primary: #0a0e1a;--bg-secondary: #111827;--bg-card: rgba(17, 24, 39, .6);--bg-modal: rgba(10, 14, 26, .95);--accent-green: #10b981;--accent-green-light: #34d399;--accent-red: #ef4444;--accent-red-light: #f87171;--accent-blue: #3b82f6;--accent-purple: #8b5cf6;--accent-yellow: #fbbf24;--text-primary: #f9fafb;--text-secondary: #9ca3af;--text-muted: #6b7280;--border-color: rgba(255, 255, 255, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--shadow-glow-green: 0 0 20px rgba(16, 185, 129, .3);--shadow-glow-red: 0 0 20px rgba(239, 68, 68, .3);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 1.5rem;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(135deg,#0a0e1a,#1a1f35);color:var(--text-primary);min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-md)}.header{text-align:center;margin-bottom:var(--spacing-xl);animation:fadeInDown .6s ease}.header h1{font-size:3rem;font-weight:800;background:linear-gradient(135deg,var(--accent-green) 0%,var(--accent-blue) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-sm);letter-spacing:-.02em}.header p{color:var(--text-secondary);font-size:1.125rem;font-weight:500}.server-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg);animation:fadeInUp .6s ease .2s both}.server-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.server-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-green),var(--accent-blue));opacity:0;transition:opacity var(--transition-normal)}.server-card:hover:before{opacity:1}.server-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#fff3}.server-card.online:hover{box-shadow:var(--shadow-glow-green)}.server-card.offline:hover{box-shadow:var(--shadow-glow-red)}.server-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.server-info h3{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.server-info p{color:var(--text-secondary);font-size:.875rem}.status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:2rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.online{background:#10b98126;color:var(--accent-green-light);border:1px solid rgba(16,185,129,.3)}.status-badge.offline{background:#ef444426;color:var(--accent-red-light);border:1px solid rgba(239,68,68,.3)}.status-indicator{width:8px;height:8px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-badge.online .status-indicator{background:var(--accent-green);box-shadow:0 0 8px var(--accent-green)}.status-badge.offline .status-indicator{background:var(--accent-red);box-shadow:0 0 8px var(--accent-red)}.player-count{display:flex;align-items:center;gap:.75rem;padding:var(--spacing-sm);background:#ffffff0d;border-radius:var(--radius-sm);margin-top:var(--spacing-md)}.player-count svg{color:var(--accent-blue);font-size:1.25rem}.player-count span{font-size:1rem;font-weight:600;color:var(--text-primary)}.modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-normal);padding:var(--spacing-md)}.modal{background:var(--bg-modal);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:450px;width:100%;box-shadow:var(--shadow-lg);animation:scaleIn var(--transition-normal);position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.modal-header h2{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5rem;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.close-btn:hover{background:#ffffff1a;color:var(--text-primary)}.pin-input-group{margin-bottom:var(--spacing-lg)}.pin-input-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.pin-input{width:100%;padding:1rem;background:#ffffff0d;border:2px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:1.125rem;font-weight:600;letter-spacing:.5em;text-align:center;transition:all var(--transition-fast)}.pin-input:focus{outline:none;border-color:var(--accent-blue);background:#3b82f61a;box-shadow:0 0 0 3px #3b82f61a}.pin-error{color:var(--accent-red);font-size:.875rem;margin-top:var(--spacing-xs);display:flex;align-items:center;gap:.5rem}.server-controls{display:flex;flex-direction:column;gap:var(--spacing-md)}.control-info{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-sm)}.control-info p{color:var(--text-secondary);font-size:.875rem;margin-bottom:.25rem}.control-info .status{font-size:1.125rem;font-weight:700;color:var(--text-primary)}.btn{padding:1rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:.75rem;text-transform:uppercase;letter-spacing:.05em}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--accent-blue),var(--accent-purple));color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-success{background:linear-gradient(135deg,var(--accent-green),var(--accent-green-light));color:#fff;box-shadow:var(--shadow-sm)}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #10b98166}.btn-danger{background:linear-gradient(135deg,var(--accent-red),var(--accent-red-light));color:#fff;box-shadow:var(--shadow-sm)}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #ef444466}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.server-detail{max-width:1200px;margin:0 auto;animation:fadeInUp .6s ease}.detail-header{margin-bottom:var(--spacing-xl)}.back-btn{display:inline-flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.back-btn:hover{background:#ffffff1a;border-color:#fff3;transform:translate(-4px)}.detail-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.detail-hero{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl);position:relative;overflow:hidden}.detail-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-green),var(--accent-blue),var(--accent-purple))}.hero-info h1{font-size:2.5rem;font-weight:800;margin-bottom:var(--spacing-sm);background:linear-gradient(135deg,var(--text-primary),var(--accent-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-description{font-size:1.25rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.info-card{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);transition:all var(--transition-normal)}.info-card:hover{transform:translateY(-4px);border-color:#fff3;box-shadow:var(--shadow-md)}.info-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-blue),var(--accent-purple));border-radius:var(--radius-md);font-size:1.5rem;color:#fff;flex-shrink:0}.info-content h3{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.info-value{font-size:1.25rem;font-weight:700;color:var(--text-primary);word-break:break-all}.control-section{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center}.control-section h2{font-size:1.75rem;font-weight:700;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.control-description{color:var(--text-secondary);margin-bottom:var(--spacing-lg);font-size:1rem}.btn-large{padding:1.25rem 2rem;font-size:1.125rem}.error-message{text-align:center;padding:var(--spacing-xl);background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-top:var(--spacing-xl)}.error-message h2{font-size:2rem;font-weight:700;color:var(--accent-red);margin-bottom:var(--spacing-sm)}.error-message p{color:var(--text-secondary);font-size:1.125rem}@media(max-width:768px){.header h1{font-size:2rem}.server-grid{grid-template-columns:1fr}.modal{margin:var(--spacing-md)}.detail-hero h1{font-size:1.75rem}.hero-description{font-size:1rem}.detail-grid{grid-template-columns:1fr}.back-btn{width:100%;justify-content:center}}
