/* Dashboard Linea Radio — personalizzazioni sopra Bootstrap 5 (tema scuro).
   Colori dell'app: verde LineaRadio (#3FA535) per azioni primarie e menu,
   arancione Tendance (#F85C09) come accento. */

:root {
    --lr-green: #3FA535;
    --lr-green-dark: #348B2C;
    --td-orange: #F85C09;
}

body { background: #14161a; }

/* --- Sidebar ------------------------------------------------------------- */

.app-wrap { min-height: 100vh; }

.sidebar {
    width: 250px;
    flex-shrink: 0;
    background: #1a1c22;
    border-right: 1px solid var(--bs-border-color);
}

@media (min-width: 768px) {
    .sidebar {
        position: sticky;
        top: 0;
        height: 100vh;
    }
    .sidebar .offcanvas-body { height: 100%; }
}

.border-brand { border-color: var(--lr-green) !important; }

.brand-logo {
    font-weight: 800;
    letter-spacing: 1px;
    color: #fff;
    text-decoration: none;
}
.brand-logo span { color: var(--lr-green); }

.sidebar .nav-link {
    color: var(--bs-body-color);
    border-radius: 8px;
}
.sidebar .nav-link:hover { background: rgba(255, 255, 255, .06); }
.sidebar .nav-link.active {
    background: var(--lr-green);
    color: #fff;
}

/* Contenuto sempre centrato nello spazio a destra della sidebar */
.content {
    max-width: 1100px;
    margin: 0 auto;
}

/* --- Bottone primario nel verde dell'app ---------------------------------- */

.btn-primary {
    --bs-btn-bg: var(--lr-green);
    --bs-btn-border-color: var(--lr-green);
    --bs-btn-hover-bg: var(--lr-green-dark);
    --bs-btn-hover-border-color: var(--lr-green-dark);
    --bs-btn-active-bg: var(--lr-green-dark);
    --bs-btn-active-border-color: var(--lr-green-dark);
    --bs-btn-disabled-bg: var(--lr-green);
    --bs-btn-disabled-border-color: var(--lr-green);
}

/* Accento arancione Tendance (stella radio principale, dettagli) */
.text-accent { color: var(--td-orange); }

.badge.text-bg-accent {
    background: var(--td-orange);
    color: #fff;
}

/* --- Login ---------------------------------------------------------------- */

.login-main {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}
.login-inner { width: 100%; max-width: 400px; }
.login-card { width: 100%; }

/* --- Tabelle e miniature --------------------------------------------------- */

.thumb { max-width: 90px; max-height: 50px; border-radius: 4px; display: block; }
.thumb-lg { max-width: 260px; max-height: 140px; border-radius: 6px; }

.table > :not(caption) > * > * { vertical-align: middle; }

tr.row-inactive td { opacity: .45; }

.cell-ellipsis {
    max-width: 240px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* --- QR TOTP --------------------------------------------------------------- */

.qrcode {
    background: #fff;
    display: inline-block;
    padding: 12px;
    border-radius: 8px;
}
.qrcode img { display: block; }
