/* ============================================================
   HornyHearts Admin — Dark-Theme-Override (laedt NACH style.css)
   Mappt das Datta-Able/pcoded-Layout auf die HornyHearts-Marke.
   Tokens: bg #0b0b0d · surface #141416 · surface2 #1a1a1d
           text #f2f2f3 · muted rgba(242,242,243,.58) · red #e0163a
           hairline rgba(255,255,255,.06)
   ============================================================ */
:root {
  --hh-bg:#0b0b0d; --hh-surface:#141416; --hh-surface2:#1a1a1d;
  --hh-text:#f2f2f3; --hh-muted:rgba(242,242,243,.58); --hh-faint:rgba(242,242,243,.40);
  --hh-red:#e0163a; --hh-red-d:#c01230; --hh-line:rgba(255,255,255,.06);
}

/* ---- Grundflaeche ---- */
body, .pcoded-main-container, .pcoded-content, .pcoded-wrapper, .pcoded-inner-content, .main-body {
  background:var(--hh-bg) !important; color:var(--hh-text) !important;
}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 { color:#fff !important; }
p, span, label, td, .text-c-default { color:inherit; }
.text-muted, .text-c-grey { color:var(--hh-muted) !important; }
a { color:var(--hh-text); }
a:hover { color:#fff; }
hr { border-color:var(--hh-line) !important; }

/* ---- Sidebar (.pcoded-navbar) ---- */
.pcoded-navbar { background:var(--hh-surface) !important; box-shadow:1px 0 0 var(--hh-line) !important; }
.pcoded-navbar .navbar-brand, .pcoded-navbar .header-logo { background:var(--hh-surface) !important; }
.pcoded-navbar .b-title { color:#fff !important; font-weight:600; }
.pcoded-navbar .b-bg { background:var(--hh-red) !important; box-shadow:none !important; }
.pcoded-navbar .pcoded-inner-navbar > li > a { color:var(--hh-muted) !important; }
.pcoded-navbar .pcoded-inner-navbar > li > a .pcoded-micon i { color:var(--hh-faint) !important; }
.pcoded-navbar .pcoded-inner-navbar li.nav-item:not(.pcoded-menu-caption) > a:hover { color:#fff !important; background:rgba(255,255,255,.03) !important; }
.pcoded-navbar .pcoded-inner-navbar li.nav-item:not(.pcoded-menu-caption) > a:hover .pcoded-micon i { color:#fff !important; }
.pcoded-navbar .pcoded-inner-navbar li.active > a,
.pcoded-navbar .pcoded-inner-navbar li.pcoded-trigger > a,
.pcoded-navbar .pcoded-inner-navbar li.active > a .pcoded-micon i { color:#fff !important; }
.pcoded-navbar .pcoded-inner-navbar li.active > a { background:rgba(224,22,58,.10) !important; }
.pcoded-navbar .pcoded-inner-navbar li.active > a:before,
.pcoded-navbar .pcoded-inner-navbar li.pcoded-trigger > a:before { background:var(--hh-red) !important; }
.pcoded-navbar .pcoded-menu-caption label, .pcoded-navbar .pcoded-menu-caption { color:var(--hh-faint) !important; }
.pcoded-navbar .pcoded-submenu { background:var(--hh-surface2) !important; }
.pcoded-navbar .pcoded-submenu > li > a { color:var(--hh-muted) !important; }
.pcoded-navbar .pcoded-submenu > li > a:hover, .pcoded-navbar .pcoded-submenu > li.active > a { color:#fff !important; }
.pcoded-navbar .pcoded-submenu > li > a:before { background:var(--hh-faint) !important; }
.pcoded-navbar .pcoded-badge, .pcoded-navbar .label-danger { background:var(--hh-red) !important; color:#fff !important; }

/* ---- Topbar (.pcoded-header) — Blau raus ---- */
.pcoded-header, .pcoded-header.header-blue, .header-blue .pcoded-header {
  background:var(--hh-surface) !important; box-shadow:0 1px 0 var(--hh-line) !important;
  color:var(--hh-text) !important; background-image:none !important;
}
.pcoded-header .m-header { background:var(--hh-surface) !important; }
.pcoded-header .b-title { color:#fff !important; }
.pcoded-header .navbar-nav .nav-link, .pcoded-header a, .pcoded-header .nav-link i { color:var(--hh-text) !important; }
.pcoded-header .navbar-nav .nav-link:hover { color:#fff !important; }
.pcoded-header .mobile-menu span, .pcoded-header .mobile-menu span:after, .pcoded-header .mobile-menu span:before { background:var(--hh-text) !important; }

/* ---- Karten ---- */
.card { background:var(--hh-surface) !important; border:1px solid var(--hh-line) !important; box-shadow:none !important; border-radius:10px !important; color:var(--hh-text) !important; }
.card .card-header { background:transparent !important; border-bottom:1px solid var(--hh-line) !important; }
.card .card-header h5, .card .card-header .card-header-text { color:#fff !important; }
.card .card-header h5:after { background:var(--hh-red) !important; }
.card .card-body { background:transparent !important; color:var(--hh-text) !important; }
.card .card-footer { background:transparent !important; border-top:1px solid var(--hh-line) !important; }

/* ---- Tabellen ---- */
.table, table.dataTable { color:var(--hh-text) !important; }
.table thead th, table.dataTable thead th { color:var(--hh-muted) !important; border-color:var(--hh-line) !important; border-bottom:1px solid var(--hh-line) !important; }
.table td, .table th, table.dataTable td, table.dataTable th { border-color:var(--hh-line) !important; }
.table-striped tbody tr:nth-of-type(odd) { background:var(--hh-surface2) !important; }
.table-hover tbody tr:hover { background:rgba(255,255,255,.035) !important; color:#fff !important; }

/* ---- Formulare ---- */
.form-control, .form-select, select, textarea, input[type=text], input[type=email], input[type=password], input[type=number], input[type=search], input[type=date] {
  background:var(--hh-surface2) !important; border:1px solid var(--hh-line) !important; color:#fff !important;
}
.form-control::placeholder { color:var(--hh-faint) !important; }
.form-control:focus, select:focus, textarea:focus { background:var(--hh-surface2) !important; border-color:var(--hh-red) !important; color:#fff !important; box-shadow:0 0 0 .15rem rgba(224,22,58,.25) !important; }
select option { background:var(--hh-surface); color:#fff; }
.input-group-text { background:var(--hh-surface2) !important; border:1px solid var(--hh-line) !important; color:var(--hh-muted) !important; }
.custom-control-label, .form-check-label { color:var(--hh-text) !important; }

/* ---- Buttons ---- */
.btn-primary { background:var(--hh-red) !important; border-color:var(--hh-red) !important; color:#fff !important; box-shadow:none !important; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background:var(--hh-red-d) !important; border-color:var(--hh-red-d) !important; color:#fff !important; }
.btn-outline-primary { color:var(--hh-red) !important; border-color:var(--hh-red) !important; }
.btn-outline-primary:hover { background:var(--hh-red) !important; color:#fff !important; }
.btn-secondary, .btn-light, .btn-default { background:var(--hh-surface2) !important; border:1px solid var(--hh-line) !important; color:var(--hh-text) !important; }
.btn-link { color:var(--hh-red) !important; }

/* ---- Badges / Labels / Alerts ---- */
.badge-primary, .label-primary { background:var(--hh-red) !important; }
.badge-danger, .label-danger { background:var(--hh-red) !important; color:#fff !important; }
.alert { background:var(--hh-surface2) !important; border:1px solid var(--hh-line) !important; color:var(--hh-text) !important; border-left:3px solid var(--hh-red) !important; }
.alert-success { border-left-color:#3ddc84 !important; }
.alert-danger  { border-left-color:#ff5c7a !important; }
.alert-warning { border-left-color:#f5b301 !important; }

/* ---- Dropdowns / Modals ---- */
.dropdown-menu { background:var(--hh-surface) !important; border:1px solid var(--hh-line) !important; }
.dropdown-item { color:var(--hh-text) !important; }
.dropdown-item:hover { background:rgba(255,255,255,.05) !important; color:#fff !important; }
.modal-content { background:var(--hh-surface) !important; border:1px solid var(--hh-line) !important; color:var(--hh-text) !important; }
.modal-header, .modal-footer { border-color:var(--hh-line) !important; }

/* ---- Login (.auth-wrapper) ---- */
.auth-wrapper { background:var(--hh-bg) !important; }
.auth-wrapper .card { background:var(--hh-surface) !important; border:1px solid var(--hh-line) !important; }
.auth-wrapper .card h3, .auth-wrapper .card h1, .auth-wrapper .card .card-body h1 { color:#fff !important; }
/* Deko-Kreise von Teal/Lila -> dezent dunkelrot */
.auth-wrapper .r-3, .auth-wrapper .l-3, .auth-wrapper [class*="auth-side"], .auth-wrapper .auth-bg .r, .auth-wrapper .auth-bg .l { background:rgba(224,22,58,.10) !important; }
.auth-wrapper .auth-bg .r.s, .auth-wrapper .auth-bg .l.s { background:var(--hh-red) !important; opacity:.5; }

/* ---- Chrome-Autofill nicht hell werden lassen ---- */
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus,
textarea:-webkit-autofill, select:-webkit-autofill {
  -webkit-text-fill-color:#fff !important;
  -webkit-box-shadow:0 0 0 1000px var(--hh-surface2) inset !important;
  caret-color:#fff !important;
}

/* ---- Sidebar-Dropdown-Pfeil: Feather-Webfont fehlt -> FontAwesome-Chevron ---- */
.pcoded-navbar .pcoded-hasmenu > a:after {
  content: "\f054" !important;                 /* fa-chevron-right */
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-size: 10px !important;
  color: var(--hh-faint) !important;
}
.pcoded-navbar .pcoded-hasmenu.pcoded-trigger > a:after,
.pcoded-navbar .pcoded-hasmenu.active > a:after { color: var(--hh-text) !important; }
/* Tote "pct"-Font-Verbindungsglyphen der Submenus (auch nicht im Dump) ausblenden */
.pcoded-navbar .pcoded-hasmenu.active:before,
.pcoded-navbar .pcoded-hasmenu .pcoded-submenu:before,
.pcoded-navbar .pcoded-hasmenu .pcoded-submenu .pcoded-submenu:before { content: none !important; }

/* ---- Scrollbar ---- */
::-webkit-scrollbar { width:8px; height:8px; }
::-webkit-scrollbar-thumb { background:rgba(255,255,255,.14); border-radius:8px; }
::-webkit-scrollbar-track { background:transparent; }
