/* public/css/style.css */
body.bg{background:#f6f7fa;margin:0;font-family:'Segoe UI',Arial,sans-serif;}
.card{max-width:520px;margin:60px auto;background:#fff;border-radius:13px;box-shadow:0 4px 20px #0002;padding:28px;}
/* NUEVO: card ancho para pantallas con tablas */
.card-wide{max-width:1200px;margin:60px auto;background:#fff;border-radius:13px;box-shadow:0 4px 20px #0002;padding:28px;}
/* NUEVO: contenedor con scroll horizontal si la tabla lo requiere */
.table-wrap{width:100%;overflow-x:auto}

h2{color:#2e5984;margin-top:0}
.alert{border-left:4px solid;padding:10px 14px;border-radius:7px;margin-bottom:12px}
.alert.ok{background:#e9ffe8;border-color:#2ec4b6;color:#176b40}
.alert.err{background:#fff1f1;border-color:#d07c7c;color:#ae2424}
.campo{color:#2e5984;font-weight:600}
.dato{color:#13344d}

.btn{display:inline-block;background:linear-gradient(90deg,#4689c9 60%,#2ec4b6 100%);color:#fff;border-radius:8px;font-size:1em;padding:9px 18px;text-decoration:none;font-weight:600}
.btn:hover{background:linear-gradient(90deg,#2ec4b6 60%,#4689c9 100%)}
.btn.gray{background:#bbb;color:#225}
.btn.info{background:#6b8bd3}
.btn.danger{background:#e64a4a}
.btn.small{padding:6px 10px;font-size:.92em}

.foot{margin-top:24px;color:#bbb;text-align:center;font-size:90%}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.logo{display:block;margin:6px auto 12px auto;max-width:180px;height:auto}

/* ====== tabla estándar ====== */
.table{width:100%;border-collapse:collapse;background:#fff;font-size:.96em;min-width:980px}
.table th,.table td{padding:8px 11px;border:1px solid #dde3ed;text-align:left;vertical-align:top;white-space:nowrap}
.table thead th{background:#eef3fb;color:#255c81;font-weight:600;position:sticky;top:0;z-index:1}
.table tbody tr:nth-child(even){background:#f8fbff}

/* buscador */
.buscador{margin:10px 0 16px}
.buscador input[type="search"]{padding:8px 12px;border-radius:8px;border:1px solid #b6bed2;min-width:260px}

/* helpers */
.mt-1{margin-top:6px}
.mt-2{margin-top:12px}
.mt-3{margin-top:18px}
/* ----- ancho extendido para paneles con tablas grandes ----- */
.card-wide{max-width:1120px;padding:28px}
@media (max-width: 1240px){ .card-wide{max-width:96vw} }

/* tablas cómodas en ancho extendido (sin scroll horizontal) */
.table{width:100%;border-collapse:collapse;background:#fff;font-size:.95em;table-layout:auto}
.table th,.table td{padding:8px 11px;border:1px solid #dde3ed;text-align:left;vertical-align:top;white-space:nowrap}
.table td{word-break:keep-all}
.table thead th{background:#eef3fb;color:#255c81;font-weight:600;position:sticky;top:0;z-index:1}

/* contenedor sin overflow horizontal */
.table-wrap{overflow-x:visible}

/* logo un poco más compacto en modo ancho */
.card-wide .logo{max-width:140px;margin:2px auto 10px}
