/* Registros de APPCC: configuración, vista previa y hojas A4. */
.rej-r{display:grid;gap:18px;grid-template-columns:1fr;align-items:start}
@media(min-width:980px){.rej-r{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}}
.conf{padding:20px;display:grid;gap:18px;min-width:0}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:420px){.dos{grid-template-columns:1fr}}
.hojas-sel{display:grid;grid-template-columns:1fr;gap:6px}
@media(min-width:520px){.hojas-sel{grid-template-columns:1fr 1fr}}
.hojas-sel button{font:inherit;text-align:left;display:grid;gap:2px;min-height:48px;padding:10px 14px;border-radius:12px;border:1px solid var(--linea);background:#fff;color:var(--tinta);cursor:pointer}
.hojas-sel button b{font-weight:600;font-size:15px}
.hojas-sel button span{font-size:12.5px;color:var(--gris2)}
.hojas-sel button[aria-pressed=true]{background:var(--tinta);border-color:var(--tinta);color:#fff}
.hojas-sel button[aria-pressed=true] span{color:#C9D3C8}
.bloque{display:grid;gap:12px;border-top:1px solid var(--linea2);padding-top:16px;min-width:0}
.bloque h3{margin:0;font-size:16px;font-weight:600}
.lista-ed{display:grid;gap:8px;min-width:0}
.item-ed{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 40px;align-items:end;border:1px solid var(--linea2);border-radius:12px;padding:10px;background:#fff}
.item-ed .campos{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
.item-ed .campos .ancho{grid-column:1/-1}
@media(min-width:620px){.item-ed .campos.c4{grid-template-columns:minmax(0,2fr) minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr)}.item-ed .campos.c4 .ancho{grid-column:auto}}
.item-ed label{font-size:12.5px;color:var(--gris);font-weight:500;display:grid;gap:4px}
.item-ed input,.item-ed select{min-height:42px;padding:8px 10px;font-size:15px;min-width:0}
.quitar{width:40px;height:40px;border:0;background:none;color:var(--gris2);font-size:22px;cursor:pointer;border-radius:10px}
.quitar:hover{background:var(--malfondo);color:var(--mal)}
.aviso-ley{font-size:14px;border-radius:12px;padding:12px 14px;background:var(--avisofondo);color:#5F4200;margin:0}
.vista{padding:18px;display:grid;gap:12px;min-width:0;position:sticky;top:76px}
@media(max-width:979px){.vista{position:static}}
.vista .cab-v{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center}
.vista .acc{display:flex;flex-wrap:wrap;gap:8px}
.marco{min-width:0;display:grid;gap:14px;justify-items:center;background:var(--suave);border-radius:12px;padding:14px}
.vp-caja{position:relative;overflow:hidden;box-shadow:0 10px 30px -14px rgba(0,0,0,.35);background:#fff}
.vp-caja>.hoja{position:absolute;left:0;top:0;transform-origin:0 0}
.vp-mas{font-size:13.5px;color:var(--gris);margin:0}

/* ---------- Hojas A4 ---------- */
#hojas{display:none}
.medidor{position:fixed;left:-20000px;top:0;visibility:hidden;pointer-events:none}
.hoja{width:210mm;height:296.6mm;background:#fff;color:#141414;position:relative;overflow:hidden;display:flex;flex-direction:column;padding:10mm 11mm 7mm;font-family:'Inter',ui-sans-serif,system-ui,sans-serif;font-size:9pt;line-height:1.25;box-sizing:border-box;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.hoja.apa{width:297mm;height:209.6mm}
.hoja *{box-sizing:border-box}
.hoja .cuerpo{flex:1;min-height:0;overflow:hidden}
.hoja .pie-h{font-size:6.8pt;color:#777;display:flex;justify-content:space-between;gap:4mm;border-top:.25mm solid #ccc;padding-top:1.4mm;margin-top:2mm;flex:none}
.hoja .cab-h{display:grid;grid-template-columns:1fr auto;gap:2mm 8mm;align-items:end;border-bottom:.5mm solid #141414;padding-bottom:2.2mm;margin-bottom:2.6mm;flex:none}
.hoja .cab-h .tit{font-size:15pt;font-weight:600;letter-spacing:-.01em;line-height:1.1;margin:0}
.hoja .cab-h .loc{font-size:10pt;margin:.6mm 0 0;color:#333}
.hoja .cab-h .dcha{text-align:right;font-size:8.5pt;color:#333;display:grid;gap:1mm}
.hoja .cab-h .dcha b{font-size:12pt;color:#141414}
.hoja .linea-f{display:inline-block;min-width:48mm;border-bottom:.25mm solid #555;height:4mm;vertical-align:bottom}
.hoja .sub-h{font-size:8pt;color:#333;margin:0 0 2mm;flex:none}
table.reg{width:100%;border-collapse:collapse;table-layout:fixed}
table.reg th{font-size:7.2pt;font-weight:600;line-height:1.12;padding:1.2mm 1mm;border:.25mm solid #333;background:#efefec;text-align:center;vertical-align:middle}
table.reg th small{display:block;font-weight:400;font-size:6.6pt;color:#333;margin-top:.4mm}
table.reg td{border:.25mm solid #777;height:6.3mm;padding:0 1mm;font-size:8pt;vertical-align:middle}
table.reg td.dia{text-align:center;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
table.reg td.dia i{font-style:normal;font-weight:400;color:#666;margin-left:1mm;font-size:7pt}
table.reg tr.finde td.dia{background:#f4f4f1}
table.reg td.cerr{background:repeating-linear-gradient(135deg,#eee 0 1.2mm,#fff 1.2mm 2.4mm)}
table.reg td.no{background:#e6e6e3}
table.reg td.op{font-size:6.8pt;color:#444;text-align:center;white-space:nowrap;line-height:1.15}
table.reg td.tarea{font-weight:500;font-size:8pt;line-height:1.15}
table.reg td.peq{font-size:7pt;color:#333;line-height:1.1}
table.reg.alto td{height:8.6mm}
table.reg.limp td{height:8.2mm;padding:0 .8mm}
table.reg.limp th.d{font-size:6.8pt;padding:.8mm 0}
table.reg.limp th.d i{display:block;font-style:normal;font-weight:400;font-size:6pt;color:#555}
.notas-h{flex:none;margin-top:2.4mm;display:grid;grid-template-columns:1fr 1fr;gap:2mm 6mm;font-size:7.4pt;color:#222;line-height:1.3}
.notas-h.una{grid-template-columns:1fr}
.notas-h p{margin:0}
.notas-h b{font-weight:600}
.vida{flex:none;margin-top:2.4mm;font-size:7.6pt;border:.25mm solid #777;padding:1.6mm 2mm;display:flex;flex-wrap:wrap;gap:1mm 5mm}
.vida b{width:100%}

@media print{
  @page{size:A4 portrait;margin:0}
  @page apa{size:A4 landscape;margin:0}
  html,body{background:#fff!important}
  body>#hojas{display:block!important}
  #hojas .hoja{break-after:page;height:296.6mm}
  #hojas .hoja.apa{page:apa;height:209.6mm}
  #hojas .hoja:last-child{break-after:auto}
}

/* Toque cómodo en móvil */
.btn.peq{min-height:40px}
