/**
 * Overrides de marca San Martín — reglas A/B/C/D
 * Cargado al final del bundle (angular.json) para ganar a estilos legacy.
 */

/* ── Tipografía y títulos ── */
body,
.layout-wrapper,
.p-component {
    font-family: 'Lato', sans-serif;
}

.form-title-section h3,
.layout-content h1,
.layout-content h2,
.layout-content h3,
.login .title,
.login-card__title {
    color: var(--sm-primary) !important;
    font-weight: 700;
}

.field label,
.p-field label,
.login-field label {
    color: var(--sm-primary);
    font-weight: 600;
}

/* ── A: primario predominante ── */
a:not(.p-button):not(.layout-topbar-user):not(.login-card__link) {
    color: var(--sm-primary);
}

a:not(.p-button):not(.layout-topbar-user):hover {
    color: var(--sm-primary-dark);
}

.p-button:not(.p-button-outlined):not(.p-button-text):not(.p-button-danger):not(.p-button-success):not(.p-button-warning):not(.p-button-info):not(.p-button-help) {
    background: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
    color: var(--sm-white) !important;
}

.p-button.p-button-outlined:not(.p-button-danger):not(.p-button-success):not(.p-button-warning):not(.p-button-info):not(.p-button-help) {
    background: var(--sm-white) !important;
    color: var(--sm-primary) !important;
    border: 1px solid var(--sm-primary) !important;
}

.p-button.p-button-secondary:not(.p-button-outlined):not(.p-button-text) {
    background: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
    color: var(--sm-white) !important;
}

.p-button.p-button-secondary.p-button-outlined {
    background: var(--sm-white) !important;
    color: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
}

.p-paginator .p-paginator-pages .p-paginator-page.p-highlight {
    background: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
    color: var(--sm-white) !important;
}

.p-datatable .p-datatable-tbody > tr.p-highlight {
    background: var(--sm-blue-soft) !important;
    color: var(--sm-primary) !important;
}

.p-datatable .p-sortable-column.p-highlight,
.p-datatable .p-sortable-column.p-highlight .p-sortable-column-icon {
    color: var(--sm-primary) !important;
}

.p-checkbox .p-checkbox-box.p-highlight,
.p-radiobutton .p-radiobutton-box.p-highlight {
    background: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
}

.p-inputswitch.p-inputswitch-checked .p-inputswitch-slider {
    background: var(--sm-primary) !important;
}

.p-inputtext:enabled:focus,
.p-dropdown:not(.p-disabled).p-focus,
.p-multiselect:not(.p-disabled).p-focus {
    border-color: var(--sm-primary) !important;
    box-shadow: 0 0 0 1px var(--sm-primary), 0 0 0 3px var(--sm-digital-ring) !important;
}

/* ── B: secundario (café/dorado) — borde inferior lo define layout-shell-ux.css (::after) ── */
.layout-wrapper.layout-menu-light .layout-menu-container .layout-menu > li.active-menuitem > a,
.layout-wrapper.layout-menu-light .layout-menu-container .layout-menu li a.active-menuitem-routerlink,
.layout-wrapper.layout-menu-light .layout-menu-container .layout-menu li.active-menuitem > a {
    box-shadow: inset 3px 0 0 var(--sm-secondary) !important;
}

.toolbar-panel__sep {
    background: var(--sm-secondary) !important;
    opacity: 0.55;
}

.p-tabview .p-tabview-nav li.p-highlight .p-tabview-nav-link {
    border-color: var(--sm-primary) !important;
    color: var(--sm-primary) !important;
    box-shadow: inset 0 -2px 0 var(--sm-secondary) !important;
}

.card {
    border-top: 2px solid var(--sm-secondary);
}

.p-tag.p-tag-active {
    background: var(--sm-primary) !important;
    color: var(--sm-white) !important;
}

