.book-reader,.unse-cover,.book-print-document{--bk-paper:#fffdf8;--bk-cream:#faf5ee;--bk-desk:#f4efe7;--bk-ink:#24262d;--bk-ink-2:#4a4741;--bk-muted:#6b665f;--bk-line:#ebe4da;--bk-line-strong:#d9cfc2;--bk-brand:#e65b42;--bk-primary:#cc4630;--bk-primary-hover:#b53c27;--bk-primary-ink:#a3361f;--bk-peach:#fff4ec;--bk-navy:#2c3352;--bk-serif:"Unse Serif","Noto Serif KR","AppleMyungjo","Batang",serif;--bk-sans:"Pretendard Variable",Pretendard,"Unse Serif",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--bk-shadow:0 22px 48px rgba(70,46,24,.18);--book-page-height:620px;--book-page-width:440px}
.book-reader{position:relative;color:var(--bk-ink);font:15px/1.6 var(--bk-sans);letter-spacing:-.01em;margin-top:8px;min-width:0;isolation:isolate;word-break:keep-all}
.book-reader *{box-sizing:border-box}
.book-reader p,.book-reader p+p,.book-reader h2,.book-reader ul,.book-reader ol,.book-reader dl,.book-reader dd{margin:0}
.book-reader :focus-visible{outline:2px solid var(--bk-primary);outline-offset:3px}
.book-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.book-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;min-height:32px}
.book-meta-text{font-size:13px;color:var(--bk-muted);font-variant-numeric:tabular-nums}
.book-resume{min-height:32px;padding:4px 14px;border:1px solid #f0cdbf;border-radius:999px;background:var(--bk-peach);color:var(--bk-primary-ink);font-size:13px;font-weight:600}
.book-resume:hover{border-color:var(--bk-primary)}
.book-toolbar{position:relative;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.book-tool-button,.book-menu-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:9px 16px;border:1px solid var(--bk-line-strong);border-radius:8px;background:#fff;font:600 14px/1.4 var(--bk-sans);color:var(--bk-ink);cursor:pointer;margin:0;white-space:nowrap;transition:background-color .15s,border-color .15s}
.book-tool-button:hover,.book-menu-button:hover{background:var(--bk-cream);border-color:#c7b9a7}
.book-tool-button:active,.book-nav-button:active,.book-menu-button:active{transform:translateY(1px)}
.book-menu{position:relative;z-index:6}
.book-menu[open]{z-index:8}
.book-menu-button{list-style:none}
.book-menu-button::-webkit-details-marker{display:none}
.book-menu-button:after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.book-menu[open]>.book-menu-button:after{transform:translateY(2px) rotate(225deg)}
.book-save{margin-left:auto}
.book-save>.book-menu-button{background:var(--bk-ink);border-color:var(--bk-ink);color:#fff}
.book-save>.book-menu-button:hover{background:#3a3d47;border-color:#3a3d47}
.book-save>.book-menu-button[aria-busy=true]{cursor:progress}
.book-menu-list{position:absolute;top:calc(100% + 8px);left:0;width:min(360px,calc(100vw - 32px));padding:8px;background:var(--bk-paper);border:1px solid var(--bk-line-strong);border-radius:14px;box-shadow:0 14px 36px rgba(36,38,45,.14);max-height:min(600px,calc(100vh - 150px));max-height:min(600px,calc(100dvh - 150px));overflow:auto;overscroll-behavior:contain}
.book-save .book-menu-list{left:auto;right:0;width:min(260px,calc(100vw - 32px))}
.book-toc-link,.book-menu-item{display:flex;align-items:baseline;gap:10px;width:100%;min-height:44px;padding:10px 12px;border-radius:8px;text-align:left;font:500 14px/1.45 var(--bk-sans);color:var(--bk-ink);cursor:pointer;margin:0}
.book-toc-link:hover,.book-menu-item:hover{background:var(--bk-cream)}
.book-toc-link[aria-current]{background:var(--bk-peach);color:var(--bk-primary-ink)}
.book-menu-item[aria-disabled=true]{opacity:.55;cursor:progress}
.book-toc-num{flex:0 0 22px;font-size:12px;font-weight:600;color:var(--bk-primary-ink);font-variant-numeric:tabular-nums}
.book-toc-title{flex:1;min-width:0}
.book-toc-page{flex-shrink:0;font-size:12px;color:var(--bk-muted);font-variant-numeric:tabular-nums}
.book-menu-note{font-size:12.5px;line-height:1.6;color:var(--bk-muted);padding:8px 12px 4px;border-top:1px solid var(--bk-line);margin-top:6px!important}
.book-download-status{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13.5px;line-height:1.65;padding:11px 14px;background:var(--bk-cream);border:1px solid var(--bk-line);border-radius:8px;margin:0 0 14px!important;color:var(--bk-ink-2)}
.book-status-ok{background:#eef6f0;border-color:#cfe5d6;color:#24563a}
.book-status-error{background:#fdecea;border-color:#f3c9c4;color:#8c1d16}
.book-status-action{min-height:40px;padding:7px 16px;border-radius:8px;background:var(--bk-primary);color:#fff;font:600 14px/1.4 var(--bk-sans);margin:0}
.book-status-action:hover{background:var(--bk-primary-hover)}
.book-stage-wrap{padding:26px 20px 28px;background:var(--bk-desk);border:1px solid #ece5da;border-radius:22px}
.book-stage{position:relative;width:var(--book-page-width);max-width:100%;height:var(--book-page-height);margin:0 auto;perspective:2200px;touch-action:pan-y pinch-zoom;outline:none}
.book-reader[data-layout=spread] .book-stage{width:calc(var(--book-page-width) * 2)}
.book-stage:focus-visible{outline:2px solid var(--bk-primary);outline-offset:6px;border-radius:4px}
.book-spread{height:100%;display:grid;grid-template-columns:minmax(0,1fr);position:relative;box-shadow:var(--bk-shadow);border-radius:3px}
.book-reader[data-layout=spread] .book-spread{grid-template-columns:repeat(2,minmax(0,1fr))}
.book-reader[data-layout=spread] .book-spread.is-closed{box-shadow:none}
.book-reader[data-layout=spread] .book-spread:not(.is-closed):after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(120,96,70,.28);pointer-events:none;z-index:1}
.book-slot-blank{background:none!important;display:flex;align-items:center;justify-content:center;padding:0 12%}
.book-slot-hint{font:500 13.5px/1.6 var(--bk-sans);color:var(--bk-muted);text-align:center;word-break:keep-all}
.book-is-turning .book-slot-hint{visibility:hidden}
.book-page{position:relative;height:var(--book-page-height);background:var(--bk-paper);min-width:0;color:var(--bk-ink);overflow:hidden}
.book-page-single{border-radius:3px}
.book-page-left{background:linear-gradient(to right,var(--bk-paper) 88%,#f3ece0 100%);border-radius:3px 0 0 3px}
.book-page-right{background:linear-gradient(to right,#ece3d4 0%,var(--bk-paper) 9%);border-radius:0 3px 3px 0}
.book-page-copy{position:absolute;top:66px;right:42px;bottom:60px;left:42px;overflow:visible}
.book-page-end:after{content:"";display:block;width:9px;height:9px;margin:28px auto 0;border:1.5px solid var(--bk-brand);transform:rotate(45deg);opacity:.75}
.book-page-running{position:absolute;left:42px;right:42px;top:26px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font:500 11.5px/1.6 var(--bk-sans);letter-spacing:.02em;color:var(--bk-muted);margin:0!important}
.book-page-right .book-page-running{text-align:right}
.book-folio{position:absolute;bottom:24px;left:42px;right:42px;text-align:center;font:500 12px/1.4 var(--bk-sans);color:var(--bk-muted);letter-spacing:.06em;font-variant-numeric:tabular-nums}
.book-page-left .book-folio{text-align:left}
.book-page-right .book-folio{text-align:right}
.book-page-measure{position:absolute!important;left:0;top:0;visibility:hidden;pointer-events:none;z-index:-1}
.book-page-measure .book-page-copy{overflow:hidden}
.book-reader .book-copy-body,.book-reader .book-copy-lead,.book-reader .book-copy-note{font-family:var(--bk-serif);font-size:17px;line-height:1.95;font-weight:400;color:var(--bk-ink);word-break:keep-all;overflow-wrap:anywhere;white-space:pre-line;letter-spacing:-.01em;margin:0 0 1.1em!important}
.book-reader .book-copy-lead{font-size:18.5px;line-height:1.8;margin-bottom:1em!important}
.book-reader .book-copy-note{font-size:15px;color:var(--bk-ink-2)}
.book-reader .book-copy-continued{margin-top:0!important}
.book-opener{padding-top:calc(var(--book-page-height) * .06);margin-bottom:6px}
.book-group-glance .book-opener,.book-group-contents .book-opener,.book-group-colophon .book-opener,.book-group-practice .book-opener{padding-top:0}
.book-reader .book-opener-kicker{font:600 13px/1.4 var(--bk-sans);letter-spacing:.14em;color:var(--bk-primary-ink);margin-bottom:10px!important}
.book-reader .book-opener-title{font:600 27px/1.42 var(--bk-serif);letter-spacing:-.02em;color:var(--bk-ink);word-break:keep-all;overflow-wrap:anywhere;margin:0!important}
.book-basis{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px!important}
.book-basis-label{font:600 12px/1.4 var(--bk-sans);color:var(--bk-muted);margin-right:2px}
.book-basis-chip{font:500 12.5px/1.4 var(--bk-sans);color:var(--bk-ink-2);background:var(--bk-cream);border:1px solid var(--bk-line-strong);border-radius:999px;padding:4px 11px}
.book-ornament{display:block;position:relative;width:46px;height:1px;background:var(--bk-brand);margin:20px 0 26px}
.book-ornament:after{content:"";position:absolute;right:-9px;top:-3px;width:6px;height:6px;border:1px solid var(--bk-brand);transform:rotate(45deg)}
.book-group-contents .book-ornament,.book-group-glance .book-ornament,.book-group-colophon .book-ornament{margin:14px 0 16px}
.book-contents-link{display:flex;align-items:baseline;gap:10px;width:100%;padding:calc(6px + var(--book-contents-pad,0px)) 0;text-align:left;color:var(--bk-ink);font:400 15px/1.45 var(--bk-serif);border-bottom:1px solid var(--bk-line);cursor:pointer;margin:0!important}
.book-contents-link:hover .book-contents-title{color:var(--bk-primary-ink)}
.book-contents-num{flex:0 0 26px;font:600 12.5px/1.5 var(--bk-sans);color:var(--bk-primary-ink);font-variant-numeric:tabular-nums}
.book-contents-title{min-width:0;word-break:keep-all}
.book-contents-leader{flex:1 1 16px;min-width:16px;border-bottom:1px dotted var(--bk-line-strong);transform:translateY(-4px)}
.book-contents-page{flex-shrink:0;font:500 13px/1.5 var(--bk-sans);color:var(--bk-muted);font-variant-numeric:tabular-nums}
.book-mini-title{font:600 12.5px/1.5 var(--bk-sans);letter-spacing:.04em;color:var(--bk-muted);margin-bottom:8px!important}
.book-mini-title-spaced{margin-top:6px!important}
.book-note{font:400 13px/1.65 var(--bk-sans);color:var(--bk-muted);margin-top:10px!important}
.book-reader .book-glance-note{margin-bottom:18px}
.book-glance-head{margin-bottom:12px}
.book-glance-headline{font:600 21px/1.5 var(--bk-serif);letter-spacing:-.02em;color:var(--bk-ink);word-break:keep-all}
.book-glance-sub{font:500 14px/1.6 var(--bk-sans);color:var(--bk-ink-2);margin-top:6px!important}
.book-glance-line{font:400 13.5px/1.6 var(--bk-sans);color:var(--bk-muted);margin-top:4px!important}
.book-el-wood{--el:#3f8f5a;--el-tint:#e7f3ea}
.book-el-fire{--el:#d9482f;--el-tint:#fde8e3}
.book-el-earth{--el:#b98a2e;--el-tint:#f7eedb;--el-ink:#8f6a1f}
.book-el-metal{--el:#7d8590;--el-tint:#eef0f3}
.book-el-water{--el:#2f4f8f;--el-tint:#e6ecf7}
.book-el-none{--el:var(--bk-ink-2);--el-tint:var(--bk-cream)}
.book-pillars{table-layout:fixed;border-collapse:separate;border-spacing:5px 4px;margin:0 -5px 10px;width:calc(100% + 10px)}
.book-pillars caption{text-align:left;font:600 13px/1.5 var(--bk-sans);color:var(--bk-ink-2);padding:0 5px 4px}
.book-pillars th,.book-pillars td{text-align:center;vertical-align:middle;padding:0}
.book-pillars thead th{font:600 12.5px/1.5 var(--bk-sans);color:var(--bk-ink-2);padding-bottom:2px}
.book-pillars thead th.is-day{color:var(--bk-primary-ink)}
.book-pillars .book-pillars-corner{width:42px}
.book-pillars tbody th{font:500 11.5px/1.3 var(--bk-sans);color:var(--bk-muted);text-align:left;width:42px}
.book-pillar-god{font:500 12.5px/1.4 var(--bk-sans);color:var(--bk-ink-2);padding:3px 0!important}
.book-pillar-god.is-day{color:var(--bk-primary-ink);font-weight:700}
.book-pillar-glyph{background:var(--el-tint);border-radius:10px;padding:6px 2px 5px!important}
.book-pillar-glyph.is-day{box-shadow:inset 0 0 0 1.5px var(--bk-primary)}
.book-pillar-glyph.is-missing{background:var(--bk-cream);box-shadow:inset 0 0 0 1px var(--bk-line-strong)}
.book-pillar-hanja{display:block;font:600 29px/1.15 var(--bk-serif);color:var(--el-ink,var(--el))}
.book-pillar-reading{display:block;font:500 11.5px/1.4 var(--bk-sans);color:var(--bk-ink-2);margin-top:3px}
.book-pillar-missing{display:block;font:500 12.5px/3.2 var(--bk-sans);color:var(--bk-muted)}
.book-pillar-hidden{font:400 11.5px/1.4 var(--bk-sans);color:var(--bk-muted);padding-top:2px!important}
.book-elements{margin-bottom:16px}
.book-glance-pair{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:22px;align-items:start}
.book-glance-pair .book-chips{flex-direction:column;align-items:flex-start}
.book-compact .book-glance-pair{grid-template-columns:1fr;gap:4px}
.book-compact .book-glance-pair .book-chips{flex-direction:row}
.book-element-list{list-style:none;padding:0;display:grid;gap:7px}
.book-element-list li{display:grid;grid-template-columns:30px minmax(0,1fr) 34px;align-items:center;gap:10px}
.book-element-name{display:flex;align-items:center;gap:6px;font:600 13.5px/1 var(--bk-serif);color:var(--bk-ink)}
.book-element-name:before{content:"";width:8px;height:8px;border-radius:2px;background:var(--el)}
.book-element-track{height:8px;border-radius:4px;background:var(--bk-line);overflow:hidden}
.book-element-fill{display:block;height:100%;background:var(--el);border-radius:4px;min-width:0}
.book-element-count{font:500 12.5px/1 var(--bk-sans);color:var(--bk-ink-2);text-align:right;font-variant-numeric:tabular-nums}
.book-chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.book-chips li{font:500 13px/1.45 var(--bk-sans);color:var(--bk-ink-2);background:#fff;border:1px solid var(--bk-line-strong);border-radius:999px;padding:4px 12px}
.book-chips-keywords li{background:var(--bk-peach);border-color:#f2d3c4;color:var(--bk-primary-ink)}
.book-chips-quiet li{background:transparent}
.book-keywords,.book-relations,.book-sihua,.book-conditions{margin-bottom:16px}
.book-palaces+.book-keywords,.book-facts+.book-sihua,.book-facts+.book-pillars,.book-facts+.book-conditions{margin-top:18px}
.book-facts-yiji{margin-bottom:6px}
.book-facts{display:grid;gap:0;margin-bottom:16px;border-top:1px solid var(--bk-line)}
.book-facts>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid var(--bk-line)}
.book-reader .book-facts dt{font:600 12.5px/1.6 var(--bk-sans);color:var(--bk-muted)}
.book-reader .book-facts dd{font:500 14px/1.6 var(--bk-sans);color:var(--bk-ink);overflow-wrap:anywhere}
.book-facts-grid{grid-template-columns:1fr 1fr;column-gap:16px;border-top:0}
.book-facts-grid>div{grid-template-columns:1fr;gap:1px;border-bottom:1px solid var(--bk-line);padding:8px 0}
.book-facts-grid>.is-wide{grid-column:1/-1}
.book-facts-yiji dd{font-family:var(--bk-serif)!important}
.book-conditions ul{padding-left:18px;font:400 13px/1.7 var(--bk-sans);color:var(--bk-ink-2)}
.book-palaces{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:6px}
.book-palaces li{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:baseline;padding:7px 10px;border:1px solid var(--bk-line);border-radius:8px;background:#fff;min-height:56px}
.book-palaces li.is-ming{border-color:var(--bk-primary);background:var(--bk-peach)}
.book-palaces li.is-body{border-color:#c3cbe0}
.book-palace-name{font:600 13px/1.5 var(--bk-sans);color:var(--bk-ink)}
.book-palace-branch{font:400 12px/1.5 var(--bk-sans);color:var(--bk-muted);text-align:right}
.book-palace-stars{grid-column:1/-1;font:500 13px/1.5 var(--bk-serif);color:var(--bk-navy);overflow-wrap:anywhere}
.book-day-card{text-align:center;padding:18px 16px 16px;border:1px solid var(--bk-line-strong);border-radius:14px;background:#fff;margin-bottom:14px}
.book-day-date{font:600 14px/1.5 var(--bk-sans);color:var(--bk-ink-2)}
.book-day-ganzhi{display:flex;flex-direction:column;align-items:center;margin:6px 0 10px!important}
.book-day-hanja{font:600 46px/1.15 var(--bk-serif);letter-spacing:.06em;color:var(--bk-ink)}
.book-day-reading{font:500 14px/1.5 var(--bk-sans);color:var(--bk-primary-ink);margin-top:2px}
.book-day-card .book-chips{justify-content:center}
.book-date-row{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.9fr) minmax(0,1.15fr);gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--bk-line);font:500 13.5px/1.5 var(--bk-sans);color:var(--bk-ink)}
.book-date-head{font:600 12px/1.4 var(--bk-sans);color:var(--bk-muted);border-bottom:1px solid var(--bk-line-strong);padding:4px 0 6px}
.book-date-index{display:inline-block;width:22px;font:600 11.5px/1 var(--bk-sans);color:var(--bk-primary-ink);font-variant-numeric:tabular-nums}
.book-date-ganzhi{font-family:var(--bk-serif);color:var(--bk-ink-2)}
.book-date-lunar{font-size:12.5px;color:var(--bk-muted)}
.book-date-son{display:inline-block;font-style:normal;font:600 11px/1.4 var(--bk-sans);color:var(--bk-primary-ink);background:var(--bk-peach);border-radius:999px;padding:1px 7px;margin-left:5px}
.book-action{position:relative;padding:14px 18px;margin-bottom:12px;background:var(--bk-cream);border:1px solid var(--bk-line);border-radius:14px}
.book-action-label{display:inline-block;font:600 12px/1.5 var(--bk-sans);color:#fff;background:var(--bk-primary);border-radius:999px;padding:2px 10px;margin-bottom:8px}
.book-action-text{font:400 15.5px/1.75 var(--bk-serif);color:var(--bk-ink-2);word-break:keep-all;overflow-wrap:anywhere}
.book-action-text strong{font-weight:600;color:var(--bk-ink)}
.book-recap-start{margin-top:10px;padding-top:16px;border-top:1px solid var(--bk-line-strong)}
.book-recap-end{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--bk-line-strong)}
.book-recap:not(.book-recap-start){margin-top:4px}
.book-recap ol{padding-left:22px;font:400 15.5px/1.75 var(--bk-serif);color:var(--bk-ink)}
.book-recap li::marker{color:var(--bk-primary-ink);font:600 13px var(--bk-sans)}
.book-signature{display:flex;align-items:center;justify-content:flex-end;gap:12px;font:600 16px/1.4 var(--bk-serif);color:var(--bk-ink);padding-top:6px}
.book-seal{display:inline-grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);grid-auto-flow:column;direction:rtl;place-items:center;width:46px;height:46px;padding:5px;flex-shrink:0;background:var(--bk-primary);color:#fff;border-radius:5px;font:600 14px/1 var(--bk-serif);box-shadow:inset 0 0 0 2px var(--bk-primary),inset 0 0 0 3px rgba(255,255,255,.55);transform:rotate(-3deg)}
.book-seal span{display:block;line-height:1}
.book-seal-small{width:38px;height:38px;font-size:12px;padding:4px}
.book-reader .book-colophon{margin-bottom:12px}
.book-reader .book-group-colophon .book-opener-title{font-size:22px}
.book-group-colophon .book-ornament{margin:10px 0 12px!important}
.book-reader .book-colophon dd{font-size:12.5px}
.book-reader .book-colophon>div{grid-template-columns:72px minmax(0,1fr);padding:4px 0}
.book-reader .book-colophon dt{font-size:12px}
.book-reader .book-colophon dd{font-size:13px;font-weight:400;color:var(--bk-ink-2);line-height:1.55}
.book-reader .book-colophon+.book-disclaimer{margin-bottom:14px!important}
.book-reader .book-facts.is-row{margin:0;border-top:0}
.book-reader .book-facts.is-first{border-top:1px solid var(--bk-line)}
.book-reader .book-facts.is-last{margin-bottom:14px}
.book-reader .book-convention{position:relative;padding-left:14px;font:400 12px/1.55 var(--bk-sans);color:var(--bk-ink-2);margin-bottom:2px!important}
.book-convention:before{content:"";position:absolute;left:3px;top:.68em;width:4px;height:4px;border-radius:50%;background:var(--bk-line-strong)}
.book-disclaimer{font:500 12.5px/1.7 var(--bk-sans);color:var(--bk-ink-2);padding:10px 12px;background:var(--bk-cream);border-radius:8px}
/* 한 권의 선물: 표지 그림과 글자를 분리해 이름도 선명한 활자로 남긴다. */
.book-cover{container-type:size;background:#174c4c!important;color:#fff6e0}
.book-cover:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3cqw;max-width:14px;background:linear-gradient(90deg,rgba(0,0,0,.3),rgba(255,255,255,.06),transparent);z-index:2;pointer-events:none}
.book-cover:after{content:none}
.book-cover-inner{position:absolute;inset:0;text-align:center;isolation:isolate}
.book-cover-art{position:absolute;inset:0;margin:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.book-cover-art img{display:block;width:100%;height:100%;object-fit:fill;user-select:none}
.book-cover-series{position:absolute;top:10cqh;left:8cqw;right:8cqw;display:flex;flex-direction:column;align-items:center;gap:1.6cqh}
.book-cover-brand{font:600 clamp(12px,3.6cqw,17px)/1.3 var(--bk-serif);letter-spacing:.35em;margin-right:-.35em;color:#dabe85}
.book-cover-tagline{font:400 clamp(11px,3.2cqw,15px)/1.5 var(--bk-serif);color:#fff6e0}
.book-cover-titles{position:absolute;top:23cqh;left:10cqw;right:10cqw;display:flex;flex-direction:column;align-items:center;gap:2cqh;min-width:0}
.book-cover-title{font:600 clamp(18px,min(7.6cqw,5.5cqh),38px)/1.35 var(--bk-serif);letter-spacing:-.025em;color:#fff6e0;word-break:keep-all;overflow-wrap:anywhere;width:100%;margin:0!important}
.book-cover-person{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.book-cover-short{display:block;white-space:nowrap}
.book-cover-hook{font:400 clamp(11px,min(3.5cqw,3cqh),17px)/1.6 var(--bk-serif);color:#fff6e0;word-break:keep-all}
.book-cover-owner{font:400 clamp(10px,3cqw,14px)/1.4 var(--bk-sans);color:#dabe85;overflow-wrap:anywhere;max-width:100%}
.book-cover-badge{position:absolute;top:4cqh;right:7cqw;font:600 clamp(9px,2.8cqw,12px)/1.3 var(--bk-sans);color:#fff6e0;background:#174c4c;border:1px solid #dabe85;border-radius:2px;padding:.4em .75em;z-index:2}
.book-reader[data-layout=spread] .book-cover{border-radius:2px 5px 5px 2px;box-shadow:var(--bk-shadow)}
.unse-cover{width:100%}
.unse-cover .book-cover{position:relative;width:100%;height:auto;aspect-ratio:1/1.5;border-radius:3px 6px 6px 3px;box-shadow:var(--bk-shadow);overflow:hidden}
.book-endpaper{background-color:#f6ece2!important;background-image:radial-gradient(circle,rgba(204,70,48,.16) 1.1px,transparent 1.6px),radial-gradient(circle,rgba(204,70,48,.08) 1.1px,transparent 1.6px)!important;background-size:22px 22px,22px 22px!important;background-position:0 0,11px 11px!important;display:flex;align-items:center;justify-content:center}
.book-endpaper-mark{display:flex;flex-direction:column;align-items:center;gap:14px;padding:22px 26px;background:var(--bk-paper);border-radius:14px;box-shadow:0 1px 2px rgba(36,38,45,.06)}
.book-endpaper-mark p{font:500 13px/1.4 var(--bk-serif);color:var(--bk-ink-2);letter-spacing:.04em}
.book-navigation{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 2px 0}
.book-nav-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:96px;min-height:44px;padding:9px 16px;border:1px solid var(--bk-line-strong);background:#fff;border-radius:8px;font:600 14px/1.4 var(--bk-sans);color:var(--bk-ink);margin:0;cursor:pointer}
.book-prev:before{content:"←"/"";font-size:15px}
.book-next:after{content:"→"/"";font-size:15px}
.book-nav-button:hover:not([aria-disabled=true]){background:var(--bk-cream);border-color:#c7b9a7}
.book-nav-button[aria-disabled=true]{opacity:.4;cursor:default}
.book-progress-wrap{display:grid;gap:8px;min-width:0}
.book-page-counter{display:flex;justify-content:space-between;align-items:baseline;gap:14px;min-width:0;margin:0!important}
.book-counter-chapter{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 13px/1.5 var(--bk-sans);color:var(--bk-ink-2)}
.book-counter-pages{flex-shrink:0;font:500 12.5px/1.5 var(--bk-sans);color:var(--bk-muted);font-variant-numeric:tabular-nums}
.book-progress{position:relative;height:3px;border-radius:2px;background:var(--bk-line)}
.book-progress-fill{position:absolute;left:0;top:0;bottom:0;background:var(--bk-primary);border-radius:2px;transition:width .3s}
.book-progress-tick{position:absolute;top:-2px;width:1px;height:7px;background:var(--bk-line-strong)}
.book-reader-hint{font:400 12.5px/1.6 var(--bk-sans);color:var(--bk-muted);text-align:center;margin-top:10px!important}
.book-continuous{background:var(--bk-paper);border:1px solid var(--bk-line);border-radius:14px}
.book-continuous-inner{max-width:680px;margin:0 auto;padding:48px 52px 56px}
.book-continuous-cover .book-cover{position:relative;width:min(300px,72%);height:auto;aspect-ratio:1/1.414;margin:0 auto 40px;box-shadow:var(--bk-shadow);border-radius:3px 6px 6px 3px;overflow:hidden}
.book-continuous-section{padding:34px 0 8px;border-top:1px solid var(--bk-line);scroll-margin-top:90px;outline:none}
.book-continuous-section .book-opener{padding-top:0}
.book-continuous .book-copy-body{font-size:17px}
.book-print-document{display:none}
.book-flip-leaf{position:absolute;top:0;left:0;width:100%;height:100%;transform-style:preserve-3d;transform-origin:left center;z-index:4;pointer-events:none;will-change:transform}
.book-reader[data-layout=spread] .book-flip-leaf{width:50%;left:50%}
.book-flip-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;box-shadow:0 10px 22px rgba(70,46,24,.22)}
.book-flip-face>.book-page{height:100%;width:100%}
.book-flip-back{transform:rotateY(180deg)}
.book-flip-face:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(80,58,30,.32),transparent 45%,rgba(90,60,25,.28));opacity:0;animation:book-leaf-shadow 680ms ease-in-out both;pointer-events:none}
.book-turn-next{animation:book-turn-forward 680ms cubic-bezier(.42,.04,.24,1) both}
.book-turn-prev{animation:book-turn-forward 680ms cubic-bezier(.42,.04,.24,1) reverse both}
.book-turn-prev .book-flip-face:after{animation-direction:reverse}
@keyframes book-turn-forward{from{transform:rotateY(0deg)}to{transform:rotateY(-180deg)}}
@keyframes book-leaf-shadow{0%,100%{opacity:.04}48%{opacity:.9}}
.book-compact .book-page-copy{top:54px;right:24px;bottom:52px;left:26px}
.book-compact .book-page-running{left:26px;right:24px;top:20px;font-size:11px}
.book-compact .book-folio{left:26px;right:24px;bottom:20px}
.book-compact .book-copy-body{font-size:16px!important;line-height:1.92!important}
.book-compact .book-copy-lead{font-size:17px!important}
.book-compact .book-opener-title{font-size:23px!important}
.book-compact .book-pillar-hanja{font-size:24px}
.book-compact .book-pillar-glyph{padding:4px 1px 3px!important;border-radius:8px}
.book-compact .book-pillar-reading{font-size:11px;margin-top:1px}
.book-compact .book-pillar-god,.book-compact .book-pillars thead th{font-size:12px;padding:1px 0!important}
.book-compact .book-glance-head{margin-bottom:8px}
.book-compact .book-glance-line{font-size:13px}
.book-compact .book-opener-title{line-height:1.36}
.book-compact .book-ornament{margin:16px 0 20px}
.book-compact .book-group-contents .book-ornament,.book-compact .book-group-glance .book-ornament,.book-compact .book-group-colophon .book-ornament{margin:12px 0 12px}
.book-compact .book-contents-link{padding:calc(3px + var(--book-contents-pad,0px)) 0;font-size:14.5px;line-height:1.36}
.book-compact .book-contents-num{flex-basis:22px}
.book-compact .book-pillars tbody th{width:34px;font-size:11px}
.book-compact .book-pillars .book-pillars-corner{width:34px}
.book-compact .book-pillars{border-spacing:4px 4px;margin:0 -4px 12px;width:calc(100% + 8px)}
.book-compact .book-glance-headline{font-size:19px}
.book-compact .book-day-hanja{font-size:40px}
.book-compact .book-action{padding:14px 15px}
.book-compact .book-action-text{font-size:15.5px}
.book-compact .book-date-row{grid-template-columns:minmax(0,1.5fr) minmax(0,.95fr);font-size:13px;gap:2px 8px}
.book-compact .book-date-row .book-date-lunar{grid-column:1/-1;padding-left:22px}
.book-compact .book-date-head .book-date-lunar,.book-compact .book-date-head span:last-child{display:none}
.book-compact .book-facts>div{grid-template-columns:80px minmax(0,1fr)}
.book-compact .book-facts-grid>div{grid-template-columns:1fr}
.book-compact .book-palaces li{padding:6px 8px}
.info-dialog.book-sample-dialog{width:min(1120px,calc(100% - 32px));max-width:none;height:94vh;height:94dvh;max-height:none;background:#fff;overflow:hidden;color:var(--bk-ink,#24262d)}
.info-dialog.book-sample-dialog[open]{display:flex;flex-direction:column}
.book-sample-dialog .dialog-header{background:#fff;z-index:8;flex-shrink:0}
.book-sample-dialog .dialog-body{flex:1;min-height:0;padding:14px 28px 20px;max-height:none;background:#fff;overflow-y:auto;color:#24262d}
.book-sample-dialog .book-reader{margin-top:4px}
.book-sample-dialog .book-meta{display:none}
.book-sample-dialog .book-stage-wrap{padding:12px}
.book-sample-note{font-size:13px;line-height:1.6;color:#6b665f}
.book-sample-dialog .dialog-body .book-reader button{margin-top:0}
.reading-view:has(#full-report:not([hidden]) .book-reader){max-width:1120px}
@media (min-width:601px) and (max-height:760px){
  .book-stage-wrap{padding:12px 20px}
  .book-toolbar{margin-bottom:10px}
  .book-navigation{position:sticky;bottom:0;z-index:7;padding-bottom:8px;background:rgba(255,253,248,.97)}
}
@media (max-width:600px){
  .book-meta{margin-bottom:8px}
  .book-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
  .book-toolbar>.book-menu,.book-toolbar>.book-tool-button{width:100%}
  .book-tool-button,.book-menu-button{width:100%;padding:9px 8px;font-size:14px}
  .book-save{margin-left:0}
  .book-toc .book-menu-list{width:calc(100vw - 32px)}
  .book-menu-list{max-height:min(600px,calc(100vh - 230px));max-height:min(600px,calc(100dvh - 230px))}
  .book-stage-wrap{padding:0;background:none;border:0;border-radius:0}
  .book-spread{box-shadow:0 8px 24px rgba(70,46,24,.14),0 1px 3px rgba(70,46,24,.1)}
  .book-navigation{position:sticky;bottom:0;z-index:7;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;margin:0 -16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,253,248,.97);border-top:1px solid var(--bk-line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
  .book-nav-button{min-width:0;padding:9px 13px;font-size:13.5px}
  .book-page-counter{flex-direction:column;align-items:center;gap:0}
  .book-counter-chapter{font-size:12.5px;max-width:100%}
  .book-counter-pages{font-size:12px}
  .book-reader-hint{font-size:12px;margin-top:8px!important}
  .book-continuous{border-radius:10px;margin:0 -4px}
  .book-continuous-inner{padding:30px 20px 36px}
  .book-continuous .book-copy-body{font-size:16px}
  .book-continuous .book-opener-title{font-size:23px}
  .book-download-status{font-size:13px}
  .info-dialog.book-sample-dialog{width:100%;height:96vh;height:96dvh;border-radius:20px 20px 0 0}
  .book-sample-dialog .dialog-header{padding:12px 16px}
  .book-sample-dialog .dialog-header h2{font-size:17px}
  .book-sample-dialog .dialog-body{padding:10px 16px 0}
  .book-sample-note{font-size:12.5px}
}
@media (max-width:340px){
  .book-navigation{margin-inline:-12px;padding-inline:12px}
}
@media (prefers-reduced-motion:reduce){
  .book-flip-leaf,.book-flip-face:after{animation:none!important}
  .book-reader *{scroll-behavior:auto!important;transition:none!important}
}
@media print{
  body.book-print-mode>*{display:none!important}
  body.book-print-mode>.book-print-document{display:block!important;color:#111;background:#fff}
  .book-print-document .book-continuous{display:block!important;border:0;border-radius:0;background:#fff}
  .book-print-document .book-continuous-inner{max-width:150mm;margin:0 auto;padding:0}
  .book-print-document .book-continuous-cover{break-after:page}
  .book-print-document .book-continuous-cover .book-cover{width:120mm;box-shadow:none;border:1px solid #ddd}
  .book-print-document .book-continuous-section{padding-top:8mm;break-before:page;border-top:0}
  .book-print-document .book-opener-title{font-size:18pt!important;break-after:avoid}
  .book-print-document .book-copy-body,.book-print-document .book-copy-lead{font-size:11pt!important;line-height:1.8!important;orphans:3;widows:3}
  .book-print-document .book-action,.book-print-document .book-recap,.book-print-document .book-pillars,.book-print-document .book-date-row{break-inside:avoid}
  .book-reader .book-meta,.book-reader .book-toolbar,.book-reader .book-navigation,.book-reader .book-reader-hint,.book-reader .book-stage-wrap,.book-reader .book-download-status{display:none!important}
  .book-reader .book-continuous[hidden]{display:block!important}
  .book-reader .book-continuous{border:0;background:#fff}
}

/* 책갈피는 문단 위치로 저장해 화면이 바뀌어도 같은 내용으로 돌아온다. */
.book-bookmarks .book-menu-list{left:0;right:auto;width:min(340px,calc(100vw - 32px))}
.book-mark-toggle{font-weight:600;color:#174c4c;border-bottom:1px solid var(--bk-line);border-radius:0}
.book-mark-toggle[aria-pressed=true]{background:#e7f0ec}
.book-mark-items{margin-top:6px}
.book-mark-row{display:flex;gap:4px;align-items:center;border-bottom:1px solid var(--bk-line)}
.book-mark-jump{min-width:0;flex:1;align-items:center;justify-content:space-between;text-align:left;font-size:13px}
.book-mark-jump>span:first-child{min-width:0;overflow-wrap:anywhere}
.book-mark-remove{min-width:44px;min-height:44px;padding:8px;font:500 12px/1.4 var(--bk-sans);color:var(--bk-muted);cursor:pointer}
.book-mark-remove:hover{color:var(--bk-primary-ink);background:var(--bk-peach)}
.book-page-ribbon{position:absolute;top:0;right:16px;width:18px;height:40px;background:#b94337;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);z-index:3;pointer-events:none}
@media(max-width:600px){.book-toolbar{gap:6px}.book-tool-button,.book-menu-button{padding:9px 11px;font-size:13px}}
@media print{.book-bookmarks,.book-page-ribbon{display:none!important}.book-cover{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

@media(max-width:600px){.book-bookmarks{position:static}.book-bookmarks .book-menu-list{left:0;right:0;width:100%;z-index:8}.book-menu-button{gap:5px}}
@media(max-width:340px){.book-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
