/* Pyrlandia admin — industrial railway skin on top of Jazzmin/AdminLTE */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;900&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
  --pl-brand:        #1a56db;
  --pl-brand-dark:   #1e429f;
  --pl-signal-red:   #d32f2f;
  --pl-signal-yellow:#f9a825;
  --pl-signal-green: #2e7d32;
  --pl-steel-100:    #f1f5f9;
  --pl-steel-200:    #e2e8f0;
  --pl-steel-700:    #334155;
  --pl-steel-900:    #0f172a;
}

body, .main-header, .content-wrapper, .sidebar, .main-sidebar {
  font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
}

code, kbd, pre, samp, .nip, .field-nip, .field-part_number, .field-ticket_number,
.field-order_number, .field-invoice_number, .field-ksef_number {
  font-family: 'JetBrains Mono', ui-monospace, monospace !important;
  font-feature-settings: 'tnum' 1;
}

/* Sidebar — dark industrial */
.main-sidebar.sidebar-dark-primary,
.main-sidebar {
  background-color: var(--pl-steel-900) !important;
}
.sidebar-dark-primary .brand-link {
  background: var(--pl-steel-900) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  padding: 0.75rem 1rem;
}
.brand-link .brand-image { max-height: 36px; width: auto; }
.brand-link .brand-text { font-weight: 800 !important; letter-spacing: 0.04em; }

.sidebar-dark-primary .nav-sidebar .nav-link.active,
.sidebar-dark-primary .nav-sidebar .nav-item > .nav-link.active {
  background-color: var(--pl-brand) !important;
  color: #fff !important;
  font-weight: 600;
}
.sidebar-dark-primary .nav-sidebar .nav-link:hover {
  background-color: rgba(26, 86, 219, 0.15) !important;
  color: #fff !important;
}

/* Top navbar — brand blue */
.main-header.navbar-dark,
.main-header.navbar {
  background-color: var(--pl-brand) !important;
  border-bottom: 0 !important;
}
.main-header .navbar-nav .nav-link { color: rgba(255,255,255,0.92) !important; }

/* Primary buttons */
.btn-primary, .btn-outline-primary:hover {
  background-color: var(--pl-brand) !important;
  border-color: var(--pl-brand) !important;
}
.btn-primary:hover {
  background-color: var(--pl-brand-dark) !important;
  border-color: var(--pl-brand-dark) !important;
}
.btn-outline-primary {
  color: var(--pl-brand) !important;
  border-color: var(--pl-brand) !important;
}

/* Status colors — railway signaling */
.btn-danger, .badge-danger, .bg-danger { background-color: var(--pl-signal-red) !important; border-color: var(--pl-signal-red) !important; }
.btn-warning, .badge-warning, .bg-warning { background-color: var(--pl-signal-yellow) !important; border-color: var(--pl-signal-yellow) !important; color: #fff !important; }
.btn-success, .badge-success, .bg-success { background-color: var(--pl-signal-green) !important; border-color: var(--pl-signal-green) !important; }

/* Cards — industrial precision */
.card, .card.card-outline {
  border: 1px solid var(--pl-steel-200) !important;
  border-radius: 0.5rem !important;
  box-shadow: 0 1px 2px rgba(15,23,42,0.04) !important;
}
.card-header {
  background-color: var(--pl-steel-100) !important;
  border-bottom: 1px solid var(--pl-steel-200) !important;
}

/* Tables — cleaner */
.table thead th {
  background-color: var(--pl-steel-100) !important;
  color: var(--pl-steel-700) !important;
  font-weight: 600;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  border-bottom: 1px solid var(--pl-steel-200) !important;
}

/* Inputs focus */
.form-control:focus, .select2-container--focus .select2-selection {
  border-color: var(--pl-brand) !important;
  box-shadow: 0 0 0 0.2rem rgba(26, 86, 219, 0.15) !important;
}

/* Login page */
.login-page, .register-page { background: var(--pl-steel-100) !important; }
.login-logo a, .register-logo a { color: var(--pl-steel-900) !important; font-weight: 900; letter-spacing: 0.05em; }
.login-box-msg { color: var(--pl-steel-700); }

/* Breadcrumbs */
.breadcrumb { background: transparent !important; padding-left: 0; }
.breadcrumb-item a { color: var(--pl-brand); }

/* Links */
a { color: var(--pl-brand); }
a:hover { color: var(--pl-brand-dark); }
