@import '_content/Blazor.Bootstrap/Blazor.Bootstrap.7t9tbfaemk.bundle.scp.css';
@import '_content/PSC.Blazor.Components.AutoComplete/PSC.Blazor.Components.AutoComplete.bundle.scp.css';

/* _content/IngenieriaVisualSASPH/Components/Register/FamilyGroupForm.razor.rz.scp.css */
.family-form[b-vi09l6xgt2] {
    --family-label-color: #0F3D75;
    --family-accent-color: #0F3D75;
}

.family-form .family-intro[b-vi09l6xgt2] {
    margin-bottom: 1.2rem;
    padding: .95rem 1rem;
    border-radius: 1.4rem;
    border: 1px solid rgba(15,61,117,.12);
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(239,246,255,.95) 100%);
}

.family-form .family-intro h1[b-vi09l6xgt2],
.family-form .family-intro p[b-vi09l6xgt2],
.family-form .family-label[b-vi09l6xgt2],
.family-form .family-section-title[b-vi09l6xgt2] {
    color: var(--family-label-color);
}

.family-form .family-intro h1[b-vi09l6xgt2] {
    margin: 0 0 .35rem;
    font-size: clamp(1.45rem, 2vw, 2rem);
    font-weight: 800;
}

.family-form .family-intro p[b-vi09l6xgt2] {
    margin: 0;
    font-size: .95rem;
    line-height: 1.5;
}

.family-form .family-actions[b-vi09l6xgt2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.25rem;
    flex-wrap: wrap;
}

.family-form .family-member-card[b-vi09l6xgt2] {
    border: 1px solid rgba(15,61,117,.14);
    border-radius: 1.6rem;
    padding: 1.1rem;
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(249,251,255,.98) 100%);
    box-shadow: 0 12px 28px rgba(23,42,79,.06);
    margin-bottom: 1rem;
}

.family-form .family-member-divider[b-vi09l6xgt2] {
    height: 1px;
    margin: 1rem 0 1.25rem;
    background: linear-gradient(90deg, transparent 0%, rgba(15,61,117,.18) 14%, rgba(15,61,117,.18) 86%, transparent 100%);
}

.family-form .family-member-header[b-vi09l6xgt2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .75rem;
    margin-bottom: .85rem;
}

.family-form .family-section-title[b-vi09l6xgt2] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
}

.family-form .family-field-group[b-vi09l6xgt2] {
    margin-bottom: 1rem;
}

.family-form .family-label[b-vi09l6xgt2] {
    display: block;
    margin-bottom: .45rem;
    font-size: 1rem;
    font-weight: 700;
}

.family-form .family-required[b-vi09l6xgt2] {
    color: #d92d20;
    font-weight: 900;
    margin-left: .2rem;
}

.family-form .family-input-shell[b-vi09l6xgt2] {
    display: flex;
    align-items: stretch;
    border: 1.5px solid #4b5563;
    border-radius: 1.4rem;
    background-color: #fff;
    overflow: hidden;
    transition: box-shadow .2s ease, border-color .2s ease;
}

.family-form .family-input-shell:focus-within[b-vi09l6xgt2] {
    border-color: rgba(255,58,87,.4);
    box-shadow: 0 0 0 .12rem rgba(255,58,87,.12);
}

.family-form .family-input-shell .form-control[b-vi09l6xgt2],
.family-form .family-input-shell .form-select[b-vi09l6xgt2] {
    border: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    color: #163750 !important;
    min-height: 3rem;
    padding: .8rem 1rem;
    border-radius: 0 !important;
}

.family-form .family-input-shell .form-select[b-vi09l6xgt2] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 2.6rem;
    background-image: none !important;
}

.family-form .family-input-shell .form-control[b-vi09l6xgt2]::placeholder {
    color: rgba(22,55,80,.48);
}

.family-form .family-input-icon[b-vi09l6xgt2] {
    width: 3.35rem;
    min-width: 3.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-left: 1.5px solid #4b5563;
    background: #fff;
    color: var(--family-accent-color);
}

.family-form .family-save-actions[b-vi09l6xgt2] {
    display: flex;
    justify-content: flex-end;
    margin-top: 1.5rem;
}

.family-form .family-btn-primary[b-vi09l6xgt2],
.family-form .family-btn-secondary[b-vi09l6xgt2],
.family-form .family-btn-danger[b-vi09l6xgt2] {
    border-radius: 999px;
    min-height: 2.65rem;
    padding-top: .45rem;
    padding-bottom: .45rem;
    font-size: .9rem;
    font-weight: 800;
}

.family-form .family-btn-primary[b-vi09l6xgt2] {
    background-color: var(--family-accent-color);
    border-color: var(--family-accent-color);
    color: #fff;
    box-shadow: 0 12px 24px rgba(255,58,87,.18);
}

.family-form .family-btn-primary:disabled[b-vi09l6xgt2] {
    opacity: 1 !important;
    background-color: var(--family-accent-color) !important;
    border-color: var(--family-accent-color) !important;
    color: #fff !important;
}

.family-form .family-btn-secondary[b-vi09l6xgt2] {
    background-color: var(--family-label-color);
    border-color: var(--family-label-color);
    color: #fff;
    box-shadow: 0 10px 20px rgba(15,61,117,.12);
}

.family-form .family-btn-danger[b-vi09l6xgt2] {
    background: #fff6f6;
    color: #b42318;
    border: 1px solid #f3b6b6;
}

.family-form[b-vi09l6xgt2] (.validation-message) {
    position: relative;
    display: inline-block;
    margin-top: .55rem;
    padding: .58rem .88rem;
    border-radius: .45rem;
    background: #d95b63;
    color: #fff;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.2;
    box-shadow: 0 8px 18px rgba(217,91,99,.18);
    border: 1px solid rgba(190,73,82,.2);
}

.family-form[b-vi09l6xgt2] (.validation-message::before) {
    content: "";
    position: absolute;
    top: -6px;
    left: 14px;
    width: 12px;
    height: 12px;
    background: #d95b63;
    border-left: 1px solid rgba(190,73,82,.2);
    border-top: 1px solid rgba(190,73,82,.2);
    transform: rotate(45deg);
}

.family-form[b-vi09l6xgt2] (.validation-summary-errors) {
    display: none;
}
/* _content/IngenieriaVisualSASPH/Components/Register/PetForm.razor.rz.scp.css */
.pet-form[b-i1cby7nur7] {
    --pet-label-color: #0F3D75;
    --pet-accent-color: #0F3D75;
}

.pet-form .pet-intro[b-i1cby7nur7] {
    margin-bottom: 1.2rem;
    padding: .95rem 1rem;
    border-radius: 1.4rem;
    border: 1px solid rgba(15,61,117,.12);
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(239,246,255,.95) 100%);
}

.pet-form .pet-intro h1[b-i1cby7nur7],
.pet-form .pet-intro p[b-i1cby7nur7],
.pet-form .pet-label[b-i1cby7nur7],
.pet-form .pet-section-title[b-i1cby7nur7] {
    color: var(--pet-label-color);
}

.pet-form .pet-intro h1[b-i1cby7nur7] {
    margin: 0 0 .35rem;
    font-size: clamp(1.45rem, 2vw, 2rem);
    font-weight: 800;
}

.pet-form .pet-intro p[b-i1cby7nur7] {
    margin: 0;
    font-size: .95rem;
    line-height: 1.5;
}

.pet-form .pet-notice[b-i1cby7nur7] {
    margin-bottom: 1.2rem;
    padding: .95rem 1rem;
    border-radius: 1.25rem;
    border: 1px solid #f3d38a;
    background: linear-gradient(180deg, #fff8e8 0%, #fff4dc 100%);
    box-shadow: 0 10px 22px rgba(217,145,32,.08);
}

.pet-form .pet-notice-title[b-i1cby7nur7] {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin: 0 0 .35rem;
    font-size: .98rem;
    font-weight: 800;
    color: #9a5b0b;
}

.pet-form .pet-notice-copy[b-i1cby7nur7] {
    margin: 0;
    color: #8a5410;
    font-size: .93rem;
    font-weight: 600;
    line-height: 1.5;
}

.pet-form .pet-list-empty[b-i1cby7nur7] {
    padding: 1rem 1.1rem;
    margin-bottom: 1rem;
    border-radius: 1.4rem;
    border: 1px dashed rgba(15,61,117,.18);
    background: rgba(255,255,255,.72);
    color: var(--pet-label-color);
    font-weight: 700;
}

.pet-form .pet-entry-card[b-i1cby7nur7] {
    border: 1px solid rgba(15,61,117,.14);
    border-radius: 1.6rem;
    padding: 1.1rem;
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(249,251,255,.98) 100%);
    box-shadow: 0 12px 28px rgba(23,42,79,.06);
    margin-bottom: 1rem;
}

.pet-form .pet-entry-divider[b-i1cby7nur7] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 1.2rem 0 1.4rem;
}

.pet-form .pet-entry-divider[b-i1cby7nur7]::before,
.pet-form .pet-entry-divider[b-i1cby7nur7]::after {
    content: "";
    flex: 1 1 100%;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255,58,87,.12) 0%, rgba(15,61,117,.24) 100%);
    box-shadow: 0 1px 6px rgba(15,61,117,.10);
}

.pet-form .pet-entry-divider[b-i1cby7nur7]::after {
    background: linear-gradient(90deg, rgba(15,61,117,.24) 0%, rgba(255,58,87,.12) 100%);
}

.pet-form .pet-entry-header[b-i1cby7nur7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .75rem;
    margin-bottom: .85rem;
    flex-wrap: wrap;
}

.pet-form .pet-section-title[b-i1cby7nur7] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
}

.pet-form .pet-field-group[b-i1cby7nur7] {
    margin-bottom: 1rem;
}

.pet-form .pet-label[b-i1cby7nur7] {
    display: block;
    margin-bottom: .45rem;
    font-size: 1rem;
    font-weight: 700;
}

.pet-form .pet-required[b-i1cby7nur7] {
    color: #d92d20;
    font-weight: 900;
    margin-left: .2rem;
}

.pet-form .pet-input-shell[b-i1cby7nur7] {
    display: flex;
    align-items: stretch;
    border: 1.5px solid #4b5563;
    border-radius: 1.4rem;
    background-color: #fff;
    overflow: hidden;
    transition: box-shadow .2s ease, border-color .2s ease;
}

