:root{--verde:#132B24;--fondo:#F7F5F0;--cobre:#9E6B3A;--texto:#27231E;--claro:#F0EBE3;--linea:#D8D2C6;--rojo:#B23A48;--ok:#2E6B4F}
*{box-sizing:border-box}
body{margin:0;background:var(--fondo);color:var(--texto);font-family:"DM Sans",system-ui,sans-serif;font-size:17px;line-height:1.4}
main{max-width:1180px;margin:0 auto;padding:16px}
h1,h2{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;margin:0}
h1{font-size:34px}h2{font-size:24px;margin-top:22px}
.barra{background:var(--verde);color:var(--claro);padding:14px 18px;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
.barra .rol{font-family:"Cormorant Garamond",Georgia,serif;font-size:30px;font-weight:600}
.barra .sem{font-size:18px}
.etq{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--cobre);font-weight:700}
.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0}
.tarjeta{border:1px solid var(--linea);border-left:4px solid var(--cobre);background:#FCFBF8;padding:10px 12px}
.tarjeta .num{font-size:38px;font-weight:700;line-height:1.1}
.tarjeta.alerta{border-left-color:var(--rojo)}.tarjeta.alerta .num{color:var(--rojo)}
.pedir{border:2px solid var(--verde);padding:16px;margin:14px 0;background:#FCFBF8}
.pedir label{display:block;font-weight:700;margin-bottom:8px;font-size:20px}
input[type=number],input[type=text],input[type=password],select{font:inherit;font-size:22px;padding:8px 10px;border:1px solid var(--texto);background:#fff;width:160px}
input.ancho{width:100%;font-size:16px}
button{font:inherit;font-weight:700;background:var(--verde);color:var(--claro);border:0;padding:11px 20px;cursor:pointer}
button.sec{background:transparent;color:var(--verde);border:1px solid var(--verde)}
button.peligro{background:var(--rojo)}
button:disabled{opacity:.45;cursor:default}
.fila{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.nota{color:#6B645A;font-size:15px}
.error{color:var(--rojo);font-weight:700}
table{border-collapse:collapse;width:100%;margin-top:8px;font-size:15px}
th{background:var(--verde);color:var(--claro);text-align:right;padding:6px 8px;font-weight:500}
td{border-bottom:1px solid var(--linea);text-align:right;padding:5px 8px}
th:first-child,td:first-child{text-align:left}
.estado{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.estado div{border:1px solid var(--linea);padding:14px;text-align:center;background:#FCFBF8;font-weight:700}
.estado div.listo{background:var(--ok);color:#fff;border-color:var(--ok)}
.estado small{display:block;font-weight:400;font-size:14px}
.gigante{font-family:"Cormorant Garamond",Georgia,serif;font-size:120px;font-weight:600;text-align:center;line-height:1;margin:30px 0 6px}
.centro{text-align:center}
.graf{border:1px solid var(--linea);background:#FCFBF8;padding:10px;margin-top:12px}
.leyenda{display:flex;gap:18px;flex-wrap:wrap;font-size:15px;margin:4px 0 0 46px}
.leyenda i{display:inline-block;width:22px;height:0;border-top:4px solid;vertical-align:middle;margin-right:6px}
details{margin-top:14px}summary{cursor:pointer;font-weight:700}
code{background:#EDE8DE;padding:2px 6px;font-size:14px;word-break:break-all}
@media (max-width:640px){.estado{grid-template-columns:repeat(2,1fr)}.gigante{font-size:80px}.tarjeta .num{font-size:30px}}
