/* =========================================================
   Autoservicio Luchets — Panel compacto
   ========================================================= */

:root {
    --luchets-navy: #1B2144;
    --luchets-teal: #0F8A96;
    --luchets-teal-soft: #E7F6F8;
    --luchets-orange: #E34A26;
    --luchets-bg: #F4F5F7;
    --luchets-border: #E6E8EC;
    --luchets-muted: #6B7280;
}

.fi-body,
.fi-main,
.fi-main-ctn {
    background: var(--luchets-bg) !important;
}

/* Sidebar */
.fi-sidebar {
    background: #fff !important;
    border-right: 1px solid var(--luchets-border) !important;
}

.fi-sidebar-header {
    background: #fff !important;
    border-bottom: 1px solid var(--luchets-border) !important;
    height: auto !important;
    min-height: 4.25rem !important;
    padding: 0.75rem 1rem !important;
}

.luchets-brand {
    display: flex !important;
    align-items: center !important;
    gap: 0.65rem !important;
    text-decoration: none !important;
}

.luchets-brand img {
    width: 52px !important;
    height: 52px !important;
    max-width: 52px !important;
    object-fit: contain !important;
}

.luchets-brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.luchets-brand-text strong {
    color: var(--luchets-navy);
    font-size: 0.9rem;
    font-weight: 800;
}

.luchets-brand-text span {
    color: var(--luchets-muted);
    font-size: 0.7rem;
    font-weight: 600;
}

/* CLAVE: Filament usa gap-y-7 (muy separado). Lo compactamos. */
.fi-sidebar-nav {
    padding: 0.5rem 0.75rem 1rem !important;
    gap: 0.25rem !important;
}

.fi-sidebar-nav.flex,
.fi-sidebar-nav.flex-col,
ul.fi-sidebar-nav-groups,
.fi-sidebar-nav-groups {
    gap: 0.25rem !important;
    row-gap: 0.25rem !important;
}

.fi-sidebar-nav-groups {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.fi-sidebar-group {
    gap: 0.05rem !important;
    margin: 0 !important;
}

.fi-sidebar-group-button {
    padding: 0.45rem 0.55rem !important;
    min-height: 0 !important;
    cursor: pointer !important;
    border-radius: 0.45rem !important;
    user-select: none !important;
}

.fi-sidebar-group-button:hover {
    background: #F8FAFC !important;
}

.fi-sidebar-group-label {
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--luchets-muted) !important;
    line-height: 1.2 !important;
}

.fi-sidebar-group-collapse-button {
    display: inline-flex !important;
    color: var(--luchets-muted) !important;
    pointer-events: none !important;
    transition: transform 0.2s ease !important;
    margin-left: auto !important;
}

/* Evitar flechas inventadas o duplicadas */
.luchets-chevron {
    display: none !important;
}

.fi-sidebar-group-button .fi-sidebar-group-collapse-button ~ .fi-sidebar-group-collapse-button {
    display: none !important;
}

.fi-sidebar-group-items {
    gap: 0.05rem !important;
    margin: 0 !important;
    padding: 0 0 0.25rem !important;
}

.fi-sidebar-item {
    margin: 0 !important;
}

.fi-sidebar-item-button {
    min-height: 2rem !important;
    padding: 0.3rem 0.55rem !important;
    border-radius: 0.5rem !important;
    gap: 0.5rem !important;
    background: transparent !important;
}

.fi-sidebar-item-label {
    font-size: 0.84rem !important;
    font-weight: 600 !important;
    color: var(--luchets-navy) !important;
    display: inline !important;
    opacity: 1 !important;
    text-transform: none !important;
}

.fi-sidebar-item-icon {
    width: 1.1rem !important;
    height: 1.1rem !important;
    color: var(--luchets-teal) !important;
}

.fi-sidebar-item-button:hover {
    background: var(--luchets-teal-soft) !important;
}

/* Solo el ítem activo (NO el grupo .fi-active, que pinta todos los hijos) */
.fi-sidebar-item.fi-active > .fi-sidebar-item-button,
.fi-sidebar-item.fi-sidebar-item-active > .fi-sidebar-item-button {
    background: var(--luchets-teal) !important;
}

.fi-sidebar-item.fi-active > .fi-sidebar-item-button .fi-sidebar-item-label,
.fi-sidebar-item.fi-sidebar-item-active > .fi-sidebar-item-button .fi-sidebar-item-label,
.fi-sidebar-item.fi-active > .fi-sidebar-item-button .fi-sidebar-item-icon,
.fi-sidebar-item.fi-sidebar-item-active > .fi-sidebar-item-button .fi-sidebar-item-icon {
    color: #fff !important;
}

/* Grupo con página activa: solo resalta la etiqueta del grupo, no los hijos */
.fi-sidebar-group.fi-active > .fi-sidebar-group-button .fi-sidebar-group-label {
    color: var(--luchets-teal) !important;
}

