/*!
 * Capa institucional sobre Argon.
 * No modifica el vendor; solo redefine identidad visual del sistema.
 */

html,
body,
button,
input,
select,
textarea {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

:root {
    --genesis-z-content: 1;
    --genesis-z-fab-menu: 320;
    --genesis-z-fab-active: 340;
    --genesis-z-sticky-bar: 980;
    --genesis-z-shell: 1000;
    --genesis-z-shell-topbar: 1001;
    --genesis-z-shell-footer: 1002;
    --genesis-z-shell-floating-action: 1004;
    --genesis-z-shell-panel: 1020;
    --genesis-z-shell-panel-notification: 1021;
    --genesis-z-shell-panel-error: 1022;
    --genesis-z-bootstrap-backdrop: 1040;
    --genesis-z-bootstrap-modal: 1050;
    --genesis-z-bootstrap-popover: 1070;
    --genesis-z-bootstrap-toast: 1090;
    --genesis-z-code-overlay: 1065;
    --genesis-z-lock-screen: 11050;
    --genesis-z-accordion-modal: 12020;
    --genesis-z-onboarding: 12040;
    --genesis-z-noty: 12080;
    --genesis-z-custom-backdrop: 12140;
    --genesis-z-custom-modal: 12150;
    --genesis-z-loader: 20000;
    --genesis-z-swal-container: 20060;
    --genesis-z-swal-popup: 20061;
}

.cajaDiasColores {
    position: relative;
    left: 0;
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 0.35rem;
    align-items: start;
}

.cajaDiasColores > div {
    width: auto !important;
    min-width: 0;
}

.cajaDiasColores > div:not(.boxColorDay) {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cajaDiasColores > .boxColorDay,
.cajaDiasColores .boxColorDay .fabtn_contenedor,
.cajaDiasColores .boxColorDay .fabtn_contenedor > button.fabtn {
    width: 100% !important;
}

.cajaDiasColores > .boxColorDay {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.cajaDiasColores > .boxColorDay > button.fabtn,
.cajaDiasColores .boxColorDay .fabtn_contenedor > button.fabtn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto;
    align-self: center;
    width: min(100%, 3.35rem) !important;
    min-width: 3.35rem !important;
    min-height: 3.35rem !important;
    height: 3.35rem !important;
    margin: 0;
    border-radius: 0.85rem;
}

.cajaDiasColores .boxColorDay .fabtn_contenedor > button.fabtn i {
    top: 0;
}

@media (max-width: 1399.98px) {
    .cajaDiasColores {
        gap: 0.3rem;
    }

    .cajaDiasColores > .boxColorDay {
        min-height: 0;
    }

    .cajaDiasColores > .boxColorDay > button.fabtn,
    .cajaDiasColores .boxColorDay .fabtn_contenedor > button.fabtn {
        min-height: 0;
        width: min(100%, 3rem) !important;
        min-width: 3rem !important;
        min-height: 3rem !important;
        height: 3rem !important;
    }
}

.fabtn {
    background: #e0e1e2;
    border: 0 !important;
    border-radius: 10px;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14),
        0 3px 1px -2px rgba(0, 0, 0, 0.12),
        0 1px 5px 0 rgba(0, 0, 0, 0.2);
    color: rgba(0, 0, 0, 0.8);
    cursor: pointer;
    height: 40px;
    margin: 5px;
    outline: none;
    width: 40px;
}

.fabtn i {
    font-size: 20px;
    margin: 0;
    position: relative;
    top: 3px;
}

.fabtn.small {
    height: 20px !important;
    max-height: 20px;
    max-width: 20px;
    min-height: 20px;
    min-width: 20px;
    width: 20px !important;
}

.fabtn.small i {
    font-size: 13px !important;
}

.fabtn.teal {
    border-radius: 10px !important;
}

.fabtn.tiny {
    height: 30px !important;
    max-height: 30px;
    max-width: 30px;
    min-height: 30px;
    min-width: 30px;
    width: 30px !important;
}

.fabtn.tiny i {
    font-size: 11px !important;
}

.fabtn:hover {
    background: #cacbcd;
}

.fabtn_contenedor {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 2;
}

.fabtn_contenedor.bottom-left {
    bottom: 10px;
    display: flex;
    flex-direction: column;
    left: 10px;
}

.fabtn_contenedor.bottom-left.horizontal dl button {
    transform: scale(.4) translateY(0) translateX(-40px);
}

.fabtn_contenedor.bottom-left.horizontal,
.fabtn_contenedor.bottom-left.horizontal dl {
    flex-direction: row-reverse !important;
}

.fabtn_contenedor.bottom-left.vertical,
.fabtn_contenedor.bottom-left.vertical dl {
    flex-direction: column !important;
}

.fabtn_contenedor.bottom-right {
    bottom: 10px;
    display: flex;
    flex-direction: column;
    right: 10px;
}

.fabtn_contenedor.bottom-right.horizontal dl button {
    transform: scale(.4) translateY(0) translateX(40px);
}

.fabtn_contenedor.bottom-right.horizontal,
.fabtn_contenedor.bottom-right.horizontal dl {
    flex-direction: row !important;
}

.fabtn_contenedor.bottom-right.vertical,
.fabtn_contenedor.bottom-right.vertical dl {
    flex-direction: column !important;
}

.fabtn_contenedor.default {
    left: 10px;
    top: 10px;
}

.fabtn_contenedor dl {
    display: flex;
    flex-direction: column;
    height: 0;
    margin: 0;
    opacity: 0;
    position: relative;
    transition: .5s;
    visibility: hidden;
    z-index: var(--genesis-z-fab-menu);
}

.fabtn_contenedor:hover,
.fabtn_contenedor:focus-within {
    z-index: var(--genesis-z-fab-active);
}

.fabtn_contenedor dl dt {
    background: rgba(236, 236, 236, 0.72);
    border-radius: 0.75rem;
}

.fabtn_contenedor dl dt button {
    transform: scale(.4) translateY(-40px) translateX(0);
    transition: .5s;
}

.fabtn_contenedor.top-left {
    display: flex;
    flex-direction: column-reverse;
    left: 10px;
    top: 10px;
}

.fabtn_contenedor.top-left.horizontal dl button {
    transform: scale(.4) translateY(0) translateX(-40px);
}

.fabtn_contenedor.top-left.horizontal,
.fabtn_contenedor.top-left.horizontal dl {
    flex-direction: row-reverse !important;
}

.fabtn_contenedor.top-left.vertical,
.fabtn_contenedor.top-left.vertical dl {
    flex-direction: column-reverse !important;
}

.fabtn_contenedor.top-right {
    display: flex;
    flex-direction: column-reverse;
    right: 10px;
    top: 10px;
}

.fabtn_contenedor.top-right.horizontal dl button {
    transform: scale(.4) translateY(0) translateX(40px);
}

.fabtn_contenedor.top-right.horizontal,
.fabtn_contenedor.top-right.horizontal dl {
    flex-direction: row !important;
}

.fabtn_contenedor.top-right.vertical,
.fabtn_contenedor.top-right.vertical dl {
    flex-direction: column-reverse !important;
}

.visible {
    opacity: 1 !important;
    visibility: visible !important;
}

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

.fabtn_contenedor dl.visible {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 1210;
}

.transform {
    transform: scale(1) translateY(0px) translateX(0px) !important;
}

[id^="accordion_"] > .card + .card {
    margin-top: 1rem;
}

[id^="accordion_"] .cajaDiasColores {
    position: relative;
    z-index: 1;
}

[id^="accordion_"] .genesis-collapsibleAccordion-action-slot {
    position: relative;
    z-index: 6;
    flex: 0 0 56px;
    max-width: 56px;
    min-width: 56px;
    padding-left: 0.75rem !important;
    padding-right: 0.25rem;
    justify-content: center;
}

[id^="accordion_"] .genesis-collapsibleAccordion-summaryRow {
    align-items: center;
    row-gap: 1rem;
}

[id^="accordion_"] .genesis-collapsibleAccordion-photoCol {
    flex: 0 0 98px;
    max-width: 98px;
}

[id^="accordion_"] .genesis-collapsibleAccordion-photoCol img {
    width: 88px !important;
    height: 88px !important;
    max-width: 88px !important;
    object-fit: cover;
}

[id^="accordion_"] .genesis-collapsibleAccordion-dataCol {
    flex: 0 0 360px;
    max-width: 360px;
    min-width: 320px;
    padding-left: 0.75rem;
}

[id^="accordion_"] .genesis-collapsibleAccordion-daysCol {
    flex: 1 1 0;
    min-width: 0;
}

[id^="accordion_"] .genesis-collapsibleAccordion-summary {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

[id^="accordion_"] .genesis-collapsibleAccordion-summaryBlock {
    min-width: 0;
}

[id^="accordion_"] .genesis-collapsibleAccordion-cardHeader {
    position: relative;
}

[id^="accordion_"] .genesis-collapsibleAccordion-actionSlotMiddle {
    flex: 0 0 54px;
    max-width: 54px;
    min-width: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 0.35rem;
    padding-right: 0.35rem;
}

[id^="accordion_"] .genesis-collapsibleAccordion-summaryHeading {
    color: #344767;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[id^="accordion_"] .genesis-collapsibleAccordion-summaryCaption {
    margin-top: 0.18rem;
    color: #94a3b8;
    font-size: 0.78rem;
    line-height: 1.2;
}

[id^="accordion_"] .genesis-collapsibleAccordion-metaGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0.55rem 1rem;
}

[id^="accordion_"] .genesis-collapsibleAccordion-metaItem {
    min-width: 0;
}

[id^="accordion_"] .genesis-collapsibleAccordion-metaLabel {
    margin-bottom: 0.18rem;
    color: #94a3b8;
    font-size: 0.74rem;
    line-height: 1.15;
}

[id^="accordion_"] .genesis-collapsibleAccordion-metaValue {
    color: #344767;
    font-size: 0.92rem;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[id^="accordion_"] .js-collapsibleAccordion-modal-launch,
[id^="accordion_"] .js-collapsibleAccordion-toggle,
[id^="accordion_"] .genesis-collapsibleAccordion-inlineAction {
    position: relative;
    z-index: 7;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.85rem;
    background: linear-gradient(135deg, var(--genesis-primary) 0%, var(--genesis-primary-hover) 100%);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--genesis-primary) 28%, transparent);
    color: var(--genesis-white) !important;
    border: 1px solid color-mix(in srgb, var(--genesis-primary-hover) 28%, transparent);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

[id^="accordion_"] .js-collapsibleAccordion-modal-launch:hover,
[id^="accordion_"] .js-collapsibleAccordion-toggle:hover,
[id^="accordion_"] .genesis-collapsibleAccordion-inlineAction:hover,
[id^="accordion_"] .js-collapsibleAccordion-modal-launch:focus,
[id^="accordion_"] .js-collapsibleAccordion-toggle:focus,
[id^="accordion_"] .genesis-collapsibleAccordion-inlineAction:focus {
    color: var(--genesis-white) !important;
    transform: translateY(-1px);
    filter: brightness(1.02);
    box-shadow: 0 14px 26px color-mix(in srgb, var(--genesis-primary) 34%, transparent);
}

[id^="accordion_"] .js-collapsibleAccordion-modal-launch i,
[id^="accordion_"] .js-collapsibleAccordion-toggle i,
[id^="accordion_"] .genesis-collapsibleAccordion-inlineAction i {
    color: var(--genesis-white) !important;
}

[id^="accordion_"] > .card:hover,
[id^="accordion_"] > .card:focus-within {
    z-index: 25;
}

@media (max-width: 1399.98px) {
    [id^="accordion_"] .genesis-collapsibleAccordion-dataCol {
        flex-basis: 330px;
        max-width: 330px;
        min-width: 300px;
    }
}

@media (max-width: 991.98px) {
    [id^="accordion_"] .genesis-collapsibleAccordion-photoCol,
    [id^="accordion_"] .genesis-collapsibleAccordion-dataCol,
    [id^="accordion_"] .genesis-collapsibleAccordion-actionSlotMiddle,
    [id^="accordion_"] .genesis-collapsibleAccordion-daysCol {
        flex: 0 0 100%;
        max-width: 100%;
        min-width: 0;
    }

    [id^="accordion_"] .genesis-collapsibleAccordion-dataCol {
        padding-left: 0;
    }

    [id^="accordion_"] .genesis-collapsibleAccordion-metaGrid {
        grid-template-columns: minmax(0, 1fr);
    }
}

.genesis-collapsibleAccordion-status {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.85rem 1rem;
    margin-bottom: 1rem;
    border-radius: 0.9rem;
    border: 1px solid rgba(148, 163, 184, 0.18);
    background: #f8fafc;
}

.genesis-collapsibleAccordion-status__caption {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #64748b;
}

.genesis-collapsibleAccordion-status__value {
    font-size: 0.95rem;
    font-weight: 600;
    color: #0f172a;
}

.genesis-collapsibleAccordion-status--success {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.2);
}

.genesis-collapsibleAccordion-status--success .genesis-collapsibleAccordion-status__value {
    color: #15803d;
}

.genesis-collapsibleAccordion-status--warning {
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.24);
}

.genesis-collapsibleAccordion-status--warning .genesis-collapsibleAccordion-status__value {
    color: #b45309;
}

.genesis-collapsibleAccordion-status--danger {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.2);
}

.genesis-collapsibleAccordion-status--danger .genesis-collapsibleAccordion-status__value {
    color: #b91c1c;
}

.genesis-collapsibleAccordion-status--secondary {
    background: rgba(148, 163, 184, 0.12);
    border-color: rgba(148, 163, 184, 0.2);
}

.genesis-collapsibleAccordion-modal-dock {
    display: none;
}

.genesis-collapsibleAccordion-root {
    position: relative;
}

.genesis-collapsibleAccordion-modal {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, 0.42);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    z-index: var(--genesis-z-accordion-modal);
}

.genesis-collapsibleAccordion-modal.is-open {
    display: flex;
}

.genesis-collapsibleAccordion-modal .modal-dialog {
    width: min(1180px, calc(100vw - 2rem));
    max-width: 100%;
    max-height: calc(100vh - 2rem);
    margin: 0 auto;
}

.genesis-collapsibleAccordion-modal .modal-content {
    max-height: calc(100vh - 2rem);
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 26px 54px rgba(15, 23, 42, 0.24);
}

@media (max-width: 991.98px) {
    .genesis-collapsibleAccordion-modal {
        padding: 1rem;
    }

    .genesis-collapsibleAccordion-modal .modal-dialog,
    .genesis-collapsibleAccordion-modal .modal-content {
        max-height: calc(100vh - 2rem);
        width: min(1180px, calc(100vw - 2rem));
    }
}

.genesis-collapsibleAccordion-modal .modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    background: #fff;
    border-bottom: 1px solid rgba(52, 71, 103, 0.1);
}

.genesis-collapsibleAccordion-modal .modal-title {
    margin: 0;
    color: #344767;
    font-size: 1.1rem !important;
    font-weight: 700;
    line-height: 1.35;
}

.genesis-collapsibleAccordion-modal .btn-close {
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
    opacity: 0.92;
    border: 0;
    border-radius: 999px;
    box-shadow: none !important;
    background-color: rgba(52, 71, 103, 0.1);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23344767' stroke-width='1.75' stroke-linecap='round'%3E%3Cpath d='M3.5 3.5 12.5 12.5M12.5 3.5 3.5 12.5'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 0.9rem 0.9rem;
}

.genesis-collapsibleAccordion-modal .btn-close:hover,
.genesis-collapsibleAccordion-modal .btn-close:focus {
    opacity: 1;
    background-color: color-mix(in srgb, var(--genesis-primary) 12%, transparent);
}

.genesis-collapsibleAccordion-modal .modal-body {
    padding: 0;
    background: #f8f9fe;
}

.genesis-collapsibleAccordion-modal .tableResponsive > .card-header,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header,
.genesis-collapsibleAccordion-modal .card-header.pb-0.p-2.bg-st-info {
    padding: 1rem 1.5rem !important;
    background: linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%) !important;
    border-bottom: 1px solid rgba(52, 71, 103, 0.1) !important;
    border-radius: 0 !important;
    color: #344767 !important;
}

.genesis-collapsibleAccordion-modal .tableResponsive > .card-header .card-title,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header .card-title,
.genesis-collapsibleAccordion-modal .tableResponsive > .card-header h3,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header h3 {
    margin: 0;
    color: #344767 !important;
    font-size: 1rem !important;
    font-weight: 700;
}

.genesis-collapsibleAccordion-modal .tableResponsive > .card-header .btn-tool,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header .btn-tool,
.genesis-collapsibleAccordion-modal .card-header.pb-0.p-2.bg-st-info .btn-tool {
    color: #344767 !important;
}

.genesis-collapsibleAccordion-modal .tableResponsive > .card-header .card-tools .btn,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header .card-tools .btn,
.genesis-collapsibleAccordion-modal .card-header.pb-0.p-2.bg-st-info .card-tools .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 2rem !important;
    min-height: 2rem !important;
    padding: 0.35rem 0.5rem !important;
    background-color: var(--genesis-primary) !important;
    background-image: linear-gradient(87deg, var(--genesis-primary) 0, var(--genesis-primary-hover) 100%) !important;
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 26%, transparent) !important;
    border-radius: 0.55rem !important;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--genesis-primary) 24%, transparent) !important;
    color: var(--genesis-white) !important;
}

.genesis-collapsibleAccordion-modal .tableResponsive > .card-header .card-tools .btn:hover,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header .card-tools .btn:hover,
.genesis-collapsibleAccordion-modal .card-header.pb-0.p-2.bg-st-info .card-tools .btn:hover,
.genesis-collapsibleAccordion-modal .tableResponsive > .card-header .card-tools .btn:focus,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header .card-tools .btn:focus,
.genesis-collapsibleAccordion-modal .card-header.pb-0.p-2.bg-st-info .card-tools .btn:focus {
    background-color: var(--genesis-primary-hover) !important;
    background-image: linear-gradient(87deg, var(--genesis-primary-hover) 0, var(--genesis-primary) 100%) !important;
    color: var(--genesis-white) !important;
}

.genesis-collapsibleAccordion-modal .tableResponsive > .card-header .card-tools .btn i,
.genesis-collapsibleAccordion-modal [id^="tableResponsive_"] > .card-header .card-tools .btn i,
.genesis-collapsibleAccordion-modal .card-header.pb-0.p-2.bg-st-info .card-tools .btn i {
    color: inherit !important;
}

.genesis-collapsibleAccordion-modal .modal-body > .panel-collapse {
    display: block !important;
    overflow: visible !important;
}

.genesis-collapsibleAccordion-modal .modal-body > .panel-collapse > .card-body {
    padding: 0 !important;
}

.genesis-nomina-component {
    display: flex;
    flex-direction: column;
    min-height: 520px;
    height: 100%;
    border: 1px solid rgba(98, 115, 221, 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98));
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

.genesis-nomina-component--radius {
    border-radius: 1.5rem;
}

.genesis-nomina-shell-eyebrow {
    font-size: var(--genesis-ui-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--genesis-primary);
    margin-bottom: 0.35rem;
}

.genesis-nomina-shell-title {
    margin: 0;
    font-size: calc(var(--genesis-ui-font-size-lg) * 1.65);
    line-height: 1.15;
    font-weight: 700;
    color: #1f2a44;
}

.genesis-nomina-shell-subtitle {
    margin-top: 0.35rem;
    font-size: var(--genesis-ui-font-size-base);
    color: #64748b;
}

.genesis-nomina-shell-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.65rem;
}

.genesis-nomina-shell-badge,
.genesis-nomina-shell-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    padding: 0.42rem 0.85rem;
    border-radius: 999px;
    font-size: var(--genesis-ui-font-size-sm);
    font-weight: 700;
}

.genesis-nomina-shell-badge {
    background: var(--genesis-primary-soft);
    color: var(--genesis-primary);
}

.genesis-nomina-shell-status {
    background: var(--genesis-primary-soft);
    color: var(--genesis-primary);
}

.genesis-nomina-shell-body {
    display: grid;
    grid-template-columns: minmax(240px, 290px) minmax(0, 1fr);
    min-height: 0;
    flex: 1 1 auto;
}

.genesis-nomina-sidebar {
    min-height: 0;
    padding: 1.1rem;
    border-right: 1px solid rgba(148, 163, 184, 0.12);
    background: linear-gradient(180deg, rgba(248, 250, 252, 0.92), rgba(241, 245, 249, 0.9));
    overflow: auto;
}

.genesis-nomina-summary-section,
.genesis-nomina-metrics-wrap,
.genesis-nomina-actions-wrap {
    margin-bottom: 1rem;
    padding: 0.95rem;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.84);
}

.genesis-nomina-summary-section-title {
    margin-bottom: 0.85rem;
    font-size: var(--genesis-ui-font-size-sm);
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #64748b;
}

.genesis-nomina-summary-grid {
    display: grid;
    gap: 0.75rem;
}

.genesis-nomina-summary-item {
    display: grid;
    gap: 0.18rem;
}

.genesis-nomina-summary-label {
    font-size: var(--genesis-ui-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #94a3b8;
}

.genesis-nomina-summary-value {
    font-size: calc(var(--genesis-ui-font-size-lg) * 1.08);
    font-weight: 700;
    color: #22304d;
    line-height: 1.25;
}

.genesis-nomina-summary-meta {
    font-size: var(--genesis-ui-font-size-base);
    color: #64748b;
}

.genesis-nomina-value-success {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.55rem;
    border-radius: 0.7rem;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.2);
    color: #15803d;
    font-weight: 800;
    line-height: 1.2;
    word-break: break-all;
}

.genesis-nomina-inline-link {
    margin-top: 0.45rem;
}

.genesis-nomina-employee-thumb-wrap {
    display: flex;
    justify-content: flex-start;
    padding-top: 0.1rem;
}

.genesis-nomina-employee-thumb {
    width: 4.5rem;
    height: 4.5rem;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.92);
}

.genesis-nomina-employee-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.genesis-nomina-employee-code {
    margin-top: 0.45rem;
    font-size: var(--genesis-ui-font-size-base);
    font-weight: 800;
    color: #22304d;
    text-align: left;
}

.genesis-nomina-metrics-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.genesis-nomina-metrics-grid--workspace {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 0.6rem;
    padding-bottom: 0.15rem;
}

.genesis-nomina-metric-card {
    display: grid;
    align-content: start;
    min-height: 5rem;
    padding: 0.7rem 0.8rem;
    border-radius: 0.85rem;
    background: linear-gradient(180deg, rgba(98, 115, 221, 0.08), rgba(98, 115, 221, 0.03));
    border: 1px solid rgba(98, 115, 221, 0.1);
    min-width: 8.75rem;
    flex: 0 0 8.75rem;
}

.genesis-nomina-total-card {
    display: grid;
    align-content: start;
    min-height: 5rem;
    padding: 0.7rem 0.8rem;
    border-radius: 0.85rem;
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--genesis-primary) 14%, white),
        color-mix(in srgb, var(--genesis-primary) 5%, white));
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 18%, transparent);
    min-width: 0;
}

.genesis-nomina-total-label {
    font-size: var(--genesis-ui-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #7c8799;
}

.genesis-nomina-total-value {
    margin-top: 0.24rem;
    font-size: calc(var(--genesis-ui-font-size-lg) * 1.15);
    font-weight: 800;
    color: #22304d;
}

.genesis-nomina-metric-label {
    font-size: var(--genesis-ui-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #64748b;
}

.genesis-nomina-metric-value {
    margin-top: 0.24rem;
    font-size: calc(var(--genesis-ui-font-size-lg) * 1.12);
    font-weight: 800;
    color: #22304d;
}

.genesis-nomina-actions-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.65rem;
}

.genesis-nomina-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    width: fit-content;
    max-width: 100%;
    min-height: 2.45rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.9rem;
    font-weight: 700;
    font-size: var(--genesis-ui-font-size-base);
    white-space: normal;
    text-align: center;
    flex: 0 1 auto;
}

.genesis-nomina-workspace {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    padding: 1.1rem;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.8), rgba(248, 250, 252, 0.88));
}

.genesis-nomina-workspace-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
    gap: 1rem;
    margin-bottom: 0.85rem;
}

.genesis-nomina-period-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.9rem;
    min-width: 0;
    padding: 0.95rem 1rem;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.86);
}

.genesis-nomina-period-card__main {
    min-width: 0;
}

.genesis-nomina-period-card__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.55rem;
}

.genesis-nomina-period-card .genesis-nomina-shell-title {
    font-size: calc(var(--genesis-ui-font-size-lg) * 1.15);
    line-height: 1.15;
}

.genesis-nomina-period-card .genesis-nomina-shell-subtitle {
    margin-top: 0.2rem;
}

.genesis-nomina-workspace-actions {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.genesis-nomina-workspace-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    margin-bottom: 0.85rem;
}

.genesis-nomina-actions-grid--secondary .genesis-nomina-action-btn {
    min-height: 2.2rem;
    padding: 0.42rem 0.7rem;
    font-size: var(--genesis-ui-font-size-sm);
    border-radius: 0.8rem;
}

.genesis-nomina-workspace-title {
    font-size: calc(var(--genesis-ui-font-size-lg) * 1.05);
    font-weight: 800;
    color: #22304d;
}

.genesis-nomina-workspace-hint {
    margin-top: 0.2rem;
    font-size: var(--genesis-ui-font-size-base);
    color: #64748b;
}

.genesis-nomina-workspace-scroll {
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
}

.genesis-nomina-workspace-card {
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.9);
    overflow: hidden;
}

.genesis-nomina-workspace-footer {
    margin-top: 0.85rem;
}

.genesis-nomina-bottom-strip {
    display: grid;
    grid-template-columns: minmax(0, 0.66fr) minmax(280px, 0.34fr);
    gap: 0.9rem;
    margin-top: 0.95rem;
    align-items: start;
}

.genesis-nomina-bottom-block {
    min-width: 0;
    padding: 0.8rem;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.84);
}

.genesis-nomina-bottom-block--metrics .genesis-nomina-metrics-grid {
    max-height: none;
    padding-right: 0;
}

.genesis-nomina-totals-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr));
    gap: 0.6rem;
}

.genesis-nomina-empty-state {
    display: grid;
    place-items: center;
    min-height: 260px;
    padding: 1.75rem;
    border: 1px dashed rgba(148, 163, 184, 0.3);
    border-radius: 1rem;
    text-align: center;
    background: rgba(255, 255, 255, 0.72);
}

.genesis-nomina-empty-title {
    font-size: calc(var(--genesis-ui-font-size-lg) * 1.1);
    font-weight: 800;
    color: #334155;
}

.genesis-nomina-empty-text {
    margin-top: 0.35rem;
    max-width: 32rem;
    font-size: var(--genesis-ui-font-size-base);
    color: #64748b;
}