.pet-form .pet-input-shell:focus-within[b-i1cby7nur7] {
    border-color: rgba(255,58,87,.4);
    box-shadow: 0 0 0 .12rem rgba(255,58,87,.12);
}

.pet-form .pet-input-shell .form-control[b-i1cby7nur7],
.pet-form .pet-input-shell .form-select[b-i1cby7nur7] {
    border: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    color: #163750 !important;
    min-height: 3rem;
    padding: .8rem 1rem;
    border-radius: 0 !important;
}

.pet-form .pet-input-shell .form-select[b-i1cby7nur7] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 2.6rem;
    background-image: none !important;
}

.pet-form .pet-input-shell .form-control[b-i1cby7nur7]::placeholder {
    color: rgba(22,55,80,.48);
}

.pet-form .pet-input-icon[b-i1cby7nur7] {
    width: 3.35rem;
    min-width: 3.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-left: 1.5px solid #4b5563;
    background: #fff;
    color: var(--pet-accent-color);
}

.pet-form .pet-btn-primary[b-i1cby7nur7],
.pet-form .pet-btn-secondary[b-i1cby7nur7],
.pet-form .pet-btn-danger[b-i1cby7nur7] {
    border-radius: 999px;
    min-height: 2.65rem;
    padding-top: .45rem;
    padding-bottom: .45rem;
    font-size: .9rem;
    font-weight: 800;
}

.pet-form .pet-btn-primary[b-i1cby7nur7] {
    background-color: var(--pet-accent-color);
    border-color: var(--pet-accent-color);
    color: #fff;
    box-shadow: 0 12px 24px rgba(255,58,87,.18);
}

.pet-form .pet-btn-primary:disabled[b-i1cby7nur7] {
    opacity: 1 !important;
    background-color: var(--pet-accent-color) !important;
    border-color: var(--pet-accent-color) !important;
    color: #fff !important;
}

.pet-form .pet-btn-secondary[b-i1cby7nur7] {
    background-color: var(--pet-label-color);
    border-color: var(--pet-label-color);
    color: #fff;
    box-shadow: 0 10px 20px rgba(15,61,117,.12);
}

.pet-form .pet-btn-danger[b-i1cby7nur7] {
    background: #fff6f6;
    color: #b42318;
    border: 1px solid #f3b6b6;
}

.pet-form .pet-save-actions[b-i1cby7nur7] {
    display: flex;
    justify-content: flex-end;
    gap: .85rem;
    flex-wrap: wrap;
    margin-top: 1.5rem;
}

.pet-form[b-i1cby7nur7] (.validation-message) {
    position: relative;
    display: inline-block;
    margin-top: .55rem;
    padding: .58rem .88rem;
    border-radius: .45rem;
    background: #d95b63;
    color: #fff;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.2;
    box-shadow: 0 8px 18px rgba(217,91,99,.18);
    border: 1px solid rgba(190,73,82,.2);
}

.pet-form[b-i1cby7nur7] (.validation-message::before) {
    content: "";
    position: absolute;
    top: -6px;
    left: 14px;
    width: 12px;
    height: 12px;
    background: #d95b63;
    border-left: 1px solid rgba(190,73,82,.2);
    border-top: 1px solid rgba(190,73,82,.2);
    transform: rotate(45deg);
}

.pet-form[b-i1cby7nur7] (.validation-summary-errors) {
    display: none;
}
/* _content/IngenieriaVisualSASPH/Components/Register/ResidentForm.razor.rz.scp.css */
.resident-form[b-hkqdp0i37u] {
    --resident-label-color: #0F3D75;
    --resident-accent-color: #0F3D75;
    --resident-field-text-color: #163750;
}

.resident-form .resident-intro[b-hkqdp0i37u] {
    margin-bottom: 1.2rem;
    padding: .95rem 1rem;
    border-radius: 1.4rem;
    border: 1px solid rgba(15,61,117,.12);
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(239,246,255,.95) 100%);
    box-shadow: 0 14px 28px rgba(23,42,79,.08);
}

.resident-form .resident-intro h1[b-hkqdp0i37u],
.resident-form .resident-intro p[b-hkqdp0i37u],
.resident-form .resident-label[b-hkqdp0i37u] {
    color: var(--resident-label-color);
}

.resident-form .resident-intro h1[b-hkqdp0i37u] {
    margin: 0 0 .35rem;
    font-size: clamp(1.45rem, 2vw, 2rem);
    font-weight: 800;
}

.resident-form .resident-intro p[b-hkqdp0i37u] {
    margin: 0;
    font-size: .95rem;
    line-height: 1.5;
}

.resident-form .resident-field-group[b-hkqdp0i37u] {
    margin-bottom: 1rem;
}

.resident-form .resident-label[b-hkqdp0i37u] {
    display: block;
    margin-bottom: .45rem;
    font-size: 1rem;
    font-weight: 700;
}

.resident-form .resident-input-shell[b-hkqdp0i37u] {
    display: flex;
    align-items: stretch;
    border: 1.5px solid #4b5563;
    border-radius: 1.4rem;
    background-color: #fff;
    overflow: hidden;
    transition: box-shadow .2s ease, border-color .2s ease;
}

.resident-form .resident-input-shell:focus-within[b-hkqdp0i37u] {
    border-color: rgba(255,58,87,.4);
    box-shadow: 0 0 0 .12rem rgba(255,58,87,.12);
}

.resident-form .resident-input-shell.is-invalid[b-hkqdp0i37u] {
    border-color: rgba(217,91,99,.55);
    box-shadow: 0 0 0 .16rem rgba(217,91,99,.12);
}

.resident-form .resident-input-shell.is-invalid .resident-input-icon[b-hkqdp0i37u] {
    color: #d95b63;
}

.resident-form .resident-input-shell .form-control[b-hkqdp0i37u],
.resident-form .resident-input-shell .form-select[b-hkqdp0i37u],
.resident-form .resident-input-shell .form-check-input[b-hkqdp0i37u] {
    border: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    color: var(--resident-field-text-color) !important;
}

.resident-form .resident-input-shell .form-control[b-hkqdp0i37u],
.resident-form .resident-input-shell .form-select[b-hkqdp0i37u] {
    min-height: 3rem;
    padding: .8rem 1rem;
    border-radius: 0 !important;
}

.resident-form .resident-input-shell .form-control[b-hkqdp0i37u]::placeholder {
    color: rgba(22,55,80,.48);
}

.resident-form .resident-input-shell .form-select[b-hkqdp0i37u] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.2;
    padding-right: 2.6rem;
    background-image: none !important;
}

.resident-form .resident-input-shell .form-select option[b-hkqdp0i37u] {
    color: #163750;
    background: #fff;
    font-size: .95rem;
}

.resident-form .resident-input-icon[b-hkqdp0i37u] {
    width: 3.35rem;
    min-width: 3.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-left: 1.5px solid #4b5563;
    background: #fff;
    color: var(--resident-accent-color);
}

.resident-form .resident-consent[b-hkqdp0i37u] {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .8rem 1rem;
    border-radius: 1.2rem;
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(239,246,255,.95) 100%);
    border: 1px solid rgba(15,61,117,.10);
}

.resident-form .resident-consent .form-check-input[b-hkqdp0i37u] {
    width: 1.35rem;
    height: 1.35rem;
    min-width: 1.35rem;
    margin: 0;
    margin-top: .15rem;
    flex: 0 0 1.35rem;
    border: 2px solid rgba(255,58,87,.42) !important;
    border-radius: .4rem !important;
}

.resident-form .resident-consent .form-check-input:checked[b-hkqdp0i37u] {
    background-color: var(--resident-accent-color) !important;
}

.resident-form .resident-consent-label[b-hkqdp0i37u] {
    margin: 0;
    color: var(--resident-label-color);
    font-weight: 600;
    line-height: 1.5;
}

.resident-form .resident-consent-copy[b-hkqdp0i37u] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .35rem;
}

.resident-form .resident-consent-link[b-hkqdp0i37u] {
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--resident-accent-color);
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.resident-form .resident-terms-modal-body[b-hkqdp0i37u] {
    padding: 1.25rem 1.25rem 1rem;
    background: linear-gradient(180deg, rgba(255,255,255,0.99) 0%, rgba(244,248,252,0.97) 100%);
}

.resident-form .resident-terms-modal-copy[b-hkqdp0i37u] {
    max-height: min(62vh, 560px);
    overflow-y: auto;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(15,61,117,.12);
    border-radius: 1rem;
    background: #fff;
    color: #163750;
    white-space: pre-wrap;
    line-height: 1.6;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.9);
}

.resident-form .resident-terms-modal-footer[b-hkqdp0i37u] {
    display: flex;
    justify-content: flex-end;
    gap: .75rem;
    padding: 0 1.25rem 1.25rem;
    background: rgba(244,248,252,0.97);
}

.resident-form .resident-terms-secondary[b-hkqdp0i37u] {
    min-width: 140px;
    border-radius: 999px;
    border: 1px solid rgba(15,61,117,.14);
    background: #fff;
    color: var(--resident-label-color);
    font-weight: 700;
    min-height: 2.65rem;
    font-size: .9rem;
}

.resident-form .resident-submit[b-hkqdp0i37u] {
    min-width: 220px;
}

.resident-form .resident-submit:disabled[b-hkqdp0i37u] {
    opacity: 1 !important;
    background-color: var(--resident-accent-color) !important;
    border-color: var(--resident-accent-color) !important;
    color: #fff !important;
}

.resident-form[b-hkqdp0i37u] (.validation-message) {
    position: relative;
    display: inline-block;
    margin-top: .75rem;
    padding: .8rem 1rem;
    border-radius: .65rem;
    background: #d95b63;
    color: #fff;
    font-size: .92rem;
    font-weight: 700;
    line-height: 1.25;
    box-shadow: 0 10px 22px rgba(217, 91, 99, 0.2);
    border: 0;
}

.resident-form[b-hkqdp0i37u] (.validation-message::before) {
    content: "";
    position: absolute;
    top: -8px;
    left: 18px;
    width: 16px;
    height: 16px;
    background: #d95b63;
    transform: rotate(45deg);
    border-radius: 2px;
}

.resident-form[b-hkqdp0i37u] (.validation-summary-errors) {
    display: none;
}
/* _content/IngenieriaVisualSASPH/Components/Register/TelephoneForm.razor.rz.scp.css */
.telephone-form[b-s2rkx29unm] {
    --telephone-label-color: #0F3D75;
    --telephone-accent-color: #0F3D75;
}

