:root{--primario: #121212;--dorado: #d4af37;--primario-oscuro: #0b0b0c;--primario-claro: #f3e7bf;--fondo: #faf9f6;--superficie: #ffffff;--texto: #121212;--texto-suave: #5c5c60;--borde: #e3e0d6;--ok: #047857;--ok-fondo: #d1fae5;--aviso: #92400e;--aviso-fondo: #fef3c7;--peligro: #b91c1c;--peligro-fondo: #fee2e2;--info: #1e40af;--info-fondo: #dbeafe;--radio: 12px;--sombra: 0 1px 2px rgb(16 24 40 / 6%), 0 1px 3px rgb(16 24 40 / 10%)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.45;color:var(--texto);background:var(--fondo)}h1{font-size:1.6rem;margin:0 0 4px}h2{font-size:1.15rem;margin:0 0 12px}p{margin:0 0 8px}a{color:var(--primario)}.suave{color:var(--texto-suave)}.pagina{max-width:1180px;margin:0 auto;padding:28px 24px 56px}.cabecera{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.card{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);box-shadow:var(--sombra);padding:20px}.rejilla{display:grid;gap:16px}.rejilla.col-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.rejilla.col-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.btn{appearance:none;border:1px solid var(--borde);background:var(--superficie);color:var(--texto);border-radius:10px;padding:9px 16px;font:inherit;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.btn:hover:not(:disabled){background:#f0f4f3}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primario{background:var(--primario);border-color:var(--primario);color:#fff}.btn.primario:hover:not(:disabled){background:var(--primario-oscuro)}.btn.peligro{color:var(--peligro);border-color:#f3b4b4}.btn.peligro:hover:not(:disabled){background:var(--peligro-fondo)}.btn.chico{padding:5px 10px;font-size:.85rem}.acciones{display:flex;flex-wrap:wrap;gap:8px}label{display:block;font-weight:600;font-size:.85rem;margin-bottom:4px}input:not([type=checkbox]):not([type=file]),select,textarea{width:100%;font:inherit;padding:9px 12px;border:1px solid var(--borde);border-radius:10px;background:#fff;color:var(--texto)}input:focus,select:focus,textarea:focus{outline:2px solid var(--primario-claro);border-color:var(--primario)}.campo{margin-bottom:14px}.campo .error{color:var(--peligro);font-size:.8rem;margin-top:3px}.fila-campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}.verificacion{display:flex;align-items:center;gap:8px;font-weight:500}.tabla-contenedor{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--texto-suave);padding:10px 12px;border-bottom:1px solid var(--borde);white-space:nowrap}td{padding:12px;border-bottom:1px solid #edf1f0;vertical-align:middle}tr:last-child td{border-bottom:none}tbody tr.clic{cursor:pointer}tbody tr.clic:hover{background:#f6faf9}.num{text-align:right;white-space:nowrap}.insignia{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:700;white-space:nowrap}.insignia.ACTIVA,.insignia.APROBADO{background:var(--ok-fondo);color:var(--ok)}.insignia.PENDIENTE,.insignia.EN_PROCESO{background:var(--aviso-fondo);color:var(--aviso)}.insignia.SUSPENDIDA,.insignia.RECHAZADO,.insignia.BAJA{background:var(--peligro-fondo);color:var(--peligro)}.insignia.rol{background:var(--info-fondo);color:var(--info)}.insignia.neutra{background:#e5e7eb;color:#374151}.vacio{text-align:center;padding:40px 16px;color:var(--texto-suave)}.fondo-modal{position:fixed;inset:0;background:#0f17168c;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:var(--superficie);border-radius:16px;width:min(560px,100%);max-height:92vh;overflow:auto;padding:24px;box-shadow:0 20px 40px #00000040}.modal h2{margin-bottom:4px}.modal .pie{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.nota{background:var(--primario-claro);color:var(--primario-oscuro);border-radius:10px;padding:10px 14px;font-size:.9rem}.nota.alerta{background:var(--aviso-fondo);color:var(--aviso)}.nota.peligro{background:var(--peligro-fondo);color:var(--peligro)}.dato{margin-bottom:10px}.dato span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--texto-suave)}@media(max-width:720px){.pagina{padding:16px 14px 40px}}