.genesis-nomina-concepts-table thead th {
    font-size: var(--genesis-ui-font-size-xs);
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #64748b;
    background: rgba(248, 250, 252, 0.95);
}

.genesis-nomina-concepts-table tbody td {
    font-size: var(--genesis-ui-font-size-base);
    color: #334155;
    vertical-align: middle;
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
    line-height: 1.2;
}

.genesis-nomina-concepts-table tbody tr {
    height: 3.35rem;
}

.genesis-nomina-concepts-table tbody td:first-child {
    white-space: nowrap;
    width: 1%;
}

.genesis-nomina-row-actions {
    display: inline-flex;
    gap: 0.25rem;
    flex-wrap: nowrap;
    align-items: center;
    vertical-align: middle;
}

.genesis-nomina-row-actions .btn {
    min-width: 2rem;
    min-height: 2rem;
    padding: 0.25rem 0.45rem !important;
    border-radius: 0.65rem !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12);
}

.genesis-nomina-row-actions.btn-group > .btn,
.genesis-nomina-row-actions.btn-group > .btn:not(:first-child),
.genesis-nomina-row-actions.btn-group > .btn:not(:last-child):not(.dropdown-toggle) {
    border-radius: 0.65rem !important;
    margin-left: 0 !important;
}

.genesis-nomina-row-actions .btn-warning {
    background: linear-gradient(135deg, #ff8b5c, #ff5f3c);
    color: #fff;
}

.genesis-nomina-row-actions .btn-danger {
    background: linear-gradient(135deg, #ff6b7a, #ff3b57);
    color: #fff;
}

.genesis-nomina-row-actions .btn-info {
    background: linear-gradient(135deg, #53d4f7, #35bfe8);
    color: #fff;
}

.genesis-nomina-row-actions .btn:hover,
.genesis-nomina-row-actions .btn:focus {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(15, 23, 42, 0.16);
    color: #fff;
}

.genesis-nomina-concepts-table thead th:nth-child(n+4),
.genesis-nomina-concepts-table tbody td:nth-child(n+4) {
    text-align: right;
}

.genesis-nomina-concepts-table tbody td:nth-child(n+4) .text-right,
.genesis-nomina-concepts-table thead th:nth-child(n+4) .text-right {
    text-align: inherit !important;
}

@media (max-width: 1199.98px) {
    .genesis-nomina-shell-body {
        grid-template-columns: 1fr;
    }

    .genesis-nomina-sidebar {
        border-right: 0;
        border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    }

    .genesis-nomina-bottom-strip {
        grid-template-columns: minmax(0, 0.62fr) minmax(240px, 0.38fr);
    }
}

@media (max-width: 767.98px) {
    .genesis-nomina-workspace-header {
        grid-template-columns: 1fr;
    }

    .genesis-nomina-period-card {
        grid-template-columns: 1fr;
    }

    .genesis-nomina-period-card__meta {
        justify-content: flex-start;
    }

    .genesis-nomina-workspace-actions {
        max-width: none;
    }

    .genesis-nomina-workspace-toolbar {
        grid-template-columns: 1fr;
    }

    .genesis-nomina-metrics-grid {
        grid-template-columns: 1fr;
    }

    .genesis-nomina-metrics-grid--workspace {
        display: flex;
    }

    .genesis-nomina-actions-grid {
        display: grid;
        grid-template-columns: 1fr;
    }
}

:root {
    --blue: #3399ff;
    --blue-soft: rgba(51, 153, 255, 0.16);
    --blue-contrast: #ffffff;
    --indigo: #7744ff;
    --indigo-soft: rgba(119, 68, 255, 0.16);
    --indigo-contrast: #ffffff;
    --pink: #ff66b2;
    --pink-soft: rgba(255, 102, 178, 0.16);
    --pink-contrast: #ffffff;
    --workteam-orange: #ff8200;
    --workteam-orange-soft: rgba(255, 130, 0, 0.18);
    --workteam-orange-contrast: #ffffff;
    --orange: var(--workteam-orange);
    --orange-soft: var(--workteam-orange-soft);
    --orange-contrast: var(--workteam-orange-contrast);
    --green: #36c76c;
    --green-soft: rgba(54, 199, 108, 0.16);
    --green-contrast: #ffffff;
    --teal: #33cccc;
    --teal-soft: rgba(51, 204, 204, 0.16);
    --teal-contrast: #ffffff;
    --cyan: #33cccc;
    --cyan-soft: rgba(51, 204, 204, 0.16);
    --cyan-contrast: #ffffff;
    --white: #ffffff;
    --white-soft: rgba(255, 255, 255, 0.92);
    --white-contrast: #344767;
    --workteam-gray: #d0d3d4;
    --workteam-gray-soft: rgba(208, 211, 212, 0.28);
    --workteam-gray-contrast: #384765;
    --gray-dark: #555555;
    --gray-dark-soft: rgba(85, 85, 85, 0.18);
    --gray-dark-contrast: #ffffff;
    --black: #000000;
    --black-soft: rgba(0, 0, 0, 0.18);
    --black-contrast: #ffffff;
    --navy: #384765;
    --navy-soft: rgba(56, 71, 101, 0.18);
    --navy-contrast: #ffffff;
    --lightblue: #86bad8;
    --lightblue-soft: rgba(134, 186, 216, 0.22);
    --lightblue-contrast: #344767;
    --primary: #3399ff;
    --primary-soft: rgba(51, 153, 255, 0.16);
    --primary-contrast: #ffffff;
    --secondary: #9955d6;
    --secondary-soft: rgba(153, 85, 214, 0.16);
    --secondary-contrast: #ffffff;
    --success: #36c76c;
    --success-soft: rgba(54, 199, 108, 0.16);
    --success-contrast: #ffffff;
    --info: #33cccc;
    --info-soft: rgba(51, 204, 204, 0.16);
    --info-contrast: #ffffff;
    --warning: #ffe700;
    --warning-soft: rgba(255, 231, 0, 0.2);
    --warning-contrast: #9a3412;
    --danger: #ff6692;
    --danger-soft: rgba(255, 102, 146, 0.16);
    --danger-contrast: #ffffff;
    --light: #f8f9fa;
    --light-soft: rgba(248, 249, 250, 0.96);
    --light-contrast: #344767;
    --dark: #555555;
    --dark-soft: rgba(85, 85, 85, 0.16);
    --dark-contrast: #ffffff;
    --st-light: var(--light);
    --st-light-soft: var(--light-soft);
    --st-light-contrast: var(--light-contrast);
    --st-primary: var(--primary);
    --st-primary-soft: var(--primary-soft);
    --st-primary-contrast: var(--primary-contrast);
    --st-secondary: var(--secondary);
    --st-secondary-soft: var(--secondary-soft);
    --st-secondary-contrast: var(--secondary-contrast);
    --st-info: var(--info);
    --st-info-soft: var(--info-soft);
    --st-info-contrast: var(--info-contrast);
    --st-warning: var(--warning);
    --st-warning-soft: var(--warning-soft);
    --st-warning-contrast: var(--warning-contrast);
    --st-danger: var(--danger);
    --st-danger-soft: var(--danger-soft);
    --st-danger-contrast: var(--danger-contrast);
    --st-success: var(--success);
    --st-success-soft: var(--success-soft);
    --st-success-contrast: var(--success-contrast);
    --st-navy: var(--navy);
    --st-navy-soft: var(--navy-soft);
    --st-navy-contrast: var(--navy-contrast);
    --st-lightblue: var(--lightblue);
    --st-lightblue-soft: var(--lightblue-soft);
    --st-lightblue-contrast: var(--lightblue-contrast);
    --st-teal: var(--teal);
    --st-teal-soft: var(--teal-soft);
    --st-teal-contrast: var(--teal-contrast);
    --st-cyan: var(--cyan);
    --st-cyan-soft: var(--cyan-soft);
    --st-cyan-contrast: var(--cyan-contrast);
    --st-green: var(--green);
    --st-green-soft: var(--green-soft);
    --st-green-contrast: var(--green-contrast);
    --st-orange: var(--workteam-orange);
    --st-orange-soft: var(--workteam-orange-soft);
    --st-orange-contrast: var(--workteam-orange-contrast);
    --st-blue: var(--blue);
    --st-blue-soft: var(--blue-soft);
    --st-blue-contrast: var(--blue-contrast);
    --st-gray-dark: var(--gray-dark);
    --st-gray-dark-soft: var(--gray-dark-soft);
    --st-gray-dark-contrast: var(--gray-dark-contrast);
    --st-gray: var(--workteam-gray);
    --st-gray-soft: var(--workteam-gray-soft);
    --st-gray-contrast: var(--workteam-gray-contrast);
    --st-indigo: var(--indigo);
    --st-indigo-soft: var(--indigo-soft);
    --st-indigo-contrast: var(--indigo-contrast);
    --st-black: var(--black);
    --st-black-soft: var(--black-soft);
    --st-black-contrast: var(--black-contrast);
    --st-white: var(--white);
    --st-white-soft: var(--white-soft);
    --st-white-contrast: var(--white-contrast);
    --genesis-primary: #6273DD;
    --genesis-primary-hover: #7B86E8;
    --genesis-primary-soft: rgba(98, 115, 221, 0.14);
    --genesis-accent: #FF8200;
    --genesis-accent-hover: #E57200;
    --genesis-accent-soft: rgba(255, 130, 0, 0.14);
    --genesis-secondary: #D0D3D4;
    --genesis-black: #000000;
    --genesis-white: #FFFFFF;
    --genesis-gray-700: #646566;
    --genesis-gray-500: #888888;
    --genesis-alert: #FFE700;

    --genesis-support-blue: #6273DD;
    --genesis-support-cyan: #5ECBEB;
    --genesis-support-red: #E96D4C;
    --genesis-support-navy: #384765;
    --genesis-support-green: #B9E5BC;
    --genesis-support-aqua: #B4E6E5;
    --genesis-support-sky: #A1BFED;
    --genesis-support-sand: #F4C097;
    --genesis-support-cream: #FDF3A6;
    --genesis-support-pink: #E24860;
    --genesis-support-violet: #7F81BD;
}

body[data-color-theme="purple"],
body[data-color-theme="indigo"] {
    --genesis-primary: #6273DD;
    --genesis-primary-hover: #7B86E8;
    --genesis-primary-soft: rgba(98, 115, 221, 0.14);
    --genesis-accent: #FF8200;
    --genesis-accent-hover: #E57200;
    --genesis-accent-soft: rgba(255, 130, 0, 0.14);
    --genesis-secondary: #D0D3D4;
    --genesis-support-blue: #6273DD;
}

body[data-color-theme="orange"] {
    --genesis-primary: #FF8200;
    --genesis-primary-hover: #E57200;
    --genesis-primary-soft: rgba(255, 130, 0, 0.16);
    --genesis-accent: #FF8200;
    --genesis-accent-hover: #E57200;
    --genesis-accent-soft: rgba(255, 130, 0, 0.14);
    --genesis-secondary: #D0D3D4;
    --genesis-support-blue: #FF8200;
}

body[data-color-theme="gray"] {
    --genesis-primary: #646566;
    --genesis-primary-hover: #4F5051;
    --genesis-primary-soft: rgba(100, 101, 102, 0.16);
    --genesis-accent: #D0D3D4;
    --genesis-accent-hover: #BEC3C5;
    --genesis-accent-soft: rgba(208, 211, 212, 0.24);
    --genesis-secondary: #D0D3D4;
    --genesis-support-blue: #646566;
}

body {
    color: var(--genesis-gray-700);
}

.genesis-container-shell {
    width: auto;
    max-width: none;
}

.cardRender {
    width: 100%;
}

.genesis-preview-render-shell,
.genesis-preview-render-shell > form,
.genesis-preview-render-shell #renderedForm,
.genesis-preview-render-shell #form,
.genesis-preview-render-shell .content,
.genesis-preview-render-shell .form-rendered {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
}

.genesis-preview-render-shell .form-rendered {
    align-items: flex-start !important;
    --bs-gutter-x: 1.5rem !important;
    --bs-gutter-y: 1rem !important;
}

.genesis-preview-render-shell {
    margin-left: auto;
    margin-right: auto;
    max-width: 1320px;
}

.genesis-preview-render-shell .form-rendered > [class*="col-"] {
    align-self: flex-start;
    height: auto !important;
    min-height: 0 !important;
}

.genesis-preview-render-shell .card,
.genesis-preview-render-shell .card-body,
.genesis-preview-render-shell .genesis-money-exchange,
.genesis-preview-render-shell .genesis-cart,
.genesis-preview-render-shell .genesis-status-box,
.genesis-preview-render-shell .genesis-small-minimal-box,
.genesis-preview-render-shell .genesis-metric-card,
.genesis-preview-render-shell .genesis-card-profile,
.genesis-preview-render-shell .genesis-long-card,
.genesis-preview-render-shell .genesis-profile-component,
.genesis-preview-render-shell .genesis-profile-cover {
    height: auto !important;
    min-height: 0 !important;
}

.footer {
    background: rgba(248, 249, 250, 0.92);
    width: calc(100% - 2rem);
    left: 1rem;
    position: fixed;
    bottom: 0;
    z-index: var(--genesis-z-shell-footer);
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.footer .nav-footer .nav-link,
.footer .copyright,
.footer .copyright a {
    color: var(--genesis-gray-700) !important;
}

.main-content {
    padding-bottom: 6.5rem;
}

.fixed-plugin .fixed-plugin-button {
    bottom: 0.85rem;
    z-index: var(--genesis-z-shell-floating-action);
}

body.app-locked {
    overflow: hidden;
}

body.app-locked .sidenav,
body.app-locked .navbar-vertical,
body.app-locked #navbarBlur,
body.app-locked .footer,
body.app-locked .fixed-plugin,
body.app-locked .developer-panel,
body.app-locked .notification-panel {
    pointer-events: none !important;
}

.app-lock-screen {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    z-index: var(--genesis-z-lock-screen);
}

.app-lock-screen.show {
    display: flex;
}

.app-lock-screen__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(17, 24, 39, 0.56);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.app-lock-screen__dialog {
    position: relative;
    z-index: 1;
    width: min(960px, 100%);
}

.app-lock-screen__card {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 1.5rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.25);
}

.app-lock-screen__visual {
    position: relative;
    min-height: 32rem;
    height: 100%;
    padding: 2.5rem;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    background-size: cover;
    background-position: center;
}

.app-lock-screen__visual-mask {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--genesis-primary) 72%, rgba(15, 23, 42, 0.28)) 0%,
        color-mix(in srgb, var(--genesis-primary-hover) 54%, rgba(15, 23, 42, 0.72)) 100%
    );
}

.app-lock-screen__brand {
    position: relative;
    z-index: 1;
    max-width: 20rem;
}

.app-lock-screen__brand-image {
    max-width: 13rem;
    margin-bottom: 1.5rem;
}

.app-lock-screen__body {
    padding: 2.25rem;
    min-height: 32rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.app-lock-screen__avatar {
    display: flex;
    justify-content: center;
    margin-bottom: 1.5rem;
}

.app-lock-screen__avatar .avatar {
    width: 5.5rem;
    height: 5.5rem;
    box-shadow: 0 12px 24px rgba(17, 24, 39, 0.12);
}

.app-lock-screen__avatar .avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.app-lock-screen__avatar-initials {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
}

.app-lock-screen__identity {
    text-align: center;
    margin-bottom: 1.5rem;
}

.app-lock-screen__summary {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    background: color-mix(in srgb, var(--genesis-primary) 8%, transparent);
    margin-bottom: 1rem;
}

.app-lock-screen__summary-icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.9rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--genesis-primary) 12%, transparent);
    color: var(--genesis-primary);
    flex: 0 0 auto;
}

.app-lock-screen__form,
.app-lock-screen__sso {
    margin-top: 0.5rem;
}

.app-lock-screen__sso-note {
    display: flex;
    gap: 0.85rem;
    align-items: flex-start;
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    background: rgba(17, 24, 39, 0.04);
    color: #344767;
    line-height: 1.5;
}

.app-lock-screen__message {
    border-radius: 0.95rem;
    padding: 0.95rem 1rem;
    margin-bottom: 1rem;
    font-size: 0.95rem;
}

.app-lock-screen__message--error {
    background: rgba(234, 6, 6, 0.08);
    color: #b42318;
}

.app-lock-screen__message--info {
    background: rgba(33, 150, 243, 0.1);
    color: #2152ff;
}

.app-lock-screen__footer {
    margin-top: 1.25rem;
    text-align: center;
}

body.app-onboarding-open {
    overflow: hidden;
}

.app-onboarding {
    inset: 0;
    position: fixed;
    z-index: var(--genesis-z-onboarding);
}

.app-onboarding__backdrop {
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--genesis-primary) 12%, transparent), transparent 34%),
        rgba(15, 23, 42, 0.22);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    inset: 0;
    position: absolute;
}

.app-onboarding__dialog {
    align-items: center;
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 1.5rem;
    position: relative;
}

.app-onboarding__card {
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 1.5rem;
    box-shadow: 0 28px 70px rgba(15, 23, 42, 0.18);
    max-width: 44rem;
    overflow: hidden;
    width: min(100%, 44rem);
}

.app-onboarding__header {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1.5rem 1.5rem 0.5rem;
}

.app-onboarding__brand {
    align-items: center;
    display: flex;
    gap: 1rem;
}

.app-onboarding__brand-icon {
    align-items: center;
    background: linear-gradient(135deg, color-mix(in srgb, var(--genesis-primary) 18%, #ffffff), rgba(255, 255, 255, 0.92));
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 22%, transparent);
    border-radius: 1rem;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
    display: inline-flex;
    height: 3.5rem;
    justify-content: center;
    width: 3.5rem;
}

.app-onboarding__brand-icon img {
    height: 2rem;
    width: 2rem;
}

.app-onboarding__eyebrow {
    color: var(--genesis-primary);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.app-onboarding__close {
    line-height: 1;
}

.app-onboarding__progress {
    display: flex;
    gap: 0.5rem;
    padding: 0 1.5rem 1rem;
}

.app-onboarding__progress-dot {
    background: rgba(148, 163, 184, 0.26);
    border-radius: 999px;
    flex: 1 1 0;
    height: 0.32rem;
    transition: background 0.2s ease;
}

.app-onboarding__progress-dot.is-active {
    background: linear-gradient(90deg, var(--genesis-primary-hover), var(--genesis-primary));
}

.app-onboarding__body {
    padding: 0 1.5rem 1.25rem;
}

.app-onboarding__step {
    min-height: 19rem;
}

.app-onboarding__step-tag {
    color: var(--genesis-primary);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.app-onboarding__hero {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1.25fr) minmax(15rem, 0.9fr);
}

.app-onboarding__hero-copy {
    align-self: center;
}

.app-onboarding__hero-preview {
    align-content: start;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.86));
    border: 1px solid rgba(226, 232, 240, 0.82);
    border-radius: 1.25rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72), 0 16px 34px rgba(15, 23, 42, 0.07);
    display: grid;
    gap: 0.75rem;
    padding: 1.25rem;
}

.app-onboarding__preview-chip {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.88rem;
    font-weight: 700;
    padding: 0.7rem 1rem;
}

.app-onboarding__preview-chip--primary {
    background: linear-gradient(87deg, var(--genesis-primary-hover) 0, var(--genesis-primary) 100%);
    color: #fff;
}

.app-onboarding__preview-chip--secondary {
    background: color-mix(in srgb, var(--genesis-primary) 14%, transparent);
    color: var(--genesis-primary);
}

.app-onboarding__preview-chip--ghost {
    background: rgba(226, 232, 240, 0.56);
    color: #64748b;
}

.app-onboarding__controls {
    display: grid;
    gap: 1.25rem;
}

.app-onboarding__control-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.app-onboarding__control-block {
    min-width: 0;
}

.app-onboarding__mode-group {
    background: rgba(241, 245, 249, 0.92);
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 1rem;
    display: inline-grid;
    gap: 0.45rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0.35rem;
    width: 100%;
}

.app-onboarding__mode-button {
    background: transparent;
    border: 0;
    border-radius: 0.8rem;
    color: #64748b;
    font-weight: 700;
    padding: 0.75rem 1rem;
    transition: background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.app-onboarding__mode-button.is-active {
    background: linear-gradient(87deg, var(--genesis-primary-hover) 0, var(--genesis-primary) 100%);
    box-shadow: 0 10px 20px color-mix(in srgb, var(--genesis-primary) 24%, transparent);
    color: #fff;
}

.app-onboarding__hint {
    background: rgba(248, 250, 252, 0.94);
    border: 1px solid rgba(226, 232, 240, 0.8);
    border-radius: 1rem;
    color: #64748b;
    font-size: 0.9rem;
    line-height: 1.5;
    padding: 0.95rem 1rem;
}

.app-onboarding__settings-callout {
    align-items: flex-start;
    background: linear-gradient(135deg, rgba(248, 250, 252, 0.96), rgba(255, 255, 255, 0.92));
    border: 1px solid rgba(226, 232, 240, 0.86);
    border-radius: 1.2rem;
    box-shadow: 0 16px 34px rgba(15, 23, 42, 0.08);
    display: flex;
    gap: 1rem;
    padding: 1rem 1.05rem;
}

.app-onboarding__settings-icon {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 14%, #ffffff);
    border-radius: 999px;
    color: var(--genesis-primary);
    display: inline-flex;
    height: 2.75rem;
    justify-content: center;
    width: 2.75rem;
}

.app-onboarding__footer {
    align-items: center;
    border-top: 1px solid rgba(226, 232, 240, 0.84);
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.5rem 1.5rem;
}

.app-onboarding__actions {
    display: flex;
    gap: 0.75rem;
}

#appLockUnlockForm .input-group-password,
#accountPasswordForm .input-group-password,
#forcePasswordChangeForm .input-group-password,
#formaLogin .input-group-password,
#formaReestablece .input-group-password {
    flex-wrap: nowrap;
}

#appLockUnlockForm .password-toggle-addon,
#accountPasswordForm .password-toggle-addon,
#forcePasswordChangeForm .password-toggle-addon,
#formaLogin .password-toggle-addon,
#formaReestablece .password-toggle-addon {
    align-items: center;
    background: #fff;
    border: 1px solid #d2d6da;
    border-bottom-left-radius: 0;
    border-left: 0;
    border-top-left-radius: 0;
    box-shadow: none !important;
    color: #67748e;
    display: inline-flex;
    font-size: 0.875rem;
    font-weight: 400;
    justify-content: center;
    line-height: 1.4rem;
    margin-bottom: 0;
    min-width: 3.25rem;
    padding-inline: 0.9rem;
}

#appLockUnlockForm .input-group-password > .form-control,
#accountPasswordForm .input-group-password > .form-control,
#forcePasswordChangeForm .input-group-password > .form-control,
#formaLogin .input-group-password > .form-control,
#formaReestablece .input-group-password > .form-control {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}

#appLockUnlockForm .password-toggle-addon:hover,
#appLockUnlockForm .password-toggle-addon:focus,
#accountPasswordForm .password-toggle-addon:hover,
#accountPasswordForm .password-toggle-addon:focus,
#forcePasswordChangeForm .password-toggle-addon:hover,
#forcePasswordChangeForm .password-toggle-addon:focus,
#formaLogin .password-toggle-addon:hover,
#formaLogin .password-toggle-addon:focus,
#formaReestablece .password-toggle-addon:hover,
#formaReestablece .password-toggle-addon:focus {
    background: #fff;
    border-color: #d2d6da;
    color: #344767;
}

.account-summary-card .avatar {
    width: 6rem;
    height: 6rem;
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.12);
}

.account-summary-card .avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.account-summary-card {
    border-radius: 1.8rem;
    background: transparent;
    border: 0 !important;
    box-shadow: none !important;
}

.account-summary-hero {
    position: relative;
    min-height: 20rem;
    border-radius: 1.65rem 1.65rem 0 0;
    overflow: hidden;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.16);
}

.account-summary-hero.has-photo {
    background-color: color-mix(in srgb, var(--genesis-primary) 16%, #d9e3f2);
}

.account-summary-hero.has-photo::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--account-photo);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: saturate(0.94) contrast(1.08) brightness(0.96);
    transform: scale(1.015);
}

.account-summary-hero.no-photo {
    background:
        radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.92), transparent 34%),
        linear-gradient(
            145deg,
            color-mix(in srgb, var(--genesis-primary) 14%, #f4f7fc) 0%,
            color-mix(in srgb, var(--genesis-primary) 26%, #dbe4f1) 48%,
            color-mix(in srgb, var(--genesis-primary) 42%, #c2d0e4) 100%
        );
}

.account-summary-hero__veil {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255, 248, 240, 0.03) 0%, rgba(255, 248, 240, 0.02) 28%, rgba(15, 23, 42, 0.04) 64%, rgba(15, 23, 42, 0.08) 100%);
}

.account-summary-hero__footer {
    position: relative;
    margin-top: 0;
    padding: 1.2rem;
    border-radius: 0 0 1.35rem 1.35rem;
    color: #ffffff;
    overflow: hidden;
}

.account-summary-hero__footer::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--account-photo);
    background-size: cover;
    background-position: center 62%;
    transform: scale(1.12) scaleY(-1);
    transform-origin: center;
    filter: blur(18px) saturate(0.88) contrast(1.04) brightness(0.9);
    opacity: 0.72;
}

.account-summary-hero__footer::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.34) 0%, rgba(15, 23, 42, 0.5) 100%);
}

