/* «Imprime tu libro» y la librería: mismos colores y letras que «Diseña e imprime». */
@font-face{font-family:"Archivo";src:url(fuentes/archivo-n.woff2) format("woff2");font-weight:100 650;font-display:swap}
@font-face{font-family:"Archivo";src:url(fuentes/archivo-b.woff2) format("woff2");font-weight:651 1000;font-display:swap}
@font-face{font-family:"Archivo Black";src:url(fuentes/archivoblack.woff2) format("woff2");font-weight:100 1000;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url(fuentes/baskerville-n.woff2) format("woff2");font-weight:100 650;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url(fuentes/baskerville-b.woff2) format("woff2");font-weight:651 1000;font-display:swap}
@font-face{font-family:"Dancing Script";src:url(fuentes/dancing-n.woff2) format("woff2");font-weight:100 650;font-display:swap}
@font-face{font-family:"Dancing Script";src:url(fuentes/dancing-b.woff2) format("woff2");font-weight:651 1000;font-display:swap}
@font-face{font-family:"Courier Prime";src:url(fuentes/courier-n.woff2) format("woff2");font-weight:100 650;font-display:swap}
@font-face{font-family:"Courier Prime";src:url(fuentes/courier-b.woff2) format("woff2");font-weight:651 1000;font-display:swap}
:root{
  --bg:#f7f4f8; --surface:#ffffff; --ink:#1d1a22; --muted:#6b6573; --line:#e6e0ea;
  --accent:#d62779; --accent-ink:#ffffff; --accent-soft:#fbe3ee; --ok:#2e9e5b; --warn:#b5651d; --warn-soft:#fdf0e3; --mesa:#ece8ef;
  --f-display:"Lilita One","Arial Rounded MT Bold",system-ui,sans-serif;
  --f-body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#17141b; --surface:#221e27; --ink:#f3eff6; --muted:#a79fb0; --line:#352f3c;
  --accent:#ff4f9a; --accent-ink:#1b0710; --accent-soft:#3a1b2a; --ok:#4cc483; --warn:#f0a35c; --warn-soft:#3a2a1a; --mesa:#2b2631; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#17141b; --surface:#221e27; --ink:#f3eff6; --muted:#a79fb0; --line:#352f3c;
  --accent:#ff4f9a; --accent-ink:#1b0710; --accent-soft:#3a1b2a; --ok:#4cc483; --warn:#f0a35c; --warn-soft:#3a2a1a; --mesa:#2b2631; color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.45}
.wrap{max-width:1180px;margin:0 auto;padding-inline:16px;padding-block:18px 40px}
header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.brand{display:flex;align-items:center;gap:10px}.brand a{color:inherit;text-decoration:none}
.brand .bars{display:flex;gap:3px}.brand .bars i{width:6px;height:26px;border-radius:2px;display:block}
.brand b{font-family:var(--f-display);font-weight:400;font-size:26px;letter-spacing:.3px}
.brand span{color:var(--muted);font-weight:700;font-size:13px}
.volver{font-weight:800;color:var(--accent);text-decoration:none;font-size:14px}
a{color:var(--accent)}
h1{font-family:var(--f-display);font-weight:400;font-size:clamp(26px,4vw,38px);line-height:1.05;margin:4px 0 6px;text-wrap:balance}
h2{font-family:var(--f-display);font-weight:400;font-size:22px;margin:0 0 8px}
.lead{color:var(--muted);margin:0 0 18px;max-width:66ch}
.paso{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;margin:6px 0 12px}
.paso span{flex:none;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:14px}
.editor{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px;align-items:start}
@media (max-width:880px){.editor{grid-template-columns:minmax(0,1fr)}}
.mesa{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px;position:sticky;top:8px;display:flex;flex-direction:column;gap:10px}
@media (max-width:880px){.mesa{position:static}}
.lienzo{background:var(--mesa);border-radius:12px;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:240px}
.lienzo canvas{max-width:100%;height:auto;box-shadow:0 8px 22px rgba(0,0,0,.22);border-radius:2px;background:#fff}
.lienzo .et{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;display:flex;justify-content:space-between;width:100%;max-width:640px}
.pags{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px;width:100%}
.pags figure{margin:0;flex:none;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:800;color:var(--muted)}
.pags canvas{box-shadow:0 2px 6px rgba(0,0,0,.2);background:#fff}
.pags .c{color:var(--accent)}
.medida{font-size:13px;color:var(--muted)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:16px}
.grupo h3{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.campos .ancho{grid-column:1/-1}
@media (max-width:420px){.campos{grid-template-columns:1fr}}
label.sl{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700;color:var(--muted)}
textarea,input[type=text],input[type=tel],input[type=email],input[type=number],select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:8px 10px;width:100%;min-width:0}
textarea{resize:vertical}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.chip{font:inherit;font-weight:800;font-size:13px;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:999px;padding:7px 13px;cursor:pointer}
.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.chip small{font-weight:700;opacity:.75}
.colores{display:flex;gap:8px;flex-wrap:wrap}
.col{width:34px;height:34px;border-radius:50%;border:3px solid var(--surface);box-shadow:0 0 0 1px var(--line);cursor:pointer}
.col.on{box-shadow:0 0 0 3px var(--accent)}
.subir{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.subir label{font-weight:800;font-size:14px;border:2px dashed var(--muted);border-radius:12px;padding:12px 16px;cursor:pointer}
.subir label.grande{width:100%;text-align:center;padding:22px 16px;font-size:16px}
.subir input{position:absolute;width:1px;height:1px;opacity:0}
.mini{font:inherit;font-weight:800;font-size:13px;border:0;background:none;color:var(--accent);cursor:pointer;padding:4px 0}
.nota{margin:0;font-size:13px;color:var(--muted);line-height:1.4}.nota b{color:var(--ink)}
.ok{color:var(--ok);font-weight:800}.warn{color:var(--warn);font-weight:800}
.check{display:flex;gap:8px;align-items:flex-start;font-size:14px;font-weight:600}
.check input{margin-top:3px;width:18px;height:18px;flex:none}
.resumen{margin-top:18px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.resumen .q{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.resumen .q small{display:block;color:var(--muted);font-weight:600}
.total{font-family:var(--f-display);font-size:30px;color:var(--accent);font-variant-numeric:tabular-nums}
.cta{font:inherit;font-weight:800;font-size:16px;border:0;border-radius:14px;padding:12px 20px;background:var(--accent);color:var(--accent-ink);cursor:pointer;text-decoration:none;display:inline-block}
.cta.sec{background:var(--bg);color:var(--ink);border:1px solid var(--line)}
.cta:disabled{opacity:.6;cursor:wait}
.err{font-size:14px;font-weight:700;color:#b3261e;min-height:1em}
.aviso{font-size:13px;font-weight:700;color:var(--warn);background:var(--warn-soft);padding:8px 10px;border-radius:10px}
.barra{height:8px;border-radius:99px;background:var(--mesa);overflow:hidden}.barra i{display:block;height:100%;background:var(--accent);width:0;transition:width .2s}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.subir label:focus-within{outline:3px solid var(--accent);outline-offset:2px}
[hidden]{display:none!important}
details.presu{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px 16px;margin-top:18px}
details.presu summary{cursor:pointer;font-weight:800}
/* librería */
.secciones{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 18px}.secciones a{text-decoration:none}
.sec-tit{font-size:20px;margin:26px 0 12px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.sec-tit a{font-size:13px;color:var(--accent);text-decoration:none}
.destacados{background:color-mix(in srgb,#d62779 7%,transparent);border:1px solid color-mix(in srgb,#d62779 30%,var(--line));border-radius:18px;padding:4px 16px 18px}.destacados .sec-tit{margin-top:14px}
.resumen.digital{margin-top:10px;border-style:dashed}
.estante{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:18px}
.estante a{text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:6px}
.estante img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:3px;box-shadow:0 8px 18px rgba(0,0,0,.25);background:var(--mesa)}
.estante b{font-size:15px;line-height:1.2}.estante small{color:var(--muted);font-weight:700}
.estante .pre{font-family:var(--f-display);color:var(--accent);font-size:17px}.estante .pre small{font-family:var(--f-body,inherit);font-size:12px;color:var(--muted);font-weight:700}
.ficha{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:700px){.ficha{grid-template-columns:minmax(0,1fr)}}
.ficha img{width:100%;border-radius:4px;box-shadow:0 12px 28px rgba(0,0,0,.3)}
.sinopsis{white-space:pre-line;font-size:16px;line-height:1.6}
.tarifa .tf-cab{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}.tarifa h3{margin:0;font-size:18px}.tarifa input{width:110px}
.tarifa td.num b{font-size:16px}.tarifa th.num{font-size:12px;color:var(--muted);font-weight:800}.tarifa tr.on td{background:color-mix(in srgb,#d62779 8%,transparent)}
.tf-desc{display:flex;flex-wrap:wrap;gap:6px}.tf-desc span{font-size:12.5px;font-weight:800;border:1px solid var(--line);border-radius:999px;padding:4px 10px;background:var(--bg)}.tf-desc span b{color:#d62779}
.guardado{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:color-mix(in srgb,#9bc53d 14%,var(--surface));border:1px solid color-mix(in srgb,#9bc53d 45%,var(--line));border-radius:14px;padding:10px 14px;margin:0 0 18px;font-size:13.5px}.guardado[hidden]{display:none}
.cifras{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:4px 0 10px}.cifras div{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:10px}.cifras b{display:block;font-size:20px}.cifras span{font-size:12px;color:var(--muted)}.cifras .dest{border-color:#d62779}.cifras .dest b{color:#d62779}
form.cobro .cb-t{display:none}form.cobro[data-m="t"] .cb-t{display:flex}form.cobro[data-m="t"] .cb-b{display:none}
table.v{width:100%;border-collapse:collapse;font-size:14px}table.v td,table.v th{padding:6px 4px;border-bottom:1px solid var(--line);text-align:left}table.v .num{text-align:right}
