/* Paperless-ngx — Hausdesign „Frosted Glass Dark" (siehe hausdesign-liquid-glass) */
:root, [data-bs-theme], [data-bs-theme="dark"], [data-bs-theme="light"] {
  color-scheme: dark;
  --bs-body-bg: #02060b; --bs-body-bg-rgb: 2,6,11;
  --bs-body-color: rgba(234,235,238,.98); --bs-body-color-rgb: 234,235,238;
  --bs-secondary-color: rgba(234,235,238,.72); --bs-tertiary-color: rgba(234,235,238,.55);
  --bs-emphasis-color: #fff;
  --bs-secondary-bg: rgba(255,255,255,.06); --bs-tertiary-bg: rgba(255,255,255,.04);
  --bs-border-color: rgba(90,111,128,.28); --bs-border-color-translucent: rgba(234,235,238,.22);
  --bs-link-color: #7aa2be; --bs-link-hover-color: #a9c4d8; --bs-link-color-rgb: 122,162,190; --bs-link-hover-color-rgb: 169,196,216;
  --bs-primary: #7aa2be; --bs-primary-rgb: 122,162,190;
  --bs-border-radius: 12px; --bs-border-radius-lg: 18px;
  --bs-font-sans-serif: Roboto, system-ui, -apple-system, "Segoe UI", sans-serif;
  --bs-card-bg: transparent; --bs-card-cap-bg: rgba(2,6,11,.18);
  --bs-list-group-bg: transparent; --bs-list-group-border-color: rgba(90,111,128,.28);
  --bs-table-bg: transparent; --bs-table-color: rgba(234,235,238,.98); --bs-table-border-color: rgba(90,111,128,.28);
  --bs-table-striped-bg: rgba(255,255,255,.025); --bs-table-hover-bg: rgba(122,162,190,.12);
  --bs-modal-bg: rgba(12,20,30,.72); --bs-dropdown-bg: rgba(12,20,30,.82);
  --bs-dropdown-link-hover-bg: rgba(122,162,190,.22); --bs-dropdown-link-color: rgba(234,235,238,.98);
  --bs-dropdown-border-color: rgba(234,235,238,.22);
  --bs-form-control-bg: rgba(12,20,30,.38);
}
html { background: #02060b !important; }
body { background: transparent !important; font-family: Roboto, system-ui, sans-serif !important; }
body::before {
  content: ""; position: fixed; inset: 0; z-index: -1;
  background: #02060b url("https://cdn.jsdelivr.net/gh/wessamlauf/homeassistant-frosted-glass-themes@refs/heads/main/themes/frosted-glass-dark-background.jpg") center / cover no-repeat;
}
pngx-root, main, .container-fluid, .row { background: transparent !important; }

/* Kopfleiste + Seitenleiste */
nav.navbar.bg-primary, nav.navbar {
  background: rgba(2,6,11,.1) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.3); backdrop-filter: blur(20px) saturate(1.3);
  border-bottom: .5px solid rgba(255,255,255,.12); box-shadow: none !important;
}
nav.sidebar, nav.sidebar.bg-light {
  background: rgba(2,6,11,.1) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.3); backdrop-filter: blur(20px) saturate(1.3);
  border-right: .5px solid rgba(255,255,255,.12); box-shadow: none !important;
}
.sidebar .nav-link { color: rgba(234,235,238,.85); border-radius: 14px; }
.sidebar .nav-link:hover { background: rgba(255,255,255,.07); }
.sidebar .nav-link.active { background: rgba(122,162,190,.22) !important; color: #fff !important; }
.sidebar .sidebar-heading { color: rgba(234,235,238,.55); }
.sidebar-heading, .sidebar-heading * { letter-spacing: .08em; }

/* Karten = Glas */
.card, .card.bg-light {
  background: rgba(12,20,30,.22) !important;
  -webkit-backdrop-filter: blur(10px) saturate(1.25); backdrop-filter: blur(10px) saturate(1.25);
  border: .5px solid rgba(234,235,238,.22) !important; border-radius: 18px !important;
  box-shadow:
    3px 3px .5px -3.5px rgba(255,255,255,.3) inset,
    -2px -2px .5px -2px rgba(255,255,255,.2) inset,
    0 0 8px 1px rgba(255,255,255,.06) inset,
    0 0 2px 0 rgba(0,0,0,.18), 0 14px 38px rgba(0,0,0,.34), 0 2px 10px rgba(0,0,0,.24) !important;
  overflow: hidden; color: rgba(234,235,238,.98);
}
.card-header { background: rgba(2,6,11,.18) !important; border-bottom: .5px solid rgba(90,111,128,.28) !important; }
.card .list-group-item, .list-group-item { background: transparent !important; color: rgba(234,235,238,.98); border-color: rgba(90,111,128,.28) !important; }
.list-group-item-action:hover { background: rgba(122,162,190,.12) !important; }
.card-footer { background: transparent !important; border-top: .5px solid rgba(90,111,128,.28) !important; }

/* Überschriften/Text */
h1, h2, h3, h4, h5, .h1, .h2, .h3, .h4, .h5 { color: rgba(234,235,238,.98) !important; font-weight: 400; }
.text-muted, .text-body-secondary, small { color: rgba(234,235,238,.72) !important; }
.alert-primary, .card .text-primary, .text-primary { color: #7aa2be !important; }

/* Buttons = Pillen */
.btn { border-radius: 999px; }
.btn-primary { background: rgba(122,162,190,.3) !important; border-color: rgba(122,162,190,.45) !important; color: #eaebee !important; box-shadow: none !important; }
.btn-primary:hover { background: rgba(122,162,190,.45) !important; }
.btn-outline-primary { color: #7aa2be !important; border-color: rgba(122,162,190,.5) !important; }
.btn-outline-primary:hover, .btn-check:checked + .btn-outline-primary { background: rgba(122,162,190,.3) !important; color: #fff !important; }
.btn-secondary, .btn-outline-secondary, .btn-light, .btn-outline-dark { background: rgba(255,255,255,.09) !important; border-color: rgba(234,235,238,.18) !important; color: rgba(234,235,238,.95) !important; }
.btn-secondary:hover, .btn-outline-secondary:hover, .btn-light:hover { background: rgba(122,162,190,.22) !important; }
.btn-group > .btn:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }
.btn-group > .btn:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }

/* Eingabefelder */
.form-control, .form-select, .input-group-text, .ng-select .ng-select-container, .ng-dropdown-panel, .dropdown-menu {
  background-color: rgba(12,20,30,.38) !important; color: rgba(234,235,238,.98) !important;
  border: .5px solid rgba(234,235,238,.22) !important; border-radius: 12px;
}
nav.navbar .form-control, nav.navbar .input-group-text { border-radius: 999px; background-color: rgba(12,20,30,.38) !important; }
.form-control:focus, .form-select:focus { border-color: #7aa2be !important; box-shadow: 0 0 0 .2rem rgba(122,162,190,.25) !important; }
.form-control::placeholder { color: rgba(234,235,238,.5); }
.dropdown-menu, .ng-dropdown-panel { background-color: rgba(12,20,30,.82) !important; -webkit-backdrop-filter: blur(24px) saturate(1.3); backdrop-filter: blur(24px) saturate(1.3); border-radius: 14px; }
.dropdown-item { color: rgba(234,235,238,.95) !important; }
.dropdown-item:hover, .dropdown-item:focus, .ng-option-marked { background: rgba(122,162,190,.22) !important; }

/* Tabellen */
.table { --bs-table-bg: transparent; color: rgba(234,235,238,.98); }
.table > :not(caption) > * > * { background-color: transparent !important; border-color: rgba(90,111,128,.28) !important; color: inherit; }
.table-hover > tbody > tr:hover > * { background-color: rgba(122,162,190,.12) !important; }
.table thead th { color: rgba(234,235,238,.72); font-weight: 500; }

/* Modals / Tabs / Pagination / Badges */
.modal-content { background: rgba(12,20,30,.72) !important; -webkit-backdrop-filter: blur(24px) saturate(1.3); backdrop-filter: blur(24px) saturate(1.3); border: .5px solid rgba(234,235,238,.22) !important; border-radius: 18px !important; color: rgba(234,235,238,.98); }
.modal-header, .modal-footer { border-color: rgba(90,111,128,.28) !important; }
.modal-backdrop { --bs-backdrop-bg: #02060b; --bs-backdrop-opacity: .6; }
.nav-tabs { border-bottom-color: rgba(90,111,128,.28); }
.nav-tabs .nav-link { color: rgba(234,235,238,.72); border-radius: 12px 12px 0 0; }
.nav-tabs .nav-link.active { background: rgba(122,162,190,.18) !important; color: #fff !important; border-color: rgba(234,235,238,.22) rgba(234,235,238,.22) transparent !important; }
.page-link { background: rgba(255,255,255,.07) !important; border-color: rgba(234,235,238,.18) !important; color: rgba(234,235,238,.95) !important; }
.page-item.active .page-link { background: rgba(122,162,190,.35) !important; color: #fff !important; }
.progress { background: rgba(90,111,128,.35); }
.progress-bar { background-color: #7aa2be !important; }
.alert { background: rgba(12,20,30,.4) !important; border: .5px solid rgba(234,235,238,.22) !important; border-radius: 14px; color: rgba(234,235,238,.98); }
.toast { background: rgba(12,20,30,.72) !important; -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); border-radius: 14px; }
* { scrollbar-color: rgba(122,162,190,.35) transparent; }

/* Paperless-eigene Variablen: Primärfarbe (Hue 205, gedecktes Stahlblau) + Flächen */
html body:not(#_), html body:not(#_) .navbar.bg-primary {
  --pngx-primary: 205, 30%; --pngx-primary-lightness: 46%;
  --pngx-bg-alt: rgba(12,20,30,.35); --pngx-bg-alt2: rgba(255,255,255,.05);
  --pngx-bg-darker: rgba(2,6,11,.25); --pngx-bg-disabled: rgba(255,255,255,.04);
  --pngx-primary-faded: rgba(122,162,190,.18);
  --pngx-body-color-accent: rgba(234,235,238,.8);
}
.badge.bg-primary { background-color: rgba(122,162,190,.35) !important; color: #eaebee !important; }
.dropdown-item { --pngx-bg-darker: transparent; }
.btn-success { background: rgba(122,162,190,.3) !important; border-color: rgba(122,162,190,.45) !important; color: #eaebee !important; box-shadow: none !important; }
.btn-success:hover { background: rgba(122,162,190,.45) !important; }
.btn-success:disabled, .btn-success.disabled { opacity: .45; }