.account-summary-hero.no-photo .account-summary-hero__footer::before {
    background-image:
        radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.92), transparent 34%),
        linear-gradient(
            145deg,
            color-mix(in srgb, var(--genesis-primary) 14%, #f4f7fc) 0%,
            color-mix(in srgb, var(--genesis-primary) 26%, #dbe4f1) 48%,
            color-mix(in srgb, var(--genesis-primary) 42%, #c2d0e4) 100%
        );
    transform: none;
    filter: none;
    opacity: 1;
}

.account-summary-hero__footer > * {
    position: relative;
    z-index: 1;
}

.account-summary-status-dot {
    width: 0.55rem;
    height: 0.55rem;
    border-radius: 999px;
    background: #2dce89;
    box-shadow: 0 0 0 0.18rem rgba(45, 206, 137, 0.24);
    flex: 0 0 auto;
}

.account-summary-hero__title {
    color: #ffffff;
    font-size: 1.52rem;
    font-weight: 620;
    letter-spacing: -0.03em;
    line-height: 1.04;
    text-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
}

.account-summary-hero__subtitle {
    color: rgba(255, 255, 255, 0.84);
    font-size: 0.92rem;
    line-height: 1.4;
    letter-spacing: 0.01em;
    margin-bottom: 0.95rem !important;
}

.account-summary-hero__fallback {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.account-summary-hero__fallback .avatar {
    width: 7rem;
    height: 7rem;
    box-shadow: 0 24px 46px rgba(15, 23, 42, 0.18);
}

.account-summary-hero__access-badge {
    position: absolute;
    left: 1.1rem;
    bottom: 1rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.38rem 0.72rem 0.38rem 0.45rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    color: #344767;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.account-summary-hero__access-icon {
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--genesis-primary);
    color: #ffffff;
    font-size: 0.72rem;
    flex: 0 0 auto;
}

.account-summary-photo-action {
    border: 0;
    border-radius: 999px;
    background: #ffffff;
    color: var(--genesis-primary);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
    padding: 0.72rem 0.95rem;
    font-weight: 700;
    white-space: nowrap;
    font-size: 0.88rem;
    width: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.account-summary-photo-action:hover,
.account-summary-photo-action:focus {
    background: #ffffff;
    color: var(--genesis-primary-hover);
    transform: translateY(-1px);
}

.account-security-note {
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    background: color-mix(in srgb, var(--genesis-primary) 6%, transparent);
}

.account-settings-section-icon {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.9rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    background: var(--genesis-primary-soft);
    color: var(--genesis-primary);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--genesis-primary) 18%, transparent);
}

.account-settings-section-icon i {
    font-size: 1rem;
    line-height: 1;
}

.account-settings-section-icon--info {
    background: rgba(17, 205, 239, 0.12);
    color: #11cdef;
    box-shadow: inset 0 0 0 1px rgba(17, 205, 239, 0.08);
}

body {
    --genesis-ui-font-size-xs: 0.6875rem;
    --genesis-ui-font-size-sm: 0.75rem;
    --genesis-ui-font-size-base: 0.8125rem;
    --genesis-ui-font-size-lg: 0.875rem;
}

body[data-ui-scale="ultra-compact"],
body[data-ui-scale="11"] {
    --genesis-ui-font-size-xs: 0.5625rem;
    --genesis-ui-font-size-sm: 0.625rem;
    --genesis-ui-font-size-base: 0.6875rem;
    --genesis-ui-font-size-lg: 0.75rem;
}

body[data-ui-scale="compact"],
body[data-ui-scale="12"] {
    --genesis-ui-font-size-xs: 0.625rem;
    --genesis-ui-font-size-sm: 0.6875rem;
    --genesis-ui-font-size-base: 0.75rem;
    --genesis-ui-font-size-lg: 0.8125rem;
}

body[data-ui-scale="normal"],
body[data-ui-scale="13"] {
    --genesis-ui-font-size-xs: 0.6875rem;
    --genesis-ui-font-size-sm: 0.75rem;
    --genesis-ui-font-size-base: 0.8125rem;
    --genesis-ui-font-size-lg: 0.875rem;
}

body[data-ui-scale="large"],
body[data-ui-scale="14"] {
    --genesis-ui-font-size-xs: 0.75rem;
    --genesis-ui-font-size-sm: 0.8125rem;
    --genesis-ui-font-size-base: 0.875rem;
    --genesis-ui-font-size-lg: 0.9375rem;
}

body[data-ui-scale="xlarge"],
body[data-ui-scale="15"] {
    --genesis-ui-font-size-xs: 0.8125rem;
    --genesis-ui-font-size-sm: 0.875rem;
    --genesis-ui-font-size-base: 0.9375rem;
    --genesis-ui-font-size-lg: 1rem;
}

body[data-ui-scale="xxlarge"],
body[data-ui-scale="16"] {
    --genesis-ui-font-size-xs: 0.875rem;
    --genesis-ui-font-size-sm: 0.9375rem;
    --genesis-ui-font-size-base: 1rem;
    --genesis-ui-font-size-lg: 1.0625rem;
}

body[data-ui-scale] .navbar-vertical .navbar-nav .nav-link,
body[data-ui-scale] .navbar-main .nav-link,
body[data-ui-scale] .breadcrumb-item,
body[data-ui-scale] .breadcrumb-item a,
body[data-ui-scale] .card-body,
body[data-ui-scale] .card-footer,
body[data-ui-scale] .modal-body,
body[data-ui-scale] .modal-footer,
body[data-ui-scale] .dropdown-menu,
body[data-ui-scale] .dropdown-item,
body[data-ui-scale] .form-control,
body[data-ui-scale] .form-select,
body[data-ui-scale] .form-label,
body[data-ui-scale] .btn,
body[data-ui-scale] .nav-footer .nav-link,
body[data-ui-scale] .notification-panel .card,
body[data-ui-scale] .fixed-plugin .card,
body[data-ui-scale] .fixed-plugin .form-control,
body[data-ui-scale] .fixed-plugin .form-label {
    font-size: var(--genesis-ui-font-size-base);
}

body[data-ui-scale] .text-xs {
    font-size: var(--genesis-ui-font-size-xs) !important;
}

select.form-control:not([multiple]):not([size]),
select.form-select:not([multiple]):not([size]) {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23344767' d='M6 7.4a.8.8 0 0 1-.57-.24L.8 2.54A.8.8 0 0 1 1.93 1.4L6 5.47 10.07 1.4a.8.8 0 0 1 1.13 1.13L6.57 7.16A.8.8 0 0 1 6 7.4Z'/%3E%3C/svg%3E");
    background-position: right 0.9rem center;
    background-repeat: no-repeat;
    background-size: 0.8rem 0.55rem;
    padding-right: 2.5rem;
}

select.form-control,
select.form-select {
    color: #344767 !important;
    -webkit-text-fill-color: #344767;
}

select.form-control option,
select.form-select option,
select.form-control optgroup,
select.form-select optgroup {
    background-color: #ffffff;
    color: #344767 !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--bootstrap .select2-selection__rendered {
    color: #344767 !important;
    -webkit-text-fill-color: #344767;
    opacity: 1 !important;
}

body[data-ui-scale] .text-sm,
body[data-ui-scale] .fixed-plugin .card-header p,
body[data-ui-scale] .notification-panel-summary__meta,
body[data-ui-scale] .notification-panel-empty__copy {
    font-size: var(--genesis-ui-font-size-sm) !important;
}

body[data-ui-scale] .navbar-vertical .navbar-nav .nav-link .nav-link-text,
body[data-ui-scale] #navbarBlur .breadcrumb .breadcrumb-item,
body[data-ui-scale] #navbarBlur .breadcrumb .breadcrumb-item a {
    font-size: var(--genesis-ui-font-size-base) !important;
}

body[data-ui-scale] .modal-title,
body[data-ui-scale] .content-header h5,
body[data-ui-scale] .content-header h6,
body[data-ui-scale] .fixed-plugin .card-header h5,
body[data-ui-scale] .notification-panel .card-header h5 {
    font-size: var(--genesis-ui-font-size-lg);
}

@media (max-width: 991.98px) {
    .account-summary-hero {
        min-height: 17rem;
    }

    .account-summary-photo-action {
        width: 100%;
    }
}

.genesis-mini-flat-card {
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--genesis-primary) 10%, transparent), transparent 26%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(249, 250, 252, 0.94) 100%);
    border: 0;
    border-radius: 1.5rem;
    box-shadow: 0 18px 32px -28px rgba(52, 71, 103, 0.2);
    overflow: hidden;
    position: relative;
}

.genesis-mini-flat-card__body {
    padding: 1.2rem 1.35rem 1.2rem;
}

.genesis-mini-flat-card__header {
    margin-bottom: 0.7rem;
}

.genesis-mini-flat-card__title {
    color: #344767;
    font-size: 1.08rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin: 0;
}

.genesis-mini-flat-card__subtitle {
    color: #6b7280;
    font-size: 0.8rem;
    line-height: 1.5;
    margin-top: 0.4rem;
}

.genesis-mini-flat-card__list {
    display: block;
    list-style: disc;
    margin: 0;
    padding-left: 1.15rem;
}

.genesis-mini-flat-card__scores {
    display: grid;
    gap: 0.7rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0 0 0.95rem 0;
}

.genesis-mini-flat-card__score {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, color-mix(in srgb, var(--genesis-primary) 6%, #ffffff) 100%);
    border-radius: 1rem;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--genesis-primary) 10%, transparent);
    min-height: 108px;
    padding: 0.95rem 1rem;
}

.genesis-mini-flat-card__score--primary {
    background: linear-gradient(180deg, color-mix(in srgb, var(--genesis-primary) 12%, white) 0%, rgba(255, 255, 255, 0.96) 100%);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--genesis-primary) 14%, transparent);
}

.genesis-mini-flat-card__score--success {
    background: linear-gradient(180deg, rgba(34, 197, 94, 0.12) 0%, rgba(255, 255, 255, 0.96) 100%);
    box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.16);
}

.genesis-mini-flat-card__score--warning {
    background: linear-gradient(180deg, rgba(245, 158, 11, 0.14) 0%, rgba(255, 255, 255, 0.96) 100%);
    box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.18);
}

.genesis-mini-flat-card__score--danger {
    background: linear-gradient(180deg, rgba(239, 68, 68, 0.12) 0%, rgba(255, 255, 255, 0.96) 100%);
    box-shadow: inset 0 0 0 1px rgba(239, 68, 68, 0.16);
}

.genesis-mini-flat-card__score--neutral,
.genesis-mini-flat-card__score--secondary {
    background: linear-gradient(180deg, rgba(148, 163, 184, 0.12) 0%, rgba(255, 255, 255, 0.96) 100%);
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.15);
}

.genesis-mini-flat-card__score-title {
    color: #8b95a7;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.35;
    margin-bottom: 0.45rem;
    text-transform: uppercase;
}

.genesis-mini-flat-card__score-value {
    color: #344767;
    font-size: 1.45rem;
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1.05;
}

.genesis-mini-flat-card__score-subtitle {
    color: #64748b;
    font-size: 0.8rem;
    line-height: 1.45;
    margin-top: 0.42rem;
}

@media (max-width: 1199.98px) {
    .genesis-mini-flat-card__scores {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .genesis-mini-flat-card__scores {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .genesis-mini-flat-card__scores {
        grid-template-columns: 1fr;
    }
}

.genesis-mini-flat-card__item {
    color: #64748b;
    font-size: 0.95rem;
    line-height: 1.62;
    margin: 0 0 0.18rem;
    padding: 0;
}

.genesis-mini-flat-card__item::marker {
    color: var(--genesis-primary);
}

.genesis-mini-flat-card__label {
    color: #344767;
    font-weight: 700;
}

.genesis-mini-flat-card__value {
    color: #64748b;
}

.genesis-mini-flat-card__meta {
    color: #8b95a7;
    font-size: 0.76rem;
    line-height: 1.45;
    margin-top: 0.18rem;
    width: 100%;
}

.genesis-mini-flat-card__empty {
    color: #8b95a7;
    font-size: 0.85rem;
    line-height: 1.45;
}

.genesis-mini-flat-card__footer {
    border-top: 1px solid color-mix(in srgb, var(--genesis-primary) 14%, transparent);
    color: #8b95a7;
    font-size: 0.76rem;
    line-height: 1.45;
    margin-top: 0.85rem;
    padding-top: 0.7rem;
}

.genesis-badge-group-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(249, 250, 252, 0.94) 100%);
    border: 0;
    border-radius: 1.5rem;
    box-shadow: 0 18px 32px -28px rgba(52, 71, 103, 0.2);
    overflow: hidden;
}

.genesis-badge-group-card__body {
    padding: 1.2rem 1.35rem 1.1rem;
}

.genesis-badge-group-card__header {
    margin-bottom: 0.75rem;
}

.genesis-badge-group-card__title {
    color: #344767;
    font-size: 1.02rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin: 0;
}

.genesis-badge-group-card__subtitle {
    color: #6b7280;
    font-size: 0.8rem;
    line-height: 1.5;
    margin-top: 0.38rem;
}

.genesis-badge-group-card__context {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-bottom: 0.8rem;
}

.genesis-badge-group-card__context-line {
    color: #64748b;
    font-size: 0.9rem;
    line-height: 1.5;
}

.genesis-badge-group-card__context-label {
    color: #344767;
    font-weight: 700;
}

.genesis-badge-group-card__context-value {
    color: #64748b;
}

.genesis-badge-group-card__badges {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.genesis-badge-group-card__empty {
    color: #8b95a7;
    font-size: 0.85rem;
    line-height: 1.45;
}

.genesis-succession-plan {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.97) 0%, rgba(249, 250, 252, 0.95) 100%);
    border-radius: 1.5rem;
    box-shadow: 0 14px 24px -22px rgba(52, 71, 103, 0.18);
    overflow: hidden;
}

.genesis-succession-plan__body {
    padding: 1.2rem 1.35rem;
}

.genesis-succession-plan__summary {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    margin-bottom: 1rem;
}

.genesis-succession-plan__summary-line {
    color: #64748b;
    font-size: 0.9rem;
    line-height: 1.6;
    margin: 0;
}

.genesis-succession-plan__summary-label {
    color: #344767;
    font-size: 0.9rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.5;
}

.genesis-succession-plan__summary-value {
    color: #64748b;
    font-size: 0.9rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.6;
}

.genesis-succession-plan__grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.genesis-succession-plan__candidate {
    background: rgba(255, 255, 255, 0.76);
    border-radius: 1.15rem;
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.14);
    min-height: 100%;
    padding: 1rem 1.05rem;
}

.genesis-succession-plan__candidate--primary {
    background: rgba(255, 255, 255, 0.82);
}

.genesis-succession-plan__eyebrow {
    color: #8b95a7;
    display: block;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.35;
    margin-bottom: 0.38rem;
    text-transform: uppercase;
}

.genesis-succession-plan__name {
    color: #344767;
    font-size: 1.08rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.2;
    margin: 0 0 0.45rem;
}

.genesis-succession-plan__status {
    margin-bottom: 0.55rem;
}

.genesis-succession-plan__status .badge {
    font-size: 0.7rem;
    font-weight: 700;
    padding: 0.42em 0.7em;
}

.genesis-succession-plan__copy {
    color: #64748b;
    font-size: 0.86rem;
    line-height: 1.55;
    margin: 0 0 0.65rem;
}

.genesis-succession-plan__list {
    list-style: disc;
    margin: 0;
    padding-left: 1.05rem;
}

.genesis-succession-plan__list-item {
    color: #64748b;
    font-size: 0.8rem;
    line-height: 1.5;
    margin-bottom: 0.2rem;
}

.genesis-succession-plan__list-item::marker {
    color: var(--genesis-primary);
}

.genesis-succession-plan__footer {
    border-top: 1px solid rgba(148, 163, 184, 0.14);
    margin-top: 1rem;
    padding-top: 0.85rem;
}

.genesis-succession-plan__footer-title {
    color: #344767;
    display: block;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1.3;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.genesis-succession-plan__footer-copy {
    color: #64748b;
    font-size: 0.88rem;
    line-height: 1.55;
    margin: 0;
}

.genesis-succession-plan__empty {
    color: #8b95a7;
    font-size: 0.86rem;
    line-height: 1.5;
}

.genesis-ia-evaluation__panel {
    background: rgba(255, 255, 255, 0.78);
    border-color: rgba(148, 163, 184, 0.2) !important;
}

.genesis-ia-evaluation__panel--soft {
    background: rgba(248, 250, 252, 0.92);
}

.genesis-ia-evaluation__heading {
    color: #344767;
}

.genesis-ia-evaluation__note,
.genesis-ia-evaluation__empty {
    color: #6b7280;
}

.genesis-ia-evaluation__alert {
    background: rgba(255, 255, 255, 0.86);
    border-color: rgba(148, 163, 184, 0.22) !important;
    color: #344767;
}

.genesis-ia-evaluation__list {
    background: transparent;
}

.genesis-ia-evaluation__list-item {
    background: transparent;
    color: #64748b;
}


@media (max-width: 991.98px) {
    .genesis-succession-plan__grid {
        grid-template-columns: 1fr;
    }
}

.modal-camera-preview-shell {
    position: relative;
    width: min(520px, calc(100vw - 7rem));
    aspect-ratio: 4 / 3;
    border-radius: 1rem;
    overflow: hidden;
    background: rgba(17, 24, 39, 0.04);
    box-shadow: inset 0 0 0 1px rgba(52, 71, 103, 0.08);
}

.modal-camera-preview-shell::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 1rem;
    box-shadow: inset 0 0 0 1px rgba(98, 115, 221, 0.22);
    pointer-events: none;
}

.modal-camera-crop-guide {
    position: absolute;
    top: 50%;
    left: 50%;
    width: min(320px, calc(100% - 4rem));
    aspect-ratio: 1 / 1;
    transform: translate(-50%, -50%);
    border-radius: 0.9rem;
    box-shadow:
        0 0 0 9999px rgba(17, 24, 39, 0.36),
        inset 0 0 0 2px rgba(255, 255, 255, 0.96),
        0 0 0 2px rgba(98, 115, 221, 0.55);
    pointer-events: none;
    z-index: 3;
}

.modal-camera-crop-guide__label {
    position: absolute;
    top: 0.85rem;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    color: var(--genesis-primary);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.12);
}

.modal-camera-preview-frame,
.modal-camera-preview-shell canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.modal-camera-preview-shell img {
    position: absolute;
    top: 0;
    left: 0;
}

.modal-camera-preview-frame video,
.modal-camera-preview-frame img,
.modal-camera-preview-shell canvas {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.modal-camera-preview-shell > img {
    width: auto;
    height: auto;
    max-width: none;
    max-height: none;
    object-fit: unset;
    display: block;
}

.modal-camera-preview-shell img.is-draggable {
    cursor: grab;
    user-select: none;
    -webkit-user-drag: none;
    touch-action: none;
    z-index: 2;
}

.modal-camera-preview-shell img.is-draggable.is-dragging {
    cursor: grabbing;
}

@media (max-width: 991.98px) {
    .app-lock-screen {
        padding: 1rem;
    }

    .app-lock-screen__body {
        min-height: auto;
        padding: 1.5rem;
    }
}

@media (min-width: 1200px) {
    .g-sidenav-show:not(.g-sidenav-hidden) .footer {
        width: calc(100% - 19.125rem);
        left: 18.125rem;
    }
}

@media (max-width: 1199.98px) {
    .footer {
        width: calc(100% - 1rem);
        left: 0.5rem;
        right: 0.5rem;
    }
}

a:not(.btn):not(.text-primary):not(.text-warning):not(.text-danger):not(.text-success):not(.text-info):not(.text-secondary):not(.text-muted):not(.text-white):not(.text-dark) {
    color: #344767 !important;
}

.text-primary,
.text-warning {
    color: var(--genesis-primary) !important;
}

a:not(.btn):not(.text-primary):not(.text-warning):not(.text-danger):not(.text-success):not(.text-info):not(.text-secondary):not(.text-muted):not(.text-white):not(.text-dark):hover,
a:not(.btn):not(.text-primary):not(.text-warning):not(.text-danger):not(.text-success):not(.text-info):not(.text-secondary):not(.text-muted):not(.text-white):not(.text-dark):focus,
.text-primary:hover,
.text-warning:hover {
    color: var(--genesis-primary-hover) !important;
}

.btn-primary,
.btn.bg-gradient-primary,
.bg-gradient-primary,
.bg-primary {
    background: linear-gradient(87deg, var(--genesis-primary-hover) 0, var(--genesis-primary) 100%) !important;
    border-color: var(--genesis-primary) !important;
    color: var(--genesis-white) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn.bg-gradient-primary:hover,
.btn.bg-gradient-primary:focus,
.btn.bg-gradient-primary:active {
    background: linear-gradient(87deg, var(--genesis-primary) 0, var(--genesis-primary-hover) 100%) !important;
    border-color: var(--genesis-primary-hover) !important;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--genesis-primary) 28%, transparent) !important;
    color: var(--genesis-white) !important;
}

.btn-outline-primary {
    border-color: var(--genesis-primary) !important;
    color: var(--genesis-primary) !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
    background-color: var(--genesis-primary) !important;
    border-color: var(--genesis-primary) !important;
    color: var(--genesis-white) !important;
}

.modal.genesis-modal .modal-dialog {
  margin: 1.75rem auto;
}

body.genesis-collapsibleAccordion-modal-open .modal.genesis-modal,
body.genesis-collapsibleAccordion-modal-open .modal.show {
  z-index: var(--genesis-z-custom-modal) !important;
}

body.genesis-collapsibleAccordion-modal-open .modal-backdrop,
body.genesis-collapsibleAccordion-modal-open .modal-backdrop.show {
  z-index: var(--genesis-z-custom-backdrop) !important;
}

.modal.genesis-modal .modal-content {
  border: 0;
  border-radius: 1rem;
  background: #fff !important;
  color: #344767;
  overflow: hidden;
  box-shadow: 0 24px 48px rgba(17, 24, 39, 0.16);
}

.modal.genesis-modal .modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid rgba(52, 71, 103, 0.1);
  background: #fff !important;
}

.modal.genesis-modal .modal-header.card-header {
  border-radius: 0;
  box-shadow: none;
}

.modal.genesis-modal .modal-title {
  margin: 0;
  color: #344767;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.35;
}

.modal.genesis-modal .modal-body {
  padding: 1.5rem;
  background: #fff;
  color: #525f7f;
}

.modal.genesis-modal .modal-body.genesis-modal-body-flush {
  padding: 0 !important;
  background: #f8f9fe;
}

.modal.genesis-modal .modal-footer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem 1.5rem;
  border-top: 1px solid rgba(52, 71, 103, 0.1);
  background: #fff;
}

.modal.genesis-modal .modal-footer > * {
  margin: 0;
}

.modal.genesis-modal .btn-close,
.modal.genesis-modal .close {
  flex: 0 0 auto;
  margin: 0;
  opacity: 0.72;
  box-shadow: none !important;
}

.modal.genesis-modal .btn-close {
  width: 2rem;
  height: 2rem;
  padding: 0;
  border-radius: 999px;
  background-color: rgba(52, 71, 103, 0.08);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23344767' stroke-width='1.75' stroke-linecap='round'%3E%3Cpath d='M3.5 3.5 12.5 12.5M12.5 3.5 3.5 12.5'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.9rem 0.9rem;
}

.modal.genesis-modal .close {
  width: 2rem;
  height: 2rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(52, 71, 103, 0.08);
  color: #344767;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.modal.genesis-modal .close span {
  font-size: 1.25rem;
  line-height: 1;
}

.modal.genesis-modal .btn-close:hover,
.modal.genesis-modal .btn-close:focus,
.modal.genesis-modal .close:hover,
.modal.genesis-modal .close:focus {
  opacity: 1;
  background: color-mix(in srgb, var(--genesis-primary) 12%, transparent);
}

.modal.genesis-modal .modal-footer .btn + .btn {
  margin-left: 0;
}

.modal.genesis-modal .modal-body .container.text-muted,
.modal.genesis-modal .modal-body .text-muted {
  color: #67748e !important;
}

.genesis-code-modal {
  width: calc(100vw - 2rem);
  max-width: calc(100vw - 2rem);
  height: calc(100vh - 2rem);
  margin: 1rem auto;
}

#myModal .modal-dialog.genesis-code-modal,
#modalCode .modal-dialog.genesis-code-modal {
  width: calc(100vw - 2rem) !important;
  max-width: calc(100vw - 2rem) !important;
  height: calc(100vh - 2rem) !important;
  margin: 1rem auto !important;
}

.genesis-code-modal .modal-content {
  height: calc(100vh - 2rem);
}

.genesis-code-modal .modal-body {
  flex: 1 1 auto;
  overflow: hidden;
  background: #fff;
}

.genesis-code-overlay {
  z-index: var(--genesis-z-code-overlay) !important;
}

[data-growl="container"],
.bootstrap-growl,
#noty_top_layout_container,
.noty_layout,
.noty_bar,
.noty_modal {
  z-index: var(--genesis-z-noty) !important;
}

[data-growl="container"] [data-growl="dismiss"],
.bootstrap-growl .close {
  width: 1.75rem;
  height: 1.75rem;
  border: 0;
  border-radius: 999px;
  background: rgba(52, 71, 103, 0.08) !important;
  color: #344767 !important;
  font-size: 0;
  line-height: 1;
  opacity: 1;
  box-shadow: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  top: 0.65rem !important;
  right: 0.65rem !important;
}

[data-growl="container"] [data-growl="dismiss"]::before,
.bootstrap-growl .close::before {
  content: "\00d7";
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
}

[data-growl="container"] [data-growl="dismiss"]:hover,
[data-growl="container"] [data-growl="dismiss"]:focus,
.bootstrap-growl .close:hover,
.bootstrap-growl .close:focus {
  background: rgba(52, 71, 103, 0.16) !important;
  color: #1f2f53 !important;
}

.genesis-required-summary {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 18px;
  margin: 0 0 18px;
  border: 1px solid rgba(220, 38, 38, 0.18);
  border-left: 5px solid #dc2626;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(254, 242, 242, 0.98) 0%, rgba(255, 255, 255, 0.98) 100%);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
}

.genesis-required-summary__icon {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  box-shadow: 0 10px 20px rgba(220, 38, 38, 0.22);
}

.genesis-required-summary__title {
  color: #991b1b;
  font-weight: 800;
  font-size: 0.98rem;
  line-height: 1.2;
}

.genesis-required-summary__text {
  margin-top: 3px;
  color: #7f1d1d;
  font-size: 0.92rem;
  line-height: 1.45;
}

.genesis-field-invalid {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 0.18rem rgba(239, 68, 68, 0.12) !important;
  background-color: rgba(254, 242, 242, 0.92) !important;
}

.genesis-field-invalid-visual {
  border: 1px solid #ef4444 !important;
  box-shadow: 0 0 0 0.18rem rgba(239, 68, 68, 0.12) !important;
  border-radius: 0.75rem !important;
  background-color: rgba(254, 242, 242, 0.92) !important;
}

.genesis-field-invalid-visual .select2-selection,
.genesis-field-invalid-visual .chosen-single,
.genesis-field-invalid-visual .chosen-choices {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
}

.genesis-field-hydrating {
  position: relative;
  color: transparent !important;
  border-color: rgba(203, 213, 225, 0.92) !important;
  background: linear-gradient(110deg, rgba(241, 245, 249, 0.96) 8%, rgba(255, 255, 255, 0.98) 18%, rgba(241, 245, 249, 0.96) 33%) !important;
  background-size: 220% 100% !important;
  box-shadow: none !important;
  pointer-events: none;
  user-select: none;
  animation: genesisHydrationShimmer 1.15s linear infinite;
}

.genesis-field-hydrating::placeholder {
  color: transparent !important;
}