.telephone-form .telephone-intro[b-s2rkx29unm] {
    margin-bottom: 1.2rem;
    padding: .95rem 1rem;
    border-radius: 1.4rem;
    border: 1px solid rgba(15,61,117,.12);
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(239,246,255,.95) 100%);
}

.telephone-form .telephone-intro h1[b-s2rkx29unm],
.telephone-form .telephone-intro p[b-s2rkx29unm],
.telephone-form .telephone-label[b-s2rkx29unm],
.telephone-form .telephone-section-title[b-s2rkx29unm] {
    color: var(--telephone-label-color);
}

.telephone-form .telephone-intro h1[b-s2rkx29unm] {
    margin: 0 0 .35rem;
    font-size: clamp(1.45rem, 2vw, 2rem);
    font-weight: 800;
}

.telephone-form .telephone-intro p[b-s2rkx29unm] {
    margin: 0;
    font-size: .95rem;
    line-height: 1.5;
}

.telephone-form .telephone-notice[b-s2rkx29unm] {
    margin-bottom: 1.2rem;
    padding: .95rem 1rem;
    border-radius: 1.25rem;
    border: 1px solid #f3d38a;
    background: linear-gradient(180deg, #fff8e8 0%, #fff4dc 100%);
    box-shadow: 0 10px 22px rgba(217,145,32,.08);
}

.telephone-form .telephone-notice-title[b-s2rkx29unm] {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin: 0 0 .35rem;
    font-size: .98rem;
    font-weight: 800;
    color: #9a5b0b;
}

.telephone-form .telephone-notice-copy[b-s2rkx29unm] {
    margin: 0;
    color: #8a5410;
    font-size: .93rem;
    font-weight: 600;
    line-height: 1.5;
}

.telephone-form .telephone-phone-card[b-s2rkx29unm] {
    border: 1px solid rgba(15,61,117,.14);
    border-radius: 1.6rem;
    padding: 1.1rem;
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(249,251,255,.98) 100%);
    box-shadow: 0 12px 28px rgba(23,42,79,.06);
    margin-bottom: 1rem;
}

.telephone-form .telephone-phone-divider[b-s2rkx29unm] {
    height: 1px;
    margin: 1rem 0 1.25rem;
    background: linear-gradient(90deg, transparent 0%, rgba(15,61,117,.18) 14%, rgba(15,61,117,.18) 86%, transparent 100%);
}

.telephone-form .telephone-phone-header[b-s2rkx29unm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .75rem;
    margin-bottom: .85rem;
    flex-wrap: wrap;
}

.telephone-form .telephone-section-title[b-s2rkx29unm] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
}

.telephone-form .telephone-field-group[b-s2rkx29unm] {
    margin-bottom: 1rem;
}

.telephone-form .telephone-label[b-s2rkx29unm] {
    display: block;
    margin-bottom: .45rem;
    font-size: 1rem;
    font-weight: 700;
}

.telephone-form .telephone-required[b-s2rkx29unm] {
    color: #d92d20;
    font-weight: 900;
    margin-left: .2rem;
}

.telephone-form .telephone-input-shell[b-s2rkx29unm] {
    display: flex;
    align-items: stretch;
    border: 1.5px solid #4b5563;
    border-radius: 1.4rem;
    background-color: #fff;
    overflow: hidden;
    transition: box-shadow .2s ease, border-color .2s ease;
}

.telephone-form .telephone-input-shell:focus-within[b-s2rkx29unm] {
    border-color: rgba(255,58,87,.4);
    box-shadow: 0 0 0 .12rem rgba(255,58,87,.12);
}

.telephone-form .telephone-input-shell .form-control[b-s2rkx29unm],
.telephone-form .telephone-input-shell .form-select[b-s2rkx29unm] {
    border: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    color: #163750 !important;
    min-height: 3rem;
    padding: .8rem 1rem;
    border-radius: 0 !important;
}

.telephone-form .telephone-input-shell .form-select[b-s2rkx29unm] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 2.6rem;
    background-image: none !important;
}

.telephone-form .telephone-input-shell .form-control[b-s2rkx29unm]::placeholder {
    color: rgba(22,55,80,.48);
}

.telephone-form .telephone-input-icon[b-s2rkx29unm] {
    width: 3.35rem;
    min-width: 3.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-left: 1.5px solid #4b5563;
    background: #fff;
    color: var(--telephone-accent-color);
}

.telephone-form .telephone-btn-primary[b-s2rkx29unm],
.telephone-form .telephone-btn-secondary[b-s2rkx29unm],
.telephone-form .telephone-btn-danger[b-s2rkx29unm] {
    border-radius: 999px;
    min-height: 2.65rem;
    padding-top: .45rem;
    padding-bottom: .45rem;
    font-size: .9rem;
    font-weight: 800;
}

.telephone-form .telephone-btn-primary[b-s2rkx29unm] {
    background-color: var(--telephone-accent-color);
    border-color: var(--telephone-accent-color);
    color: #fff;
    box-shadow: 0 12px 24px rgba(255,58,87,.18);
}

.telephone-form .telephone-btn-primary:disabled[b-s2rkx29unm] {
    opacity: 1 !important;
    background-color: var(--telephone-accent-color) !important;
    border-color: var(--telephone-accent-color) !important;
    color: #fff !important;
}

.telephone-form .telephone-btn-secondary[b-s2rkx29unm] {
    background-color: var(--telephone-label-color);
    border-color: var(--telephone-label-color);
    color: #fff;
    box-shadow: 0 10px 20px rgba(15,61,117,.12);
}

.telephone-form .telephone-btn-danger[b-s2rkx29unm] {
    background: #fff6f6;
    color: #b42318;
    border: 1px solid #f3b6b6;
}

.telephone-form .telephone-save-actions[b-s2rkx29unm] {
    display: flex;
    justify-content: flex-end;
    margin-top: 1.5rem;
}

.telephone-form[b-s2rkx29unm] (.validation-message) {
    position: relative;
    display: inline-block;
    margin-top: .55rem;
    padding: .58rem .88rem;
    border-radius: .45rem;
    background: #d95b63;
    color: #fff;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.2;
    box-shadow: 0 8px 18px rgba(217,91,99,.18);
    border: 1px solid rgba(190,73,82,.2);
}

.telephone-form[b-s2rkx29unm] (.validation-message::before) {
    content: "";
    position: absolute;
    top: -6px;
    left: 14px;
    width: 12px;
    height: 12px;
    background: #d95b63;
    border-left: 1px solid rgba(190,73,82,.2);
    border-top: 1px solid rgba(190,73,82,.2);
    transform: rotate(45deg);
}

