.f360s-portal{
    --f360s-navy:#081C31;
    --f360s-navy-soft:#0C2438;
    --f360s-navy-line:#17405C;
    --f360s-green:#07A037;
    --f360s-green-dark:#05812C;
    --f360s-text-muted:#9AB0C4;
    background:var(--f360s-navy);
    padding:48px 20px;
    font-family:inherit;
}
.f360s-portal *{box-sizing:border-box}
.f360s-portal-inner{max-width:560px;margin:0 auto}
.f360s-hidden{display:none !important}

.f360s-logo-plate{
    display:inline-block;background:#fff;border-radius:14px;
    padding:12px 20px;margin-bottom:18px;
}
.f360s-logo-plate img{display:block;max-width:200px;height:auto}

.f360s-login{text-align:center}
.f360s-titulo{color:#fff;font-size:26px;font-weight:800;margin:0 0 8px;letter-spacing:-.4px}
.f360s-subtitulo{color:var(--f360s-text-muted);font-size:15px;line-height:1.6;margin:0 0 24px}

.f360s-form-codigo{max-width:280px;margin:0 auto}
.f360s-input-codigo{
    width:100%;text-align:center;font-size:28px;letter-spacing:10px;font-weight:700;
    padding:14px 10px;border-radius:10px;border:1px solid var(--f360s-navy-line);
    background:var(--f360s-navy-soft);color:#fff;margin-bottom:14px;
}
.f360s-input-codigo::placeholder{color:#4C6478;letter-spacing:4px;font-size:18px}
.f360s-input-codigo:focus{outline:none;border-color:var(--f360s-green)}

.f360s-btn{
    display:inline-block;background:var(--f360s-green);color:#fff;border:none;
    font-size:15px;font-weight:700;padding:13px 22px;border-radius:10px;cursor:pointer;
    text-decoration:none;text-align:center;transition:background .15s ease;
}
.f360s-btn:hover{background:var(--f360s-green-dark);color:#fff}
.f360s-btn-block{width:100%}
.f360s-btn-sm{padding:8px 14px;font-size:13px}
.f360s-btn[disabled]{opacity:.6;cursor:default}

.f360s-form-msg{min-height:18px;font-size:13px;margin:8px 0 0}
.f360s-form-msg.is-error{color:#FF8A8A}
.f360s-form-msg.is-ok{color:var(--f360s-green)}

/* ---------- Resultado ---------- */
.f360s-resultado{margin-top:28px}
.f360s-saludo{text-align:center;margin-bottom:18px}
.f360s-saludo-hola{color:#fff;font-size:20px;margin:0 0 4px}
.f360s-saludo-sub{color:var(--f360s-text-muted);font-size:14px;margin:0}

.f360s-asesor-banner{
    display:flex;align-items:center;gap:10px;flex-wrap:wrap;
    background:var(--f360s-navy-soft);border:1px solid var(--f360s-navy-line);
    border-radius:12px;padding:14px 16px;margin-bottom:24px;
}
.f360s-asesor-icono{font-size:22px}
.f360s-asesor-texto{flex:1;min-width:160px;display:flex;flex-direction:column;gap:2px;color:#fff;font-size:13.5px}
.f360s-asesor-texto span{color:var(--f360s-text-muted)}
.f360s-asesor-wa{
    background:var(--f360s-green);color:#fff;font-size:13px;font-weight:700;
    padding:9px 14px;border-radius:8px;text-decoration:none;white-space:nowrap;
}
.f360s-asesor-wa:hover{background:var(--f360s-green-dark);color:#fff}

.f360s-timeline{display:flex;flex-direction:column;gap:0}
.f360s-step{display:flex;gap:14px;position:relative;padding-bottom:26px}
.f360s-step:last-child{padding-bottom:0}
.f360s-step:not(:last-child)::before{
    content:"";position:absolute;left:14px;top:32px;bottom:0;width:2px;
    background:var(--f360s-navy-line);
}
.f360s-step-marker{flex:0 0 auto}
.f360s-icon{
    width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    font-size:13px;font-weight:800;
}
.f360s-icon--done{background:var(--f360s-green);color:#fff}
.f360s-icon--current{background:#fff;color:var(--f360s-navy);box-shadow:0 0 0 4px rgba(7,160,55,.25)}
.f360s-icon--pending{background:var(--f360s-navy-soft);color:var(--f360s-text-muted);border:1px solid var(--f360s-navy-line)}

.f360s-step-body{flex:1;padding-top:3px}
.f360s-step-body h4{color:#fff;font-size:15.5px;margin:0 0 6px}
.f360s-step-body p{color:var(--f360s-text-muted);font-size:13.5px;line-height:1.6;margin:0 0 8px}
.f360s-step--pending .f360s-step-body h4{color:#6E8AA3}
.f360s-step--pending .f360s-step-body p{color:#55697C}

.f360s-form-direccion{display:flex;flex-direction:column;gap:8px;margin-top:10px;max-width:360px}
.f360s-form-direccion input{
    padding:10px 12px;border-radius:8px;border:1px solid var(--f360s-navy-line);
    background:var(--f360s-navy-soft);color:#fff;font-size:13.5px;
}
.f360s-form-direccion input::placeholder{color:#5A7186}
.f360s-form-direccion .f360s-btn{align-self:flex-start;margin-top:2px}

.f360s-doc-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.f360s-doc-item{
    background:var(--f360s-navy-soft);border:1px solid var(--f360s-navy-line);
    border-radius:10px;padding:12px 14px;
}
.f360s-doc-info{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}
.f360s-doc-nombre{color:#fff;font-size:13.5px;font-weight:700}
.f360s-doc-instrucciones{color:var(--f360s-text-muted);font-size:12.5px}
.f360s-doc-estado{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-top:2px}
.f360s-doc--pendiente .f360s-doc-estado{color:#E0B15A}
.f360s-doc--enviado .f360s-doc-estado{color:#5AA9E0}
.f360s-doc--aprobado .f360s-doc-estado{color:var(--f360s-green)}
.f360s-doc--rechazado .f360s-doc-estado{color:#FF8A8A}
.f360s-doc-archivo{color:var(--f360s-text-muted);font-size:12.5px}

.f360s-form-doc{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.f360s-form-doc input[type=file]{color:var(--f360s-text-muted);font-size:12px;max-width:180px}

.f360s-completado{
    margin-top:22px;text-align:center;color:var(--f360s-green);font-weight:700;
    background:rgba(7,160,55,.12);border:1px solid rgba(7,160,55,.4);
    border-radius:10px;padding:14px;
}

.f360s-link-volver{
    display:block;margin:22px auto 0;background:none;border:none;color:var(--f360s-text-muted);
    font-size:12.5px;text-decoration:underline;cursor:pointer;
}
.f360s-link-volver:hover{color:#fff}
