/* Formulario de apertura · estilos del artefacto con prefijo .ap (generado por _tools/apertura_port.py)
   y, al final, la capa de WIN (_tools/src/apertura-skin.css). */
.ap{--bg:#f4f3f0; --surface:#ffffff; --ink:#111111; --muted:#6b6b6b; --line:#e3e1dc; --field:#f8f7f5;
  --blue:#2f6fdc; --blue-2:#4a8ef0; --blue-soft:#eaf1fd; --cta:#111111; --cta-ink:#ffffff;
  --night:#111111; --night-2:#1c1c1c; --night-ink:#f2f2f2; --night-muted:#a3a3a3;
  --ok:#1f7a4f; --ok-soft:#e6f3ec; --warn-bg:#f1efe9; --warn-fg:#55524a; --err:#b42318;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif; --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --r:16px;}
.ap,.ap *{box-sizing:border-box}
.ap{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
.ap h1,.ap h2,.ap h3{font-family:var(--sans);font-weight:500;margin:0;text-wrap:balance;letter-spacing:-.025em}
.ap em.s,.ap .s{font:inherit;letter-spacing:inherit}
.ap .eyebrow,.ap .k,.ap .mlabel{font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.ap .banner{background:var(--warn-bg);color:var(--warn-fg);font-size:12px;letter-spacing:.04em;text-align:center;padding-block:6px;border-bottom:1px solid var(--line);
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.ap .top{background:var(--night);color:var(--night-ink)}
.ap .top .in{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1160px;margin:0 auto;padding-block:16px;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.ap .logo{display:flex;align-items:center;gap:10px;font-weight:600;letter-spacing:.02em}
.ap .logo svg{flex:none}
.ap .logo small{display:block;font-size:9px;letter-spacing:.22em;color:var(--night-muted);font-weight:500}
.ap .top .help{font-size:13px;color:var(--night-muted);display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.ap .top .secure{display:inline-flex;align-items:center;gap:6px;border:1px solid #333;border-radius:999px;padding:5px 12px;color:var(--night-ink);font-size:12px}
.ap .shell{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:290px minmax(0,1fr);gap:32px;align-items:start;padding-block:32px 64px;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.ap .shell.solo{grid-template-columns:minmax(0,1fr)}
.ap .guide{position:sticky;top:calc(20px + env(safe-area-inset-top,0px));display:flex;flex-direction:column;gap:16px}
.ap .guide .box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.ap .ring{display:flex;align-items:center;gap:16px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.ap .ring svg{flex:none}
.ap .ring b{font-size:30px;font-weight:500;letter-spacing:-.03em;display:block;font-variant-numeric:tabular-nums;line-height:1.1}
.ap .ring small{color:var(--muted);font-size:13px;display:block}
.ap .steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ap .steps button{width:100%;display:grid;grid-template-columns:24px 1fr auto;gap:12px;align-items:center;text-align:left;background:none;border:0;border-radius:10px;padding:9px 8px;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
.ap .steps button:hover:not(:disabled){background:var(--field)}
.ap .steps .cur button{background:var(--field);font-weight:600}
.ap .steps i{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:600;color:var(--muted)}
.ap .steps .done i{background:var(--ink);border-color:var(--ink);color:var(--surface)}
.ap .steps .cur i{border-color:var(--blue);color:var(--blue)}
.ap .steps small{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.ap .guide .save{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:8px}
.ap .guide .save div{display:flex;gap:8px;align-items:flex-start}
.ap .guide .save svg{flex:none;margin-top:2px}
.ap .mbar{display:none}
.ap .card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:40px}
.ap .card>h1{font-size:34px;line-height:1.12;margin-top:8px}
.ap .lead{color:var(--muted);margin:12px 0 0;max-width:60ch;font-size:16px}
.ap .block{margin-top:32px;padding-top:28px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:18px}
.ap .block>h2{font-size:18px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ap .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.ap .grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ap .grid.g4{grid-template-columns:2fr 1fr 1fr 1fr}
.ap .full{grid-column:1/-1}
.ap .f{display:flex;flex-direction:column;gap:7px;min-width:0}
.ap .f>label{font-size:13px;font-weight:600;letter-spacing:-.005em}
.ap .f input,.ap .f select{width:100%;min-width:0;font:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.ap .f input::placeholder{color:#a3a3a3}
.ap .f input:focus,.ap .f select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}
.ap .f input[readonly]{background:var(--field);border-color:var(--line);color:var(--ink)}
.ap .f .hint{font-size:13px;color:var(--muted)}
.ap .f .hint.good{color:var(--ok);font-weight:600}
.ap .f .msg{font-size:13px;color:var(--err)}
.ap .f .msg:empty{display:none}
.ap .f.bad input,.ap .f.bad select{border-color:var(--err)}
.ap .req{color:var(--err);font-weight:500}
.ap .opt{color:var(--muted);font-weight:400;font-size:12px}
.ap .tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 10px;border:1px solid var(--ok);color:var(--ok)}
.ap .money{position:relative}
.ap .money span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted)}
.ap .money input{padding-left:30px;font-variant-numeric:tabular-nums}
.ap .choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ap .choices.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ap .choice{text-align:left;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s}
.ap .choice:hover{border-color:var(--muted)}
.ap .choice b{font-weight:500;font-size:15px;display:flex;justify-content:space-between;gap:10px}
.ap .mck b::after{display:none!important}
.ap .choice b::after{content:"";width:16px;height:16px;border-radius:50%;border:1.5px solid var(--line);flex:none;margin-top:2px}
.ap .choice small{color:var(--muted);font-size:13px;line-height:1.45}
.ap .choice[aria-pressed="true"]{border-color:var(--ink);background:var(--field);box-shadow:inset 0 0 0 1px var(--ink)}
.ap .choice[aria-pressed="true"] b::after{border-color:var(--blue);background:var(--blue);box-shadow:inset 0 0 0 3px var(--surface)}
.ap .qlabel{font-weight:600;font-size:15px}
.ap .qlabel small{display:block;font-weight:400;color:var(--muted);font-size:13px;margin-top:2px}
.ap .yn{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.ap .yn:last-child{border-bottom:0}
.ap .yn p{margin:0;font-weight:500;font-size:15px}
.ap .yn p small{display:block;font-weight:400;color:var(--muted);font-size:13px}
.ap .seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:var(--surface)}
.ap .seg button{border:0;background:none;font:inherit;font-size:14px;font-weight:500;color:var(--muted);padding:6px 18px;border-radius:999px;cursor:pointer}
.ap .seg button[aria-pressed="true"]{background:var(--cta);color:var(--cta-ink)}
.ap .note{background:var(--field);border:1px solid var(--line);border-radius:12px;padding:16px 18px;font-size:14px}
.ap .note p{margin:0;max-width:72ch}
.ap .note b{font-weight:600}
.ap .pnex{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:12px;font-variant-numeric:tabular-nums;align-items:center}
.ap .pnex span{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:13px}
.ap .pnex em{font-style:normal;color:var(--muted)}
.ap .found{display:flex;gap:16px;align-items:center;border:1px solid var(--line);background:var(--field);border-radius:12px;padding:18px;flex-wrap:wrap}
.ap .found .av{width:52px;height:52px;border-radius:50%;background:var(--night);display:grid;place-items:center;font-weight:500;font-size:17px;color:var(--night-ink);flex:none}
.ap .found div{flex:1;min-width:180px}
.ap .found b{font-weight:600;font-size:16px}
.ap .found small{display:block;color:var(--muted)}
.ap .bankchip{display:flex;align-items:center;gap:10px;font-size:14px;padding:10px 14px;border-radius:10px;background:var(--ok-soft);color:var(--ink)}
.ap .bankchip i{font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--ok);display:grid;place-items:center;font-weight:700;color:var(--surface);font-size:12px}
.ap .actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:36px;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap}
.ap .btn{background:var(--cta);color:var(--cta-ink);border:1px solid var(--cta);border-radius:999px;padding:13px 26px;font:500 15px var(--sans);cursor:pointer;letter-spacing:-.005em}
.ap .btn:hover:not(:disabled){opacity:.88}
.ap .btn:disabled{opacity:.35;cursor:not-allowed}
.ap .btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.ap .link{background:none;border:0;color:var(--ink);font:inherit;font-size:14px;font-weight:500;cursor:pointer;padding:4px 0;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.ap .fill{font-size:13px;color:var(--muted)}
.ap .link.fill{color:var(--muted)}
.ap button:focus-visible,.ap .choice:focus-visible,.ap label:focus-within{outline:2px solid var(--blue);outline-offset:3px}
.ap .hero{background:var(--night);color:var(--night-ink);border-radius:var(--r);padding:56px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:40px;position:relative;overflow:hidden}
.ap .hero .eyebrow{color:var(--night-muted)}
.ap .hero h1{font-size:52px;line-height:1.02;letter-spacing:-.04em;margin-top:14px}
.ap .hero h1 .s{color:#fff}
.ap .hero p{color:var(--night-muted);margin:18px 0 0;max-width:48ch;font-size:16px}
.ap .hero .cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;align-items:center}
.ap .hero .btn{background:#fff;color:#111;border-color:#fff}
.ap .hero .cta span{font-size:13px;color:var(--night-muted)}
.ap .hero ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-self:end;position:relative;z-index:1}
.ap .hero li{display:flex;gap:14px;align-items:center;padding:14px 0;border-top:1px solid #2a2a2a;font-size:15px}
.ap .hero li:last-child{border-bottom:1px solid #2a2a2a}
.ap .hero li span{font-size:12px;color:var(--night-muted);width:22px;font-variant-numeric:tabular-nums}
.ap .hero .lines{position:absolute;inset:0;pointer-events:none;opacity:.55}
.ap .hero>div{position:relative;z-index:1}
.ap .whyhead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;margin-top:56px;align-items:end}
.ap .whyhead h2{font-size:34px;line-height:1.1}
.ap .whyhead p{margin:0;color:var(--muted)}
.ap .why{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;margin-top:28px;border-top:1px solid var(--ink)}
.ap .why article{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px}
.ap .why h3{font-size:17px;margin-bottom:6px}
.ap .why p{margin:0;color:var(--muted);font-size:14px}
.ap .why .k{padding-top:3px;color:var(--blue)}
.ap .reg{margin-top:28px;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px}
.ap .reg b{color:var(--ink);font-weight:600}
.ap .ups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ap .up{border:1px dashed var(--line);border-radius:12px;padding:16px;display:flex;gap:14px;align-items:center;background:var(--surface)}
.ap .up.ok{border-style:solid;border-color:var(--ok);background:var(--ok-soft)}
.ap .up .ic{width:44px;height:44px;border-radius:10px;background:var(--field);border:1px solid var(--line);display:grid;place-items:center;flex:none;font-size:18px}
.ap .up.ok .ic{background:var(--ok);border-color:var(--ok);color:var(--surface);font-weight:700}
.ap .up div{flex:1;min-width:0}
.ap .up b{display:block;font-size:15px;font-weight:500}
.ap .up small{color:var(--muted);font-size:13px;display:block}
.ap .up label{cursor:pointer;color:var(--ink);font-weight:500;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.ap .up input{position:absolute;opacity:0;width:1px;height:1px}
.ap .resp{display:flex;flex-direction:column;gap:8px}
.ap .resp .item{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,240px) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--surface)}
.ap .resp .item i{font-style:normal;width:36px;height:36px;border-radius:8px;background:var(--field);border:1px solid var(--line);display:grid;place-items:center;font-size:10px;font-weight:700;letter-spacing:.04em}
.ap .resp .item span{overflow-wrap:anywhere;font-size:14px}
.ap .resp .item select{font:inherit;font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:0;width:100%}
.ap .resp .item button{background:none;border:0;color:var(--muted);font-size:20px;cursor:pointer;line-height:1;padding:4px 8px}
.ap .drop{border:1px dashed var(--line);border-radius:12px;padding:18px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:var(--surface)}
.ap .drop.need{border-color:var(--err)}
.ap .drop .ic{width:44px;height:44px;border-radius:10px;background:var(--field);border:1px solid var(--line);display:grid;place-items:center;font-size:18px;flex:none}
.ap .drop div{flex:1;min-width:200px}
.ap .drop b{font-weight:500}
.ap .drop label{cursor:pointer;color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:3px}
.ap .drop input{position:absolute;opacity:0;width:1px;height:1px}
.ap .sugg{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ap .sugg span{font-size:12px;border-radius:999px;padding:4px 11px;background:var(--surface);border:1px solid var(--line)}
.ap .sugg span.hi{border-color:var(--ink);color:var(--ink);font-weight:600}
.ap .trust{margin-top:28px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:32px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px 32px}
.ap .trust .seal{display:flex;gap:14px;align-items:center;padding-right:32px;border-right:1px solid var(--line);color:var(--ink)}
.ap .trust .seal b{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;color:var(--muted)}
.ap .trust .seal span{font-size:16px;font-weight:600}
.ap .trust h2{font-size:20px}
.ap .trust p{margin:8px 0 0;color:var(--muted);max-width:70ch;font-size:14px}
@media (max-width:620px){.ap .trust{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px}
.ap .trust .seal{border-right:0;padding-right:0;border-bottom:1px solid var(--line);padding-bottom:18px}}
.ap .hub{max-width:860px;margin:0 auto;width:100%}
.ap .hub>h1{font-size:30px;text-align:center;margin:10px auto 0;max-width:24ch;line-height:1.15}
.ap .hbar{margin:32px 0 24px}
.ap .hbar .track{height:4px;background:var(--line);border-radius:99px;overflow:hidden}
.ap .hbar .track div{height:100%;background:var(--ok);transition:width .4s}
.ap .hbar .meta{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin-top:10px;font-variant-numeric:tabular-nums}
.ap .hbar .meta span:last-child{color:var(--ink);font-weight:500}
.ap .secs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.ap .sec{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;align-items:start}
.ap .sec.locked .sbody h2,.ap .sec.locked .sic{opacity:.55}
.ap .sic{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink)}
.ap .sic .badge{position:absolute;right:-4px;bottom:-4px;width:20px;height:20px;border-radius:50%;background:var(--ok);color:#fff;display:grid;place-items:center;border:2px solid var(--surface)}
.ap .shead{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;min-height:44px}
.ap .shead h2{font-size:17px;font-weight:600;letter-spacing:-.01em}
.ap .shead p{margin:2px 0 0;color:var(--muted);font-size:14px}
.ap .shead .prog{color:var(--blue);font-weight:500}
.ap .btn.sm{padding:9px 20px;font-size:14px;border-radius:8px}
.ap .btn.ghost.sm{border-color:var(--line)}
.ap .link.add{display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-weight:600}
.ap .row-item{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--field);border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-top:12px;font-size:14px;font-weight:500}
.ap .row-item small{display:block;font-weight:400;color:var(--muted);font-size:12px}
.ap .row-item .icon{background:none;border:0;color:var(--muted);cursor:pointer;padding:6px;border-radius:8px}
.ap .row-item .icon:hover{background:var(--surface);color:var(--ink)}
.ap .titu{margin-top:16px;display:flex;flex-direction:column;gap:10px}
.ap .hfoot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px;flex-wrap:wrap}
.ap .link.danger{color:var(--err);display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-weight:500}
.ap .steps .sub{list-style:none;margin:2px 0 6px 36px;padding:0;border-left:1px solid var(--line)}
.ap .steps .sub button,.ap .steps .cur .sub button{display:block;padding:6px 12px;font-size:13px;color:var(--muted);border-radius:0 8px 8px 0;background:none;font-weight:400}
.ap .steps .sub li.on button{color:var(--ink);font-weight:600;box-shadow:inset 2px 0 0 var(--blue)}
.ap .steps .sub li.sok button::after{content:" ✓";color:var(--ok)}
@media (max-width:620px){.ap .hub>h1{font-size:23px}
.ap .sec{grid-template-columns:minmax(0,1fr);gap:12px;padding:18px}
.ap .shead .btn.sm{width:100%}}
.ap .resume{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--ink);border-radius:var(--r);padding:22px 26px;margin-bottom:16px}
.ap .resume h2{font-size:19px;margin-top:6px}
.ap .resume p{margin:4px 0 0;color:var(--muted);font-size:14px;font-variant-numeric:tabular-nums}
.ap .resume .ra{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.ap .codebox{margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px}
.ap .codebox b{display:block;font-size:24px;font-weight:600;letter-spacing:.12em;margin-top:4px}
.ap .codebox p{margin:4px 0 0;color:var(--muted);font-size:13px;max-width:60ch}
.ap .ritem{display:flex;flex-direction:column}
.ap .ritem .item{border-radius:12px}
.ap .ritem .extp{margin:-6px 0 0;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;padding:16px 16px 14px;background:var(--field);font-size:14px}
.ap .ritem .item:has(+.extp){border-radius:12px 12px 0 0}
.ap .extp.reading{display:flex;gap:10px;align-items:center;color:var(--muted)}
.ap .extp.err{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;color:var(--err)}
.ap .extp .eh{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.ap .extp .eh b{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.ap .extp .dt{font-size:12px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:2px 10px}
.ap .extp p{margin:8px 0 0;max-width:70ch}
.ap .extp dl{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:6px 16px;margin:12px 0 0}
.ap .extp dt{color:var(--muted)}
.ap .extp dd{margin:0;overflow-wrap:anywhere}
.ap .extp dd.num{font-variant-numeric:tabular-nums;font-weight:500}
.ap .ok-b{font-size:11px;font-weight:600;color:var(--ok);margin-left:6px}
.ap .warn-b{font-size:11px;font-weight:600;color:var(--err);margin-left:6px}
.ap .extp .al{margin:12px 0 0;padding:10px 12px 10px 28px;border-radius:8px;background:var(--surface);border:1px solid var(--err);color:var(--err);font-size:13px}
.ap .extp .ef{margin-top:12px;font-size:12px;color:var(--muted)}
.ap .spin.sm{width:16px;height:16px;border-width:2px;flex:none}
@media (max-width:620px){.ap .extp dl{grid-template-columns:minmax(0,1fr)}
.ap .extp dd{margin-bottom:4px}}
.ap .helpfab{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:15;display:inline-flex;align-items:center;gap:8px;background:var(--cta);color:var(--cta-ink);border:0;border-radius:999px;padding:12px 18px;font:500 14px var(--sans);cursor:pointer;box-shadow:0 8px 24px rgb(0 0 0 / .18)}
.ap .helpfab:hover{opacity:.92}
.ap .helppanel{position:fixed;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:16;width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 120px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 16px 40px rgb(0 0 0 / .18);padding:20px;display:flex;flex-direction:column;gap:14px}
.ap .hp-h{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.ap .hp-h b{font-size:16px;font-weight:600;display:block}
.ap .hp-h small{color:var(--muted);font-size:12px}
.ap .hp-x{background:none;border:0;font-size:22px;line-height:1;color:var(--muted);cursor:pointer;padding:2px 6px}
.ap .hp-faq{display:flex;flex-direction:column;gap:6px}
.ap .hp-faq details{border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.ap .hp-faq summary{cursor:pointer;font-size:14px;font-weight:500}
.ap .hp-faq p{margin:8px 0 0;font-size:13px;color:var(--muted)}
.ap .btn.wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;width:100%}
.ap .hp-n{margin:0;font-size:12px;color:var(--muted)}
.ap .sel{user-select:all;color:var(--ink)}
@media (max-width:620px){.ap .helpfab span{display:none}
.ap .helpfab{padding:14px}
.ap .helppanel{right:16px;left:16px;width:auto}}
@media (max-width:960px){.ap .shell{padding-bottom:96px}}
.ap footer.site{background:var(--night);color:var(--night-ink);border:0;max-width:none;margin:0;padding:0;display:block}
.ap footer.site .in{max-width:1160px;margin:0 auto;padding-block:40px 32px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:28px}
.ap footer.site .fco{display:flex;flex-direction:column;gap:14px;max-width:460px}
.ap footer.site b{font-size:16px;font-weight:600;color:#fff}
.ap footer.site ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:14px;color:var(--night-muted)}
.ap footer.site p{margin:0;font-size:14px;color:var(--night-muted)}
.ap footer.site .soc{display:flex;gap:10px}
.ap footer.site .soc span{font-size:12px;border:1px solid #333;border-radius:999px;padding:5px 12px;color:var(--night-ink)}
.ap footer.site .df{width:58px;height:58px;border:1.5px dashed #555;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--night-muted)}
.ap footer.site .df span{font-size:13px;font-weight:600}
.ap footer.site .df small{font-size:7px;letter-spacing:.08em}
.ap footer.site .fnote{border-top:1px solid #2a2a2a;padding-top:16px;font-size:12px;color:var(--night-muted)}
.ap .comp{display:flex;flex-direction:column;gap:8px}
.ap .cbar{display:flex;height:14px;border-radius:99px;overflow:hidden;background:var(--field);border:1px solid var(--line)}
.ap .cbar span{display:block;height:100%}
.ap .cbar .rest{background:repeating-linear-gradient(45deg,var(--field),var(--field) 4px,var(--line) 4px,var(--line) 8px)}
.ap .cleg{display:flex;gap:16px;font-size:13px;color:var(--muted);flex-wrap:wrap}
.ap .cleg b{color:var(--ink)}
.ap .tbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.ap .tbl table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.ap .tbl th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);padding:10px 14px;background:var(--field);border-bottom:1px solid var(--line)}
.ap .tbl td{padding:12px 14px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.ap .tbl tr:last-child td{border-bottom:0}
.ap .tbl .r{text-align:right}
.ap .tbl .icon{background:none;border:0;color:var(--muted);cursor:pointer;padding:4px}
.ap .pill{display:inline-block;font-size:11px;font-weight:600;border:1px solid var(--line);border-radius:999px;padding:1px 8px;margin-left:4px;color:var(--muted)}
.ap .pill.bf{border-color:var(--blue);color:var(--blue)}
.ap .empty{border:1px dashed var(--line);border-radius:12px;padding:20px;text-align:center;color:var(--muted);font-size:14px}
.ap .plist .row-item:first-child{margin-top:0}
.ap .bad-box{outline:1.5px solid var(--err);outline-offset:4px;border-radius:12px}
.ap .found .av svg{width:24px;height:24px}
.ap .tag.ai{border-color:var(--blue);color:var(--blue);text-transform:none;letter-spacing:0;font-weight:500}
.ap .pill.ai{border-color:var(--blue);color:var(--blue)}
.ap .prebanner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border:1px solid var(--blue);background:var(--blue-soft);border-radius:var(--r);padding:16px 20px;margin-bottom:12px}
.ap .prebanner b{display:block;font-weight:600}
.ap .prebanner span{font-size:14px;color:var(--muted)}
.ap .sugbox{border:1px solid var(--blue);border-radius:12px;padding:14px 16px;background:var(--blue-soft)}
.ap .sugbox .row-item{background:var(--surface)}
.ap .ups.pre .up{align-items:flex-start}
.ap .tchip{background:none;border:1px solid #333;border-radius:999px;padding:5px 12px;color:var(--night-ink);font:inherit;font-size:12px;cursor:pointer}
.ap .chooser{max-width:980px;margin:0 auto;width:100%}
.ap .chooser>h1{font-size:40px;line-height:1.1;letter-spacing:-.035em;max-width:20ch;margin-top:10px}
.ap .chooser>.lead{margin-top:14px}
.ap .types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:32px}
.ap .type{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:12px;text-align:left;font:inherit;color:var(--ink)}
.ap .type.pick{cursor:pointer;transition:border-color .15s,box-shadow .15s}
.ap .type.pick:hover{border-color:var(--ink);box-shadow:0 10px 30px rgb(0 0 0 / .06)}
.ap .type .ti{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center}
.ap .type h2{font-size:21px;font-weight:500}
.ap .type p{margin:0;color:var(--muted);font-size:14px}
.ap .type dl{margin:6px 0 0;display:flex;flex-direction:column;gap:4px;font-size:13px;border-top:1px solid var(--line);padding-top:12px}
.ap .type dt{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ap .type dd{margin:0 0 6px}
.ap .type .go{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:500}
.ap .type.soft{background:var(--field)}
.ap .chooser .reg{margin-top:28px}
@media (max-width:860px){.ap .types{grid-template-columns:minmax(0,1fr)}
.ap .chooser>h1{font-size:30px}}
.ap .types.two{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px}
.ap .types.two a.type{text-decoration:none}
.ap .types.two .type{padding:28px;gap:10px}
.ap .chooser .alt{margin-top:22px}
.ap .chooser{max-width:760px}
@media (max-width:860px){.ap .types.two{grid-template-columns:minmax(0,1fr)}}
.ap .dj .djq{display:block;margin-top:6px;font-size:13px;font-weight:500;color:var(--ink);border-left:2px solid var(--blue);padding-left:10px}
.ap .up.bad{border-style:solid;border-color:var(--err)}
.ap .up.bad .ic{color:var(--err)}
.ap .billf{gap:10px;margin-top:6px}
.ap .billact{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.ap .billact label{cursor:pointer;font-size:14px}
.ap .billact input{position:absolute;opacity:0;width:1px;height:1px}
.ap .djx{margin:4px 0 14px}
.ap .djdoc{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}
.ap .djdoc header{padding:20px 24px;border-bottom:1px solid var(--line);background:var(--field)}
.ap .djk{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.ap .djdoc header p{margin:6px 0 0;color:var(--muted);font-size:14px;max-width:70ch}
.ap .djl{list-style:none;margin:0;padding:0}
.ap .dji{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;padding:20px 24px;border-bottom:1px solid var(--line)}
.ap .dji:last-child{border-bottom:0}
.ap .djn{font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--muted);padding-top:3px}
.ap .djt{font-weight:600;font-size:15px;line-height:1.4}
.ap .djh{color:var(--muted);font-size:13px;margin-top:3px}
.ap .djr{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.ap .djo{display:inline-flex;align-items:center;gap:10px;min-width:120px;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:9px 16px;font:inherit;font-size:14px;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s}
.ap .djo:hover{border-color:var(--muted)}
.ap .djo .rb{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--muted);flex:none}
.ap .djo[aria-pressed="true"]{border-color:var(--ink);background:var(--field);font-weight:500}
.ap .djo[aria-pressed="true"] .rb{border-color:var(--ink);background:var(--ink);box-shadow:inset 0 0 0 3px var(--surface)}
.ap .djs{margin-top:12px;font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:flex-start}
.ap .djs svg{color:var(--ok);flex:none;margin-top:2px}
.ap .djs span{color:var(--ink)}
.ap .dji>.grid,.ap .dji>.djx{grid-column:2;margin:14px 0 0!important}
.ap .djdoc footer{padding:14px 24px;font-size:12px;color:var(--muted);background:var(--field);border-top:1px solid var(--line)}
.ap .dji.bad-box{outline:none;box-shadow:inset 3px 0 0 var(--err)}
@media (max-width:620px){.ap .dji{grid-template-columns:24px minmax(0,1fr);padding:16px}
.ap .djdoc header,.ap .djdoc footer{padding-left:16px;padding-right:16px}
.ap .djo{flex:1;min-width:0;justify-content:center}}
.ap .modal .box:has(.tycdoc){max-width:880px;padding:0;text-align:left;align-items:stretch;gap:0;max-height:calc(100vh - 32px)}
.ap .tycdoc{display:flex;flex-direction:column;max-height:calc(100vh - 32px);min-height:0}
.ap .tych{padding:22px 26px 14px;border-bottom:1px solid var(--line)}
.ap .tych h3{font-size:20px;margin-top:4px}
.ap .tych p{margin:6px 0 0}
.ap .tycbody{overflow:auto;padding:18px 26px;font-size:13.5px;line-height:1.6;flex:1;min-height:0;text-align:justify;hyphens:auto}
.ap .tycbody p{margin:0 0 12px;max-width:none}
.ap .tycbody p.intro{text-align:center;color:var(--muted);margin-bottom:18px}
.ap .tycbody b{font-weight:600}
.ap .tycnote{margin-top:18px!important;border-top:1px solid var(--line);padding-top:12px;text-align:left}
.ap .tycf{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 26px;border-top:1px solid var(--line);background:var(--field)}
.ap .coent{margin-top:28px;text-align:center}
.ap .co{display:flex;flex-direction:column;gap:18px}
.ap .co-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.ap .co-top h1{font-size:30px;margin-top:6px}
.ap .co-st{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:4px 12px;color:var(--muted)}
.ap .co-st.on{border-color:var(--ok);color:var(--ok)}
.ap .co-nav{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto}
.ap .co-nav button{background:none;border:0;border-bottom:2px solid transparent;padding:10px 14px;font:inherit;font-size:14px;color:var(--muted);cursor:pointer;white-space:nowrap}
.ap .co-nav button[aria-current="page"]{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}
.ap .co-nav .cnt{display:inline-block;min-width:20px;padding:0 6px;border-radius:999px;background:var(--err);color:#fff;font-size:11px;font-weight:600;text-align:center}
.ap .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ap .kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:2px}
.ap .kpi b{font-size:30px;font-weight:500;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ap .kpi span{font-size:13px;font-weight:600}
.ap .kpi small{font-size:12px;color:var(--muted)}
.ap .cgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ap .cbox{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px 20px;min-width:0}
.ap .cbox h2{font-size:15px;font-weight:600;margin-bottom:12px}
.ap .cbox h3{font-size:13px;font-weight:600;margin:14px 0 6px;color:var(--muted)}
.ap .bh{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.ap .bh h2{margin:0}
.ap .sbar{display:flex;height:12px;border-radius:99px;overflow:hidden;background:var(--field)}
.ap .sbar span{display:block;height:100%}
.ap .sleg{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:13px;color:var(--muted)}
.ap .sleg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.ap .sleg b{color:var(--ink);margin-left:2px}
.ap .r-Bajo{background:#3f9a6b}
.ap .r-Medio{background:#d6a23a}
.ap .r-Alto{background:#c2453c}
.ap .s-alta{background:#c2453c}
.ap .s-media{background:#d6a23a}
.ap .s-baja{background:#8a94a6}
.ap .cpill{display:inline-block;font-size:11px;font-weight:600;border-radius:999px;padding:2px 9px;color:#fff;white-space:nowrap}
.ap .cpill.e-pendiente{background:var(--field);color:var(--ink);border:1px solid var(--line)}
.ap .cpill.e-en_revision{background:var(--blue)}
.ap .cpill.e-info{background:#d6a23a}
.ap .cpill.e-aprobada{background:#3f9a6b}
.ap .cpill.e-rechazada{background:#6b6b6b}
.ap .ctbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.ap .ctbl table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
.ap .ctbl th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);padding:10px 14px;background:var(--field);border-bottom:1px solid var(--line)}
.ap .ctbl td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle;font-variant-numeric:tabular-nums}
.ap .ctbl tr:last-child td{border-bottom:0}
.ap .ctbl tr[data-open]{cursor:pointer}
.ap .ctbl tr[data-open]:hover td{background:var(--field)}
.ap .ctbl td small{display:block;color:var(--muted);font-size:12px}
.ap .ctbl .r{text-align:right}
.ap .uc{min-width:120px}
.ap .uc small{font-size:12px;color:var(--muted)}
.ap .ubar{height:6px;border-radius:99px;background:var(--field);overflow:hidden;border:1px solid var(--line)}
.ap .ubar span{display:block;height:100%;background:var(--blue)}
.ap .ubar span.warn{background:#d6a23a}
.ap .ubar span.over{background:#c2453c}
.ap .acount{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#d6a23a;color:#fff;font-size:12px;font-weight:600}
.ap .acount.hi{background:#c2453c}
.ap .cfil{display:flex;gap:10px;flex-wrap:wrap}
.ap .cfil input,.ap .cfil select{font:inherit;font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 12px}
.ap .cfil input{flex:1;min-width:220px}
.ap .chead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.ap .chead h2{font-size:26px;margin-top:4px}
.ap .cmeta{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}
.ap .cact{display:flex;gap:8px;flex-wrap:wrap}
.ap .cwarn{border:1px solid #c2453c;color:#c2453c;border-radius:10px;padding:10px 14px;font-size:14px}
.ap .cdl{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:7px 14px;margin:0;font-size:14px}
.ap .cdl dt{color:var(--muted)}
.ap .cdl dd{margin:0;overflow-wrap:anywhere}
.ap .rk{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.ap .rkn{color:#fff;font-weight:600;border-radius:10px;padding:10px 16px;font-size:16px}
.ap .rk small{display:block;color:var(--muted);font-size:12px}
.ap .rkl{list-style:none;margin:0;padding:0;font-size:13px}
.ap .rkl li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--line)}
.ap .rkl b{font-variant-numeric:tabular-nums;white-space:nowrap}
.ap .cup b{font-size:26px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ap .cup small{color:var(--muted);margin-left:6px}
.ap .arow{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px 0;border-top:1px solid var(--line)}
.ap .co>.arow{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.ap .arow .ab b{display:block;font-size:14px}
.ap .arow .ab small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.ap .arow .ares{border-left:2px solid var(--line);padding-left:8px;margin-top:6px!important}
.ap .arow.resuelta{opacity:.75}
.ap .cdocs{list-style:none;margin:0;padding:0;font-size:13px}
.ap .cdocs li{padding:7px 0;border-top:1px solid var(--line);display:flex;flex-direction:column}
.ap .cdocs b{font-size:12px;color:var(--muted);font-weight:600}
.ap .cdocs small{color:var(--muted)}
.ap .hist{list-style:none;margin:0;padding:0;font-size:13px;max-height:360px;overflow:auto}
.ap .hist li{padding:8px 0 8px 14px;border-left:2px solid var(--line);margin-left:4px;display:flex;flex-direction:column}
.ap .hist span{color:var(--muted);font-size:12px}
.ap .hist small{color:var(--ink)}
.ap .pin{width:72px;font:inherit;font-size:14px;text-align:right;border:1px solid var(--line);border-radius:8px;padding:5px 8px;background:var(--surface);color:var(--ink)}
.ap .umb{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;font-size:14px;align-items:center}
.ap textarea.cta{width:100%;font:inherit;font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px;resize:vertical}
@media (max-width:860px){.ap .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.ap .cgrid{grid-template-columns:minmax(0,1fr)}
.ap .arow{grid-template-columns:minmax(0,1fr)}
.ap .cdl{grid-template-columns:minmax(0,1fr)}
.ap .cdl dd{margin-bottom:4px}}
.ap .djex{margin-top:8px;font-size:13px}
.ap .djex summary{cursor:pointer;color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;width:max-content;max-width:100%}
.ap .djex>div{margin-top:8px;border:1px solid var(--line);background:var(--field);border-radius:10px;padding:12px 14px}
.ap .djex p{margin:0;color:var(--muted)}
.ap .djex ul{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}
.ap .djex .djno{margin-top:8px;color:var(--ink)}
.ap .rbox{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--surface);display:flex;flex-direction:column;gap:12px}
.ap .rbox>p{margin:0;font-size:14px;max-width:72ch}
.ap .rtit{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ap .rtit span{text-transform:none;letter-spacing:0;font-weight:400}
.ap .rlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ap .rlist li{border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;background:var(--field)}
.ap .rlist li.hi{border-color:var(--ink);background:var(--surface)}
.ap .rlist b{font-size:14px;font-weight:500}
.ap .rlist em{font-style:normal;font-size:11px;font-weight:600;color:var(--blue);margin-left:6px}
.ap .rlist small{font-size:12px;color:var(--muted)}
.ap .btn.wline{background:transparent;color:#fff;border-color:rgb(255 255 255 / .55)}
.ap .mlist{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:15px}
.ap .cbtns{display:flex;gap:8px;flex-wrap:wrap}
.ap .cmail{margin-top:10px;max-width:360px}
.ap .mailm{display:flex;flex-direction:column;gap:12px;text-align:left;width:100%}
.ap .mailmock{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.ap .mailmock .mh{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;background:var(--field);padding:8px 12px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}
.ap .mailmock .mb{padding:16px;display:flex;flex-direction:column;gap:8px;font-size:14px}
.ap .mailmock .mb p{margin:0}
.ap .mcode{font-size:28px;font-weight:600;letter-spacing:.14em;padding:10px 0}
.ap .resent{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--r);padding:16px 20px;margin-top:20px;background:var(--surface)}
.ap .resent b{display:block;font-weight:600}
.ap .resent span{font-size:14px;color:var(--muted)}
@media (max-width:620px){.ap .rlist{grid-template-columns:minmax(0,1fr)}}
.ap .rlead{margin:-6px 0 0;font-size:14px;color:var(--muted)}
.ap .rex{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px}
.ap .rex>span{color:var(--muted);margin-right:2px}
.ap .rex em{font-style:normal;border:1px solid var(--line);border-radius:999px;padding:3px 10px;background:var(--surface)}
.ap .rex em.hi{border-color:var(--ink);font-weight:600}
.ap .drop2{display:flex;gap:14px;align-items:center;border:1.5px dashed var(--line);border-radius:12px;padding:18px 20px;cursor:pointer;background:var(--surface);transition:border-color .15s,background .15s}
.ap .drop2:hover,.ap .drop2.over{border-color:var(--ink);background:var(--field)}
.ap .drop2.need{border-color:var(--err)}
.ap .drop2 input{position:absolute;opacity:0;width:1px;height:1px}
.ap .drop2 .dz-ic{width:40px;height:40px;border-radius:50%;background:var(--ink);color:var(--surface);display:grid;place-items:center;font-size:22px;flex:none;line-height:1}
.ap .drop2 b{display:block;font-weight:600}
.ap .drop2 small{color:var(--muted);font-size:13px}
.ap .drop2:focus-within{outline:2px solid var(--blue);outline-offset:3px}
.ap .extp details summary{cursor:pointer;font-size:13px;list-style-position:inside}
.ap .extp details[open] summary{margin-bottom:8px}
.ap .extp .al{margin:0 0 8px}
.ap footer.mini{text-align:center;font-size:12px;color:var(--muted);padding-block:8px 32px;max-width:none;border:0;display:block}
.ap .hubtop{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.ap .cbtn{display:inline-flex;align-items:center;gap:8px}
.ap .ccount{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:var(--ink);color:var(--surface);font-size:11px;padding:0 6px}
.ap .collabbar{border:1px solid var(--blue);background:var(--blue-soft);border-radius:10px;padding:10px 14px;font-size:14px;margin-bottom:16px}
.ap .colm{display:flex;flex-direction:column;gap:14px;text-align:left;width:100%}
.ap .clist{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:10px}
.ap .clist li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--line)}
.ap .clist li:first-child{border-top:0}
.ap .clist b{display:block;font-weight:500;overflow-wrap:anywhere}
.ap .clist small{font-size:12px;color:var(--muted)}
.ap .clist em{font-style:normal;font-size:12px;color:var(--blue);font-weight:600}
.ap .cempty{margin:0;font-size:14px;color:var(--muted);border:1px dashed var(--line);border-radius:10px;padding:12px;text-align:center}
.ap .cinv{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.ap .docbanner{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid #d6a23a;background:var(--surface);border-left:4px solid #d6a23a;border-radius:12px;padding:14px 18px}
.ap .docbanner b{display:block;font-weight:600}
.ap .docbanner span{font-size:13px;color:var(--muted)}
.ap .ctbl td.r small{display:block}
.ap .ctbl td .cpill.s-alta{color:#fff}
.ap .mnsteps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}
.ap .mnsteps span{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:3px 10px;color:var(--muted)}
.ap .mnsteps span.on{border-color:var(--ink);color:var(--ink);font-weight:600}
.ap .mnsteps span.ok{color:var(--ok);border-color:var(--ok)}
.ap .mchk{display:flex;flex-direction:column;gap:8px}
.ap .mck{flex-direction:row!important;gap:12px;align-items:center;cursor:pointer}
.ap .mck input{width:18px;height:18px;accent-color:var(--blue);flex:none}
.ap .djtxt{padding:16px 24px;font-size:14px;line-height:1.6}
.ap .djtxt p{margin:0 0 10px;max-width:none}
.ap .djtxt p:last-child{margin:0}
.ap .diditc{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border:1px solid var(--line);border-radius:12px;padding:18px 20px;background:var(--surface)}
.ap .diditc .dt{flex:1;min-width:220px}
.ap .diditc b{display:block;font-weight:600}
.ap .diditc span{font-size:13px;color:var(--muted)}
.ap .diditc .dact{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.ap .dl{width:40px;height:40px;border-radius:10px;background:#111;color:#fff;display:grid;place-items:center;font-weight:700;flex:none}
.ap .dl.sm{width:24px;height:24px;border-radius:6px;font-size:12px}
.ap .found.didit .av{background:var(--ok);color:#fff}
.ap .dflow{display:flex;flex-direction:column;gap:14px;align-items:center;width:100%}
.ap .dfh{display:flex;gap:8px;align-items:center;width:100%;border-bottom:1px solid var(--line);padding-bottom:10px}
.ap .dfh .fill{margin-left:auto;font-size:12px}
.ap .dbody{display:flex;flex-direction:column;gap:12px;align-items:center;width:100%}
.ap .dcam{width:100%;max-width:300px;aspect-ratio:16/10;border:2px dashed var(--line);border-radius:12px;display:grid;place-items:center;text-align:center;font-size:14px;color:var(--muted);background:var(--field)}
.ap .dcam.face{aspect-ratio:1;max-width:180px;border-radius:50%}
.ap .dcam.face span{width:60%;height:70%;border:2px solid var(--muted);border-radius:50%}
.ap .dchk{list-style:none;margin:0;padding:0;width:100%;max-width:320px;font-size:14px}
.ap .dchk li{padding:6px 0;border-top:1px solid var(--line)}
.ap .dchk li::before{content:"✓ ";color:var(--ok);font-weight:700}
.ap .dsteps{display:flex;gap:6px}
.ap .dsteps span{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:2px 8px;color:var(--muted)}
.ap .dsteps span.on{border-color:var(--ink);color:var(--ink)}
.ap .dsteps span.ok{border-color:var(--ok);color:var(--ok)}
.ap .hb{display:grid;grid-template-columns:150px minmax(0,1fr) 32px;gap:10px;align-items:center;font-size:13px;padding:4px 0}
.ap .hbt{height:8px;background:var(--field);border-radius:99px;overflow:hidden}
.ap .hbt i{display:block;height:100%;background:var(--blue)}
.ap .hb b{text-align:right;font-variant-numeric:tabular-nums}
.ap .cadbox{border:1px solid var(--line);border-radius:12px;padding:18px 20px;background:var(--surface);display:flex;flex-direction:column;gap:12px}
.ap .cadh{display:flex;gap:12px;align-items:flex-start}
.ap .cadh b{display:block;font-weight:600}
.ap .cadh span:not(.cadn):not(.req){font-size:13px;color:var(--muted)}
.ap .cadn{width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--surface);display:grid;place-items:center;font-size:12px;font-weight:700;flex:none}
.ap .cadl{margin:0;padding-left:56px;font-size:14px;display:flex;flex-direction:column;gap:4px}
.ap .cadnote{border-left:3px solid var(--blue);background:var(--field);padding:10px 14px;font-size:13px;border-radius:0 8px 8px 0}
.ap .cadact{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.ap .cadbox label input[type=file]{position:absolute;opacity:0;width:1px;height:1px}
.ap .cadbox label.btn{cursor:pointer}
.ap .cadbox label.btn:focus-within{outline:2px solid var(--blue);outline-offset:3px}
.ap .reuse{display:flex;flex-direction:column;gap:6px}
.ap .reuse .mck small{display:block;color:var(--muted);font-size:12px}
.ap .reuse .mck b{font-weight:500;font-size:14px}
@media (max-width:620px){.ap .cadl{padding-left:18px}}
.ap .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.ap .chip{font-size:11px;font-weight:500;border:1px solid var(--line);border-radius:999px;padding:2px 9px;color:var(--muted);background:var(--surface)}
.ap .chip.ok{border-color:var(--ok);color:var(--ok)}
.ap .chip.warn{border-color:#b7791f;color:#8a5a14}
.ap .ria{display:flex;gap:4px;flex:none}
.ap .row-item.pend{border-style:dashed;background:var(--surface)}
.ap .f textarea{width:100%;min-width:0;font:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px;resize:vertical}
.ap .f textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}
.ap .f.bad textarea{border-color:var(--err)}
.ap .facb label.btn,.ap .anx label.btn{cursor:pointer}
.ap .facb label input[type=file]{position:absolute;opacity:0;width:1px;height:1px}
.ap .facb .f{margin-top:8px}
.ap .facb .reuse{margin-top:8px}
.ap .facb .resp{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.ap .resp .item.ns{grid-template-columns:auto minmax(0,1fr) auto}
.ap .ctrlp{margin-top:12px}
.ap .ctrlp .row-item{background:var(--surface)}
.ap .anx{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.ap .anxi{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--surface);display:flex;flex-direction:column;gap:12px}
.ap .anxh{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}
.ap .anxh b{display:block;font-weight:600}
.ap .anxh span:not(.tag){font-size:13px;color:var(--muted)}
.ap .anxb{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ap .anxwarn{border-left:3px solid #b7791f;background:var(--field);padding:10px 14px;font-size:13px;border-radius:0 8px 8px 0;margin-bottom:12px}
.ap .anxt{width:100%;border-collapse:collapse;font-size:14px}
.ap .anxt th,.ap .anxt td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.ap .anxt th{font-size:12px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.ap .anxt td:last-child{width:45%}
.ap .firm{display:flex;flex-direction:column;gap:8px}
.ap .accb{flex-direction:row!important;gap:12px;align-items:flex-start;cursor:pointer}
.ap .accb input{width:20px;height:20px;margin-top:2px;accent-color:var(--blue);flex:none}
.ap .accb.dis{opacity:.6;cursor:not-allowed}
.ap .signed{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--ok);border-radius:10px;padding:10px 14px;font-size:13px}
.ap .signed>span{color:var(--ok);font-weight:700}
.ap .signed b{display:block;font-weight:600}
.ap .signed small{color:var(--muted)}
.ap .bfdj{padding:18px 24px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--line)}
.ap .bfc{border:1px solid var(--line);border-radius:10px;padding:14px 16px}
.ap .bfch{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.ap .bfch b{font-weight:600}
.ap .bfc dl{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:4px 14px;margin:0;font-size:13px}
.ap .bfc dt{color:var(--muted)}
.ap .bfc dd{margin:0;overflow-wrap:anywhere}
.ap .djbody{padding:18px 24px;display:flex;flex-direction:column;gap:12px;font-size:14px}
.ap .djbody p{margin:0}
@media (max-width:620px){.ap .bfdj,.ap .djbody{padding:14px 16px}
.ap .bfc dl{grid-template-columns:1fr}
.ap .bfc dd{margin-bottom:6px}
.ap .anxt td:last-child{width:auto}}
.ap .telf{display:flex;gap:8px;align-items:stretch}
.ap .telf input{flex:1;min-width:0}
.ap .pcc{position:relative;display:inline-flex;align-items:center;gap:6px;flex:none;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:var(--field);font-size:15px;color:var(--ink);min-width:96px}
.ap .pcc b{font-weight:500}
.ap .pcc svg{color:var(--muted);margin-left:auto}
.ap .pcc select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px}
.ap .pcc:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}
.ap .f.bad .telf input{border-color:var(--err)}
.ap [hidden]{display:none!important}
.ap .vincb{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.ap .vincb .up{margin:0}
.ap .vincb label input[type=file]{position:absolute;opacity:0;width:1px;height:1px}
.ap .vincb label.btn{cursor:pointer}
.ap .mndl{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:6px 14px;margin:14px 0 0;font-size:13px;border-top:1px solid var(--line);padding-top:12px}
.ap .mndl dt{color:var(--muted)}
.ap .mndl dd{margin:0}
.ap .saldosb{margin-bottom:6px}
@media (max-width:620px){.ap .mndl{grid-template-columns:1fr}
.ap .mndl dd{margin-bottom:6px}}
.ap .sum{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.ap .sum+.sum{margin-top:12px}
.ap .sum header{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:var(--field);border-bottom:1px solid var(--line)}
.ap .sum header b{font-weight:600}
.ap .sum dl{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:8px 16px;margin:0;padding:16px 18px;font-size:14px}
.ap .sum dt{color:var(--muted)}
.ap .sum dd{margin:0;overflow-wrap:anywhere}
.ap .miss{color:var(--err);font-weight:500}
.ap .done{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 0}
.ap .done>.ok{width:72px;height:72px;border-radius:50%;background:var(--night);color:#fff;display:grid;place-items:center;font-size:30px}
.ap .done h1{font-size:34px}
.ap .done p{max-width:56ch;margin:0;color:var(--muted)}
.ap .tl{list-style:none;padding:0;margin:12px 0 0;text-align:left;display:flex;flex-direction:column;width:100%;max-width:560px;border-top:1px solid var(--ink)}
.ap .tl li{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:14px}
.ap .tl b{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ap .modal{position:fixed;inset:0;background:rgb(0 0 0 / .55);display:grid;place-items:center;z-index:20;padding:16px}
.ap .modal .box{background:var(--surface);color:var(--ink);border-radius:var(--r);max-width:480px;width:100%;padding:30px;text-align:center;display:flex;flex-direction:column;gap:14px;align-items:center;border:1px solid var(--line)}
.ap .modal h3{font-size:20px}
.ap .spin{width:42px;height:42px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--blue);animation:sp 1s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.ap .idcard{background:#c9e4e7;border-radius:10px;padding:12px;display:grid;grid-template-columns:60px 1fr;gap:10px;color:#223;width:100%;max-width:300px;text-align:left}
.ap .idcard .ph{background:#fff;border-radius:6px;height:72px}
.ap .idcard .tr{border:2px solid #d4a017;border-radius:999px;padding:3px 8px;font:600 11px ui-monospace,monospace;justify-self:start}
.ap .toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--cta);color:var(--cta-ink);padding:12px 20px;border-radius:999px;font-size:14px;z-index:30;max-width:calc(100% - 32px)}
.ap footer{border-top:1px solid var(--line);max-width:1160px;margin:0 auto;font-size:12px;color:var(--muted);padding-block:20px 36px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.ap footer b{color:var(--ink);font-weight:600}
@media (max-width:960px){.ap .shell{grid-template-columns:minmax(0,1fr);gap:14px;padding-block:16px 48px}
.ap .guide{display:none}
.ap .mbar{display:block;position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.ap .mbar .row{display:flex;justify-content:space-between;font-size:13px;gap:8px}
.ap .mbar .row b{font-weight:600}
.ap .mbar .track{height:6px;background:var(--field);border-radius:99px;margin-top:8px;overflow:hidden;border:1px solid var(--line)}
.ap .mbar .track div{height:100%;background:linear-gradient(90deg,var(--blue),var(--blue-2));border-radius:99px;transition:width .3s}
.ap .hero{grid-template-columns:minmax(0,1fr);padding:36px}
.ap .hero h1{font-size:40px}
.ap .whyhead{grid-template-columns:minmax(0,1fr);gap:12px}}
@media (max-width:620px){.ap .card{padding:22px}
.ap .card>h1{font-size:26px}
.ap .hero{padding:26px}
.ap .hero h1{font-size:32px}
.ap .top .help .phone{display:none}
.ap .grid,.ap .grid.g3,.ap .choices,.ap .choices.c3,.ap .why,.ap .ups{grid-template-columns:minmax(0,1fr)}
.ap .why article{grid-template-columns:minmax(0,1fr);gap:4px}
.ap .grid.g4{grid-template-columns:1fr 1fr}
.ap .sum dl{grid-template-columns:minmax(0,1fr)}
.ap .sum dd{margin-bottom:6px}
.ap .tl li{grid-template-columns:minmax(0,1fr);gap:2px}
.ap .actions .btn{flex:1}
.ap .resp .item{grid-template-columns:auto minmax(0,1fr) auto}
.ap .resp .item select{grid-column:1/-1;grid-row:2}}
@media (prefers-reduced-motion:reduce){.ap,.ap *{transition:none!important;animation:none!important}}

/* ===================================================================
   Capa WIN sobre el formulario del artefacto.
   Tokens del sitio (win.css): tinta #1f1f1f, superficies #fff / #f7f7f7,
   hairlines #c9c9cd, Manrope (display) + Inter (UI), controles pill.
   =================================================================== */
.ap{
  --bg:var(--mist,#f7f7f7); --surface:#fff; --ink:#1f1f1f; --muted:#717173; --line:#dcdce0; --field:#f7f7f7;
  --blue:#1f1f1f; --blue-2:#4c4c4c; --blue-soft:rgba(31,31,31,.10); --cta:#1f1f1f; --cta-ink:#fff;
  --night:#1f1f1f; --night-2:#2a2a2a; --night-ink:#fff; --night-muted:rgba(255,255,255,.66);
  --ok:#1f7a4f; --ok-soft:#eef6f1; --warn-bg:#f7f7f7; --warn-fg:#4c4c4c; --err:#b42318;
  --sans:'Inter',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --display:'Manrope',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --r:22.5px;
  background:var(--bg);color:var(--ink);font:400 15px/1.55 var(--sans);letter-spacing:-.005em;
  min-height:60vh;
}
.ap h1,.ap h2,.ap h3{font-family:var(--display);font-weight:500;letter-spacing:-.02em}
.ap .card>h1,.ap .hub>h1,.ap .chooser h1{letter-spacing:-.024em}

/* --- choques con win.css (clases con el mismo nombre en el sitio) --- */
.ap .steps{border-top:0;display:flex;flex-direction:column;gap:0;counter-reset:none}
.ap .steps li{display:block;grid-template-columns:none;padding:0;border:0;counter-increment:none}
.ap .steps li::before{content:none;display:none}
.ap .steps li b{display:inline;margin:0}
.ap .note{margin-top:0;color:var(--ink)}
.ap .card>.note,.ap .card>.block+.note{margin-top:28px}
.ap .lead{font-family:var(--sans);color:var(--muted)}
.ap .eyebrow{display:block;font:600 12px/1.5 var(--sans);letter-spacing:.08em}
.ap .link{opacity:1}
.ap .btn{min-height:44px;gap:8px;display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font-weight:600;line-height:1.2}
.ap .btn.sm{min-height:36px;padding:8px 16px;font-size:14px}
.ap .btn:active{transform:none}
.ap ul,.ap ol{margin:0}
.ap :focus-visible{outline:2px solid var(--ink);outline-offset:3px}

/* --- “.done” del artefacto se usa para la pantalla de enviado y para las secciones completas del hub --- */
.ap .sec.done{display:grid;flex-direction:initial;text-align:left;align-items:start;gap:18px;padding:20px 22px}

/* --- selects con flecha propia y aire a la derecha --- */
.ap .f select,.ap .resp .item select{-webkit-appearance:none;appearance:none;padding-right:44px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231f1f1f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 18px center;background-size:12px}
.ap .telf select{background-image:none;padding-right:0}

/* --- marco --- */
.ap-bar{border-bottom:1px solid var(--line);background:#fff}
.ap-bar .in{max-width:1200px;margin:0 auto;padding:12px var(--gutter,16px);display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px}
.ap-bar .crumb{font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ap-bar .crumb b{color:var(--ink);font-weight:600}
.ap .tchip{font:600 13px/1 var(--sans);color:var(--ink);background:#fff;border:1px solid var(--ink);border-radius:999px;padding:9px 16px;cursor:pointer;white-space:nowrap}
.ap .tchip:hover{background:var(--ink);color:#fff}
.ap .shell{max-width:1200px;padding-left:var(--gutter,16px);padding-right:var(--gutter,16px);padding-top:32px;grid-template-columns:280px minmax(0,1fr)}
.ap .card{border-color:var(--line);border-radius:var(--r)}
.ap .guide .box,.ap .sec,.ap .trust{border-radius:var(--r)}
.ap .guide{top:calc(88px + env(safe-area-inset-top,0px))}
.ap .f input,.ap .f select,.ap textarea{border-color:#c9c9cd;border-radius:12px;min-height:48px;background-color:#fff}
.ap textarea{width:100%;font:inherit;padding:12px 14px;border:1px solid #c9c9cd}
.ap .f input:focus,.ap .f select:focus,.ap textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(31,31,31,.10)}
.ap .choice{border-color:#c9c9cd;border-radius:14px}
.ap .choice[aria-pressed="true"] b::after{border-color:var(--ink);background:var(--ink)}
.ap .tag{border-color:var(--ink);color:var(--ink)}
.ap .hero{background:#1f1f1f;border-radius:var(--r)}
.ap .hero h1{font-family:var(--display);font-weight:500}
.ap .hero .lines{opacity:.35}
.ap .hero .lines g{stroke:#fff}
.ap .reg{border-top-color:var(--line)}
.ap .anxpdf{width:100%;height:min(60vh,560px);border:1px solid var(--line);border-radius:12px;margin:12px 0;background:var(--field)}
@media (max-width:760px){.ap .anxpdf{display:none}}

/* --- modal, avisos y ayuda: por encima del encabezado del sitio --- */
.ap .modal{z-index:1000}
.ap .toast{z-index:1001}
.ap .helpfab,.ap .helppanel{z-index:900}
.page-apertura > .wa,.page-apertura a.wa{display:none!important}   /* el formulario ya tiene su botón de ayuda por WhatsApp */

/* --- controles de la simulación: solo con ?demo=1 --- */
.ap:not(.ap-demo) [data-fill],.ap:not(.ap-demo) [data-sim],.ap:not(.ap-demo) [data-csim],.ap:not(.ap-demo) [data-billsim],
.ap:not(.ap-demo) [data-rsim],.ap:not(.ap-demo) [data-presim],.ap:not(.ap-demo) [data-mnvsim],.ap:not(.ap-demo) [data-cadsim],
.ap:not(.ap-demo) [data-pfsim],.ap:not(.ap-demo) [data-go="preSimAll"],.ap:not(.ap-demo) [data-go="cotSample"],
.ap:not(.ap-demo) [data-go="pSample"],.ap:not(.ap-demo) [data-go="aSample"],.ap:not(.ap-demo) [data-bfact="sample"]{display:none!important}

/* --- archivos: estado de subida --- */
.ap .wup{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:950;
  width:min(360px,calc(100vw - 32px));background:#fff;border:1px solid #c9c9cd;border-radius:16px;padding:12px 14px;font-size:13px;
  box-shadow:0 8px 24px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:8px}
.ap .wup[hidden]{display:none}
.ap .wup .wh{display:flex;justify-content:space-between;align-items:center;gap:8px;font-weight:600}
.ap .wup .wh button{background:none;border:0;font-size:18px;line-height:1;cursor:pointer;color:var(--muted);padding:2px 6px}
.ap .wup ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;max-height:40vh;overflow:auto}
.ap .wup li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.ap .wup li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ap .wup li em{font-style:normal;color:var(--muted);white-space:nowrap}
.ap .wup li.err em{color:var(--err)}
.ap .wup li.ok em{color:var(--ok)}
.ap .wup .bar{height:3px;background:var(--line);border-radius:99px;overflow:hidden;grid-column:1/-1}
.ap .wup .bar i{display:block;height:100%;background:var(--ink);width:0;transition:width .2s}
.ap .wup .retry{background:none;border:0;text-decoration:underline;cursor:pointer;font:inherit;color:var(--ink);padding:0}
.ap .wnum{margin:14px auto 0;font-size:14px;color:var(--muted)}
.ap .wnum b{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:.02em}
.ap .werr-wrap h3{margin:0}
.ap .werr{width:100%;background:#fff5f4;border:1px solid #f1c4bf;color:var(--err);border-radius:12px;padding:12px 14px;font-size:14px;text-align:left}
.ap .werr ul{margin:6px 0 0;padding-left:18px}

/* --- pantallas angostas --- */
@media (max-width:980px){
  .ap .shell{grid-template-columns:minmax(0,1fr);padding-top:20px}
  .ap .mbar{top:calc(76px + env(safe-area-inset-top,0px));box-shadow:0 4px 14px rgba(0,0,0,.05)}
}
@media (max-width:620px){
  .ap{font-size:15px}
  .ap .card{padding:22px 18px}
  .ap .card>h1{font-size:26px}
  .ap .hero{padding:28px 22px}
  .ap .hero h1{font-size:34px}
  .ap .actions{flex-direction:column-reverse;align-items:stretch}
  .ap .actions>div{flex-direction:column-reverse;align-items:stretch!important;width:100%}
  .ap .actions .btn{width:100%}
  .ap .grid,.ap .grid.g3,.ap .grid.g4,.ap .choices,.ap .choices.c3,.ap .ups{grid-template-columns:minmax(0,1fr)}
  .ap-bar .in{min-height:52px;padding-top:10px;padding-bottom:10px}
  .ap-bar .crumb>span,.ap-bar .crumb b{display:none}
  .ap .hfoot{padding-bottom:56px}
  .ap .helpfab span{display:none}
  .ap .wup{bottom:calc(76px + env(safe-area-inset-bottom,0px))}
}
.ap{min-height:100svh}

/* Íconos de línea en lugar de emojis */
.ap .up .ic svg,.ap .drop .ic svg{width:22px;height:22px;display:block}
.ap .up .ic{color:var(--ink)}
.ap .up.ok .ic{color:var(--surface)}
.ap .pnex span{display:inline-flex;align-items:center;gap:6px}
.ap .pnex svg{width:16px;height:16px;flex:none;color:var(--muted)}
.ap .pcc>span{font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--muted)}

/* Porcentajes: el signo % fijo a la derecha */
.ap .pctin{position:relative}
.ap .pctin input{padding-right:36px;font-variant-numeric:tabular-nums}
.ap .pctin span{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