.genesis-field-hydrating .select2-selection__rendered,
.genesis-field-hydrating .chosen-single span,
.genesis-field-hydrating .search-choice,
.genesis-field-hydrating .note-editable {
  color: transparent !important;
}

.genesis-field-hydrating.select2-selection,
.genesis-field-hydrating.chosen-single,
.genesis-field-hydrating.chosen-choices,
.genesis-field-hydrating.note-editable {
  min-height: 2.75rem;
}

.genesis-field-hydrating.switchery {
  border-color: rgba(203, 213, 225, 0.92) !important;
}

.genesis-block-hydrating {
  position: relative;
  min-height: var(--genesis-block-loading-min-height, 72px);
  overflow: hidden;
  border-radius: 1rem;
  background: linear-gradient(110deg, rgba(241, 245, 249, 0.96) 8%, rgba(255, 255, 255, 0.98) 18%, rgba(241, 245, 249, 0.96) 33%) !important;
  background-size: 220% 100% !important;
  animation: genesisHydrationShimmer 1.15s linear infinite;
}

.genesis-block-hydrating::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(203, 213, 225, 0.68);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.02) 100%);
  pointer-events: none;
}

.genesis-block-hydrating > * {
  visibility: hidden !important;
}

.genesis-form-hydrating .select2-selection__choice__remove,
.genesis-form-hydrating .search-choice-close {
  visibility: hidden !important;
}

@keyframes genesisHydrationShimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

.switchery {
  width: 52px !important;
  height: 30px !important;
  border-radius: 11px !important;
  border-width: 1px !important;
  border-color: rgba(148, 163, 184, 0.42) !important;
  background: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65), 0 6px 18px rgba(15, 23, 42, 0.08) !important;
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease !important;
}

.switchery > small {
  width: 24px !important;
  height: 24px !important;
  top: 2px !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #ffffff 0%, #eef2f7 100%) !important;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.16), 0 1px 0 rgba(255, 255, 255, 0.75) inset !important;
}

.js-switch:checked + .switchery,
.js-switchery:checked + .switchery {
  background-image: linear-gradient(135deg, var(--genesis-primary) 0%, var(--genesis-primary-hover) 100%) !important;
  border-color: color-mix(in srgb, var(--genesis-primary) 56%, transparent) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 10px 18px color-mix(in srgb, var(--genesis-primary) 24%, transparent) !important;
}

.switchery.switcheryDisabled,
.switchery[disabled] {
  cursor: not-allowed !important;
  opacity: 0.56 !important;
  filter: grayscale(0.08);
}

.form-switch .form-check-input {
  width: 52px;
  min-width: 52px;
  height: 30px;
  margin-top: 0;
  border-radius: 11px;
  border: 1px solid rgba(148, 163, 184, 0.42);
  background-color: #eef2f7;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Crect x='0' y='0' width='24' height='24' rx='8' fill='%23ffffff'/%3E%3C/svg%3E"), linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);
  background-repeat: no-repeat, no-repeat;
  background-position: left 2px center, center;
  background-size: 24px 24px, 100% 100%;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65), 0 6px 18px rgba(15, 23, 42, 0.08);
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background-position 0.18s ease;
  cursor: pointer;
}

.form-switch .form-check-input::after {
  content: none !important;
  display: none !important;
}

.form-switch .form-check-input:checked {
  border-color: color-mix(in srgb, var(--genesis-primary) 56%, transparent);
  background-color: var(--genesis-primary);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Crect x='0' y='0' width='24' height='24' rx='8' fill='%23ffffff'/%3E%3C/svg%3E"), linear-gradient(135deg, var(--genesis-primary) 0%, var(--genesis-primary-hover) 100%);
  background-position: right 2px center, center;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 10px 18px color-mix(in srgb, var(--genesis-primary) 24%, transparent);
}

.form-switch .form-check-input:focus {
  border-color: color-mix(in srgb, var(--genesis-primary) 56%, transparent);
  box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--genesis-primary) 18%, transparent);
}

.form-switch .form-check-input:disabled {
  cursor: not-allowed;
  opacity: 0.56;
  filter: grayscale(0.08);
}

.genesis-inline-monaco-editor {
  width: 100%;
  height: 300px;
  border: 1px solid rgba(52, 71, 103, 0.14);
  border-radius: 0.75rem;
  overflow: hidden;
}

#fb-editor .form-builder .form-field {
  border-color: #a4a4a4;
  border-radius: 10px;
  border-style: solid;
  border-width: 1px;
}

#fb-editor .form-builder li.form-field.editing {
  background-color: color-mix(in srgb, var(--genesis-primary) 14%, transparent) !important;
  padding-bottom: 50px !important;
}

#fb-editor .form-builder li.form-field:not(.editing) {
  background-color: color-mix(in srgb, var(--genesis-primary) 14%, transparent) !important;
}

#fb-editor .form-builder li.form-field .field-actions,
#fb-editor .form-builder li.form-field .field-actions a {
  opacity: 0.9 !important;
}

#fb-editor .form-builder li.form-field .field-actions:hover,
#fb-editor .form-builder li.form-field .field-actions a:hover {
  opacity: 1 !important;
}

#fb-editor .form-builder .cb-wrap li {
  padding: 5px !important;
  margin-left: 5px !important;
  margin-right: 5px !important;
  padding-left: 10px !important;
}

#fb-editor .form-builder .frmb-control li i,
#fb-editor .form-builder .frmb-control .input-control,
#fb-editor .field-desc i,
#fb-editor .field-desc .input-control,
#fb-editor .field-desc {
  color: var(--genesis-primary);
}

#fb-editor .input-control > span > span:last-child {
  color: var(--genesis-primary) !important;
}

#fb-editor .form-wrap.form-builder .frmb-control li:last-child {
  margin-bottom: 10px;
}

#fb-editor .form-builder .field-actions {
  margin-top: 0;
  margin-right: 0;
}

#fb-editor .form-wrap.form-builder .frmb .field-actions .btn:last-child {
  border-radius: 0 10px 0 0;
}

#fb-editor .form-builder .form-actions button {
  margin-right: 5px;
  margin-top: 5px;
}

#fb-editor .form-builder .form-group label {
  color: var(--genesis-primary);
}

#fb-editor .field-desc {
  background-color: #fff;
  border-color: #c5c5c5;
  border-width: 0 0 1px 1px;
  padding-top: 3px;
  padding-left: 3px;
  padding-right: 10px;
  height: 32px;
  display: inline-block;
  border-bottom-left-radius: 4px;
  box-shadow: 0 4px 6px rgba(50, 50, 93, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08);
}

#fb-editor .field-desc .control-icon {
  margin-right: 10px;
  margin-left: 0.2em;
}

#fb-editor .form-builder .frmb-control li span,
#fb-editor .field-desc span {
  color: var(--bs-body-color);
}

#fb-editor .form-elements {
  background-color: rgb(255, 255, 255) !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: space-between;
}

#fb-editor .form-wrap.form-builder {
  height: var(--genesis-form-builder-shell-height);
  margin-left: 5px;
  --genesis-form-builder-toolbar-top: 110px;
  --genesis-form-builder-shell-height: calc(100vh - 134px);
  position: relative;
}

#fb-editor .genesis-form-builder-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 25rem;
  gap: 1rem;
  align-items: stretch;
  height: 100%;
  min-height: 26rem;
  overflow: hidden;
}

#fb-editor .genesis-form-builder-stage-pane,
#fb-editor .genesis-form-builder-palette-pane {
  height: 100%;
  min-height: 0;
}

#fb-editor .genesis-form-builder-stage-pane {
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 0.25rem;
}

#fb-editor .genesis-form-builder-palette-pane {
  overflow: hidden;
}

#fb-editor .genesis-form-builder-stage-pane .frmb.stage-wrap {
  float: none !important;
  margin: 0;
  min-height: 100%;
  width: 100%;
}

#fb-editor .genesis-form-builder-palette-pane .cb-wrap {
  display: flex;
  flex-direction: column;
  float: none !important;
  height: 100%;
  margin: 0;
  position: static !important;
  top: auto !important;
  width: 100% !important;
  z-index: auto;
}

#fb-editor .genesis-form-builder-palette-pane .cb-wrap .form-actions {
  flex: 0 0 auto;
}

#fb-editor .genesis-form-builder-palette-pane .cb-wrap .table-responsive {
  flex: 1 1 auto;
  max-height: none;
  overflow-x: hidden;
  overflow-y: auto;
  width: 100%;
}

#fb-editor .genesis-form-builder-palette-pane .cb-wrap .table-responsive > div {
  position: static !important;
  inset: auto !important;
}

#fb-editor .genesis-form-builder-stage-pane .fb-button.genesis-designer-hidden-field {
  display: block !important;
  opacity: 0.6;
}

@media (max-width: 1199.98px) {
  #fb-editor .genesis-form-builder-shell {
    grid-template-columns: minmax(0, 1fr);
  }

  #fb-editor .genesis-form-builder-palette-pane {
    max-height: 22rem;
  }
}

#fb-editor .form-wrap.form-builder .frm-holder {
  margin-top: 10px;
}

#fb-editor .form-wrap.form-builder .form-field {
  border: 1px solid #ccc;
  border-radius: 10px;
  padding: 10px;
}

#fb-editor .form-wrap.form-builder .form-group {
  box-sizing: border-box;
  flex: 1 0 50%;
  margin-bottom: 10px !important;
  max-width: 50%;
  width: 100%;
}

#fb-editor .form-wrap.form-builder .frmb .form-elements .false-label:first-child,
#fb-editor .form-wrap.form-builder .frmb .form-elements label:first-child {
  font-size: 0.8rem !important;
  font-weight: 200 !important;
  text-align: left !important;
  white-space: normal !important;
  width: 100% !important;
}

#fb-editor .form-wrap.form-builder .frmb .form-elements .input-wrap {
  margin-left: 30px !important;
}

#fb-editor .form-wrap.form-builder .frmb li .close-field {
  background: #919191 !important;
  border-radius: 10px !important;
  color: white !important;
  margin-bottom: -50px !important;
  max-width: 200px !important;
  padding: 5px !important;
  text-align: center !important;
}

#fb-editor .frmb-control.ui-sortable {
  background-color: #fff;
  border: 0;
  border-radius: 10px;
  display: table;
  max-height: none;
  top: 100px;
  width: 100%;
}

#fb-editor .frmb-flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.genesis-field-editor-modal .modal-content {
  max-height: calc(100vh - 3rem);
  overflow: hidden;
}

.genesis-field-editor-modal .modal-header {
  border-bottom: 1px solid rgba(52, 71, 103, 0.12);
}

.genesis-field-editor-modal .modal-body {
  background: #f8fafc;
  padding: 1.25rem;
  overflow-y: auto;
}

.genesis-field-editor-modal-body {
  min-height: 0;
  width: 100%;
}

.genesis-field-editor-modal .frm-holder {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  background: #fff;
  border: 1px solid rgba(52, 71, 103, 0.12);
  border-radius: 1rem;
  box-shadow: 0 18px 35px rgba(15, 23, 42, 0.08);
  padding: 1rem 1rem 0.5rem;
}

.genesis-field-editor-footer {
  border-top: 1px solid rgba(52, 71, 103, 0.12);
  background: #fff;
  padding: 0.9rem 1.25rem 1rem;
}

.genesis-field-editor-modal .form-elements.genesis-field-editor-layout,
.genesis-field-editor-modal .form-elements.genesis-field-editor-layout > .form-elements-inner.genesis-field-editor-grid {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  row-gap: 0.75rem;
  column-gap: 1rem;
  margin: 0;
  width: 100% !important;
  max-width: 100% !important;
}

.genesis-field-editor-modal .close-field {
  display: none !important;
}

.genesis-field-editor-modal .form-group {
  margin-bottom: 1rem;
}

.genesis-field-editor-modal .form-elements.row {
  row-gap: 0.75rem;
}

.genesis-field-editor-modal .form-elements.genesis-field-editor-layout > *,
.genesis-field-editor-modal .form-elements.genesis-field-editor-layout > .form-elements-inner.genesis-field-editor-grid > * {
  min-width: 0;
  width: calc(50% - 0.5rem) !important;
  max-width: calc(50% - 0.5rem) !important;
  flex: 0 0 calc(50% - 0.5rem) !important;
  float: none !important;
  clear: none !important;
}

.genesis-field-editor-modal .form-elements.genesis-field-editor-layout > .genesis-field-editor-span-full,
.genesis-field-editor-modal .form-elements.genesis-field-editor-layout > .form-elements-inner.genesis-field-editor-grid > .genesis-field-editor-span-full {
  width: 100% !important;
  max-width: 100% !important;
  flex-basis: 100% !important;
  float: none !important;
  clear: none !important;
}

@media (max-width: 767.98px) {
  .genesis-field-editor-modal .form-elements.genesis-field-editor-layout > *,
  .genesis-field-editor-modal .form-elements.genesis-field-editor-layout > .form-elements-inner.genesis-field-editor-grid > * {
    width: 100%;
    max-width: 100%;
    flex-basis: 100%;
  }
}

.genesis-field-editor-modal .form-elements > .form-group > label,
.genesis-field-editor-modal .form-elements .form-group > label {
  display: inline-block;
  margin-bottom: 0.4rem;
  color: var(--genesis-primary);
  font-size: 0.82rem;
  font-weight: 600;
}

.genesis-field-editor-modal .frm-holder .form-elements.genesis-field-editor-layout .input-wrap,
.genesis-field-editor-modal .frm-holder .form-elements.genesis-field-editor-layout .input-group-wrap {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
}

.genesis-field-editor-modal .form-elements .form-control,
.genesis-field-editor-modal .form-elements select,
.genesis-field-editor-modal .form-elements textarea {
  min-height: 2.5rem;
}

.genesis-field-editor-modal .form-elements select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3E%3Cpath fill='%23344767' d='M4.47 5.97a.75.75 0 0 1 1.06 0L8 8.44l2.47-2.47a.75.75 0 1 1 1.06 1.06l-3 3a.75.75 0 0 1-1.06 0l-3-3a.75.75 0 0 1 0-1.06Z'/%3E%3C/svg%3E");
  background-position: right 0.95rem center;
  background-repeat: no-repeat;
  background-size: 0.95rem;
  padding-right: 2.5rem;
}

.genesis-field-editor-modal .form-elements textarea.form-control {
  min-height: 6rem;
}

.genesis-field-editor-modal .form-elements .available-roles {
  margin-top: 0.75rem;
}

.genesis-field-editor-modal .form-elements .option-actions {
  margin-top: 0.75rem;
}

.genesis-field-editor-modal .form-elements .sortable-options-wrap {
  background: #fff;
  border: 1px solid rgba(52, 71, 103, 0.14);
  border-radius: 0.75rem;
  padding: 0.75rem;
}

.genesis-field-editor-modal .form-elements .sortable-options {
  margin-bottom: 0;
}

.genesis-field-editor-modal .form-elements .style-wrap .btn-group {
  gap: 0.5rem;
  flex-wrap: wrap;
}

.genesis-field-editor-modal .form-elements .style-wrap .btn {
  border-radius: 0.65rem;
  border-width: 2px;
  transition: box-shadow 0.18s ease, transform 0.18s ease, border-color 0.18s ease;
}

.genesis-field-editor-modal .form-elements .style-wrap .btn.selected {
  position: relative;
  z-index: 1;
  transform: translateY(-1px);
  border-color: var(--genesis-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--genesis-primary) 22%, transparent);
}

.genesis-field-editor-modal .form-elements .style-wrap .btn.selected:focus,
.genesis-field-editor-modal .form-elements .style-wrap .btn.selected:hover {
  border-color: var(--genesis-primary);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--genesis-primary) 26%, transparent);
}

.genesis-field-editor-modal .form-elements .tooltip-element {
  margin-left: 0.35rem;
}

.genesis-editor-component-placeholder {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  width: 100%;
  min-height: 5.5rem;
  padding: 1rem 1.15rem;
  border: 1px dashed color-mix(in srgb, var(--genesis-primary) 32%, transparent);
  border-radius: 0.85rem;
  background: linear-gradient(135deg, color-mix(in srgb, var(--genesis-primary) 8%, transparent), rgba(17, 205, 239, 0.08));
}

.genesis-editor-component-title {
  color: #344767;
  font-size: 0.95rem;
  font-weight: 700;
}

.genesis-editor-component-copy {
  color: #67748e;
  font-size: 0.78rem;
}

.card-primary.card-outline {
    border-top: 3px solid var(--genesis-primary);
}

.card-tools {
    align-items: center;
    display: flex;
    justify-content: flex-end;
}

.card-tools .btn.btn-tool,
.genesis-property-group-tools .btn.btn-tool {
    --bs-btn-padding-x: 0;
    --bs-btn-padding-y: 0;
    --bs-btn-border-width: 0;
    --bs-btn-border-color: transparent;
    --bs-btn-bg: transparent;
    --bs-btn-box-shadow: none;
    --bs-btn-focus-box-shadow: none;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    min-height: auto;
    padding: 0.15rem 0.25rem !important;
}

.card > .card-header.pb-0.p-2 {
    padding: 0.9rem 1rem !important;
}

.card > .card-header.pb-0.p-2 .card-title {
    margin-bottom: 0;
}

.card-widget-collapsible {
    overflow: hidden;
    transition: max-height 0.28s ease, opacity 0.22s ease, margin 0.22s ease, padding 0.22s ease;
    will-change: max-height, opacity;
}

.card-widget-collapsible.is-collapsing {
    overflow: hidden;
}

.genesis-multiplicador-group {
    border: 0;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

.genesis-multiplicador-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.15rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.genesis-multiplicador-title {
    margin-bottom: 0;
    font-weight: 700;
}

.genesis-multiplicador-actions {
    margin-left: auto;
}

.genesis-multiplicador-action-group {
    gap: 0.5rem;
}

.genesis-multiplicador-group-body {
    padding: 1rem 1.15rem;
    background: rgba(255, 255, 255, 0.92);
}

.genesis-multiplicador-template {
    margin: 0;
}

.genesis-multiplicador-item-column,
.genesis-multiplicador-remove-column {
    display: flex;
}

.genesis-multiplicador-card {
    width: 100%;
    margin-bottom: 0 !important;
    border: 1px solid rgba(52, 71, 103, 0.08);
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.08);
}

.genesis-multiplicador-item-body {
    padding: 1rem;
}

.genesis-multiplicador-item-content {
    padding: 0;
}

.genesis-multiplicador-remove-wrap {
    width: 100%;
    min-height: 100%;
}

.genesis-multiplicador-remove-btn {
    min-width: 0;
}

.genesis-card-widget {
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

.card {
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.card:hover {
    box-shadow: 0 18px 34px rgba(15, 23, 42, 0.1);
    transform: translateY(-2px);
}

.modal .card:hover,
.fixed-plugin .card:hover,
.developer-panel > .card:hover,
.error-panel > .card:hover,
.notification-panel > .card:hover,
.tabControl > .card:hover,
.tabStep > .card:hover {
    box-shadow: inherit;
    transform: none;
}

.genesis-small-simple-box .card-body,
.genesis-small-minimal-box .card-body,
.genesis-small-card-icon .card-body,
.genesis-small-card-icon .card-footer {
    position: relative;
}

.genesis-small-simple-box {
    min-height: 100%;
}

.genesis-small-simple-box-copy p {
    letter-spacing: 0.04em;
}

.genesis-small-simple-box-icon {
    width: 3.25rem;
    height: 3.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    flex: 0 0 3.25rem;
}

.genesis-small-simple-box-icon-col {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.genesis-small-simple-box-icon i,
.genesis-small-simple-box-icon svg {
    color: inherit !important;
    fill: currentColor !important;
    opacity: 1;
    top: auto;
    position: static;
    line-height: 1;
}

.genesis-small-minimal-box-simple,
.genesis-small-minimal-box-central,
.genesis-small-card-icon {
    background: rgba(255, 255, 255, 0.96);
}

.genesis-small-minimal-box-simple .card-body,
.genesis-small-minimal-box-central .card-body {
    padding: 1.15rem !important;
}

.genesis-small-minimal-box-tone .card-body {
    padding: 1.15rem !important;
}

.genesis-small-card-icon-header {
    padding-bottom: 0 !important;
    border-bottom: 0;
    background: transparent;
}

.genesis-small-card-icon-badge {
    width: 4rem;
    height: 4rem;
    margin-top: 0.35rem;
}

.genesis-small-card-icon-body {
    padding-top: 0.75rem !important;
}

.genesis-small-card-icon-footer {
    padding-top: 0;
    border-top: 0;
    background: transparent;
}

.genesis-small-card-icon-footer .tarjeta-box-button {
    width: 100%;
}

.genesis-metric-card .card-header {
    border-bottom: 0;
    background: transparent;
}

.genesis-metric-card .genesis-metric-card-row {
    row-gap: 1rem;
}

.genesis-metric-card .chart {
    height: 14rem;
}

.genesis-metric-card .genesis-metric-chart {
    margin: 0 auto;
    max-width: 16rem;
}

.genesis-metric-card .genesis-metric-chart-center {
    align-items: center;
    display: flex;
    flex-direction: column;
    inset: 0;
    justify-content: center;
    pointer-events: none;
    position: absolute;
}

.genesis-metric-card .genesis-metric-chart-value {
    color: #344767;
    font-size: 1.65rem;
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1;
}

.genesis-metric-card .genesis-metric-chart-unit {
    color: #67748e;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.2;
    margin-top: 0.25rem;
    text-transform: uppercase;
}

.genesis-metric-card .genesis-metric-card-dot {
    display: inline-block;
    height: 0.75rem;
    min-width: 0.75rem;
    padding: 0;
    width: 0.75rem;
}

.genesis-metric-card .table td {
    border-top-color: rgba(52, 71, 103, 0.08);
}

.genesis-metric-card .genesis-metric-card-table td {
    padding-bottom: 0.9rem;
    padding-top: 0.9rem;
}

.genesis-metric-card .genesis-metric-card-table h6 {
    color: #344767;
    font-weight: 600;
}

.genesis-metric-card .genesis-metric-card-action {
    border-radius: 999px;
    height: 2.5rem;
    padding: 0;
    width: 2.5rem;
}

.bg-st-blue,
.bg-st-primary,
.bg-st-info,
.card-st-info:not(.card-outline) > .card-header,
.card-st-primary:not(.card-outline) > .card-header {
    background-color: color-mix(in srgb, var(--genesis-primary) 18%, transparent) !important;
    color: var(--genesis-black) !important;
}

.text-st-primary,
.text-st-blue,
.text-st-info {
    color: var(--genesis-primary) !important;
}

.bg-st-primary:hover,
.bg-st-blue:hover,
.bg-st-info:hover {
    background-color: color-mix(in srgb, var(--genesis-primary) 24%, transparent) !important;
}

.bg-st-cyan,
.card-st-cyan:not(.card-outline) > .card-header {
    background-color: rgba(94, 203, 235, 0.22) !important;
    color: var(--genesis-black) !important;
}

.text-st-cyan {
    color: #31b7db !important;
}

.bg-st-cyan:hover {
    background-color: rgba(94, 203, 235, 0.28) !important;
}

.bg-st-danger,
.bg-st-red,
.card-st-danger:not(.card-outline) > .card-header {
    background-color: rgba(233, 109, 76, 0.2) !important;
    color: var(--genesis-black) !important;
}

.text-st-danger,
.text-st-red {
    color: #e96d4c !important;
}

.bg-st-danger:hover,
.bg-st-red:hover {
    background-color: rgba(233, 109, 76, 0.26) !important;
}

.bg-st-gray,
.card-st-gray:not(.card-outline) > .card-header {
    background-color: rgba(136, 136, 136, 0.2) !important;
    color: var(--genesis-black) !important;
}

.text-st-gray {
    color: #888888 !important;
}

.bg-st-gray:hover {
    background-color: rgba(136, 136, 136, 0.26) !important;
}

.bg-st-secondary,
.card-st-secondary:not(.card-outline) > .card-header {
    background-color: rgba(153, 85, 214, 0.18) !important;
    color: var(--genesis-black) !important;
}

.text-st-secondary {
    color: #9955d6 !important;
}

.bg-st-secondary:hover {
    background-color: rgba(153, 85, 214, 0.26) !important;
}

.bg-st-gray-dark,
.card-st-gray-dark:not(.card-outline) > .card-header {
    background-color: rgba(100, 101, 102, 0.28) !important;
    color: var(--genesis-white) !important;
}

.text-st-gray-dark {
    color: #646566 !important;
}

.bg-st-gray-dark:hover {
    background-color: rgba(100, 101, 102, 0.34) !important;
}

.bg-st-green,
.bg-st-success,
.card-st-success:not(.card-outline) > .card-header {
    background-color: rgba(185, 229, 188, 0.35) !important;
    color: var(--genesis-black) !important;
}

.text-st-green,
.text-st-success {
    color: #53b65f !important;
}

.bg-st-green:hover,
.bg-st-success:hover {
    background-color: rgba(185, 229, 188, 0.45) !important;
}

.bg-st-indigo,
.card-st-indigo:not(.card-outline) > .card-header {
    background-color: rgba(127, 129, 189, 0.26) !important;
    color: var(--genesis-black) !important;
}

.text-st-indigo {
    color: #6f72b4 !important;
}

.bg-st-indigo:hover {
    background-color: rgba(127, 129, 189, 0.34) !important;
}

.bg-st-navy,
.card-st-navy:not(.card-outline) > .card-header {
    background-color: rgba(56, 71, 101, 0.22) !important;
    color: var(--genesis-black) !important;
}

.text-st-navy {
    color: #384765 !important;
}

.bg-st-navy:hover {
    background-color: rgba(56, 71, 101, 0.3) !important;
}

.bg-st-lightblue,
.card-st-lightblue:not(.card-outline) > .card-header {
    background-color: rgba(134, 186, 216, 0.28) !important;
    color: var(--genesis-black) !important;
}

.text-st-lightblue {
    color: #86bad8 !important;
}

.bg-st-lightblue:hover {
    background-color: rgba(134, 186, 216, 0.36) !important;
}

.bg-st-orange,
.card-st-orange:not(.card-outline) > .card-header {
    background-color: rgba(255, 130, 0, 0.22) !important;
    color: var(--genesis-black) !important;
}

.text-st-orange {
    color: #ff8200 !important;
}

.bg-st-orange:hover {
    background-color: rgba(255, 130, 0, 0.3) !important;
}

.bg-st-pink,
.card-st-pink:not(.card-outline) > .card-header {
    background-color: rgba(226, 72, 96, 0.18) !important;
    color: var(--genesis-black) !important;
}

.text-st-pink {
    color: #e24860 !important;
}

.bg-st-pink:hover {
    background-color: rgba(226, 72, 96, 0.24) !important;
}

.bg-st-purple,
.card-st-purple:not(.card-outline) > .card-header {
    background-color: rgba(127, 129, 189, 0.22) !important;
    color: var(--genesis-black) !important;
}

.text-st-purple {
    color: #7f81bd !important;
}

.bg-st-purple:hover {
    background-color: rgba(127, 129, 189, 0.3) !important;
}

.bg-st-teal,
.card-st-teal:not(.card-outline) > .card-header {
    background-color: rgba(180, 230, 229, 0.3) !important;
    color: var(--genesis-black) !important;
}

.text-st-teal {
    color: #65b7b6 !important;
}

.bg-st-teal:hover {
    background-color: rgba(180, 230, 229, 0.38) !important;
}

.bg-st-warning,
.card-st-warning:not(.card-outline) > .card-header {
    background-color: rgba(253, 243, 166, 0.42) !important;
    color: var(--genesis-black) !important;
}

.text-st-warning {
    color: #c6a325 !important;
}

.bg-st-warning:hover {
    background-color: rgba(253, 243, 166, 0.5) !important;
}

.bg-st-light,
.card-st-light:not(.card-outline) > .card-header,
.bg-st-white,
.card-st-white:not(.card-outline) > .card-header {
    background-color: rgba(248, 249, 250, 0.96) !important;
    color: var(--genesis-black) !important;
}

.text-st-light {
    color: #f8f9fa !important;
}

.text-st-white {
    color: var(--genesis-white) !important;
}

.bg-st-light:hover,
.bg-st-white:hover {
    background-color: rgba(248, 249, 250, 1) !important;
}

.bg-st-black,
.card-st-black:not(.card-outline) > .card-header {
    background-color: rgba(0, 0, 0, 0.82) !important;
    color: var(--genesis-white) !important;
}

.text-st-black {
    color: var(--genesis-black) !important;
}

.bg-st-black:hover {
    background-color: rgba(0, 0, 0, 0.9) !important;
}

.badge-primary {
    background-color: var(--genesis-primary) !important;
    color: var(--genesis-white) !important;
}

.badge-secondary,
.bg-secondary {
    background-color: var(--genesis-secondary) !important;
    color: var(--genesis-black) !important;
}

.badge-info {
    background-color: var(--genesis-support-cyan) !important;
    color: var(--genesis-black) !important;
}

.badge-success {
    background-color: var(--genesis-support-green) !important;
    color: var(--genesis-black) !important;
}

.badge-warning {
    background-color: var(--genesis-alert) !important;
    color: var(--genesis-black) !important;
}

.badge-danger {
    background-color: var(--genesis-support-red) !important;
    color: var(--genesis-white) !important;
}

.badge-dark {
    background-color: var(--genesis-support-navy) !important;
    color: var(--genesis-white) !important;
}

.badge-light {
    background-color: color-mix(in srgb, var(--genesis-white) 88%, var(--genesis-secondary) 12%) !important;
    color: var(--genesis-black) !important;
}

.badge-pill {
    border-radius: 999px !important;
}

.alert-warning,
.bg-warning-soft {
    background-color: rgba(255, 231, 0, 0.25) !important;
    border-color: var(--genesis-alert) !important;
    color: var(--genesis-black) !important;
}

.form-control:focus,
.custom-select:focus,
.custom-control-input:focus ~ .custom-control-label::before {
    border-color: color-mix(in srgb, var(--genesis-primary) 65%, transparent) !important;
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--genesis-primary) 15%, transparent) !important;
}

.input-group .form-control:focus,
.input-group .form-select:focus {
    border-left-color: color-mix(in srgb, var(--genesis-primary) 65%, transparent) !important;
    border-right-color: color-mix(in srgb, var(--genesis-primary) 65%, transparent) !important;
}

.input-group.focused .input-group-text {
    border-color: color-mix(in srgb, var(--genesis-primary) 65%, transparent) !important;
}

.custom-control-input:checked ~ .custom-control-label::before,
.form-check-input:checked,
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
    background-color: var(--genesis-primary) !important;
    border-color: var(--genesis-primary) !important;
}

