/* =========================================================
   TURNO YA - AUTENTICACIÓN
   Referencia visual: mockup móvil suministrado por el usuario.
   ========================================================= */

/* =========================================================
   1. PÁGINA Y CONTENEDOR PRINCIPAL
   ========================================================= */
.ty-auth-page{min-height:100vh;background:#050708;color:#f8f8f8;padding:24px;font-family:Inter,"Segoe UI",Arial,sans-serif}.ty-auth-shell{width:min(1120px,100%);min-height:760px;margin:auto;display:grid;grid-template-columns:.92fr 1.08fr;background:#0a0c0d;border:1px solid #26292c;border-radius:34px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.42)}

/* =========================================================
   2. PANEL VISUAL / MARCA
   ========================================================= */
.ty-auth-visual{position:relative;min-height:760px;padding:64px 54px;background:linear-gradient(180deg,rgba(3,5,5,.08),rgba(3,5,5,.35)),linear-gradient(90deg,rgba(2,4,4,.82),rgba(2,4,4,.08)),url('/images/auth/login-hero.webp') center/cover no-repeat}.ty-auth-brand{display:flex;align-items:center;gap:18px}.ty-auth-logo,.ty-auth-mini-logo{font-size:54px;font-weight:900;letter-spacing:-7px}.ty-auth-logo strong,.ty-auth-mini-logo strong,.ty-auth-brand-name strong,.ty-auth-card-header h1 span,.ty-auth-promise strong{color:#e9ac35}.ty-auth-brand-name{font-size:32px;font-weight:800}.ty-auth-slogan{font-size:15px;color:#d3d3d3;letter-spacing:.03em}.ty-auth-promise{position:absolute;left:54px;bottom:90px;font-size:34px;font-weight:750;line-height:1.15}.ty-auth-promise:after{content:"";display:block;width:64px;height:4px;margin-top:24px;border-radius:10px;background:#e9ac35}

/* =========================================================
   3. TARJETA DE LOGIN
   ========================================================= */
.ty-auth-card{padding:52px 64px;background:radial-gradient(circle at 50% 5%,rgba(255,255,255,.055),transparent 36%),#0e1011}.ty-auth-card-header{text-align:center;margin-bottom:34px}.ty-auth-card-header h1,.ty-auth-simple-card h1{margin:0 0 8px;font-size:31px;font-weight:800}.ty-auth-card-header p,.ty-auth-simple-card>p{margin:0;color:#a9aaad;font-size:17px}

/* =========================================================
   4. CAMPOS
   ========================================================= */
.ty-auth-field{margin-bottom:20px}.ty-auth-field label{display:block;margin:0 0 9px;font-weight:700;font-size:15px}.ty-auth-input-wrap{height:58px;display:flex;align-items:center;border:1px solid #34383c;background:rgba(255,255,255,.035);border-radius:15px;transition:border-color .2s,box-shadow .2s}.ty-auth-input-wrap:focus-within{border-color:#dca337;box-shadow:0 0 0 3px rgba(220,163,55,.12)}.ty-auth-input-icon{width:52px;text-align:center;color:#b9babd;font-size:20px}.ty-auth-input-wrap input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:#fff;font-size:16px;padding:0 12px 0 0}.ty-auth-input-wrap input::placeholder{color:#777b80}.ty-password-toggle{width:48px;height:100%;border:0;background:transparent;color:#b9babd;font-size:18px;cursor:pointer}.validation-message{display:block;margin-top:6px;color:#ff8f8f;font-size:12px}

/* =========================================================
   5. OPCIONES Y BOTÓN PRINCIPAL
   ========================================================= */
.ty-auth-options{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:-2px 0 22px;font-size:14px}.ty-auth-options a,.ty-auth-register a,.ty-auth-back{color:#e9ac35;text-decoration:none}.ty-remember{display:flex!important;align-items:center;gap:8px;margin:0!important;font-weight:500!important;color:#c9c9c9}.ty-remember input{accent-color:#e9ac35}.ty-auth-primary{width:100%;height:60px;border:0;border-radius:15px;background:linear-gradient(100deg,#e3a93b,#f0bd58);color:#111;font-size:18px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:22px;box-shadow:0 12px 28px rgba(225,166,51,.16);cursor:pointer}.ty-auth-primary:disabled{opacity:.7;cursor:wait}

/* =========================================================
   6. LOGIN SOCIAL Y BENEFICIOS
   ========================================================= */
.ty-auth-divider{display:flex;align-items:center;gap:15px;color:#9b9da0;margin:28px 0 20px}.ty-auth-divider:before,.ty-auth-divider:after{content:"";height:1px;background:#414447;flex:1}.ty-social{position:relative;width:100%;height:50px;margin:0 0 10px;border:1px solid #555a5f;border-radius:14px;background:transparent;color:#eee;font-size:15px;text-align:left;padding:0 18px;opacity:.72}.ty-social>span{display:inline-block;width:35px;font-weight:800}.ty-social small{position:absolute;right:16px;color:#777}.google{color:#efb82e}.facebook{color:#4b8dff}.ty-auth-register{text-align:center;margin:30px 0;color:#e4e4e4}.ty-auth-benefits{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #272a2c;padding-top:24px}.ty-auth-benefits div{text-align:center;padding:0 8px;border-right:1px solid #303336}.ty-auth-benefits div:last-child{border:0}.ty-auth-benefits b{display:block;color:#e9ac35;font-size:25px;margin-bottom:7px}.ty-auth-benefits span{font-size:11px;line-height:1.35;color:#c9c9c9}

/* =========================================================
   7. MENSAJES
   ========================================================= */
.ty-auth-alert,.ty-auth-success{padding:12px 14px;border-radius:11px;margin:0 0 16px;font-size:13px}.ty-auth-alert{background:rgba(185,47,47,.16);border:1px solid rgba(255,94,94,.32);color:#ffb2b2}.ty-auth-success{background:rgba(43,159,101,.15);border:1px solid rgba(77,211,140,.28);color:#a8edc8}

/* =========================================================
   8. RECUPERAR / RESTABLECER / SELECCIONAR PERFIL
   ========================================================= */
.ty-auth-page-centered{display:grid;place-items:center}.ty-auth-simple-card{width:min(520px,100%);padding:42px;background:#0e1011;border:1px solid #292c2f;border-radius:26px;box-shadow:0 25px 70px rgba(0,0,0,.4)}.ty-auth-mini-logo{margin-bottom:24px}.ty-auth-simple-card>p{margin-bottom:30px}.ty-auth-back{display:inline-block;margin-bottom:24px}.ty-password-rules{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:-4px 0 20px;color:#73777b;font-size:12px}.ty-password-rules .valid{color:#67d69c}.ty-profile-grid{display:grid;gap:12px;margin-top:28px}.ty-profile-grid a{display:flex;justify-content:space-between;padding:18px;border:1px solid #363a3e;border-radius:14px;color:#fff;text-decoration:none}.ty-profile-grid a:hover{border-color:#e9ac35;background:rgba(233,172,53,.06)}

/* =========================================================
   9. RESPONSIVE - TABLET Y MÓVIL
   ========================================================= */
@media(max-width:860px){.ty-auth-page{padding:0;background:#070909}.ty-auth-shell{display:block;width:100%;min-height:100vh;border:0;border-radius:0}.ty-auth-visual{min-height:315px;padding:38px 30px;background-position:center 35%}.ty-auth-brand-name{font-size:27px}.ty-auth-logo{font-size:46px}.ty-auth-promise{left:30px;bottom:38px;font-size:26px}.ty-auth-card{position:relative;margin-top:-28px;padding:38px 30px 34px;border-radius:34px 34px 0 0;min-height:calc(100vh - 287px)}.ty-auth-benefits{margin-top:10px}.ty-auth-simple-card{border-radius:0;min-height:100vh;padding:36px 26px}.ty-auth-page-centered{display:block}}
@media(max-width:520px){.ty-auth-visual{min-height:285px}.ty-auth-card{padding:34px 22px}.ty-auth-card-header h1{font-size:27px}.ty-auth-options{align-items:flex-start;flex-direction:column-reverse;gap:10px}.ty-auth-benefits{grid-template-columns:repeat(2,1fr);gap:18px}.ty-auth-benefits div{border:0}.ty-social small{display:none}}

/* =========================================================
   10. MODAL DE AUTENTICACIÓN SOBRE EL HOME
   ========================================================= */
.ty-auth-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 24px;
    overflow: hidden;
    background: rgba(0, 0, 0, .72);
    backdrop-filter: blur(9px);
}

.ty-auth-modal {
    position: relative;
    width: min(560px, 100%);
    max-height: calc(100dvh - 48px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 34px 42px 30px;
    color: #f8f8f8;
    background:
        radial-gradient(circle at 50% 0, rgba(255, 255, 255, .06), transparent 32%),
        #0e1011;
    border: 1px solid #303337;
    border-radius: 28px;
    box-shadow: 0 32px 100px rgba(0, 0, 0, .65);
}

.ty-auth-modal-close {
    position: absolute;
    top: 16px;
    right: 18px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    background: rgba(255, 255, 255, .04);
    color: #d7d7d7;
    font-size: 25px;
    line-height: 1;
}

.ty-auth-modal-close:hover {
    border-color: rgba(233, 172, 53, .55);
    color: #e9ac35;
}

/* =========================================================
   11. MARCA Y ENCABEZADO DEL MODAL
   ========================================================= */
.ty-auth-modal-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}

.ty-auth-modal-mark {
    width: 42px;
    font-size: 34px;
    font-weight: 900;
    font-style: italic;
    letter-spacing: -7px;
}

.ty-auth-modal-mark strong,
.ty-auth-modal-name strong,
.ty-auth-modal-heading h1 span {
    color: #e9ac35;
}

.ty-auth-modal-name {
    font-size: 21px;
    font-weight: 800;
}

.ty-auth-modal-brand small {
    color: #999da1;
}

.ty-auth-modal-heading {
    margin-bottom: 26px;
    text-align: center;
}

.ty-auth-modal-heading h1 {
    margin: 0 0 7px;
    font-size: 29px;
    font-weight: 800;
}

.ty-auth-modal-heading p {
    margin: 0;
    color: #a9aaad;
}

/* =========================================================
   12. REGISTRO DE USUARIO
   ========================================================= */
.ty-auth-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.ty-auth-optional {
    color: #777b80;
    font-size: 12px;
    font-weight: 500;
}

.ty-password-hint {
    margin: -10px 0 18px;
    color: #8e9296;
    font-size: 12px;
    line-height: 1.45;
}

.ty-auth-terms {
    margin-bottom: 18px;
}

.ty-auth-terms > label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #c4c6c8;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
}

.ty-auth-terms input {
    margin-top: 3px;
    accent-color: #e9ac35;
}

.ty-auth-link-button {
    padding: 0;
    border: 0;
    background: transparent;
    color: #e9ac35;
    text-decoration: underline;
}

.ty-auth-modal-trust {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #292c2f;
    color: #9fa2a5;
    font-size: 11px;
    text-align: center;
}

/* =========================================================
   13. MODAL RESPONSIVE
   ========================================================= */
@media (max-width: 620px) {
    .ty-auth-modal-backdrop {
        padding: 0;
        align-items: end;
    }

    .ty-auth-modal {
        width: 100%;
        max-height: 94vh;
        padding: 30px 22px 26px;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        border-radius: 28px 28px 0 0;
    }

    .ty-auth-form-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .ty-auth-modal-heading h1 {
        font-size: 26px;
    }

    .ty-auth-modal-trust {
        gap: 10px;
        flex-wrap: wrap;
    }
}


/* =========================================================
   14. ENLACES LEGALES DEL REGISTRO
   ========================================================= */
.ty-auth-legal-link {
    display: inline;
    padding: 0;
    border: 0;
    background: transparent;
    color: #e9ac35;
    font: inherit;
    font-weight: 650;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

.ty-auth-legal-link:hover {
    color: #ffd36f;
}

.ty-auth-legal-link:focus-visible {
    outline: 2px solid #e9ac35;
    outline-offset: 3px;
    border-radius: 3px;
}

/* =========================================================
   15. MODAL LEGAL - TÉRMINOS Y TRATAMIENTO DE DATOS
   ========================================================= */
.ty-legal-modal-backdrop {
    position: absolute;
    inset: 0;
    z-index: 1010;
    display: grid;
    place-items: center;
    padding: 28px;
    background: rgba(0, 0, 0, .78);
    backdrop-filter: blur(5px);
}

.ty-legal-modal {
    width: min(620px, 100%);
    max-height: min(720px, calc(100dvh - 64px));
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #111315;
    border: 1px solid #34383c;
    border-radius: 24px;
    box-shadow: 0 28px 90px rgba(0, 0, 0, .72);
}

.ty-legal-modal-header {
    flex: 0 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 24px 26px 18px;
    border-bottom: 1px solid #292c2f;
}

.ty-legal-eyebrow {
    display: block;
    margin-bottom: 5px;
    color: #e9ac35;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.ty-legal-modal-header h2 {
    margin: 0;
    color: #fff;
    font-size: 24px;
}

.ty-legal-modal-close {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border: 1px solid #393d41;
    border-radius: 50%;
    background: #181a1c;
    color: #d9d9d9;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.ty-legal-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 22px 26px;
    color: #b9bdc1;
    line-height: 1.65;
    overscroll-behavior: contain;
}

.ty-legal-modal-body h3 {
    margin: 0 0 7px;
    color: #f4f4f4;
    font-size: 16px;
}

.ty-legal-modal-body p {
    margin: 0 0 20px;
}

.ty-legal-modal-footer {
    flex: 0 0 auto;
    padding: 16px 26px 22px;
    border-top: 1px solid #292c2f;
}

.ty-legal-close-action {
    width: 100%;
}

/* =========================================================
   16. SCROLL DEL MODAL DE AUTENTICACIÓN
   Mantiene el modal dentro del viewport y evita que el título
   quede desplazado por encima de la pantalla.
   ========================================================= */
.ty-auth-modal {
    scrollbar-width: thin;
    scrollbar-color: #676b70 transparent;
}

.ty-auth-modal::-webkit-scrollbar,
.ty-legal-modal-body::-webkit-scrollbar {
    width: 7px;
}

.ty-auth-modal::-webkit-scrollbar-thumb,
.ty-legal-modal-body::-webkit-scrollbar-thumb {
    background: #676b70;
    border-radius: 999px;
}

@media (max-width: 620px) {
    .ty-auth-modal-backdrop {
        overflow: hidden;
    }

    .ty-auth-modal {
        max-height: 94dvh;
    }

    .ty-legal-modal-backdrop {
        padding: 14px;
    }

    .ty-legal-modal {
        max-height: calc(100dvh - 28px);
        border-radius: 20px;
    }
}

/* =========================================================
   AUTH - CONFIRMACIÓN DE CORREO
   ========================================================= */

.ty-auth-check-email {
    padding: 34px 10px 22px;
    text-align: center;
}

.ty-auth-check-email-icon {
    width: 72px;
    height: 72px;
    margin: 0 auto 20px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(240, 182, 63, 0.45);
    border-radius: 50%;
    background: rgba(240, 182, 63, 0.08);
    color: #f0b63f;
    font-size: 32px;
}

.ty-auth-check-email h1 {
    margin-bottom: 12px;
    color: #ffffff;
}

.ty-auth-check-email > strong {
    display: block;
    margin: 8px 0 22px;
    color: #f0b63f;
    overflow-wrap: anywhere;
}

.ty-auth-spam-note {
    margin: 0 auto 28px;
    max-width: 430px;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.035);
    color: #b9bcc1;
    line-height: 1.55;
}

.ty-auth-spam-note strong {
    display: block;
    margin-top: 6px;
    color: #ffffff;
}

/* =========================================================
   AUTH - PÁGINA DE CONFIRMACIÓN
   ========================================================= */

.ty-confirm-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px;
    background: #080a0b;
    color: #ffffff;
}

.ty-confirm-card {
    width: min(100%, 520px);
    padding: 42px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 24px;
    background: #111315;
    text-align: center;
}

.ty-confirm-brand {
    margin-bottom: 28px;
    font-size: 26px;
    font-weight: 800;
}

.ty-confirm-brand strong {
    color: #f0b63f;
}

.ty-confirm-icon {
    width: 72px;
    height: 72px;
    margin: 0 auto 20px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(240, 182, 63, 0.12);
    color: #f0b63f;
    font-size: 34px;
    font-weight: 800;
}

.ty-confirm-icon-error {
    color: #ffffff;
}

/* =========================================================
   20. REGISTRO MULTIROL - CONTENEDOR GENERAL
   ========================================================= */
.ty-auth-modal-register{width:min(1180px,96vw);padding:0;max-height:94dvh;border-radius:24px}.ty-auth-modal-register>.ty-auth-modal-brand,.ty-auth-modal-register>.ty-auth-modal-heading{display:none}.ty-auth-modal-register .ty-auth-modal-close{z-index:5;background:#111}
.ty-register-shell{background:#080a0b;color:#f5f5f5}.ty-register-panel{margin:-1px 30px 30px;padding:24px;border:1px solid #303438;border-radius:22px;background:linear-gradient(135deg,#111416,#0c0e10)}

/* =========================================================
   21. REGISTRO MULTIROL - HERO DINÁMICO
   ========================================================= */
.ty-register-hero{min-height:300px;padding:42px 48px;background-size:cover;background-position:center top;position:relative;transition:background-image .4s ease}.ty-register-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050607 0%,rgba(5,6,7,.94) 30%,rgba(5,6,7,.35) 58%,rgba(5,6,7,.08) 100%)}.ty-register-hero-copy{position:relative;z-index:1;max-width:470px}.ty-register-brand{display:flex;align-items:center;gap:14px;margin-bottom:34px}.ty-register-brand>b{font-size:42px;color:#e7ad3c}.ty-register-brand>span{font-size:28px;font-weight:800}.ty-register-brand strong{color:#e7ad3c}.ty-register-brand small{display:block;font-size:12px;font-weight:400;color:#ddd}.ty-register-configured-logo{display:block;max-width:240px;max-height:86px;width:auto;height:auto;object-fit:contain;object-position:left center}.ty-register-hero h2{font-size:36px;line-height:1.12;margin:0 0 18px;max-width:520px}.ty-register-hero p{font-size:16px;line-height:1.55;color:#d1d1d1;max-width:440px}

/* =========================================================
   22. REGISTRO MULTIROL - PASOS Y TABS
   ========================================================= */
.ty-register-steps{display:flex;align-items:center;justify-content:space-between;margin:0 18px 22px;color:#a8abad;font-size:13px}.ty-register-steps span{display:flex;align-items:center;gap:9px;white-space:nowrap}.ty-register-steps b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#6f7478;color:#111}.ty-register-steps .active b{background:#e7ad3c}.ty-register-steps i{height:1px;flex:1;max-width:70px;background:#3a3e41;margin:0 10px}.ty-role-tabs{display:grid;grid-template-columns:repeat(4,1fr);max-width:760px;border:1px solid #303438;border-radius:18px 18px 0 0;overflow:hidden}.ty-role-tabs button{height:82px;border:0;border-right:1px solid #303438;background:#101315;color:#eee;display:flex;align-items:center;justify-content:center;gap:16px}.ty-role-tabs button:last-child{border-right:0}.ty-role-tabs button.active{color:#e7ad3c;background:linear-gradient(180deg,rgba(231,173,60,.12),rgba(231,173,60,.03));box-shadow:inset 0 0 0 1px #d89d2b}.ty-role-tabs button>b{font-size:28px}.ty-role-tabs button span{font-size:16px;font-weight:750;text-align:left}.ty-role-tabs small{display:block;margin-top:4px;color:#a8abad;font-size:11px;font-weight:400}

/* =========================================================
   23. REGISTRO MULTIROL - FORMULARIO Y CAMPOS
   ========================================================= */
.ty-register-layout{display:grid;grid-template-columns:minmax(0,760px) 1fr;gap:22px}.ty-register-form{padding:26px 28px;border:1px solid #303438;border-radius:0 0 18px 18px;background:#111416}.ty-register-form section{margin-bottom:28px}.ty-register-form h3{margin:0;color:#e7ad3c;font-size:16px}.ty-register-form h3 span{color:#f2f2f2;margin-left:8px}.ty-register-form section>p{margin:5px 0 18px 34px;color:#969a9e;font-size:12px}.ty-register-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}.ty-register-field{display:flex;flex-direction:column;gap:7px}.ty-register-field.wide{grid-column:1/-1}.ty-register-field label{font-size:12px;font-weight:650}.ty-register-field input,.ty-register-field select,.ty-register-field textarea{width:100%;min-height:44px;padding:10px 13px;border:1px solid #3b4044;border-radius:9px;background:#171a1d;color:#eee;outline:0}.ty-register-field textarea{min-height:78px;resize:vertical}.ty-register-field input:focus,.ty-register-field select:focus,.ty-register-field textarea:focus{border-color:#d89d2b;box-shadow:0 0 0 3px rgba(216,157,43,.12)}.ty-check{display:flex;align-items:center;gap:9px;color:#d4d4d4;font-size:12px}.ty-check input{accent-color:#e7ad3c}.ty-register-terms{margin-top:18px}.ty-register-submit{width:100%;height:54px;border:0;border-radius:10px;background:linear-gradient(90deg,#e0a334,#f0c15c);color:#080808;font-size:16px;font-weight:800;display:flex;align-items:center;justify-content:center;position:relative}.ty-register-submit b{position:absolute;right:22px;font-size:24px}.ty-register-login{text-align:center;color:#aaa;font-size:12px}.ty-register-login button{border:0;background:none;color:#e7ad3c}

/* =========================================================
   24. REGISTRO MULTIROL - PANELES LATERALES Y BENEFICIOS
   ========================================================= */
.ty-register-aside{display:grid;align-content:start;gap:18px;padding-top:0}.ty-register-aside>div{padding:24px;border:1px solid #303438;border-radius:18px;background:#111416}.ty-register-aside h3{font-size:15px;margin:0 0 18px}.ty-register-aside p{font-size:12px;line-height:1.55;color:#b9bbbd;margin:0 0 13px}.ty-register-aside p:first-letter{color:#5fd27e}.ty-register-benefits{display:grid;grid-template-columns:repeat(4,1fr);margin-top:24px;border-top:1px solid #303438;padding-top:22px}.ty-register-benefits span{padding:0 18px;border-right:1px solid #303438;color:#e7ad3c;font-size:22px}.ty-register-benefits span:last-child{border:0}.ty-register-benefits b,.ty-register-benefits small{display:block;margin-left:34px}.ty-register-benefits b{margin-top:-24px;color:#eee;font-size:12px}.ty-register-benefits small{margin-top:5px;color:#9da0a3;font-size:11px;line-height:1.4}

/* =========================================================
   25. REGISTRO MULTIROL - RESPONSIVE
   ========================================================= */
@media(max-width:900px){.ty-auth-modal-register{width:100%;max-height:100dvh;border-radius:0}.ty-register-panel{margin:0;border-radius:0}.ty-register-layout{grid-template-columns:1fr}.ty-register-aside{grid-template-columns:1fr 1fr}.ty-register-hero{min-height:260px}.ty-register-benefits{grid-template-columns:1fr 1fr;gap:18px}.ty-register-benefits span{border:0}.ty-register-steps i{display:none}}
@media(max-width:620px){.ty-register-hero{min-height:235px;padding:28px 22px}.ty-register-hero h2{font-size:27px}.ty-register-brand{margin-bottom:22px}.ty-register-panel{padding:16px}.ty-register-steps{overflow-x:auto;gap:18px;margin:0 0 16px}.ty-register-steps span{font-size:11px}.ty-role-tabs{grid-template-columns:1fr}.ty-role-tabs button{height:62px;border-right:0;border-bottom:1px solid #303438;justify-content:flex-start;padding-left:26px}.ty-register-layout{display:block}.ty-register-form{padding:22px 18px}.ty-register-grid{grid-template-columns:1fr}.ty-register-field.wide{grid-column:auto}.ty-register-aside{display:grid;grid-template-columns:1fr;margin-top:18px}.ty-register-benefits{grid-template-columns:1fr 1fr}.ty-auth-modal-register .ty-auth-modal-close{position:fixed}}

/* =========================================================
   26. AUTOFILL / ESCRITURA - CAMPOS OSCUROS DE AUTENTICACIÓN
   Evita que Chrome / Edge cambien el textbox a fondo blanco
   al escribir, seleccionar sugerencias o autocompletar.
   ========================================================= */
.ty-auth-input-wrap input,
.ty-auth-input-wrap input:focus,
.ty-auth-input-wrap input:active,
.ty-auth-input-wrap input:not(:placeholder-shown) {
    background: transparent !important;
    color: #ffffff !important;
    caret-color: #ffffff;
}

.ty-auth-input-wrap input:-webkit-autofill,
.ty-auth-input-wrap input:-webkit-autofill:hover,
.ty-auth-input-wrap input:-webkit-autofill:focus,
.ty-auth-input-wrap input:-webkit-autofill:active {
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffffff !important;
    -webkit-box-shadow: 0 0 0 1000px #17191b inset !important;
    box-shadow: 0 0 0 1000px #17191b inset !important;
    border-radius: 0 14px 14px 0;
    transition: background-color 9999s ease-out 0s;
}

.ty-auth-input-wrap input::selection {
    background: rgba(233, 172, 53, .35);
    color: #ffffff;
}

/* =========================================================
   27. LOGIN ESTÁNDAR EN MODAL SOBRE EL HOME
   Mantiene el mismo lenguaje visual del login principal:
   imagen lateral + formulario completo + beneficios.
   ========================================================= */
.ty-auth-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: grid;
    place-items: center;
    padding: 22px;
    background: rgba(2, 4, 6, .78);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.ty-auth-modal-login-standard {
    width: min(1120px, calc(100vw - 44px));
    max-height: calc(100dvh - 44px);
    padding: 0;
    overflow: hidden;
    border: 1px solid #2b3034;
    border-radius: 28px;
    background: #0c0f10;
    box-shadow: 0 34px 100px rgba(0, 0, 0, .72);
}

.ty-auth-modal-login-standard .ty-auth-modal-close {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 12;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid #42474b;
    border-radius: 50%;
    background: rgba(17, 20, 22, .9);
    color: #ffffff;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
}

.ty-auth-standard-shell {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    min-height: min(780px, calc(100dvh - 44px));
}

.ty-auth-standard-visual {
    position: relative;
    min-height: 100%;
    padding: 64px 54px;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(3, 5, 5, .08), rgba(3, 5, 5, .40)),
        linear-gradient(90deg, rgba(2, 4, 4, .84), rgba(2, 4, 4, .08)),
        url('/images/auth/login-hero.webp') center / cover no-repeat;
}

.ty-auth-standard-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    box-shadow: inset -36px 0 60px rgba(5, 7, 8, .22);
}

.ty-auth-standard-brand,
.ty-auth-standard-promise {
    position: relative;
    z-index: 1;
}

.ty-auth-standard-promise {
    position: absolute;
    left: 54px;
    bottom: 72px;
    margin: 0;
    color: #ffffff;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.15;
}

.ty-auth-standard-card {
    min-width: 0;
    padding: 54px 64px 34px;
    overflow-y: auto;
    background:
        radial-gradient(circle at 50% 5%, rgba(255, 255, 255, .055), transparent 38%),
        #0e1011;
    color: #ffffff;
}

.ty-auth-standard-card::-webkit-scrollbar {
    width: 7px;
}

.ty-auth-standard-card::-webkit-scrollbar-thumb {
    border-radius: 12px;
    background: #303438;
}

.ty-auth-standard-header {
    margin: 0 0 34px;
    padding-right: 30px;
}

.ty-auth-standard-header h1 {
    color: #ffffff;
}

.ty-auth-standard-header p,
.ty-auth-standard-card .ty-auth-divider span,
.ty-auth-standard-card .ty-auth-register,
.ty-auth-standard-card .ty-auth-benefits span,
.ty-auth-standard-card .ty-social {
    color: #ffffff;
}

.ty-auth-standard-card .ty-social small {
    color: #d2d2d2;
}

.ty-auth-standard-card .ty-auth-register {
    margin: 38px 0 30px;
}

.ty-auth-standard-benefits {
    margin-top: 0;
    padding-top: 24px;
    border-top: 1px solid #303438;
}

.ty-auth-standard-benefits div {
    min-width: 0;
}

.ty-auth-standard-benefits span {
    font-size: 11px;
    white-space: nowrap;
}

/* El login siempre conserva los campos oscuros, incluso con autofill. */
.ty-auth-modal-login-standard .ty-auth-input-wrap,
.ty-auth-modal-login-standard .ty-auth-input-wrap input,
.ty-auth-modal-login-standard .ty-auth-input-wrap input:focus,
.ty-auth-modal-login-standard .ty-auth-input-wrap input:active {
    background-color: #17191b !important;
    color: #ffffff !important;
}

.ty-auth-modal-login-standard .ty-auth-input-wrap input {
    border-radius: 0 14px 14px 0;
}

.ty-auth-modal-login-standard .ty-auth-input-wrap input:-webkit-autofill,
.ty-auth-modal-login-standard .ty-auth-input-wrap input:-webkit-autofill:hover,
.ty-auth-modal-login-standard .ty-auth-input-wrap input:-webkit-autofill:focus,
.ty-auth-modal-login-standard .ty-auth-input-wrap input:-webkit-autofill:active {
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffffff !important;
    -webkit-box-shadow: 0 0 0 1000px #17191b inset !important;
    box-shadow: 0 0 0 1000px #17191b inset !important;
}

@media (max-width: 900px) {
    .ty-auth-modal-backdrop {
        padding: 12px;
    }

    .ty-auth-modal-login-standard {
        width: min(680px, calc(100vw - 24px));
        max-height: calc(100dvh - 24px);
    }

    .ty-auth-standard-shell {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .ty-auth-standard-visual {
        display: none;
    }

    .ty-auth-standard-card {
        max-height: calc(100dvh - 24px);
        padding: 58px 42px 34px;
    }
}

@media (max-width: 620px) {
    .ty-auth-modal-backdrop {
        padding: 0;
        align-items: end;
    }

    .ty-auth-modal-login-standard {
        width: 100%;
        max-height: 96dvh;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        border-radius: 26px 26px 0 0;
    }

    .ty-auth-standard-card {
        max-height: 96dvh;
        padding: 56px 22px 26px;
    }

    .ty-auth-standard-header h1 {
        font-size: 28px;
    }

    .ty-auth-standard-benefits {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}


/* =========================================================
   REGISTRO - CAMPAÑA NEGOCIOS PIONEROS
   La campaña reutiliza el formulario MultiRoleRegister actual.
   ========================================================= */
.ty-pioneer-register-notice{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:14px 18px;border:1px solid rgba(245,181,46,.48);border-radius:14px;background:linear-gradient(90deg,rgba(245,181,46,.14),rgba(10,31,58,.48));box-shadow:0 0 22px rgba(245,181,46,.08);color:#fff}
.ty-pioneer-register-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#ffd85b,#f5b52e);font-size:21px;box-shadow:0 5px 18px rgba(245,181,46,.22)}
.ty-pioneer-register-notice>div{min-width:0;flex:1}
.ty-pioneer-register-notice strong{display:block;margin-bottom:3px;color:#f7bd31;font-size:15px;font-weight:800}
.ty-pioneer-register-notice p{margin:0;color:#d7d9dc;font-size:12px;line-height:1.45}
.ty-pioneer-register-badge{flex:0 0 auto;padding:6px 11px;border:1px solid rgba(245,181,46,.5);border-radius:999px;background:rgba(245,181,46,.1);color:#ffc83d;font-size:10px;font-weight:900;letter-spacing:.08em}
@media(max-width:700px){.ty-pioneer-register-notice{align-items:flex-start;padding:12px 14px}.ty-pioneer-register-icon{flex-basis:36px;width:36px;height:36px;font-size:18px}.ty-pioneer-register-badge{display:none}.ty-pioneer-register-notice strong{font-size:14px}.ty-pioneer-register-notice p{font-size:11px}}


/* =========================================================
   LOGO DEL LOGIN CONFIGURADO DESDE SUPER ADMIN
   ========================================================= */
.ty-auth-configured-logo{display:block;max-width:260px;max-height:92px;width:auto;height:auto;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 8px rgba(0,0,0,.35))}
@media (max-width:768px){.ty-auth-configured-logo{max-width:210px;max-height:72px}}

/* Política de privacidad visible en el Login estándar. */
.ty-auth-privacy-link {
    text-align: center;
    margin: -18px 0 20px;
}

.ty-auth-privacy-link .ty-auth-link-button {
    color: #e9ac35;
    font-size: 13px;
    text-decoration: underline;
    text-underline-offset: 3px;
}