.telephone-form[b-s2rkx29unm] (.validation-summary-errors) {
    display: none;
}
/* _content/IngenieriaVisualSASPH/Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-a3q463nto7] {
    --shell-client-portal-primary: var(--shell-text, #163750);
    --shell-client-portal-primary-strong: color-mix(in srgb, var(--shell-client-portal-primary) 90%, black);
    --shell-client-portal-surface: color-mix(in srgb, var(--shell-client-portal-primary) 4%, #ffffff);
    --shell-client-portal-border: color-mix(in srgb, var(--shell-client-portal-primary) 22%, white);
    min-height: 100vh;
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    background-color: #f5f6f4;
    background-image:
        radial-gradient(circle at 18% 8%, rgba(210, 214, 210, 0.85) 0, rgba(210, 214, 210, 0.85) 14px, transparent 15px),
        radial-gradient(circle at 92% 22%, rgba(220, 223, 220, 0.72) 0, rgba(220, 223, 220, 0.72) 16px, transparent 17px),
        radial-gradient(circle at 8% 78%, rgba(218, 222, 218, 0.78) 0, rgba(218, 222, 218, 0.78) 16px, transparent 17px),
        radial-gradient(circle at 78% 92%, rgba(212, 216, 212, 0.82) 0, rgba(212, 216, 212, 0.82) 15px, transparent 16px),
        linear-gradient(135deg, transparent 0 68%, rgba(228, 230, 228, 0.95) 68% 100%),
        linear-gradient(135deg, transparent 0 72%, rgba(214, 217, 214, 0.9) 72% 100%),
        repeating-linear-gradient(135deg, transparent 0 26px, rgba(224, 226, 224, 0.85) 26px 50px, transparent 50px 92px),
        repeating-linear-gradient(135deg, transparent 0 34px, rgba(232, 234, 232, 0.75) 34px 58px, transparent 58px 108px),
        linear-gradient(315deg, transparent 0 70%, rgba(228, 230, 228, 0.96) 70% 100%),
        linear-gradient(315deg, transparent 0 74%, rgba(214, 217, 214, 0.9) 74% 100%),
        repeating-linear-gradient(315deg, transparent 0 26px, rgba(224, 226, 224, 0.85) 26px 50px, transparent 50px 92px),
        repeating-linear-gradient(315deg, transparent 0 34px, rgba(232, 234, 232, 0.75) 34px 58px, transparent 58px 108px),
        linear-gradient(180deg, #fafbfa 0%, #f1f3f1 100%);
    background-size: 220px 220px,220px 220px,220px 220px,220px 220px,340px 340px,380px 380px,360px 360px,420px 420px,340px 340px,380px 380px,360px 360px,420px 420px,100% 100%;
    background-position: 14% 8%,94% 22%,4% 78%,78% 92%,100% 0,100% 0,102% -2%,104% -4%,0 100%,0 100%,-2% 102%,-4% 104%,center;
    background-repeat: no-repeat;
}

.app-shell.client-1001[b-a3q463nto7] {
    --shell-client-portal-primary: #1b3c73;
    --shell-client-portal-primary-strong: #16345f;
    --shell-client-portal-surface: color-mix(in srgb, #1b3c73 4%, #ffffff);
    --shell-client-portal-border: color-mix(in srgb, #1b3c73 24%, white);
}

.app-shell.client-1002[b-a3q463nto7] {
    --shell-client-portal-primary: #5d8447;
    --shell-client-portal-primary-strong: #466b34;
    --shell-client-portal-surface: color-mix(in srgb, #8eae57 8%, #ffffff);
    --shell-client-portal-border: color-mix(in srgb, #8eae57 36%, white);
}

.app-shell.is-collapsed[b-a3q463nto7] {
    grid-template-columns: 96px minmax(0, 1fr);
}

.app-sidebar[b-a3q463nto7] {
    position: sticky;
    top: 0;
    height: 100vh;
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, var(--shell-sidebar-start) 0%, var(--shell-sidebar-end) 100%);
    color: var(--shell-sidebar-text, #fff);
    box-shadow: 16px 0 38px rgba(15, 32, 67, 0.12);
    z-index: 20;
}

.app-sidebar-brand[b-a3q463nto7] {
    padding: 1.5rem 1.2rem 1rem;
    border-bottom: 1px solid rgba(255,255,255,.12);
    display: flex;
    align-items: center;
    gap: .9rem;
    min-width: 0;
}

.app-brand-logo-frame[b-a3q463nto7] {
    width: 3.5rem;
    height: 3.5rem;
    min-width: 3.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 1.15rem;
    background: rgba(255,255,255,.16);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.14);
    overflow: hidden;
}

.app-brand-logo[b-a3q463nto7] {
    width: 3rem;
    height: 3rem;
    min-width: 3rem;
    object-fit: contain;
    border-radius: 1rem;
    background: rgba(255,255,255,.12);
    padding: .2rem;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.1);
}

.app-brand-copy[b-a3q463nto7] {
    display: flex;
    flex-direction: column;
    color: #fff !important;
    min-width: 0;
}

.app-brand-copy strong[b-a3q463nto7] {
    font-size: clamp(.95rem, 1.15vw, 1.08rem);
    line-height: 1.3;
    font-weight: 800;
    color: #fff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.16);
    overflow-wrap: anywhere;
    word-break: break-word;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.app-sidebar-shortcuts[b-a3q463nto7] {
    padding: .9rem 1.1rem 1rem;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: .55rem;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.app-sidebar-shortcut[b-a3q463nto7] {
    position: relative;
    min-height: 2.85rem;
    border: 0;
    border-radius: .95rem;
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--shell-sidebar-highlight, #B8D34A) 24%, rgba(255,255,255,.92)) 0%,
        color-mix(in srgb, var(--shell-sidebar-accent, #7E8F36) 18%, rgba(255,255,255,.88)) 100%);
    color: var(--shell-sidebar-end, #163750);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 1.05rem;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--shell-sidebar-highlight, #B8D34A) 22%, rgba(255,255,255,.42));
}

.app-sidebar-shortcut-badge[b-a3q463nto7] {
    position: absolute;
    top: -.22rem;
    right: -.16rem;
    min-width: .95rem;
    height: .95rem;
    padding: 0 .2rem;
    border-radius: 999px;
    background: var(--shell-accent);
    color: #fff;
    font-size: .62rem;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 16px rgba(23,42,79,.18);
}

.app-sidebar-shortcuts-mobile[b-a3q463nto7] {
    display: none;
}

.app-desktop-shortcut[b-a3q463nto7] {
    display: inline-flex;
}

.app-sidebar :deep(.app-nav)[b-a3q463nto7] {
    flex: 1 1 auto;
    min-height: 0;
}

.app-sidebar :deep(.app-nav-scroll)[b-a3q463nto7] {
    height: 100%;
    overflow-y: auto;
    padding: 1rem .9rem 1.2rem;
    display: grid;
    gap: .65rem;
}

.app-sidebar :deep(.app-nav-link)[b-a3q463nto7],
.app-sidebar :deep(.app-nav-section-header)[b-a3q463nto7],
.app-sidebar :deep(.app-nav-sublink)[b-a3q463nto7] {
    text-decoration: none;
}

.app-sidebar :deep(.app-nav-link)[b-a3q463nto7],
.app-sidebar :deep(.app-nav-section-header)[b-a3q463nto7] {
    width: 100%;
    min-height: 3rem;
    border: 0;
    border-radius: 1rem;
    background: color-mix(in srgb, var(--shell-sidebar-soft, rgba(255,255,255,.08)) 24%, transparent);
    color: #fff !important;
    display: flex;
    align-items: center;
    gap: .8rem;
    padding: .75rem .9rem;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--shell-sidebar-soft, rgba(255,255,255,.14)) 42%, transparent);
}

.app-sidebar :deep(.app-nav-link--home)[b-a3q463nto7] {
    background: color-mix(in srgb, var(--shell-sidebar-soft-strong, rgba(255,255,255,.18)) 34%, transparent);
}

.app-sidebar :deep(.app-nav-icon)[b-a3q463nto7] {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .75rem;
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--shell-sidebar-highlight, #B8D34A) 22%, rgba(255,255,255,.96)) 0%,
        color-mix(in srgb, var(--shell-sidebar-accent, #7E8F36) 14%, rgba(255,255,255,.9)) 100%);
    color: var(--shell-sidebar-accent, #7E8F36) !important;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--shell-sidebar-highlight, #B8D34A) 26%, rgba(255,255,255,.5));
    font-size: 1rem;
}

.app-sidebar :deep(.app-nav-label)[b-a3q463nto7] {
    font-weight: 800;
    line-height: 1.2;
    text-align: left;
    color: #fff !important;
}

.app-sidebar :deep(.app-nav-section)[b-a3q463nto7] {
    display: grid;
    gap: .35rem;
}

.app-sidebar :deep(.app-nav-section-main)[b-a3q463nto7] {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: .8rem;
}

.app-sidebar :deep(.app-nav-section-header)[b-a3q463nto7] {
    justify-content: space-between;
    cursor: pointer;
}

.app-sidebar :deep(.app-nav-section-chevron)[b-a3q463nto7] {
    width: 1.9rem;
    min-width: 1.9rem;
    height: 1.9rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: color-mix(in srgb, var(--shell-sidebar-highlight, #B8D34A) 18%, rgba(255,255,255,.12));
    color: #fff !important;
    transition: transform .18s ease;
}

.app-sidebar :deep(.app-nav-section-chevron)[b-a3q463nto7],
.app-sidebar :deep(.app-nav-section-chevron i)[b-a3q463nto7],
.app-sidebar :deep(.app-nav-sublink)[b-a3q463nto7],
.app-sidebar :deep(.app-nav-sublink span)[b-a3q463nto7],
.app-sidebar :deep(.app-nav-sublink i)[b-a3q463nto7] {
    color: #fff !important;
}

.app-sidebar :deep(.app-nav-section.is-open .app-nav-section-chevron)[b-a3q463nto7] {
    transform: rotate(180deg);
}

.app-sidebar :deep(.app-nav-submenu)[b-a3q463nto7] {
    display: grid;
    gap: .3rem;
    padding: 0 0 0 .35rem;
}

.app-sidebar :deep(.app-nav-sublink)[b-a3q463nto7] {
    min-height: 2.55rem;
    border-radius: .85rem;
    color: rgba(255,255,255,.92);
    display: flex;
    align-items: center;
    gap: .7rem;
    padding: .58rem .82rem;
    background: color-mix(in srgb, var(--shell-sidebar-soft, rgba(255,255,255,.10)) 20%, transparent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--shell-sidebar-soft, rgba(255,255,255,.1)) 36%, transparent);
    font-size: .9rem;
    font-weight: 700;
}

.app-sidebar :deep(.app-nav-sublink i)[b-a3q463nto7] {
    width: 1rem;
    min-width: 1rem;
    text-align: center;
}

.app-main[b-a3q463nto7] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.app-header[b-a3q463nto7] {
    position: sticky;
    top: 0;
    z-index: 15;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.4rem;
    backdrop-filter: blur(12px);
    background: rgba(255,255,255,0.72);
    border-bottom: 1px solid rgba(22, 55, 80, 0.08);
}

.app-header-left[b-a3q463nto7],
.app-header-actions[b-a3q463nto7] {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
}

.app-mobile-brand[b-a3q463nto7] {
    display: none;
}

.app-mobile-brand-logo-frame[b-a3q463nto7] {
    width: 3rem;
    height: 3rem;
    min-width: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    background: rgba(255,255,255,.96);
    box-shadow: 0 10px 24px rgba(23,42,79,.08);
    overflow: hidden;
}

.app-mobile-brand-logo[b-a3q463nto7] {
    width: 2.5rem;
    height: 2.5rem;
    object-fit: contain;
    border-radius: .8rem;
}

.app-mobile-brand-copy[b-a3q463nto7] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.app-mobile-brand-copy strong[b-a3q463nto7],
.app-mobile-brand-copy span[b-a3q463nto7] {
    color: var(--shell-client-portal-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.app-mobile-brand-copy strong[b-a3q463nto7] {
    font-size: .98rem;
    font-weight: 900;
}

.app-mobile-brand-copy span[b-a3q463nto7] {
    font-size: .78rem;
    font-weight: 700;
    opacity: .78;
}


.app-menu-toggle[b-a3q463nto7],
.app-icon-button[b-a3q463nto7],
.app-logout-button[b-a3q463nto7],
.app-code-pill[b-a3q463nto7] {
    min-height: 2.9rem;
    border-radius: 999px;
}

.app-menu-toggle[b-a3q463nto7],
.app-icon-button[b-a3q463nto7] {
    width: 2.9rem;
    border: 2px solid rgba(22,55,80,.14);
    background: rgba(255,255,255,.96);
    color: var(--shell-client-portal-primary);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 24px rgba(23,42,79,.08);
    cursor: pointer;
}

.app-code-pill[b-a3q463nto7] {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    padding: .55rem 1rem;
    border: 2px solid rgba(22,55,80,.14);
    background: rgba(255,255,255,.96);
    box-shadow: 0 10px 24px rgba(23,42,79,.08);
    color: var(--shell-client-portal-primary);
}

.app-code-label[b-a3q463nto7] {
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .72;
}

.app-icon-button[b-a3q463nto7] {
    position: relative;
}

.app-icon-badge[b-a3q463nto7] {
    position: absolute;
    top: -.18rem;
    right: -.18rem;
    min-width: 1rem;
    height: 1rem;
    padding: 0 .22rem;
    border-radius: 999px;
    background: var(--shell-accent);
    color: #fff;
    font-size: .65rem;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.app-language-selector[b-a3q463nto7] {
    display: inline-block;
    width: auto;
}

.app-home-button[b-a3q463nto7] {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    min-height: 3rem;
    padding: .6rem 1.15rem;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 700;
    border: 2px solid var(--shell-client-portal-primary);
    color: var(--shell-client-portal-primary);
    background: rgba(255,255,255,.96);
    box-shadow: 0 10px 24px rgba(23, 42, 79, 0.08);
    line-height: 1.1;
}

.app-home-button:hover[b-a3q463nto7] {
    color: var(--shell-client-portal-primary);
}

.app-mobile-home-button[b-a3q463nto7] {
    display: none;
}

.app-mobile-language-trigger[b-a3q463nto7] {
    display: none;
}

.app-language-selector[b-a3q463nto7],
.app-language-selector.language-selector-container[b-a3q463nto7] {
    display: inline-block;
    width: auto;
    margin-bottom: 0;
}

.app-language-selector :deep(.custom-select)[b-a3q463nto7],
.app-language-selector.language-selector-container :deep(.custom-select)[b-a3q463nto7] {
    position: relative;
    display: inline-block;
    width: auto;
    min-width: 132px;
    margin-left: 0;
}

.app-language-selector :deep(.custom-select select)[b-a3q463nto7],
.app-language-selector.language-selector-container :deep(.custom-select select)[b-a3q463nto7],
.app-language-selector :deep(.custom-select select.form-select)[b-a3q463nto7],
.app-language-selector.language-selector-container :deep(.custom-select select.form-select)[b-a3q463nto7] {
    width: 142px;
    min-width: 142px;
    padding: .66rem 2.85rem .66rem 1.05rem !important;
    margin-right: 0 !important;
    border: 1.6px solid var(--shell-client-portal-primary) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.96) !important;
    color: var(--shell-client-portal-primary) !important;
    font-weight: 800 !important;
    font-size: .98rem !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    min-height: 3.35rem !important;
    height: 3.35rem !important;
    appearance: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: none !important;
    outline: none !important;
}

.app-language-selector :deep(.custom-select select:focus)[b-a3q463nto7],
.app-language-selector.language-selector-container :deep(.custom-select select:focus)[b-a3q463nto7],
.app-language-selector :deep(.custom-select select.form-select:focus)[b-a3q463nto7],
.app-language-selector.language-selector-container :deep(.custom-select select.form-select:focus)[b-a3q463nto7] {
    border-color: var(--shell-client-portal-primary) !important;
    box-shadow: 0 0 0 .18rem color-mix(in srgb, var(--shell-client-portal-primary) 18%, transparent) !important;
    outline: none;
}

.app-language-selector :deep(.custom-select .custom-select-arrow)[b-a3q463nto7],
.app-language-selector.language-selector-container :deep(.custom-select .custom-select-arrow)[b-a3q463nto7] {
    position: absolute;
    top: 50%;
    right: 1.05rem;
    display: block;
    width: .58rem;
    height: .58rem;
    border-right: 2px solid var(--shell-client-portal-primary);
    border-bottom: 2px solid var(--shell-client-portal-primary);
    border-right-color: var(--shell-client-portal-primary);
    border-bottom-color: var(--shell-client-portal-primary);
    transform: translateY(-58%) rotate(45deg);
    pointer-events: none;
}

.app-logout-button[b-a3q463nto7] {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    padding: .55rem 1rem;
    border: 0;
    background: var(--shell-sidebar-start);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 14px 28px rgba(23,42,79,.18);
}

.app-content[b-a3q463nto7] {
    padding: 1rem 1.4rem 1.6rem;
}

.app-content-surface[b-a3q463nto7] {
    min-height: calc(100vh - 110px);
    padding: 0;
}

.app-mobile-actions[b-a3q463nto7] {
    display: none;
}

.app-mobile-language-modal-body[b-a3q463nto7] {
    padding: .5rem .25rem;
}

.app-mobile-language-modal-body :deep(.custom-select)[b-a3q463nto7] {
    width: 100%;
}

.app-mobile-language-modal-body :deep(.custom-select select)[b-a3q463nto7] {
    width: 100%;
    min-width: 100%;
    padding: .75rem 2.5rem .75rem 1rem;
    margin-right: 0 !important;
    border-radius: 1rem;
    border: 1px solid rgba(22,55,80,.14);
    background: rgba(255,255,255,.98);
    color: var(--shell-text);
    font-weight: 700;
    font-size: 1rem;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: none !important;
}

.app-mobile-language-modal-body :deep(.custom-select .custom-select-arrow)[b-a3q463nto7] {
    position: absolute;
    top: 50%;
    right: 1rem;
    display: block;
    width: .55rem;
    height: .55rem;
    border-right: 2px solid var(--shell-text);
    border-bottom: 2px solid var(--shell-text);
    transform: translateY(-65%) rotate(45deg);
    pointer-events: none;
}

.app-desktop-shortcut[b-a3q463nto7] {
    display: inline-flex;
}

#blazor-error-ui[b-a3q463nto7] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-a3q463nto7] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

@media (max-width: 767.98px) {
    .app-shell[b-a3q463nto7],
    .app-shell.is-collapsed[b-a3q463nto7] {
        grid-template-columns: 1fr;
    }

    .app-sidebar[b-a3q463nto7],
    .app-shell.is-collapsed .app-sidebar[b-a3q463nto7] {
        display: none;
    }

    .app-header[b-a3q463nto7] {
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
        padding: 1rem 1rem .75rem;
    }

    .app-header-left[b-a3q463nto7] {
        display: flex;
        flex: 1 1 auto;
        min-width: 0;
        align-items: center;
        width: 100%;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: .55rem;
    }

    .app-header-actions[b-a3q463nto7] {
        display: none;
    }

    .app-menu-toggle[b-a3q463nto7],
    .app-home-button[b-a3q463nto7],
    .app-logout-button[b-a3q463nto7],
    .app-icon-button[b-a3q463nto7],
    .app-desktop-shortcut[b-a3q463nto7] {
        display: none;
    }

    .app-language-selector[b-a3q463nto7],
    .app-language-selector.language-selector-container[b-a3q463nto7] {
        display: none !important;
    }

    .app-mobile-language-trigger[b-a3q463nto7] {
        display: none;
    }

    .app-mobile-brand[b-a3q463nto7] {
        display: flex;
        align-items: center;
        gap: .7rem;
        min-width: 0;
        flex: 0 0 100%;
    }

    .app-mobile-home-button[b-a3q463nto7] {
        min-height: 2.9rem;
        padding: .55rem .95rem;
        border-radius: .95rem;
        border: 2px solid var(--shell-client-portal-primary);
        background: rgba(255,255,255,.96);
        color: var(--shell-client-portal-primary);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: .45rem;
        text-decoration: none;
        font-weight: 800;
        font-size: .9rem;
        box-shadow: 0 10px 22px rgba(23,42,79,.08);
        margin-top: 0;
    }

    .app-code-pill[b-a3q463nto7] {
        display: inline-flex;
        min-height: 2.9rem;
        padding: .55rem 1rem;
        border-radius: .95rem;
        border: 2px solid rgba(22,55,80,.14);
        background: rgba(255,255,255,.96);
        color: var(--shell-client-portal-primary);
        box-shadow: 0 10px 22px rgba(23,42,79,.08);
        margin-right: auto;
    }

    .app-code-pill strong[b-a3q463nto7] {
        font-size: 1rem;
        font-weight: 900;
        line-height: 1;
    }

    .app-content[b-a3q463nto7] {
        padding: .85rem .85rem 6rem;
    }

    .app-sidebar-shortcuts-mobile[b-a3q463nto7] {
        display: grid;
    }

    .app-mobile-actions[b-a3q463nto7] {
        position: fixed;
        left: 1rem;
        right: 1rem;
        bottom: 1rem;
        z-index: 35;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: .8rem;
        padding: .75rem;
        border-radius: 1.35rem;
        background: rgba(255,255,255,.94);
        box-shadow: 0 18px 34px rgba(22, 55, 80, 0.16);
        backdrop-filter: blur(12px);
    }

    .app-mobile-action-button[b-a3q463nto7] {
        width: 100%;
        min-height: 3.1rem;
        border: 1px solid rgba(22,55,80,.12);
        border-radius: 1rem;
        background: #fff;
        color: var(--shell-text);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 1.25rem;
        text-decoration: none;
        box-shadow: 0 10px 22px rgba(23,42,79,.08);
        padding: 0;
    }

    .app-mobile-action-danger[b-a3q463nto7] {
        background: var(--shell-sidebar-start);
        color: #fff;
        border-color: transparent;
    }
}
/* _content/IngenieriaVisualSASPH/Layout/NavMenu.razor.rz.scp.css */
.app-nav[b-v0kbee6u49] {
    flex: 1 1 auto;
    min-height: 0;
}