.tabControl > .card,
.tabStep > .card {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.tabControl > .card > .card-header,
.tabStep > .card > .card-header,
.tabControl > .card > .card-body,
.tabStep > .card > .card-body {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.tabControl > .card > .card-body,
.tabStep > .card > .card-body {
    padding-top: 0 !important;
}

.tabControl > .card > .genesis-switcher-header {
    padding: 0 0 0.5rem !important;
}

.tabControl .genesis-switcher-header-slot {
    display: flex;
    justify-content: flex-start;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.tabControl .genesis-switcher-rail {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    min-width: max-content;
    max-width: 100%;
    padding: 0.18rem;
    border-radius: 0.85rem;
    background: rgba(248, 250, 252, 0.92);
    border: 1px solid rgba(148, 163, 184, 0.14);
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.08);
    position: relative;
}

.tabControl .genesis-switcher-tabs {
    gap: 0.12rem;
    background: transparent;
}

.tabControl .genesis-switcher-tabs > .nav-item {
    z-index: 3;
}

.tabControl .genesis-switcher-highlight {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0.72rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.1);
    pointer-events: none;
    z-index: 1;
    transition: transform 0.28s ease, width 0.28s ease, height 0.28s ease, background-color 0.22s ease, box-shadow 0.22s ease;
}

.tabControl .genesis-switcher-highlight.is-instant {
    transition: none !important;
}

.tabControl .genesis-switcher-tab {
    display: flex;
    justify-content: flex-start !important;
    align-items: center;
    min-height: 2.55rem;
    padding: 0.5rem 1rem !important;
    border-radius: 0.72rem !important;
    color: #344767 !important;
    font-weight: 600;
    line-height: 1.08;
    text-align: left;
    white-space: nowrap;
    position: relative;
    z-index: 3;
    transition: background-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.tabControl .genesis-switcher-tab > span {
    display: block;
    width: 100%;
    text-align: left;
}

.tabControl .genesis-switcher-tab:hover,
.tabControl .genesis-switcher-tab:focus-visible {
    background: rgba(255, 255, 255, 0.72);
}

.tabControl .genesis-switcher-tab:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--genesis-primary) 18%, transparent);
}

.tabControl .genesis-switcher-tab.active,
.tabControl .genesis-switcher-tab[aria-selected="true"] {
    background: rgba(255, 255, 255, 0.96);
    border-radius: 0.72rem !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.1);
}

.tabControl .genesis-switcher-rail.genesis-switcher-highlight-ready .genesis-switcher-tab.active,
.tabControl .genesis-switcher-rail.genesis-switcher-highlight-ready .genesis-switcher-tab[aria-selected="true"] {
    background: transparent;
    box-shadow: none;
}

.tabControl > .card > .genesis-switcher-body {
    padding: 0 !important;
}

.tabControl .genesis-switcher-content {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    padding: 0;
}

.tabControl .genesis-switcher-content > .tab-pane {
    min-height: 100%;
}

.page-item.active .page-link,
.pagination .page-link:hover,
.pagination .page-link:focus {
    background-color: var(--genesis-primary) !important;
    border-color: var(--genesis-primary) !important;
    color: var(--genesis-white) !important;
}

.pagination .page-link {
    color: var(--genesis-gray-700) !important;
}

.content-header .breadcrumb {
    background: transparent;
    padding: 0;
}

.content-header .breadcrumb .breadcrumb-item,
.content-header .breadcrumb .breadcrumb-item a {
    color: var(--genesis-gray-700) !important;
}

.content-header .breadcrumb .breadcrumb-item a:hover,
.content-header .breadcrumb .breadcrumb-item a:focus {
    color: var(--genesis-primary) !important;
}

#navbarBlur .container-fluid {
    padding-bottom: 0.8rem !important;
    padding-top: 0.8rem !important;
}

#navbarBlur nav[aria-label="breadcrumb"] {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
    min-width: 0;
}

#navbarBlur .breadcrumb {
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.32rem;
    line-height: 1.25;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

#navbarBlur .breadcrumb .breadcrumb-item {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: var(--genesis-ui-font-size-base) !important;
    line-height: 1.2;
    margin-bottom: 0;
    min-height: 1.25rem;
}

#navbarBlur .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    padding-right: 0.32rem;
}

#navbarBlur .breadcrumb .breadcrumb-item a {
    line-height: 1.2;
}

#iconNavbarSidenavOld {
    align-items: center;
    display: inline-flex !important;
    min-height: 1.25rem;
}

#iconNavbarSidenavOld .sidenav-toggler-inner {
    height: 1.12rem;
    width: 1.22rem;
}

#iconNavbarSidenavOld .sidenav-toggler-line {
    height: 1px;
    margin: 0.17rem 0;
}

#navbarBlur h6.font-weight-bolder {
    line-height: 1.25;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

#navbarActions {
    margin-top: 0 !important;
}


.navbar-vertical .navbar-nav .nav-link {
    align-items: center !important;
    border-radius: 1rem;
    white-space: normal !important;
}

.navbar-vertical .navbar-nav .nav-link .icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 0 !important;
    border-radius: 0.85rem;
    background-color: color-mix(in srgb, var(--genesis-primary) 12%, transparent) !important;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--genesis-primary) 10%, transparent) !important;
}

.navbar-vertical .navbar-nav .nav-link .icon.icon-shape i,
.navbar-vertical .navbar-nav .nav-link .icon.icon-shape svg {
    position: static !important;
    top: auto !important;
    line-height: 1 !important;
    transform: none !important;
}

.navbar-vertical .navbar-nav .nav-link.active-trail {
    background-color: color-mix(in srgb, var(--genesis-primary) 9%, transparent) !important;
    box-shadow:
        inset 0 0 0 1px color-mix(in srgb, var(--genesis-primary) 10%, transparent) !important,
        0 10px 24px color-mix(in srgb, var(--genesis-primary) 10%, transparent) !important;
}

.navbar-vertical .navbar-nav .nav-link:hover .icon,
.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"] .icon,
.navbar-vertical .navbar-nav .nav-link.active-trail .icon,
.navbar-vertical .navbar-nav > .nav-item.menu-branch-active > .nav-link .icon {
    background-image: none !important;
    background-color: color-mix(in srgb, var(--genesis-primary) 18%, transparent) !important;
    box-shadow: 0 6px 16px color-mix(in srgb, var(--genesis-primary) 20%, transparent) !important;
}

.navbar-vertical .navbar-nav .nav-link.active .icon {
    background-image: linear-gradient(87deg, var(--genesis-primary-hover) 0, var(--genesis-primary) 100%) !important;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--genesis-primary) 28%, transparent) !important;
}

.navbar-vertical .navbar-nav .nav-link:hover .icon i,
.navbar-vertical .navbar-nav .nav-link:hover .icon svg {
    color: var(--genesis-primary) !important;
    fill: currentColor !important;
}

.navbar-vertical .navbar-nav .nav-link .icon i {
    color: var(--genesis-primary) !important;
    fill: currentColor !important;
    opacity: 1 !important;
}

.navbar-vertical .navbar-nav .nav-link .nav-link-text {
    color: var(--genesis-gray-700) !important;
    flex: 1 1 auto;
    min-width: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    white-space: normal !important;
    line-height: 1.35;
}

.navbar-vertical .navbar-nav > .nav-item > .nav-link.active .nav-link-text,
.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"] .nav-link-text {
    color: var(--genesis-gray-700) !important;
    font-weight: 600;
}

.navbar-vertical .navbar-nav .nav-link.active .icon i,
.navbar-vertical .navbar-nav .nav-link.active:hover .icon i {
    color: var(--genesis-white) !important;
    fill: currentColor !important;
}

.navbar-vertical .navbar-nav .nav-link.active .icon svg,
.navbar-vertical .navbar-nav .nav-link.active:hover .icon svg {
    color: var(--genesis-white) !important;
    fill: currentColor !important;
}

.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"] .icon i,
.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"] .icon svg,
.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"]:hover .icon i,
.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"]:hover .icon svg {
    color: var(--genesis-primary) !important;
    fill: currentColor !important;
}

.navbar-vertical .navbar-nav .nav-link.active-trail .icon i {
    color: var(--genesis-primary) !important;
    fill: currentColor !important;
    opacity: 1 !important;
}

.navbar-vertical .navbar-nav .nav-link:hover .icon .opacity-10,
.navbar-vertical .navbar-nav .nav-link:hover .icon [class*="opacity-"],
.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"] .icon .opacity-10,
.navbar-vertical .navbar-nav .nav-link[aria-expanded="true"] .icon [class*="opacity-"],
.navbar-vertical .navbar-nav > .nav-item.menu-branch-active > .nav-link .icon .opacity-10,
.navbar-vertical .navbar-nav > .nav-item.menu-branch-active > .nav-link .icon [class*="opacity-"],
.navbar-vertical .navbar-nav .nav-link.active-trail .icon .opacity-10,
.navbar-vertical .navbar-nav .nav-link.active-trail .icon [class*="opacity-"] {
    opacity: 1 !important;
    color: var(--genesis-primary) !important;
}

.navbar-vertical .navbar-nav .nav-link.active .icon .opacity-10,
.navbar-vertical .navbar-nav .nav-link.active .icon [class*="opacity-"],
.navbar-vertical .navbar-nav .nav-link.active:hover .icon .opacity-10,
.navbar-vertical .navbar-nav .nav-link.active:hover .icon [class*="opacity-"] {
    opacity: 1 !important;
    color: var(--genesis-white) !important;
}

.navbar-vertical .navbar-nav li.nav-item.menu-branch-active > .nav-link:not(.active),
.navbar-vertical .navbar-nav .nav-link.active-trail:not(.active) {
    background-color: color-mix(in srgb, var(--genesis-primary) 9%, transparent) !important;
    box-shadow:
        inset 0 0 0 1px color-mix(in srgb, var(--genesis-primary) 10%, transparent) !important,
        0 10px 24px color-mix(in srgb, var(--genesis-primary) 10%, transparent) !important;
}

.navbar-vertical .navbar-nav li.nav-item.menu-branch-active > .nav-link:not(.active) .nav-link-text,
.navbar-vertical .navbar-nav .nav-link.active-trail:not(.active) .nav-link-text {
    color: var(--genesis-gray-700) !important;
    font-weight: 600;
}

.navbar-vertical .navbar-nav li.nav-item.menu-branch-active > .nav-link:not(.active) .icon,
.navbar-vertical .navbar-nav .nav-link.active-trail:not(.active) .icon {
    background-image: none !important;
    background-color: color-mix(in srgb, var(--genesis-primary) 18%, transparent) !important;
    box-shadow: 0 6px 16px color-mix(in srgb, var(--genesis-primary) 20%, transparent) !important;
}

.navbar-vertical .navbar-nav li.nav-item.menu-branch-active > .nav-link:not(.active) .icon i,
.navbar-vertical .navbar-nav li.nav-item.menu-branch-active > .nav-link:not(.active) .icon svg,
.navbar-vertical .navbar-nav li.nav-item.menu-branch-active > .nav-link:not(.active) .icon .opacity-10,
.navbar-vertical .navbar-nav li.nav-item.menu-branch-active > .nav-link:not(.active) .icon [class*="opacity-"],
.navbar-vertical .navbar-nav .nav-link.active-trail:not(.active) .icon i,
.navbar-vertical .navbar-nav .nav-link.active-trail:not(.active) .icon svg,
.navbar-vertical .navbar-nav .nav-link.active-trail:not(.active) .icon .opacity-10,
.navbar-vertical .navbar-nav .nav-link.active-trail:not(.active) .icon [class*="opacity-"] {
    color: var(--genesis-primary) !important;
    fill: currentColor !important;
    opacity: 1 !important;
}

#sidenav-collapse-main li.nav-item.menu-branch-active > a.nav-link:not(.active) .icon,
#sidenav-collapse-main a.nav-link.active-trail:not(.active) .icon {
    color: var(--genesis-primary) !important;
}

#sidenav-collapse-main li.nav-item.menu-branch-active > a.nav-link:not(.active) .icon i,
#sidenav-collapse-main li.nav-item.menu-branch-active > a.nav-link:not(.active) .icon svg,
#sidenav-collapse-main li.nav-item.menu-branch-active > a.nav-link:not(.active) .icon .opacity-10,
#sidenav-collapse-main li.nav-item.menu-branch-active > a.nav-link:not(.active) .icon [class*="opacity-"],
#sidenav-collapse-main a.nav-link.active-trail:not(.active) .icon i,
#sidenav-collapse-main a.nav-link.active-trail:not(.active) .icon svg,
#sidenav-collapse-main a.nav-link.active-trail:not(.active) .icon .opacity-10,
#sidenav-collapse-main a.nav-link.active-trail:not(.active) .icon [class*="opacity-"] {
    color: var(--genesis-primary) !important;
    fill: currentColor !important;
    opacity: 1 !important;
}

/* Nota:
 * En Cotton Cloud las fotos de usuario se unifican a la geometría base de Argon
 * (radio 0.75rem) aunque algunos flujos legacy sigan emitiendo `img-circle`
 * o wrappers heredados. Esto afecta únicamente fotos/avatares de usuario y no
 * pretende cambiar iconos circulares del framework.
 */
.genesis-photo-rounded,
img.genesis-photo-rounded,
img.img-circle.genesis-photo-rounded,
img.img-circle,
.img-circle,
.img-circle img,
.avatar.genesis-photo-rounded,
.avatar.border-radius-lg img,
.avatar.border-radius-lg {
    border-radius: 0.75rem !important;
}

.img-circle {
    display: block;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    width: fit-content;
}

.img-circle img {
    display: block;
}

.avatar.border-radius-lg img {
    border-radius: inherit !important;
}

.shadow-primary {
    box-shadow: 0 8px 18px rgba(98, 115, 221, 0.28) !important;
}

.developer-panel > .card {
    position: fixed !important;
    right: -34rem;
    top: 0;
    height: 100%;
    left: auto !important;
    transform: unset !important;
    width: min(34rem, 100vw);
    max-width: 100vw;
    border-radius: 0;
    padding: 0 10px;
    transition: 0.2s ease;
    z-index: var(--genesis-z-shell-panel);
}

.developer-panel.show > .card {
    right: 0;
}

.notification-panel > .card {
    position: fixed !important;
    right: -30rem;
    top: 0;
    height: 100%;
    left: auto !important;
    transform: unset !important;
    width: min(30rem, 100vw);
    max-width: 100vw;
    border-radius: 0;
    padding: 0 10px;
    transition: 0.2s ease;
    z-index: var(--genesis-z-shell-panel-notification);
}

.notification-panel.show > .card {
    right: 0;
}

.error-panel > .card {
    position: fixed !important;
    right: -34rem;
    top: 0;
    height: 100%;
    left: auto !important;
    transform: unset !important;
    width: min(34rem, 100vw);
    max-width: 100vw;
    border-radius: 0;
    padding: 0 10px;
    transition: 0.2s ease;
    z-index: var(--genesis-z-shell-panel-error);
}

.error-panel.show > .card {
    right: 0;
}

.notification-panel-icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.85rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #d97706;
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.24), rgba(245, 158, 11, 0.18));
    box-shadow: 0 12px 24px rgba(245, 158, 11, 0.14);
}

.error-panel-icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.85rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #dc2626;
    background: linear-gradient(135deg, rgba(248, 113, 113, 0.22), rgba(239, 68, 68, 0.16));
    box-shadow: 0 12px 24px rgba(220, 38, 38, 0.14);
}

.error-panel-body {
    color: #344767;
    line-height: 1.65;
    word-break: break-word;
}

.error-panel-body p {
    margin-bottom: 0.75rem;
}

.error-panel-body strong,
.error-panel-body h1,
.error-panel-body h2,
.error-panel-body h3,
.error-panel-body h4,
.error-panel-body h5,
.error-panel-body h6 {
    color: #1f2d3d;
}

.notification-panel-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.35rem 0 1rem;
}

.notification-panel-count {
    min-width: 2.75rem;
    height: 2.75rem;
    padding: 0 0.75rem;
    border-radius: 0.9rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    font-weight: 700;
    color: #d97706;
    background: rgba(251, 191, 36, 0.18);
}

.notification-panel-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    min-height: 18rem;
    text-align: center;
    padding: 2rem 1rem;
}

.notification-panel-empty-icon {
    width: 4.25rem;
    height: 4.25rem;
    border-radius: 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #2dce89;
    background: rgba(45, 206, 137, 0.12);
    box-shadow: 0 14px 26px rgba(45, 206, 137, 0.12);
}

.notification-panel-footer {
    border-top: 1px solid rgba(103, 116, 142, 0.16);
    margin-top: 1rem;
    padding-top: 0.9rem;
}

.notification-panel #notificaciones .dropdown-item.dropdown-header.notificacion,
.notification-panel #notificaciones > .dropdown-item.dropdown-header.notificacion {
    display: none !important;
}

.notification-panel #notificaciones > .notificacion {
    list-style: none;
    margin-bottom: 0.75rem;
}

.notification-panel #notificaciones .dropdown-item.border-radius-md {
    border: 1px solid rgba(103, 116, 142, 0.12);
    border-radius: 1rem !important;
    padding: 0.9rem 1rem;
    white-space: normal;
    box-shadow: 0 10px 22px rgba(17, 28, 68, 0.05);
}

.notification-panel #notificaciones .dropdown-item.border-radius-md h6,
.notification-panel #notificaciones .dropdown-item.border-radius-md p {
    white-space: normal;
}

.notification-panel #notificaciones .dropdown-item.border-radius-md h6 {
    line-height: 1.45;
}

.notification-panel #notificaciones .notificacion > a.text-xs.text-danger {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-top: 0.45rem;
    margin-left: 0.4rem;
    text-decoration: none;
}

.developer-panel .developer-grid-link {
    display: block;
    color: inherit !important;
    text-decoration: none;
}

.developer-panel .card-body .row.g-3 {
    --bs-gutter-x: 0.75rem;
    --bs-gutter-y: 0.75rem;
}

.developer-panel .developer-grid-link .min-width-0 {
    min-width: 0;
}

.developer-panel .developer-grid-title {
    overflow-wrap: anywhere;
    word-break: break-word;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    color: #67748e;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    transition: color 0.2s ease;
}

.developer-panel .developer-grid-link:hover .developer-grid-title,
.developer-panel .developer-grid-link:focus .developer-grid-title {
    color: var(--genesis-primary) !important;
}

.z-index-sticky-bar {
    z-index: var(--genesis-z-sticky-bar);
}

body.modal-open .sidenav,
body.modal-open .navbar-vertical,
body.modal-open #navbarBlur,
body.modal-open .footer,
body.modal-open .fixed-plugin,
body.modal-open .fixed-plugin .fixed-plugin-button,
body.modal-open .developer-panel,
body.modal-open .error-panel,
 body.modal-open .notification-panel,
body.has-active-modal .sidenav,
body.has-active-modal .navbar-vertical,
body.has-active-modal #navbarBlur,
body.has-active-modal .footer,
body.has-active-modal .fixed-plugin,
body.has-active-modal .fixed-plugin .fixed-plugin-button,
body.has-active-modal .developer-panel,
body.has-active-modal .error-panel,
 body.has-active-modal .notification-panel {
    z-index: var(--genesis-z-shell) !important;
}

body.modal-open .main-content,
body.modal-open .sidenav,
body.modal-open .navbar-vertical,
body.modal-open .sidenav .nav-link-text,
body.modal-open #navbarBlur,
body.modal-open .footer,
body.modal-open .fixed-plugin,
body.modal-open .fixed-plugin .card,
body.modal-open .developer-panel > .card,
body.modal-open .error-panel > .card,
 body.modal-open .notification-panel > .card,
body.has-active-modal .main-content,
body.has-active-modal .sidenav,
body.has-active-modal .navbar-vertical,
body.has-active-modal .sidenav .nav-link-text,
body.has-active-modal #navbarBlur,
body.has-active-modal .footer,
body.has-active-modal .fixed-plugin,
body.has-active-modal .fixed-plugin .card,
body.has-active-modal .developer-panel > .card,
body.has-active-modal .error-panel > .card,
 body.has-active-modal .notification-panel > .card {
    transition: none !important;
}

body:not(.swal2-toast-shown) .swal2-container {
    z-index: var(--genesis-z-swal-container) !important;
    position: fixed !important;
    inset: 0 !important;
    isolation: isolate;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
}

body.swal2-toast-shown .swal2-container {
    z-index: var(--genesis-z-swal-container) !important;
}

.swal2-popup {
    border-radius: 10px !important;
    z-index: var(--genesis-z-swal-popup) !important;
}

.swal2-styled.swal2-cancel,
.swal2-styled.swal2-confirm {
    border-radius: 10px !important;
}

body.swal2-shown .sidenav,
body.swal2-shown .navbar-vertical,
body.swal2-shown #sidenav-main,
body.swal2-shown #navbarBlur,
body.swal2-shown .footer,
body.swal2-shown .fixed-plugin,
body.swal2-shown .fixed-plugin .fixed-plugin-button,
body.swal2-shown .developer-panel,
body.swal2-shown .error-panel,
body.swal2-shown .notification-panel {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    z-index: var(--genesis-z-content) !important;
}

body.swal2-shown #navbarBlur,
body.swal2-shown .footer {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.swal2-shown .sidenav,
body.swal2-shown #sidenav-main,
body.swal2-shown #navbarBlur,
body.swal2-shown .footer {
    transform: none !important;
    filter: none !important;
    will-change: auto !important;
}

body.swal2-shown .modal-backdrop,
body.swal2-shown .modal-backdrop.show {
    z-index: var(--genesis-z-custom-backdrop) !important;
}

body.swal2-shown .modal.genesis-modal,
body.swal2-shown .modal.show {
    z-index: var(--genesis-z-custom-modal) !important;
}

.sidenav,
.navbar-vertical.navbar-expand-xs,
#sidenav-main {
    z-index: var(--genesis-z-shell) !important;
}

.fixed-plugin .card {
    z-index: var(--genesis-z-shell-panel) !important;
}

.modal {
    z-index: var(--genesis-z-bootstrap-modal);
}

.modal-backdrop {
    z-index: var(--genesis-z-bootstrap-backdrop);
}

.toast-container {
    z-index: var(--genesis-z-bootstrap-toast);
}

.flatpickr-calendar.open {
    z-index: var(--genesis-z-bootstrap-popover) !important;
}

#navbarBlur {
    z-index: var(--genesis-z-shell-topbar) !important;
    background-color: transparent !important;
    background-image: none !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}#navbarBlur.bg-white,
#navbarBlur.position-sticky,
#navbarBlur.left-auto {
    background-color: rgba(255, 255, 255, 0.94) !important;
    background-image: none !important;
    border: 1px solid rgba(226, 232, 240, 0.88);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: 0 10px 24px rgba(148, 163, 184, 0.12);
}

