.pdfcm-card{display:inline-block;margin:0 18px 18px 0;vertical-align:top}
.pdfcm-open{all:unset;display:block;cursor:pointer;width:220px;max-width:100%;text-align:center}
.pdfcm-open:focus-visible{outline:3px solid #2dd4bf;outline-offset:4px;border-radius:6px}
.pdfcm-cover{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:3/4;background:linear-gradient(135deg,#0f3d3a,#16263a);border-radius:4px 8px 8px 4px;box-shadow:-4px 0 0 rgba(0,0,0,.25) inset,0 8px 22px rgba(0,0,0,.28);overflow:hidden;transition:transform .2s,box-shadow .2s;position:relative}
.pdfcm-open:hover .pdfcm-cover{transform:translateY(-4px) rotate(-.6deg);box-shadow:-4px 0 0 rgba(0,0,0,.25) inset,0 14px 28px rgba(0,0,0,.34)}
.pdfcm-cover canvas{width:100%;height:100%;object-fit:cover;display:block}
.pdfcm-ph{color:#2dd4bf;font:700 28px/1 system-ui,sans-serif;letter-spacing:.1em}
.pdfcm-cover.has-img .pdfcm-ph{display:none}
.pdfcm-cap{display:block;margin-top:12px}
.pdfcm-cap strong{display:block;font-size:15px;line-height:1.3}
.pdfcm-cap em{display:inline-block;margin-top:6px;font-style:normal;font-size:13px;padding:5px 12px;border-radius:999px;background:#0f766e;color:#fff}
.pdfcm-form{margin:0 0 20px}.pdfcm-form input{margin:0 6px;padding:8px 10px}
.pdfcm-none{color:#b42318}
html.pdfcm-lock{overflow:hidden}
.pdfcm-modal{position:fixed;inset:0;z-index:999999;background:rgba(8,11,17,.94);display:flex;flex-direction:column;color:#e6edf5;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.pdfcm-modal[hidden]{display:none}
.pdfcm-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.1)}
.pdfcm-ttl{font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pdfcm-ctl{display:flex;align-items:center;gap:6px;flex-shrink:0}
.pdfcm-ctl button,.pdfcm-dl{all:unset;cursor:pointer;min-width:34px;height:34px;line-height:34px;text-align:center;border-radius:8px;background:rgba(255,255,255,.1);color:#fff;font-size:20px;box-sizing:border-box}
.pdfcm-ctl button:hover,.pdfcm-dl:hover{background:rgba(45,212,191,.35)}
.pdfcm-ctl button:focus-visible,.pdfcm-dl:focus-visible{outline:2px solid #2dd4bf}
.pdfcm-dl{font-size:13px;padding:0 12px}.pdfcm-dl[hidden]{display:none}
.pdfcm-pg{min-width:76px;text-align:center;font-size:13px;opacity:.85}
.pdfcm-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:12px}
.pdfcm-book{width:100%;height:100%}
.pdfcm-side{all:unset;cursor:pointer;position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:64px;line-height:60px;text-align:center;font-size:34px;color:#fff;background:rgba(255,255,255,.12);border-radius:10px}
.pdfcm-side.l{left:8px}.pdfcm-side.r{right:8px}.pdfcm-side:hover{background:rgba(45,212,191,.4)}
.pdfcm-load{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:rgba(8,11,17,.6)}
.pdfcm-load[hidden]{display:none}.pdfcm-load p{margin:0;font-size:14px}.pdfcm-load.err .pdfcm-spin{display:none}.pdfcm-load.err p{color:#fca5a5}
.pdfcm-spin{width:38px;height:38px;border:4px solid rgba(255,255,255,.2);border-top-color:#2dd4bf;border-radius:50%;animation:pdfcmspin .9s linear infinite}
@keyframes pdfcmspin{to{transform:rotate(360deg)}}
@media (max-width:640px){.pdfcm-side{display:none}.pdfcm-ctl [data-a=first],.pdfcm-ctl [data-a=last]{display:none}.pdfcm-bar{padding:8px 10px}}
/* zoom */
.pdfcm-stage{padding:8px}
.pdfcm-sep{width:1px;height:22px;background:rgba(255,255,255,.2);margin:0 4px}
.pdfcm-ctl .pdfcm-zl{font-size:12px;min-width:54px}
.pdfcm-zoom{position:absolute;inset:0;z-index:2;overflow:auto;display:flex;background:#0b0f16;cursor:grab;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}
.pdfcm-zoom[hidden]{display:none}.pdfcm-zoom.drag{cursor:grabbing;user-select:none}
.pdfcm-zin{margin:auto;padding:8px;flex:none}
.pdfcm-zin canvas{display:block;background:#fff;box-shadow:0 8px 30px rgba(0,0,0,.5)}
.pdfcm-zoomed .pdfcm-side{display:none}
.pdfcm-zoomed .pdfcm-book{visibility:hidden}
@media (max-width:640px){.pdfcm-sep{display:none}.pdfcm-ttl{display:none}.pdfcm-bar{justify-content:center}.pdfcm-pg{min-width:52px}}
