@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700;800&family=Noto+Serif+KR:wght@600;700;900&display=swap');

/* ═══════════════════════════════════════════════════════════════════
   iSeodang E-Book Library — 라이브러리 + 플립북 뷰어
   먹색 #1B1712 · 낙관 레드 #C30F23 · 한지 #FAF7F1
   ═══════════════════════════════════════════════════════════════════ */

.isd-eb{
  --eb-red:      var(--isd-eb-brand, #C30F23);
  --eb-red-tint: #FBEDEE;
  --eb-ink:      #1B1712;
  --eb-ink-2:    #2A241D;
  --eb-body:     #5A544A;
  --eb-mute:     #8B8377;
  --eb-paper:    #FAF7F1;
  --eb-line:     #EAE3D7;
  --eb-white:    #fff;
  --eb-sans:'Noto Sans KR',-apple-system,'Segoe UI',sans-serif;
  --eb-serif:'Noto Serif KR','Times New Roman',serif;
  --eb-sh:   0 2px 20px rgba(27,23,18,.07);
  --eb-sh-lg:0 18px 50px rgba(27,23,18,.16);
  --eb-r:16px;
  font-family:var(--eb-sans);
  color:var(--eb-ink);
  -webkit-font-smoothing:antialiased;
}
.isd-eb *,.isd-eb *::before,.isd-eb *::after{box-sizing:border-box}
.isd-eb svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.isd-eb button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
.isd-eb h1,.isd-eb h2,.isd-eb h3{font-family:var(--eb-serif);margin:0;letter-spacing:-.01em}
.isd-eb p{margin:0}

/* ── 히어로 ─────────────────────────────────────────────── */
.isd-eb-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#FFFDF9 0%,var(--eb-paper) 100%);
  border:1px solid var(--eb-line);border-radius:24px;
  padding:clamp(34px,5vw,64px) clamp(20px,4vw,56px) clamp(30px,4vw,48px);
  margin-bottom:38px;
}
.isd-eb-hero-in{position:relative;z-index:2;max-width:760px}
.isd-eb-kicker{
  font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--eb-red);
  margin-bottom:14px !important;
}
.isd-eb-h1{
  font-size:clamp(28px,4.4vw,46px);font-weight:900;line-height:1.22;color:var(--eb-ink);
}
.isd-eb-h1::after{
  content:"";display:block;width:52px;height:4px;border-radius:2px;
  background:var(--eb-red);margin-top:16px;
}
.isd-eb-lead{
  margin-top:16px !important;font-size:clamp(14px,1.5vw,16.5px);color:var(--eb-body);line-height:1.75;
}
.isd-eb-searchwrap{
  position:relative;display:flex;align-items:center;gap:10px;
  margin-top:26px;max-width:520px;
  background:var(--eb-white);border:1px solid var(--eb-line);border-radius:999px;
  padding:6px 8px 6px 18px;box-shadow:var(--eb-sh);
  transition:border-color .2s,box-shadow .2s;
}
.isd-eb-searchwrap:focus-within{border-color:var(--eb-red);box-shadow:0 6px 26px rgba(195,15,35,.14)}
.isd-eb-searchicon{width:18px;height:18px;color:var(--eb-mute);flex:0 0 auto}
.isd-eb-search{
  flex:1;border:0;outline:0;background:none;font-family:inherit;font-size:15px;
  color:var(--eb-ink);padding:10px 0;min-width:0;
}
.isd-eb-count{
  flex:0 0 auto;font-size:12.5px;color:var(--eb-body);background:var(--eb-paper);
  border:1px solid var(--eb-line);border-radius:999px;padding:7px 14px;white-space:nowrap;
}
.isd-eb-count strong{color:var(--eb-red);font-weight:800}
.isd-eb-hero-deco{
  position:absolute;right:-70px;top:-60px;width:340px;height:340px;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,rgba(195,15,35,.10),rgba(195,15,35,0) 68%);
  pointer-events:none;
}

