body.fv-locked{overflow:hidden}.fv{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#0a182f99;font-family:inherit}.fv-card{display:flex;flex-direction:column;width:min(980px,100%);height:min(90vh,1100px);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 20px 60px #0a182f59}.fv-card>header{display:flex;align-items:center;gap:4px;padding:8px 8px 8px 16px;border-bottom:1px solid #e3e9f2;color:#0f1b2d}.fv-card>header strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.fv-btn{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:#3b4a5e;cursor:pointer}.fv-btn:hover{background:#eef2f6;color:#0f1b2d}.fv-btn:focus-visible{outline:2px solid #0670ea;outline-offset:1px}.fv-btn:disabled{opacity:.5;cursor:default}.fv-btn svg{width:22px;height:22px}.fv-body{flex:1;min-height:0;overflow:auto;background:#eef2f6;-webkit-overflow-scrolling:touch}.fv-center{display:grid;place-items:center;min-height:100%;padding:24px;text-align:center;color:#3b4a5e}.fv-img{display:block;max-width:100%;max-height:100%;margin:auto;object-fit:contain}.fv-imgwrap{display:grid;place-items:center;min-height:100%;padding:12px;box-sizing:border-box}.fv-pages{display:grid;gap:12px;justify-items:center;padding:12px}.fv-pages canvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 1px 4px #0a182f2e}.fv-more{margin:4px 0 12px;color:#3b4a5e;font-size:14px}.fv-spin{width:28px;height:28px;border:3px solid #cfd8e3;border-top-color:#0670ea;border-radius:50%;animation:fv-spin 1s linear infinite;margin:0 auto 10px}@keyframes fv-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.fv-spin{animation:none}}.fv-error{color:#a3201f}.fv-dl{margin-top:12px;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:0;border-radius:12px;background:#0067dc;color:#fff;font:inherit;font-weight:700;cursor:pointer}@media(max-width:640px){.fv{padding:0}.fv-card{width:100%;height:100%;border-radius:0}.fv-card>header{padding-top:max(8px,env(safe-area-inset-top))}}