.app-nav-scroll[b-v0kbee6u49] {
    height: 100%;
    overflow-y: auto;
    padding: 1rem .9rem 1.2rem;
    display: grid;
    gap: .65rem;
}

.app-nav-link[b-v0kbee6u49],
.app-nav-section-header[b-v0kbee6u49],
.app-nav-sublink[b-v0kbee6u49] {
    text-decoration: none;
}

.app-nav-link[b-v0kbee6u49],
.app-nav-section-header[b-v0kbee6u49] {
    width: 100%;
    min-height: 3rem;
    border: 0;
    border-radius: 1rem;
    background: rgba(255,255,255,.08);
    color: var(--nav-text, #fff);
    display: flex;
    align-items: center;
    gap: .8rem;
    padding: .75rem .9rem;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.1);
}

.app-nav-link--home[b-v0kbee6u49] {
    background: rgba(255,255,255,.14);
}

.app-nav-icon[b-v0kbee6u49] {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: .75rem;
    background: rgba(255,255,255,.14);
    font-size: 1rem;
}

.app-nav-label[b-v0kbee6u49] {
    font-weight: 800;
    line-height: 1.2;
    text-align: left;
}

.app-nav-section[b-v0kbee6u49] {
    display: grid;
    gap: .35rem;
}

.app-nav-section-main[b-v0kbee6u49] {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: .8rem;
}

.app-nav-section-header[b-v0kbee6u49] {
    justify-content: space-between;
    cursor: pointer;
}

.app-nav-section-chevron[b-v0kbee6u49] {
    width: 1.9rem;
    min-width: 1.9rem;
    height: 1.9rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    transition: transform .18s ease;
}

.app-nav-section.is-open .app-nav-section-chevron[b-v0kbee6u49] {
    transform: rotate(180deg);
}