#navbarBlur.bg-white .nav-link,
#navbarBlur.position-sticky .nav-link,
#navbarBlur.left-auto .nav-link,
#navbarBlur.bg-white .breadcrumb-item,
#navbarBlur.position-sticky .breadcrumb-item,
#navbarBlur.left-auto .breadcrumb-item,
#navbarBlur.bg-white .breadcrumb-item a,
#navbarBlur.position-sticky .breadcrumb-item a,
#navbarBlur.left-auto .breadcrumb-item a,
#navbarBlur.bg-white h6,
#navbarBlur.position-sticky h6,
#navbarBlur.left-auto h6,
#navbarBlur.bg-white i,
#navbarBlur.position-sticky i,
#navbarBlur.left-auto i {
    color: #344767 !important;
}

#navbarBlur.bg-white .sidenav-toggler-line,
#navbarBlur.position-sticky .sidenav-toggler-line,
#navbarBlur.left-auto .sidenav-toggler-line {
    background-color: #344767 !important;
}

.overlay {
    background: rgba(255, 255, 255, 0.35) !important;
    backdrop-filter: blur(18px) saturate(160%);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    color: #1f2937 !important;
    font-size: 25px !important;
    height: 100% !important;
    left: 0 !important;
    position: fixed !important;
    top: 0 !important;
    width: 100% !important;
    z-index: var(--genesis-z-loader) !important;
}

.overlay .overlay-text,
.genesis-loader-content {
    align-items: center;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 1.25rem;
    box-shadow:
        0 10px 30px rgba(15, 23, 42, 0.12),
        0 2px 8px rgba(15, 23, 42, 0.08);
    color: #1f2937;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    min-width: 12.5rem;
    padding: 1.05rem 1.25rem;
    text-align: center;
    transform: translateY(-2px);
    animation: loaderFadeIn 0.18s ease;
}

@keyframes loaderFadeIn {
    from {
        opacity: 0;
        transform: translateY(6px) scale(0.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.overlay .overlay-text .fa-spinner,
.overlay .overlay-text .fa-spin,
.genesis-loader-spinner {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 12%, #ffffff);
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 26%, transparent);
    border-radius: 999px;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--genesis-primary) 16%, transparent);
    color: var(--genesis-primary);
    display: inline-flex;
    height: 3.1rem;
    justify-content: center;
    width: 3.1rem;
}

.overlay .overlay-text span,
.genesis-loader-label {
    color: inherit;
    font-size: 0.98rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    line-height: 1.2;
}

.genesis-loader-overlay {
    align-items: center;
    display: flex !important;
    justify-content: center;
    opacity: 1;
    transition: opacity 0.18s ease, visibility 0.18s ease;
    visibility: visible;
}

.genesis-loader-overlay.is-leaving {
    opacity: 0;
    visibility: hidden;
}

.genesis-loader-content {
    gap: 0.9rem;
    min-width: 12.5rem;
}

.genesis-loader-spinner {
    font-size: 2.25rem;
    line-height: 1;
    margin-bottom: 0;
}

.genesis-loader-label {
    display: block;
}

.genesis-loader-preview-placeholder {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 12%, transparent);
    border-radius: 999px;
    color: #344767;
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 600;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
}

.genesis-glass-overlay {
    align-items: stretch;
    background:
        linear-gradient(140deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.06)),
        rgba(241, 245, 249, 0.34);
    backdrop-filter: blur(14px) saturate(130%);
    -webkit-backdrop-filter: blur(14px) saturate(130%);
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 0;
    display: flex;
    inset: 0;
    justify-content: center;
    opacity: 1;
    padding: clamp(1rem, 2vw, 1.5rem);
    pointer-events: all;
    position: fixed;
    transition: opacity 0.18s ease, transform 0.18s ease;
    z-index: calc(var(--genesis-z-loader) - 100);
}

.genesis-glass-overlay.is-entering {
    opacity: 0;
    transform: scale(0.985);
}

.genesis-glass-overlay.is-leaving {
    opacity: 0;
    transform: scale(0.99);
}

.genesis-glass-overlay__panel {
    align-self: center;
    align-items: center;
    background: rgba(255, 255, 255, 0.62);
    backdrop-filter: blur(18px) saturate(150%);
    -webkit-backdrop-filter: blur(18px) saturate(150%);
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 1.35rem;
    box-shadow:
        0 24px 52px rgba(15, 23, 42, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.32);
    color: #0f172a;
    display: inline-flex;
    gap: 1rem;
    max-width: min(30rem, 100%);
    padding: 1rem 1.15rem;
    width: auto;
    pointer-events: none;
}

.genesis-glass-overlay__orb {
    align-items: center;
    background:
        radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.88), rgba(59, 130, 246, 0.12)),
        color-mix(in srgb, var(--genesis-primary) 12%, #ffffff);
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 999px;
    box-shadow:
        0 18px 30px color-mix(in srgb, var(--genesis-primary) 16%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.45);
    color: var(--genesis-primary);
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 1.35rem;
    height: 3.5rem;
    justify-content: center;
    position: relative;
    width: 3.5rem;
}

.genesis-glass-overlay__orb::after {
    animation: genesis-glass-pulse 1.8s ease-out infinite;
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 28%, transparent);
    border-radius: inherit;
    content: '';
    inset: -0.35rem;
    opacity: 0.45;
    position: absolute;
}

.genesis-glass-overlay__copy {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
    min-width: 0;
}

.genesis-glass-overlay__title {
    color: inherit;
    font-size: 0.96rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.15;
}

.genesis-glass-overlay__message {
    color: rgba(15, 23, 42, 0.72);
    font-size: 0.86rem;
    line-height: 1.35;
}

.genesis-glass-overlay__dots {
    align-items: center;
    display: inline-flex;
    gap: 0.32rem;
    margin-top: 0.3rem;
}

.genesis-glass-overlay__dots span {
    animation: genesis-glass-dot 1.05s ease-in-out infinite;
    background: color-mix(in srgb, var(--genesis-primary) 72%, white 28%);
    border-radius: 999px;
    display: inline-block;
    height: 0.42rem;
    opacity: 0.34;
    width: 0.42rem;
}

.genesis-glass-overlay__dots span:nth-child(2) {
    animation-delay: 0.12s;
}

.genesis-glass-overlay__dots span:nth-child(3) {
    animation-delay: 0.24s;
}

.genesis-glass-overlay[data-genesis-glass-tone='success'] .genesis-glass-overlay__orb {
    color: #16a34a;
}

.genesis-glass-overlay[data-genesis-glass-tone='warning'] .genesis-glass-overlay__orb {
    color: #d97706;
}

.genesis-glass-overlay[data-genesis-glass-tone='danger'] .genesis-glass-overlay__orb {
    color: #dc2626;
}

@keyframes genesis-glass-pulse {
    0% {
        opacity: 0.46;
        transform: scale(0.94);
    }
    70% {
        opacity: 0;
        transform: scale(1.14);
    }
    100% {
        opacity: 0;
        transform: scale(1.18);
    }
}

@keyframes genesis-glass-dot {
    0%, 80%, 100% {
        opacity: 0.28;
        transform: translateY(0);
    }
    40% {
        opacity: 1;
        transform: translateY(-3px);
    }
}

@keyframes genesis-loader-fade-in {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes genesis-loader-content-in {
    from {
        opacity: 0;
        transform: translateY(8px) scale(0.985);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

#overlay {
    background: rgba(241, 245, 249, 0.48) !important;
    backdrop-filter: blur(12px) saturate(140%);
    -webkit-backdrop-filter: blur(12px) saturate(140%);
    color: #1f2937 !important;
    display: none;
    font-size: 25px !important;
    height: 100% !important;
    left: 0 !important;
    position: fixed !important;
    top: 0 !important;
    width: 100% !important;
    z-index: var(--genesis-z-loader) !important;
}

.highlight {
    background-color: rgba(255, 235, 59, 0.7);
    border-radius: 3px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    color: #000;
    display: inline;
    padding: 0 2px;
}

div[type="expediente"] .expediente {
    width: 100%;
}

div[type="expediente"] .expediente-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    width: 100%;
}

div[type="expediente"] .documento {
    cursor: pointer;
    min-width: 0;
}

div[type="expediente"] .expedienteEstatus {
    background: #f8fafc;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 1rem;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    height: 100%;
    min-height: 210px;
    padding: 1rem;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

div[type="expediente"] .documento:hover .expedienteEstatus {
    border-color: rgba(59, 130, 246, 0.24);
    box-shadow: 0 18px 34px rgba(15, 23, 42, 0.1);
    transform: translateY(-2px);
}

div[type="expediente"] .expedienteEstatusIcon {
    align-items: center;
    background: rgba(59, 130, 246, 0.08);
    border-radius: 0.9rem;
    display: inline-flex;
    height: 3rem;
    justify-content: center;
    width: 3rem;
}

div[type="expediente"] .expedienteEstatusBody {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.7rem;
    min-height: 0;
}

div[type="expediente"] .expedienteTitulo {
    color: #344767;
    font-size: 0.98rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0;
}

div[type="expediente"] .expedienteCta {
    align-items: center;
    align-self: flex-start;
    border: 1px solid transparent;
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 700;
    gap: 0.35rem;
    line-height: 1.1;
    padding: 0.45rem 0.8rem;
}

div[type="expediente"] .expedienteCta.is-muted {
    background: rgba(148, 163, 184, 0.14);
    border-color: rgba(148, 163, 184, 0.18);
    color: #64748b;
}

div[type="expediente"] .expedienteCta.is-warning {
    background: rgba(245, 158, 11, 0.14);
    border-color: rgba(245, 158, 11, 0.2);
    color: #b45309;
}

div[type="expediente"] .expedienteCta.is-success {
    background: rgba(34, 197, 94, 0.14);
    border-color: rgba(34, 197, 94, 0.2);
    color: #15803d;
}

div[type="expediente"] .expedienteCta.is-danger {
    background: rgba(239, 68, 68, 0.14);
    border-color: rgba(239, 68, 68, 0.2);
    color: #b91c1c;
}

div[type="expediente"] .expedienteComentario {
    color: #6b7280;
    font-size: 0.82rem;
    line-height: 1.35;
    min-height: 2.2rem;
}

div[type="expediente"] .expedienteAcciones {
    display: grid;
    gap: 0.65rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: auto;
}

div[type="expediente"] .expedienteAccion {
    min-width: 0;
}

div[type="expediente"] .expedienteAcciones .btn {
    border-radius: 0.8rem;
    box-shadow: none;
    padding: 0.6rem 0.75rem;
    width: 100%;
}

div[type="expediente"] .documento[data-estado-expediente="verificado"] .expedienteEstatus,
div[type="expediente"] .documento[data-estado-expediente="subido"] .expedienteEstatus {
    border-color: rgba(34, 197, 94, 0.22);
}

div[type="expediente"] .documento[data-estado-expediente="porVerificar"] .expedienteEstatus {
    border-color: rgba(245, 158, 11, 0.24);
}

div[type="expediente"] .documento[data-estado-expediente="rechazado"] .expedienteEstatus {
    border-color: rgba(239, 68, 68, 0.24);
}

@media (max-width: 767.98px) {
    div[type="expediente"] .expediente-grid {
        grid-template-columns: 1fr;
    }

    div[type="expediente"] .expedienteEstatus {
        min-height: 0;
    }

    .app-onboarding__dialog {
        align-items: flex-end;
        padding: 0.75rem;
    }

    .app-onboarding__card {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        max-width: 100%;
    }

    .app-onboarding__hero,
    .app-onboarding__control-grid {
        grid-template-columns: 1fr;
    }

    .app-onboarding__step {
        min-height: 0;
    }

    .app-onboarding__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .app-onboarding__actions {
        width: 100%;
    }

    .app-onboarding__actions .btn,
    #appOnboardingSkip {
        width: 100%;
    }
}

/* ---- Legacy business components migrated into the canonical light stylesheet ---- */


#contenedorWebCam {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
}

#contenedorBotonesSecundarios {
    background-color: rgba(255, 255, 255, 0.84);
    border-radius: 0.875rem;
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.14);
    display: none;
    left: 0;
    padding: 0.75rem;
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
}

.bookMarkClass {
    align-items: center;
    background: var(--genesis-alert);
    border-radius: 999px;
    color: var(--genesis-black);
    display: inline-flex;
    font-size: 0.8125rem;
    font-weight: 700;
    justify-content: center;
    min-height: 1.5rem;
    min-width: 1.5rem;
    text-align: center;
}

.bookMarkClass1::after {
    content: "1";
}

.bookMarkClass2::after {
    content: "2";
}

.bookMarkClass3::after {
    content: "3";
}

.bookMarkClass4::after {
    content: "4";
}

.bookMarkClass5::after {
    content: "5";
}

.bookMarkClass6::after {
    content: "6";
}

.bookMarkClass7::after {
    content: "7";
}

.bookMarkClass8::after {
    content: "8";
}

.bookMarkClass9::after {
    content: "9";
}


.chart-circular-container {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100%;
    max-height: 100%;
}

.chart-circular {
    position: relative !important;
    width: 100% !important;
    height: 275px !important;
}

.genesis-chart-footer {
    width: 100%;
}

.genesis-chart-footer__title {
    margin-bottom: 0.75rem;
    color: var(--genesis-gray-700);
    font-size: 0.95rem;
    font-weight: 700;
}

.genesis-chart-footer__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.75rem;
}

.genesis-chart-footer__item {
    min-width: 0;
}

.genesis-chart-footer__card {
    height: 100%;
    min-height: 92px;
    padding: 0.85rem 0.95rem;
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 10%, rgba(15, 23, 42, 0.06));
    border-radius: 0.9rem;
    background: linear-gradient(180deg, color-mix(in srgb, var(--genesis-primary) 4%, #ffffff), rgba(255, 255, 255, 0.98));
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}

.genesis-chart-footer__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.45rem;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.2;
}

.genesis-chart-footer__headline {
    margin-bottom: 0.2rem;
    color: #344767;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.25;
}

.genesis-chart-footer__meta {
    color: #67748e;
    font-size: 0.78rem;
    line-height: 1.35;
    word-break: break-word;
}

@media (max-width: 767.98px) {
    .genesis-chart-footer__grid {
        grid-template-columns: 1fr;
    }
}

.card-ninebox {
    background-color: rgba(248, 249, 250, 0.96);
    border: 1px solid rgba(208, 211, 212, 0.72);
    border-radius: 1rem;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
    margin: 5px;
    max-width: 100%;
    padding: 5px;
}

.card-ninebox .col-4 {
    padding: 5px;
}

.card-ninebox .row {
    margin-bottom: 10px;
}

.genesis-nine-box {
    border: 0;
    border-radius: 1.25rem;
    box-shadow: 0 18px 32px rgba(15, 23, 42, 0.1);
    overflow: hidden;
}

