/* Baleal · panel › Enlace › Material para imprimir */
.ecols2{display:flex;flex-direction:column;gap:18px}
.imp-wrap{gap:18px}
.imp-h h2{margin:0}
.imp-h .sub{margin:4px 0 0}
.imp{display:flex;flex-direction:column;gap:18px;min-width:0}
.imp [hidden]{display:none!important}
.imp-load,.imp-err{margin:0;font-size:14px;color:var(--muted)}

/* vista previa: la pieza sobre una "mesa" neutra, a escala */
.imp-pv{display:flex;flex-direction:column;gap:10px;min-width:0}
.imp-stage{background:var(--c-hair);border-radius:18px;padding:22px 16px;display:grid;place-items:center;min-height:240px}
.imp-stage svg,.imp-png{display:block;height:auto;box-shadow:0 1px 2px rgba(11,11,13,.12),0 18px 34px -22px rgba(11,11,13,.55);background:#fff}
.imp-stage[data-fmt=a6] svg,.imp-stage[data-fmt=a4] svg{width:min(100%,300px)}
.imp-stage[data-fmt=et] svg{width:min(70%,220px);border-radius:2px}
.imp-png{width:min(80%,260px);border-radius:8px}
.imp-cap{margin:0;font-size:13px;color:var(--muted);text-align:center}

/* controles */
.imp-f{display:flex;flex-direction:column;gap:18px;min-width:0}
.imp-f .lbl{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:8px}
.imp-tpls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.imp-tpl{appearance:none;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 8px 10px;border-radius:16px;border:1.5px solid var(--line);background:var(--bg);font-family:inherit;color:var(--body);cursor:pointer;min-height:44px;transition:border-color .15s,box-shadow .15s,transform .16s cubic-bezier(.23,1,.32,1)}
.imp-tpl b{font-size:13px;font-weight:700;color:var(--ink);text-align:center}
.imp-th{display:grid;place-items:center;width:100%;aspect-ratio:105/120;background:var(--c-hair);border-radius:10px;padding:8px}
.imp-th svg{display:block;height:100%;width:auto;max-width:100%;box-shadow:0 8px 14px -10px rgba(11,11,13,.5)}
.imp-th[data-fmt=et] svg{height:auto;width:72%}
.imp-tpl[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.imp-tpl:active{transform:scale(.97)}
.imp-tpl:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
.imp-fmts{display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:row}
.imp-fmts .seg-b{min-height:56px;text-align:center}
.imp-fmts .seg-b span{display:flex;flex-direction:column;gap:1px}
.imp-fmts .seg-b small{font-size:11.5px;font-weight:500;color:var(--muted)}
.imp-help{margin:8px 0 0;font-size:13px;color:var(--muted)}
#imp-tx{display:flex;flex-direction:column;gap:12px}
#imp-tx .lbl{margin-bottom:-2px}
.imp-lb{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}
.imp-lb small{font-weight:500;color:var(--muted)}
.imp-lb select{width:100%;min-height:48px;padding:12px;border-radius:14px;border:1.5px solid var(--line);background:var(--soft2);font-size:15px;color:var(--ink);font-family:inherit}
.imp-pasos{display:flex;flex-direction:column;gap:12px}
.imp-chk{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;gap:10px;min-height:44px;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}
.imp-chk small{font-weight:500;color:var(--muted)}
.imp-dom{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--body);background:var(--soft);border-radius:14px;padding:12px 14px}
.imp-dom svg{width:16px;height:16px;flex:none;margin-top:2px}
.imp-dom b{color:var(--ink);overflow-wrap:anywhere}
.imp-dom.warn{background:var(--c-warn-bg2);border:1px solid var(--c-warn-line);color:var(--c-warn-t2)}
.imp-dom.warn b{color:var(--c-warn-t2)}
#imp-bajar svg{width:18px;height:18px}
@media (hover:hover) and (pointer:fine){.imp-tpl:hover{border-color:var(--ink)}}

@media (min-width:700px){
  .imp-tpls{grid-template-columns:repeat(5,minmax(0,1fr))}
  .imp-fmts{display:flex}
}
@media (min-width:1180px){
  .ecols2{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
  .imp{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,440px);gap:28px;align-items:start}
  .imp-pv{order:2;position:sticky;top:24px}
  .imp-stage{min-height:520px}
  .imp-stage[data-fmt=a6] svg,.imp-stage[data-fmt=a4] svg{width:min(100%,340px)}
}
@media (prefers-reduced-motion:reduce){.imp-tpl{transition:none}}
