/* AMS - Xamu Agents Platform */
:root {
    --indigo:        #5458f7;
    --indigo-hover:  #4448d8;
    --indigo-light:  #eef0ff;
    --indigo-mid:    rgba(84,88,247,0.12);
    --gold:          #c99a2e;
    --cyan:          #0891b2;
    --sidebar-width: 280px;
    --sidebar-bg:    #111827;
    --sidebar-hover: rgba(255,255,255,0.06);
    --sidebar-active: rgba(84,88,247,0.18);
    --body-bg:       #111827;
    --card-bg:       #ffffff;
    --border-color:  #dfe5ee;
    --text-main:     #172033;
    --text-muted:    #64748b;
    --text-light:    #94a3b8;
    --shadow-sm:     0 1px 2px rgba(15,23,42,0.05);
    --shadow-md:     0 12px 28px rgba(15,23,42,0.08);
    --radius-sm:     8px;
    --radius-md:     12px;
    --radius-lg:     16px;
}

/* ─── Basis ─── */
*, *::before, *::after { box-sizing: border-box; }

body {
    background-color: var(--body-bg);
    background-image:
        radial-gradient(circle at 15% 0%, rgba(84,88,247,0.18), transparent 28rem),
        radial-gradient(circle at 86% 8%, rgba(8,145,178,0.12), transparent 24rem),
        linear-gradient(180deg, #111827 0%, #0f172a 100%);
    color: var(--text-main);
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 0.9rem;
}
body:has(.login-wrapper) {
    background:#0f172a;
    background-image:none;
}

/* ─── Layout ─── */
#wrapper { min-height: 100vh; }
#page-content-wrapper { min-height: 100vh; overflow-x: hidden; }

/* ─── Sidebar ─── */
#sidebar-wrapper {
    width: var(--sidebar-width);
    min-height: 100vh;
    background: var(--sidebar-bg);
    transition: width 0.25s ease;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    border-right: 1px solid rgba(255,255,255,0.08);
}
#sidebar-wrapper.toggled { width: 0; overflow: hidden; }

/* Brand */
.sidebar-brand {
    min-height: 64px;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
.brand-icon {
    width: 36px; height: 36px;
    background: linear-gradient(135deg, var(--indigo), var(--gold));
    border-radius: 9px;
    display: flex; align-items: center; justify-content: center;
    color: #fff;
    box-shadow: 0 10px 24px rgba(84,88,247,0.22);
}
.sidebar-brand-subtitle,
.sidebar-user-role { color: rgba(255,255,255,0.55); font-size: 0.7rem; }
.sidebar-search,
.ams-command {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 36px;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 9px;
    background: rgba(255,255,255,0.045);
    color: rgba(255,255,255,0.55);
    padding: 0 0.7rem;
}
.sidebar-search input,
.ams-command input {
    min-width: 0;
    flex: 1;
    border: 0;
    outline: 0;
    background: transparent;
    color: inherit;
    font-size: 0.78rem;
}
.sidebar-search input::placeholder,
.ams-command input::placeholder { color: rgba(255,255,255,0.42); }
.sidebar-nav { overflow-y: auto; }

/* Nav Links */
#sidebar-wrapper .nav-link {
    color: rgba(255,255,255,0.82);
    border-radius: 8px;
    padding: 0.56rem 0.75rem;
    font-size: 0.82rem;
    transition: all 0.15s;
    margin-bottom: 2px;
    font-weight: 500;
    display: flex;
    align-items: center;
}
#sidebar-wrapper .nav-link i { font-size: 0.9rem; width: 1.2rem; color: rgba(255,255,255,0.6); }
#sidebar-wrapper .nav-link:hover {
    color: #ffffff;
    background: var(--sidebar-hover);
}
#sidebar-wrapper .nav-link:hover i { color: var(--gold); }
#sidebar-wrapper .nav-link.active {
    color: #ffffff;
    background: var(--sidebar-active);
    font-weight: 600;
    box-shadow: inset 3px 0 0 var(--gold);
}
#sidebar-wrapper .nav-link.active i { color: var(--gold); }
.nav-section-label {
    color: var(--gold) !important;
    font-size: 0.6rem !important;
    letter-spacing: .12em;
    font-weight: 700 !important;
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
}

/* External links arrow */
#sidebar-wrapper .nav-link .bi-box-arrow-up-right { opacity: 0.3; transition: opacity 0.15s; }
#sidebar-wrapper .nav-link:hover .bi-box-arrow-up-right { opacity: 0.6; }
.nav-external-icon { font-size:0.65rem; opacity:0.4; }
.nav-item.is-hidden,
.nav-section-label.is-hidden { display: none; }

/* User Avatar unten */
.user-avatar {
    width: 32px; height: 32px;
    background: linear-gradient(135deg, var(--indigo), var(--cyan));
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: 0.8rem; color: #fff;
    flex-shrink: 0;
}
.sidebar-user-action { font-size:0.75rem; }

/* ─── Top Navbar ─── */
.navbar,
.ams-topbar {
    min-height: 64px;
    background: rgba(255,255,255,0.88) !important;
    backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--border-color) !important;
    box-shadow: var(--shadow-sm);
}
.navbar .navbar-text { color: var(--text-main) !important; font-weight: 600; }
.navbar .text-secondary { color: var(--text-muted) !important; }
#sidebarToggle { color: var(--text-muted); border-color: var(--border-color); }
#sidebarToggle:hover { color: var(--text-main); background: var(--body-bg); }
.ams-topbar-title { display:flex; flex-direction:column; line-height:1.2; }
.ams-topbar-subtitle { color:var(--text-muted); font-size:0.72rem; margin-top:2px; }
.ams-command {
    width: 260px;
    background: #f8fafc;
    border-color: var(--border-color);
    color: var(--text-muted);
}
.ams-command input::placeholder { color: var(--text-light); }
.ams-user-chip {
    display:inline-flex;
    align-items:center;
    color:var(--text-muted);
    font-size:0.8rem;
    white-space:nowrap;
}
.ams-icon-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    padding:0;
    border-radius:9px;
}
.ams-impersonation-banner {
    background:linear-gradient(90deg,#f59e0b,#f97316);
    color:#000;
    padding:8px 20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:1rem;
    font-size:13px;
    font-weight:600;
}

/* ─── Cards ─── */
.card {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
}
.card-header {
    background: #f8fafc;
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-main);
    padding: 0.85rem 1.25rem;
    font-size: 0.875rem;
    border-radius: var(--radius-md) var(--radius-md) 0 0 !important;
}
.card-body { padding: 1.25rem; }

