/*
 * Compact density for the admin panel (loaded after Filament's own CSS via a
 * render hook in AdminPanelProvider). Filament's styles live in CSS @layers,
 * so these un-layered rules win without needing !important.
 */

/* Everything in Filament is sized in rem, so a smaller root font shrinks
   text, padding and gaps together (16px -> 14px is ~12% denser). */
html {
    font-size: 14px;
}

:root {
    --topbar-height: 3.25rem;
}

/* ---- Sidebar: fit the whole menu without scrolling ---- */
.fi-sidebar-nav {
    padding-block: 0.75rem;
    padding-inline: 0.75rem;
    row-gap: 0.75rem;
}

.fi-sidebar-nav-groups {
    row-gap: 0.5rem;
}

.fi-sidebar-group,
.fi-sidebar-group-items {
    row-gap: 0;
}

.fi-sidebar-group-btn {
    padding: 0.25rem 0.5rem;
}

.fi-sidebar-item-btn {
    padding: 0.3rem 0.5rem;
    column-gap: 0.5rem;
}

/* ---- Page chrome ---- */
.fi-page-header-main-ctn {
    padding-block: 1rem;
    row-gap: 1rem;
}

.fi-page-main {
    gap: 1rem;
}

.fi-page-content {
    row-gap: 1rem;
}

.fi-header-heading {
    font-size: 1.375rem;
    line-height: 1.75rem;
}

/* ---- Tables: tighter rows so more records fit on screen ---- */
.fi-ta-header-toolbar {
    padding-block: 0.5rem;
    padding-inline: 0.75rem;
}

.fi-ta-header-cell {
    padding-block: 0.5rem;
    padding-inline: 0.5rem;
}

.fi-ta-text:not(.fi-inline) {
    padding-block: 0.375rem;
    padding-inline: 0.5rem;
}

.fi-ta-cell:first-child {
    padding-inline-start: 0.5rem;
}

.fi-ta-cell:last-child {
    padding-inline-end: 0.5rem;
}

/* ---- Forms & sections ---- */
.fi-section-header {
    padding-block: 0.625rem;
    padding-inline: 1rem;
}

.fi-fo-field {
    row-gap: 0.25rem;
}
