/* ============================================================
   site.css — CSS globale BOAdmin
   REGOLA: nessun colore hardcoded. Solo var(--pk-*).
   Il blocco :root qui sotto sono SOLO fallback: a runtime vengono
   sovrascritti da AppConfigService.GetThemeCssVariables() (App.razor).
   Per cambiare i colori: editare wwwroot/config/app-config.json,
   NON questi valori. Vedi patterns/blazor-bo.md § 5.
   ============================================================ */
:root {
    --pk-primary: #2D6A4F;
    --pk-secondary: #B7C9A8;
    --pk-accent: #F0F7EE;
    --pk-primary-hover: #245a41;
    --pk-primary-text: #ffffff;
    --pk-sidebar-bg: #1d4733;
    --pk-sidebar-text: #cdddc2;
    --pk-sidebar-active: #2D6A4F;
}

/* --- Shell / topbar --- */
.pk-shell { height: 100vh; }
.pk-topbar {
    display: flex; align-items: center; gap: .5rem;
    padding: .5rem 1rem;
    background-color: var(--pk-primary);
    color: var(--pk-primary-text);
}
.pk-topbar-title { font-weight: 600; }
.pk-content { padding: 1.5rem; }

/* --- Topbar logout (push a destra, contrasto su sfondo primary) --- */
.pk-topbar-logout { margin-left: auto; }
.pk-topbar-btn {
    background: transparent;
    color: var(--pk-primary-text);
    border: 1px solid color-mix(in srgb, var(--pk-primary-text) 35%, transparent);
    border-radius: .3rem;
    padding: .3rem .75rem;
    cursor: pointer;
    font-size: .85rem;
    display: inline-flex; align-items: center; gap: .35rem;
}
.pk-topbar-btn:hover { background: color-mix(in srgb, var(--pk-primary-text) 12%, transparent); }

/* --- Sidebar (NavMenu dentro DxDrawer RenderFragment: stili globali) --- */
.pk-nav { background-color: var(--pk-sidebar-bg); height: 100%; padding: 1rem 0; }
.pk-nav-brand {
    color: var(--pk-primary-text); font-weight: 700;
    padding: 0 1.25rem 1rem; font-size: 1.1rem;
}
.pk-nav-list { list-style: none; padding: 0; margin: 0; }
.pk-nav-link {
    display: flex; align-items: center; gap: .6rem;
    padding: .65rem 1.25rem;
    color: var(--pk-sidebar-text); text-decoration: none;
}
.pk-nav-link:hover,
.pk-nav-link.active {
    background-color: var(--pk-sidebar-active);
    color: var(--pk-primary-text);
}

/* --- Status badge --- */
.pk-badge { padding: .15rem .55rem; border-radius: .35rem; font-size: .78rem; font-weight: 600; }
.pk-badge-info { background: #cfe2ff; color: #084298; }
.pk-badge-success { background: #d1e7dd; color: #0f5132; }
.pk-badge-warning { background: #fff3cd; color: #664d03; }
.pk-badge-danger { background: #f8d7da; color: #842029; }

/* --- Paginator (DnPaginator dentro RenderFragment DxGrid: stili globali) --- */
.pk-paginator {
    display: flex; align-items: center; gap: .75rem;
    padding: .5rem 0;
}
.pk-paginator-btn {
    padding: .35rem .85rem; border: 1px solid var(--pk-primary);
    background: var(--pk-primary); color: var(--pk-primary-text);
    border-radius: .3rem; cursor: pointer; font-size: .85rem;
}
.pk-paginator-btn:hover:not([disabled]) { background: var(--pk-primary-hover); }
.pk-paginator-btn[disabled] { opacity: .45; cursor: not-allowed; }
.pk-paginator-info { font-size: .85rem; color: inherit; }
