/* SIM-IT RS Enterprise — Custom Styles (complementing Tailwind) */
:root {
    --navy-950: #050b14;
    --navy-900: #0f172a;
    --navy-850: #14213d;
    --navy-800: #1e293b;
    --beige-200: #e6d5b8;
    --beige-300: #d5bd96;
    --beige-400: #c5a880;
}

body { font-family: 'Inter', sans-serif; background-color: var(--navy-900); color: #f5f0eb; }

/* Light mode override */
body.light-mode { background-color: #faf7f2; color: #1e293b; }
body.light-mode .glass-navy { background: rgba(255,255,255,.85); border-color: rgba(197,168,128,.2); }
body.light-mode .text-white { color: #1e293b !important; }
body.light-mode .text-slate-300 { color: #475569 !important; }
body.light-mode .text-slate-400 { color: #64748b !important; }

/* Glassmorphism Panels */
.glass-navy {
    background: rgba(15, 23, 42, 0.85);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(230, 213, 184, 0.18);
}

/* Beige gradient text for headings */
.text-beige-gradient {
    background: linear-gradient(135deg, #ffffff 0%, #e6d5b8 50%, #c5a880 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Focus glow */
.border-beige-glow:focus {
    border-color: var(--beige-200);
    box-shadow: 0 0 12px rgba(230, 213, 184, 0.25);
}

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--navy-950); }
::-webkit-scrollbar-thumb { background: var(--navy-700); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--beige-400); }

/* KPI Cards */
.kpi-card { transition: transform .2s, box-shadow .2s; }
.kpi-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px -6px rgba(0,0,0,.6); }

/* Status pills */
.status-open { background: rgba(239,68,68,.15); color: #fca5a5; }
.status-in_progress { background: rgba(59,130,246,.15); color: #93c5fd; }
.status-waiting_user { background: rgba(245,158,11,.15); color: #fcd34d; }
.status-resolved { background: rgba(34,197,94,.15); color: #86efac; }
.status-closed { background: rgba(107,114,128,.15); color: #d1d5db; }
.status-escalated { background: rgba(168,85,247,.15); color: #c4b5fd; }

/* Priority indicators */
.priority-critical { border-left: 3px solid #ef4444; }
.priority-high { border-left: 3px solid #f97316; }
.priority-medium { border-left: 3px solid #eab308; }
.priority-low { border-left: 3px solid #22c55e; }

/* SLA timer pulse */
.sla-breach { animation: sla-pulse 1.5s infinite; }
@keyframes sla-pulse { 0%,100% { opacity: 1; } 50% { opacity: 0.5; } }

/* Topology canvas */
#topologyCanvas { cursor: grab; touch-action: none; }
#topologyCanvas:active { cursor: grabbing; }

/* Loading skeleton */
.skeleton {
    background: linear-gradient(90deg, var(--navy-800) 25%, var(--navy-850) 50%, var(--navy-800) 75%);
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite;
    border-radius: 8px;
}
@keyframes shimmer { 0% { background-position: -200% 0; } 100% { background-position: 200% 0; } }

/* Print styles for BAST */
@media print {
    body * { visibility: hidden; }
    .print-area, .print-area * { visibility: visible; }
    .print-area { position: absolute; left: 0; top: 0; width: 100%; background: white; color: black; }
    .no-print { display: none !important; }
}

/* Table responsive */
@media (max-width: 768px) {
    .responsive-table { font-size: 11px; }
    .responsive-table th, .responsive-table td { padding: 6px 8px; }
}

/* Modal backdrop */
.modal-backdrop {
    background: rgba(0,0,0,.85);
    backdrop-filter: blur(8px);
}

/* Toast notification */
.toast-enter { animation: slideIn .3s ease-out; }
@keyframes slideIn { from { transform: translateX(100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