/* ─── Stat Cards ─── */
.stat-card {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    padding: 1.25rem;
    display: flex; align-items: center; gap: 1rem;
    box-shadow: var(--shadow-sm);
    min-height: 94px;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.stat-card:hover { transform: translateY(-1px); box-shadow: var(--shadow-md); border-color: rgba(84,88,247,0.24); }
.stat-icon {
    width: 48px; height: 48px;
    border-radius: 11px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
}
.stat-icon.indigo  { background: #eef2ff; color: var(--indigo); }
.stat-icon.green   { background: #f0fdf4; color: #16a34a; }
.stat-icon.yellow  { background: #fefce8; color: #ca8a04; }
.stat-icon.blue    { background: #eff6ff; color: #2563eb; }
.stat-icon.red     { background: #fef2f2; color: #dc2626; }
.stat-icon.purple  { background: rgba(139,92,246,0.12); color: #8b5cf6; }
.stat-value { font-size: 1.45rem; font-weight: 700; color: var(--text-main); line-height: 1.2; }
.stat-label { font-size: 0.78rem; color: var(--text-muted); margin-top: 2px; }

/* ─── Tables ─── */
.table {
    color: var(--text-main);
    --bs-table-bg: transparent;
    --bs-table-striped-bg: #f8fafc;
    --bs-table-hover-bg: #f1f5f9;
    --bs-table-border-color: #e9eef4;
    margin-bottom: 0;
}
.table thead th {
    color: var(--text-muted);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
    background: #f8fafc;
    border-bottom: 1px solid var(--border-color);
    padding: 0.7rem 1rem;
    white-space: nowrap;
}
.table td {
    padding: 0.75rem 1rem;
    vertical-align: middle;
    border-color: #e9eef4;
    color: var(--text-main);
}
.table tbody tr:last-child td { border-bottom: none; }
.table tfoot td {
    border-top: 2px solid var(--border-color);
    font-weight: 600;
    background: #f8fafc;
    padding: 0.75rem 1rem;
}
.table-responsive { border-radius: 0 0 10px 10px; }
.card > .table-responsive,
.card-body > .table-responsive {
    border-radius: 0 0 var(--radius-md) var(--radius-md);
}
.table-hover tbody tr {
    transition: background .14s ease, transform .14s ease;
}
.table-hover tbody tr:hover td {
    background: rgba(84,88,247,0.035);
}
.table td:first-child,
.table th:first-child { padding-left: 1.15rem; }
.table td:last-child,
.table th:last-child { padding-right: 1.15rem; }

/* Links in Tabellen */
.table a { color: var(--indigo); text-decoration: none; font-weight: 500; }
.table a:hover { color: var(--indigo-hover); text-decoration: underline; }

/* ─── Forms ─── */
.form-control, .form-select {
    background: #fff;
    border-color: var(--border-color);
    color: var(--text-main);
    font-size: 0.875rem;
    border-radius: 9px;
    min-height: 38px;
}
.form-control:focus, .form-select:focus {
    border-color: var(--indigo);
    color: var(--text-main);
    box-shadow: 0 0 0 3px rgba(79,70,229,0.1);
    background: #fff;
}
.form-control::placeholder { color: var(--text-light); }
.form-label { color: var(--text-main); font-size: 0.85rem; font-weight: 500; margin-bottom: 0.35rem; }
.form-text  { color: var(--text-muted); font-size: 0.78rem; }
.input-group-text {
    background: #f8fafc;
    border-color: var(--border-color);
    color: var(--text-muted);
    border-radius: 9px;
}
.form-select option { background: #fff; color: var(--text-main); }
.input-group .form-control,
.input-group .form-select { border-radius: 0 9px 9px 0; }
.input-group .input-group-text:first-child { border-radius: 9px 0 0 9px; }

/* ─── Buttons ─── */
.btn-indigo {
    background: var(--indigo);
    border-color: var(--indigo);
    color: var(--accent-ink, #fff);
    font-weight: 500;
}
.btn-indigo:hover, .btn-indigo:focus {
    background: var(--indigo-hover);
    border-color: var(--indigo-hover);
    color: var(--accent-ink, #fff);
}
.btn-outline-indigo {
    border-color: var(--indigo);
    color: var(--indigo);
}
.btn-outline-indigo:hover {
    background: var(--indigo);
    color: #fff;
}
.btn-outline-secondary {
    border-color: var(--border-color);
    color: var(--text-muted);
    background: #fff;
}
.btn-outline-secondary:hover {
    background: var(--body-bg);
    color: var(--text-main);
    border-color: #cbd5e1;
}
.btn {
    font-size: 0.85rem;
    border-radius: 9px;
    font-weight: 560;
}
.btn-sm { border-radius: 8px; }
.btn i { vertical-align: -0.08em; }

/* ─── Utility-Klassen ─── */
.bg-indigo { background-color: var(--indigo) !important; }
.text-indigo { color: var(--indigo) !important; }
.border-indigo { border-color: var(--indigo) !important; }

/* ─── Badges ─── */
.badge {
    font-size: 0.72rem;
    font-weight: 500;
    padding: 0.35em 0.65em;
    border-radius: 999px;
}
.badge.bg-warning  { color: #92400e; background-color: #fef3c7 !important; border: 1px solid #fde68a; }
.badge.bg-success  { color: #14532d; background-color: #dcfce7 !important; border: 1px solid #bbf7d0; }
.badge.bg-danger   { color: #7f1d1d; background-color: #fee2e2 !important; border: 1px solid #fecaca; }
.badge.bg-primary  { color: #1e3a8a; background-color: #dbeafe !important; border: 1px solid #bfdbfe; }
.badge.bg-secondary{ color: #374151; background-color: #f3f4f6 !important; border: 1px solid #e5e7eb; }
.badge.bg-indigo   { color: #fff; background-color: var(--indigo) !important; }
.badge.bg-info     { color: #0c4a6e; background-color: #e0f2fe !important; border: 1px solid #bae6fd; }

/* ─── Page Header ─── */
.page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: 1rem 1.15rem;
    border: 1px solid rgba(15,23,42,0.06);
    border-radius: var(--radius-lg);
    background:
        linear-gradient(135deg, rgba(255,255,255,0.98), rgba(255,255,255,0.9)),
        radial-gradient(circle at 100% 0%, rgba(84,88,247,0.10), transparent 16rem);
    box-shadow: var(--shadow-sm);
}
.page-header h1 {
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--text-main);
    margin: 0;
    display: flex;
    align-items: center;
    min-width: 0;
}
.page-header h1 i {
    display:inline-flex;
    width:34px;
    height:34px;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:var(--indigo-light);
    margin-right:.6rem !important;
}

/* ─── AMS v3 Dashboard / Shell primitives ─── */
.ams-page-intro {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:1rem;
    padding:1.15rem 1.25rem;
    border:1px solid rgba(84,88,247,0.12);
    border-radius:var(--radius-lg);
    background:
        linear-gradient(135deg, rgba(255,255,255,0.98), rgba(255,255,255,0.86)),
        radial-gradient(circle at 100% 0%, rgba(84,88,247,0.12), transparent 18rem);
    box-shadow:var(--shadow-sm);
}
.ams-page-title {
    margin:0;
    font-size:1.38rem;
    line-height:1.18;
    font-weight:760;
    letter-spacing:0;
}
.ams-page-meta {
    display:flex;
    align-items:center;
    gap:.45rem;
    color:var(--text-muted);
    font-size:.8rem;
    margin-top:.35rem;
}
.ams-actions { display:flex; gap:.55rem; flex-wrap:wrap; justify-content:flex-end; }
.ams-online-strip,
.ams-action-strip {
    border:1px solid rgba(15,23,42,0.06);
    border-radius:var(--radius-md);
    background:rgba(255,255,255,0.86);
    box-shadow:var(--shadow-sm);
}
.ams-online-strip { padding:.65rem .85rem; margin-bottom:1rem; }
.ams-action-strip { padding:.7rem .9rem; margin-bottom:1rem; }
.ams-kpi-grid { margin-bottom:1rem; }
.ams-kpi-card {
    position:relative;
    overflow:hidden;
}
.ams-kpi-card:before {
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:3px;
    background:transparent;
}
.ams-kpi-card.is-warning:before { background:#f59e0b; }
.ams-kpi-card.is-danger:before { background:#dc2626; }
.ams-module-card {
    border-radius:var(--radius-lg);
    overflow:hidden;
    border:1px solid transparent;
}
.ams-feature-link { display:block; color:inherit; text-decoration:none; }
.ams-feature-link:hover { color:inherit; }
.ams-feature-card {
    background:linear-gradient(135deg,#0e7490,#155e75);
    border-color:rgba(8,145,178,.28);
    color:#fff;
}
.ams-seo-card {
    background:linear-gradient(135deg,#17182a,#27223f);
    border-color:rgba(201,154,46,.35);
    color:#fff;
}
.ams-feature-icon {
    width:48px;
    height:48px;
    border-radius:12px;
    background:rgba(255,255,255,0.15);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}
.ams-compact-title { font-size:1rem; font-weight:700; }
.ams-compact-copy { opacity:.8; font-size:.8rem; }
.ams-seo-icon {
    width:32px;
    height:32px;
    border-radius:9px;
    background:rgba(201,154,46,0.16);
    color:var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}
.ams-seo-input {
    background:rgba(255,255,255,0.08) !important;
    border-color:rgba(201,154,46,0.42) !important;
    color:#fff !important;
}
.ams-seo-input::placeholder { color:rgba(255,255,255,.52); }
.btn-gold {
    background:var(--gold);
    border-color:var(--gold);
    color:#15120a;
    font-weight:700;
}
.btn-gold:hover { background:#d5aa45; border-color:#d5aa45; color:#15120a; }
.row-link { cursor:pointer; }
.row-link:hover td { background:rgba(84,88,247,0.035); }
.hover-lift { cursor:pointer; transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease; }
.hover-lift:hover { transform: translateY(-2px); box-shadow: var(--shadow-md) !important; }
.ams-mobile-actions { white-space: nowrap; }
.ams-cell-subject { max-width:200px; }
.ams-cell-subject-wide { max-width:250px; }
.ams-mini-button { font-size:0.75rem; }

/* ─── AMS Operations Cockpit ─── */
.ops-hero {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:1rem;
    align-items:end;
    margin-bottom:1rem;
    padding:1.35rem;
    border-radius:18px;
    border:1px solid rgba(15,23,42,0.12);
    background:
        radial-gradient(circle at 12% 18%, rgba(8,145,178,.34), transparent 18rem),
        radial-gradient(circle at 92% 0%, rgba(201,154,46,.24), transparent 16rem),
        linear-gradient(135deg, #101827 0%, #1b2440 48%, #233049 100%);
    box-shadow:0 22px 54px rgba(15,23,42,0.18);
    color:#fff;
}
.ops-eyebrow {
    display:inline-flex;
    align-items:center;
    margin-bottom:.45rem;
    color:#cbd5e1;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
}
.ops-hero h1 {
    margin:0;
    max-width:760px;
    font-size:1.7rem;
    line-height:1.14;
    font-weight:780;
}
.ops-hero-meta {
    display:flex;
    flex-wrap:wrap;
    gap:.8rem;
    margin-top:.7rem;
    color:#cbd5e1;
    font-size:.82rem;
}
.ops-hero-meta span { display:inline-flex; align-items:center; gap:.4rem; }
.ops-hero-actions { display:flex; flex-wrap:wrap; gap:.5rem; justify-content:flex-end; }
.ops-hero-actions .btn-outline-light {
    border-color:rgba(255,255,255,.24);
    color:#fff;
}
.ops-hero-actions .btn-outline-light:hover { background:rgba(255,255,255,.1); }

.ops-metric-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:.75rem;
    margin-bottom:1rem;
}
.ops-metric {
    min-height:116px;
    padding:1rem;
    border:1px solid rgba(148,163,184,.18);
    border-radius:14px;
    background:
        linear-gradient(180deg, rgba(27,37,56,.98), rgba(20,29,45,.96));
    color:#f8fafc;
    text-decoration:none;
    box-shadow:0 16px 34px rgba(15,23,42,.16);
    display:grid;
    grid-template-columns:auto 1fr;
    grid-template-areas:"icon value" "icon label";
    column-gap:.75rem;
    align-items:center;
    transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.ops-metric:before {
    content:"";
    grid-column:1 / -1;
    height:3px;
    margin:-1rem -1rem .8rem;
    border-radius:14px 14px 0 0;
    background:linear-gradient(90deg, var(--indigo), var(--cyan));
}
.ops-metric:hover {
    color:#fff;
    transform:translateY(-2px);
    box-shadow:var(--shadow-md);
    border-color:rgba(125,211,252,.28);
}
.ops-metric-icon {
    grid-area:icon;
    width:44px;
    height:44px;
    border-radius:11px;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#eef2ff,#e0f2fe);
    color:var(--indigo);
    font-size:1.15rem;
}
.ops-metric-value {
    grid-area:value;
    min-width:0;
    font-size:1.28rem;
    font-weight:780;
    line-height:1.15;
    overflow-wrap:anywhere;
    color:#fff;
}
.ops-metric-label {
    grid-area:label;
    color:#b8c4d6;
    font-size:.78rem;
}
.ops-metric.is-hot:before { background:linear-gradient(90deg,#dc2626,#f97316); }
.ops-metric.is-warn:before { background:linear-gradient(90deg,#f59e0b,#c99a2e); }
.ops-metric.is-good:before { background:linear-gradient(90deg,#16a34a,#0891b2); }
.ops-metric.is-hot .ops-metric-icon { background:linear-gradient(135deg,#fee2e2,#ffedd5); color:#dc2626; }
.ops-metric.is-warn .ops-metric-icon { background:linear-gradient(135deg,#fef3c7,#fff7ed); color:#ca8a04; }
.ops-metric.is-good .ops-metric-icon { background:linear-gradient(135deg,#dcfce7,#ecfeff); color:#16a34a; }

.ops-panel {
    border:1px solid rgba(148,163,184,.18);
    border-radius:16px;
    background:
        linear-gradient(180deg, rgba(30,41,59,.98), rgba(23,32,48,.96));
    box-shadow:0 18px 42px rgba(15,23,42,.18);
    padding:1rem;
    color:#f8fafc;
}
.ops-panel:has(.ops-task-list) {
    background:
        linear-gradient(180deg, rgba(31,42,62,.99), rgba(20,29,45,.97));
}
.ops-panel-head,
.ops-panel-subhead {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
}
.ops-panel-head { margin-bottom:.85rem; }
.ops-panel-kicker {
    display:block;
    margin-bottom:.15rem;
    color:#94a3b8;
    font-size:.68rem;
    font-weight:760;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.ops-panel h2 {
    margin:0;
    font-size:1.02rem;
    font-weight:760;
}
.ops-panel-subhead {
    padding-top:.9rem;
    border-top:1px solid rgba(148,163,184,.16);
    font-size:.82rem;
    font-weight:700;
}
.ops-panel-subhead a {
    font-weight:650;
    text-decoration:none;
}
.ops-task-list {
    display:grid;
    gap:.55rem;
}
.ops-task {
    display:flex;
    align-items:center;
    gap:.75rem;
    padding:.78rem;
    border:1px solid rgba(148,163,184,.16);
    border-radius:12px;
    color:#f8fafc;
    text-decoration:none;
    background:rgba(15,23,42,.36);
    box-shadow:0 8px 18px rgba(0,0,0,.12);
}
.ops-task:hover {
    color:#fff;
    border-color:rgba(125,211,252,.28);
    background:rgba(15,23,42,.5);
}
.ops-task-icon {
    width:38px;
    height:38px;
    border-radius:10px;
    display:grid;
    place-items:center;
    flex-shrink:0;
    background:linear-gradient(135deg,#eef2ff,#e0f2fe);
    color:var(--indigo);
}
.ops-task-copy { min-width:0; display:flex; flex-direction:column; }
.ops-task-copy strong { font-size:.88rem; }
.ops-task-copy small { color:#aab7ca; }
.ops-task.is-danger .ops-task-icon { background:#fee2e2; color:#dc2626; }
.ops-task.is-warning .ops-task-icon { background:#fef3c7; color:#ca8a04; }
.ops-task.is-gold .ops-task-icon { background:#fff7dc; color:var(--gold); }
.ops-task.is-success .ops-task-icon { background:#dcfce7; color:#16a34a; }

.ops-list {
    display:grid;
    gap:.35rem;
}
.ops-list-row {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:.75rem;
    align-items:center;
    padding:.68rem .7rem;
    border:1px solid transparent;
    border-radius:11px;
    color:#f8fafc;
    text-decoration:none;
}
.ops-list-row:hover {
    color:#fff;
    background:rgba(15,23,42,.46);
    border-color:rgba(148,163,184,.2);
    box-shadow:0 8px 18px rgba(0,0,0,.12);
}
.ops-list-title {
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-weight:600;
    font-size:.84rem;
}
.ops-list-date { color:#94a3b8; font-size:.76rem; }
.ops-empty {
    margin-top:.5rem;
    padding:1.2rem;
    border-radius:12px;
    background:rgba(15,23,42,.32);
    color:#aab7ca;
    text-align:center;
    font-size:.86rem;
}
.ops-empty i { color:#16a34a; margin-right:.35rem; }

.ops-launch-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:.55rem;
}
.ops-launch-grid a {
    min-height:78px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:.35rem;
    border:1px solid rgba(148,163,184,.16);
    border-radius:12px;
    background:
        linear-gradient(180deg, rgba(15,23,42,.42), rgba(15,23,42,.32));
    color:#f8fafc;
    text-decoration:none;
    font-weight:650;
    font-size:.78rem;
}
.ops-launch-grid a:nth-child(1) { background:linear-gradient(135deg,rgba(8,145,178,.26),rgba(15,23,42,.34)); }
.ops-launch-grid a:nth-child(2) { background:linear-gradient(135deg,rgba(84,88,247,.26),rgba(15,23,42,.34)); }
.ops-launch-grid a:nth-child(3) { background:linear-gradient(135deg,rgba(22,163,74,.22),rgba(15,23,42,.34)); }
.ops-launch-grid a:nth-child(4) { background:linear-gradient(135deg,rgba(201,154,46,.24),rgba(15,23,42,.34)); }
.ops-launch-grid a:hover {
    background:rgba(15,23,42,.5);
    border-color:rgba(125,211,252,.28);
    color:#fff;
}
.ops-launch-grid i {
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:rgba(255,255,255,.08);
    box-shadow:0 8px 18px rgba(0,0,0,.14);
    font-size:1.05rem;
    color:var(--indigo);
}
.ops-launch-grid a:nth-child(1) i { color:#0891b2; }
.ops-launch-grid a:nth-child(2) i { color:var(--indigo); }
.ops-launch-grid a:nth-child(3) i { color:#16a34a; }
.ops-launch-grid a:nth-child(4) i { color:#c27803; }
.ops-inline-search {
    min-height:42px;
    display:flex;
    align-items:center;
    gap:.55rem;
    border:1px solid rgba(148,163,184,.18);
    border-radius:12px;
    padding:.35rem .45rem .35rem .7rem;
    background:rgba(15,23,42,.34);
}
.ops-inline-search i { color:var(--gold); }
.ops-inline-search input {
    flex:1;
    min-width:0;
    border:0;
    outline:0;
    background:transparent;
    color:#f8fafc;
    font-size:.84rem;
}
.ops-inline-search input::placeholder { color:#94a3b8; }
.ops-inline-search button {
    border:0;
    border-radius:9px;
    padding:.42rem .7rem;
    background:var(--indigo);
    color:#fff;
    font-weight:700;
}
.ops-finance-strip {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.5rem;
}
.ops-finance-strip span {
    min-width:0;
    padding:.7rem;
    border-radius:11px;
    border:1px solid rgba(148,163,184,.16);
    background:
        linear-gradient(180deg, rgba(15,23,42,.42), rgba(15,23,42,.28));
    box-shadow:0 8px 18px rgba(0,0,0,.10);
}
.ops-finance-strip small {
    display:block;
    color:#94a3b8;
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.04em;
    font-weight:700;
}
.ops-finance-strip strong {
    display:block;
    margin-top:.2rem;
    font-size:.9rem;
    overflow-wrap:anywhere;
}

.nav-favorites {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:.35rem;
    padding:0 .25rem .35rem;
}
.nav-favorites a {
    height:36px;
    display:grid;
    place-items:center;
    border-radius:10px;
    color:rgba(255,255,255,.74);
    background:rgba(255,255,255,.045);
    text-decoration:none;
}
.nav-favorites a:hover,
.nav-favorites a.active {
    color:#fff;
    background:rgba(84,88,247,.34);
}
.nav-favorites a.active {
    box-shadow:inset 0 -2px 0 var(--gold);
}

@media (max-width: 1199.98px) {
    .ops-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767.98px) {
    .ops-hero { grid-template-columns:1fr; align-items:start; }
    .ops-hero-actions { justify-content:flex-start; }
    .ops-hero h1 { font-size:1.35rem; }
    .ops-metric-grid { grid-template-columns:1fr; }
    .ops-launch-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ops-finance-strip { grid-template-columns:1fr; }
    .ops-list-row { grid-template-columns:minmax(0,1fr) auto; }
    .ops-list-date { display:none; }
}

/* ─── Links ─── */
a { color: var(--indigo); }
a:hover { color: var(--indigo-hover); }

/* ─── Alerts ─── */
.alert { font-size: 0.875rem; border-radius: 8px; }
.alert-success { background: #f0fdf4; border-color: #86efac; color: #15803d; }
.alert-danger  { background: #fef2f2; border-color: #fca5a5; color: #dc2626; }
.alert-warning { background: #fffbeb; border-color: #fde68a; color: #b45309; }
.alert-info    { background: #eff6ff; border-color: #93c5fd; color: #1d4ed8; }
.btn-close { filter: none; opacity: 0.5; }
.btn-close:hover { opacity: 1; }

/* ─── HR Trennlinie ─── */
hr.border-secondary { border-color: var(--border-color) !important; }

/* ─── Provisions-Vorschau-Box ─── */
.provision-preview-box {
    background: var(--indigo-light);
    border: 1px solid #c7d2fe;
    border-radius: 8px;
    padding: 1rem 1.25rem;
}
.provision-preview-box h6 { color: var(--indigo); }

/* ─── Schrift-Hilfsklassen ─── */
.text-secondary { color: var(--text-muted) !important; }
.small { font-size: 0.8rem; }
.font-monospace { font-family: 'Consolas', 'Courier New', monospace; }

/* ─── Scrollbar in Sidebar ─── */
#sidebar-wrapper nav::-webkit-scrollbar { width: 4px; }
#sidebar-wrapper nav::-webkit-scrollbar-track { background: transparent; }
#sidebar-wrapper nav::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 4px; }

/* ─── Login Page ─── */
.login-wrapper {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    background:
        radial-gradient(circle at 12% 18%, rgba(84,88,247,.28), transparent 26rem),
        radial-gradient(circle at 88% 8%, rgba(201,154,46,.18), transparent 24rem),
        linear-gradient(135deg, #0d1220 0%, #111827 46%, #16162a 100%);
}
.login-shell {
    width: min(920px, 100%);
    display: grid;
    grid-template-columns: minmax(0,1fr) 410px;
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 24px;
    background: rgba(255,255,255,0.06);
    box-shadow: 0 32px 90px rgba(0,0,0,.32);
    overflow: hidden;
    backdrop-filter: blur(18px);
}
.login-side {
    min-height: 520px;
    padding: 2.4rem;
    color:#fff;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    background:
        linear-gradient(135deg, rgba(84,88,247,.25), rgba(8,145,178,.12)),
        radial-gradient(circle at 15% 18%, rgba(255,255,255,.14), transparent 18rem);
}
.login-mark {
    width: 54px;
    height: 54px;
    border-radius: 14px;
    display:grid;
    place-items:center;
    background: linear-gradient(135deg,var(--indigo),var(--gold));
    box-shadow: 0 18px 42px rgba(84,88,247,.32);
    font-size: 1.45rem;
}
.login-side h1 {
    font-size: 3.4rem;
    line-height: .9;
    font-weight: 820;
    letter-spacing: 0;
    margin: auto 0 1rem;
}
.login-side p {
    max-width: 390px;
    color: rgba(255,255,255,.72);
    font-size: .98rem;
    line-height: 1.65;
}
.login-proof {
    display:flex;
    gap:.55rem;
    flex-wrap:wrap;
}
.login-proof span {
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    padding:.42rem .62rem;
    border:1px solid rgba(255,255,255,.12);
    border-radius:999px;
    background:rgba(255,255,255,.08);
    color:rgba(255,255,255,.76);
    font-size:.74rem;
}
.login-card {
    width: 100%;
    background: rgba(255,255,255,.97);
    padding: 2.4rem;
    box-shadow: none;
}
.login-card-wide {
    max-width: 460px;
    border-radius: 22px;
    box-shadow: 0 32px 90px rgba(0,0,0,.32);
}
.login-card .form-label { color: var(--text-main); }
.login-card .form-control { border-color: #d1d5db; }
.login-logo {
    width: 56px; height: 56px;
    background: var(--indigo-light);
    border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 1.25rem;
}
.login-title {
    color: var(--text-main);
    text-align:center;
    font-size:1.35rem;
    font-weight:760;
    margin:0 0 .25rem;
}
.login-copy {
    color: var(--text-muted);
    text-align:center;
    font-size:.86rem;
}
.login-footer {
    margin-top: 1.5rem;
    text-align:center;
    color: var(--text-muted);
    font-size:.75rem;
}
.login-card .text-secondary { color: var(--text-muted) !important; }

/* ─── Responsive ─── */

/* Tablet & Mobile (<= 768px) */
@media (max-width: 768px) {

    /* Sidebar: Default versteckt, .toggled = sichtbar */
    #sidebar-wrapper {
        width: 0; overflow: hidden;
        position: fixed; z-index: 1050;
        top: 0; left: 0; bottom: 0;
        transition: width 0.25s ease;
    }
    #sidebar-wrapper.toggled { width: var(--sidebar-width) !important; box-shadow: 4px 0 20px rgba(0,0,0,0.3); }

    /* Sidebar-Overlay wenn offen */
    #sidebar-wrapper.toggled::after {
        content: ''; position: fixed;
        top: 0; left: var(--sidebar-width); right: 0; bottom: 0;
        background: rgba(0,0,0,0.4); z-index: 1040;
    }

    /* Navbar: Kompakt */
    .navbar { padding: 0.5rem !important; }
    .navbar-text { font-size: 0.8rem !important; }
    .navbar .badge { font-size: 0.6rem !important; }
    .ams-topbar { gap: 0.4rem; }
    .ams-topbar-subtitle { display:none; }
    .ams-user-chip { max-width: 140px; overflow:hidden; text-overflow:ellipsis; }

    /* Sidebar Toggle Button: Groesser fuer Touch */
    #sidebarToggle { width: 44px !important; height: 44px !important; padding: 8px !important; }

    /* Page Header: Vertikal stapeln */
    .page-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.75rem !important;
    }
    .page-header h1 { font-size: 1.1rem !important; }
    .page-header .btn { width: 100% !important; }
    .page-header > a, .page-header > div:last-child { width: 100% !important; }

    /* Stat Cards: Kompakter */
    .stat-card { padding: 0.85rem !important; gap: 0.75rem !important; }
    .stat-icon { width: 40px !important; height: 40px !important; font-size: 1rem !important; }
    .stat-value { font-size: 1.15rem !important; }
    .stat-label { font-size: 0.7rem !important; }

    /* Tabs: Vertikal als Buttons */
    .nav.nav-tabs {
        flex-wrap: wrap !important;
        gap: 0.35rem !important;
        border-bottom: none !important;
    }
    .nav.nav-tabs .nav-link {
        border-radius: 8px !important;
        border: 1px solid var(--border-color) !important;
        background: #f8fafc !important;
        font-size: 0.78rem !important;
        padding: 0.45rem 0.6rem !important;
        flex: 1 1 auto;
        text-align: center;
    }
    .nav.nav-tabs .nav-link.active {
        background: var(--indigo-light) !important;
        color: var(--indigo) !important;
        border-color: var(--indigo) !important;
    }

    /* Breadcrumb + Button-Group: Stapeln */
    .breadcrumb { font-size: 0.75rem !important; }
    .btn-group.btn-group-sm .btn { font-size: 0.72rem !important; padding: 0.3rem 0.5rem !important; }

    /* Tables: Horizontal scrollbar */
    .card-body > .table, .card > .table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .table { font-size: 0.78rem !important; }
    .table th, .table td { padding: 0.5rem 0.6rem !important; }

    /* Chat Container: Volle Hoehe */
    .chat-container { height: calc(100vh - 180px) !important; }

    /* Container Padding reduzieren */
    .container-fluid { padding: 1rem !important; }

    /* Accordion: Groessere Touch-Area */
    .accordion-button { padding: 0.75rem !important; font-size: 0.85rem !important; }
    .login-wrapper { padding: 1rem; align-items: stretch; }
    .login-shell { grid-template-columns: 1fr; border-radius: 18px; }
    .login-side { min-height: auto; padding: 1.4rem; }
    .login-side h1 { font-size: 2.3rem; margin: 1.5rem 0 .75rem; }
    .login-side p { font-size: .86rem; }
}

/* Smartphone klein (<= 480px) */
@media (max-width: 480px) {
    .login-card { padding: 1.5rem !important; }
    .login-card-wide { margin: 0.75rem !important; }
    .page-header h1 { font-size: 1rem !important; }
    .card-body { padding: 0.85rem !important; }
    .container-fluid { padding: 0.75rem 0.5rem !important; }
    .stat-card { flex-direction: column !important; text-align: center !important; }
    .stat-icon { margin: 0 auto 0.4rem !important; }
    .ams-page-intro { padding: 0.95rem; }
    .ams-actions { width:100%; justify-content:flex-start; }
}

/* ─── Global Graphite Theme: alle AMS-Seiten ─── */
body:not(:has(.login-wrapper)) {
    background-color:#111827;
    background-image:
        radial-gradient(circle at 12% 0%, rgba(84,88,247,.18), transparent 30rem),
        radial-gradient(circle at 88% 8%, rgba(8,145,178,.14), transparent 26rem),
        linear-gradient(180deg,#111827 0%,#0f172a 100%);
}
body:not(:has(.login-wrapper)) #page-content-wrapper {
    background:transparent;
}
body:not(:has(.login-wrapper)) .container-fluid {
    background:transparent;
}

.ams-topbar,
.navbar {
    background:rgba(22,32,48,.94) !important;
    border-bottom-color:rgba(148,163,184,.18) !important;
    box-shadow:0 14px 34px rgba(15,23,42,.16);
}
.navbar .navbar-text,
.ams-topbar .navbar-text { color:#f8fafc !important; }
.ams-topbar-subtitle,
.ams-user-chip,
.navbar .text-secondary { color:#aab7ca !important; }
.ams-command {
    background:rgba(15,23,42,.42);
    border-color:rgba(148,163,184,.2);
    color:#cbd5e1;
}
.ams-command input { color:#f8fafc; }
.ams-command input::placeholder { color:#94a3b8; }

.page-header,
.ams-page-intro,
.ams-online-strip,
.ams-action-strip,
.provision-preview-box {
    border-color:rgba(148,163,184,.18);
    background:
        linear-gradient(180deg, rgba(30,41,59,.97), rgba(24,34,51,.96));
    box-shadow:0 16px 38px rgba(15,23,42,.16);
    color:#f8fafc;
}
.page-header h1,
.ams-page-title,
.page-header .text-secondary,
.ams-page-meta,
.ams-action-strip .text-secondary,
.ams-online-strip .text-secondary {
    color:#f8fafc !important;
}
.page-header h1 i {
    background:rgba(125,211,252,.12);
    color:#7dd3fc;
}

.card,
.stat-card,
.modal-content,
.accordion-item,
.list-group-item {
    background:
        linear-gradient(180deg, rgba(30,41,59,.98), rgba(23,32,48,.96));
    border-color:rgba(148,163,184,.18);
    box-shadow:0 16px 38px rgba(15,23,42,.14);
    color:#f8fafc;
}
.card-header,
.modal-header,
.modal-footer,
.accordion-button {
    background:rgba(15,23,42,.30);
    border-color:rgba(148,163,184,.16);
    color:#f8fafc;
}
.card .text-secondary,
.card .text-muted,
.modal-content .text-secondary,
.modal-content .text-muted,
.accordion-item .text-secondary,
.accordion-item .text-muted,
.stat-label {
    color:#aab7ca !important;
}
.stat-value,
.card h1,
.card h2,
.card h3,
.card h4,
.card h5,
.card h6 {
    color:#f8fafc;
}
.stat-card:hover,
.card.hover-lift:hover {
    border-color:rgba(125,211,252,.28);
    box-shadow:0 20px 48px rgba(15,23,42,.22);
}

.table {
    color:#f8fafc;
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(15,23,42,.22);
    --bs-table-hover-bg: rgba(125,211,252,.08);
    --bs-table-border-color: rgba(148,163,184,.16);
}
.table thead th,
.table tfoot td {
    background:rgba(15,23,42,.32);
    color:#cbd5e1;
    border-color:rgba(148,163,184,.16);
}
.table td {
    color:#eef2f7;
    border-color:rgba(148,163,184,.14);
}
.table-hover tbody tr:hover td,
.row-link:hover td {
    background:rgba(125,211,252,.08);
}

.form-control,
.form-select,
.input-group-text {
    background:rgba(15,23,42,.34);
    border-color:rgba(148,163,184,.22);
    color:#f8fafc;
}
.form-control:focus,
.form-select:focus {
    background:rgba(15,23,42,.46);
    border-color:#7dd3fc;
    color:#fff;
    box-shadow:0 0 0 3px rgba(125,211,252,.14);
}
.form-control::placeholder { color:#94a3b8; }
.form-label,
.form-text { color:#cbd5e1; }
.form-select option { background:#172033; color:#f8fafc; }

.btn-outline-secondary {
    background:rgba(15,23,42,.24);
    border-color:rgba(148,163,184,.28);
    color:#cbd5e1;
}
.btn-outline-secondary:hover {
    background:rgba(125,211,252,.10);
    border-color:rgba(125,211,252,.35);
    color:#fff;
}
.nav.nav-tabs {
    border-bottom-color:rgba(148,163,184,.18);
}
.nav.nav-tabs .nav-link {
    color:#cbd5e1;
}
.nav.nav-tabs .nav-link.active {
    background:rgba(84,88,247,.18);
    border-color:rgba(125,211,252,.28);
    color:#fff;
}
.breadcrumb,
.breadcrumb-item,
.breadcrumb-item a {
    color:#aab7ca;
}
.dropdown-menu {
    background:#1e293b;
    border-color:rgba(148,163,184,.18);
    box-shadow:0 18px 44px rgba(15,23,42,.28);
}
.dropdown-item { color:#e2e8f0; }
.dropdown-item:hover { background:rgba(125,211,252,.10); color:#fff; }

.login-card {
    background:rgba(255,255,255,.97);
    color:var(--text-main);
}
.login-card .form-control {
    background:#fff;
    border-color:#d1d5db;
    color:var(--text-main);
}
.login-card .form-label { color:var(--text-main); }
.login-card .form-control::placeholder { color:var(--text-light); }

/* Dark-theme compatibility for Bootstrap utility backgrounds */
body:not(:has(.login-wrapper)) .bg-white,
body:not(:has(.login-wrapper)) .bg-light,
body:not(:has(.login-wrapper)) .bg-body,
body:not(:has(.login-wrapper)) .bg-body-tertiary,
body:not(:has(.login-wrapper)) .table-light,
body:not(:has(.login-wrapper)) .card-header.bg-white,
body:not(:has(.login-wrapper)) .card-header.bg-light,
body:not(:has(.login-wrapper)) .list-group-item.bg-white,
body:not(:has(.login-wrapper)) .list-group-item.bg-light {
    background:rgba(15,23,42,.34) !important;
    color:#f8fafc !important;
}
body:not(:has(.login-wrapper)) .text-dark,
body:not(:has(.login-wrapper)) .text-body,
body:not(:has(.login-wrapper)) .text-black,
body:not(:has(.login-wrapper)) .link-dark {
    color:#f8fafc !important;
}
body:not(:has(.login-wrapper)) .text-muted,
body:not(:has(.login-wrapper)) .text-secondary {
    color:#aab7ca !important;
}
body:not(:has(.login-wrapper)) .border,
body:not(:has(.login-wrapper)) .border-top,
body:not(:has(.login-wrapper)) .border-bottom,
body:not(:has(.login-wrapper)) .border-start,
body:not(:has(.login-wrapper)) .border-end,
body:not(:has(.login-wrapper)) .border-light {
    border-color:rgba(148,163,184,.18) !important;
}
body:not(:has(.login-wrapper)) .alert-light,
body:not(:has(.login-wrapper)) .alert-secondary {
    background:rgba(15,23,42,.36);
    border-color:rgba(148,163,184,.18);
    color:#e2e8f0;
}
body:not(:has(.login-wrapper)) .btn-close {
    filter:invert(1) grayscale(100%);
    opacity:.65;
}
body:not(:has(.login-wrapper)) .btn-close:hover { opacity:1; }

/* ─── Sales Pulse Palette Test: near-black + warm amber ─── */
body:not(:has(.login-wrapper)) {
    --indigo: #f59e2e;
    --indigo-hover: #ffad3d;
    --indigo-light: rgba(245,158,46,.13);
    --gold: #f6a531;
    --cyan: #34d399;
    --body-bg: #0f0f12;
    --card-bg: #191a20;
    --border-color: #2a2c34;
    --text-main: #f5f5f7;
    --text-muted: #a3a6af;
    --text-light: #737883;
    background-color:#0f0f12;
    background-image:
        radial-gradient(circle at 18% 0%, rgba(245,158,46,.10), transparent 28rem),
        linear-gradient(180deg,#111114 0%,#0b0b0d 100%);
    color:#f5f5f7;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper {
    background:#111114;
    border-right-color:#262831;
}
body:not(:has(.login-wrapper)) .sidebar-brand {
    border-bottom-color:#262831;
}
body:not(:has(.login-wrapper)) .brand-icon,
body:not(:has(.login-wrapper)) .user-avatar {
    background:linear-gradient(135deg,#f59e2e,#f6c453);
    color:#16110a;
    box-shadow:0 12px 28px rgba(245,158,46,.22);
}
body:not(:has(.login-wrapper)) .sidebar-search,
body:not(:has(.login-wrapper)) .ams-command {
    background:#18191e;
    border-color:#2a2c34;
    color:#a3a6af;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link {
    color:#d7d9df;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link i {
    color:#898d98;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link:hover {
    background:#1c1d23;
    color:#fff;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link:hover i,
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.active i {
    color:#f6a531;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.active {
    background:rgba(245,158,46,.15);
    box-shadow:inset 3px 0 0 #f6a531;
}
body:not(:has(.login-wrapper)) .nav-section-label {
    color:#f6a531 !important;
}
body:not(:has(.login-wrapper)) .nav-favorites a {
    background:#191a20;
    color:#b9bdc7;
}
body:not(:has(.login-wrapper)) .nav-favorites a:hover,
body:not(:has(.login-wrapper)) .nav-favorites a.active {
    background:rgba(245,158,46,.18);
    color:#fff;
}
body:not(:has(.login-wrapper)) .nav-favorites a.active {
    box-shadow:inset 0 -2px 0 #f6a531;
}

body:not(:has(.login-wrapper)) .ams-topbar,
body:not(:has(.login-wrapper)) .navbar {
    background:rgba(17,17,20,.96) !important;
    border-bottom-color:#292b33 !important;
    box-shadow:0 14px 34px rgba(0,0,0,.24);
}

body:not(:has(.login-wrapper)) .ops-hero {
    background:
        radial-gradient(circle at 14% 0%, rgba(245,158,46,.17), transparent 18rem),
        linear-gradient(135deg,#131316 0%,#15161b 55%,#111114 100%);
    border-color:#2a2c34;
    box-shadow:0 26px 60px rgba(0,0,0,.34);
}
body:not(:has(.login-wrapper)) .ops-eyebrow,
body:not(:has(.login-wrapper)) .ops-hero-meta {
    color:#a3a6af;
}
body:not(:has(.login-wrapper)) .ops-metric,
body:not(:has(.login-wrapper)) .ops-panel,
body:not(:has(.login-wrapper)) .card,
body:not(:has(.login-wrapper)) .stat-card,
body:not(:has(.login-wrapper)) .modal-content,
body:not(:has(.login-wrapper)) .accordion-item,
body:not(:has(.login-wrapper)) .list-group-item,
body:not(:has(.login-wrapper)) .page-header,
body:not(:has(.login-wrapper)) .ams-page-intro,
body:not(:has(.login-wrapper)) .ams-online-strip,
body:not(:has(.login-wrapper)) .ams-action-strip {
    background:linear-gradient(180deg,#1a1b20,#17181d);
    border-color:#2a2c34;
    color:#f5f5f7;
    box-shadow:0 16px 38px rgba(0,0,0,.20);
}
body:not(:has(.login-wrapper)) .ops-panel:has(.ops-task-list) {
    background:linear-gradient(180deg,#1b1c22,#17181d);
}
body:not(:has(.login-wrapper)) .card-header,
body:not(:has(.login-wrapper)) .modal-header,
body:not(:has(.login-wrapper)) .modal-footer,
body:not(:has(.login-wrapper)) .accordion-button {
    background:#202127;
    border-color:#2d3038;
    color:#f5f5f7;
}
body:not(:has(.login-wrapper)) .ops-metric:before {
    background:linear-gradient(90deg,#f59e2e,#f6c453);
}
body:not(:has(.login-wrapper)) .ops-metric-icon,
body:not(:has(.login-wrapper)) .stat-icon.indigo,
body:not(:has(.login-wrapper)) .page-header h1 i {
    background:rgba(245,158,46,.14);
    color:#f6a531;
}
body:not(:has(.login-wrapper)) .ops-metric.is-hot:before { background:linear-gradient(90deg,#ef4444,#f59e2e); }
body:not(:has(.login-wrapper)) .ops-metric.is-warn:before { background:linear-gradient(90deg,#f59e2e,#f6c453); }
body:not(:has(.login-wrapper)) .ops-metric.is-good:before { background:linear-gradient(90deg,#34d399,#f6c453); }
body:not(:has(.login-wrapper)) .ops-task,
body:not(:has(.login-wrapper)) .ops-list-row,
body:not(:has(.login-wrapper)) .ops-finance-strip span {
    background:#202127;
    border-color:#2c2e36;
    color:#f5f5f7;
}
body:not(:has(.login-wrapper)) .ops-task:hover,
body:not(:has(.login-wrapper)) .ops-list-row:hover,
body:not(:has(.login-wrapper)) .ops-launch-grid a:hover {
    background:#26272f;
    border-color:rgba(245,158,46,.34);
}
body:not(:has(.login-wrapper)) .ops-task-icon {
    background:rgba(245,158,46,.14);
    color:#f6a531;
}
body:not(:has(.login-wrapper)) .ops-launch-grid a {
    background:#202127 !important;
    border-color:#2c2e36;
    color:#f5f5f7;
}
body:not(:has(.login-wrapper)) .ops-launch-grid i {
    background:#17181d;
    color:#f6a531 !important;
}
body:not(:has(.login-wrapper)) .ops-inline-search,
body:not(:has(.login-wrapper)) .form-control,
body:not(:has(.login-wrapper)) .form-select,
body:not(:has(.login-wrapper)) .input-group-text {
    background:#202127;
    border-color:#30323b;
    color:#f5f5f7;
}
body:not(:has(.login-wrapper)) .form-control:focus,
body:not(:has(.login-wrapper)) .form-select:focus {
    background:#24262d;
    border-color:#f6a531;
    box-shadow:0 0 0 3px rgba(245,158,46,.16);
}
body:not(:has(.login-wrapper)) .table {
    --bs-table-striped-bg:#1d1e24;
    --bs-table-hover-bg:rgba(245,158,46,.07);
    --bs-table-border-color:#2a2c34;
}
body:not(:has(.login-wrapper)) .table thead th,
body:not(:has(.login-wrapper)) .table tfoot td {
    background:#202127;
    color:#b9bdc7;
}
body:not(:has(.login-wrapper)) .table td {
    color:#e7e9ee;
}
body:not(:has(.login-wrapper)) .btn-indigo,
body:not(:has(.login-wrapper)) .btn-gold {
    background:var(--indigo);
    border-color:var(--indigo);
    color:var(--accent-ink, #fff);
}
body:not(:has(.login-wrapper)) .btn-indigo:hover,
body:not(:has(.login-wrapper)) .btn-gold:hover {
    background:var(--indigo-hover);
    border-color:var(--indigo-hover);
    color:var(--accent-ink, #fff);
}
body:not(:has(.login-wrapper)) a,
body:not(:has(.login-wrapper)) .text-indigo {
    color:#f6a531 !important;
}

/* Sidebar readability pass: section colors and calmer density */
body:not(:has(.login-wrapper)) .sidebar-nav {
    padding-top:.75rem !important;
}
body:not(:has(.login-wrapper)) .sidebar-nav .nav {
    gap:.1rem;
}
body:not(:has(.login-wrapper)) .nav-section-label {
    display:flex;
    align-items:center;
    gap:.45rem;
    margin-top:1rem !important;
    margin-bottom:.35rem !important;
    padding-left:.65rem !important;
    font-size:.58rem !important;
    letter-spacing:.13em;
    opacity:.95;
}
body:not(:has(.login-wrapper)) .nav-section-label:before {
    content:"";
    width:7px;
    height:7px;
    border-radius:999px;
    background:currentColor;
    box-shadow:0 0 12px currentColor;
}
body:not(:has(.login-wrapper)) .nav-tone-amber { color:#f6a531 !important; }
body:not(:has(.login-wrapper)) .nav-tone-cyan { color:#22d3ee !important; }
body:not(:has(.login-wrapper)) .nav-tone-blue { color:#60a5fa !important; }
body:not(:has(.login-wrapper)) .nav-tone-green { color:#34d399 !important; }
body:not(:has(.login-wrapper)) .nav-tone-violet { color:#a78bfa !important; }
body:not(:has(.login-wrapper)) .nav-tone-red { color:#fb7185 !important; }

body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link {
    min-height:34px;
    padding:.46rem .62rem;
    margin-bottom:1px;
    border:1px solid transparent;
    font-size:.79rem;
    color:#c8ccd5;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link i {
    width:1.35rem;
    height:1.35rem;
    display:inline-grid;
    place-items:center;
    border-radius:7px;
    background:rgba(255,255,255,.035);
    font-size:.78rem;
    margin-right:.55rem !important;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-section-label.nav-tone-cyan ~ .nav-item .nav-link i { color:#22d3ee; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-section-label.nav-tone-blue ~ .nav-item .nav-link i { color:#60a5fa; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-section-label.nav-tone-green ~ .nav-item .nav-link i { color:#34d399; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-section-label.nav-tone-violet ~ .nav-item .nav-link i { color:#a78bfa; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-section-label.nav-tone-amber ~ .nav-item .nav-link i { color:#f6a531; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-section-label.nav-tone-red ~ .nav-item .nav-link i { color:#fb7185; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link:hover {
    border-color:#2c2e36;
    background:#1b1c22;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.active {
    background:rgba(245,158,46,.14);
    border-color:rgba(245,158,46,.22);
    box-shadow:none;
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.active i {
    background:rgba(245,158,46,.16);
}
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-cyan i { color:#22d3ee; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-blue i { color:#60a5fa; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-green i { color:#34d399; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-violet i { color:#a78bfa; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-amber i { color:#f6a531; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-red i { color:#fb7185; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-cyan.active { border-color:rgba(34,211,238,.28); background:rgba(34,211,238,.10); }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-blue.active { border-color:rgba(96,165,250,.28); background:rgba(96,165,250,.10); }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-green.active { border-color:rgba(52,211,153,.28); background:rgba(52,211,153,.10); }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-violet.active { border-color:rgba(167,139,250,.28); background:rgba(167,139,250,.10); }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-amber.active { border-color:rgba(246,165,49,.28); background:rgba(246,165,49,.12); }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-red.active { border-color:rgba(251,113,133,.28); background:rgba(251,113,133,.10); }

/* Top mega navigation test */
@media (min-width: 992px) {
    body.ams-topnav-mode #sidebar-wrapper,
    body:not(:has(.login-wrapper)) #sidebar-wrapper {
        display:none;
    }
    body.ams-topnav-mode #sidebarToggle,
    body:not(:has(.login-wrapper)) #sidebarToggle {
        display:none;
    }
    body.ams-topnav-mode #page-content-wrapper {
        width:100%;
    }
}
.ams-topnav {
    position:relative;
    z-index:2100;
    align-items:center;
    gap:.35rem;
    min-width:0;
}
.ams-topbar,
body:not(:has(.login-wrapper)) .ams-topbar,
body:not(:has(.login-wrapper)) .navbar {
    position:relative;
    z-index:2000;
}
.ams-mega-dropdown {
    position:relative;
    z-index:2110;
}
.ams-mega-dropdown.show {
    z-index:2300;
}
.ams-topnav-home,
.ams-topnav-trigger {
    min-height:36px;
    display:inline-flex;
    align-items:center;
    gap:.42rem;
    border:1px solid transparent;
    border-radius:10px;
    padding:.42rem .68rem;
    background:transparent;
    color:#d7d9df;
    text-decoration:none;
    font-size:.8rem;
    font-weight:680;
    white-space:nowrap;
}
.ams-topnav-home:hover,
.ams-topnav-home.active,
.ams-topnav-trigger:hover,
.ams-mega-dropdown.show .ams-topnav-trigger {
    background:#1f2027;
    border-color:#2d3038;
    color:#fff;
}
.ams-topnav-home i,
.ams-topnav-trigger i:first-child {
    color:#f6a531;
}
.ams-topnav-trigger.nav-link-blue i:first-child { color:#60a5fa; }
.ams-topnav-trigger.nav-link-green i:first-child { color:#34d399; }
.ams-topnav-trigger.nav-link-violet i:first-child { color:#a78bfa; }
.ams-topnav-trigger.nav-link-amber i:first-child { color:#f6a531; }
.ams-topnav-trigger.nav-link-red i:first-child { color:#fb7185; }
.ams-mega-menu {
    z-index:2400 !important;
    min-width:420px;
    max-width:min(560px, calc(100vw - 2rem));
    margin-top:.7rem !important;
    padding:.85rem;
    border-radius:16px;
    background:#17181d;
    border:1px solid #2a2c34;
    box-shadow:0 24px 70px rgba(0,0,0,.42);
}
.ams-mega-menu-sm { min-width:300px; }
.ams-mega-title {
    display:flex;
    align-items:center;
    gap:.5rem;
    margin-bottom:.65rem;
    padding:.1rem .15rem;
    color:#f5f5f7;
    font-size:.72rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.ams-mega-title.nav-link-blue i,
.ams-mega-item.nav-link-blue i { color:#60a5fa; }
.ams-mega-title.nav-link-green i,
.ams-mega-item.nav-link-green i { color:#34d399; }
.ams-mega-title.nav-link-violet i,
.ams-mega-item.nav-link-violet i { color:#a78bfa; }
.ams-mega-title.nav-link-amber i,
.ams-mega-item.nav-link-amber i { color:#f6a531; }
.ams-mega-title.nav-link-red i,
.ams-mega-item.nav-link-red i { color:#fb7185; }
.ams-mega-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.45rem;
}
.ams-mega-menu-sm .ams-mega-grid { grid-template-columns:1fr; }
.ams-mega-item {
    min-height:48px;
    display:flex;
    align-items:center;
    gap:.62rem;
    padding:.6rem .68rem;
    border:1px solid #252832;
    border-radius:12px;
    background:#1d1e24;
    color:#e7e9ee !important;
    text-decoration:none;
    font-size:.82rem;
    font-weight:650;
}
.ams-mega-item:hover {
    background:#25262d;
    border-color:rgba(245,158,46,.28);
    color:#fff !important;
}
.ams-mega-item i {
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    border-radius:8px;
    background:rgba(255,255,255,.045);
    flex-shrink:0;
}
@media (max-width: 1280px) {
    .ams-topnav {
        gap:.2rem;
        margin-left:.75rem !important;
    }
    .ams-topnav-home,
    .ams-topnav-trigger {
        padding:.4rem .52rem;
        font-size:.76rem;
    }
}
@media (max-width: 991.98px) {
    .ams-topnav { display:none !important; }
}


/* ===== FIX 24.06.2026: Login-Inputs lesbar (weisse Schrift auf weiss behoben) ===== */
.login-wrapper .form-control,
.login-card .form-control {
    color: #172033 !important;
    background: #ffffff !important;
    -webkit-text-fill-color: #172033 !important;
}
.login-wrapper .form-control::placeholder,
.login-card .form-control::placeholder {
    color: #6b7280 !important;
    -webkit-text-fill-color: #6b7280 !important;
}

/* ─── Navigations-Farbtöne für die Arbeitsfluss-Gruppen (15.08.2026) ───
   slate = Technik, teal = Vine. Muster übernommen von nav-link-violet.
   Werte explizit gesetzt, nichts geerbt (Weiss-auf-Weiss-Vorfall 16.07.2026). */
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-slate i { color:#94a3b8; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-teal i { color:#2dd4bf; }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-slate.active { border-color:rgba(148,163,184,.28); background:rgba(148,163,184,.10); }
body:not(:has(.login-wrapper)) #sidebar-wrapper .nav-link.nav-link-teal.active { border-color:rgba(45,212,191,.28); background:rgba(45,212,191,.10); }
.ams-topnav-trigger.nav-link-slate i:first-child { color:#94a3b8; }
.ams-topnav-trigger.nav-link-teal i:first-child { color:#2dd4bf; }
.ams-mega-title.nav-link-slate i,
.ams-mega-item.nav-link-slate i { color:#94a3b8; }
.ams-mega-title.nav-link-teal i,
.ams-mega-item.nav-link-teal i { color:#2dd4bf; }


/* ─── Lesbarkeit im Dunkelmodus (19.09.2026) ───────────────────────────────
   Ursache aller drei Punkte ist EINE Regel weiter oben:

       body:not(:has(.login-wrapper)) a { color:#f6a531 !important; }

   Sie trifft jedes <a>, auch solche, die eine eigene Flaeche tragen. Ein
   <a class="btn btn-indigo"> bekam dadurch amberne Schrift auf amberner
   Flaeche: 1.05:1, praktisch unsichtbar (gemeldet mit Bildschirmfoto,
   Knopf "Kunde erfassen"). Verwandt mit dem Weiss-auf-Weiss-Vorfall vom
   16.07.2026 - dieselbe Ursache, andere Farbe.

   Die Regel bleibt stehen, weil sie fuer normale Links auf dunklem Grund
   richtig ist (8.55:1 auf Karten). Korrigiert wird nur dort, wo sie auf eine
   eigene Flaeche trifft. Alle Werte unten sind nachgerechnet (WCAG 2.1,
   Grenze 4.5:1 fuer normalen Text).
   ────────────────────────────────────────────────────────────────────────── */

/* 1. Gefuellte Knoepfe: dunkle Schrift auf Amber.
      amber auf amber 1.05:1 -> weiss auf amber waere 2.14:1 (auch zu wenig)
      -> #17120a auf #f59e2e = 8.70:1 */
body:not(:has(.login-wrapper)) {
    --accent-ink: #17120a;
}
body:not(:has(.login-wrapper)) a.btn-indigo,
body:not(:has(.login-wrapper)) a.btn-gold,
body:not(:has(.login-wrapper)) a.btn-primary,
body:not(:has(.login-wrapper)) a.btn-warning,
body:not(:has(.login-wrapper)) a.btn-success,
body:not(:has(.login-wrapper)) a.btn-danger,
body:not(:has(.login-wrapper)) a.btn-info,
body:not(:has(.login-wrapper)) button.btn-indigo,
body:not(:has(.login-wrapper)) button.btn-gold {
    color: var(--accent-ink) !important;
}

/* 1b. Badges als Links. Ein <a class="badge bg-success"> ist genau derselbe
      Fall wie ein gefuellter Knopf: eigene Flaeche, amberne Schrift darauf
      (1.85:1). Beim Bau der Postfach-Liste am 19.09. aufgefallen - die Regel
      unter 1. zaehlt Knopfklassen auf und liess Badges aus.
      Dunkle Schrift fuer ALLE Toene: das AMS ueberschreibt Bootstraps Badges
      auf Pastell (bg-success ist #dcfce7, nicht #198754), und bg-indigo ist im
      Dunkelmodus amber. Alle hell - im Browser nachgemessen, nicht angenommen.
      Ein erster Anlauf mit weisser Schrift ergab 1.10:1, schlechter als der
      Fehler, den er beheben sollte. */
body:not(:has(.login-wrapper)) a.badge,
body:not(:has(.login-wrapper)) .badge a {
    color: #17120a !important;
}

/* 1c. Symbol-Knoepfe in Tabellenzeilen. .btn-link erbt Bootstraps Blau
      (#0d6efd, 4.25:1 auf der Karte) - erkennbar, aber blass, und Blau sagt
      hier nichts. Loeschen rot, Spam amber: die Farbe traegt dann die
      Bedeutung, nicht nur das Symbol. */
body:not(:has(.login-wrapper)) .btn-link.ams-weg {
    color: #ff7b85 !important;
}
body:not(:has(.login-wrapper)) .btn-link.ams-spam {
    color: #f6a531 !important;
}

/* 2. Links auf HELLEN Flaechen. Alerts, Dropdowns und die Blaetterleiste
      behalten Bootstraps helle Hintergruende - amber darauf ist 1.5-2.0:1.
      #8a4b00 schafft auf allen vier Alert-Toenen und auf Weiss mindestens
      5.09:1 und bleibt als Link erkennbar (dunkler waere ununterscheidbar
      von normalem Text). */
body:not(:has(.login-wrapper)) .alert a,
body:not(:has(.login-wrapper)) .pagination a,
body:not(:has(.login-wrapper)) .page-link {
    color: #8a4b00 !important;
}
/* Das Aufklappmenue steht NICHT in dieser Liste: sein Hintergrund ist #1e293b,
   also dunkel (im Browser nachgemessen, 19.09.). Amber ist dort richtig - eine
   dunkle Schrift waere die gleiche Unlesbarkeit noch einmal, nur andersherum. */

/* 3. Gedaempfter Text. Das Thema setzt --text-muted auf #a3a6af (7.13:1),
      aber Bootstraps Klassen .text-muted und .text-secondary bringen ihr
      eigenes #6c757d mit: 3.70:1 auf Karten - und sie stehen fast immer an
      kleiner Schrift ("small"), wo 4.5:1 gilt. Ausgenommen ist, was auf
      einer hellen Flaeche sitzt: dort ist dunkelgrau richtig. */
body:not(:has(.login-wrapper)) .text-muted,
body:not(:has(.login-wrapper)) .text-secondary {
    color: #a3a6af !important;
}
body:not(:has(.login-wrapper)) .alert .text-muted,
body:not(:has(.login-wrapper)) .alert .text-secondary {
    color: #5c6169 !important;
}

/* 4. Helle Flaechen mit .text-dark (23.09.2026, Stefan: Status "Ausstehend"
      im Paperless-Modul nicht lesbar). Die Regel oben macht .text-dark im
      Dunkelmodus WEISS (#f8fafc) - richtig auf Karten, falsch auf allem, was
      eine eigene helle Flaeche traegt: die Pastell-Badges (bg-warning #fef3c7,
      bg-info #e0f2fe) und Bootstraps bg-warning/bg-info. Gemessen im Browser
      auf allen 36 AMS-Seiten: 1.06:1 und 1.10:1. -> #17120a: ueber 16:1.
      Ausgenommen: bg-light/bg-white/bg-body (im Dunkelmodus dunkel umgefaerbt)
      und halbtransparente Flaechen (bg-opacity-*), die auf dunklem Grund liegen. */
body:not(:has(.login-wrapper)) .badge.text-dark:not(.bg-light):not(.bg-white):not(.bg-body):not(.bg-body-tertiary):not([class*="bg-opacity"]),
body:not(:has(.login-wrapper)) .bg-warning.text-dark:not([class*="bg-opacity"]),
body:not(:has(.login-wrapper)) .bg-info.text-dark:not([class*="bg-opacity"]) {
    color: var(--accent-ink) !important;
}

/* 5. Amberne Flaechen (bg-indigo ist im Dunkelmodus #f59e2e) mit weisser
      Schrift: 2.14:1 - "Admin (Vollzugriff)" oben auf jeder Seite, "Xamu
      Geschaeft" im Paperless-Modul, Kopfzeile "1-Klick Import" in Vine.
      Dieselbe Loesung wie bei den Knoepfen unter 1.: dunkle Tinte, 8.70:1. */
body:not(:has(.login-wrapper)) .badge.bg-indigo,
body:not(:has(.login-wrapper)) .bg-indigo.text-white,
body:not(:has(.login-wrapper)) .bg-indigo.text-white :is(h1,h2,h3,h4,h5,h6,small,span,strong,i,div,p):not(.badge):not(.btn) {
    color: var(--accent-ink) !important;
}

/* 6. Graue Knoepfe als Link: <a class="btn btn-secondary"> bekam das Amber
      aller Links auf Bootstraps Grau #6c757d = 2.31:1 ("Alle Kat." in den
      Ausgaben). Weiss auf #6c757d = 4.69:1. */
body:not(:has(.login-wrapper)) a.btn-secondary,
body:not(:has(.login-wrapper)) a.btn-dark {
    color: #fff !important;
}
