/* Oeschgers EDV Systeme - GLPI CI V5
   Ziel: freundliches, helles Service-Portal im Oeschgers-EDV-CI
   Rot: #e30613 | Blau: #23395d | Hell: #f7f8fa
*/

:root {
  --oe-red: #e30613;
  --oe-red-dark: #b0000b;
  --oe-blue: #23395d;
  --oe-blue-mid: #2f4266;
  --oe-blue-dark: #16253d;
  --oe-black: #111111;
  --oe-light: #f7f8fa;
  --oe-panel: #ffffff;
  --oe-border: #e8edf3;
  --oe-text: #243044;
}

/* Grundlayout */
body {
  background: var(--oe-light) !important;
  color: var(--oe-text) !important;
}

/* Sidebar */
.navbar-vertical,
.sidebar,
#navbar-menu,
body .page .navbar.navbar-vertical {
  background: linear-gradient(180deg, #2f4266 0%, #23395d 55%, #17263f 100%) !important;
  border-right: none !important;
  box-shadow: 2px 0 16px rgba(22,37,61,.18) !important;
}

/* Logo links oben größer und sauber */
.glpi-logo {
  background-image: url("/pics/logos/logo-GLPI-100-white.png?v=oe-v5-20260612") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  width: 265px !important;
  height: 128px !important;
  max-width: 90% !important;
  display: block !important;
  margin: 16px auto 18px auto !important;
}

/* Sidebar-Navigation */
.navbar-vertical .nav-link,
.sidebar .nav-link,
#navbar-menu .nav-link {
  color: rgba(255,255,255,.94) !important;
  font-weight: 500 !important;
  border-radius: 9px !important;
  margin: 3px 10px !important;
}

.navbar-vertical .nav-link:hover,
.sidebar .nav-link:hover,
#navbar-menu .nav-link:hover {
  background: rgba(227,6,19,.16) !important;
  color: #fff !important;
}

.navbar-vertical .nav-link.active,
.sidebar .nav-link.active,
#navbar-menu .nav-link.active,
.nav-item.active > a,
.menu-item.active {
  background: var(--oe-red) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(227,6,19,.25) !important;
}

/* Header ausdrücklich hell halten */
body .page-wrapper > .navbar,
header.navbar,
.navbar-horizontal,
.topbar,
.page-header {
  background: #ffffff !important;
  color: var(--oe-blue) !important;
  border-bottom: 4px solid var(--oe-red) !important;
  box-shadow: 0 2px 12px rgba(17,17,17,.06) !important;
}

/* Header-Inhalte lesbar */
body .page-wrapper > .navbar *,
header.navbar *,
.navbar-horizontal *,
.topbar *,
.page-header * {
  color: var(--oe-blue) !important;
}

/* Suchfeld im Header */
input[type="search"],
.search-input {
  border-radius: 10px !important;
  border: 1px solid #dce3ec !important;
  background: #fff !important;
}

/* Tabs */
.nav-tabs {
  border-bottom: 1px solid #edf1f6 !important;
}

.nav-tabs .nav-link {
  color: #4b5b72 !important;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--oe-red) !important;
  border-bottom: 2px solid var(--oe-red) !important;
  background: #fff !important;
  font-weight: 600 !important;
}

/* Buttons */
.btn-primary,
.btn.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary {
  background-color: var(--oe-red) !important;
  border-color: var(--oe-red) !important;
  color: #fff !important;
  border-radius: 8px !important;
}

.btn-primary:hover,
.btn.btn-primary:hover {
  background-color: var(--oe-red-dark) !important;
  border-color: var(--oe-red-dark) !important;
}

/* Allgemeine Buttons und Eingaben */
.btn,
.form-select,
.form-control {
  border-radius: 8px !important;
}

/* Links */
a {
  color: var(--oe-red-dark);
}

a:hover {
  color: var(--oe-red);
}

/* Dashboard-Karten */
.dashboard-card,
.grid-stack-item-content,
.card,
.asset.card,
.main-card {
  background: var(--oe-panel) !important;
  border: 1px solid var(--oe-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 14px rgba(17,17,17,.07) !important;
}

/* Farbige Kacheln weicher */
.grid-stack-item-content[class*="bg-"],
.card[class*="bg-"] {
  border: none !important;
  box-shadow: 0 5px 18px rgba(17,17,17,.08) !important;
}

/* Warnbox freundlicher */
.alert-warning,
.alert-important,
.alert-danger,
.alert.alert-warning {
  background: #fff6f6 !important;
  color: #8a0008 !important;
  border: 1px solid #ffd4d4 !important;
  border-left: 8px solid var(--oe-red) !important;
  border-radius: 12px !important;
}

/* Fokus */
.form-control:focus,
.form-select:focus,
input[type="search"]:focus {
  border-color: var(--oe-red) !important;
  box-shadow: 0 0 0 .18rem rgba(227,6,19,.16) !important;
}

/* Tabellen */
.table thead th {
  color: var(--oe-blue-dark) !important;
  background: #f8fafc !important;
}

/* Badges */
.badge.bg-primary,
.bg-primary {
  background-color: var(--oe-red) !important;
}

/* Login */
.login-logo,
img[src*="login_logo_glpi"],
img[src*="logo-GLPI-250"] {
  content: url("/pics/logos/logo-GLPI-250-black.png?v=oe-v5-20260612") !important;
  max-width: 440px !important;
  height: auto !important;
}

/* Avatar oben rechts */
.avatar,
img.avatar {
  border-radius: 12px !important;
}

/* kaputten Sidebar-Footer sicher entfernen */
.navbar-vertical::after,
.sidebar::after {
  display: none !important;
  content: none !important;
}

/* Dezenter Footer-Hinweis */
body::after {
  content: "Oeschgers EDV Systeme · support.oeschger-edv.de · portal.oeschger-edv.de · status.oeschger-edv.de";
  position: fixed;
  right: 14px;
  bottom: 8px;
  font-size: 11px;
  color: rgba(17,17,17,.32);
  z-index: 9999;
  pointer-events: none;
}

/* Mobile */
@media (max-width: 900px) {
  .glpi-logo {
    width: 190px !important;
    height: 88px !important;
  }
  body::after {
    display: none !important;
  }
}

