.cib-ic-popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}.cib-ic-popup-box{width:100%;max-width:760px;background:#00c853;border-radius:8px;overflow:hidden;font-family:Arial,sans-serif;text-align:center;box-shadow:0 12px 35px rgba(0,0,0,.35);animation:cibIcPopupEntrada .25s ease-out;position:relative}.cib-ic-popup-header{background:#2878aa;color:#fff;padding:14px 20px 20px}.cib-ic-popup-header h2{margin:0 0 8px;font-size:25px;font-weight:500;color:#fff}.cib-ic-popup-header p{margin:0;font-size:14px;color:#fff}.cib-ic-popup-header strong{font-weight:700}.cib-ic-popup-body{padding:18px 28px 26px;color:#fff}.cib-ic-popup-body h3{margin:0 0 14px;color:#fff;font-size:23px;line-height:1.25;font-weight:500}.cib-ic-popup-hours{margin:0 0 20px;font-size:16px;line-height:1.4;color:#fff;font-weight:700}.cib-ic-popup-alert{background:#ffc107;color:#000;padding:15px 18px;border-radius:8px;font-size:15px;line-height:1.4;margin-bottom:18px}.cib-ic-popup-btn{display:inline-block;background:#e53935;color:#fff!important;text-decoration:none;padding:12px 28px;border-radius:30px;font-size:18px;font-weight:700;transition:all .2s ease}.cib-ic-popup-btn:hover{background:#c62828;transform:translateY(-1px)}.cib-ic-popup-id{display:block;margin-top:14px;font-size:11px;color:rgba(255,255,255,.82)}.cib-ic-popup-close{position:absolute;top:10px;right:12px;background:#fff;color:#333;border:none;border-radius:50%;width:32px;height:32px;font-size:22px;cursor:pointer;line-height:28px;z-index:2}.cib-ic-popup-open{overflow:hidden}@keyframes cibIcPopupEntrada{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media(max-width:600px){.cib-ic-popup-box{max-width:95%}.cib-ic-popup-header h2{font-size:21px}.cib-ic-popup-body{padding:18px 18px 24px}.cib-ic-popup-body h3{font-size:20px}.cib-ic-popup-alert{font-size:14px}.cib-ic-popup-btn{font-size:16px;padding:12px 20px}}

/* Compatibilidad de migración: mientras queden popups inline antiguos en páginas,
   se ocultan cuando la integración CIB IC está activa para evitar dos modales. */
#popupPostulacion.popup-postulacion-overlay {
    display: none !important;
}


/* Pantalla de espera mientras la API/BBDD confirma la postulación. */
.cib-ic-loader-overlay{
    position:fixed;
    inset:0;
    z-index:1000000;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
    background:rgba(0,0,0,.62);
    backdrop-filter:blur(2px);
}
.cib-ic-loader-box{
    width:100%;
    max-width:480px;
    padding:34px 28px 30px;
    border-radius:14px;
    background:#fff;
    font-family:Arial,sans-serif;
    text-align:center;
    box-shadow:0 16px 45px rgba(0,0,0,.3);
    animation:cibIcLoaderEntrada .2s ease-out;
}
.cib-ic-loader-spinner{
    width:54px;
    height:54px;
    margin:0 auto 20px;
    border:6px solid #e7eef3;
    border-top-color:#2878aa;
    border-radius:50%;
    animation:cibIcLoaderSpin .85s linear infinite;
}
.cib-ic-loader-box h3{
    margin:0 0 10px;
    color:#2878aa;
    font-size:24px;
    line-height:1.2;
    font-weight:700;
}
.cib-ic-loader-box p{
    margin:0 auto;
    max-width:390px;
    color:#333;
    font-size:16px;
    line-height:1.5;
}
.cib-ic-loader-close-action{
    margin-top:20px;
    padding:11px 24px;
    border:0;
    border-radius:28px;
    background:#2878aa;
    color:#fff;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
}
.cib-ic-loader-delayed .cib-ic-loader-spinner{
    animation-duration:1.3s;
}
.cib-ic-loader-open{
    overflow:hidden;
}
@keyframes cibIcLoaderSpin{to{transform:rotate(360deg)}}
@keyframes cibIcLoaderEntrada{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:600px){
    .cib-ic-loader-box{padding:30px 20px 26px}
    .cib-ic-loader-box h3{font-size:21px}
    .cib-ic-loader-box p{font-size:15px}
}
