:root{--sbfb-accent:#4a8a4a;--sbfb-ink:#15281b;--sbfb-surface:#f2f2ef;--sbfb-border:#d9ded8}.sbfb-teaser{max-width:var(--sbfb-cover-width,220px)}.sbfb-launcher{display:flex;flex-direction:column;gap:12px;color:var(--sbfb-ink);text-decoration:none!important}.sbfb-cover{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f2f4f0;border-radius:8px;aspect-ratio:3/4;box-shadow:0 6px 20px rgba(0,0,0,.09);transition:transform .2s,box-shadow .2s}.sbfb-cover img{max-width:100%;max-height:100%;height:100%;width:100%;object-fit:cover}.sbfb-launcher:hover .sbfb-cover,.sbfb-launcher:focus-visible .sbfb-cover{transform:translateY(-3px);box-shadow:0 11px 30px #0002}.sbfb-teaser-title{font-family:Inter,Arial,sans-serif;font-size:14px;font-weight:700;line-height:1.4}.sbfb-launcher--button{width:max-content;padding:12px 20px;border-radius:24px;background:var(--sbfb-ink);color:#fff!important}.sbfb-empty-cover{display:flex;justify-content:center;align-items:center;width:100%;height:100%;font-size:50px;color:#517055}.sbfb-library{display:grid;grid-template-columns:repeat(var(--sbfb-columns,3),minmax(0,1fr));gap:24px}.sbfb-library .sbfb-teaser{max-width:100%}.sbfb-library .sbfb-cover{aspect-ratio:3/4}.sbfb-reader{font-family:Inter,Arial,sans-serif;display:flex;flex-direction:column;min-height:580px;height:min(85vh,860px);width:100%;overflow:hidden;background:#eff1ed;color:#1b2a1c;border:1px solid #d7ddd6;border-radius:10px;box-sizing:border-box}.sbfb-reader *{box-sizing:border-box}.sbfb-toolbar{height:58px;min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:#17271c;color:white;gap:12px}.sbfb-toolbar-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%}.sbfb-toolbar-title span:last-child{overflow:hidden;text-overflow:ellipsis}.sbfb-bookmark-icon{font-size:24px;line-height:1}.sbfb-toolbar-tools{display:flex;align-items:center;gap:5px}.sbfb-toolbar button,.sbfb-bottom button{color:inherit;background:none;border:1px solid transparent;border-radius:5px;min-width:34px;height:34px;font-size:21px;line-height:1;cursor:pointer}.sbfb-toolbar button:hover,.sbfb-bottom button:hover{background:#ffffff1a;border-color:#ffffff33}.sbfb-toolbar a{font-size:20px;color:white!important;text-decoration:none;padding:5px}.sbfb-zoom-label{min-width:42px;text-align:center;font-size:12px}.sbfb-workspace{flex:1;display:flex;min-height:0}.sbfb-canvas-area{position:relative;flex:1;display:flex;justify-content:center;align-items:center;min-width:0;overflow:auto;padding:20px;background:radial-gradient(circle at 50% 10%,#fff,#e8ede7)}.sbfb-spread{position:relative;display:flex;align-items:center;justify-content:center;max-width:100%;margin:auto;perspective:1600px;transition:filter .2s}.sbfb-page{position:relative;min-width:0;flex:0 1 auto;background:white;box-shadow:0 10px 25px #0002;overflow:hidden;transform-origin:center center;backface-visibility:hidden}.sbfb-page canvas{display:block;max-width:none;height:auto;background:#fff}.sbfb-page--left{border-radius:4px 0 0 4px;box-shadow:-4px 8px 21px #0003}.sbfb-page--right{border-radius:0 4px 4px 0;box-shadow:5px 8px 21px #0003}.sbfb-page--right:not([hidden]){border-left:1px solid #d4d4d4}.sbfb-spread.is-turning-next .sbfb-page--right{transform-origin:left center;animation:sbfb-flip-next .28s ease-in-out}.sbfb-spread.is-turning-prev .sbfb-page--left{transform-origin:right center;animation:sbfb-flip-prev .28s ease-in-out}@keyframes sbfb-flip-next{0%{transform:rotateY(0)}50%{transform:rotateY(-75deg);filter:brightness(.8)}100%{transform:rotateY(-90deg)}}@keyframes sbfb-flip-prev{0%{transform:rotateY(0)}50%{transform:rotateY(75deg);filter:brightness(.8)}100%{transform:rotateY(90deg)}}.sbfb-spread .sbfb-blank{min-width:30px}.sbfb-loading{position:absolute;z-index:2;padding:14px 20px;background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 5px 30px #0002;font-size:13px}.sbfb-fallback{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;gap:10px;color:#333}.sbfb-fallback iframe{width:100%;flex:1;border:0;min-height:300px}.sbfb-fallback p{margin:8px}.sbfb-fallback a{color:#237a3a}.sbfb-thumbnails{width:146px;flex-shrink:0;overflow-y:auto;background:#192920;border-right:1px solid #304434;padding:10px}.sbfb-thumb{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:white;padding:7px;margin-bottom:5px}.sbfb-thumb:hover,.sbfb-thumb:focus{border-color:#7aaf85;background:#ffffff17}.sbfb-thumb canvas{max-width:85px;max-height:124px;background:white;box-shadow:0 2px 8px #0004}.sbfb-thumb span{font-size:11px}.sbfb-search{display:flex;align-items:center;gap:12px;padding:9px 15px;background:#fff;border-bottom:1px solid var(--sbfb-border)}.sbfb-search label{display:flex;align-items:center;gap:8px;font-size:12px;flex:1}.sbfb-search input{min-width:100px;flex:1;max-width:340px;padding:7px;border:1px solid #adb9ab;border-radius:5px}.sbfb-search button{padding:7px 13px;border:0;background:var(--sbfb-accent);color:white;border-radius:5px;cursor:pointer}.sbfb-search-result{font-size:12px;color:#456}.sbfb-bottom{height:55px;min-height:55px;display:flex;align-items:center;justify-content:center;gap:16px;background:#17271c;color:#fff}.sbfb-bottom button{font-size:30px;border:1px solid #ffffff35;border-radius:50%;width:34px;height:34px;display:flex;align-items:center;justify-content:center}.sbfb-bottom button:disabled{opacity:.25;cursor:not-allowed}.sbfb-page-count{font-size:13px;min-width:65px;text-align:center}.sbfb-open-tab{position:absolute;right:16px;color:#fff!important;text-decoration:none;font-size:11px}.sbfb-modal{position:fixed;inset:0;z-index:999999;background:#0c1911e8;display:flex;flex-direction:column;padding:1.5vh 1.5vw;box-sizing:border-box}.sbfb-modal-head{height:46px;min-height:46px;display:flex;gap:12px;align-items:center;color:#fff}.sbfb-modal-head strong{flex:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:14px}.sbfb-modal-head button,.sbfb-modal-head a{border:1px solid #ffffff5c;background:transparent;color:#fff!important;font:500 12px Inter,Arial,sans-serif;padding:9px 13px;border-radius:6px;text-decoration:none;cursor:pointer}.sbfb-modal-body{height:calc(100% - 46px);background:#fff;border-radius:8px;overflow:hidden}.sbfb-modal-frame{width:100%;height:100%;border:0;display:block}.sbfb-modal-lock{overflow:hidden!important}.sbfb-full-page{margin:0;background:#e9ede8;--sbfb-accent:#4a8a4a}.sbfb-page-shell{height:100dvh;width:100%;margin:0}.sbfb-reader--standalone{height:100dvh;min-height:0;border:0;border-radius:0}.sbfb-reader:fullscreen{height:100vh;width:100vw;border:0;border-radius:0}.sbfb-reader[hidden],.sbfb-fallback[hidden],.sbfb-thumbnails[hidden],.sbfb-search[hidden],.sbfb-page[hidden]{display:none!important}@media(max-width:800px){.sbfb-library{grid-template-columns:repeat(2,minmax(0,1fr))}.sbfb-reader{min-height:500px}.sbfb-page--right{display:none!important}.sbfb-toolbar{padding:0 9px}.sbfb-toolbar-title{font-size:12px;max-width:38%}.sbfb-toolbar-tools{gap:0}.sbfb-toolbar button{font-size:18px;min-width:29px}.sbfb-zoom-label{display:none}.sbfb-canvas-area{padding:12px}.sbfb-thumbnails{width:105px;padding:5px}.sbfb-open-tab{display:none}}@media(max-width:500px){.sbfb-library{grid-template-columns:1fr 1fr;gap:12px}.sbfb-bottom{gap:10px}.sbfb-toolbar-title{max-width:33%}.sbfb-search{flex-wrap:wrap}.sbfb-modal{padding:0}.sbfb-modal-body{border-radius:0}}@media(prefers-reduced-motion:reduce){.sbfb-spread.is-turning-next .sbfb-page--right,.sbfb-spread.is-turning-prev .sbfb-page--left{animation:none}.sbfb-cover{transition:none}}
/* SBFlipBook 1.1: centered cover and buffered, smooth page-turn transition. */
.sbfb-spread.sbfb-cover-mode{justify-content:center;cursor:pointer}
.sbfb-spread.sbfb-cover-mode .sbfb-page--left{border-radius:5px;box-shadow:0 13px 32px #0003}
.sbfb-spread.sbfb-cover-mode .sbfb-page--right{display:none!important}
.sbfb-spread.sbfb-cover-mode .sbfb-page--left:after{content:'';position:absolute;right:0;top:0;bottom:0;width:10px;background:linear-gradient(90deg,transparent,#00000016);pointer-events:none}
.sbfb-spread.sbfb-cover-mode:hover .sbfb-page--left{box-shadow:0 16px 38px #0004}
.sbfb-spread.sbfb-single-mode .sbfb-page--right{display:none!important}
.sbfb-spread.sbfb-single-mode .sbfb-page--left{border-radius:5px}
.sbfb-spread .sbfb-page{isolation:isolate}
.sbfb-spread .sbfb-turn-sheet{position:absolute;z-index:5;top:0;left:50%;height:100%;pointer-events:none;transform-style:preserve-3d;backface-visibility:hidden;box-shadow:0 8px 25px #0004;will-change:transform,opacity;overflow:hidden;background:#fff}
.sbfb-spread .sbfb-turn-sheet canvas{display:block;height:100%;width:auto;max-width:none}
.sbfb-spread .sbfb-turn-forward{transform-origin:left center;animation:sbfb-turn-forward .54s cubic-bezier(.35,.04,.19,1) both}
.sbfb-spread .sbfb-turn-backward{transform-origin:right center;animation:sbfb-turn-backward .54s cubic-bezier(.35,.04,.19,1) both}
.sbfb-spread.sbfb-cover-mode .sbfb-turn-sheet{left:50%}
@keyframes sbfb-turn-forward{0%{transform:rotateY(0);opacity:1}55%{filter:brightness(.72);opacity:.95}100%{transform:rotateY(-178deg);opacity:0}}
@keyframes sbfb-turn-backward{0%{transform:rotateY(0);opacity:1}55%{filter:brightness(.75);opacity:.95}100%{transform:rotateY(178deg);opacity:0}}
.sbfb-reader.sbfb-is-busy .sbfb-bottom button{cursor:progress}
@media(max-width:800px){.sbfb-spread .sbfb-turn-sheet{left:0}}
@media(prefers-reduced-motion:reduce){.sbfb-spread .sbfb-turn-forward,.sbfb-spread .sbfb-turn-backward{animation:none!important;display:none}}

/* SBFlipBook 1.2: viewport-fit reader and dimensional page-turn. */
html:has(body.sbfb-full-page), body.sbfb-full-page { margin:0!important; padding:0!important; min-height:0!important; height:100%!important; overflow:hidden!important; }
body.sbfb-full-page { position:fixed!important; inset:0!important; width:100%!important; max-width:none!important; background:#edf1ed!important; }
body.sbfb-full-page::before,body.sbfb-full-page::after { display:none!important; }
body.sbfb-full-page .sbfb-page-shell { position:fixed!important; inset:0!important; width:100%!important; height:100%!important; height:100dvh!important; margin:0!important; padding:0!important; overflow:hidden!important; max-width:none!important; }
body.sbfb-full-page .sbfb-reader--standalone { width:100%!important; height:100%!important; min-height:0!important; max-height:none!important; margin:0!important; border:0!important; border-radius:0!important; }
body.sbfb-full-page #wpadminbar { display:none!important; }
.sbfb-reader { min-height:0; }
.sbfb-reader--standalone .sbfb-workspace { min-height:0; overflow:hidden; }
.sbfb-reader--standalone .sbfb-canvas-area { min-height:0; overflow:auto; padding:16px!important; }
.sbfb-spread{flex:0 0 auto; transform-style:preserve-3d; }
.sbfb-spread .sbfb-page canvas {max-width:none;}
.sbfb-spread .sbfb-physical-sheet { position:absolute;top:0;z-index:20;transform-origin:left center;transform-style:preserve-3d;will-change:transform;pointer-events:none; }
.sbfb-spread .sbfb-sheet-face {position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;background:#fff;box-shadow:0 12px 24px #0002;}
.sbfb-spread .sbfb-sheet-face canvas {display:block;width:100%!important;height:100%!important;object-fit:fill;}
.sbfb-spread .sbfb-sheet-front {transform:translateZ(1px);border-radius:0 3px 3px 0;}
.sbfb-spread .sbfb-sheet-back {transform:rotateY(180deg) translateZ(1px);border-radius:3px 0 0 3px;filter:brightness(.93);}
.sbfb-spread .sbfb-sheet-front:after,.sbfb-spread .sbfb-sheet-back:after {content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 45%,rgba(15,23,15,.20));opacity:0;animation:sbfb-sheet-shadow .76s ease-in-out both;}
.sbfb-spread .sbfb-sheet-next {animation:sbfb-real-next .76s cubic-bezier(.4,.02,.16,1) both;}
.sbfb-spread .sbfb-sheet-prev {transform-origin:right center;animation:sbfb-real-prev .76s cubic-bezier(.4,.02,.16,1) both;}
.sbfb-spread .sbfb-sheet-opening {animation:sbfb-real-open .82s cubic-bezier(.38,.03,.16,1) both;}
.sbfb-spread .sbfb-sheet-closing {animation:sbfb-real-close .82s cubic-bezier(.38,.03,.16,1) both;}
@keyframes sbfb-real-next {0%{transform:rotateY(0deg)}48%{transform:rotateY(-89deg)}100%{transform:rotateY(-180deg)}}
@keyframes sbfb-real-prev {0%{transform:rotateY(0deg)}48%{transform:rotateY(89deg)}100%{transform:rotateY(180deg)}}
@keyframes sbfb-real-open {0%{transform:translateX(0) rotateY(0) scale(1)}60%{transform:translateX(-14%) rotateY(-108deg) scale(.88)}100%{transform:translateX(-26%) rotateY(-180deg) scale(.80)}}
@keyframes sbfb-real-close {0%{transform:translateX(0) rotateY(0) scale(1)}55%{transform:translateX(13%) rotateY(104deg) scale(1.08)}100%{transform:translateX(26%) rotateY(180deg) scale(1.20)}}
@keyframes sbfb-sheet-shadow{0%,100%{opacity:.02}48%{opacity:.9}}
@media(max-width:800px){body.sbfb-full-page .sbfb-reader--standalone{min-height:0!important}.sbfb-reader--standalone .sbfb-canvas-area{padding:8px!important}}
@media(prefers-reduced-motion:reduce){.sbfb-spread .sbfb-physical-sheet {animation:none!important}.sbfb-spread .sbfb-sheet-face:after{animation:none!important}}

/* 1.3: fixed book geometry, stable spine and continuous sheet transitions. */
.sbfb-spread {display:block!important;position:relative;flex:0 0 auto!important;max-width:none!important;min-width:0!important;margin:auto!important;transform:none!important;perspective:1800px!important;}
.sbfb-spread>.sbfb-page {position:absolute!important;top:0!important;left:0!important;flex:none!important;width:var(--sbfb-leaf-width)!important;height:var(--sbfb-leaf-height)!important;transition:none!important;transform:none!important;animation:none!important;}
.sbfb-spread>.sbfb-page--right {left:var(--sbfb-leaf-width)!important;}
.sbfb-spread.sbfb-cover-mode>.sbfb-page--left {left:calc(var(--sbfb-leaf-width) / 2)!important;}
.sbfb-spread.sbfb-single-mode>.sbfb-page--left {left:0!important;}
.sbfb-spread>.sbfb-page canvas {display:block;width:100%!important;height:100%!important;}
.sbfb-turn-layer {position:absolute;inset:0;pointer-events:none;z-index:35;perspective:1800px;transform-style:preserve-3d;}
.sbfb-turn-layer .sbfb-physical-sheet {position:absolute;top:0;left:var(--sbfb-leaf-width);transform-style:preserve-3d;transform-origin:left center;z-index:3;will-change:transform;}
.sbfb-turn-layer .sbfb-sheet-face {inset:0;position:absolute;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fff;}
.sbfb-turn-layer .sbfb-sheet-face canvas {width:100%!important;height:100%!important;}
.sbfb-turn-layer .sbfb-sheet-back {transform:rotateY(180deg);filter:none;}
.sbfb-turn-layer .sbfb-sheet-front {transform:translateZ(1px);}
.sbfb-turn-layer .sbfb-sheet-front:after,.sbfb-turn-layer .sbfb-sheet-back:after {animation:none;opacity:.10;}
.sbfb-turn-layer .sbfb-turn-forward {animation:sbfb-v13-forward .74s cubic-bezier(.55,.04,.22,.98) both;}
.sbfb-turn-layer .sbfb-turn-backward {left:0;transform-origin:right center;animation:sbfb-v13-backward .74s cubic-bezier(.55,.04,.22,.98) both;}
.sbfb-turn-layer .sbfb-turn-opening {animation:sbfb-v13-opening .88s cubic-bezier(.49,.03,.16,1) both;}
.sbfb-turn-layer .sbfb-turn-closing {left:0;transform-origin:right center;animation:sbfb-v13-closing .88s cubic-bezier(.49,.03,.16,1) both;}
.sbfb-turn-held {position:absolute;top:0;left:0;width:var(--sbfb-leaf-width);height:var(--sbfb-leaf-height);z-index:2;animation:sbfb-v13-held .74s ease-in forwards;}
.sbfb-turn-held-right {left:var(--sbfb-leaf-width);}
.sbfb-turn-held canvas {display:block;width:100%!important;height:100%!important;}
.sbfb-opening-veil {position:absolute;top:0;left:0;width:var(--sbfb-leaf-width);height:100%;background:#f4f5f1;z-index:1;animation:sbfb-v13-veil .88s ease-out both;}
@keyframes sbfb-v13-forward {0%{transform:rotateY(0)}46%{transform:rotateY(-87deg)}100%{transform:rotateY(-180deg)}}
@keyframes sbfb-v13-backward {0%{transform:rotateY(0)}46%{transform:rotateY(87deg)}100%{transform:rotateY(180deg)}}
/* The cover starts centered (offset by half a leaf) and opens around the stable spine. */
@keyframes sbfb-v13-opening {0%{transform:translateX(-50%) rotateY(0)}52%{transform:translateX(-20%) rotateY(-92deg)}100%{transform:translateX(0) rotateY(-180deg)}}
@keyframes sbfb-v13-closing {0%{transform:rotateY(0)}52%{transform:translateX(15%) rotateY(92deg)}100%{transform:translateX(-50%) rotateY(180deg)}}
@keyframes sbfb-v13-held {0%,65%{opacity:1}100%{opacity:0}}
@keyframes sbfb-v13-veil {0%,35%{opacity:1}95%,100%{opacity:0}}
.sbfb-spread.sbfb-transition-active>.sbfb-page {box-shadow:none!important;}
@media (prefers-reduced-motion:reduce) {.sbfb-turn-layer,.sbfb-turn-layer *{animation:none!important;}}

/* 1.4: one geometry and a lightweight turning sheet; never move the book itself. */
.sbfb-reader .sbfb-canvas-area { scrollbar-gutter:stable both-edges; }
.sbfb-reader--standalone .sbfb-canvas-area { overflow:hidden!important; }
.sbfb-spread.sbfb-transition-active { transform:none!important; }
.sbfb-turn-layer.sbfb-v14-layer { perspective:1400px; perspective-origin:50% 50%; contain:layout style; }
.sbfb-v14-layer .sbfb-v14-sheet { backface-visibility:visible; transform-style:preserve-3d; box-shadow:none; }
.sbfb-v14-layer .sbfb-sheet-face { transform-style:flat; box-shadow:0 8px 18px rgba(20,25,20,.16); }
.sbfb-v14-layer .sbfb-sheet-face:after { content:'';position:absolute;inset:0;animation:none!important;opacity:.12;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.14),transparent 26%,transparent 78%,rgba(0,0,0,.16)); }
.sbfb-v14-layer .sbfb-v14-under { position:absolute;top:0;left:var(--sbfb-leaf-width);width:var(--sbfb-leaf-width);height:var(--sbfb-leaf-height);z-index:0; }
.sbfb-v14-layer .sbfb-v14-under canvas { width:100%!important;height:100%!important;display:block; }
.sbfb-v14-layer .sbfb-v14-forward { left:var(--sbfb-leaf-width); transform-origin:left center;animation:sbfb-v14-forward .61s cubic-bezier(.45,.02,.18,.98) both; }
.sbfb-v14-layer .sbfb-v14-backward { left:0;transform-origin:right center;animation:sbfb-v14-backward .61s cubic-bezier(.45,.02,.18,.98) both; }
.sbfb-v14-layer .sbfb-v14-opening { left:var(--sbfb-leaf-width);transform-origin:left center;animation:sbfb-v14-open .73s cubic-bezier(.42,.02,.18,.99) both; }
.sbfb-v14-layer .sbfb-v14-closing { left:0;transform-origin:right center;animation:sbfb-v14-close .73s cubic-bezier(.42,.02,.18,.99) both; }
@keyframes sbfb-v14-forward {from{transform:rotateY(0)}to{transform:rotateY(-179.5deg)}}
@keyframes sbfb-v14-backward {from{transform:rotateY(0)}to{transform:rotateY(179.5deg)}}
@keyframes sbfb-v14-open {from{transform:translateX(-50%) rotateY(0)}to{transform:rotateY(-179.5deg)}}
@keyframes sbfb-v14-close {from{transform:rotateY(0)}to{transform:translateX(-50%) rotateY(179.5deg)}}
@media(prefers-reduced-motion:reduce){.sbfb-v14-layer .sbfb-v14-sheet{animation:none!important;}}

.sbfb-spread.sbfb-transition-active>.sbfb-page.sbfb-turn-source-hidden { opacity:0!important; }
