/* Aegis Panel — HackerWars Cyber Blue Theme */

:root {
    --cyber-bg-dark: #070c18;
    --cyber-bg-surface: #0c1426;
    --cyber-bg-header: #111c34;
    --cyber-bg-input: #080f1e;
    --cyber-bg-subtle: #0f192f;
    --cyber-blue: #00a2ff;
    --cyber-blue-dark: #0070e0;
    --cyber-blue-glow: rgba(0, 162, 255, 0.4);
    --cyber-cyan: #00e5ff;
    --cyber-cyan-glow: rgba(0, 229, 255, 0.35);
    --cyber-border: rgba(0, 162, 255, 0.25);
    --cyber-border-light: rgba(255, 255, 255, 0.08);
}

body {
    background-color: var(--cyber-bg-dark);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: #e2e8f0;
}

code, pre, .font-monospace {
    font-family: 'Fira Code', Consolas, Monaco, 'Courier New', monospace;
}

/* Background utilities */
.bg-cyber-dark {
    background-color: var(--cyber-bg-dark) !important;
}

.bg-cyber-nav {
    background-color: rgba(12, 20, 38, 0.95) !important;
    backdrop-filter: blur(8px);
}

.bg-cyber-header {
    background-color: var(--cyber-bg-header) !important;
}

.bg-cyber-subtle {
    background-color: var(--cyber-bg-subtle) !important;
}

.bg-cyber-input {
    background-color: var(--cyber-bg-input) !important;
}

.bg-cyber-accent {
    background-color: var(--cyber-blue) !important;
    color: #fff !important;
}

/* Text colors (все основные акценты теперь синие) */
.text-cyber-blue, .text-cyber-green {
    color: var(--cyber-blue) !important;
}

.text-cyber-cyan {
    color: var(--cyber-cyan) !important;
}

/* Borders */
.border-cyber {
    border-color: var(--cyber-border) !important;
}

.border-cyber-light {
    border-color: var(--cyber-border-light) !important;
}

/* Brand icon glowing in blue */
.brand-shield {
    filter: drop-shadow(0 0 8px var(--cyber-blue));
    color: var(--cyber-blue) !important;
}

/* Custom Cards */
.cyber-card {
    background-color: var(--cyber-bg-surface);
    border-radius: 8px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.cyber-card:hover {
    border-color: rgba(0, 162, 255, 0.45) !important;
    box-shadow: 0 4px 20px rgba(0, 162, 255, 0.15);
}

/* Form Inputs */
.form-control:focus, .form-select:focus {
    background-color: var(--cyber-bg-input) !important;
    border-color: var(--cyber-blue) !important;
    box-shadow: 0 0 0 0.25rem rgba(0, 162, 255, 0.2) !important;
    color: #fff !important;
}

.form-check-input:checked {
    background-color: var(--cyber-blue);
    border-color: var(--cyber-blue);
}

.form-check-input:focus {
    box-shadow: 0 0 0 0.25rem rgba(0, 162, 255, 0.2);
}

/* Custom Buttons (Синяя палитра) */
.btn-cyber-primary {
    background: linear-gradient(135deg, #0072ff, #00a2ff);
    color: #ffffff;
    border: none;
    font-weight: 600;
    box-shadow: 0 2px 10px rgba(0, 162, 255, 0.35);
    transition: all 0.2s ease;
}

.btn-cyber-primary:hover, .btn-cyber-primary:focus {
    background: linear-gradient(135deg, #0084ff, #29b6f6);
    color: #ffffff;
    box-shadow: 0 4px 18px rgba(0, 162, 255, 0.55);
    transform: translateY(-1px);
}

.btn-cyber-primary:disabled {
    background: #1c2b42;
    color: #64748b;
    box-shadow: none;
}

.btn-outline-cyber {
    color: var(--cyber-blue);
    border-color: var(--cyber-border);
}

.btn-outline-cyber:hover {
    background-color: rgba(0, 162, 255, 0.15);
    border-color: var(--cyber-blue);
    color: #fff;
}

/* User Badge */
.user-badge {
    background-color: rgba(255, 255, 255, 0.04);
}

/* Nav Pills */
.cyber-pills .nav-link {
    color: #94a3b8;
    border-radius: 6px;
    padding: 0.5rem 1.25rem;
    transition: all 0.2s ease;
}

.cyber-pills .nav-link.active {
    background: linear-gradient(135deg, rgba(0, 162, 255, 0.2), rgba(0, 229, 255, 0.2));
    border: 1px solid var(--cyber-blue);
    color: #fff;
    box-shadow: 0 2px 12px rgba(0, 162, 255, 0.25);
}

.cyber-pills .nav-link:hover:not(.active) {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.05);
}

/* Squad Check item */
.squad-check-item {
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.squad-check-item:hover {
    border-color: var(--cyber-blue) !important;
    background-color: rgba(0, 162, 255, 0.06) !important;
}

/* 7 Кнопок выбора целей (Target Buttons) */
.target-btn-group {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.btn-target-choice {
    background-color: var(--cyber-bg-input);
    border: 1px solid var(--cyber-border-light);
    color: #cbd5e1;
    font-family: 'Fira Code', monospace;
    font-size: 0.85rem;
    padding: 8px 14px;
    border-radius: 6px;
    transition: all 0.2s ease;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-align: left;
}

.btn-target-choice:hover {
    border-color: var(--cyber-blue);
    background-color: rgba(0, 162, 255, 0.1);
    color: #fff;
}

.btn-target-choice.active {
    background: linear-gradient(135deg, #0072ff, #00a2ff);
    border-color: var(--cyber-blue);
    color: #ffffff;
    box-shadow: 0 0 12px rgba(0, 162, 255, 0.5);
    font-weight: 600;
}

/* Formatted Text Box */
.formatted-box {
    white-space: pre-line;
    line-height: 1.6;
    background-color: var(--cyber-bg-input);
    border: 1px solid var(--cyber-border);
    border-radius: 6px;
    padding: 1rem;
    font-family: 'Fira Code', monospace;
    font-size: 0.95rem;
    color: #e0f2fe;
}

/* Max Heights & Widths */
.max-h-150 {
    max-height: 150px;
}

.max-h-200 {
    max-height: 200px;
}

.max-h-500 {
    max-height: 500px;
}

.max-w-250 {
    max-width: 250px;
}

.max-w-300 {
    max-width: 300px;
}

.cursor-pointer {
    cursor: pointer;
}

/* Custom Scrollbars */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-track {
    background: var(--cyber-bg-dark);
}

::-webkit-scrollbar-thumb {
    background: #1e293b;
    border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--cyber-blue);
}
