/* Consola SIFEN — solo layout y wrappers de página.
   Los componentes (botones, cards, tablas, badges, inputs, modales, alertas,
   dropdowns) usan Bootstrap 5.3 nativo sin overrides. */

:root {
    --sidebar-width: 260px;
}

body {
    font-family: Roboto, system-ui, "Segoe UI", sans-serif;
}

/* Sidebar (desktop) */
.sidebar {
    width: var(--sidebar-width);
    flex-shrink: 0;
    min-height: calc(100vh - 56px);
}
.sidebar .nav-link {
    color: var(--bs-body-color);
    border-radius: .375rem;
    padding: .5rem .75rem;
    margin-bottom: 2px;
}
.sidebar .nav-link:hover {
    background: var(--bs-tertiary-bg);
}
.sidebar .nav-link.active {
    background: var(--bs-primary-bg-subtle);
    color: var(--bs-primary);
    font-weight: 500;
}
.sidebar-heading {
    font-size: .7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--bs-secondary-color);
    padding: 1rem .75rem .25rem;
    margin: 0;
}
.sidebar-heading:first-child { padding-top: .25rem; }

/* Contenido principal */
.content {
    padding: 1.5rem;
    flex-grow: 1;
    min-width: 0;
}
.page {
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
}

/* Header de página estandarizado */
.page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--bs-border-color);
}
.page-title {
    font-size: 1.5rem;
    font-weight: 500;
    margin: 0;
    flex-grow: 1;
}
.page-subtitle {
    color: var(--bs-secondary-color);
    font-size: .875rem;
    margin: .25rem 0 0;
}
.page-actions {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
}
.page-back {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--bs-secondary-color);
    text-decoration: none;
    font-size: .8125rem;
}
.page-back:hover { color: var(--bs-primary); }

@media (max-width: 991.98px) {
    .content { padding: 1rem; }
    .page-title { font-size: 1.25rem; }
}

/* KuDE preview en detalle de documento */
embed.kude, object.kude {
    width: 100%;
    height: 78vh;
    border: 1px solid var(--bs-border-color);
    border-radius: .375rem;
    background: #fff;
}
