/* FREEKS Flipbook Viewer v1.3 */
.fbv{--fbv-bg:#3b4048;--fbv-accent:#1f6f5c;--fbv-bar:rgba(20,23,27,.86);--fbv-bar-fg:#eef1f3;--fbv-bar-muted:rgba(238,241,243,.62);--fbv-panel:#ffffff;--fbv-panel-fg:#1d2321;--fbv-panel-muted:#5e6863;--fbv-panel-line:#e1e4e2;
  position:relative;width:100%;height:100%;overflow:hidden;background:var(--fbv-bg);color:var(--fbv-bar-fg);
  font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR","Segoe UI",sans-serif;font-size:14px;line-height:1.45;
  -webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;box-sizing:border-box}
.fbv *,.fbv *::before,.fbv *::after{box-sizing:border-box}
.fbv button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
.fbv button:focus-visible,.fbv input:focus-visible,.fbv a:focus-visible{outline:2px solid #fff;outline-offset:2px}
.fbv [hidden]{display:none!important}

.fbv-top{position:absolute;left:0;right:0;top:0;z-index:5;display:flex;align-items:center;gap:12px;
  padding:calc(12px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 12px max(16px,env(safe-area-inset-left,0px));pointer-events:none}
.fbv-title{font-weight:600;font-size:15px;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;text-shadow:0 1px 2px rgba(0,0,0,.25)}
.fbv-sub{color:var(--fbv-bar-muted);font-size:12.5px;white-space:nowrap;flex-shrink:0}
.fbv-logo{pointer-events:auto;display:inline-flex;align-items:center;height:34px;padding:5px 10px;border-radius:8px;background:#fff;flex-shrink:0;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.fbv-logo img{display:block;height:24px;width:auto;max-width:150px;object-fit:contain}
.fbv-logo.is-bare{background:none;box-shadow:none;padding:0}
.fbv-logo.is-bare img{height:30px}
.fbv-credit{pointer-events:auto;margin-left:auto;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:13px;flex-shrink:0;
  background:rgba(0,0,0,.2);color:var(--fbv-bar-muted);font-size:11.5px;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}
.fbv-credit b{color:var(--fbv-bar-fg);font-weight:600;letter-spacing:.02em}
.fbv-credit img{display:block;height:14px;width:auto;max-width:80px}
a.fbv-credit:hover{background:rgba(0,0,0,.35);color:var(--fbv-bar-fg)}

.fbv-stage{position:absolute;left:0;right:0;top:52px;bottom:76px;touch-action:none}
.fbv-book{position:absolute;transition:transform .55s cubic-bezier(.4,.05,.25,1)}
.fbv-page{position:absolute;top:0;height:100%;background:#fff;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.28)}
.fbv-page img,.fbv-curl-front img,.fbv-curl-back img{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-drag:none}
.fbv-left::after,.fbv-right::after{content:"";position:absolute;top:0;bottom:0;width:9%;pointer-events:none}
.fbv-left::after{right:0;background:linear-gradient(to left,rgba(0,0,0,.16),rgba(0,0,0,0))}
.fbv-right::after{left:0;background:linear-gradient(to right,rgba(0,0,0,.16),rgba(0,0,0,0))}
.fbv.is-single .fbv-right::after{display:none}
.fbv-links{position:absolute;inset:0;z-index:2}
.fbv-links a{position:absolute;display:block;border-radius:2px;background:rgba(31,111,92,0);transition:background .2s}
.fbv-links a:hover{background:rgba(255,214,0,.22);outline:1px solid rgba(255,190,0,.6)}

.fbv-curl-front{position:absolute;top:0;height:100%;overflow:hidden;background:#fff;z-index:3}
.fbv-curl-front::after{content:"";position:absolute;top:0;bottom:0;left:0;width:9%;pointer-events:none;background:linear-gradient(to right,rgba(0,0,0,.16),rgba(0,0,0,0))}
.fbv-curl-front.is-left::after{left:auto;right:0;background:linear-gradient(to left,rgba(0,0,0,.16),rgba(0,0,0,0))}
.fbv.is-single .fbv-curl-front::after{display:none}
.fbv-curl-backwrap{position:absolute;left:0;top:0;width:100%;height:100%;z-index:5;pointer-events:none;filter:drop-shadow(0 3px 9px rgba(0,0,0,.24))}
.fbv-curl-back{position:absolute;left:0;top:0;transform-origin:0 0;background:#fff;overflow:hidden}
.fbv-curl-back.is-blank{background:#f2f2ef}
.fbv-sh{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none}
.fbv-sh-under{z-index:2}
.fbv-sh-back{z-index:6}
.fbv-strip{position:absolute;left:0;top:0;transform-origin:0 0}

.fbv-nav{position:absolute;top:50%;z-index:4;width:44px;height:64px;margin-top:-32px;display:grid;place-items:center;border-radius:10px;
  color:var(--fbv-bar-fg);background:rgba(0,0,0,.18);opacity:.75;transition:opacity .2s,background .2s}
.fbv-nav:hover{opacity:1;background:rgba(0,0,0,.32)}
.fbv-nav[disabled]{opacity:0;pointer-events:none}
.fbv-nav.prev{left:max(10px,env(safe-area-inset-left,0px))}
.fbv-nav.next{right:max(10px,env(safe-area-inset-right,0px))}
.fbv-nav svg{width:26px;height:26px}

.fbv-bar{position:absolute;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:6;
  display:flex;align-items:center;gap:2px;padding:6px;border-radius:14px;background:var(--fbv-bar);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:0 6px 24px rgba(0,0,0,.25);max-width:calc(100% - 24px);overflow-x:auto;scrollbar-width:none}
.fbv-bar::-webkit-scrollbar{display:none}
.fbv-btn{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:10px;color:var(--fbv-bar-fg);transition:background .15s}
.fbv-btn:hover{background:rgba(255,255,255,.1)}
.fbv-btn[disabled]{opacity:.35;pointer-events:none}
.fbv-btn.is-on{background:var(--fbv-accent)}
.fbv-btn svg{width:20px;height:20px}
.fbv-sep{width:1px;height:22px;flex:0 0 1px;background:rgba(255,255,255,.16);margin:0 4px}
.fbv-count{display:flex;align-items:center;gap:6px;padding:0 6px;font-size:13px;color:var(--fbv-bar-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.fbv-count input{width:64px;height:30px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.06);color:var(--fbv-bar-fg);
  text-align:center;font:inherit;font-variant-numeric:tabular-nums}

.fbv-panel{position:absolute;z-index:8;right:max(12px,env(safe-area-inset-right,0px));top:calc(56px + env(safe-area-inset-top,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));
  width:min(360px,calc(100% - 24px));display:flex;flex-direction:column;border-radius:14px;background:var(--fbv-panel);color:var(--fbv-panel-fg);
  box-shadow:0 12px 40px rgba(0,0,0,.35);overflow:hidden;-webkit-user-select:text;user-select:text}
.fbv-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 14px 10px;border-bottom:1px solid var(--fbv-panel-line)}
.fbv-panel-head strong{font-size:14px}
.fbv-panel-head .fbv-btn{color:var(--fbv-panel-fg);width:32px;height:32px;flex-basis:32px}
.fbv-panel-head .fbv-btn:hover{background:rgba(0,0,0,.06)}
.fbv-panel-body{flex:1;overflow:auto;padding:12px 14px}
.fbv-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 10px}
.fbv-thumb{display:flex;flex-direction:column;gap:4px;align-items:stretch;text-align:center;font-size:12px;color:var(--fbv-panel-muted);font-variant-numeric:tabular-nums}
.fbv-thumb img{width:100%;height:auto;border-radius:3px;box-shadow:0 1px 4px rgba(0,0,0,.18);outline:2px solid transparent;outline-offset:2px}
.fbv-thumb.is-current img{outline-color:var(--fbv-accent)}
.fbv-thumb.is-current{color:var(--fbv-panel-fg);font-weight:600}
.fbv-search{width:100%;height:40px;border:1px solid var(--fbv-panel-line);border-radius:10px;padding:0 12px;font:inherit;color:var(--fbv-panel-fg);background:#fff}
.fbv-results{display:flex;flex-direction:column;gap:2px;margin-top:10px}
.fbv-result{display:block;width:100%;text-align:left;padding:10px;border-radius:10px;font-size:13px;color:var(--fbv-panel-fg)!important}
.fbv-result:hover{background:rgba(0,0,0,.05)}
.fbv-result b{display:block;font-size:12px;color:var(--fbv-accent);margin-bottom:2px}
.fbv-result mark{background:rgba(255,214,0,.45);color:inherit;border-radius:2px}
.fbv-empty{color:var(--fbv-panel-muted);font-size:13px;padding:8px 2px}

.fbv-zoom{position:absolute;inset:0;z-index:9;background:rgba(12,14,16,.94);overflow:auto;cursor:zoom-in}
.fbv-zoom-inner{min-height:100%;display:flex;align-items:center;justify-content:center;gap:0;padding:64px 16px}
.fbv-zoom img{display:block;max-height:calc(100vh - 128px);max-width:calc(50vw - 16px);height:auto;background:#fff}
.fbv-zoom.is-one img{max-width:calc(100vw - 32px)}
.fbv-zoom.is-full{cursor:zoom-out}
.fbv-zoom.is-full img{max-height:none;max-width:none;width:auto}
.fbv-zoom-close{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:max(12px,env(safe-area-inset-right,0px));z-index:10;background:rgba(255,255,255,.12)!important}

.fbv-toast{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:11;padding:10px 14px;border-radius:10px;
  background:rgba(20,23,27,.92);color:#fff;font-size:13px;white-space:nowrap;pointer-events:none}
.fbv-seo{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:560px){
  .fbv-stage{top:46px;bottom:70px}
  .fbv-top{padding-top:calc(10px + env(safe-area-inset-top,0px))}
  .fbv-sub{display:none}
  .fbv-logo{height:30px;padding:4px 8px}
  .fbv-logo img{height:22px;max-width:110px}
  .fbv-credit-label{display:none}
  .fbv-nav{display:none}
  .fbv-bar .fbv-btn[aria-label="처음으로"],.fbv-bar .fbv-btn[aria-label="마지막으로"]{display:none}
  .fbv-btn{width:34px;height:36px;flex-basis:34px}
  .fbv-bar{padding:4px;gap:0}
  .fbv-bar .fbv-btn[aria-label="전체 화면"]{display:none}
  .fbv-count{padding:0 4px;gap:4px}
  .fbv-count input{width:48px}
  .fbv-panel{left:max(12px,env(safe-area-inset-left,0px));width:auto}
}
@media (prefers-reduced-motion:reduce){.fbv-book{transition:none}}
.fbv-slot-shade{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0}
.fbv-page img{transform-origin:50% 50%}
/* 접는 넘김 (options.turn = fold, 261021) */
.fbv-foldmode .fbv-book{perspective:4200px}
.fbv-fold{position:absolute;top:0;height:100%;z-index:4;transform-style:preserve-3d;will-change:transform}
.fbv-fold-face{position:absolute;inset:0;background:#fff;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 10px 34px rgba(0,0,0,.32)}
.fbv-fold-face img{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-drag:none}
.fbv-fold-back{transform:rotateY(180deg)}
.fbv-fold-shade{position:absolute;inset:0;pointer-events:none;opacity:0}
/* 책장 넘김 (options.turn = book, StPageFlip, 261021) */
.fbv-bookmode .fbv-book{visibility:hidden;pointer-events:none}
.fbv-pf{position:absolute;filter:drop-shadow(0 10px 26px rgba(0,0,0,.3));transition:transform .5s cubic-bezier(.4,.05,.25,1)}
.fbv-pf-in{width:100%;height:100%}
.fbv-pf-page{background:#fff;overflow:hidden}
.fbv-pf-page img{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-drag:none;user-select:none}