/* Topbar */
.fi-topbar,
.fi-topbar nav {
    background: #fff !important;
    border-bottom: 1px solid var(--luchets-border) !important;
}

.fi-topbar .fi-avatar,
.fi-user-menu {
    display: none !important;
}

.fi-header-heading {
    color: var(--luchets-navy) !important;
    font-weight: 800 !important;
    font-size: 0.9rem !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.luchets-logout {
    display: inline-flex;
    align-items: center;
    background: var(--luchets-navy) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 0.5rem !important;
    padding: 0.4rem 0.8rem !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    cursor: pointer;
}

.luchets-logout:hover {
    background: var(--luchets-orange) !important;
}

/* Dashboard */
.luchets-dash-hero {
    background: #fff;
    border: 1px solid var(--luchets-border);
    border-radius: 0.85rem;
    padding: 1rem 1.15rem;
}

.luchets-dash-kicker {
    color: var(--luchets-orange);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.luchets-dash-title {
    color: var(--luchets-navy);
    font-size: 1.35rem;
    font-weight: 800;
    margin: 0.2rem 0 0.75rem;
}

.luchets-dash-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.1rem;
}

.luchets-dash-meta-label {
    display: block;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--luchets-muted);
}

.luchets-dash-meta-value {
    display: block;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--luchets-navy);
}

.luchets-pill {
    display: inline-flex;
    border-radius: 999px;
    padding: 0.12rem 0.5rem;
    font-size: 0.7rem;
    font-weight: 800;
    background: #DCFCE7;
    color: #166534;
}

.fi-wi-stats-overview-stat {
    background: #fff !important;
    border: 1px solid var(--luchets-border) !important;
    border-radius: 0.8rem !important;
    padding: 0.85rem 0.95rem !important;
    box-shadow: none !important;
}

.fi-wi-stats-overview-stat-value {
    font-size: 1.45rem !important;
    font-weight: 800 !important;
    color: var(--luchets-navy) !important;
}

.fi-section-content-ctn,
.fi-ta-ctn {
    background: #fff !important;
    border: 1px solid var(--luchets-border) !important;
    border-radius: 0.85rem !important;
}

.fi-btn.fi-btn-color-primary {
    background: var(--luchets-teal) !important;
    border-color: var(--luchets-teal) !important;
}

.fi-btn.fi-btn-color-danger {
    background: var(--luchets-orange) !important;
    border-color: var(--luchets-orange) !important;
}

.fi-account-widget {
    display: none !important;
}

/* Evitar overlay negro pegado tras filtros/tablas */
.fi-modal-close-overlay[aria-hidden="true"],
.fi-modal[style*="display: none"] .fi-modal-close-overlay {
    display: none !important;
    pointer-events: none !important;
}
.fi-input:not([type="email"]):not([type="password"]):not([type="number"]):not([type="hidden"]):not([autocomplete="new-password"]):not([autocomplete="current-password"]):not(.luchets-password-input),
.fi-ta-text-input textarea,
textarea.fi-input {
    text-transform: uppercase !important;
}

.fi-input[type="email"],
input[type="email"] {
    text-transform: lowercase !important;
}

/* Contraseñas: respetar mayúsculas/minúsculas reales (también al revelar type=text) */
.fi-input[type="password"],
.fi-input[autocomplete="new-password"],
.fi-input[autocomplete="current-password"],
.fi-input.luchets-password-input,
input.luchets-password-input,
input[type="password"],
input[autocomplete="new-password"],
input[autocomplete="current-password"] {
    text-transform: none !important;
}

/* Combobox / Select: opciones y valor en mayúsculas en todo el panel */
.fi-fo-select,
.fi-fo-select .choices,
.fi-fo-select .choices__inner,
.fi-fo-select .choices__item,
.fi-fo-select .choices__placeholder,
.fi-fo-select .choices__list--dropdown .choices__item,
.fi-fo-select .choices__list[aria-expanded] .choices__item,
.fi-fo-select .choices__input,
.fi-input-wrp select,
.fi-select-input,
select.fi-select-input,
.fi-fo-select select,
.fi-ta-filter select,
.fi-ta-filters .choices,
.fi-ta-filters .choices__inner,
.fi-ta-filters .choices__item,
.fi-ta-filters .choices__placeholder,
.fi-ta-filters .choices__list--dropdown .choices__item,
.fi-ta-filters .choices__input,
.fi-modal .choices,
.fi-modal .choices__inner,
.fi-modal .choices__item,
.fi-modal .choices__placeholder,
.fi-modal .choices__list--dropdown .choices__item,
.fi-dropdown-panel .fi-dropdown-list-item-label,
.fi-fo-field-wrp [role="listbox"] [role="option"],
.fi-fo-field-wrp [role="combobox"] {
    text-transform: uppercase !important;
}

.fi-fo-select .choices__input,
.fi-ta-filters .choices__input {
    text-transform: uppercase !important;
}
