/* =========================================================
   Kontor Business IT — Brand-Theme für admin.kbit.de
   Navy #011e3d · Gold #f3b612 · Barlow
   ========================================================= */

:root {
    --kbit-navy: #011e3d;
    --kbit-navy-800: #06294d;
    --kbit-navy-700: #123a60;
    --kbit-navy-600: #1d4a72;
    --kbit-gold: #f3b612;
    --kbit-gold-soft: #ffd45e;
}

/* ---------- Brand-Lockup (Topbar) ---------- */
.kbit-brand {
    display: flex;
    align-items: center;
    gap: 0.7rem;
}

.kbit-brand__mark {
    height: 2.4rem;
    width: auto;
    flex: none;
}

.kbit-brand__text {
    display: flex;
    flex-direction: column;
    line-height: 1;
}

.kbit-brand__name {
    font-family: 'Barlow', sans-serif;
    font-weight: 700;
    font-size: 1.3rem;
    letter-spacing: 0.2em;
    color: var(--kbit-navy);
}

.kbit-brand__sub {
    font-family: 'Barlow', sans-serif;
    font-weight: 600;
    font-size: 0.68rem;
    letter-spacing: 0.14em;
    color: var(--kbit-gold);
    margin-top: 3px;
}

/* ---------- Sidebar: Marineblau ---------- */
.fi-sidebar,
.fi-sidebar .fi-sidebar-nav {
    background-color: var(--kbit-navy) !important;
    border-color: var(--kbit-navy-700) !important;
}

.fi-sidebar-header {
    background-color: var(--kbit-navy) !important;
    border-color: var(--kbit-navy-700) !important;
    box-shadow: none !important;
}

/* Gruppen-Label */
.fi-sidebar-group-label {
    color: var(--kbit-gold) !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.9;
}

/* Nav-Items */
.fi-sidebar-item-button {
    color: rgba(255, 255, 255, 0.78) !important;
    border-radius: 0.6rem;
    font-weight: 500;
}

.fi-sidebar-item-button .fi-sidebar-item-icon {
    color: rgba(255, 255, 255, 0.6) !important;
}

.fi-sidebar-item-button:hover {
    background-color: var(--kbit-navy-600) !important;
    color: #fff !important;
}

.fi-sidebar-item-button:hover .fi-sidebar-item-icon {
    color: var(--kbit-gold) !important;
}

/* Aktiver Eintrag: Gold */
.fi-sidebar-item.fi-active .fi-sidebar-item-button,
.fi-sidebar-item-active .fi-sidebar-item-button {
    background-color: rgba(243, 182, 18, 0.14) !important;
    color: #fff !important;
    box-shadow: inset 3px 0 0 var(--kbit-gold);
}

.fi-sidebar-item.fi-active .fi-sidebar-item-icon,
.fi-sidebar-item-active .fi-sidebar-item-icon {
    color: var(--kbit-gold) !important;
}

/* Collapse-/Branding-Bereich Trenner */
.fi-sidebar .fi-sidebar-nav::-webkit-scrollbar-thumb {
    background: var(--kbit-navy-600);
}

/* ---------- Topbar ---------- */
.fi-topbar > nav {
    box-shadow: 0 1px 0 rgba(1, 30, 61, 0.08);
}

/* ---------- Responsive: Tabellen scrollen statt abschneiden ---------- */
.fi-ta-content-ctn {
    overflow-x: auto !important;
}

/* kein horizontaler Seiten-Overflow */
.fi-main,
.fi-page {
    max-width: 100%;
}

.fi-body {
    overflow-x: hidden;
}

/* ---------- Gefüllte Primär-Buttons in Gold (CTA wie kbit.de) ---------- */
.fi-btn.fi-color-primary[class*="fi-bg-color"] {
    background-color: var(--kbit-gold) !important;
    color: var(--kbit-navy) !important;
    box-shadow: 0 2px 6px -1px rgba(1, 30, 61, 0.18) !important;
}

.fi-btn.fi-color-primary[class*="fi-bg-color"]:hover {
    background-color: #ffc524 !important;
}

.fi-btn.fi-color-primary[class*="fi-bg-color"] .fi-btn-label,
.fi-btn.fi-color-primary[class*="fi-bg-color"] .fi-icon,
.fi-btn.fi-color-primary[class*="fi-bg-color"] svg {
    color: var(--kbit-navy) !important;
}

/* ---------- Dashboard: freie Netze je Subnetz ---------- */
.kbit-subnets {
    display: grid;
    gap: 1.1rem 1.5rem;
}

@media (min-width: 768px) {
    .kbit-subnets {
        grid-template-columns: 1fr 1fr;
    }
}

.kbit-subnet__head {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

.kbit-subnet__name {
    font-weight: 700;
    color: var(--kbit-navy);
    font-size: 0.95rem;
}

.kbit-subnet__loc {
    font-size: 0.7rem;
    color: #64748b;
    margin-right: auto;
}

.kbit-subnet__free {
    font-weight: 700;
    color: #0a7d33;
    font-size: 0.8rem;
    white-space: nowrap;
}

.kbit-subnet__bar {
    height: 8px;
    border-radius: 99px;
    background: #e6ecf3;
    overflow: hidden;
    margin: 0.45rem 0 0.3rem;
}

.kbit-subnet__fill {
    height: 100%;
    background: linear-gradient(90deg, var(--kbit-gold), #e09a00);
    border-radius: 99px;
    transition: width 0.4s ease;
}

.kbit-subnet__meta {
    font-size: 0.7rem;
    color: #64748b;
}

.kbit-subnet__empty {
    color: #64748b;
}

/* ---------- Login: Navy-Atmosphäre + Skyline ---------- */
.fi-simple-layout {
    background:
        radial-gradient(1200px 600px at 50% -10%, var(--kbit-navy-700) 0%, var(--kbit-navy) 55%, #00152c 100%) !important;
    position: relative;
    overflow: hidden;
}

/* Karte hervorheben */
.fi-simple-main {
    background-color: #fff !important;
    border-radius: 1rem !important;
    box-shadow:
        0 24px 60px -20px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(255, 255, 255, 0.06) !important;
    position: relative;
    z-index: 2;
}

/* Heading der Login-Karte in Navy */
.fi-simple-main .fi-simple-header-heading {
    color: var(--kbit-navy) !important;
    font-weight: 700;
    letter-spacing: 0.01em;
}

/* Login-CTA zusätzlich betonen */
.fi-simple-main .fi-ac .fi-btn {
    font-weight: 700 !important;
    box-shadow: 0 8px 20px -6px rgba(243, 182, 18, 0.55) !important;
}

/* Skyline-Silhouette unten */
.kbit-skyline {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 240px;
    z-index: 1;
    pointer-events: none;
    line-height: 0;
}

.kbit-skyline svg {
    width: 100%;
    height: 100%;
    display: block;
}