.app-nav-submenu[b-v0kbee6u49] {
    display: grid;
    gap: .3rem;
    padding: 0 0 0 .35rem;
}

.app-nav-sublink[b-v0kbee6u49] {
    min-height: 2.55rem;
    border-radius: .85rem;
    color: rgba(255,255,255,.92);
    display: flex;
    align-items: center;
    gap: .7rem;
    padding: .58rem .82rem;
    background: rgba(255,255,255,.06);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
    font-size: .9rem;
    font-weight: 700;
}


.app-nav-sublink i[b-v0kbee6u49] {
    width: 1rem;
    min-width: 1rem;
    text-align: center;
}
/* _content/IngenieriaVisualSASPH/Pages/Security/Login.razor.rz.scp.css */
:global(body)[b-4radv1um2y] {
    min-height: 100vh;
    margin: 0;
}

.login-page[b-4radv1um2y] {
    min-height: 100vh;
    background-color: #f5f6f4;
    background-image:
        radial-gradient(circle at 18% 8%, rgba(210, 214, 210, 0.85) 0, rgba(210, 214, 210, 0.85) 14px, transparent 15px),
        radial-gradient(circle at 92% 22%, rgba(220, 223, 220, 0.72) 0, rgba(220, 223, 220, 0.72) 16px, transparent 17px),
        radial-gradient(circle at 8% 78%, rgba(218, 222, 218, 0.78) 0, rgba(218, 222, 218, 0.78) 16px, transparent 17px),
        radial-gradient(circle at 78% 92%, rgba(212, 216, 212, 0.82) 0, rgba(212, 216, 212, 0.82) 15px, transparent 16px),
        linear-gradient(135deg, transparent 0 68%, rgba(228, 230, 228, 0.95) 68% 100%),
        linear-gradient(135deg, transparent 0 72%, rgba(214, 217, 214, 0.9) 72% 100%),
        repeating-linear-gradient(135deg,
            transparent 0 26px,
            rgba(224, 226, 224, 0.85) 26px 50px,
            transparent 50px 92px),
        repeating-linear-gradient(135deg,
            transparent 0 34px,
            rgba(232, 234, 232, 0.75) 34px 58px,
            transparent 58px 108px),
        linear-gradient(315deg, transparent 0 70%, rgba(228, 230, 228, 0.96) 70% 100%),
        linear-gradient(315deg, transparent 0 74%, rgba(214, 217, 214, 0.9) 74% 100%),
        repeating-linear-gradient(315deg,
            transparent 0 26px,
            rgba(224, 226, 224, 0.85) 26px 50px,
            transparent 50px 92px),
        repeating-linear-gradient(315deg,
            transparent 0 34px,
            rgba(232, 234, 232, 0.75) 34px 58px,
            transparent 58px 108px),
        linear-gradient(180deg, #fafbfa 0%, #f1f3f1 100%);
    background-size:
        220px 220px,
        220px 220px,
        220px 220px,
        220px 220px,
        340px 340px,
        380px 380px,
        360px 360px,
        420px 420px,
        340px 340px,
        380px 380px,
        360px 360px,
        420px 420px,
        100% 100%;
    background-position:
        14% 8%,
        94% 22%,
        4% 78%,
        78% 92%,
        100% 0,
        100% 0,
        102% -2%,
        104% -4%,
        0 100%,
        0 100%,
        -2% 102%,
        -4% 104%,
        center;
    background-repeat: no-repeat;
    padding: 1.25rem 0 1.75rem;
}

.login-container[b-4radv1um2y] {
    width: min(1320px, 96vw);
    margin: 0 auto;
}

.language-selector-container[b-4radv1um2y] {
    display: inline-block;
    width: auto;
}

.language-selector-container[b-4radv1um2y]  .custom-select {
    position: relative;
    display: inline-block;
    min-width: 132px;
    margin-left: 0;
}

.language-selector-container[b-4radv1um2y]  .custom-select select {
    width: 132px;
    min-width: 132px;
    padding: .6rem 2.4rem .6rem .95rem;
    margin-right: 0 !important;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    font-weight: 700;
    font-size: 1rem;
    box-shadow: 0 8px 18px rgba(23, 42, 79, 0.08);
}

.language-selector-container[b-4radv1um2y]  .custom-select .custom-select-arrow {
    position: absolute;
    top: 50%;
    right: 1rem;
    display: block;
    width: .55rem;
    height: .55rem;
    transform: translateY(-65%) rotate(45deg);
    pointer-events: none;
}

.login-main-row[b-4radv1um2y] {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 1.5rem;
    align-items: stretch;
    min-height: calc(100vh - 5rem);
}

.welcome-column[b-4radv1um2y] {
    flex: 0 0 57%;
    max-width: 57%;
    display: flex;
}

.login-column[b-4radv1um2y] {
    flex: 0 0 43%;
    max-width: 43%;
    display: flex;
}

.background-figure[b-4radv1um2y] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: .25em;
    box-sizing: border-box;
    left: 50%;
    padding: 5vmin;
    top: 50%;
    transform: translate(-50%, -50%);
}

.bg[b-4radv1um2y] {
    bottom: 0;
    left: -60%;
    opacity: 0.9;
    position: fixed;
    right: -50%;
    top: 0;
    z-index: -1;
}

.welcome-card[b-4radv1um2y],
.login-card[b-4radv1um2y] {
    border: 0;
    border-radius: 2rem !important;
    overflow: hidden;
    border: 1px solid rgba(15, 61, 117, 0.12);
    box-shadow: 0 18px 40px rgba(23, 42, 79, 0.18);
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
}

#login-container-welcome .welcome-hero[b-4radv1um2y] {
    height: 240px;
    flex: 0 0 auto;
    background: #f4f6f8;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

#login-container-welcome .welcome-hero img[b-4radv1um2y] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    filter: none;
}

#login-container-welcome .welcome-card .card-body[b-4radv1um2y] {
    padding-top: 1.5rem !important;
    padding-bottom: 1.2rem !important;
    display: flex;
    flex-direction: column;
    gap: .85rem;
    min-height: 0;
}

#login-container-welcome .welcome-card h1[b-4radv1um2y] {
    margin-bottom: 0;
    font-size: clamp(2rem, 2.4vw, 3.15rem);
    line-height: 1.08;
}

#login-container-welcome .welcome-card section[b-4radv1um2y] {
    display: block;
    margin-bottom: 0;
    line-height: 1.45;
}

#login-container-welcome .services-panel[b-4radv1um2y] {
    margin-top: 0;
    padding: .85rem 1rem .95rem;
    background: rgba(255, 255, 255, 0.96);
    border-radius: 1.4rem;
    flex: 1 1 auto;
}

#login-container-welcome .service-title[b-4radv1um2y] {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: .35rem;
}

#login-container-welcome .service-copy[b-4radv1um2y] {
    font-size: .92rem;
    line-height: 1.45;
    margin-bottom: .35rem;
}

#login-container-welcome .services-grid[b-4radv1um2y] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .45rem .65rem;
}

#login-container-welcome .service-item[b-4radv1um2y] {
    text-align: center;
}

#login-container-welcome .service-icon[b-4radv1um2y] {
    width: 3rem;
    height: 3rem;
    margin: 0 auto .18rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(239,246,255,.95) 100%);
    box-shadow: 0 8px 18px rgba(23, 42, 79, 0.12);
}

#login-container-welcome .service-icon i[b-4radv1um2y] {
    font-size: 1.2rem;
}

#login-container-welcome .service-label[b-4radv1um2y] {
    font-size: .74rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
}

.login-card[b-4radv1um2y] {
    min-width: 300px;
    width: min(100%, 48rem);
    margin: 0 auto;
    padding: 1.5rem !important;
    height: 100%;
    justify-content: center;
}

.login-logo-shell[b-4radv1um2y] {
    width: clamp(130px, 24vw, 190px);
    min-height: clamp(130px, 24vw, 190px);
    margin: 0 auto 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    border-radius: 1.8rem;
    background:
        radial-gradient(circle at top left, rgba(255,255,255,.92), rgba(255,255,255,.72) 42%, rgba(239,246,255,.64) 100%);
    border: 1px solid rgba(255,255,255,.68);
    box-shadow:
        0 18px 34px rgba(23, 42, 79, 0.12),
        inset 0 1px 0 rgba(255,255,255,.94);
    position: relative;
    overflow: hidden;
}

.login-logo-shell[b-4radv1um2y]::before {
    content: "";
    position: absolute;
    inset: .55rem;
    border-radius: 1.35rem;
    border: 1px solid rgba(22, 55, 80, 0.08);
    pointer-events: none;
}

.login-card .logo-login[b-4radv1um2y] {
    filter: none;
}

.login-column .login-card[b-4radv1um2y] {
    min-height: 100%;
}

.welcome-column .welcome-card[b-4radv1um2y] {
    min-height: 100%;
}

.logo-login[b-4radv1um2y] {
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    margin-top: 0;
    position: relative;
    z-index: 1;
}

.login-form[b-4radv1um2y],
.login-actions[b-4radv1um2y] {
    width: 100%;
}

