:root{--azul:#14246B;--verde:#0F7A40;--fondo:#F4F6FB;--texto:#1E2A3B;--suave:#4A5568;--borde:#C5CEE3}
*{box-sizing:border-box}
body{margin:0;background:var(--fondo);color:var(--texto);font-family:'Figtree',system-ui,sans-serif;font-size:16px;line-height:1.45}
.top{background:var(--azul);color:#fff}
.top-in{max-width:960px;margin:0 auto;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.mini{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#C9D3F2}
.brand{display:block;font-size:20px;font-weight:700}
.top .enlace{color:#fff}
main{max-width:480px;margin:0 auto;padding:24px 20px 48px}
main.ancho{max-width:960px}
h1{margin:0 0 6px;font-size:26px;line-height:1.2;color:var(--azul)}
h2{margin:22px 0 10px;font-size:19px;color:var(--azul)}
.sub{margin:0 0 10px;color:var(--suave)}
.nota{font-size:13px;color:var(--suave);margin:4px 0}
.stack{display:flex;flex-direction:column;gap:6px}
label{font-size:14px;font-weight:600;margin-top:8px}
input:not([type=checkbox]){height:48px;border:1.5px solid #7A879F;border-radius:10px;padding:0 14px;font:inherit;background:#fff;color:var(--texto)}
input:focus,canvas:focus,button:focus,a:focus{outline:3px solid #7B8FE0;outline-offset:2px}
.fijo{height:48px;display:flex;align-items:center;padding:0 14px;border:1.5px solid var(--borde);border-radius:10px;background:#E8EDF8}
.boton{display:flex;align-items:center;justify-content:center;height:54px;margin-top:14px;border:0;border-radius:12px;background:var(--azul);color:#fff;font:inherit;font-size:17px;font-weight:700;text-decoration:none;cursor:pointer;padding:0 20px}
.boton:disabled{background:var(--borde);color:#3D4A5C;cursor:not-allowed}
.boton.verde{background:var(--verde)}
.enlace{background:none;border:0;padding:4px 0;font:inherit;font-size:14px;font-weight:600;color:var(--azul);text-decoration:underline;cursor:pointer}
.error{background:#FDECEC;border:1px solid #B42318;color:#7A1A12;border-radius:10px;padding:10px 14px}
.aviso-ok{background:#E1F3E8;border:1px solid #0B5C30;border-radius:12px;padding:14px;margin:12px 0}
.liga{word-break:break-all;font-weight:600;background:#fff;border-radius:8px;padding:8px 10px}
.caja{background:#fff;border:1px solid #DDE3F0;border-radius:14px;padding:4px 18px 18px}
.lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.tarjeta{display:flex;justify-content:space-between;gap:12px;background:#fff;border:1px solid #DDE3F0;border-radius:12px;padding:12px 16px}
.der{text-align:right}
.chip{display:inline-block;font-size:13px;font-weight:700;border:1px solid var(--azul);color:var(--azul);background:#E8EDF8;border-radius:999px;padding:2px 10px}
.chip.activo{border-color:#0B5C30;color:#0B5C30;background:#E1F3E8}
.chip.suspendido{border-color:#B42318;color:#7A1A12;background:#FDECEC}
canvas{width:100%;height:auto;aspect-ratio:600/240;background:#fff;border:2px dashed #7A879F;border-radius:12px;touch-action:none;display:block}
.fila{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.check{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid #DDE3F0;border-radius:12px;padding:14px;font-weight:500;margin-top:8px}
.check input{width:22px;height:22px;margin:2px 0 0;flex-shrink:0}
textarea{min-height:90px;border:1.5px solid #7A879F;border-radius:10px;padding:10px 14px;font:inherit;background:#fff;color:var(--texto)}
.cinta{background:#E8EDF8;border:1px solid var(--borde);border-radius:10px;padding:10px 14px;margin-bottom:14px;font-weight:600}
.boton.sec{background:#fff;color:var(--azul);border:2px solid var(--azul)}
.botones{gap:10px}
.botones form{flex:1}
.botones .boton{width:100%}
.datos{margin:14px 0;background:#fff;border:1px solid #DDE3F0;border-radius:12px;padding:6px 16px}
.datos dt{font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--suave);margin-top:10px}
.datos dd{margin:2px 0 8px;font-size:16px;font-weight:600}
.pestanas{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}
.pestana{border:1px solid var(--borde);background:#fff;border-radius:999px;padding:6px 14px;font-weight:600;font-size:14px;color:var(--texto);text-decoration:none}
.pestana.on{background:var(--azul);color:#fff;border-color:var(--azul)}
.tarjeta.resalta{border:2px solid var(--azul)}
.chip.agendada{border-color:var(--texto);color:var(--texto);background:#EEF0F4}
.chip.contactada{border-color:#8A5A00;color:#6B4500;background:#FFF4DB}
