
:root{
  --brand-navy:#1B2F5E; --brand-blue:#4A6DB5; --brand-white:#FFFFFF;
  --neutral-100:#F4F6FA; --neutral-200:#E2E6EF; --neutral-300:#CBD2E0; --neutral-400:#A6AEC2;
  --neutral-500:#6B7280; --neutral-600:#525a6b; --neutral-700:#3F4554; --neutral-800:#2A2F3C; --neutral-900:#1A1D26;
  --state-negative:#7C2D2D; --state-positive:#2F6B4F; --state-preliminary:#B97A12;
  --tint-navy:#E7EBF4; --tint-amber:#FBF3E2; --tint-red:#F6EAEA; --tint-green:#E8F1EC;
  --radius:6px; --transition-base:180ms ease-out;
}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:"Avenir Next","Avenir","Century Gothic","URW Gothic","Futura","Inter",system-ui,sans-serif;color:var(--neutral-700);background:#fff;font-size:14px;line-height:1.45}
button{font-family:inherit;font-size:inherit;color:inherit}
a{color:var(--brand-navy)}
:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px;border-radius:4px}
h1,h2,h3{color:var(--brand-navy);margin:0}
.num{font-variant-numeric:tabular-nums}

/* Cabecera del portal */
.top{background:var(--brand-navy);color:#fff}
.top-in{max-width:1480px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.marca{display:flex;flex-direction:column;line-height:1.1}
.marca b{font-size:20px;letter-spacing:.18em;font-weight:700}
.marca span{font-size:10.5px;letter-spacing:.14em;opacity:.8;text-transform:uppercase;margin-top:3px}
.nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}
.nav span{padding:.5rem .9rem;border-radius:.375rem;font-size:.84rem;font-weight:600;opacity:.75}
.nav span.active{background:var(--brand-blue);opacity:1}
.avatar{width:36px;height:36px;border-radius:999px;background:var(--brand-blue);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;border:1.5px solid rgba(255,255,255,.4)}
.demo{font-size:11px;border:1px solid rgba(255,255,255,.45);border-radius:var(--radius);padding:2px 8px;letter-spacing:.04em}

main{max-width:1480px;margin:0 auto;padding:22px 24px 60px}
.miga{font-size:12px;color:var(--neutral-500);margin-bottom:6px}
.cab{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.cab h1{font-size:25px}
.cab p{margin:4px 0 0;color:var(--neutral-600);max-width:760px}
.corte{font-size:12px;color:var(--neutral-500);text-align:right}

.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.kpi{background:#fff;border:1px solid var(--neutral-200);border-radius:var(--radius);padding:.85rem 1rem;text-align:left;transition:box-shadow var(--transition-base)}
button.kpi{cursor:pointer}
button.kpi:hover{box-shadow:0 4px 14px rgba(27,47,94,.10)}
.kpi-l{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--neutral-500)}
.kpi-v{font-size:1.5rem;font-weight:700;color:var(--brand-navy);margin-top:.15rem}
.kpi-s{font-size:11.5px;color:var(--neutral-500);margin-top:2px}
.kpi.aviso{border-left:4px solid var(--state-preliminary)}

.tabs{display:flex;gap:2px;border-bottom:1px solid var(--neutral-200);margin-bottom:16px;flex-wrap:wrap}
.tab{background:none;border:0;padding:10px 14px;font-weight:600;color:var(--neutral-500);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1px}
.tab[aria-selected=true]{color:var(--brand-navy);border-bottom-color:var(--brand-navy)}
.tab .cnt{font-size:11px;background:var(--neutral-100);border-radius:999px;padding:1px 7px;margin-left:5px;color:var(--neutral-600)}
.vista{display:none}.vista.on{display:block}

.barra{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.seg{display:inline-flex;border:1.5px solid var(--brand-navy);border-radius:var(--radius);overflow:hidden}
.seg button{background:#fff;border:0;padding:.5rem 1.15rem;font-weight:700;color:var(--brand-navy);cursor:pointer;min-height:38px}
.seg button[aria-pressed=true]{background:var(--brand-navy);color:#fff}
.buscar{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:.5rem .7rem;min-width:230px;font:inherit;min-height:38px}
select.sel{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:.45rem .5rem;font:inherit;background:#fff;min-height:38px;color:var(--neutral-700)}
label.chk{display:inline-flex;gap:6px;align-items:center;cursor:pointer;user-select:none}
.sp{flex:1}
.resumen-filtro{font-size:12px;color:var(--neutral-500)}

.tabla-w{border:1px solid var(--neutral-200);border-radius:var(--radius);overflow:auto;max-height:68vh;background:#fff}
table{border-collapse:separate;border-spacing:0;width:100%}
table.cons th,table.cons td{border-bottom:1px solid var(--neutral-200);padding:0;height:38px;text-align:center}
table.cons thead th{position:sticky;top:0;background:var(--neutral-100);z-index:3;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--neutral-600);font-weight:700;padding:9px 6px;white-space:nowrap}
table.cons thead th small{display:block;font-weight:500;text-transform:none;letter-spacing:0;color:var(--neutral-500)}
table.cons .c-dni{position:sticky;left:0;background:#fff;z-index:2;text-align:left;padding:0 10px;width:92px;min-width:92px;color:var(--neutral-600)}
table.cons .c-nom{position:sticky;left:92px;background:#fff;z-index:2;text-align:left;padding:0 10px;min-width:250px;border-right:1px solid var(--neutral-200)}
table.cons thead .c-dni,table.cons thead .c-nom{background:var(--neutral-100);z-index:4;text-align:left}
table.cons tfoot td{position:sticky;bottom:0;background:var(--neutral-100);font-weight:700;color:var(--brand-navy);border-top:2px solid var(--neutral-300);z-index:3}
table.cons tfoot .c-dni,table.cons tfoot .c-nom{background:var(--neutral-100);z-index:4}
table.cons tbody tr:hover td{background:#F8FAFD}
table.cons tbody tr:hover .c-dni,table.cons tbody tr:hover .c-nom{background:#F8FAFD}
.nom-btn{background:none;border:0;padding:4px 0;text-align:left;cursor:pointer;color:var(--brand-navy);font-weight:600}
.nom-btn:hover{text-decoration:underline}
.sub{display:block;font-size:11px;color:var(--neutral-500);font-weight:400}
.tag-cese{font-size:10.5px;color:var(--state-negative);border:1px solid #D9BDBD;border-radius:4px;padding:0 5px;margin-left:6px;font-weight:600}
td.mes{min-width:64px}
td.fuera{background:repeating-linear-gradient(135deg,#fff 0 5px,var(--neutral-100) 5px 10px)}
td.cero{color:var(--neutral-300)}
td.tot{font-weight:700;color:var(--brand-navy);min-width:60px;background:#FAFBFD}
.celda{display:inline-flex;gap:4px;align-items:center;justify-content:center;border:0;background:none;cursor:pointer;padding:3px 4px;border-radius:var(--radius)}
.celda:hover{background:var(--tint-navy)}
.pill{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 7px;border-radius:var(--radius);font-weight:700;font-size:13px;border:1.5px solid transparent}
.p-aprobado{background:var(--brand-navy);color:#fff;border-color:var(--brand-navy)}
.p-informado{background:var(--tint-navy);color:var(--brand-navy);border-color:var(--brand-blue)}
.p-sinresp{background:var(--tint-amber);color:#7A4F08;border-color:var(--state-preliminary)}
.p-rechazado{background:#fff;color:var(--state-negative);border-color:var(--state-negative);text-decoration:line-through}
.p-horas{background:#fff;color:var(--neutral-600);border:1.5px dashed var(--neutral-400);font-size:11px;font-weight:600}
.p-duda{background:var(--state-preliminary);color:#fff;border-color:var(--state-preliminary);min-width:22px}

.leyenda{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--neutral-600);margin-top:10px;align-items:center}
.leyenda span{display:inline-flex;gap:6px;align-items:center}
.leyenda .pill{height:20px;min-width:22px;font-size:11px}
.cuad{width:22px;height:20px;border:1px solid var(--neutral-200);border-radius:4px;display:inline-block}

.badge{display:inline-block;font-size:.72rem;font-weight:700;padding:.16rem .6rem;border-radius:var(--radius);white-space:nowrap;border:1.5px solid}
.b-aprobado{background:var(--brand-navy);color:#fff;border-color:var(--brand-navy)}
.b-informado{background:var(--tint-navy);color:var(--brand-navy);border-color:var(--brand-blue)}
.b-sinresp,.b-solicitado{background:var(--tint-amber);color:#7A4F08;border-color:var(--state-preliminary)}
.b-rechazado{background:var(--state-negative);color:#fff;border-color:var(--state-negative)}
.b-ok{background:var(--tint-green);color:var(--state-positive);border-color:var(--state-positive)}
.b-dif{background:var(--tint-red);color:var(--state-negative);border-color:var(--state-negative)}
.b-duda{background:var(--state-preliminary);color:#fff;border-color:var(--state-preliminary)}

/* Panel lateral */
.velo{position:fixed;inset:0;background:rgba(26,29,38,.35);opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:40}
.velo.on{opacity:1;pointer-events:auto}
.panel{position:fixed;top:0;right:0;height:100%;width:min(600px,100%);background:#fff;box-shadow:-12px 0 40px rgba(0,0,0,.18);transform:translateX(100%);transition:transform var(--transition-base);z-index:50;display:flex;flex-direction:column}
.panel.on{transform:none}
.panel-h{background:var(--brand-navy);color:#fff;padding:16px 20px;display:flex;gap:12px;align-items:flex-start}
.panel-h h2{color:#fff;font-size:18px}
.panel-h p{margin:3px 0 0;font-size:12.5px;opacity:.85}
.panel-h .x{margin-left:auto;background:rgba(255,255,255,.14);border:0;color:#fff;width:34px;height:34px;border-radius:var(--radius);cursor:pointer;font-size:18px;line-height:1}
.panel-b{padding:16px 20px 40px;overflow:auto;flex:1}
.reg{border:1px solid var(--neutral-200);border-radius:var(--radius);margin-bottom:14px;overflow:hidden}
.reg-h{padding:11px 14px;display:flex;gap:10px;align-items:flex-start;background:var(--neutral-100)}
.reg-h .t{font-weight:700;color:var(--brand-navy)}
.reg-h .f{font-size:12.5px;color:var(--neutral-600)}
.reg-h .d{margin-left:auto;text-align:right;white-space:nowrap}
.reg-h .d b{font-size:20px;color:var(--brand-navy);display:block;line-height:1.1}
.reg-h .d small{font-size:11px;color:var(--neutral-500)}
.reg-b{padding:12px 14px}
.nota{font-size:12.5px;color:var(--neutral-600);background:#FBFCFE;border-left:3px solid var(--neutral-300);padding:7px 10px;margin:0 0 10px;border-radius:0 4px 4px 0}
.ev{border-top:1px solid var(--neutral-200);padding:10px 0 2px}
.ev:first-of-type{border-top:0;padding-top:2px}
.ev-rol{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--neutral-500);font-weight:700}
.ev q{display:block;quotes:"«" "»";font-size:14px;color:var(--neutral-900);margin:4px 0 6px;padding-left:10px;border-left:3px solid var(--brand-blue)}
.ev-meta{font-size:12px;color:var(--neutral-600)}
.ev-meta b{color:var(--neutral-800);font-weight:600}
.ev-acc{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;font-size:12.5px}
.lnk{background:none;border:0;padding:0;color:var(--brand-navy);font-weight:600;cursor:pointer;border-bottom:1px solid currentColor;text-decoration:none}
.lnk:hover{color:var(--brand-blue)}
.correo{white-space:pre-wrap;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;background:var(--neutral-100);border-radius:var(--radius);padding:10px;margin-top:8px;color:var(--neutral-800);max-height:260px;overflow:auto;display:none}
.correo.on{display:block}
.erp-l{display:flex;gap:8px;align-items:center;font-size:12.5px;margin:0 0 14px;padding:9px 12px;border:1px solid var(--neutral-200);border-radius:var(--radius)}
.sec-t{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--neutral-500);font-weight:700;margin:20px 0 8px}
.ficha{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:6px}
.ficha div{border:1px solid var(--neutral-200);border-radius:var(--radius);padding:8px 10px}
.ficha small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--neutral-500)}
.ficha b{color:var(--brand-navy);font-size:14px}

/* Calendario del trabajador */
.cal{display:grid;grid-template-columns:34px repeat(31,1fr);gap:2px;font-size:10px;align-items:center}
.cal .m{color:var(--neutral-500);font-weight:600;text-transform:uppercase;font-size:10px}
.cal .hd{color:var(--neutral-400);text-align:center}
.dia{aspect-ratio:1;border-radius:3px;background:var(--neutral-100);border:0;padding:0;min-width:0}
.dia.fds{background:var(--neutral-200)}
.dia.no{background:transparent}
.dia.out{background:repeating-linear-gradient(135deg,#fff 0 2px,var(--neutral-200) 2px 4px)}
.dia.v{background:var(--brand-navy);cursor:pointer}
.dia.p{background:var(--brand-blue);cursor:pointer}
.dia.h{background:#fff;border:1.5px dashed var(--brand-blue);cursor:pointer}
.dia.r{background:#fff;border:1.5px solid var(--state-negative);cursor:pointer}
.cal-ley{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--neutral-600);margin-top:8px}
.cal-ley i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-right:5px}

/* Tarjetas y tablas simples */
.card{border:1px solid var(--neutral-200);border-radius:var(--radius);padding:14px 16px;margin-bottom:12px;background:#fff}
.card h3{font-size:15px}
.card .quien{font-size:12.5px;color:var(--neutral-600);margin:2px 0 8px}
.lect{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}
.lect div{border:1px dashed var(--state-preliminary);border-radius:var(--radius);padding:8px 10px;background:var(--tint-amber);font-size:12.5px;color:#5E3D06}
.lect small{display:block;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700;margin-bottom:2px}
table.simple th{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--neutral-600);text-align:left;padding:9px 10px;background:var(--neutral-100);border-bottom:1px solid var(--neutral-200)}
table.simple td{padding:9px 10px;border-bottom:1px solid var(--neutral-200);vertical-align:top}
table.simple td.n{text-align:right;font-weight:700;color:var(--brand-navy)}
table.simple th.n{text-align:right}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.explica{background:var(--neutral-100);border-left:4px solid var(--brand-blue);border-radius:0 var(--radius) var(--radius) 0;padding:12px 14px;margin-bottom:14px}
.explica b{color:var(--brand-navy)}
.explica ul{margin:6px 0 0;padding-left:18px}
.vacio{padding:26px;text-align:center;color:var(--neutral-500)}
footer{background:var(--brand-navy);color:rgba(255,255,255,.8);font-size:11.5px;padding:14px 24px;text-align:center}

.logo{display:block;width:auto;filter:brightness(0) invert(1)}
.logo-top{height:42px}
.logo-login{height:64px;margin-bottom:22px}
/* Ingreso */
.login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--brand-navy) 0%,#142548 100%);padding:24px}
.login-card{background:#fff;border-radius:10px;padding:30px 30px 24px;width:min(420px,100%);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.login-card .marca{color:var(--brand-navy);margin-bottom:18px}
.login-card h1{font-size:19px;margin-bottom:4px}
.login-card p{margin:0 0 16px;color:var(--neutral-600);font-size:13px}
.campo{display:block;margin-bottom:12px;font-size:12px;font-weight:600;color:var(--neutral-600)}
.campo input,.campo select,.campo textarea{display:block;width:100%;margin-top:4px;border:1px solid var(--neutral-300);border-radius:var(--radius);padding:.55rem .7rem;font:inherit;color:var(--neutral-800);background:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-size:.875rem;font-weight:600;padding:.5rem 1rem;border-radius:var(--radius);min-height:38px;cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base)}
.btn-primary{background:var(--brand-navy);color:#fff;border:1.5px solid var(--brand-navy)}
.btn-primary:hover{background:#14264D}
.btn-secondary{background:transparent;color:var(--brand-navy);border:1.5px solid var(--brand-navy)}
.btn-secondary:hover{background:var(--brand-navy);color:#fff}
.btn-mini{min-height:30px;padding:.25rem .7rem;font-size:.78rem}
.login-err{color:var(--state-negative);font-size:12.5px;min-height:18px;margin:2px 0 8px}
.login-demo{border-top:1px solid var(--neutral-200);margin-top:16px;padding-top:14px}
.login-demo small{display:block;color:var(--neutral-500);margin-top:6px;font-size:11.5px}
.salir{background:rgba(255,255,255,.14);border:0;color:#fff;border-radius:var(--radius);padding:.45rem .8rem;font-weight:600;cursor:pointer;font-size:.8rem}
.quien-top{font-size:12px;text-align:right;line-height:1.2}
.quien-top b{display:block;font-size:13px}
.app{display:none}.app.on{display:block}
/* Portal del trabajador */
.hero{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}
.hero h1{font-size:24px}
.hero p{margin:3px 0 0;color:var(--neutral-600)}
.saldo{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:12px;margin-bottom:10px}
.saldo .kpi.principal{background:var(--brand-navy);border-color:var(--brand-navy)}
.saldo .kpi.principal .kpi-l,.saldo .kpi.principal .kpi-s{color:rgba(255,255,255,.8)}
.saldo .kpi.principal .kpi-v{color:#fff;font-size:2.1rem}
.barra-saldo{height:8px;border-radius:999px;background:var(--neutral-200);overflow:hidden;margin:0 0 4px}
.barra-saldo i{display:block;height:100%;background:var(--brand-blue)}
.barra-txt{font-size:11.5px;color:var(--neutral-500);margin-bottom:18px}
.dos{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:start}
.sol{border:1px solid var(--neutral-200);border-radius:var(--radius);margin-bottom:10px;background:#fff}
.sol-h{display:flex;gap:12px;align-items:center;padding:11px 14px}
.sol-h .ic{width:36px;height:36px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex:none}
.ic.v{background:var(--brand-navy);color:#fff}.ic.p{background:var(--tint-navy);color:var(--brand-navy)}
.sol-h .tx{flex:1;min-width:0}
.sol-h .tx b{color:var(--brand-navy);display:block}
.sol-h .tx span{font-size:12.5px;color:var(--neutral-600)}
.sol-h .dd{text-align:right;white-space:nowrap;font-weight:700;color:var(--brand-navy)}
.sol-b{display:none;border-top:1px solid var(--neutral-200);padding:12px 14px}
.sol.on .sol-b{display:block}
.sol-acc{display:flex;gap:8px;align-items:center}
.demo-tag{font-size:10.5px;border:1px dashed var(--neutral-400);border-radius:4px;padding:0 5px;color:var(--neutral-600);margin-left:6px}
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:60;background:rgba(26,29,38,.45);padding:20px}
.modal.on{display:flex}
.modal-c{background:#fff;border-radius:10px;padding:22px;width:min(460px,100%)}
.modal-c h2{font-size:18px;margin-bottom:12px}
.fila2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.aviso-demo{font-size:11.5px;color:var(--neutral-500);margin:4px 0 12px}
.sec-h{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.sec-h h2{font-size:16px}
td.saldo-c{min-width:74px;font-weight:700;color:var(--state-positive);background:#FAFBFD}
@media (max-width:1000px){.saldo{grid-template-columns:1fr 1fr}.dos{grid-template-columns:1fr}}
@media (max-width:1000px){.kpis{grid-template-columns:repeat(2,1fr)}.grid2,.lect{grid-template-columns:1fr}.ficha{grid-template-columns:repeat(2,1fr)}}

/* --- propios de la aplicación --- */
.aviso{padding:10px 14px;border-radius:var(--radius);margin-bottom:14px;font-weight:600;border:1px solid}
.aviso.ok{background:var(--tint-green);color:var(--state-positive);border-color:var(--state-positive)}
.aviso.error{background:var(--tint-red);color:var(--state-negative);border-color:var(--state-negative)}
.nav a{padding:.5rem .9rem;border-radius:.375rem;font-size:.84rem;font-weight:600;color:#fff;text-decoration:none;opacity:.85}
.nav a:hover{background:rgba(255,255,255,.14);opacity:1}
.nav a.active{background:var(--brand-blue);opacity:1}
.nav .cnt{background:#fff;color:var(--brand-navy);border-radius:999px;padding:0 6px;font-size:11px;margin-left:4px}
.top form{margin:0}
.b-retirado{background:var(--neutral-100);color:var(--neutral-600);border-color:var(--neutral-300)}
a.celda{text-decoration:none}
a.nom-btn{text-decoration:none;display:inline-block}
a.btn{text-decoration:none}
a.kpi{text-decoration:none;display:block}
.seg a{background:#fff;padding:.5rem 1.15rem;font-weight:700;color:var(--brand-navy);min-height:38px;display:inline-flex;align-items:center;text-decoration:none}
.seg a[aria-current=true]{background:var(--brand-navy);color:#fff}
.tabs a.tab{text-decoration:none;display:inline-block}
.tabs a.tab[aria-current=page]{color:var(--brand-navy);border-bottom-color:var(--brand-navy)}
a.dia{display:block}
details.sol>summary{list-style:none;cursor:pointer}
details.sol>summary::-webkit-details-marker{display:none}
details.sol[open] .sol-b{display:block}
details.sol[open] .abre::after{content:"Ocultar respaldo"}
details.sol:not([open]) .abre::after{content:"Ver respaldo"}
.abre{color:var(--brand-navy);font-weight:600;border-bottom:1px solid currentColor;font-size:12.5px;white-space:nowrap}
details.correo-d>summary{cursor:pointer;color:var(--brand-navy);font-weight:600;font-size:12.5px;display:inline-block;border-bottom:1px solid currentColor;list-style:none}
details.correo-d>summary::-webkit-details-marker{display:none}
details.correo-d .correo{display:block}
.form-nueva{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;align-items:end}
.form-nueva .ancho{grid-column:1/-1}
.resp-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.resp-form input[type=text]{border:1px solid var(--neutral-300);border-radius:var(--radius);padding:.35rem .5rem;font:inherit;min-width:160px}
.centro{max-width:560px;margin:40px auto;padding:0 16px}
.marco-correo{border:1px solid var(--neutral-200);border-radius:var(--radius);overflow:hidden}
.panel-b .carga{padding:30px;text-align:center;color:var(--neutral-500)}
.acciones{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.btn-rojo{background:#fff;color:var(--state-negative);border:1.5px solid var(--state-negative)}
.btn-rojo:hover{background:var(--state-negative);color:#fff}
@media (max-width:1000px){.form-nueva{grid-template-columns:1fr}}
