/*
 * ourOps — doplňky nad Bootstrap 5.3 (vzor ourShift; Bootstrap je vendorovaný
 * v public/vendor/). Jen značka a pár komponent, které Bootstrap nemá.
 *
 * Barva značky pochází ze soustavy rodiny ourApps (ourLib/branding, grafický
 * manuál na ourapps.cloud/brand) — ourOps je v ní purpurová #D946EF. Neměnit
 * ji tady zvlášť: škála je počítaná jako celek a odstíny jsou vyvážené proti
 * sobě, aby žádné dvě appky nebyly zaměnitelné.
 */

:root {
    --ops-brand: #D946EF;
    --ops-brand-2: #2c5282;
}

.text-brand { color: var(--ops-brand); }

.btn-brand {
    --bs-btn-bg: var(--ops-brand);
    --bs-btn-border-color: var(--ops-brand);
    --bs-btn-hover-bg: #C026D3;
    --bs-btn-hover-border-color: #C026D3;
    --bs-btn-active-bg: #A21CAF;
    --bs-btn-active-border-color: #A21CAF;
    --bs-btn-color: #fff;
    --bs-btn-hover-color: #fff;
    --bs-btn-active-color: #fff;
    --bs-btn-disabled-bg: var(--ops-brand);
    --bs-btn-disabled-border-color: var(--ops-brand);
    --bs-btn-disabled-color: #fff;
}

/* ── Odstín podle role ───────────────────────────────────────────────
   Správcovské položky (napojení na ourCIS) mají vlastní tlumený odstín,
   stejný jako v ourShiftu — kdo práva má, jinak nepozná, co ostatním
   v liště chybí. Barví se jen písmo, nikdy plocha. */
:root      { --role-admin: #B45309; }
[data-bs-theme="dark"] { --role-admin: #F0A868; }

.role-admin { --role-accent: var(--role-admin); }

.nav-link.role-admin {
    color: color-mix(in srgb, var(--role-accent) 78%, var(--bs-body-color));
}

.nav-link.role-admin:hover,
.nav-link.role-admin:focus,
.nav-link.role-admin.active {
    color: var(--role-accent);
}

/* Hranice mezi skupinami v liště (vlastní evidence × okno do ourCISu). */
.nav-divider {
    align-self: center;
    width: 1px;
    height: 1.25rem;
    margin: 0 .6rem;
    background: var(--bs-border-color);
}

/* Ve sbalené (mobilní) navigaci jde řada pod sebe — svislá čárka by tam
   nedávala smysl, tak z ní udělá vodorovnou. */
@media (max-width: 991.98px) {
    .nav-divider {
        width: 100%;
        height: 1px;
        margin: .45rem 0;
    }
}

.navbar-identity { display: flex; flex-direction: column; line-height: 1.15; }
.navbar-identity-name { white-space: nowrap; }

/* ── Komponenty přenesené z původního inline <style> ────────────────
   Sidebar zmizel, tohle zůstalo — používají to karty přehledu a hlavičky
   stránek. Barvy jdou z Bootstrapu, aby fungoval tmavý motiv. */
.card { border: none; box-shadow: 0 1px 3px rgba(0, 0, 0, .1); }

.card-stat { border-left: 4px solid var(--ops-brand); }
.card-stat .stat-value { font-size: 2rem; font-weight: 700; }
.card-stat .stat-label {
    color: var(--bs-secondary-color);
    font-size: .875rem;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.page-header { margin-bottom: 1.5rem; }
.page-header h1 { font-weight: 600; }

.tenant-badge {
    display: inline-flex;
    align-items: center;
    padding: .25rem .75rem;
    border-radius: 9999px;
    font-size: .875rem;
    font-weight: 500;
}

.tenant-badge.connected    { background-color: #c6f6d5; color: #22543d; }
.tenant-badge.disconnected { background-color: #fed7d7; color: #742a2a; }

[data-bs-theme="dark"] .tenant-badge.connected    { background-color: #22543d; color: #c6f6d5; }
[data-bs-theme="dark"] .tenant-badge.disconnected { background-color: #742a2a; color: #fed7d7; }
