:root{--navy:#12315f;--navy2:#0b2347;--red:#a3202e;--gold:#c9a24a;--bg:#f3f5f9;--card:#fff;--line:#cfd6e2;--mut:#55627a;--tx:#14213a;--f:'Libre Franklin',system-ui,sans-serif;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box;margin:0;padding:0}
body{font:17px/1.6 var(--f);color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.w{max-width:1000px;margin:0 auto;padding:0 20px}
h1{font-size:clamp(1.9rem,5vw,2.9rem);font-weight:800;line-height:1.1;color:var(--navy2);letter-spacing:-.02em;text-wrap:balance}
h2{font-size:1.5rem;font-weight:800;color:var(--navy2);line-height:1.2}
h3{font-size:1.1rem;font-weight:600;color:var(--navy2)}
.lead{color:var(--mut);max-width:60ch;margin:10px 0 26px}
.hd{background:var(--navy2);color:#fff;border-bottom:3px solid var(--red);position:sticky;top:env(safe-area-inset-top,0px);z-index:30}
.hd .w{display:flex;justify-content:space-between;align-items:center;height:60px;gap:12px}
.hd a{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.08em}
.dm{background:var(--gold);color:var(--navy2);font-size:.75rem;font-weight:600;padding:4px 10px}
main{padding:36px 0 70px}
.btn{display:inline-block;padding:13px 24px;border:2px solid transparent;font:600 1rem var(--f);text-decoration:none;cursor:pointer;transition:transform .2s}
.btn:hover{transform:translateY(-2px)}.red{background:var(--red);color:#fff}.navy{background:var(--navy);color:#fff}.gh{border-color:var(--navy);color:var(--navy);background:none}
.card{background:var(--card);border:1px solid var(--line);box-shadow:8px 8px 0 rgba(18,49,95,.09);padding:26px}
.fg{display:grid;grid-template-columns:1.35fr 1fr;gap:26px;align-items:start}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.fd{display:grid;gap:5px;margin-bottom:14px;align-content:start}.fd.f{grid-column:1/-1}
label{font-weight:600;font-size:.92rem}
input,select,textarea{font:inherit;padding:12px 14px;border:2px solid var(--line);background:#fff;color:var(--tx);width:100%;border-radius:0}
input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:0}
textarea{resize:vertical;min-height:84px}
.er{color:var(--red);font-size:.84rem;min-height:1.2em}
.ck{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--mut);margin:4px 0 16px}.ck input{width:20px;height:20px;margin-top:3px;accent-color:var(--navy);flex:none}
.side{border-top:5px solid var(--gold)}.side p{color:var(--mut);margin:6px 0 14px;font-size:.95rem}
.nt{font-size:.82rem;color:var(--mut);margin-top:14px}
@media(max-width:820px){.fg{grid-template-columns:1fr}}@media(max-width:520px){.g2{grid-template-columns:1fr}}
/* seguimiento */
.top{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0 22px}
.chip{background:var(--card);border:1px solid var(--line);padding:5px 12px;font-size:.88rem;font-weight:600;color:var(--navy)}
.chip.c{background:var(--navy);color:var(--gold);border-color:var(--navy);letter-spacing:.06em}
.save{background:#fff8e6;border:1px solid var(--gold);border-left:6px solid var(--gold);padding:12px 16px;font-size:.92rem;margin-bottom:22px}
.pp{background:#fff repeating-radial-gradient(circle at 15% 0,transparent 0 11px,rgba(18,49,95,.05) 11px 12px);border:3px solid var(--navy);box-shadow:10px 10px 0 rgba(18,49,95,.12);position:relative}
.pp>b{display:block;background:var(--navy);color:var(--gold);font-size:.8rem;letter-spacing:.14em;padding:9px 18px}
.sg{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:18px}
.sl{aspect-ratio:1;display:grid;place-items:center;position:relative}
.sm{width:88%;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;line-height:1.15;padding:6px}
.sm b{font-size:clamp(.5rem,1.9vw,.74rem);font-weight:800;letter-spacing:.04em}.sm small{font-size:clamp(.5rem,1.6vw,.66rem);font-weight:600;opacity:.85}
.sm.td{border:3px dashed var(--line);color:#a6b1c5;font-size:1.4rem;font-weight:800}
.sm.dn{border:4px double var(--c);color:var(--c);transform:rotate(var(--r));background:rgba(255,255,255,.55)}
.sm.cu{border:3px dashed var(--gold);color:var(--navy);animation:pu 1.8s ease-in-out infinite}
.sm.nw{animation:th .7s cubic-bezier(.3,1.5,.5,1)}
@keyframes pu{50%{box-shadow:0 0 0 7px rgba(201,162,74,.28)}}
@keyframes th{from{opacity:0;transform:rotate(var(--r)) scale(2.6)}}
.sl.nt2{display:grid;place-items:center;text-align:center;font-size:.76rem;color:var(--mut);padding:6px;border:2px dashed var(--line);line-height:1.35;aspect-ratio:1}
.now{margin-top:26px;display:grid;grid-template-columns:1.3fr 1fr;gap:22px}
.now .card h2{margin:6px 0 8px}.lab{font-size:.78rem;font-weight:800;letter-spacing:.12em;color:var(--red)}
.mine{border-left:5px solid var(--navy);background:#eef2f9;padding:12px 16px;margin-top:14px}.mine small{display:block;color:var(--mut)}
.tl{list-style:none;margin-top:10px}.tl li{padding:10px 0 10px 22px;border-left:3px solid var(--line);position:relative;font-size:.94rem}
.tl li::before{content:"";position:absolute;left:-8px;top:15px;width:13px;height:13px;background:var(--navy);border:3px solid #fff;border-radius:50%}
.tl li:first-child::before{background:var(--red)}.tl small{display:block;color:var(--mut);font-size:.8rem}
.act{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
@media(max-width:760px){.now{grid-template-columns:1fr}.sg{grid-template-columns:repeat(2,1fr)}}
.tt{position:fixed;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));transform:translate(-50%,30px);background:var(--navy2);color:#fff;border-left:5px solid var(--gold);padding:13px 20px;opacity:0;pointer-events:none;transition:.35s;z-index:60;max-width:92vw}
.tt.on{opacity:1;transform:translate(-50%,0)}
[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.sm.cu,.sm.nw{animation:none}.btn,.tt{transition:none}}
/* ===== añadido: versión con backend ===== */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.k0,.k2,.k4,.k6{--c:var(--navy)}.k1,.k3,.k5{--c:var(--red)}
.k0{--r:-7deg}.k1{--r:5deg}.k2{--r:-3deg}.k3{--r:7deg}.k4{--r:-6deg}.k5{--r:3deg}.k6{--r:-4deg}
.mt{margin-top:14px}.mt2{margin-top:26px}
.ok{background:#eef7f0;border:1px solid #9bc9a8;border-left:6px solid #2f7d4a;padding:14px 18px;margin-bottom:18px}
.bad{background:#fdf0f0;border:1px solid #e3a5a5;border-left:6px solid var(--red);padding:12px 16px;margin:12px 0;font-size:.95rem}
.cred{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}
.cred div{background:#fff;border:2px solid var(--navy);padding:14px;text-align:center}
.cred small{display:block;color:var(--mut);font-size:.78rem;letter-spacing:.1em}
.cred b{font-size:1.35rem;letter-spacing:.12em;color:var(--navy2);overflow-wrap:anywhere}
@media(max-width:520px){.cred{grid-template-columns:1fr}}
.steps2{list-style:none;margin:10px 0 0}.steps2 li{padding:8px 0 8px 28px;border-top:1px solid var(--line);position:relative;font-size:.95rem}
.steps2 li::before{content:"□";position:absolute;left:2px;color:var(--navy);font-weight:800}
/* panel del asesor */
.ad{display:grid;grid-template-columns:320px 1fr;gap:22px;align-items:start}
.bs{display:grid;grid-template-columns:1fr 150px;gap:10px;margin-bottom:12px}.bs .fd{margin:0}
.cl{list-style:none}.cl button{width:100%;text-align:left;font:inherit;background:#fff;border:2px solid var(--line);padding:12px 14px;margin-bottom:8px;cursor:pointer}
.cl button[aria-current=true]{border-color:var(--navy);background:#eef2f9}.cl small{display:block;color:var(--mut)}
.pill{display:inline-block;background:var(--navy);color:var(--gold);font-size:.72rem;font-weight:600;padding:2px 8px;margin-top:4px}
.pill.n{background:var(--red);color:#fff}
.top2{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.danger{border-color:var(--red);color:var(--red);background:none}.danger:hover{background:var(--red);color:#fff}
.dz{border:2px solid var(--red);padding:16px;margin-top:18px;background:#fff8f8}
@media(max-width:860px){.ad{grid-template-columns:1fr}.bs{grid-template-columns:1fr}}
.hd a.dm{color:var(--navy2);letter-spacing:0;font-weight:600;font-size:.8rem}
.cw{max-width:420px}
/* coherencia con el nuevo diseño: azul marino, blanco y dorado suave */
:root{--red:#a97c2d;--err:#b3261e}
.red{background:linear-gradient(135deg,#e2c98a,#c8a45a);color:#0b2347}.red:hover{background:linear-gradient(135deg,#efd9a0,#d3b06a)}
.btn{border-radius:999px}.card{border-radius:14px}.pp{border-radius:14px;overflow:hidden}.dm{border-radius:999px}
.er{color:var(--err)}.bad{border-color:#e3a5a5;border-left-color:var(--err)}.danger{border-color:var(--err);color:var(--err)}.danger:hover{background:var(--err);color:#fff}.dz{border-color:var(--err);border-radius:12px}.pill.n{background:var(--err)}
.hd{border-bottom-color:var(--gold)}