/* ── C: blanco sobre fondos de color ── */
.layout-wrapper .layout-topbar .layout-topbar-usermenu .layout-topbar-usermenu-header,
.layout-wrapper .layout-topbar .layout-topbar-usermenu .layout-topbar-usermenu-header .layout-topbar-usermenu-info,
.layout-wrapper .layout-topbar .layout-topbar-usermenu .layout-topbar-usermenu-header .layout-topbar-usermenu-info .layout-topbar-usermenu-name,
.layout-wrapper .layout-topbar .layout-topbar-usermenu .layout-topbar-usermenu-header .layout-topbar-usermenu-info .layout-topbar-usermenu-tenant {
    color: var(--sm-white) !important;
}

/* ── D: digital solo como complemento del primario ── */
.p-button:not(.p-button-outlined):not(.p-button-text):not(.p-button-danger):not(.p-button-success):not(.p-button-warning):not(.p-button-info):not(.p-button-help):enabled:hover {
    background: var(--sm-primary) !important;
    border-color: var(--sm-digital) !important;
    box-shadow: inset 0 -3px 0 var(--sm-digital) !important;
    color: var(--sm-white) !important;
}

.p-button:not(.p-button-outlined):not(.p-button-text):enabled:active {
    background: var(--sm-primary-dark) !important;
    border-color: var(--sm-primary-dark) !important;
    box-shadow: none !important;
}

.p-button.p-button-outlined:not(.p-button-danger):not(.p-button-success):not(.p-button-warning):enabled:hover,
.p-button.p-button-outlined:not(.p-button-danger):not(.p-button-success):not(.p-button-warning):enabled:focus {
    border-color: var(--sm-digital) !important;
    color: var(--sm-primary) !important;
    background: var(--sm-blue-soft) !important;
}

.toolbar-btn--primary.p-button,
.toolbar-btn--primary.p-splitbutton > .p-button {
    background: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
    color: var(--sm-white) !important;
}

.toolbar-btn--primary.p-button:enabled:hover,
.toolbar-btn--primary.p-splitbutton > .p-button:enabled:hover {
    background: var(--sm-primary) !important;
    border-color: var(--sm-digital) !important;
    box-shadow: inset 0 -3px 0 var(--sm-digital) !important;
    color: var(--sm-white) !important;
}

.p-splitbutton.toolbar-btn--export > .p-button,
.p-button.toolbar-btn--export {
    color: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
    background: var(--sm-white) !important;
}

.p-splitbutton.toolbar-btn--export > .p-button:enabled:hover,
.p-button.toolbar-btn--export:enabled:hover {
    background: var(--sm-white) !important;
    border-color: var(--sm-digital) !important;
    color: var(--sm-primary) !important;
    box-shadow: inset 0 0 0 1px var(--sm-digital) !important;
}

.p-splitbutton.toolbar-btn--export > .p-splitbutton-menubutton,
.p-splitbutton.toolbar-btn--export > .p-button:last-child {
    border-left: 1px solid var(--sm-primary) !important;
}

.login-card__submit.p-button {
    background: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
}

.login-card__submit.p-button:enabled:hover {
    background: var(--sm-primary) !important;
    border-color: var(--sm-digital) !important;
    box-shadow: inset 0 -3px 0 var(--sm-digital) !important;
}

.login-input:focus-within {
    border-color: var(--sm-primary) !important;
    box-shadow: 0 0 0 1px var(--sm-primary), 0 0 0 3px var(--sm-digital-ring) !important;
}

.login-input:focus-within .login-input__icon {
    color: var(--sm-primary) !important;
    background: var(--sm-gold-soft) !important;
    border-right-color: var(--sm-secondary) !important;
}

.p-dropdown-panel .p-dropdown-item.p-highlight,
.p-autocomplete-panel .p-autocomplete-item.p-highlight,
.p-listbox .p-listbox-list .p-listbox-item.p-highlight {
    background: var(--sm-blue-soft) !important;
    color: var(--sm-primary) !important;
}

.p-splitbutton.p-button-outlined > .p-button {
    color: var(--sm-primary) !important;
    border-color: var(--sm-primary) !important;
}