.genesis-nine-box .card-header {
    background: linear-gradient(135deg, color-mix(in srgb, var(--genesis-primary) 10%, transparent), color-mix(in srgb, var(--genesis-primary) 16%, #f8fafc));
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    padding: 1rem 1.15rem;
}

.genesis-nine-box-title {
    color: #344767;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.genesis-nine-box-subtitle {
    color: #8392ab;
    display: block;
    font-size: 0.78rem;
    margin-top: 0.18rem;
}

.genesis-nine-box .card-body {
    padding: 1.15rem;
}

.genesis-nine-box-layout {
    display: grid;
    gap: 1rem;
    grid-template-columns: 5rem minmax(0, 1fr);
}

.genesis-nine-box-axis-y {
    display: block;
}

.genesis-nine-box-axis-y-title {
    align-items: center;
    background: linear-gradient(180deg, var(--genesis-primary), var(--genesis-primary-hover));
    border-radius: 1rem;
    color: #fff;
    display: flex;
    font-size: 0.82rem;
    font-weight: 700;
    justify-content: center;
    letter-spacing: 0.06em;
    height: calc((8.25rem * 3) + (0.6rem * 2));
    padding: 1rem 0.5rem;
    text-align: center;
    text-transform: uppercase;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.genesis-nine-box-axis-y-title small {
    display: block;
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    margin-top: 0.4rem;
    opacity: 0.82;
    text-transform: none;
}

.genesis-nine-box-matrix-wrap {
    min-width: 0;
}

.genesis-nine-box-grid {
    display: grid;
    gap: 0.6rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: repeat(3, 8.25rem);
}

.genesis-nine-box-cell {
    border: 0;
    border-radius: 1rem;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2);
    color: #fff;
    display: flex;
    height: 8.25rem;
    min-height: 8.25rem;
    padding: 1rem;
}

.genesis-nine-box-cell-content {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    justify-content: space-between;
    width: 100%;
}

.genesis-nine-box-cell-hero {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    gap: 0.5rem;
}

.genesis-nine-box-cell-index {
    font-size: 1.4rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    line-height: 1;
    opacity: 0.96;
    text-transform: uppercase;
}

.genesis-nine-box-cell-text {
    display: flex;
    flex-direction: column;
    gap: 0.12rem;
    justify-content: flex-end;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.1;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.genesis-nine-box-box-title {
    display: block;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    opacity: 0.95;
    text-transform: uppercase;
}

.genesis-nine-box-box-count {
    display: block;
    font-size: 2.35rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 0.88;
    margin-left: auto;
    text-align: right;
}

.genesis-nine-box-box-unit {
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    opacity: 0.9;
    text-transform: lowercase;
    text-align: right;
}

.genesis-nine-box-cell--1 { background: linear-gradient(135deg, #2dce89, #1f9d68); }
.genesis-nine-box-cell--2 { background: linear-gradient(135deg, #11cdef, #1a8fd8); }
.genesis-nine-box-cell--3 { background: linear-gradient(135deg, #5e72e4, #324cdd); }
.genesis-nine-box-cell--4 { background: linear-gradient(135deg, #2dce89, #38b27a); }
.genesis-nine-box-cell--5 { background: linear-gradient(135deg, #fb6340, #f56036); }
.genesis-nine-box-cell--6 { background: linear-gradient(135deg, #11cdef, #3a7bd5); }
.genesis-nine-box-cell--7 { background: linear-gradient(135deg, #f5365c, #ec0c38); }
.genesis-nine-box-cell--8 { background: linear-gradient(135deg, #fb6340, #fbb140); }
.genesis-nine-box-cell--9 { background: linear-gradient(135deg, #f5365c, #fb6340); }

.genesis-nine-box-axis-x {
    display: grid;
    gap: 0.6rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 0.75rem;
}

.genesis-nine-box-axis-x-item {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-align: center;
    text-transform: uppercase;
}

.genesis-nine-box-axis-x-item small {
    display: block;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0;
    margin-top: 0.18rem;
    opacity: 0.9;
    text-transform: none;
}

.genesis-nine-box-axis-title-x {
    align-items: center;
    background: linear-gradient(135deg, var(--genesis-primary), var(--genesis-primary-hover));
    border-radius: 1rem;
    color: #fff;
    display: flex;
    flex-direction: column;
    font-size: 0.9rem;
    font-weight: 700;
    justify-content: center;
    margin-top: 0.85rem;
    min-height: 4rem;
    text-align: center;
    text-transform: uppercase;
}

.genesis-nine-box-axis-title-x small {
    font-size: 0.72rem;
    font-weight: 600;
    margin-top: 0.12rem;
    opacity: 0.86;
    text-transform: none;
}

@media (max-width: 991.98px) {
    .genesis-nine-box-layout {
        grid-template-columns: 1fr;
    }

    .genesis-nine-box-axis-y {
        grid-template-rows: none;
    }

    .genesis-nine-box-axis-y-title {
        min-height: auto;
        padding: 0.9rem 1rem;
        writing-mode: horizontal-tb;
        transform: none;
    }

    .genesis-nine-box-grid {
        grid-template-rows: repeat(3, 7.25rem);
    }

    .genesis-nine-box-cell {
        height: 7.25rem;
        min-height: 7.25rem;
        padding: 0.85rem;
    }

    .genesis-nine-box-cell-text {
        font-size: 0.82rem;
    }

    .genesis-nine-box-axis-x-item {
        font-size: 0.72rem;
    }

    .genesis-nine-box-axis-x-item small,
    .genesis-nine-box-axis-title-x small,
    .genesis-nine-box-axis-y-title small {
        font-size: 0.66rem;
    }
}

@media (max-width: 767.98px) {
    .genesis-nine-box .card-body {
        padding: 0.9rem;
    }

    .genesis-nine-box-layout,
    .genesis-nine-box-axis-x {
        gap: 0.75rem;
    }

    .genesis-nine-box-grid,
    .genesis-nine-box-axis-x {
        grid-template-columns: 1fr;
    }

    .genesis-nine-box-grid {
        grid-template-rows: none;
    }

    .genesis-nine-box-cell {
        height: auto;
        min-height: 6.25rem;
    }

    .genesis-nine-box-cell-content {
        gap: 0.35rem;
    }

    .genesis-nine-box-axis-x {
        margin-top: 0.9rem;
    }

    .genesis-nine-box-axis-title-x {
        margin-top: 0.9rem;
        min-height: 3.5rem;
        padding: 0.75rem 1rem;
    }
}

.chat-argon {
    background-color: rgba(248, 249, 250, 0.96);
    border: 1px solid rgba(208, 211, 212, 0.72);
    border-radius: 1rem;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
    min-height: 75% !important;
    padding: 10px;
}

.chat-argon .card-header .card-title {
    font-size: 1.2rem;
    font-weight: 600;
}

.chat-argon .card-body {
    border-radius: 10px;
    border-top: 1px solid rgba(208, 211, 212, 0.72);
    font-size: 0.8rem;
    margin: auto;
    min-height: 100%;
    padding: 0;
}

.chat-argon .carg-body .direc-chat-name {
    font-weight: 600;
    margin: 2px;
}

.chat-argon .card-body .direct-chat-timestamp {
    font-size: 0.7rem;
    margin-left: 5px;
}

.chat-argon .card-body .row-message {
    margin-bottom: 25px;
    margin-top: 25px;
}

.full-calendar {
    background-color: rgba(248, 249, 250, 0.96);
    border: 1px solid rgba(208, 211, 212, 0.72);
    border-radius: 1rem;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
    min-height: 75% !important;
    padding: 10px !important;
}

.full-calendar .fc-toolbar-title {
    font-size: 1.2rem;
    font-weight: 600;
    margin-top: 10px;
}

.full-calendar .fc-toolbar-chunk {
    margin-bottom: 10px;
    margin-top: 10px;
}

.full-calendar thead th {
    font-size: 20px;
    height: 50px;
    vertical-align: middle;
}

.full-calendar .fc .fc-timegrid-col-frame {
    max-width: 90%;
}

.steps {
    border: 0;
    border-radius: 0.25rem;
    display: table !important;
    list-style-type: none;
    margin: 0;
    padding: 0;
    table-layout: fixed;
    width: 100%;
}

.steps li {
    color: var(--genesis-gray-500);
    cursor: pointer;
    display: table-cell;
    font-size: 1rem;
    padding: 1rem 0;
    position: relative;
    text-align: center;
    vertical-align: middle;
}

.steps li em {
    background: color-mix(in srgb, var(--genesis-secondary) 78%, var(--genesis-white) 22%);
    border-radius: 50px;
    color: var(--genesis-white);
    display: block;
    font-size: 1.5rem;
    font-style: normal;
    height: 40px;
    line-height: 40px;
    margin: 0 auto 0.5rem;
    padding: 0;
    position: relative;
    text-align: center;
    transition: all 0.2s;
    width: 40px;
    z-index: 7;
}

.steps li.active em,
.steps li .step-link.active em {
    background: var(--genesis-primary);
    color: var(--genesis-white);
}

.steps li.active .step-link,
.steps li .step-link.active {
    color: var(--genesis-primary) !important;
}

.steps li .step-link {
    color: var(--genesis-gray-500) !important;
    display: block;
    padding: 0;
}

.steps li.active::after,
.steps li.active::before {
    background: var(--genesis-primary);
}

.steps li::after {
    background: color-mix(in srgb, var(--genesis-secondary) 70%, var(--genesis-white) 30%);
    content: "";
    height: 4px;
    left: 50%;
    margin-top: -2px;
    position: absolute;
    top: 2.25rem;
    width: 100%;
    z-index: 1;
}

.steps li::before {
    background: color-mix(in srgb, var(--genesis-secondary) 70%, var(--genesis-white) 30%);
    content: "";
    height: 4px;
    margin-top: -2px;
    position: absolute;
    right: 50%;
    top: 2.25rem;
    width: 100%;
    z-index: 1;
}

.steps li:first-child::before {
    display: none;
}

.steps li:last-child::after {
    display: none;
}

.tarjetaUsuario {
    align-items: center;
    background-color: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(208, 211, 212, 0.92);
    border-radius: 1rem;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
    display: flex;
    margin: 5px;
    padding: 1.5rem;
    transition: box-shadow 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.tarjetaUsuario:hover {
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.12);
    transform: translateY(-3px);
}

.tarjetaUsuario .detallesUsuario {
    color: var(--genesis-gray-700);
    font-size: 15px;
}

.tarjetaUsuario .nombreUsuario {
    color: #222222;
    font-size: 20px;
    font-weight: 700;
}

.tarjetaUsuario img {
    border-radius: 50%;
    height: 70px;
    margin-right: 20px;
    object-fit: cover;
    width: 70px;
}

.tarjetaUsuario .nombreUsuario,
.tarjetaUsuario .detallesUsuario {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    word-wrap: break-word !important;
}


.downloadPhoto_ {
    display: block;
    font-size: 8px;
    margin: auto;
    padding-bottom: 10px;
    text-align: center;
    visibility: visible;
    width: 203px;
}

.profile-updateable-wrapper > .profile-options {
    background: rgba(17, 24, 39, 0.88);
    box-sizing: border-box;
    cursor: pointer;
    display: flex;
    inset: 0;
    align-items: center;
    justify-content: center;
    opacity: 0;
    padding: 1rem;
    pointer-events: none;
    position: absolute;
    transform: translateY(100%);
    transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
    width: 100%;
}

.profile-updateable-wrapper > .profile-options span {
    color: var(--genesis-white);
    font-size: 20px;
    font-weight: bold;
}

.profile-updateable-wrapper {
    border-radius: 0.75rem;
    display: flex;
    justify-content: center;
    margin: auto;
    max-width: 100%;
    overflow: hidden;
    position: relative;
    text-align: center;
    vertical-align: top;
    width: fit-content;
}

.profile-updateable-wrapper > .dz-preview {
    display: none;
}

.profile-updateable-wrapper:hover > .profile-options,
.profile-updateable-wrapper:focus-within > .profile-options {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.profile-updateable-wrapper:hover + .downloadPhoto_ {
    visibility: visible;
}

.genesis-photo-profile-frame {
    display: flex;
    justify-content: center;
}

.genesis-photo-profile-image {
    border: 5px solid color-mix(in srgb, var(--genesis-primary) 26%, #adb5bd) !important;
    box-shadow: 0 16px 28px rgba(17, 28, 68, 0.14);
    display: block;
    height: 128px;
    margin: auto;
    min-height: 128px;
    width: 128px;
}

.genesis-photo-profile-editable {
    background: transparent;
    box-shadow: none;
}

.genesis-photo-profile-download {
    color: #67748e;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-top: 0.4rem;
    text-transform: uppercase;
}

.genesis-photo-profile-overlay {
    align-items: center;
    background: rgba(17, 24, 39, 0.72);
    display: flex;
    justify-content: center;
}

.genesis-photo-profile-overlay span {
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.profile-user-img {
    border-radius: 0.75rem;
    height: 128px;
    object-fit: cover;
    width: 128px;
}

.profile-wt-b {
    border: 3px solid #f56954;
    border-radius: 0.75rem;
    height: 128px;
    margin: 0 auto;
    overflow: hidden;
    padding: 0;
    width: 128px;
}

.profile-wt-b img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.profile-wt-b-small {
    border: 2px solid #f56954;
    border-radius: 0.75rem;
    cursor: pointer;
    height: 40px;
    margin: 0 auto;
    padding: 3px;
    position: relative;
    width: 40px;
}

.profile-wt-b-small img,
.profile-wt-v-small img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.profile-wt-b-small:hover,
.profile-wt-v-small:hover {
    transform: scale(1.05);
}

.profile-wt-v {
    border: 3px solid var(--genesis-secondary);
    border-radius: 0.75rem;
    height: 128px;
    margin: 0 auto;
    padding: 3px;
    width: 128px;
}

.profile-wt-v-small {
    align-items: center;
    background-color: var(--genesis-primary);
    border: 2px solid var(--genesis-secondary);
    border-radius: 0.75rem;
    cursor: pointer;
    display: flex;
    height: 40px;
    justify-content: center;
    overflow: hidden;
    position: relative;
    width: 40px;
}

.sticky-header {
    position: sticky;
    top: 0;
    z-index: 2;
}

[id^="tableResponsive_"] .table-responsive .table.table-head-fixed thead th.sticky-header {
    --bs-table-accent-bg: var(--genesis-white);
    background-color: var(--genesis-white) !important;
    background: var(--genesis-white) !important;
    left: auto;
    z-index: 2;
}

[id^="tableResponsive_"] .table-responsive .table.table-head-fixed thead th.sticky-header.sticky-col {
    --bs-table-accent-bg: var(--genesis-white);
    background-color: var(--genesis-white) !important;
    background: var(--genesis-white) !important;
    left: 0 !important;
    position: sticky !important;
    z-index: 4 !important;
}

[id^="tableResponsive_"] .table-responsive .table.table-head-fixed tbody td.sticky-col {
    --bs-table-accent-bg: var(--genesis-white);
    background-color: var(--genesis-white) !important;
    background: var(--genesis-white) !important;
    left: 0 !important;
    position: sticky !important;
    top: auto !important;
    z-index: 1;
    box-shadow: none;
}

[id^="tableResponsive_"] .table-responsive .table.table-head-fixed thead th.sticky-header > * {
    background-color: inherit;
}

.sticky-col {
    left: 0;
    position: sticky !important;
}

.text-st-dark {
    color: #344767 !important;
}

.text-st-gray-light {
    color: #adb5bd !important;
}

.text-st-gray-lighter {
    color: #ced4da !important;
}

.text-st-gray-lightest {
    color: #e9ecef !important;
}

.text-st-muted {
    color: var(--genesis-gray-500) !important;
}

.text-st-secondary {
    color: var(--genesis-secondary) !important;
}

.text-responsive {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Base minima del patron direct-chat usada por propertyGroup/propertyGroupEdit */
.direct-chat .card-body,
.direct-chat.card .card-body,
.direct-chat .card-body.card-chat {
    overflow-x: hidden;
    overflow-y: hidden;
    padding: 0;
    position: relative;
}

.genesis-property-group-card > .card-body.genesis-direct-chat-body {
    padding: 1rem;
}

.genesis-property-group-card > .card-body.genesis-direct-chat-body > .row {
    --bs-gutter-x: 0.75rem;
    --bs-gutter-y: 1rem;
    margin-left: calc(var(--bs-gutter-x) * -0.5) !important;
    margin-right: calc(var(--bs-gutter-x) * -0.5) !important;
}

.genesis-property-group-card > .card-body.genesis-direct-chat-body > .row > [class*="col-"] {
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    padding-right: calc(var(--bs-gutter-x) * 0.5);
}

.direct-chat-messages,
.direct-chat-contacts {
    transition: transform 0.5s ease-in-out;
}

.direct-chat-contacts {
    background-color: #555;
    bottom: 0;
    color: #fff;
    left: 0;
    overflow: auto;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 5;
}

.genesis-property-group-modal .modal-content {
    overflow: hidden;
}

.genesis-property-group-modal .modal-footer:not(:empty) {
    display: flex !important;
}

.genesis-property-group-modal-body {
    background: #f8fafc;
    max-height: 70vh;
    overflow-y: auto;
    padding: 1.25rem;
}

@media (min-width: 768px) {
    .genesis-property-group-modal .genesis-property-group-edit-pane > .row > .col-12:has(.form-control, .form-select, .input-group, .select2-container, textarea),
    .genesis-property-group-modal .genesis-property-group-edit-pane > .row > [class^="col-md-12"]:has(.form-control, .form-select, .input-group, .select2-container, textarea),
    .genesis-property-group-modal .genesis-property-group-edit-pane > .row > [class*=" col-md-12"]:has(.form-control, .form-select, .input-group, .select2-container, textarea),
    .genesis-property-group-modal .genesis-property-group-edit-pane > .row > [class^="col-lg-12"]:has(.form-control, .form-select, .input-group, .select2-container, textarea),
    .genesis-property-group-modal .genesis-property-group-edit-pane > .row > [class*=" col-lg-12"]:has(.form-control, .form-select, .input-group, .select2-container, textarea) {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

.genesis-property-group-modal .direct-chat-contacts {
    background: transparent;
    color: inherit;
    overflow: visible;
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    transform: none !important;
    z-index: auto;
}

.genesis-property-group-modal .direct-chat-contacts > .row {
    margin-left: 0;
    margin-right: 0;
}

.genesis-property-group-modal .direct-chat-contacts label,
.genesis-property-group-modal .direct-chat-contacts .form-control-label {
    color: #344767 !important;
    font-weight: 600 !important;
}

.genesis-property-group-modal .direct-chat-contacts label,
.genesis-property-group-modal .direct-chat-contacts .form-label {
    color: #344767 !important;
    display: inline-block;
    font-weight: 600 !important;
}

.genesis-property-group-modal .direct-chat-contacts .form-control,
.genesis-property-group-modal .direct-chat-contacts .form-select,
.genesis-property-group-modal .direct-chat-contacts textarea.form-control {
    background: #fff;
    border-color: #d0d7e2;
    color: #344767;
}

.genesis-property-group-modal .direct-chat-contacts select.form-control,
.genesis-property-group-modal .direct-chat-contacts select.form-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-text-fill-color: #344767;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23344767' d='M6 7.4a.8.8 0 0 1-.57-.24L.8 2.54A.8.8 0 0 1 1.93 1.4L6 5.47 10.07 1.4a.8.8 0 0 1 1.13 1.13L6.57 7.16A.8.8 0 0 1 6 7.4Z'/%3E%3C/svg%3E");
    background-position: right 0.9rem center;
    background-repeat: no-repeat;
    background-size: 0.8rem 0.55rem;
    padding-right: 2.5rem;
}

.genesis-property-group-modal .direct-chat-contacts select.form-control option,
.genesis-property-group-modal .direct-chat-contacts select.form-select option,
.genesis-property-group-modal .direct-chat-contacts select.form-control optgroup,
.genesis-property-group-modal .direct-chat-contacts select.form-select optgroup {
    background: #fff;
    color: #344767 !important;
}

.genesis-property-group-modal .direct-chat-contacts .input-group-text {
    background: #fff;
    border-color: #d0d7e2;
    color: #344767;
}

.genesis-property-group-modal .direct-chat-contacts .select2-container {
    width: 100% !important;
}

.genesis-property-group-modal .direct-chat-contacts .select2-container--bootstrap .select2-selection,
.genesis-property-group-modal .direct-chat-contacts .select2-container--default .select2-selection--single,
.genesis-property-group-modal .direct-chat-contacts .select2-container--default .select2-selection--multiple {
    align-items: center;
    background: #fff;
    border: 1px solid #d0d7e2;
    border-radius: 0.75rem;
    box-shadow: none;
    color: #344767;
    display: flex;
    min-height: 2.9rem;
}

.genesis-property-group-modal .direct-chat-contacts .select2-container--default .select2-selection--single .select2-selection__rendered,
.genesis-property-group-modal .direct-chat-contacts .select2-container--bootstrap .select2-selection__rendered {
    color: #344767;
    -webkit-text-fill-color: #344767;
    line-height: 1.35;
    opacity: 1 !important;
    padding-left: 0.85rem;
    padding-right: 2rem;
}

.genesis-property-group-modal .direct-chat-contacts .select2-container--default .select2-selection--single .select2-selection__placeholder,
.genesis-property-group-modal .direct-chat-contacts .select2-container--bootstrap .select2-selection__placeholder {
    color: #8392ab;
}

.genesis-property-group-modal .direct-chat-contacts .select2-container--default .select2-selection--single .select2-selection__arrow,
.genesis-property-group-modal .direct-chat-contacts .select2-container--bootstrap .select2-selection__arrow {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    right: 0.85rem;
    top: 0;
    width: 1rem;
}

.genesis-property-group-modal .direct-chat-contacts .select2-container--default .select2-selection__arrow b,
.genesis-property-group-modal .direct-chat-contacts .select2-container--bootstrap .select2-selection__arrow b {
    border-color: #344767 transparent transparent transparent;
    border-style: solid;
    border-width: 0.32rem 0.28rem 0 0.28rem;
    height: 0;
    margin: 0;
    position: static;
    width: 0;
}

.genesis-property-group-modal .direct-chat-contacts .select2-dropdown {
    border: 1px solid #d0d7e2;
    border-radius: 0.75rem;
    box-shadow: 0 20px 27px rgba(17, 28, 68, 0.12);
    overflow: hidden;
}

.genesis-property-group-modal .direct-chat-contacts .select2-search--dropdown .select2-search__field {
    border: 1px solid #d0d7e2;
    border-radius: 0.65rem;
    color: #344767;
}

.genesis-property-group-modal .direct-chat-contacts .select2-results__option {
    color: #344767;
}

.genesis-property-group-modal .direct-chat-contacts .select2-results__option--highlighted[aria-selected],
.genesis-property-group-modal .direct-chat-contacts .select2-results__option--highlighted[data-selected] {
    background: color-mix(in srgb, var(--genesis-primary) 14%, transparent);
    color: #344767;
}

.select2-container--open,
.ui-datepicker {
    z-index: 2000 !important;
}

.ui-datepicker {
    background: #fff;
    border: 1px solid #d0d7e2;
    border-radius: 0.9rem;
    box-shadow: 0 20px 27px rgba(17, 28, 68, 0.12);
    padding: 0.65rem;
}

.ui-datepicker .ui-datepicker-header {
    background: transparent;
    border: 0;
    color: #344767;
    font-weight: 700;
    margin-bottom: 0.35rem;
    padding: 0 0.15rem;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 10%, transparent);
    border-radius: 999px;
    color: var(--genesis-primary);
    cursor: pointer;
    display: inline-flex;
    height: 1.9rem;
    justify-content: center;
    top: 0.1rem;
    width: 1.9rem;
}

.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    background: color-mix(in srgb, var(--genesis-primary) 18%, transparent);
    border: 0;
}

.ui-datepicker .ui-datepicker-title select {
    background: #f8fafc;
    border: 1px solid #d0d7e2;
    border-radius: 0.65rem;
    color: #344767;
    font-weight: 600;
    padding: 0.3rem 1.5rem 0.3rem 0.55rem;
}

.ui-datepicker table {
    margin: 0.25rem 0 0;
}

.ui-datepicker th {
    color: #344767;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 0.35rem 0.2rem;
    text-transform: capitalize;
}

.ui-datepicker .ui-state-default,
.ui-datepicker .ui-widget-content .ui-state-default,
.ui-datepicker .ui-widget-header .ui-state-default {
    background: transparent;
    border: 0;
    border-radius: 0.65rem;
    color: #344767;
    font-weight: 600;
    padding: 0.45rem 0.2rem;
    text-align: center;
}

.ui-datepicker .ui-state-hover,
.ui-datepicker .ui-widget-content .ui-state-hover,
.ui-datepicker .ui-widget-header .ui-state-hover {
    background: color-mix(in srgb, var(--genesis-primary) 10%, transparent);
    border: 0;
    color: #344767;
}

.ui-datepicker .ui-state-active,
.ui-datepicker .ui-widget-content .ui-state-active,
.ui-datepicker .ui-widget-header .ui-state-active {
    background: var(--genesis-primary);
    border-radius: 999px;
    color: #fff !important;
}

/* Money exchange financial card */
.genesis-money-exchange {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 14px 24px rgba(17, 28, 68, 0.08);
    overflow: hidden;
}

.genesis-money-exchange .card-body {
    padding: 1.25rem;
}

.genesis-money-exchange-header {
    align-items: center;
    display: flex;
    gap: 0.9rem;
    margin-bottom: 1rem;
}

.genesis-money-exchange-icon {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 12%, transparent);
    color: var(--genesis-primary);
    display: inline-flex;
    flex: 0 0 3rem;
    height: 3rem;
    justify-content: center;
    width: 3rem;
}

.genesis-money-exchange-icon i {
    color: inherit !important;
    font-size: 1.2rem;
    line-height: 1;
    position: static !important;
    top: 0 !important;
}

.genesis-money-exchange-title {
    color: #344767;
    display: block;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
}

.genesis-money-exchange-subtitle {
    color: #8392ab;
    display: block;
    font-size: 0.8rem;
    margin-top: 0.15rem;
}

.genesis-money-exchange-grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.genesis-money-exchange-stat {
    background: color-mix(in srgb, var(--genesis-primary) 5%, transparent);
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 8%, transparent);
    border-radius: 0.9rem;
    padding: 0.85rem 1rem;
}

.genesis-money-exchange-label {
    color: #8392ab;
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-bottom: 0.3rem;
    text-transform: uppercase;
}

.genesis-money-exchange-value {
    color: #344767;
    display: block;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.1;
}

.genesis-money-exchange-input-wrap {
    margin-top: 1rem;
}

.genesis-money-exchange-input-wrap .form-label {
    color: #8392ab;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.genesis-money-exchange-input-wrap .form-control {
    font-size: 1.2rem;
    font-weight: 700;
    text-align: center;
}

/* Status box profile card */
.genesis-status-box {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 14px 24px rgba(17, 28, 68, 0.08);
    overflow: hidden;
}

.genesis-status-box .card-header {
    background: linear-gradient(180deg, rgba(244, 247, 254, 0.96), rgba(255, 255, 255, 0.98));
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    padding: 0.95rem 1rem 0.75rem;
}

.genesis-status-box-head {
    align-items: flex-start;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
}

.genesis-status-box-meta {
    min-width: 0;
}

.genesis-status-box-name {
    color: #344767;
    display: block;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
}

.genesis-status-box-role {
    color: #8392ab;
    display: block;
    font-size: 0.78rem;
    margin-top: 0.18rem;
}

.genesis-status-box-menu {
    margin-left: auto;
}

.genesis-status-box-menu .btn {
    align-items: center;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 999px;
    color: var(--genesis-primary);
    display: inline-flex;
    height: 2rem;
    justify-content: center;
    min-width: 2rem;
    padding: 0;
    width: 2rem;
}

.genesis-status-box .card-body {
    padding: 1rem;
}

.genesis-status-box-layout {
    align-items: center;
    display: grid;
    gap: 0.9rem;
    grid-template-columns: 4.75rem minmax(0, 1fr) auto;
}

.genesis-status-box-media {
    position: relative;
}

.genesis-status-box-photo {
    border: 3px solid color-mix(in srgb, var(--genesis-primary) 18%, transparent);
    box-shadow: 0 10px 18px rgba(17, 28, 68, 0.12);
    height: 4.75rem;
    object-fit: cover;
    width: 4.75rem;
}

.genesis-status-box-star {
    bottom: -0.1rem;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
}

.genesis-status-box-copy {
    min-width: 0;
}

.genesis-status-box-location {
    color: #344767;
    display: block;
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.2;
}

.genesis-status-box-sub {
    color: #8392ab;
    display: block;
    font-size: 0.78rem;
    margin-top: 0.2rem;
}

.genesis-status-box-dates {
    display: grid;
    gap: 0.55rem;
    min-width: 7.25rem;
}

.genesis-status-box-date-item {
    align-items: center;
    display: flex;
    gap: 0.45rem;
    justify-content: flex-end;
}

.genesis-status-box-date-icon {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 12%, transparent);
    border-radius: 999px;
    color: var(--genesis-primary);
    display: inline-flex;
    flex: 0 0 1.75rem;
    height: 1.75rem;
    justify-content: center;
    width: 1.75rem;
}

.genesis-status-box-date-copy {
    text-align: right;
}

.genesis-status-box-date-label {
    color: #8392ab;
    display: block;
    font-size: 0.68rem;
    line-height: 1.1;
    text-transform: uppercase;
}

.genesis-status-box-date-value {
    color: #344767;
    display: block;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.2;
}

.genesis-status-box-actions {
    border-top: 1px solid rgba(148, 163, 184, 0.12);
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    padding: 0.75rem 1rem 1rem;
}

.genesis-status-box-actions .btn {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 8%, transparent);
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 12%, transparent);
    border-radius: 999px;
    color: var(--genesis-primary);
    display: inline-flex;
    height: 2.15rem;
    justify-content: center;
    min-width: 2.15rem;
    padding: 0;
    width: 2.15rem;
}

.genesis-kpi-icon {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    line-height: 0;
}

.genesis-kpi-icon i,
.genesis-kpi-icon svg {
    line-height: 1;
    position: static !important;
    top: auto !important;
    transform: none !important;
    vertical-align: middle;
}

.genesis-kpi-card {
    overflow: hidden;
    position: relative;
}

.genesis-kpi-card > .card-body {
    position: relative;
    z-index: 1;
}

.genesis-kpi-card--soft::before {
    background:
        radial-gradient(circle at 100% 0, color-mix(in srgb, var(--genesis-primary) 16%, transparent) 0, transparent 36%),
        linear-gradient(135deg, color-mix(in srgb, var(--genesis-primary) 10%, transparent), rgba(255, 255, 255, 0.98));
    content: "";
    inset: 0;
    opacity: 0.95;
    pointer-events: none;
    position: absolute;
}

.genesis-big-button--soft {
    background: linear-gradient(135deg, color-mix(in srgb, var(--genesis-primary) 14%, transparent), rgba(255, 255, 255, 0.98));
}

.genesis-big-button {
    align-items: flex-start;
    background: linear-gradient(135deg, color-mix(in srgb, var(--genesis-primary) 14%, transparent), rgba(255, 255, 255, 0.98));
    border: 0;
    border-radius: 1.15rem;
    box-shadow: 0 16px 30px rgba(17, 28, 68, 0.1);
    color: #344767;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    justify-content: center;
    min-height: 11.5rem;
    padding: 1.6rem 1.5rem;
    text-align: left;
    width: 100%;
}

.genesis-big-button:hover,
.genesis-big-button:focus {
    color: #344767;
    transform: translateY(-1px);
}

.genesis-big-button--outline {
    border: 2px solid var(--genesis-primary);
}

.genesis-big-button--solid {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2), 0 16px 30px rgba(17, 28, 68, 0.1);
}

.genesis-big-button-title {
    color: #344767;
    display: block;
    font-size: 1.65rem;
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1.05;
    max-width: 100%;
    white-space: normal;
}

.genesis-big-button-subtitle {
    color: #5b6f94;
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.35;
}

.genesis-big-button-media {
    margin-top: 0.4rem;
    width: 100%;
}

.genesis-big-button-image {
    border-radius: 0.95rem;
    display: block;
    max-height: 8.5rem;
    object-fit: cover;
    width: 100%;
}

.genesis-card-profile {
    border-radius: 1rem;
    overflow: hidden;
}

.genesis-card-profile-header {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    padding: 1rem 1.1rem 0.35rem;
}

.genesis-card-profile-title {
    color: #344767;
    font-weight: 700;
    line-height: 1.3;
}

.genesis-card-profile-badge {
    font-size: 0.75rem;
    font-weight: 700;
    white-space: nowrap;
}

.genesis-card-profile-body {
    padding: 0.85rem 1.1rem 1rem;
}

.genesis-card-profile-list {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.genesis-card-profile-item {
    align-items: flex-start;
    color: #67748e;
    display: flex;
    gap: 0.7rem;
    line-height: 1.45;
}

.genesis-card-profile-item-icon {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 2rem;
    height: 2rem;
    justify-content: center;
    width: 2rem;
}

.genesis-card-profile-media {
    align-items: center;
    background: linear-gradient(180deg, color-mix(in srgb, var(--genesis-primary) 10%, #f8fafc), color-mix(in srgb, var(--genesis-primary) 6%, #f1f5f9));
    border-radius: 1rem;
    display: flex;
    justify-content: center;
    min-height: 9rem;
    padding: 1rem;
    width: 100%;
}

.genesis-card-profile-avatar {
    border: 4px solid rgba(255, 255, 255, 0.92);
    border-radius: 50%;
    box-shadow: 0 14px 24px rgba(17, 28, 68, 0.12);
    height: 6.5rem;
    object-fit: cover;
    width: 6.5rem;
}

.genesis-card-profile-footer {
    background: transparent;
    border-top: 1px solid rgba(52, 71, 103, 0.08);
    padding: 0.95rem 1.1rem 1.05rem;
}

.genesis-long-card {
    overflow: hidden;
    position: relative;
}

.genesis-long-card-body {
    padding: 2rem 1.75rem 1.5rem;
    position: relative;
    z-index: 1;
}

.genesis-long-card-pattern {
    max-height: 100%;
    opacity: 0.08;
    pointer-events: none;
    position: absolute;
    top: 0;
}

.genesis-long-card-pattern-left {
    left: 0;
}

.genesis-long-card-pattern-right {
    right: 0;
}

.genesis-long-card-row {
    min-height: 15rem;
}

.genesis-long-card-copy {
    position: relative;
    z-index: 1;
}

.genesis-long-card-title {
    color: #67748e;
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: -0.04em;
    line-height: 1.1;
    margin-bottom: 0.9rem;
}

.genesis-long-card-divider {
    border-color: rgba(103, 116, 142, 0.16);
    margin: 0 0 1rem;
    opacity: 1;
}

.genesis-long-card-metrics {
    display: flex;
    gap: 2rem;
    justify-content: center;
}

.genesis-long-card-metric {
    min-width: 0;
}

.genesis-long-card-metric-label {
    color: #8392ab;
    display: block;
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 0.25rem;
}

.genesis-long-card-metric-value {
    color: #67748e;
    display: block;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1;
}

.genesis-long-card-metric-value small {
    color: #8392ab;
    font-size: 1rem;
    font-weight: 700;
    margin-left: 0.2rem;
    vertical-align: top;
}

.genesis-long-card-center {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 100%;
    position: relative;
    text-align: center;
}

.genesis-long-card-center-has-image {
    padding-top: 5.5rem;
}

.genesis-long-card-hero {
    left: 50%;
    max-width: min(100%, 28rem);
    object-fit: contain;
    pointer-events: auto;
    position: absolute;
    top: -7.5rem;
    transform: translateX(-50%);
    width: 100%;
}

.genesis-long-card-center-copy {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.genesis-long-card-center-label {
    color: #8392ab;
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: -0.04em;
    line-height: 1.1;
}

.genesis-long-card-center-value {
    color: #67748e;
    font-size: 3.25rem;
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1;
}

.genesis-long-card-center-value small {
    color: #67748e;
    font-size: 1.15rem;
    font-weight: 700;
    margin-left: 0.18rem;
    vertical-align: top;
}

.genesis-long-card-side-copy {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.genesis-long-card-side-text {
    color: #67748e;
    font-size: 1rem;
    line-height: 1.45;
}

.genesis-long-card-side-button {
    align-items: center;
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 32%, transparent);
    color: var(--genesis-primary);
    display: inline-flex;
    height: 3rem;
    justify-content: center;
    width: 3rem;
}

.genesis-long-card-side-button:hover,
.genesis-long-card-side-button:focus {
    border-color: color-mix(in srgb, var(--genesis-primary) 52%, transparent);
    color: var(--genesis-primary-hover);
}

.genesis-profile-component {
    border-radius: 1rem;
    overflow: hidden;
}

.genesis-profile-component--flat {
    border-radius: 0;
}

.genesis-profile-component-header {
    align-items: center;
    background: linear-gradient(135deg, color-mix(in srgb, var(--genesis-primary) 14%, transparent), rgba(255, 255, 255, 0.96));
    display: flex;
    justify-content: space-between;
    padding: 1.25rem 1.25rem 1rem;
}

.genesis-profile-component-name {
    color: #344767;
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.1;
}

.genesis-profile-component-photo-wrap,
.genesis-profile-component-inline-photo {
    flex: 0 0 auto;
}

.genesis-profile-component-photo {
    border: 4px solid var(--genesis-primary);
    border-radius: 50%;
    box-shadow: 0 16px 28px rgba(17, 28, 68, 0.14);
    height: 7rem;
    object-fit: cover;
    width: 7rem;
}

.genesis-profile-component-footer-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    padding: 1rem 1.25rem 1.25rem;
}

.genesis-profile-component-stat {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
    padding: 0.9rem 0.35rem;
}

.genesis-profile-component-stat--border {
    border-top: 1px solid rgba(52, 71, 103, 0.08);
}

.genesis-profile-component-stat-label {
    color: #8392ab;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.genesis-profile-component-stat-value {
    color: #344767;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.45;
    word-break: break-word;
}

.genesis-profile-component-inline {
    border-left: 4px solid var(--genesis-primary);
}

.genesis-profile-cover {
    overflow: hidden;
    position: relative;
}

.genesis-profile-cover-hero {
    align-items: flex-start;
    display: flex;
    min-height: 11.5rem;
    padding: 1.6rem 1.5rem 3.8rem;
    position: relative;
}

.genesis-profile-cover-copy {
    position: relative;
    z-index: 1;
}

.genesis-profile-cover-title {
    color: #fff;
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.05;
    margin-bottom: 0.35rem;
}

.genesis-profile-cover-subtitle {
    color: rgba(255, 255, 255, 0.84);
    font-weight: 500;
    margin: 0;
}

.genesis-profile-cover-avatar-wrap {
    display: flex;
    justify-content: center;
    margin-top: -3.35rem;
    position: relative;
    z-index: 2;
}

.genesis-profile-cover-avatar {
    background: #fff;
    border: 4px solid #fff;
    border-radius: 50%;
    box-shadow: 0 18px 32px rgba(17, 28, 68, 0.16);
    height: 7rem;
    object-fit: cover;
    width: 7rem;
}

.genesis-profile-cover-body {
    padding: 1rem 1.1rem 1.2rem;
}

.genesis-profile-cover-stats {
    row-gap: 0.85rem;
}

.genesis-profile-cover-stat {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-height: 100%;
    padding: 0.85rem 1rem;
    text-align: center;
}

.genesis-profile-cover-stat--border {
    border-right: 1px solid rgba(52, 71, 103, 0.08);
}

.genesis-profile-cover-stat-value {
    color: #344767;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.1;
}

.genesis-profile-cover-stat-label {
    color: #8392ab;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.genesis-activity-timeline {
    overflow: hidden;
}

.genesis-activity-timeline-header {
    border-bottom: 1px solid rgba(52, 71, 103, 0.08);
}

.genesis-activity-timeline-header--primary,
.genesis-activity-timeline-header--info,
.genesis-activity-timeline-header--blue {
    background: color-mix(in srgb, var(--genesis-primary) 12%, transparent);
}

.genesis-activity-timeline-header--success,
.genesis-activity-timeline-header--green {
    background: rgba(45, 206, 137, 0.14);
}

.genesis-activity-timeline-header--warning,
.genesis-activity-timeline-header--orange {
    background: rgba(251, 99, 64, 0.14);
}

.genesis-activity-timeline-header--danger,
.genesis-activity-timeline-header--red {
    background: rgba(245, 54, 92, 0.14);
}

.genesis-activity-timeline-action {
    border-radius: 999px;
    height: 2.15rem;
    padding: 0;
    width: 2.15rem;
}

.genesis-activity-timeline-scroller {
    overflow: auto;
}

.genesis-activity-timeline-table {
    min-width: 1650px;
}

.genesis-activity-timeline-head,
.genesis-activity-timeline-row {
    align-items: center;
    display: grid;
    gap: 0;
    grid-template-columns: 250px 100px minmax(1300px, 1fr);
}

.genesis-activity-timeline-head {
    background: #fff;
    border-bottom: 1px solid rgba(52, 71, 103, 0.08);
    min-height: 3.25rem;
}

.genesis-activity-timeline-head-label,
.genesis-activity-timeline-employee {
    background: #fff;
    padding: 0.85rem 1rem;
}

.genesis-activity-timeline-col-employee {
    left: 0;
    position: sticky;
    z-index: 4;
}

.genesis-activity-timeline-head-label,
.genesis-activity-timeline-head-total {
    color: #344767;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.genesis-activity-timeline-head-total,
.genesis-activity-timeline-total {
    padding: 0.85rem 0.9rem;
    text-align: center;
}

.genesis-activity-timeline-col-total {
    background: #fff;
    left: 250px;
    position: sticky;
    z-index: 3;
}

.genesis-activity-timeline .sticky-header {
    z-index: 2;
}

.genesis-activity-timeline .sticky-col,
.genesis-activity-timeline .genesis-activity-timeline-col-employee {
    z-index: 2 !important;
}

.genesis-activity-timeline .sticky-col-secondary,
.genesis-activity-timeline .genesis-activity-timeline-col-total {
    z-index: 1 !important;
}

.genesis-activity-timeline-hours {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(13, 100px);
}

.genesis-activity-timeline-hour {
    color: #8392ab;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 0.85rem 0.25rem;
    text-align: left;
    transform: translateX(-10px);
}

.genesis-activity-timeline-row {
    border-bottom: 1px solid rgba(52, 71, 103, 0.08);
    min-height: 4rem;
}

.genesis-activity-timeline-employee {
    color: #344767;
    font-weight: 700;
}

.genesis-activity-timeline-total {
    color: #67748e;
    font-weight: 600;
}

.genesis-activity-timeline-track-wrap {
    padding: 0.85rem 0.6rem;
}

.genesis-activity-timeline-track {
    display: flex;
    height: 1.2rem;
}

.genesis-activity-timeline-block {
    border-radius: 999px;
    height: 100%;
    margin-right: 1px;
}

.genesis-activity-timeline-block--free {
    box-shadow: inset 0 0 0 1px rgba(52, 71, 103, 0.05);
}

.genesis-activity-timeline-empty {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 12rem;
    width: 100%;
}

@media (max-width: 991.98px) {
    .genesis-long-card-body {
        padding-top: 1.5rem;
    }

    .genesis-long-card-center-has-image {
        padding-top: 2rem;
    }

    .genesis-long-card-hero {
        margin: 0 auto 1.5rem;
        position: relative;
        top: auto;
        transform: none;
        left: auto;
    }

    .genesis-long-card-title,
    .genesis-long-card-center-label {
        font-size: 1.6rem;
    }

    .genesis-long-card-center-value,
    .genesis-long-card-metric-value {
        font-size: 2.3rem;
    }

    .genesis-long-card-metrics {
        gap: 1.25rem;
    }
}

.genesis-btn-input-text-wrap {
    align-items: stretch;
    display: flex !important;
    flex-wrap: nowrap;
    width: 100%;
}

.genesis-btn-input-text-wrap > .genesis-btn-input-text-input,
.genesis-btn-input-text-wrap > .form-control {
    flex: 1 1 auto;
    min-width: 0;
    width: 1%;
}

.genesis-btn-input-text-wrap > .genesis-btn-input-text-group,
.genesis-btn-input-text-wrap > .btn-group {
    flex: 0 0 auto;
    width: auto;
}

.genesis-btn-input-text-wrap .genesis-btn-input-text-input {
    min-height: 2.65rem;
}

.genesis-btn-input-text-group {
    display: flex;
}

.genesis-btn-input-text-wrap .genesis-btn-input-text-group .btn {
    border-radius: 0.55rem !important;
    box-shadow: 0 6px 12px color-mix(in srgb, var(--genesis-primary) 12%, transparent);
    height: 100%;
    margin: 0;
    white-space: nowrap;
}

.genesis-btn-input-text-wrap .genesis-btn-input-text-group:first-child .btn {
    border-bottom-right-radius: 0.08rem !important;
    border-top-right-radius: 0.08rem !important;
    margin-right: -1px;
}

.genesis-btn-input-text-wrap .genesis-btn-input-text-input:first-child {
    border-bottom-right-radius: 0.1rem;
    border-top-right-radius: 0.1rem;
}

.genesis-btn-input-text-wrap .genesis-btn-input-text-group:last-child .btn {
    border-bottom-left-radius: 0.08rem !important;
    border-top-left-radius: 0.08rem !important;
    margin-left: -1px;
}

.genesis-btn-input-text-wrap .genesis-btn-input-text-input:last-child {
    border-bottom-left-radius: 0.1rem;
    border-top-left-radius: 0.1rem;
}

.genesis-btn-input-text-wrap .dropdown-menu {
    border: 0;
    border-radius: 0.85rem;
    box-shadow: 0 20px 27px rgba(0, 0, 0, 0.08);
    margin-top: 0.35rem;
}

.genesis-satisfaction-card {
    background: #fff !important;
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 8%, transparent) !important;
    border-radius: 1.5rem !important;
    box-shadow: 0 20px 27px rgba(0, 0, 0, 0.06) !important;
}

.genesis-satisfaction-header {
    margin-bottom: 2rem;
}

.genesis-satisfaction-title {
    color: #344767;
    font-size: 1.85rem;
    font-weight: 800;
}

.genesis-satisfaction-subtitle {
    color: #67748e;
    font-size: 0.98rem;
}

.genesis-satisfaction-actions {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.genesis-satisfaction-btn {
    align-items: center;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 252, 0.98) 100%);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 1.25rem;
    box-shadow: 0 14px 24px rgba(15, 23, 42, 0.06);
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    justify-content: center;
    min-height: 12rem;
    padding: 1.4rem 1.1rem;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    width: 100%;
}

.genesis-satisfaction-btn:hover,
.genesis-satisfaction-btn:focus {
    border-color: color-mix(in srgb, var(--genesis-primary) 26%, transparent);
    box-shadow: 0 18px 30px rgba(15, 23, 42, 0.1);
    transform: translateY(-2px);
}

.genesis-satisfaction-btn.is-active {
    border-color: color-mix(in srgb, var(--genesis-primary) 40%, transparent);
    box-shadow: 0 22px 34px color-mix(in srgb, var(--genesis-primary) 14%, transparent);
}

.genesis-satisfaction-icon {
    align-items: center;
    background: color-mix(in srgb, var(--genesis-primary) 8%, transparent);
    border-radius: 999px;
    display: inline-flex;
    font-size: 2.3rem;
    height: 5rem;
    justify-content: center;
    width: 5rem;
}

.genesis-satisfaction-copy {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    text-align: center;
}

.genesis-satisfaction-label {
    color: #344767;
    font-size: 1rem;
    font-weight: 700;
}

.genesis-satisfaction-caption {
    color: #8392ab;
    font-size: 0.84rem;
}

@media (max-width: 767.98px) {
    .genesis-satisfaction-actions {
        grid-template-columns: 1fr;
    }

    .genesis-satisfaction-btn {
        min-height: 9.5rem;
    }
}

.genesis-range-calendar-wrap {
    align-items: stretch;
    display: flex !important;
    flex-wrap: nowrap;
    width: 100%;
}

.genesis-range-calendar-icon {
    background: #fff;
    border-bottom-right-radius: 0.08rem;
    border-top-right-radius: 0.08rem;
    color: #344767;
    margin-right: -1px;
}

.genesis-range-calendar-input {
    border-bottom-left-radius: 0.08rem;
    border-top-left-radius: 0.08rem;
    min-width: 0;
    width: 1%;
}

.genesis-bootstrap-slider-inline {
    padding: 0.35rem 0 0.5rem;
}

.genesis-bootstrap-slider-value {
    color: #344767;
    display: inline-block;
    font-size: 1.9rem;
    font-weight: 800;
    line-height: 1;
}

.genesis-bootstrap-slider-value-wrap {
    margin-bottom: 1.15rem;
}

.genesis-bootstrap-slider-shell {
    align-items: center;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(70px, 100px) minmax(0, 1fr) minmax(70px, 100px);
}

.genesis-bootstrap-slider-label {
    color: #67748e;
    font-size: 0.95rem;
    font-weight: 600;
    text-align: center;
}

.genesis-bootstrap-slider-track-wrap {
    min-width: 0;
    width: 100%;
}

.genesis-bootstrap-slider-inline .slider.slider-horizontal {
    width: 100% !important;
}

.genesis-bootstrap-slider-inline .slider-track {
    background: rgba(148, 163, 184, 0.18);
    border-radius: 999px;
    box-shadow: none;
    height: 0.45rem !important;
    top: 50% !important;
    transform: translateY(-50%);
}

.genesis-bootstrap-slider-inline .slider-selection {
    background: linear-gradient(90deg, var(--genesis-primary) 0%, var(--genesis-primary-hover) 100%);
    border-radius: 999px;
    box-shadow: none;
}

.genesis-bootstrap-slider-inline .slider-handle {
    background: #fff;
    border: 4px solid var(--genesis-primary);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--genesis-primary) 18%, transparent);
    height: 1.25rem;
    margin-top: -0.4rem !important;
    width: 1.25rem;
}

.genesis-bootstrap-slider-inline [data-color="success"] .slider-selection {
    background: linear-gradient(90deg, #2dce89 0%, #4fd69c 100%);
}

.genesis-bootstrap-slider-inline [data-color="success"] .slider-handle {
    border-color: #2dce89;
}

.genesis-bootstrap-slider-inline [data-color="warning"] .slider-selection {
    background: linear-gradient(90deg, #fb6340 0%, #fbb140 100%);
}

.genesis-bootstrap-slider-inline [data-color="warning"] .slider-handle {
    border-color: #fb6340;
}

.genesis-bootstrap-slider-inline [data-color="danger"] .slider-selection {
    background: linear-gradient(90deg, #f5365c 0%, #ff6b6b 100%);
}

.genesis-bootstrap-slider-inline [data-color="danger"] .slider-handle {
    border-color: #f5365c;
}

.genesis-bootstrap-slider-inline [data-color="info"] .slider-selection {
    background: linear-gradient(90deg, #11cdef 0%, #2dceff 100%);
}

.genesis-bootstrap-slider-inline [data-color="info"] .slider-handle {
    border-color: #11cdef;
}

@media (max-width: 767.98px) {
    .genesis-bootstrap-slider-shell {
        grid-template-columns: 1fr;
    }

    .genesis-bootstrap-slider-label--min {
        order: 2;
    }

    .genesis-bootstrap-slider-track-wrap {
        order: 1;
    }

    .genesis-bootstrap-slider-label--max {
        order: 3;
    }
}

.genesis-cart-card {
    background: #fff !important;
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 8%, transparent) !important;
    border-radius: 1.35rem !important;
    box-shadow: 0 20px 27px rgba(0, 0, 0, 0.06) !important;
}

.genesis-cart-title {
    color: #344767;
    font-size: 1.15rem;
    font-weight: 800;
}

.genesis-cart-subtitle {
    color: #8392ab;
    font-size: 0.88rem;
}

.genesis-cart-table thead th {
    border-bottom: 1px solid rgba(148, 163, 184, 0.18);
    color: #8392ab;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.genesis-cart-table tbody td {
    border-color: rgba(148, 163, 184, 0.12);
    color: #344767;
    vertical-align: middle;
}

.genesis-cart-product-wrap {
    align-items: center;
    display: flex;
    gap: 1rem;
}

.genesis-cart-product-media {
    align-items: center;
    background: linear-gradient(180deg, rgba(248, 250, 252, 0.98) 0%, rgba(240, 244, 248, 0.98) 100%);
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 1rem;
    display: inline-flex;
    height: 4.5rem;
    justify-content: center;
    overflow: hidden;
    width: 4.5rem;
}

.genesis-cart-product-media img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.genesis-cart-product-name {
    color: #344767;
    font-weight: 700;
}

.genesis-cart-price,
.genesis-cart-subtotal {
    font-weight: 700;
    white-space: nowrap;
}

.genesis-cart-subtotal {
    text-align: right;
}

.genesis-cart-qty .form-control {
    max-width: 10rem;
    margin: 0 auto;
}

.genesis-cart-actions {
    text-align: center;
}

.genesis-cart-summary {
    align-items: stretch;
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 11rem)) minmax(0, 1fr);
}

.genesis-cart-summary-card {
    background: linear-gradient(180deg, rgba(243, 245, 251, 0.92) 0%, rgba(238, 242, 248, 0.98) 100%);
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 8%, transparent);
    border-radius: 1rem;
    min-height: 5.5rem;
    padding: 1rem 1.15rem;
}

.genesis-cart-summary-label {
    color: #8392ab;
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.genesis-cart-summary-value {
    color: #344767;
    font-size: 1.45rem;
    font-weight: 800;
}

.genesis-cart-summary-actions {
    align-items: center;
    display: flex;
    justify-content: flex-end;
}

@media (max-width: 991.98px) {
    .genesis-cart-summary {
        grid-template-columns: 1fr;
    }

    .genesis-cart-summary-actions {
        justify-content: flex-start;
    }
}

.genesis-footer-control-card {
    background: #fff !important;
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 8%, transparent) !important;
    border-radius: 1.35rem !important;
    box-shadow: 0 20px 27px rgba(0, 0, 0, 0.06) !important;
}

.genesis-footer-control-head {
    margin-bottom: 1.25rem;
}

.genesis-footer-control-title {
    color: #344767;
    font-size: 1.1rem;
    font-weight: 800;
}

.genesis-footer-control-col {
    flex: 1 1 0;
}

.genesis-footer-control-metric {
    background: linear-gradient(180deg, rgba(243, 245, 251, 0.92) 0%, rgba(238, 242, 248, 0.98) 100%);
    border: 1px solid color-mix(in srgb, var(--genesis-primary) 8%, transparent);
    border-radius: 1rem;
    min-height: 8.5rem;
    padding: 1.1rem 1.2rem;
}

.genesis-footer-control-trend {
    display: inline-block;
    font-size: 0.92rem;
    font-weight: 700;
    margin-bottom: 0.8rem;
}

.genesis-footer-control-value {
    color: #344767;
    display: block;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.05;
    margin-bottom: 0.45rem;
}

.genesis-footer-control-label {
    color: #67748e;
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
}

.genesis-progress-inline {
    padding: 0.15rem 0 0.35rem;
}

.genesis-progress-head {
    align-items: center;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: 2.5rem 1fr 2.5rem;
}

.genesis-progress-value {
    color: #344767;
    font-size: 0.85rem;
    font-weight: 700;
    justify-self: center;
    line-height: 1;
}

.genesis-progress-scale {
    background: rgba(148, 163, 184, 0.14);
    border-radius: 0.45rem;
    color: #8392ab;
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 700;
    justify-content: center;
    padding: 0.18rem 0.45rem;
}

.genesis-stepper-wrap {
    padding: 0.75rem 0 1rem;
    position: relative;
}

.genesis-stepper-track {
    inset: 3.15rem 0 auto;
    left: 0;
    position: absolute;
    right: 0;
    z-index: 0;
}

.genesis-stepper-track-base,
.genesis-stepper-track-progress {
    border-radius: 999px;
    display: block;
    height: 4px;
}

.genesis-stepper-track-base {
    background: rgba(148, 163, 184, 0.22);
    width: 100%;
}

.genesis-stepper-track-progress {
    background: var(--genesis-primary);
    left: 0;
    position: absolute;
    top: 0;
}

.genesis-stepper-list {
    display: grid;
    gap: 1.5rem;
    grid-auto-columns: minmax(0, 1fr);
    grid-auto-flow: column;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 1;
}

.genesis-step-item {
    align-items: center;
    display: flex;
    flex-direction: column;
    text-align: center;
}

.genesis-step-title {
    color: rgba(103, 116, 142, 0.55);
    font-size: 0.92rem;
    font-weight: 500;
    margin-bottom: 0.7rem;
}

.genesis-step-badge {
    align-items: center;
    background: #cbd5e1;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 0.95rem;
    font-weight: 800;
    height: 2.45rem;
    justify-content: center;
    box-shadow: 0 0 0 10px #fff;
    margin-bottom: 0.75rem;
    width: 2.45rem;
}

.genesis-step-value {
    color: rgba(103, 116, 142, 0.75);
    font-size: 0.92rem;
    font-weight: 500;
}

.genesis-step-item.is-active .genesis-step-title,
.genesis-step-item.is-active .genesis-step-value {
    color: var(--genesis-primary-hover);
}

.genesis-step-item.is-active .genesis-step-badge {
    background: var(--genesis-primary);
}

@media (max-width: 767.98px) {
    .genesis-stepper-list {
        gap: 0.85rem;
    }

    .genesis-step-title,
    .genesis-step-value {
        font-size: 0.82rem;
    }
}

.genesis-timepicker-label {
    color: #344767;
    display: block;
    font-size: 0.82rem;
    font-weight: 700;
    margin-bottom: 0.55rem;
}

.genesis-timepicker-group {
    align-items: stretch;
    display: flex !important;
    flex-wrap: nowrap;
    width: 100%;
}

.genesis-timepicker-icon {
    background: #fff;
    border-bottom-right-radius: 0.08rem;
    border-top-right-radius: 0.08rem;
    color: #344767;
    margin-right: -1px;
}

.genesis-timepicker-input {
    border-bottom-left-radius: 0.08rem;
    border-top-left-radius: 0.08rem;
    min-width: 0;
    width: 1%;
}

/* Perfil legacy renderizado como HTML custom dentro de propertyGroupView */
.genesis-property-group-view .propertyItem:has(.box-profile) > .d-flex > .d-flex.flex-column {
    display: block;
    flex: 1 1 auto;
    max-width: none;
    min-width: 0;
    width: 100%;
}

.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty,
.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty > div,
.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty > div > div {
    width: 100%;
}

.genesis-property-group-view .box-profile {
    display: block;
    padding: 1.5rem 0 1.25rem;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100%;
}

.genesis-property-group-view .propertyItem:has(.box-profile) {
    background: transparent;
    border: 0 !important;
    margin-bottom: 0;
    padding: 0;
}

.genesis-property-group-view .propertyItem:has(.box-profile) > .d-flex {
    align-items: stretch !important;
    display: block !important;
}

.genesis-property-group-view .propertyItem:has(.box-profile) .icon,
.genesis-property-group-view .propertyItem:has(.box-profile) .keyProperty {
    display: none !important;
}

.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty {
    display: block;
    width: 100%;
}

.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty > [class*="col-"],
.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty [type="html"][name="perfil"],
.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty #perfil {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}

.genesis-property-group-view .propertyItem:has(.box-profile) .valueProperty > [class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.genesis-property-group-view .profile-username {
    font-size: 1.55rem;
    line-height: 1.25;
    margin-top: 0;
    margin-bottom: 0.55rem;
}

.genesis-property-group-view .box-profile > .lead {
    font-size: 1.1rem;
    line-height: 1.6;
    margin-bottom: 0.7rem;
}

.genesis-property-group-view .box-profile > .text-muted {
    font-size: 0.98rem;
    line-height: 1.65;
    margin-bottom: 1.35rem;
}

.genesis-property-group-view .box-profile .list-group-item {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    line-height: 1.55;
    padding-bottom: 0.9rem;
    padding-top: 0.9rem;
}

.genesis-property-group-view .box-profile .list-group-item > b,
.genesis-property-group-view .box-profile .list-group-item > strong {
    color: #344767;
    flex: 0 0 auto;
    font-weight: 700;
    max-width: 48%;
}

.genesis-property-group-view .box-profile .list-group-item > a {
    color: #67748e;
    flex: 1 1 auto;
    float: none !important;
    margin-left: auto;
    text-align: right;
    text-decoration: none;
    white-space: normal;
    word-break: break-word;
}

.genesis-property-group-view .list-group-unbordered > .list-group-item {
    border-left: 0;
    border-radius: 0;
    border-right: 0;
    padding-left: 0;
    padding-right: 0;
}

.genesis-property-group-view .float-right {
    float: right;
}

.genesis-property-group-view .propertyItem > .d-flex {
    align-items: flex-start;
    min-width: 0;
}

.genesis-property-group-view .propertyItem .icon.icon-shape {
    flex: 0 0 auto;
    flex-shrink: 0;
    min-width: 32px;
    min-height: 32px;
}

[type="activityListCard"] .icon.icon-shape {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

[type="activityListCard"] .icon.icon-shape i,
[type="activityListCard"] .icon.icon-shape svg {
    position: static;
    top: auto;
    line-height: 1;
    font-size: 0.9rem;
    opacity: 1;
}

.genesis-property-group-view-list--two-cols {
    column-gap: 1.5rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.genesis-property-group-view-list--two-cols > .propertyItem {
    margin-bottom: 0.9rem !important;
    min-width: 0;
}

.genesis-property-group-view-list--two-cols > .propertyItem > .d-flex {
    min-width: 0;
}

.genesis-property-group-view-list--two-cols > .propertyItem .valueProperty {
    overflow-wrap: anywhere;
}

@media (max-width: 991.98px) {
    .genesis-property-group-view-list--two-cols {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Perfil custom embebido como HTML */
.form-rendered > div:has(> [type="html"][name="perfil"]),
.form-rendered > div:has(> #perfil),
.genesis-property-group-view .valueProperty > div:has(> [type="html"][name="perfil"]),
.genesis-property-group-view .valueProperty > div:has(> #perfil) {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
}

.form-rendered [type="html"][name="perfil"],
.form-rendered #perfil,
.genesis-property-group-view [type="html"][name="perfil"],
.genesis-property-group-view #perfil {
    display: block;
    width: 100%;
}

.form-rendered [type="html"][name="perfil"] .box-profile,
.form-rendered #perfil .box-profile,
.genesis-property-group-view [type="html"][name="perfil"] .box-profile,
.genesis-property-group-view #perfil .box-profile {
    display: block;
    padding: 1.75rem 0 1.5rem !important;
    width: 100%;
}

.form-rendered [type="html"][name="perfil"] .profile-username,
.form-rendered #perfil .profile-username,
.genesis-property-group-view [type="html"][name="perfil"] .profile-username,
.genesis-property-group-view #perfil .profile-username {
    font-size: 1.6rem;
    line-height: 1.25;
    margin-bottom: 0.55rem;
    margin-top: 0;
}

.form-rendered [type="html"][name="perfil"] .list-group-unbordered > .list-group-item,
.form-rendered #perfil .list-group-unbordered > .list-group-item,
.genesis-property-group-view [type="html"][name="perfil"] .list-group-unbordered > .list-group-item,
.genesis-property-group-view #perfil .list-group-unbordered > .list-group-item {
    align-items: flex-start;
    border-left: 0;
    border-radius: 0;
    border-right: 0;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    line-height: 1.55;
    padding: 0.95rem 0;
}

.form-rendered [type="html"][name="perfil"] .list-group-unbordered > .list-group-item > a,
.form-rendered #perfil .list-group-unbordered > .list-group-item > a,
.genesis-property-group-view [type="html"][name="perfil"] .list-group-unbordered > .list-group-item > a,
.genesis-property-group-view #perfil .list-group-unbordered > .list-group-item > a {
    float: none !important;
    margin-left: auto;
    text-align: right;
    white-space: normal;
    word-break: break-word;
}

.genesis-coverage-orbit-card {
    --coverage-surface: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    --coverage-border: #e5e7eb;
    --coverage-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
    --coverage-text: #0f172a;
    --coverage-muted: #64748b;
    --coverage-empty-surface: #ffffff;
    --coverage-empty-border: #cbd5e1;
    --coverage-photo-ring: #ffffff;
    --coverage-photo-bg: #f8fafc;
    --coverage-center-shadow: 0 14px 32px rgba(15, 23, 42, 0.20);
    --coverage-member-shadow: 0 12px 26px rgba(15, 23, 42, 0.16);
    --coverage-self-bg: rgba(14, 165, 233, 0.12);
    --coverage-self-text: #0369a1;
    --coverage-pill-surface: rgba(255, 255, 255, 0.78);
    --coverage-pill-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
    --coverage-orbit-stroke: rgba(148, 163, 184, 0.45);
    --coverage-text-shadow: 0 1px 0 rgba(255, 255, 255, 0.65);
}
