:root{
  --brand:#19B2F4; --brand-700:#0E86B8;
  --gold-700:#B45309;
  --success:#22C55E; --text:#0F172A; --muted:#64748B;
  --bg:#F8FAFC; --border:#E2E8F0;
}


    
    body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Arial;background:var(--bg);color:var(--text);margin:0}
    header{background:linear-gradient(135deg,var(--brand),var(--brand-700));color:#fff;padding:20px 0;box-shadow:0 8px 24px rgba(2,6,23,.08)}
    .container{max-width:1200px;margin:0 auto;padding:0 16px}
    .card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px;margin:18px auto;box-shadow:0 1px 2px rgba(0,0,0,.05)}

    /* Celdas */
    #miTabla th, #miTabla td { vertical-align: middle; }
    table.dataTable tbody td{ white-space: normal; word-break: break-word; overflow-wrap: anywhere; }

    /* --- Mínimos por columna (no fuerzan desbordes) --- */
    /* (0) Empresa: siempre visible con buen mínimo */
    #miTabla td:nth-child(1), #miTabla th:nth-child(1){
      min-width: 180px; max-width: 250px;
      white-space: normal; word-break: break-word; overflow-wrap: anywhere;
    }
    /* (1) Dirección */
    #miTabla td:nth-child(2), #miTabla th:nth-child(2){ min-width: 100px; }
    /* (2) Celular: ancho cómodo + no cortar botón */
    #miTabla td:nth-child(3), #miTabla th:nth-child(3){
      min-width: 120px; white-space: nowrap;
    }
    /* (3) Datos */
    #miTabla td:nth-child(4), #miTabla th:nth-child(4){ max-width: 620px; }

    .muted{color:var(--muted)}
    .btn-wa{display:inline-flex;align-items:center;gap:8px;background:var(--success);color:#fff;padding:8px 10px;border-radius:10px;text-decoration:none;font-weight:700;white-space:nowrap}
    .btn-wa:hover{filter:brightness(.92)}
    .chip-link{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid var(--brand);color:var(--brand-700);text-decoration:none}
    .chip-link:hover{background:rgba(25,178,244,.12)}
    .socials a{margin-right:10px;color:var(--text)}
    .socials a:hover{color:var(--brand)}
    caption{caption-side:top;text-align:left;color:var(--muted);padding:6px 0 12px}

    /* Ícono + / − dorado (control responsive en Empresa) */
    table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before{
      content:"+"; color:var(--gold-700); background:#fff; border:2px solid var(--gold-700);
      border-radius:50%; width:1.5em; height:1.5em; line-height:1.3em; text-align:center; font-weight:900;
      top:54%; transform:translateY(-10%); box-shadow:none;
    }
    table.dataTable.dtr-inline.collapsed > tbody > tr.parent td.dtr-control:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr.parent th.dtr-control:before{
      content:"−"; color:#fff; background:var(--gold-700); border-color:var(--gold-700);
    }

    /* Filtros por columna en tfoot */
    #miTabla tfoot th { padding: 6px 4px; }
    #miTabla tfoot input {
      width:100%; padding:8px; border:1px solid var(--border); border-radius:8px; font:inherit;
    }

    /* Toolbar DataTables */
    .dt-toolbar { display:flex; align-items:center; gap:12px; justify-content:space-between; margin-bottom:10px; }
    .dataTables_filter input { border:1px solid var(--border); border-radius:8px; padding:8px; }
    .dataTables_length select { border:1px solid var(--border); border-radius:8px; padding:6px; }
    .dataTables_info { color:var(--muted); }

    /* Ajuste de padding para evitar “apriete” */
    #miTabla.dataTable tbody td, #miTabla.dataTable thead th { padding-left:10px; padding-right:10px; }

    /* En móviles, relajar mínimos si hace falta */
    @media (max-width: 768px){
      #miTabla td:nth-child(1), #miTabla th:nth-child(1){ min-width: 200px; }
      #miTabla td:nth-child(2), #miTabla th:nth-child(2){ min-width: 200px; }
      #miTabla td:nth-child(3), #miTabla th:nth-child(3){ min-width: 130px; }
    }