/* ── 가로 선반 ───────────────────────────────────────────── */
.isd-eb-shelf{margin-bottom:40px}
.isd-eb-shelf-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.isd-eb-shelf-head h2{
  font-size:clamp(18px,2.2vw,23px);font-weight:800;display:flex;align-items:center;gap:10px;
}
.isd-eb-shelf-head h2::before{content:"";width:6px;height:20px;border-radius:3px;background:var(--eb-red)}
.isd-eb-shelf-nav{display:flex;gap:8px}
.isd-eb-arrow{
  width:38px;height:38px;border-radius:50%;border:1px solid var(--eb-line);background:var(--eb-white);
  display:grid;place-items:center;color:var(--eb-ink);transition:.18s;box-shadow:var(--eb-sh);
}
.isd-eb-arrow svg{width:18px;height:18px}
.isd-eb-arrow:hover{background:var(--eb-ink);color:#fff;border-color:var(--eb-ink);transform:translateY(-1px)}
.isd-eb-rail{
  display:flex;gap:22px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x proximity;
  padding:6px 4px 22px;margin:0 -4px;
  scrollbar-width:thin;scrollbar-color:var(--eb-line) transparent;
}
.isd-eb-rail::-webkit-scrollbar{height:6px}
.isd-eb-rail::-webkit-scrollbar-thumb{background:var(--eb-line);border-radius:3px}
.isd-eb-rail .isd-eb-card{flex:0 0 168px;scroll-snap-align:start}

/* ── 필터 ───────────────────────────────────────────────── */
.isd-eb-filters{
  background:var(--eb-white);border:1px solid var(--eb-line);border-radius:var(--eb-r);
  padding:18px 20px;margin-bottom:28px;box-shadow:var(--eb-sh);
}
.isd-eb-frow{display:flex;align-items:flex-start;gap:14px;padding:9px 0}
.isd-eb-frow+.isd-eb-frow{border-top:1px dashed var(--eb-line)}
.isd-eb-flabel{
  flex:0 0 62px;font-size:12.5px;font-weight:700;color:var(--eb-mute);
  padding-top:9px;letter-spacing:.02em;
}
.isd-eb-chips{display:flex;flex-wrap:wrap;gap:8px;flex:1}
.isd-eb-fchip{
  display:inline-flex;align-items:center;gap:6px;
  border:1px solid var(--eb-line);background:var(--eb-paper);
  border-radius:999px;padding:7px 15px;font-size:13.5px;font-weight:500;color:var(--eb-ink-2);
  transition:.16s;
}
.isd-eb-fchip i{
  font-style:normal;font-size:11px;font-weight:700;color:var(--eb-mute);
  background:var(--eb-white);border-radius:999px;padding:1px 7px;
}
.isd-eb-fchip:hover{border-color:var(--eb-ink);background:#fff}
.isd-eb-fchip.is-on{background:var(--eb-ink);border-color:var(--eb-ink);color:#fff}
.isd-eb-fchip.is-on i{background:rgba(255,255,255,.18);color:#fff}
.isd-eb-frow--tail{justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.isd-eb-sort{flex:0 0 auto}
.isd-eb-sort label{
  font-size:12.5px;font-weight:700;color:var(--eb-mute);
  display:inline-flex;align-items:center;gap:8px;white-space:nowrap;
}
.isd-eb-sortsel{
  font-family:inherit;font-size:13.5px;font-weight:500;color:var(--eb-ink);
  border:1px solid var(--eb-line);border-radius:999px;padding:7px 30px 7px 14px;background:var(--eb-paper);
  appearance:none;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235A544A' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 10px center;background-size:14px;
}
.isd-eb-view{display:flex;gap:6px;background:var(--eb-paper);border:1px solid var(--eb-line);border-radius:999px;padding:4px}
.isd-eb-vbtn{width:32px;height:30px;border-radius:999px;display:grid;place-items:center;color:var(--eb-mute)}
.isd-eb-vbtn svg{width:16px;height:16px}
.isd-eb-vbtn.is-on{background:var(--eb-white);color:var(--eb-ink);box-shadow:0 1px 4px rgba(27,23,18,.12)}

/* ── 그리드 ─────────────────────────────────────────────── */
.isd-eb-grid{
  display:grid;gap:30px 22px;
  grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
}
.isd-eb-empty{
  text-align:center;color:var(--eb-mute);padding:70px 20px;font-size:15px;
  border:1px dashed var(--eb-line);border-radius:var(--eb-r);
}

/* ── 책 카드 ─────────────────────────────────────────────── */
.isd-eb-card{position:relative;min-width:0}
.isd-eb-card.is-hidden{display:none}
.isd-eb-open{display:block;width:100%;padding:0;perspective:1100px}
.isd-eb-cover{
  position:relative;display:block;width:100%;aspect-ratio:1/1.414;
  border-radius:4px 10px 10px 4px;overflow:hidden;background:var(--eb-paper);
  box-shadow:0 2px 5px rgba(27,23,18,.14),0 14px 30px -12px rgba(27,23,18,.42);
  transform-style:preserve-3d;
  transition:transform .34s cubic-bezier(.2,.7,.3,1),box-shadow .34s;
}
.isd-eb-cover-inner{position:absolute;inset:0;display:block}
.isd-eb-cover-img{width:100%;height:100%;object-fit:cover;display:block}
.isd-eb-cover-fallback{
  position:absolute;inset:0;display:grid;place-items:center;padding:16px;text-align:center;
  background:linear-gradient(145deg,#2A241D,#1B1712);
}
.isd-eb-cover-fallback em{
  font-family:var(--eb-serif);font-style:normal;font-weight:700;font-size:15px;line-height:1.5;
  color:#F3EFE7;word-break:keep-all;
}
.isd-eb-spine{
  position:absolute;left:0;top:0;bottom:0;width:11px;pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.34),rgba(0,0,0,.10) 55%,rgba(255,255,255,.16) 78%,rgba(0,0,0,.06));
}
.isd-eb-gloss{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,rgba(255,255,255,0) 42%,rgba(255,255,255,.30) 50%,rgba(255,255,255,0) 58%);
  transform:translateX(-120%);transition:transform .55s ease;
}
.isd-eb-open:hover .isd-eb-cover{
  transform:translateY(-8px) rotateY(-11deg) rotateX(2deg);
  box-shadow:0 6px 12px rgba(27,23,18,.18),0 26px 46px -14px rgba(27,23,18,.5);
}
.isd-eb-open:hover .isd-eb-gloss{transform:translateX(120%)}
.isd-eb-hover{
  position:absolute;inset:0;display:grid;place-items:center;
  background:linear-gradient(180deg,rgba(27,23,18,0) 30%,rgba(27,23,18,.72));
  opacity:0;transition:opacity .28s;
}
.isd-eb-open:hover .isd-eb-hover,.isd-eb-open:focus-visible .isd-eb-hover{opacity:1}
.isd-eb-hover-btn{
  background:var(--eb-red);color:#fff;font-size:12.5px;font-weight:700;
  padding:9px 20px;border-radius:999px;transform:translateY(8px);
  transition:transform .28s;box-shadow:0 6px 16px rgba(0,0,0,.3);
}
.isd-eb-open:hover .isd-eb-hover-btn{transform:translateY(0)}
.isd-eb-open:focus-visible{outline:3px solid var(--eb-red);outline-offset:4px;border-radius:8px}

.isd-eb-meta{padding-top:13px}
.isd-eb-badge{
  display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.04em;
  padding:3px 9px;border-radius:999px;margin-bottom:7px;
}
.isd-eb-badge--free {background:#EDF6EE;color:#1F7A33;border:1px solid #CFE7D4}
.isd-eb-badge--paid {background:var(--eb-red-tint);color:var(--eb-red);border:1px solid #F3D2D6}
.isd-eb-badge--owned{background:#1B1712;color:#fff;border:1px solid #1B1712}
.isd-eb-badge--login{background:#F1EEF9;color:#5A3FA8;border:1px solid #DDD6EF}
.isd-eb-title{
  font-size:14.5px;font-weight:700;line-height:1.45;color:var(--eb-ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all;
}
.isd-eb-sub{
  margin-top:4px !important;font-size:12px;color:var(--eb-mute);line-height:1.5;
  display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;
}
.isd-eb-tags{margin-top:8px !important;display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.isd-eb-chip{
  font-size:10.5px;font-weight:600;color:var(--eb-body);background:var(--eb-paper);
  border:1px solid var(--eb-line);border-radius:5px;padding:2px 7px;
}
.isd-eb-chip--g{background:#fff}
.isd-eb-pages{font-size:10.5px;color:var(--eb-mute);margin-left:auto}

/* 리스트 뷰 */
.isd-eb-grid[data-view="list"]{grid-template-columns:1fr;gap:0}
.isd-eb-grid[data-view="list"] .isd-eb-card{
  display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:center;
  padding:16px 4px;border-bottom:1px solid var(--eb-line);
}
.isd-eb-grid[data-view="list"] .isd-eb-open{perspective:none}
.isd-eb-grid[data-view="list"] .isd-eb-cover{border-radius:3px 6px 6px 3px}
.isd-eb-grid[data-view="list"] .isd-eb-open:hover .isd-eb-cover{transform:translateY(-3px)}
.isd-eb-grid[data-view="list"] .isd-eb-hover{display:none}
.isd-eb-grid[data-view="list"] .isd-eb-meta{padding-top:0}
.isd-eb-grid[data-view="list"] .isd-eb-title{-webkit-line-clamp:1;font-size:16px}

/* ── CTA 버튼 / 단일 페이지 ───────────────────────────────── */
.isd-eb-cta{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 26px;border-radius:999px;font-size:14.5px;font-weight:700;
  transition:.18s;text-decoration:none;
}
.isd-eb-cta svg{width:17px;height:17px}
.isd-eb-cta--solid{background:var(--eb-red);color:#fff;box-shadow:0 6px 18px rgba(195,15,35,.26)}
.isd-eb-cta--solid:hover{background:#A50C1D;transform:translateY(-2px);color:#fff}
.isd-eb-cta--ghost{background:#fff;color:var(--eb-ink);border:1.5px solid var(--eb-line)}
.isd-eb-cta--ghost:hover{border-color:var(--eb-ink)}

.isd-eb-single-in{
  display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:clamp(24px,4vw,48px);
  align-items:start;padding:8px 0 20px;
}
.isd-eb-single-cover img{width:100%;height:auto;border-radius:6px 14px 14px 6px;box-shadow:var(--eb-sh-lg);display:block}
.isd-eb-single-body h1{font-size:clamp(24px,3.4vw,34px);font-weight:900;margin:8px 0 0;line-height:1.3}
.isd-eb-single-sub{margin-top:10px !important;color:var(--eb-body);font-size:15px}
.isd-eb-single-facts{
  list-style:none;padding:0;margin:18px 0;display:flex;flex-wrap:wrap;gap:8px;
}
.isd-eb-single-facts li{
  font-size:12.5px;color:var(--eb-body);background:var(--eb-paper);
  border:1px solid var(--eb-line);border-radius:8px;padding:6px 12px;
}
.isd-eb-single-desc{color:var(--eb-body);line-height:1.85;font-size:15px;margin-bottom:26px}
@media(max-width:640px){.isd-eb-single-in{grid-template-columns:1fr;max-width:420px;margin:0 auto}}

@media(max-width:600px){
  .isd-eb-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:24px 16px}
  .isd-eb-rail .isd-eb-card{flex-basis:136px}
  .isd-eb-flabel{flex-basis:100%;padding-top:0}
  .isd-eb-frow{flex-wrap:wrap;gap:8px}
  .isd-eb-searchwrap{flex-wrap:wrap}
  .isd-eb-count{display:none}
}

/* ═══════════════════════════════════════════════════════════════════
   뷰어 (풀스크린 오버레이)
   ═══════════════════════════════════════════════════════════════════ */
.isd-rd{
  position:fixed;inset:0;z-index:2147483000;display:flex;flex-direction:column;
  background:#14110E;color:#EFEAE1;font-family:var(--eb-sans,'Noto Sans KR',sans-serif);
  opacity:0;visibility:hidden;transition:opacity .28s;
  --rd-red:#C30F23;
}
.isd-rd.is-open{opacity:1;visibility:visible}
.isd-rd *,.isd-rd *::before,.isd-rd *::after{box-sizing:border-box}
.isd-rd button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
.isd-rd svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html.isd-rd-lock,html.isd-rd-lock body{overflow:hidden !important}
/* 관리자 바 아래로 내려서 툴바가 가리지 않게 */
body.admin-bar .isd-rd{top:32px}
@media(max-width:782px){body.admin-bar .isd-rd{top:46px}}
/* 열람 중에는 사이트의 떠 있는 위젯(왓츠앱·챗봇·맨위로 등)을 숨긴다 */
body.isd-rd-open .wa__floating_chat_box,
body.isd-rd-open .wa__btn_popup,
body.isd-rd-open .joinchat,
body.isd-rd-open #ast-scroll-top,
body.isd-rd-open .pum-overlay,
body.isd-rd-open .mwai-chatbot-container,
body.isd-rd-open .elementor-location-popup{display:none !important}

/* 상단바 */
.isd-rd-top{
  display:flex;align-items:center;gap:12px;padding:10px 14px;
  background:rgba(20,17,14,.92);border-bottom:1px solid rgba(255,255,255,.09);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:6;flex:0 0 auto;
}
.isd-rd-titlewrap{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
.isd-rd-title{
  font-family:'Noto Serif KR',serif;font-size:15px;font-weight:700;color:#FBF8F2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;
}
.isd-rd-sub{font-size:11.5px;color:#9C948A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.isd-rd-tools{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.isd-rd-btn{
  width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:#D6CFC4;
  transition:.15s;position:relative;
}
.isd-rd-btn svg{width:19px;height:19px}
.isd-rd-btn:hover{background:rgba(255,255,255,.10);color:#fff}
.isd-rd-btn.is-on{background:var(--rd-red);color:#fff}
.isd-rd-btn[hidden]{display:none}
.isd-rd-btn--close:hover{background:var(--rd-red);color:#fff}
.isd-rd-sep{width:1px;height:22px;background:rgba(255,255,255,.12);margin:0 4px}
.isd-rd-btn::after{
  content:attr(data-tip);position:absolute;top:calc(100% + 7px);left:50%;transform:translateX(-50%);
  background:#000;color:#fff;font-size:11px;padding:4px 9px;border-radius:6px;white-space:nowrap;
  opacity:0;pointer-events:none;transition:opacity .15s;z-index:9;
}
.isd-rd-btn:hover::after{opacity:.92}

/* 본문 */
.isd-rd-body{flex:1;display:flex;min-height:0;position:relative}

/* 사이드 패널 */
.isd-rd-side{
  width:288px;flex:0 0 288px;background:#1B1712;border-right:1px solid rgba(255,255,255,.08);
  display:flex;flex-direction:column;margin-left:-288px;transition:margin-left .28s cubic-bezier(.3,.8,.3,1);
  z-index:4;
}
.isd-rd.is-side .isd-rd-side{margin-left:0}
.isd-rd-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.08);flex:0 0 auto}
.isd-rd-tab{
  flex:1;padding:13px 6px;font-size:12.5px;font-weight:600;color:#8E867B;
  border-bottom:2px solid transparent;transition:.15s;
}
.isd-rd-tab.is-on{color:#fff;border-bottom-color:var(--rd-red)}
.isd-rd-panes{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3A342C transparent}
.isd-rd-panes::-webkit-scrollbar{width:8px}
.isd-rd-panes::-webkit-scrollbar-thumb{background:#3A342C;border-radius:4px}
.isd-rd-pane{display:none;padding:14px}
.isd-rd-pane.is-on{display:block}

.isd-rd-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.isd-rd-thumb{position:relative;border-radius:6px;overflow:hidden;background:#241F19;border:2px solid transparent;transition:.15s;padding:0}
.isd-rd-thumb canvas{display:block;width:100%;height:auto}
.isd-rd-thumb-ph{width:100%;aspect-ratio:1/1.414;background:linear-gradient(100deg,#241F19,#2E2820,#241F19);background-size:220% 100%;animation:isd-rd-shim 1.4s linear infinite}
@keyframes isd-rd-shim{to{background-position:-220% 0}}
.isd-rd-thumb b{
  position:absolute;bottom:0;left:0;right:0;font-size:10.5px;font-weight:600;color:#EFEAE1;
  background:linear-gradient(transparent,rgba(0,0,0,.82));padding:12px 0 3px;text-align:center;
}
.isd-rd-thumb.is-on{border-color:var(--rd-red)}
.isd-rd-thumb.is-locked{opacity:.35}

.isd-rd-toc a{
  display:block;padding:9px 10px;font-size:13px;color:#CFC7BB;text-decoration:none;
  border-radius:7px;line-height:1.5;transition:.14s;
}
.isd-rd-toc a:hover{background:rgba(255,255,255,.07);color:#fff}
.isd-rd-toc .lv1{padding-left:24px;font-size:12.5px;color:#A79F94}
.isd-rd-toc .lv2{padding-left:38px;font-size:12px;color:#8E867B}

.isd-rd-searchbox{display:flex;gap:8px;margin-bottom:12px}
.isd-rd-searchbox input{
  flex:1;background:#241F19;border:1px solid rgba(255,255,255,.12);border-radius:9px;
  color:#EFEAE1;font-family:inherit;font-size:13px;padding:10px 12px;outline:0;min-width:0;
}
.isd-rd-searchbox input:focus{border-color:var(--rd-red)}
.isd-rd-searchbox button{background:var(--rd-red);color:#fff;border-radius:9px;padding:0 14px;font-size:13px;font-weight:700}
.isd-rd-hits{list-style:none;margin:0;padding:0}
.isd-rd-hits li{
  padding:10px 11px;border-radius:8px;font-size:12.5px;color:#B7AFA3;line-height:1.6;cursor:pointer;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.isd-rd-hits li:hover{background:rgba(255,255,255,.07);color:#fff}
.isd-rd-hits mark{background:rgba(195,15,35,.42);color:#fff;border-radius:2px;padding:0 2px}
.isd-rd-hits b{display:block;font-size:10.5px;color:var(--rd-red);margin-bottom:3px}
.isd-rd-note{font-size:12px;color:#8E867B;text-align:center;padding:22px 10px;line-height:1.7}

/* 스테이지 */
.isd-rd-stage{
  flex:1;position:relative;min-width:0;display:flex;align-items:center;justify-content:center;
  padding:22px;overflow:hidden;
  background:radial-gradient(ellipse at 50% 40%,#241F19 0%,#14110E 72%);
}
.isd-rd-zoomwrap{
  transition:transform .22s ease;transform-origin:center center;
  max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;
}
.isd-rd-flip{margin:0 auto;touch-action:pan-y}
.isd-rd-page{
  background:#fff;overflow:hidden;
  box-shadow:inset 0 0 24px rgba(0,0,0,.10);
}
.isd-rd-page canvas{display:block;width:100%;height:100%;object-fit:contain}
.isd-rd-page-ph{
  width:100%;height:100%;display:grid;place-items:center;background:#F6F2EA;color:#B3AA9C;
  font-size:12px;letter-spacing:.06em;
}
.isd-rd-page--blank{background:#EFEAE1}
.isd-rd-wm{
  position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:3;
  font-size:13px;color:rgba(27,23,18,.14);letter-spacing:.3em;transform:rotate(-24deg);
  font-weight:700;
}

/* 폴백 뷰어 (StPageFlip 미로드 시) */
.isd-rd-flip.is-plain{display:flex;gap:0;box-shadow:0 18px 60px rgba(0,0,0,.55)}

/* 우철(RTL) — 좌표계를 뒤집고 페이지 내용만 되돌린다 */
.isd-rd.is-rtl .isd-rd-flip{transform:scaleX(-1)}
.isd-rd.is-rtl .isd-rd-page{transform:scaleX(-1)}

/* 미리보기 종료 페이지 */
.isd-rd-lockpage{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  height:100%;gap:12px;padding:26px;text-align:center;background:#FAF7F1;
}
.isd-rd-lockicon{color:var(--rd-red);display:block}
.isd-rd-lockicon svg{width:38px;height:38px;stroke-width:1.5}
.isd-rd-lockpage h4{
  font-family:'Noto Serif KR',serif;font-weight:700;font-size:17px;color:#1B1712;margin:0;
}
.isd-rd-lockpage p{margin:0;font-size:13px;color:#5A544A;line-height:1.75;max-width:260px}
.isd-rd-lockmeta{font-size:11.5px !important;color:#8B8377 !important;letter-spacing:.05em}
.isd-rd-lockcta{
  margin-top:6px;background:var(--rd-red);color:#fff;text-decoration:none;
  padding:11px 24px;border-radius:999px;font-size:13.5px;font-weight:700;
}
.isd-rd-lockcta:hover{background:#A50C1D;color:#fff}

/* 잠금 오버레이 */
.isd-rd-lockpane{
  position:absolute;inset:0;z-index:8;display:none;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;gap:14px;padding:30px;
  background:rgba(20,17,14,.86);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);
}
.isd-rd-lockpane.is-on{display:flex}
.isd-rd-lockpane svg{width:40px;height:40px;color:var(--rd-red);stroke-width:1.5}
.isd-rd-lockpane h3{font-family:'Noto Serif KR',serif;font-size:20px;margin:0;color:#fff;font-weight:700}
.isd-rd-lockpane p{margin:0;font-size:14px;color:#B7AFA3;line-height:1.7;max-width:380px}
.isd-rd-lockbtns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.isd-rd-lockbtn{
  background:var(--rd-red);color:#fff;padding:12px 26px;border-radius:999px;
  font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:8px;
  transition:.18s;
}
.isd-rd-lockbtn:hover{background:#A50C1D;color:#fff;transform:translateY(-2px)}
.isd-rd-lockbtn--ghost{background:rgba(255,255,255,.10);color:#EFEAE1}
.isd-rd-lockbtn--ghost:hover{background:rgba(255,255,255,.18);color:#fff}

/* 좌우 넘김 화살표 */
.isd-rd-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:5;
  width:46px;height:76px;border-radius:12px;display:grid;place-items:center;
  background:rgba(20,17,14,.55);color:#EFEAE1;border:1px solid rgba(255,255,255,.10);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  opacity:0;transition:.2s;
}
.isd-rd-nav svg{width:24px;height:24px}
.isd-rd-stage:hover .isd-rd-nav{opacity:1}
.isd-rd-nav:hover{background:var(--rd-red);border-color:var(--rd-red)}
.isd-rd-nav--prev{left:12px}
.isd-rd-nav--next{right:12px}
.isd-rd-nav[disabled]{opacity:0 !important;pointer-events:none}

/* 하단바 */
.isd-rd-bottom{
  display:flex;align-items:center;gap:14px;padding:11px 18px;flex:0 0 auto;
  background:rgba(20,17,14,.94);border-top:1px solid rgba(255,255,255,.09);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
.isd-rd-pageno{
  font-size:12.5px;color:#CFC7BB;font-variant-numeric:tabular-nums;white-space:nowrap;flex:0 0 auto;
}
.isd-rd-pageno b{color:#fff;font-weight:700}
.isd-rd-slider{
  flex:1;-webkit-appearance:none !important;appearance:none !important;
  height:4px;border-radius:2px;background:rgba(255,255,255,.16) !important;
  outline:0;min-width:60px;padding:0 !important;border:0 !important;
}
.isd-rd-slider::-webkit-slider-runnable-track{height:4px;background:transparent;border-radius:2px}
.isd-rd-slider::-webkit-slider-thumb{
  -webkit-appearance:none !important;appearance:none !important;
  width:15px !important;height:15px !important;margin-top:-5.5px !important;
  border-radius:50% !important;background:var(--rd-red) !important;
  border:2px solid #fff !important;cursor:pointer;box-shadow:0 1px 5px rgba(0,0,0,.5);
}
.isd-rd-slider::-moz-range-thumb{
  width:13px !important;height:13px !important;border-radius:50% !important;
  background:var(--rd-red) !important;border:2px solid #fff !important;cursor:pointer;
}
.isd-rd-slider::-moz-range-track{height:4px;background:rgba(255,255,255,.16);border-radius:2px}
.isd-rd-prog{
  position:absolute;left:0;right:0;top:0;height:2px;background:var(--rd-red);
  transform-origin:left;transform:scaleX(0);transition:transform .3s;z-index:7;
}

/* 로딩 */
.isd-rd-loading{
  position:absolute;inset:0;z-index:9;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:16px;background:#14110E;
}
.isd-rd-loading[hidden]{display:none}
.isd-rd-spin{
  width:38px;height:38px;border-radius:50%;
  border:3px solid rgba(255,255,255,.14);border-top-color:var(--rd-red);
  animation:isd-rd-spin .8s linear infinite;
}
@keyframes isd-rd-spin{to{transform:rotate(360deg)}}
.isd-rd-loading p{font-size:13px;color:#8E867B;margin:0}

/* 토스트 */
.isd-rd-toast{
  position:fixed;left:50%;bottom:86px;transform:translate(-50%,14px);z-index:100000;
  background:#1B1712;color:#fff;font-size:13px;padding:11px 20px;border-radius:999px;
  border:1px solid rgba(255,255,255,.14);box-shadow:0 10px 30px rgba(0,0,0,.5);
  opacity:0;pointer-events:none;transition:.24s;
}
.isd-rd-toast.is-on{opacity:1;transform:translate(-50%,0)}

@media(max-width:860px){
  .isd-rd-side{position:absolute;inset:0 auto 0 0;width:82vw;max-width:320px;flex-basis:auto;margin-left:0;
    transform:translateX(-102%);transition:transform .28s;box-shadow:0 0 40px rgba(0,0,0,.5)}
  .isd-rd.is-side .isd-rd-side{transform:translateX(0)}
  .isd-rd-stage{padding:10px}
  .isd-rd-title{font-size:13.5px}
  .isd-rd-sub{display:none}
  .isd-rd-btn{width:34px;height:34px}
  .isd-rd-btn svg{width:17px;height:17px}
  .isd-rd-btn::after{display:none}
  .isd-rd-nav{opacity:1;width:36px;height:60px;background:rgba(20,17,14,.4)}
  .isd-rd-bottom{padding:9px 12px;gap:10px}
}

/* 인쇄 차단 */
@media print{
  .isd-rd{display:none !important}
  body.isd-rd-open *{visibility:hidden !important}
}

/* v1.3 — 관리자 도구 / 판매 / 찜 */
.isd-eb-adminbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;padding:11px 14px;background:#1b1712;color:#fff;border-radius:12px;font-size:13px}
.isd-eb-adminbar strong{margin-right:auto}.isd-eb-adminbar a,.isd-eb-adminbar button{color:#fff!important;text-decoration:none;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:7px 11px;font:inherit}.isd-eb-adminbar a:hover,.isd-eb-adminbar button:hover{background:var(--eb-red)}
.isd-eb-card-admin{display:flex;gap:5px;margin-top:9px}.isd-eb-card-admin form{margin:0}.isd-eb-admin-action{display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none!important;border:1px solid var(--eb-line)!important;background:#fff!important;color:var(--eb-body)!important;border-radius:7px!important;padding:5px 9px!important;font:600 11px/1 var(--eb-sans)!important}.isd-eb-admin-action:hover{border-color:var(--eb-ink)!important;color:var(--eb-ink)!important}.isd-eb-admin-action.is-delete:hover{border-color:#c30f23!important;color:#c30f23!important}
.isd-eb-commerce{display:grid;grid-template-columns:48px 1fr 40px;gap:6px;margin-top:10px}.isd-eb-qty{width:100%!important;min-height:34px!important;border:1px solid var(--eb-line)!important;border-radius:7px!important;padding:4px!important;text-align:center!important;font:600 12px var(--eb-sans)!important}.isd-eb-cart,.isd-eb-buy{min-height:34px;border-radius:7px!important;font-size:11px!important;font-weight:700!important}.isd-eb-cart{border:1px solid var(--eb-red)!important;color:var(--eb-red)!important;background:#fff!important}.isd-eb-buy{grid-column:1/3;background:var(--eb-red)!important;color:#fff!important}.isd-eb-wish{grid-column:3;grid-row:1/3;border:1px solid var(--eb-line)!important;background:#fff!important;border-radius:7px!important;font-size:22px!important;color:var(--eb-red)!important}.isd-eb-wish[aria-pressed="true"]{background:var(--eb-red-tint)!important}
.isd-eb-admin-modal[hidden]{display:none}.isd-eb-admin-modal{position:fixed;inset:0;z-index:2147483600;background:rgba(20,17,14,.72);display:grid;place-items:center;padding:20px}.isd-eb-admin-dialog{position:relative;width:min(430px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.35)}.isd-eb-admin-dialog h2{font:800 21px var(--eb-serif);margin:0 34px 8px 0}.isd-eb-admin-dialog p{color:var(--eb-body);font-size:13px;line-height:1.65;margin-bottom:18px}.isd-eb-admin-close{position:absolute;right:14px;top:12px;width:36px;height:36px;border-radius:50%!important;font-size:24px!important}.isd-eb-unlock-form label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}.isd-eb-password-wrap{display:flex;border:1px solid var(--eb-line);border-radius:10px;overflow:hidden}.isd-eb-password-wrap:focus-within{border-color:var(--eb-red);box-shadow:0 0 0 3px rgba(195,15,35,.1)}.isd-eb-password-wrap input{flex:1;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;padding:11px 13px!important}.isd-eb-password-eye{width:46px;font-size:18px!important}.isd-eb-admin-message{min-height:22px;padding-top:7px;color:#b00020;font-size:12px}.isd-eb-unlock-submit{width:100%;background:var(--eb-red)!important;color:#fff!important;border-radius:10px!important;padding:11px!important;font-weight:800!important}.isd-eb-shop-toast{position:fixed;left:50%;bottom:28px;z-index:2147483700;transform:translate(-50%,12px);opacity:0;pointer-events:none;background:#1b1712;color:#fff;border-radius:999px;padding:11px 18px;font:600 13px var(--eb-sans);transition:.2s}.isd-eb-shop-toast.is-on{opacity:1;transform:translate(-50%,0)}
.isd-eb-grid[data-view="list"] .isd-eb-commerce{grid-column:3;min-width:210px}.isd-eb-grid[data-view="list"] .isd-eb-card{grid-template-columns:70px 1fr auto}.isd-eb-grid[data-view="list"] .isd-eb-card-admin{grid-column:2}
@media(max-width:700px){.isd-eb-grid[data-view="list"] .isd-eb-card{grid-template-columns:62px 1fr}.isd-eb-grid[data-view="list"] .isd-eb-commerce{grid-column:1/3;width:100%;min-width:0}.isd-eb-commerce{grid-template-columns:44px 1fr 38px}.isd-eb-adminbar strong{width:100%}}

/* v1.4 독서 상태·메모·텍스트 레이어 */
.isd-eb-read-progress{position:relative;height:5px;margin-top:9px;background:var(--eb-line);border-radius:99px;overflow:visible}.isd-eb-read-progress i{display:block;height:100%;background:var(--eb-red);border-radius:99px}.isd-eb-read-progress span{position:absolute;right:0;top:-17px;font-size:9px;color:var(--eb-mute)}
.isd-eb-rental{margin-top:7px!important;color:var(--eb-red);font-size:10.5px;font-weight:700}
.isd-rd{--rd-brightness:1;--rd-ui-scale:1}.isd-rd-top,.isd-rd-side,.isd-rd-bottom{font-size:calc(14px * var(--rd-ui-scale))}.isd-rd-stage{filter:brightness(var(--rd-brightness))}.isd-rd[data-theme="sepia"] .isd-rd-stage{background:#4a3d2d}.isd-rd[data-theme="sepia"] .isd-rd-page{filter:sepia(.34)}.isd-rd[data-theme="night"] .isd-rd-stage{background:#050505}.isd-rd[data-theme="night"] .isd-rd-page{filter:invert(.88) hue-rotate(180deg)}
.isd-rd-page{position:relative}.isd-rd-textlayer{position:absolute;inset:0;overflow:hidden;opacity:1;line-height:1;transform-origin:0 0;z-index:2}.isd-rd-textlayer span{position:absolute;white-space:pre;color:transparent;cursor:text;transform-origin:0 0;user-select:text;-webkit-user-select:text}.isd-rd-textlayer span::selection{background:rgba(255,210,0,.48);color:transparent}.isd-rd-page[data-highlight="yellow"]::after,.isd-rd-page[data-highlight="green"]::after,.isd-rd-page[data-highlight="pink"]::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;border:5px solid rgba(245,196,0,.7);box-shadow:inset 0 0 30px rgba(245,196,0,.13)}.isd-rd-page[data-highlight="green"]::after{border-color:rgba(40,180,100,.7);box-shadow:inset 0 0 30px rgba(40,180,100,.13)}.isd-rd-page[data-highlight="pink"]::after{border-color:rgba(225,75,130,.72);box-shadow:inset 0 0 30px rgba(225,75,130,.13)}
.isd-rd-pagejump{width:58px!important;min-height:28px!important;background:#241f19!important;border:1px solid rgba(255,255,255,.14)!important;color:#fff!important;border-radius:7px!important;text-align:center!important;padding:3px!important;font:700 12px var(--eb-sans)!important}.isd-rd-display{position:absolute;right:14px;top:14px;z-index:8;width:260px;padding:16px;background:rgba(27,23,18,.96);border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 15px 45px rgba(0,0,0,.42)}.isd-rd-display[hidden]{display:none}.isd-rd-display strong{display:block;margin-bottom:12px}.isd-rd-display label{display:grid;grid-template-columns:85px 1fr;align-items:center;gap:8px;margin:9px 0;font-size:12px}.isd-rd-display input{width:100%}.isd-rd-display>div{display:flex;gap:6px;margin-top:12px}.isd-rd-display button{flex:1;padding:7px;border:1px solid rgba(255,255,255,.14)!important;border-radius:7px!important;font-size:11px!important}.isd-rd-display button.is-on{background:var(--rd-red)!important;color:#fff!important}
.isd-rd-note-editor{display:flex;flex-direction:column;gap:8px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}.isd-rd-note-editor strong{font-size:12px}.isd-rd-note-editor textarea{min-height:110px;resize:vertical;background:#241f19;border:1px solid rgba(255,255,255,.12);border-radius:9px;color:#fff;padding:10px;font:12px/1.6 var(--eb-sans)}.isd-rd-note-editor button{background:var(--rd-red)!important;color:#fff!important;border-radius:8px!important;padding:9px!important;font-size:12px!important;font-weight:700!important}.isd-rd-saved-list{display:flex;flex-direction:column;gap:6px;padding-top:12px}.isd-rd-saved-item{display:grid!important;grid-template-columns:42px 1fr;text-align:left!important;gap:7px;padding:9px!important;border-radius:8px!important;background:rgba(255,255,255,.04)!important}.isd-rd-saved-item b{color:var(--rd-red);font-size:11px}.isd-rd-saved-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;color:#bbb}
.isd-rd[data-copy="none"] .isd-rd-textlayer,.isd-rd[data-copy="none"] .isd-rd-textlayer span{user-select:none;-webkit-user-select:none;pointer-events:none}
