/* ============ SALA DE FIRMAS (sala.js) ============ */
.sala{position:fixed;inset:0;z-index:110;background:var(--bg);overflow:auto}
.sala-in{max-width:1200px;margin:0 auto;padding:16px 16px 60px;display:flex;flex-direction:column;gap:12px}
.sala-h{display:flex;align-items:center;gap:14px}
.sala-h b{display:block;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:28px;line-height:1.05}
.sala-h small{color:var(--muted);font-size:13px;letter-spacing:.04em}
.sala-h .back{margin-left:auto}
.sala-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sala-nav b{font-family:var(--f-display);font-weight:600;text-transform:uppercase;font-size:18px;min-width:220px;text-align:center}
.sala-nav .pf-btn{min-width:44px;min-height:44px;justify-content:center}
.sala-ayuda{margin:0;color:var(--muted);font-size:14px}
.sala-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.sala-grid{display:grid;grid-template-columns:52px repeat(5,minmax(110px,1fr));grid-template-rows:auto repeat(var(--filas,16),36px);gap:3px 6px;min-width:620px}
.sala-esq{grid-column:1;grid-row:1}
.sala-dh{grid-row:1;font-family:var(--f-display);font-weight:600;text-transform:uppercase;font-size:15px;letter-spacing:.04em;background:#000;border-radius:10px;padding:8px 10px;text-align:center}
.sala-dh b{font-size:20px;margin-left:4px}
.sala-dh.hoy{background:var(--red)}
.sala-dh.fer{color:#ff8a8a;text-decoration:line-through}
.sala-hr{grid-column:1;font-size:12px;color:var(--muted);text-align:right;padding-right:4px;transform:translateY(-7px)}
.sala-sl{border:1px solid var(--line);border-radius:8px;background:#141010;color:transparent;font-size:12px;display:flex;align-items:center;justify-content:center;transition:background .12s,border-color .12s}
.sala-sl:hover,.sala-sl:focus-visible{background:rgba(63,227,107,.12);border-color:var(--green);color:var(--fg)}
.sala-sl.pasado{background:repeating-linear-gradient(135deg,#0d0b0b 0 6px,#151111 6px 12px);border-color:transparent}
.sala-res{z-index:1;border-radius:10px;background:#2a2323;border:1.5px solid #5c4f4f;padding:4px 8px;text-align:left;display:flex;flex-direction:column;justify-content:center;overflow:hidden;min-width:0}
.sala-res b{font-size:13px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sala-res span{font-size:12px;color:var(--muted);line-height:1.2;overflow:hidden}
.sala-res.mia{background:rgba(211,18,26,.22);border-color:var(--red)}
.sala-fer{border:1.5px solid var(--red);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:10px;color:#ff8a8a;
  background:linear-gradient(to top right,transparent calc(50% - 2px),rgba(211,18,26,.35) calc(50% - 2px),rgba(211,18,26,.35) calc(50% + 2px),transparent calc(50% + 2px)),
  linear-gradient(to bottom right,transparent calc(50% - 2px),rgba(211,18,26,.35) calc(50% - 2px),rgba(211,18,26,.35) calc(50% + 2px),transparent calc(50% + 2px)),rgba(211,18,26,.18)}
.sala-fer b{font-family:var(--f-display);text-transform:uppercase;font-size:18px}
.sala-fer span{font-size:13px;background:rgba(0,0,0,.6);border-radius:6px;padding:2px 6px}
.sala-t{font-family:var(--f-display);font-weight:600;text-transform:uppercase;font-size:16px;letter-spacing:.06em;margin:8px 0 0;color:var(--cream)}
.sala-mias{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.sala-mias li{display:flex;align-items:center;gap:12px;justify-content:space-between;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 12px;font-size:14px}
.pf-sheet{z-index:130}
