/* SPHP Admin — full-height dark blue sidebar, compact navigation, accordion groups */

:root {
    --sphp-sidebar-bg: #0a1f38;
    --sphp-sidebar-bg-hover: rgb(255 255 255 / 0.14);
    --sphp-sidebar-border: #1a3a5c;
    --sphp-sidebar-text: #ffffff;
    --sphp-sidebar-muted: rgb(255 255 255 / 0.72);
    --sphp-sidebar-hover-text: #7dd3fc;
    --sphp-sidebar-active-bg: rgb(0 89 99 / 0.42);
    --sphp-sidebar-active-text: #e0f2fe;
    --sphp-sidebar-accent: #7dd3fc;
}

/* Full sidebar column — override Filament transparent / gray defaults on desktop */
.fi-main-sidebar {
    background-color: var(--sphp-sidebar-bg) !important;
}

.fi-main-sidebar .fi-sidebar {
    background-color: var(--sphp-sidebar-bg) !important;
    background-image: none !important;
    --tw-ring-color: var(--sphp-sidebar-border) !important;
    box-shadow: none !important;
}

.fi-main-sidebar .fi-sidebar-header,
.fi-main-sidebar .fi-sidebar-nav,
.fi-main-sidebar .fi-sidebar-footer,
.fi-main-sidebar .fi-sidebar-nav-groups,
.fi-main-sidebar .fi-sidebar-group,
.fi-main-sidebar .fi-sidebar-nav > ul {
    background-color: var(--sphp-sidebar-bg) !important;
}

/* Logo / header area (~80px) */
.fi-main-sidebar .fi-sidebar-header {
    border-color: var(--sphp-sidebar-border) !important;
    padding: 0.65rem 0.75rem !important;
    min-height: 4.5rem !important;
    height: auto !important;
    box-shadow: none !important;
}

.fi-main-sidebar .fi-sidebar-header-logo-ctn {
    justify-content: flex-start !important;
}

.fi-main-sidebar .fi-logo {
    background: transparent !important;
    border-radius: 0;
    padding: 0;
    align-items: center;
}

.fi-main-sidebar .fi-logo.hidden {
    display: none !important;
}

.fi-main-sidebar .fi-logo img {
    height: 1.75rem !important;
    width: auto !important;
    max-width: 100%;
    object-fit: contain;
}

/* Navigation — compact, scrollable */
.fi-main-sidebar .fi-sidebar-nav {
    padding: 0.15rem 0.35rem 0.35rem !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    flex: 1 1 auto !important;
}

.fi-main-sidebar .fi-sidebar-nav-groups {
    gap: 0.05rem !important;
}

.fi-main-sidebar .fi-sidebar-group {
    gap: 0 !important;
}

.fi-main-sidebar .fi-sidebar-group-label {
    color: var(--sphp-sidebar-muted) !important;
    font-size: 0.6rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 0.3rem 0.45rem 0.1rem !important;
    margin: 0 !important;
}

.fi-main-sidebar .fi-sidebar-group-button {
    border-radius: 6px;
}

.fi-main-sidebar .fi-sidebar-group-button:hover {
    background-color: var(--sphp-sidebar-bg-hover) !important;
    color: var(--sphp-sidebar-hover-text) !important;
}

.fi-main-sidebar .fi-sidebar-group-items {
    gap: 0 !important;
}

.fi-main-sidebar .fi-sidebar-item {
    margin: 0 !important;
}

.fi-main-sidebar .fi-sidebar-item-button {
    color: var(--sphp-sidebar-text) !important;
    background-color: transparent !important;
    min-height: 1.45rem !important;
    padding: 0.12rem 0.45rem !important;
    font-size: 0.74rem !important;
    line-height: 1.15 !important;
    gap: 0.4rem !important;
    border-radius: 6px !important;
}

/* Filament light-mode defaults: bg-gray-100 / hover:bg-gray-100 */
.fi-main-sidebar .fi-sidebar-item-button:hover,
.fi-main-sidebar .fi-sidebar-item-button:focus-visible {
    background-color: var(--sphp-sidebar-bg-hover) !important;
    color: var(--sphp-sidebar-hover-text) !important;
}

.fi-main-sidebar .fi-sidebar-item-button:hover .fi-sidebar-item-label,
.fi-main-sidebar .fi-sidebar-item-button:hover .fi-sidebar-item-icon,
.fi-main-sidebar .fi-sidebar-item-button:focus-visible .fi-sidebar-item-label,
.fi-main-sidebar .fi-sidebar-item-button:focus-visible .fi-sidebar-item-icon {
    color: var(--sphp-sidebar-hover-text) !important;
}

.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-button {
    background-color: var(--sphp-sidebar-active-bg) !important;
    color: var(--sphp-sidebar-active-text) !important;
}

.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-button .fi-sidebar-item-icon,
.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-button .fi-sidebar-item-label {
    color: var(--sphp-sidebar-accent) !important;
}

.fi-main-sidebar .fi-sidebar-item-icon {
    color: var(--sphp-sidebar-text) !important;
    width: 0.9rem !important;
    height: 0.9rem !important;
}

.fi-main-sidebar .fi-sidebar-item-label {
    color: var(--sphp-sidebar-text) !important;
    line-height: 1.15 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-button,
.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-label,
.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-icon {
    color: #ffffff !important;
}

.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-button:hover,
.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-button:focus-visible,
.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-button:hover .fi-sidebar-item-label,
.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-button:hover .fi-sidebar-item-icon,
.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-button:focus-visible .fi-sidebar-item-label,
.fi-main-sidebar .fi-sidebar-group-items .fi-sidebar-item-button:focus-visible .fi-sidebar-item-icon {
    color: var(--sphp-sidebar-hover-text) !important;
}

.fi-main-sidebar .fi-sidebar-group-collapse-button {
    color: var(--sphp-sidebar-muted) !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
}

/* Dashboard link (ungrouped) */
.fi-main-sidebar .fi-sidebar-nav > ul > li .fi-sidebar-item-button {
    min-height: 1.5rem !important;
    margin-bottom: 0.15rem !important;
}

/* Footer / user menu */
.fi-main-sidebar .fi-sidebar-footer {
    padding: 0.35rem 0.45rem !important;
    border-color: var(--sphp-sidebar-border) !important;
    margin-top: auto !important;
}

.fi-main-sidebar .fi-user-menu-trigger {
    color: #e2e8f0 !important;
    padding: 0.35rem 0.45rem !important;
    font-size: 0.75rem !important;
}

.fi-main-sidebar .fi-user-menu-trigger:hover {
    background-color: var(--sphp-sidebar-bg-hover) !important;
}

/* Top bar logo (mobile / collapsed) */
.fi-topbar .fi-logo {
    background: transparent !important;
    padding: 0;
}

.fi-topbar .fi-logo img {
    height: 1.5rem !important;
}

/* Dashboard — fixed 2-column layout */
.sphp-dashboard {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.sphp-dashboard-main {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    align-items: start;
}

@media (min-width: 1024px) {
    .sphp-dashboard-main {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
}

.sphp-dashboard-left,
.sphp-dashboard-right {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    min-width: 0;
}

.sphp-dashboard-left .fi-wi-chart {
    margin-bottom: 0 !important;
}

.sphp-dashboard-left .fi-wi-stats-overview-stats-ctn {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 640px) {
    .sphp-dashboard-left .fi-wi-stats-overview-stats-ctn {
        grid-template-columns: 1fr !important;
    }
}
