.fb-reader{--fb-stage:#eef2f7;--fb-paper:#fffdf8;--fb-accent:#175fa8;max-width:var(--fb-max,1080px);margin:24px auto;color:#25354a;font-family:system-ui,sans-serif;outline-offset:5px}.fb-reader *{box-sizing:border-box}.fb-reader [hidden]{display:none!important}
.fb-stage{padding:32px 20px;background:var(--fb-stage);border-radius:16px;overflow:hidden;position:relative;min-height:180px;perspective:1800px}.fb-book{margin:0 auto;filter:drop-shadow(0 12px 12px #14253e30)}
.fb-page{background:var(--fb-paper);overflow:hidden;position:relative;border:1px solid #00000012;box-shadow:inset 8px 0 14px -12px #0008}.fb-page.--right{background-image:linear-gradient(90deg,#00000012,transparent 4%)}.fb-page.--left{background-image:linear-gradient(270deg,#00000012,transparent 4%)}
.fb-pdf-image{display:block;width:100%;height:100%;object-fit:contain}.fb-pdf-image:not([src]){visibility:hidden}.fb-page-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#6b7786;font-size:14px;text-align:center;padding:16px}.fb-rendered .fb-page-placeholder{display:none}
.fb-pdf-cover{border-radius:var(--fb-radius,6px)}
.fb-toolbar{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:16px 8px;background:#fff;border:1px solid #dce3ec;border-radius:12px;margin-top:16px;box-shadow:0 4px 18px #14253e0a}.fb-reader .fb-toolbar button,.fb-download{font:600 14px/1.2 system-ui,sans-serif;background:#eef3f8;color:var(--fb-accent);border:1px solid transparent;border-radius:7px;min-height:40px;min-width:40px;padding:10px 12px;cursor:pointer;text-decoration:none;box-shadow:none}.fb-reader .fb-toolbar button:hover,.fb-download:hover{background:var(--fb-accent);color:white}.fb-reader button:disabled{opacity:.4;cursor:default}.fb-reader :focus-visible{outline:3px solid var(--fb-accent);outline-offset:3px}.fb-jump{display:flex;align-items:center;gap:8px;margin:0}.fb-jump label{display:flex;align-items:center;gap:8px;font-size:13px}.fb-reader .fb-jump input{width:65px;min-width:0;padding:8px;border:1px solid #bac7d8;border-radius:6px;min-height:40px;background:#fff;color:#25354a;font:16px system-ui}.fb-total{font-size:13px;color:#64748b}.fb-status{text-align:center;font-size:14px;min-height:22px;margin:14px 0 0}.fb-hint{text-align:center;color:#68788e;font-size:12px;line-height:1.6;margin:6px 0}.fb-loading{text-align:center;padding:40px 16px}.fb-loading:before{content:"";display:block;margin:0 auto 16px;width:28px;height:28px;border:3px solid #ccd7e5;border-top-color:var(--fb-accent);border-radius:50%;animation:fb-spin .9s linear infinite}@keyframes fb-spin{to{transform:rotate(360deg)}}
.fb-reader:fullscreen{max-width:none;width:100%;height:100%;margin:0;padding:16px;overflow:auto;background:var(--fb-stage)}.fb-reader:fullscreen .fb-stage{max-width:1400px;margin:auto}.fb-sample{position:absolute;inset:10%;padding-top:30px}.fb-sample div{height:40%;background:linear-gradient(135deg,#cbdcf1,#90b9d8);border-radius:4px;margin-bottom:22px}.fb-sample i{display:block;height:8px;background:#d7dfe8;margin:12px 0;width:90%}.fb-sample i:last-child{width:60%}
@media(max-width:600px){.fb-stage{padding:20px 8px}.fb-toolbar{gap:6px;padding:12px 6px}.fb-jump label{font-size:0}.fb-jump label input{font-size:16px}.fb-reader .fb-toolbar button{padding:8px}.fb-reader{margin:16px auto}}
@media(prefers-reduced-motion:reduce){.fb-loading:before{animation:none}}

.fb-reader{width:100%;min-width:0;max-width:var(--fb-max,1440px)}.fb-stage{padding:18px 12px;border-radius:14px}.fb-book{max-width:100%}
.fb-toolbar{width:fit-content;max-width:100%;margin:18px auto 0;padding:6px;gap:0;flex-wrap:nowrap;border:1px solid #e1e6ed;border-radius:999px;box-shadow:0 6px 24px #172b460a}
.fb-navigation,.fb-tools{display:flex;align-items:center;gap:4px}.fb-tools{padding-left:8px;margin-left:8px;border-left:1px solid #e1e6ed}
.fb-reader .fb-toolbar button,.fb-reader .fb-download{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--fb-accent);transition:background .15s,color .15s}
.fb-reader .fb-toolbar button:hover:not(:disabled),.fb-reader .fb-download:hover{background:#edf3f9;color:var(--fb-accent)}.fb-reader .fb-toolbar button:disabled{opacity:.25}.fb-toolbar svg{display:block;pointer-events:none}
.fb-jump{gap:6px;padding:0 5px}.fb-reader .fb-jump input{appearance:textfield;-moz-appearance:textfield;width:48px;min-height:32px;padding:4px;text-align:center;border:1px solid transparent;background:#f3f6fa;border-radius:7px;font-size:14px;font-weight:600}.fb-jump input::-webkit-inner-spin-button,.fb-jump input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fb-total{white-space:nowrap;min-width:28px;font-variant-numeric:tabular-nums}
.fb-status{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:600px){.fb-stage{padding:8px 4px;border-radius:9px}.fb-toolbar{margin-top:12px;padding:4px}.fb-tools{padding-left:4px;margin-left:4px}.fb-navigation,.fb-tools{gap:0}.fb-reader .fb-toolbar button,.fb-reader .fb-download{width:36px;height:40px;min-width:36px}.fb-jump{padding:0 2px}}
.fb-loading.fb-load-error:before{display:none}
.fb-embed{width:100%;min-width:0;overflow:visible}.fb-embed>.fb-reader{max-width:none!important;flex:none;position:relative}
.fb-closed-front .fb-book{transform:translateX(-25%)}.fb-closed-back .fb-book{transform:translateX(25%)}
.fb-pdf-cover{border:1px solid #0003;box-shadow:inset 7px 0 12px -8px #0008,3px 3px 0 #d7d4cd,5px 5px 0 #f8f6ef,7px 7px 0 #b6b2aa}
.fb-pdf-cover:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(90deg,#0003,transparent 2%,#fff2 3%,transparent 5%)}
.fb-reader:fullscreen{max-width:none!important}.fb-reader:fullscreen .fb-stage{max-width:none}
.fb-reader:not([data-ready]) .fb-stage{aspect-ratio:calc(2 * var(--fb-cover-aspect,.707))}
.fb-poster{position:absolute;left:50%;top:18px;transform:translateX(-50%);width:calc(50% - 12px);aspect-ratio:var(--fb-cover-aspect,.707);background:var(--fb-paper,#fffdf8);border-radius:var(--fb-radius,6px);overflow:hidden;box-shadow:0 10px 24px #172b4633,inset 7px 0 12px -8px #0008}
.fb-poster-image{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain}
.fb-poster .fb-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;margin:0;padding:0;font-size:0;background:#ffffff0a}
.fb-poster .fb-loading:before,.fb-page-placeholder:before{content:"";width:28px;height:28px;border:3px solid #d5dfea;border-top-color:var(--fb-accent);border-radius:50%;background:#ffffffd9;box-shadow:0 0 0 10px #ffffffd9;animation:fb-spin .9s linear infinite;margin:0}
.fb-page-placeholder{font-size:0}.fb-page-error{font-size:13px;background:#ffffffe6}.fb-page-error:before{display:none}
.fb-poster .fb-loading.fb-load-error{font-size:14px;padding:16px;background:#ffffffe6}.fb-poster .fb-loading.fb-load-error:before{display:none}
@media(max-width:600px){.fb-poster{top:8px;width:calc(50% - 4px)}}
@media(prefers-reduced-motion:reduce){.fb-poster .fb-loading:before,.fb-page-placeholder:before{animation:none}}
@media(max-width:360px){.fb-reader .fb-toolbar button,.fb-reader .fb-download{width:32px;min-width:32px}.fb-reader .fb-jump input{width:40px}.fb-total{min-width:24px}}
.fb-book{touch-action:none;user-select:none;-webkit-user-select:none}.fb-page{cursor:grab}.fb-page:active{cursor:grabbing}.fb-pdf-image{-webkit-user-drag:none}
.fb-reader,.fb-stage,.fb-book,.fb-book .stf__wrapper,.fb-book .stf__block{overflow:visible!important}
.fb-stage{background:transparent;border-radius:0;isolation:isolate}
.fb-unclip{overflow:visible!important;clip-path:none!important;contain:none!important}
.fb-reader[data-ready=true] .fb-book{transition:transform var(--fb-placement-duration,560ms) cubic-bezier(.22,.61,.36,1);will-change:transform}
.fb-pdf-back{box-shadow:inset -7px 0 12px -8px #0008,-3px 3px 0 #d7d4cd,-5px 5px 0 #f8f6ef,-7px 7px 0 #b6b2aa}
.fb-pdf-back:after{background:linear-gradient(270deg,#0003,transparent 2%,#fff2 3%,transparent 5%)}
@media(prefers-reduced-motion:reduce){.fb-reader[data-ready=true] .fb-book{transition:none}}
.fb-reader:fullscreen{overflow:auto!important}
.fb-embed{overflow-x:clip;overflow-y:visible;padding:0;border:0;box-sizing:border-box;flex:none}
.fb-center-fold:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--fb-fold-band,0px);pointer-events:none;background:linear-gradient(90deg,#fff4,transparent 35%,#172b4610 75%,#172b4640)}
.fb-center-backward:after{left:auto;right:0;background:linear-gradient(270deg,#fff4,transparent 35%,#172b4610 75%,#172b4640)}

/* Keep navigation reachable while a rigid cover projects beyond the stage. */
.fb-toolbar{position:relative;z-index:2}

.fb-reader:focus,.fb-reader:focus-visible{outline:none!important}

.fb-demo-content{position:absolute;inset:0;display:flex;flex-direction:column;gap:1em;padding:11%;color:#25354a;font:clamp(5px,3cqw,15px)/1.65 Georgia,serif;overflow:hidden}
.fb-demo-content h2{margin:0;color:var(--fb-accent);font:600 2.1em/1.2 Georgia,serif;letter-spacing:-.03em}
.fb-demo-content p{margin:0}.fb-demo-content .fb-demo-kicker{font:600 .65em/1.5 system-ui,sans-serif;letter-spacing:.15em;color:var(--fb-accent)}
.fb-demo-content footer{margin-top:auto;padding-top:1.5em;border-top:1px solid currentColor;font:500 .65em/1.4 system-ui,sans-serif;opacity:.65}
.fb-demo-cover{justify-content:center;background:linear-gradient(145deg,transparent 60%,color-mix(in srgb,var(--fb-accent) 12%,transparent));border-top:.65em solid var(--fb-accent)}
.fb-demo-cover h2{font-size:2.8em}.fb-demo-cover footer{margin-top:2em}

.fb-demo .fb-page{container-type:inline-size}

.fb-book{filter:drop-shadow(0 12px 12px rgb(20 37 62 / calc(var(--fb-shadow-strength,.55) * .35)))}
.fb-center-fold:after{opacity:var(--fb-shadow-strength,.55)}

.fb-demo .fb-stage{background:var(--fb-stage);border-radius:12px}
