/* ============================================================
   SKANTAP · panel del dueño del local
   ============================================================ */
:root{
  --marca:#B0893C; --ink:#1B1B19; --ink2:#5A5650; --suave:#9A9384;
  --linea:#E6DFCF; --fondo:#F6F2E9; --papel:#FFFDF8;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  background:var(--fondo);color:var(--ink);
  font:15.5px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  min-height:100dvh;display:flex;flex-direction:column;
}

/* ---------- barra ---------- */
.barra{
  background:var(--ink);color:#F6F2E9;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 22px;flex-wrap:wrap;
}
.barra .marca{font:600 15px/1 Georgia,serif;letter-spacing:.28em;color:var(--marca)}
.barra nav{display:flex;gap:18px;flex-wrap:wrap}
.barra a{color:#DAD4C6;text-decoration:none;font-size:14px}
.barra a:hover{color:#fff}
.barra a.salir{color:#9A9384}

main{flex:1;width:100%;max-width:1060px;margin:0 auto;padding:26px 20px 40px}

h1{font:700 27px/1.2 Georgia,serif;letter-spacing:.01em}
h2{font:700 18px/1.3 Georgia,serif;margin-bottom:6px}
.sub{color:var(--ink2);font-size:14.5px;margin-top:5px}
.chico{color:var(--suave);font-size:13px;margin-top:14px;line-height:1.6}

/* ---------- encabezado de página ---------- */
.encabezado{
  display:flex;justify-content:space-between;align-items:flex-end;gap:20px;
  flex-wrap:wrap;margin-bottom:22px;
}
.pin{
  background:var(--papel);border:1px solid var(--linea);border-radius:12px;
  padding:12px 18px;text-align:right;max-width:290px;
}
.pin span{display:block;font-size:11px;letter-spacing:.16em;color:var(--marca);text-transform:uppercase}
.pin b{display:block;font:700 30px/1.1 Georgia,serif;letter-spacing:.14em;margin:3px 0 4px}
.pin small{display:block;font-size:11.5px;color:var(--suave);line-height:1.4}

/* ---------- tarjetas de indicadores ---------- */
.tarjetas{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.kpi{
  background:var(--papel);border:1px solid var(--linea);border-radius:12px;padding:18px 18px 16px;
}
.kpi.destacado{border-color:var(--marca)}
.kpi span{display:block;font-size:12.5px;color:var(--ink2);line-height:1.35;min-height:34px}
.kpi b{display:block;font:700 32px/1.1 Georgia,serif;margin:6px 0 4px}
.kpi small{display:block;font-size:12px;color:var(--suave);line-height:1.4}

/* ---------- cajas ---------- */
.caja{
  background:var(--papel);border:1px solid var(--linea);border-radius:14px;
  padding:24px;margin-bottom:18px;
}
.caja.angosta{max-width:400px;margin:40px auto}
.caja.vacio{text-align:center;padding:48px 24px}

ul.datos{list-style:none;margin-top:14px}
ul.datos li{
  display:flex;justify-content:space-between;gap:16px;
  padding:11px 0;border-top:1px solid var(--linea);font-size:14.5px;
}
ul.datos li span{color:var(--ink2)}

/* ---------- formularios ---------- */
label{display:block;font-size:13px;color:var(--ink2);margin:16px 0 6px}
input{
  width:100%;padding:12px 14px;font:16px inherit;color:var(--ink);
  background:#fff;border:1px solid var(--linea);border-radius:10px;
}
input:focus{outline:none;border-color:var(--marca)}
.btn{
  display:inline-block;padding:12px 20px;margin-top:16px;
  font:600 14.5px/1 inherit;text-align:center;text-decoration:none;
  border:0;border-radius:10px;cursor:pointer;background:var(--ink);color:#fff;
}
.btn.borde{background:transparent;color:var(--ink);border:1px solid var(--linea);font-weight:500}
.btn:hover{opacity:.9}

.alerta{
  background:#FDF6E3;border-left:3px solid #C9A227;border-radius:8px;
  padding:11px 14px;font-size:14px;margin-top:16px;
}
.alerta.mal{background:#FCEFEE;border-left-color:#C0392B}

/* ---------- buscador ---------- */
.buscador{display:flex;gap:10px;align-items:center;margin-bottom:18px;flex-wrap:wrap}
.buscador input{flex:1;min-width:200px}
.buscador .btn{margin-top:0}
.buscador .limpiar{font-size:13px;color:var(--ink2)}

/* ---------- tabla ---------- */
.tabla-envoltorio{
  background:var(--papel);border:1px solid var(--linea);border-radius:14px;overflow:auto;
}
.tabla{width:100%;border-collapse:collapse;font-size:14px;min-width:780px}
.tabla th{
  text-align:left;font:600 11.5px/1 inherit;letter-spacing:.12em;text-transform:uppercase;
  color:var(--suave);padding:15px 16px;border-bottom:1px solid var(--linea);white-space:nowrap;
}
.tabla td{padding:13px 16px;border-bottom:1px solid #F0EADB;vertical-align:middle}
.tabla tr:last-child td{border-bottom:0}
.tabla .num{text-align:right;white-space:nowrap}
.tabla .num small{color:var(--suave);font-size:12px}
.tabla .fono a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--linea)}

.paginas{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.paginas a,.paginas span{
  min-width:34px;text-align:center;padding:7px 9px;border-radius:8px;
  font-size:13.5px;text-decoration:none;color:var(--ink2);border:1px solid var(--linea);
}
.paginas .act{background:var(--ink);color:#fff;border-color:var(--ink)}

.pie{
  text-align:center;font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:#B5AE9D;padding:20px;border-top:1px solid var(--linea);
}

/* ---------- celular ---------- */
@media (max-width:860px){
  .tarjetas{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  main{padding:20px 14px 32px}
  h1{font-size:23px}
  .tarjetas{grid-template-columns:1fr;gap:10px}
  .kpi span{min-height:0}
  .kpi b{font-size:28px}
  .encabezado{align-items:flex-start}
  .pin{text-align:left;max-width:none;width:100%}
  .caja{padding:20px 18px}
}