.login-actions[b-4radv1um2y] {
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.login-actions > button[b-4radv1um2y],
.login-actions > a[b-4radv1um2y],
.login-actions .btn[b-4radv1um2y] {
    width: 100%;
}

.login-actions button[b-4radv1um2y],
.login-actions a[b-4radv1um2y] {
    margin: 0 !important;
    padding-top: .4rem;
    padding-bottom: .4rem;
}

.login-form .form-group.mt-4[b-4radv1um2y],
.login-form .form-check-inline.mt-4[b-4radv1um2y],
.login-form .text-center.mt-4[b-4radv1um2y] {
    margin-top: 1rem !important;
}

.login-form .mb-3[b-4radv1um2y] {
    margin-bottom: .75rem !important;
}

.login-card .input-group[b-4radv1um2y] {
    display: flex;
    align-items: stretch;
    flex-wrap: nowrap;
    border: 1.5px solid #4b5563;
    border-radius: 1.4rem;
    background-color: #fff;
    overflow: hidden;
}

.login-card .input-group[b-4radv1um2y]  .form-control,
.login-card .input-group > .input-group-text[b-4radv1um2y] {
    border-color: rgba(255, 255, 255, 0.32);
}

.login-card .input-group[b-4radv1um2y]  .form-control {
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
    height: 3rem;
    padding-left: 1rem;
    padding-right: 1rem;
    border: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-left-radius: 1.4rem !important;
    border-bottom-left-radius: 1.4rem !important;
}

.login-card .input-group[b-4radv1um2y]  .form-control:focus,
.login-card .input-group[b-4radv1um2y]  .form-control:focus-visible {
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
}

.login-card .input-group > .input-group-text[b-4radv1um2y] {
    flex: 0 0 4rem;
    min-width: 3.2rem;
    height: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    background-color: #fff !important;
    border-left: 1.5px solid #4b5563;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-top-right-radius: 1.4rem !important;
    border-bottom-right-radius: 1.4rem !important;
    box-shadow: none !important;
    appearance: none;
}

.login-card .input-group > .input-group-text i[b-4radv1um2y] {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1;
}

.login-password-toggle[b-4radv1um2y] {
    cursor: pointer;
}

.login-card[b-4radv1um2y]  .form-control.invalid:not(.modified),
.login-card[b-4radv1um2y]  .input-validation-error:not(.modified) {
    outline: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.login-card[b-4radv1um2y]  .form-control.modified.invalid,
.login-card[b-4radv1um2y]  .input-validation-error.modified {
    outline: none !important;
    border: 0 !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.login-card[b-4radv1um2y]  .form-control.modified.valid {
    outline: none !important;
    border: 0 !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.login-card .input-group:focus-within > .input-group-text[b-4radv1um2y] {
    border-color: transparent;
}

.login-card .input-group:focus-within[b-4radv1um2y] {
    border-color: #9fcbb1;
    box-shadow: 0 0 0 .1rem rgba(159, 203, 177, 0.28);
}

.login-card[b-4radv1um2y]  .validation-message {
    position: relative;
    display: inline-block;
    margin-top: .55rem;
    padding: .55rem .8rem;
    border-radius: .5rem;
    background: #fff;
    color: #c62828;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.2;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
    border: 1px solid rgba(198, 40, 40, 0.18);
}

.login-card[b-4radv1um2y]  .validation-message::before {
    content: "";
    position: absolute;
    top: -6px;
    left: 14px;
    width: 12px;
    height: 12px;
    background: #fff;
    border-left: 1px solid rgba(198, 40, 40, 0.18);
    border-top: 1px solid rgba(198, 40, 40, 0.18);
    transform: rotate(45deg);
}

.login-modal-warning-icon[b-4radv1um2y] {
    font-size: 20px;
}

.login-modal-option-copy[b-4radv1um2y] {
    font-size: 13px;
    margin-bottom: 0;
    color: #445f72;
    line-height: 1.6;
}

.login-modal-link-action[b-4radv1um2y] {
    text-decoration: none;
}

.login-modal-button[b-4radv1um2y] {
    border-radius: 999px !important;
    font-weight: 700;
    min-height: 2.9rem;
    box-shadow: 0 12px 24px rgba(23, 42, 79, 0.12);
}

.login-modal-phone-button[b-4radv1um2y] {
    min-height: 3.1rem;
}

.login-modal-phone-item[b-4radv1um2y] {
    margin-bottom: .85rem;
}

.login-modal-phones-copy[b-4radv1um2y] {
    margin: 0 0 1rem;
    color: #516b7b;
    line-height: 1.55;
}

.login-modal-list[b-4radv1um2y] {
    margin: 1.1rem 0 0;
    padding-left: 1.2rem;
}

.login-modal-list li + li[b-4radv1um2y] {
    margin-top: .8rem;
}

.login-modal-surface[b-4radv1um2y] {
    position: relative;
    padding: 1.35rem 1.4rem 1.5rem;
    background-color: #f5f6f4;
    background-image:
        radial-gradient(circle at 18% 8%, rgba(210, 214, 210, 0.85) 0, rgba(210, 214, 210, 0.85) 14px, transparent 15px),
        radial-gradient(circle at 92% 22%, rgba(220, 223, 220, 0.72) 0, rgba(220, 223, 220, 0.72) 16px, transparent 17px),
        radial-gradient(circle at 8% 78%, rgba(218, 222, 218, 0.78) 0, rgba(218, 222, 218, 0.78) 16px, transparent 17px),
        radial-gradient(circle at 78% 92%, rgba(212, 216, 212, 0.82) 0, rgba(212, 216, 212, 0.82) 15px, transparent 16px),
        linear-gradient(135deg, transparent 0 68%, rgba(228, 230, 228, 0.95) 68% 100%),
        linear-gradient(135deg, transparent 0 72%, rgba(214, 217, 214, 0.9) 72% 100%),
        repeating-linear-gradient(135deg,
            transparent 0 26px,
            rgba(224, 226, 224, 0.85) 26px 50px,
            transparent 50px 92px),
        repeating-linear-gradient(135deg,
            transparent 0 34px,
            rgba(232, 234, 232, 0.75) 34px 58px,
            transparent 58px 108px),
        linear-gradient(315deg, transparent 0 70%, rgba(228, 230, 228, 0.96) 70% 100%),
        linear-gradient(315deg, transparent 0 74%, rgba(214, 217, 214, 0.9) 74% 100%),
        repeating-linear-gradient(315deg,
            transparent 0 26px,
            rgba(224, 226, 224, 0.85) 26px 50px,
            transparent 50px 92px),
        repeating-linear-gradient(315deg,
            transparent 0 34px,
            rgba(232, 234, 232, 0.75) 34px 58px,
            transparent 58px 108px),
        linear-gradient(180deg, #fafbfa 0%, #f1f3f1 100%);
    background-size:
        220px 220px,
        220px 220px,
        220px 220px,
        220px 220px,
        340px 340px,
        380px 380px,
        360px 360px,
        420px 420px,
        340px 340px,
        380px 380px,
        360px 360px,
        420px 420px,
        100% 100%;
    background-position:
        14% 8%,
        94% 22%,
        4% 78%,
        78% 92%,
        100% 0,
        100% 0,
        102% -2%,
        104% -4%,
        0 100%,
        0 100%,
        -2% 102%,
        -4% 104%,
        center;
    background-repeat: no-repeat;
}

.login-modal-intro-card[b-4radv1um2y] {
    display: flex;
    align-items: flex-start;
    gap: .85rem;
    padding: 1rem 1rem 1rem .95rem;
    border: 1px solid rgba(15, 61, 117, 0.08);
    border-radius: 1.2rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 28px rgba(23, 42, 79, 0.08);
}

.login-modal-warning-icon-wrap[b-4radv1um2y] {
    flex: 0 0 auto;
    width: 2.6rem;
    height: 2.6rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.login-modal-intro-copy[b-4radv1um2y] {
    color: #445f72;
    line-height: 1.55;
}

.login-modal-header[b-4radv1um2y] {
    display: flex;
    align-items: center;
    gap: .95rem;
    padding: 1.1rem 1.3rem 1rem;
    background:
        radial-gradient(circle at top left, rgba(238, 245, 255, 0.92), transparent 36%),
        linear-gradient(180deg, #ffffff 0%, #f4f8fc 100%);
    border-bottom: 3px solid;
}

.login-modal-header-icon[b-4radv1um2y] {
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    border: 1px solid rgba(15, 61, 117, 0.12);
    background: rgba(255, 255, 255, 0.96);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    box-shadow: 0 10px 22px rgba(23, 42, 79, 0.10);
}

.login-modal-header-copy[b-4radv1um2y] {
    min-width: 0;
}

.login-modal-header-copy h2[b-4radv1um2y] {
    margin: 0;
    color: #163750;
    font-size: 1.18rem;
    line-height: 1.2;
}

.login-modal-kicker[b-4radv1um2y] {
    display: block;
    margin-bottom: .18rem;
    color: #6b8192;
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

:global(.login-modal-dialog.modal-dialog)[b-4radv1um2y] {
    max-width: 620px;
}

:global(.login-modal-dialog .modal-content)[b-4radv1um2y] {
    overflow: hidden;
    border-radius: 1.8rem;
    border: 2px solid rgba(15, 61, 117, 0.10);
    background-color: #f5f6f4;
    background-image:
        radial-gradient(circle at 18% 8%, rgba(210, 214, 210, 0.85) 0, rgba(210, 214, 210, 0.85) 14px, transparent 15px),
        radial-gradient(circle at 92% 22%, rgba(220, 223, 220, 0.72) 0, rgba(220, 223, 220, 0.72) 16px, transparent 17px),
        radial-gradient(circle at 8% 78%, rgba(218, 222, 218, 0.78) 0, rgba(218, 222, 218, 0.78) 16px, transparent 17px),
        radial-gradient(circle at 78% 92%, rgba(212, 216, 212, 0.82) 0, rgba(212, 216, 212, 0.82) 15px, transparent 16px),
        linear-gradient(135deg, transparent 0 68%, rgba(228, 230, 228, 0.95) 68% 100%),
        linear-gradient(135deg, transparent 0 72%, rgba(214, 217, 214, 0.9) 72% 100%),
        repeating-linear-gradient(135deg,
            transparent 0 26px,
            rgba(224, 226, 224, 0.85) 26px 50px,
            transparent 50px 92px),
        repeating-linear-gradient(135deg,
            transparent 0 34px,
            rgba(232, 234, 232, 0.75) 34px 58px,
            transparent 58px 108px),
        linear-gradient(315deg, transparent 0 70%, rgba(228, 230, 228, 0.96) 70% 100%),
        linear-gradient(315deg, transparent 0 74%, rgba(214, 217, 214, 0.9) 74% 100%),
        repeating-linear-gradient(315deg,
            transparent 0 26px,
            rgba(224, 226, 224, 0.85) 26px 50px,
            transparent 50px 92px),
        repeating-linear-gradient(315deg,
            transparent 0 34px,
            rgba(232, 234, 232, 0.75) 34px 58px,
            transparent 58px 108px),
        linear-gradient(180deg, #fafbfa 0%, #f1f3f1 100%);
    background-size:
        220px 220px,
        220px 220px,
        220px 220px,
        220px 220px,
        340px 340px,
        380px 380px,
        360px 360px,
        420px 420px,
        340px 340px,
        380px 380px,
        360px 360px,
        420px 420px,
        100% 100%;
    background-position:
        14% 8%,
        94% 22%,
        4% 78%,
        78% 92%,
        100% 0,
        100% 0,
        102% -2%,
        104% -4%,
        0 100%,
        0 100%,
        -2% 102%,
        -4% 104%,
        center;
    background-repeat: no-repeat;
    box-shadow: 0 28px 60px rgba(23, 42, 79, 0.18);
}

:global(.login-modal-dialog .modal-header)[b-4radv1um2y] {
    padding: 0;
    border-bottom: 0;
    background: transparent;
}

:global(.login-modal-dialog .modal-body)[b-4radv1um2y] {
    padding: 0;
    background: transparent;
}

:global(.login-modal-dialog .btn-close)[b-4radv1um2y] {
    width: 2.25rem;
    height: 2.25rem;
    margin: 1rem 1rem 0 0;
    padding: 0;
    border-radius: 999px;
    border: 0;
    background-color: var(--login-modal-accent, #0f5d69);
    background-position: center;
    background-size: .75rem;
    box-shadow: 0 10px 20px color-mix(in srgb, var(--login-modal-accent, #0f5d69) 24%, rgba(23, 42, 79, 0.18));
    filter: brightness(0) invert(1);
    opacity: 1;
}

:global(.login-modal-dialog .btn-close:focus)[b-4radv1um2y] {
    box-shadow: 0 0 0 .18rem color-mix(in srgb, var(--login-modal-accent, #0f5d69) 20%, white);
}

:global(.login-modal-dialog .btn-close:hover)[b-4radv1um2y] {
    background-color: color-mix(in srgb, var(--login-modal-accent, #0f5d69) 86%, black);
    transform: scale(1.04);
}

@media (min-width: 768px) {
    .login-form[b-4radv1um2y],
    .login-actions[b-4radv1um2y] {
        width: 66.666667%;
        margin-left: auto;
        margin-right: auto;
    }
}

@media (max-width: 991.98px) {
    .login-main-row[b-4radv1um2y] {
        min-height: auto;
    }

    .welcome-column[b-4radv1um2y],
    .login-column[b-4radv1um2y] {
        flex: 0 0 100%;
        max-width: 100%;
        display: block;
    }

    :global(body)[b-4radv1um2y] {
        align-items: flex-start;
    }

    .login-container[b-4radv1um2y] {
        width: min(100%, 98vw);
        padding: 0 .35rem 1rem;
    }

    .login-card[b-4radv1um2y] {
        min-width: 100%;
        padding: 1rem !important;
        border-radius: 1.5rem;
    }

    .logo-login[b-4radv1um2y] {
        width: 100%;
    }

    #login-container-welcome .services-grid[b-4radv1um2y] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .login-modal-header[b-4radv1um2y] {
        padding-right: 3.8rem;
    }
}

@media (max-width: 575.98px) {
    .login-modal-header[b-4radv1um2y] {
        padding: 1rem 3.5rem 1rem 1rem;
        align-items: flex-start;
    }

    .login-modal-header-icon[b-4radv1um2y] {
        width: 2.7rem;
        height: 2.7rem;
        border-radius: .85rem;
    }

    .login-modal-surface[b-4radv1um2y] {
        padding: 1rem 1rem 1.2rem;
    }

    .login-modal-intro-card[b-4radv1um2y] {
        padding: .9rem;
    }
}
/* _content/IngenieriaVisualSASPH/Pages/Security/LoginValidateClient.razor.rz.scp.css */
.validate-client-page[b-8ku31wgg8j] {
    min-height: 100vh;
    padding: 1.25rem 0 2rem;
    background:
        radial-gradient(circle at top left, rgba(219, 236, 228, 0.9), transparent 28%),
        radial-gradient(circle at right 20%, rgba(208, 227, 241, 0.72), transparent 24%),
        linear-gradient(180deg, #f7faf8 0%, #eef4f0 100%);
}

.validate-client-shell[b-8ku31wgg8j] {
    width: min(1180px, 94vw);
    margin: 0 auto;
}

.validate-client-toolbar[b-8ku31wgg8j] {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 1rem;
}

.language-selector-container[b-8ku31wgg8j] {
    display: inline-block;
    width: auto;
}

.language-selector-container[b-8ku31wgg8j]  .custom-select {
    position: relative;
    display: inline-block;
    min-width: 132px;
}

.language-selector-container[b-8ku31wgg8j]  .custom-select select {
    width: 132px;
    min-width: 132px;
    padding: .6rem 2.4rem .6rem .95rem;
    margin-right: 0 !important;
    border: 1px solid #0f5d69;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    color: #0f5d69;
    font-weight: 700;
    font-size: 1rem;
    box-shadow: 0 8px 18px rgba(23, 42, 79, 0.08);
}

.language-selector-container[b-8ku31wgg8j]  .custom-select select:focus {
    border-color: #0f5d69;
    box-shadow: 0 0 0 .18rem rgba(15, 93, 105, 0.16);
}

.language-selector-container[b-8ku31wgg8j]  .custom-select .custom-select-arrow {
    position: absolute;
    top: 50%;
    right: 1rem;
    display: block;
    width: .55rem;
    height: .55rem;
    border-right: 2px solid #0f5d69;
    border-bottom: 2px solid #0f5d69;
    transform: translateY(-65%) rotate(45deg);
    pointer-events: none;
}

.validate-client-panel[b-8ku31wgg8j] {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr);
    gap: 1.5rem;
    align-items: stretch;
}

.validate-client-copy[b-8ku31wgg8j],
.validate-client-visual[b-8ku31wgg8j] {
    border: 1px solid rgba(15, 61, 117, 0.08);
    border-radius: 2rem;
    overflow: hidden;
    box-shadow: 0 24px 48px rgba(23, 42, 79, 0.10);
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(8px);
}

.validate-client-copy-body[b-8ku31wgg8j],
.validate-client-visual-body[b-8ku31wgg8j] {
    padding: 2rem;
}

.validate-client-eyebrow[b-8ku31wgg8j] {
    display: inline-flex;
    align-items: center;
    padding: .35rem .8rem;
    border-radius: 999px;
    background: #e8f3ee;
    color: #176d5f;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: .9rem;
}

.validate-client-copy h1[b-8ku31wgg8j] {
    margin: 0 0 .85rem;
    color: #10324e;
    font-size: clamp(1.9rem, 3vw, 2.7rem);
    line-height: 1.1;
}

.validate-client-lead[b-8ku31wgg8j] {
    margin: 0 0 1rem;
    color: #476072;
    font-size: 1rem;
    line-height: 1.6;
}

.validate-client-steps[b-8ku31wgg8j] {
    margin: 0 0 1.35rem;
    padding-left: 1.3rem;
    color: #25465b;
    line-height: 1.65;
}

.validate-client-steps li + li[b-8ku31wgg8j] {
    margin-top: .55rem;
}

.validate-client-form[b-8ku31wgg8j] {
    padding: 1.25rem;
    border-radius: 1.5rem;
    background: linear-gradient(180deg, #f8fbfd 0%, #f2f7f4 100%);
    border: 1px solid rgba(21, 94, 117, 0.10);
}

.validate-client-field[b-8ku31wgg8j] {
    display: grid;
    gap: .7rem;
}

.validate-client-label[b-8ku31wgg8j] {
    font-weight: 800;
    color: #10324e;
    font-size: .96rem;
}

.validate-client-dropdown[b-8ku31wgg8j] {
    width: 100%;
}

.validate-client-dropdown[b-8ku31wgg8j]  .rz-dropdown {
    width: 100%;
    min-height: 3.2rem;
    border: 1px solid #d2e1d7;
    border-radius: 1rem;
    box-shadow: none;
    background-color: #fff;
}

.validate-client-dropdown[b-8ku31wgg8j]  .rz-dropdown-label,
.validate-client-dropdown[b-8ku31wgg8j]  .rz-inputtext {
    padding: .9rem 1rem;
    font-size: .95rem;
    color: #274357;
}

.validate-client-dropdown[b-8ku31wgg8j]  .rz-dropdown-trigger {
    color: #176d5f;
}

.validate-client-help[b-8ku31wgg8j] {
    margin: 0;
    color: #67808b;
    font-size: .88rem;
}

.validate-client-button[b-8ku31wgg8j] {
    margin-top: 1rem;
    min-width: 180px;
    min-height: 3rem;
    border-radius: 999px;
    font-size: .96rem;
    font-weight: 700;
    padding: .75rem 1.3rem;
    box-shadow: 0 14px 26px rgba(15, 93, 105, 0.20);
}

.validate-client-empty[b-8ku31wgg8j] {
    margin-top: 1rem;
    padding: .9rem 1rem;
    border-radius: 1rem;
    background: #fff7e8;
    border: 1px solid rgba(220, 161, 30, 0.24);
    color: #8f6500;
    font-size: .92rem;
}

.validate-client-visual-body[b-8ku31wgg8j] {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1rem;
    background:
        radial-gradient(circle at top, rgba(239, 246, 255, 0.92), transparent 34%),
        linear-gradient(180deg, #f8fbff 0%, #eef6f1 100%);
}

.validate-client-badge[b-8ku31wgg8j] {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    align-self: flex-start;
    padding: .45rem .9rem;
    border-radius: 999px;
    background: #fff;
    color: #155d75;
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(23, 42, 79, 0.08);
}

.validate-client-badge i[b-8ku31wgg8j] {
    font-size: 1rem;
}

.validate-client-image[b-8ku31wgg8j] {
    width: 100%;
    max-height: 370px;
    object-fit: cover;
    border-radius: 1.5rem;
    border: 1px solid rgba(15, 61, 117, 0.08);
    background: #fff;
    padding: .5rem;
}

.validate-client-visual-copy[b-8ku31wgg8j] {
    margin: 0;
    color: #4f6b7b;
    line-height: 1.6;
    font-size: .95rem;
}

@media (max-width: 991.98px) {
    .validate-client-panel[b-8ku31wgg8j] {
        grid-template-columns: 1fr;
    }

    .validate-client-copy-body[b-8ku31wgg8j],
    .validate-client-visual-body[b-8ku31wgg8j] {
        padding: 1.35rem;
    }
}

@media (max-width: 575.98px) {
    .validate-client-page[b-8ku31wgg8j] {
        padding: .9rem 0 1.4rem;
    }

    .validate-client-shell[b-8ku31wgg8j] {
        width: min(100%, 96vw);
    }

    .validate-client-form[b-8ku31wgg8j] {
        padding: 1rem;
    }

    .validate-client-button[b-8ku31wgg8j] {
        width: 100%;
    }
}
