risu-ebooklike-viewer 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
//@name risu-ebooklike-viewer
|
|
2
|
-
//@display-name risu-ebooklike-viewer_v0.
|
|
3
|
-
//@version 0.
|
|
2
|
+
//@display-name risu-ebooklike-viewer_v0.2.0
|
|
3
|
+
//@version 0.2.0
|
|
4
4
|
//@description EBook like viewer for RISU AI
|
|
5
5
|
//@arg arg1 string
|
|
6
6
|
//@arg arg2 int
|
|
7
7
|
|
|
8
|
-
//@link https://unpkg.com/risu-ebooklike-viewer@0.
|
|
9
|
-
!function(){"use strict";try{if("undefined"!=typeof document){var e=document.createElement("style");e.appendChild(document.createTextNode('@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css";@import"//fonts.googleapis.com/earlyaccess/notosanskr.css";.burger-menu{z-index:10}.update-dialog-module__udRoot--bWc9J{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483646;display:grid;place-items:center;background:#0006;padding:16px}.update-dialog-module__udCard---wy8T{width:min(520px,100%);max-height:90vh;border-radius:16px;padding:20px;background:var(--bg, #111);color:var(--fg, #eaeaea);box-shadow:0 10px 30px #00000059;transform:scale(.97);animation:update-dialog-module__udPop--0Vb0B .16s ease-out forwards;overflow-y:auto}.update-dialog-module__udTitle--5imsi{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.update-dialog-module__udTitle--5imsi h3{margin:0;font-size:18px;font-weight:700;word-break:break-word;flex:1 1 auto;min-width:0}.update-dialog-module__udPill--leinK{font:12px/1.8 system-ui;padding:0 8px;border-radius:999px;background:#2a2a2a;color:#cfcfcf;white-space:nowrap;flex-shrink:0}.update-dialog-module__udSub--zfs1y{margin:8px 0 12px;color:#9aa0a6;font:13px/1.5 system-ui;word-break:break-word}.update-dialog-module__udList--jnFg8{margin:10px 0 16px;padding-left:18px;max-height:180px;overflow-y:auto;overflow-x:hidden}.update-dialog-module__udList--jnFg8 li{margin:6px 0;word-break:break-word;overflow-wrap:break-word}.update-dialog-module__udFeat--MSXJY::marker{content:"✨ "}.update-dialog-module__udFix--18UZ3::marker{content:"🔧 "}.update-dialog-module__udPerf--bRifN::marker{content:"⚡ "}.update-dialog-module__udBreak--jl-Bf::marker{content:"⚠️ "}.update-dialog-module__udActions--5tqy2{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.update-dialog-module__udBtn--IHB-y{border:0;padding:10px 12px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;white-space:nowrap;flex:0 1 auto}.update-dialog-module__udBtnPrimary--ZlLFd{border:0;padding:10px 12px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;background:#4f7cff;color:#fff;white-space:nowrap;flex:0 1 auto}.update-dialog-module__udBtnGhost--Ly-cb{border:0;padding:10px 12px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;background:transparent;color:#cfcfcf;white-space:nowrap;flex:0 1 auto}.update-dialog-module__udBtn--IHB-y:hover,.update-dialog-module__udBtnPrimary--ZlLFd:hover,.update-dialog-module__udBtnGhost--Ly-cb:hover{filter:brightness(1.05)}@media(max-width:480px){.update-dialog-module__udCard---wy8T{padding:16px;border-radius:12px}.update-dialog-module__udTitle--5imsi{gap:8px}.update-dialog-module__udTitle--5imsi h3{font-size:16px}.update-dialog-module__udPill--leinK{font-size:11px;padding:0 6px}.update-dialog-module__udSub--zfs1y{font-size:12px;margin:6px 0 10px}.update-dialog-module__udList--jnFg8{font-size:14px;max-height:150px;padding-left:16px}.update-dialog-module__udList--jnFg8 li{margin:5px 0;line-height:1.5}.update-dialog-module__udActions--5tqy2{flex-direction:column;gap:8px}.update-dialog-module__udBtn--IHB-y,.update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udBtnGhost--Ly-cb{width:100%;padding:11px 16px;font-size:14px}}@media(min-width:481px)and (max-width:600px){.update-dialog-module__udCard---wy8T{padding:18px}.update-dialog-module__udActions--5tqy2{gap:6px}.update-dialog-module__udBtn--IHB-y,.update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udBtnGhost--Ly-cb{padding:9px 11px;font-size:13px}}@media(prefers-color-scheme:light){:root{--bg: #fff;--fg: #111}.update-dialog-module__udCard---wy8T{background:#fff;color:#111}.update-dialog-module__udPill--leinK{background:#eef2ff;color:#1f3fb3}.update-dialog-module__udSub--zfs1y{color:#4b5563}}@media(prefers-reduced-motion:reduce){.update-dialog-module__udCard---wy8T{animation:none;transform:none}}@keyframes update-dialog-module__udPop--0Vb0B{to{transform:scale(1)}}.update-dialog-module__udAlert--GJ6WI{max-width:420px;text-align:center}.update-dialog-module__udAlertMessage--nJfX4{margin:16px 0 20px;font-size:16px;line-height:1.6;color:var(--fg, #eaeaea);white-space:pre-line;word-break:break-word}.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udActions--5tqy2{justify-content:center}.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtn--IHB-y,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnGhost--Ly-cb{min-width:120px}@media(max-width:480px){.update-dialog-module__udAlert--GJ6WI{max-width:100%}.update-dialog-module__udAlertMessage--nJfX4{font-size:15px;margin:12px 0 16px}.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtn--IHB-y,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnGhost--Ly-cb{min-width:100px;padding:11px 16px}}@media(prefers-color-scheme:light){.update-dialog-module__udAlertMessage--nJfX4{color:var(--fg, #111)}}.update-dialog-module__udLoading----KQf{max-width:320px;text-align:center;padding:32px 24px}.update-dialog-module__udLoadingSpinner--0OgBH{display:flex;justify-content:center;align-items:center;margin-bottom:20px}.update-dialog-module__udLoadingSvg--k5e0b{width:50px;height:50px;animation:update-dialog-module__udRotate--gve2C 1.4s linear infinite}.update-dialog-module__udLoadingCircle--Q78XG{stroke:#4f7cff;stroke-linecap:round;animation:update-dialog-module__udDash--TGdW5 1.4s ease-in-out infinite}.update-dialog-module__udLoadingMessage---UM99{font-size:15px;line-height:1.6;color:var(--fg, #eaeaea);font-weight:500;word-break:break-word}@media(max-width:480px){.update-dialog-module__udLoading----KQf{max-width:100%;padding:28px 20px}.update-dialog-module__udLoadingSpinner--0OgBH{margin-bottom:16px}.update-dialog-module__udLoadingSvg--k5e0b{width:44px;height:44px}.update-dialog-module__udLoadingMessage---UM99{font-size:14px}}@keyframes update-dialog-module__udRotate--gve2C{to{transform:rotate(360deg)}}@keyframes update-dialog-module__udDash--TGdW5{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}@media(prefers-color-scheme:light){.update-dialog-module__udLoadingMessage---UM99{color:var(--fg, #111)}}@media(prefers-reduced-motion:reduce){.update-dialog-module__udLoadingSvg--k5e0b{animation:none}.update-dialog-module__udLoadingCircle--Q78XG{animation:none;stroke-dasharray:90,150}}@font-face{font-family:나눔스퀘어네오;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:에스코어드림;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff) format("woff")}@font-face{font-family:레페리포인트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2201-2@1.0/LeferiPoint-WhiteObliqueA.woff) format("woff")}@font-face{font-family:플렉스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-07@1.0/IBMPlexSansKR-Regular.woff) format("woff")}@font-face{font-family:스위트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2304-2@1.0/SUITE-Regular.woff2) format("woff2")}@font-face{font-family:오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2310@1.0/Orbit-Regular.woff2) format("woff2")}@font-face{font-family:스쿨오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2307-2@1.0/HakgyoansimWoojuR.woff2) format("woff2")}@font-face{font-family:프리티나잇;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Oneprettynight.woff) format("woff")}@font-face{font-family:서라운드에어;src:url(https://gcore.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/Cafe24SsurroundAir.woff) format("woff")}@font-face{font-family:고운돋움;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunDodum-Regular.woff) format("woff")}@font-face{font-family:고운바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunBatang-Regular.woff) format("woff")}@font-face{font-family:리디바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.0/RIDIBatang.woff) format("woff")}@font-face{font-family:마루부리;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2) format("woff2"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.ttf) format("truetype")}@font-face{font-family:도스고딕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_eight@1.0/DOSGothic.woff) format("woff")}@font-face{font-family:스타더스트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/PFStardust.woff) format("woff")}@font-face{font-family:픽시드시스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/DungGeunMo.woff) format("woff")}@font-face{font-family:네오둥근모;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.3/NeoDunggeunmo.woff) format("woff")}.pc-viewer-container{position:absolute;top:0;left:0;width:100%;height:100%}.pc-viewer-container>div{padding:unset!important;margin:unset!important;justify-content:unset!important;align-items:unset!important}.pc-viewer-container>div>div{margin:unset!important;justify-content:unset!important}.book-viewer-root{--bv-bg-gradient-start: #1a1f35;--bv-bg-gradient-end: #2d3654;--bv-page-color: #fdfbf7;--bv-page-shadow: #f5f0e8;--bv-text-color: #2c2c2c;--bv-text-secondary: #6b6b6b;--bv-accent-color: #c9a66b;--bv-accent-hover: #b8935a;--bv-divider-color: #e8e4dc;--bv-spine-gradient: linear-gradient( 90deg, #d4cfc4 0%, hsl(41, 13%, 76%) 50%, #d4cfc4 100% );--bv-shadow-soft: 0 4px 20px rgba(0, 0, 0, .08);--bv-shadow-medium: 0 8px 40px rgba(0, 0, 0, .12);--bv-shadow-strong: 0 20px 60px rgba(0, 0, 0, .2);--bv-shadow-inner: inset 0 0 30px rgba(0, 0, 0, .03);--bv-font-size: 17px;--bv-line-height: 1.9;--bv-font-family: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--bv-font-serif: "Noto Serif KR", "Crimson Text", "Georgia", serif;--bv-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--bv-transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--bv-transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--FontColorStandard: #2c2c2c;--FontColorItalic: #5a5a5a;--FontColorBold: #1a1a1a;--FontColorItalicBold: #5a5a5a;--FontColorQuote1: #0e7490;--FontColorQuote2: #c2410c;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.book-viewer-root[data-theme=sepia]{--bv-bg-gradient-start: #3d3830;--bv-bg-gradient-end: #4a4238;--bv-page-color: #f7f0e3;--bv-page-shadow: #ebe4d7;--bv-text-color: #3d2e1c;--bv-text-secondary: #7a6b5a;--bv-accent-color: #8b7355;--bv-divider-color: #d4c9b8;--bv-spine-gradient: linear-gradient( 90deg, #c4b9a8 0%, #b8ad9c 50%, #c4b9a8 100% );--FontColorBold: #2a1f10;--FontColorItalicBold: #6b5a48;--FontColorStandard: #3d2e1c;--FontColorQuote1: #1a6b6b;--FontColorQuote2: #a85d20;--FontColorItalic: #6b5a48;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.book-viewer-root[data-theme=dark]{--bv-bg-gradient-start: #0d1117;--bv-bg-gradient-end: #161b22;--bv-page-color: var(--risu-theme-bgcolor);--bv-page-shadow: #151a20;--bv-text-color: #c9d1d9;--bv-text-secondary: #8b949e;--bv-accent-color: #d4a574;--bv-accent-hover: #e0b584;--bv-divider-color: #30363d;--bv-spine-gradient: linear-gradient( 90deg, #21262d 0%, #30363d 50%, #21262d 100% );--FontColorStandard: #fafafa;--FontColorItalic: #8c8d93;--FontColorBold: #fafafa;--FontColorItalicBold: #8c8d93;--FontColorQuote1: #8be9fd;--FontColorQuote2: #ffb86c;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.text-content p{margin-top:1em}.text-content h1{font-weight:800;font-size:2.25em;line-height:1.1111111}.text-content h2{font-weight:700;font-size:1.5em;line-height:1.3333333}.text-content h3{font-weight:600;font-size:1.25em;line-height:1.6}.book-viewer-root{position:absolute;top:0;left:0;width:100%;height:100%;display:flex!important;flex-direction:column;overflow:hidden;z-index:5;font-family:var(--bv-font-family);background:linear-gradient(135deg,var(--bv-bg-gradient-start) 0%,var(--bv-bg-gradient-end) 100%);-webkit-user-select:none;-moz-user-select:none;user-select:none;border-bottom:1px solid var(--bv-divider-color)}.book-viewer-root:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 80%,rgba(201,166,107,.05) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(201,166,107,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.book-header{display:flex!important;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--bv-page-color);border-bottom:1px solid var(--bv-divider-color);flex-shrink:0;z-index:1}.header-left{display:flex!important;align-items:center;gap:12px;min-width:0;flex:1;margin-left:30px}.header-thumbnail{width:40px;height:40px;min-width:40px;border-radius:8px;background-size:cover;background-position:center;background-color:var(--bv-divider-color);box-shadow:0 2px 8px #0000001a}.header-info{display:flex!important;align-items:center;gap:12px;min-width:0;flex:1}.header-name{font-size:15px;font-weight:600;color:var(--bv-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-buttons{display:flex!important;align-items:center;gap:4px}.header-buttons button{background:none;border:none;padding:6px;cursor:pointer;color:var(--bv-text-secondary);border-radius:6px;transition:all var(--bv-transition-fast);display:flex;align-items:center;justify-content:center}.header-buttons button:hover{background:#0000000d;color:var(--bv-accent-color)}.book-viewer-root[data-theme=dark] .header-buttons button:hover{background:#ffffff14}.header-buttons button :global(svg){width:18px;height:18px}.header-right{display:flex!important;align-items:center;gap:8px;flex-shrink:0}.chat-index-nav{display:flex!important;align-items:center;gap:4px}.chat-nav-btn{background:none;border:none;padding:4px;cursor:pointer;color:var(--bv-text-secondary);border-radius:4px;transition:all var(--bv-transition-fast);display:flex!important;align-items:center;justify-content:center}.chat-nav-btn:hover:not(:disabled){background:#0000000d;color:var(--bv-accent-color)}.chat-nav-btn:disabled{opacity:.3;cursor:not-allowed}.book-viewer-root[data-theme=dark] .chat-nav-btn:hover:not(:disabled){background:#ffffff14}.header-chat-index{font-size:13px;font-weight:500;color:var(--bv-text-secondary);background:#0000000a;padding:4px 10px;border-radius:12px;display:flex;align-items:center;gap:4px}.chat-index-total{font-size:11px;opacity:.7}.book-viewer-root[data-theme=dark] .header-chat-index{background:#ffffff14}.close-btn{background:none;border:none;padding:6px;cursor:pointer;color:var(--bv-text-secondary);border-radius:6px;transition:all var(--bv-transition-fast);display:flex!important;align-items:center;justify-content:center}.close-btn:hover{background:#0000000d;color:var(--bv-accent-color)}.book-pages{position:relative;display:flex!important;flex:1;min-height:0;z-index:1}.page{flex:1;background:var(--bv-page-color);position:relative;overflow:hidden}.page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,rgba(0,0,0,.02) 0%,transparent 5%,transparent 95%,rgba(0,0,0,.02) 100%),url("data:image/svg+xml,%3Csvg viewBox=\'0 0 200 200\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cfilter id=\'noise\'%3E%3CfeTurbulence type=\'fractalNoise\' baseFrequency=\'0.9\' numOctaves=\'4\' stitchTiles=\'stitch\'/%3E%3C/filter%3E%3Crect width=\'100%25\' height=\'100%25\' filter=\'url(%23noise)\' opacity=\'0.03\'/%3E%3C/svg%3E");pointer-events:none;z-index:1}.book-viewer-root[data-theme=dark] .page:before{opacity:.5}.page-left{border-radius:4px 0 0 4px;box-shadow:var(--bv-shadow-inner)}.page-left:after{content:"";position:absolute;top:0;right:0;width:40px;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.03) 100%);pointer-events:none}.page-right{border-radius:0 4px 4px 0;box-shadow:var(--bv-shadow-inner)}.page-right:after{content:"";position:absolute;top:0;left:0;width:40px;height:100%;background:linear-gradient(90deg,rgba(0,0,0,.03) 0%,transparent 100%);pointer-events:none}.book-spine{width:8px;background:var(--bv-spine-gradient);position:relative;box-shadow:inset 2px 0 4px #0000001a,inset -2px 0 4px #0000001a}.book-spine:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:1px;height:100%;background:#0000001a}.page-content{padding:50px 60px 10px;height:100%;display:flex!important;flex-direction:column;color:var(--bv-text-color);position:relative;z-index:2}.page-content>.chattext [class*=-image-wrapper]{max-height:100%}.page-content>.chattext [class*=-image-container]{min-height:98%;max-height:100%}.page-content>.x-risu-image-cell{aspect-ratio:auto}.text-content{flex:1;overflow-y:auto;font-size:var(--bv-font-size)!important;line-height:var(--bv-line-height)!important;font-family:var(--bv-font-family)!important;text-align:-webkit-auto;word-break:keep-all;letter-spacing:-.01em;padding-right:10px;-moz-user-select:text;user-select:text;-webkit-user-select:text;cursor:text}.text-content *{-moz-user-select:text;user-select:text;-webkit-user-select:text}.text-content :global(h1),.text-content :global(h2),.text-content :global(h3){margin:2em 0 1em;text-indent:0;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.text-content :global(h1){font-size:1.8em;border-bottom:2px solid var(--bv-accent-color);padding-bottom:.5em}.text-content :global(h2){font-size:1.4em}.text-content :global(mark),.text-content :global(mark[risu-mark]){display:inline;background:linear-gradient(120deg,#c9a66b33,#c9a66b4d);color:inherit;padding:.1em .3em;border-radius:3px;flex-direction:unset;align-items:unset;gap:unset}.text-content:has(img){position:static}.text-content :global(img){position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin:0;z-index:10}.page-content:has(img) .page-number{display:none}.page-number{font-size:13px;color:var(--bv-text-secondary);font-weight:500;letter-spacing:.05em}.left-page-num{text-align:left}.right-page-num{text-align:right}.click-area{position:absolute;top:0;width:5%;height:100%;z-index:10;cursor:pointer}.click-left{left:0;cursor:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'32\' height=\'32\' viewBox=\'0 0 24 24\' fill=\'none\' stroke=\'%23c9a66b\' stroke-width=\'2\'%3E%3Cpolyline points=\'15 18 9 12 15 6\'%3E%3C/polyline%3E%3C/svg%3E") 16 16,w-resize}.click-right{right:0;cursor:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'32\' height=\'32\' viewBox=\'0 0 24 24\' fill=\'none\' stroke=\'%23c9a66b\' stroke-width=\'2\'%3E%3Cpolyline points=\'9 18 15 12 9 6\'%3E%3C/polyline%3E%3C/svg%3E") 16 16,e-resize}.click-area:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:50px;height:100px;opacity:0;transition:opacity var(--bv-transition-smooth);pointer-events:none}.click-left:after{left:30px;background:radial-gradient(ellipse at left,rgba(201,166,107,.15),transparent 70%)}.click-right:after{right:30px;background:radial-gradient(ellipse at right,rgba(201,166,107,.15),transparent 70%)}.click-area:hover:after{opacity:1}.nav-controls{display:flex;align-items:center;justify-content:center;gap:32px;background:var(--bv-page-color);padding:14px 40px;border-top:1px solid rgba(201,166,107,.12);flex-shrink:0;z-index:1}.nav-btn{background:none;border:none;cursor:pointer;padding:10px;border-radius:50%;transition:all var(--bv-transition-fast);color:var(--bv-accent-color);display:flex;align-items:center;justify-content:center}.nav-btn :global(svg){transition:transform var(--bv-transition-fast)}.nav-btn:hover:not(:disabled){background:#c9a66b1f}.nav-btn:hover:not(:disabled) :global(svg){transform:scale(1.1)}.nav-btn:active:not(:disabled){background:transparent!important}.nav-btn:active:not(:disabled) :global(svg){transform:scale(.95)}.nav-btn:disabled{opacity:.25;cursor:not-allowed}.page-indicator{font-size:14px;color:var(--bv-text-color);min-width:90px;text-align:center;font-weight:600;letter-spacing:.02em;font-variant-numeric:tabular-nums}.nav-right-buttons{display:flex;align-items:center;gap:8px;margin-left:auto;padding-left:20px}.nav-icon-btn{background:none;border:2px solid var(--bv-accent-color);color:var(--bv-accent-color);padding:8px 12px;cursor:pointer;border-radius:8px;transition:all var(--bv-transition-fast);font-size:13px!important;font-weight:600!important;display:flex;align-items:center;justify-content:center;gap:4px}.nav-icon-btn:hover{background:var(--bv-accent-color);color:#fff}.nav-icon-btn :global(svg){width:18px;height:18px}.nav-icon-btn.loading{opacity:.7;cursor:wait}.nav-icon-btn.loading svg{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dropdown-container{position:relative}.dropdown-menu{display:none;position:absolute;bottom:calc(100% + 40px);right:0;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:16px;border-radius:16px;box-shadow:var(--bv-shadow-strong);min-width:280px;max-width:320px;border:1px solid rgba(201,166,107,.15);z-index:200}.dropdown-menu.active{display:block;animation:dropdownFadeIn .25s cubic-bezier(.4,0,.2,1)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.book-viewer-root[data-theme=dark] .dropdown-menu{background:#1c2128fa}.dropdown-header{font-size:14px;font-weight:700;color:var(--bv-text-color);padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--bv-divider-color);text-transform:uppercase;letter-spacing:.05em}.setting-item{margin-bottom:16px}.setting-item label{display:block;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--bv-font-color);text-transform:uppercase;letter-spacing:.06em}.setting-item input[type=range]{width:100%;height:5px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#e8e4dc;border-radius:3px;outline:none;margin-bottom:6px}.book-viewer-root[data-theme=dark] .setting-item input[type=range]{background:#30363d}.setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:var(--bv-accent-color);border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #c9a66b66;-webkit-transition:all var(--bv-transition-fast);transition:all var(--bv-transition-fast)}.setting-item input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}.setting-item input[type=range]::-moz-range-thumb{width:18px;height:18px;background:var(--bv-accent-color);border-radius:50%;cursor:pointer;border:none}.setting-item select{width:100%;padding:10px 14px;border:2px solid #e8e4dc;border-radius:10px;font-size:13px;background:#fff;cursor:pointer;transition:all var(--bv-transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'24\' height=\'24\' viewBox=\'0 0 24 24\' fill=\'none\' stroke=\'%23c9a66b\' stroke-width=\'2\'%3E%3Cpolyline points=\'6 9 12 15 18 9\'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}.book-viewer-root[data-theme=dark] .setting-item select{background-color:#21262d;border-color:#30363d;color:var(--bv-font-color)}.book-viewer-root[data-theme=light] .setting-item select,.book-viewer-root[data-theme=sepia] .setting-item select{color:var(--bv-font-color)}.setting-item select:hover{border-color:var(--bv-accent-color)}.setting-item select:focus{outline:none;border-color:var(--bv-accent-color);box-shadow:0 0 0 3px #c9a66b26}.setting-item span{font-size:11px;color:var(--bv-text-secondary);font-weight:500}.custom-css-btn{width:100%;padding:10px 16px;background:var(--bv-accent-color);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all var(--bv-transition-fast)}.custom-css-btn:hover{background:var(--bv-accent-hover);transform:translateY(-1px)}.lb-modules-list{max-height:300px;overflow-y:auto}.lb-module-item{padding:10px 12px;margin-bottom:6px;background:#c9a66b14;border-radius:8px;cursor:pointer;transition:all var(--bv-transition-fast);font-size:13px;color:var(--bv-text-color)}.lb-module-item:hover{background:#c9a66b33}.lb-module-item:last-child{margin-bottom:0}.book-viewer-root[data-theme=dark] .lb-module-item{background:#d4a5741a}.book-viewer-root[data-theme=dark] .lb-module-item:hover{background:#d4a57433}.modal-overlay{display:none!important;position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;justify-content:center;align-items:center}.modal-overlay.active{display:flex;animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bv-page-color);border-radius:16px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--bv-shadow-strong);animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1)}.book-viewer-root[data-theme=dark] .modal-content{background:#1c2128}.modal-header{display:flex!important;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--bv-divider-color)}.modal-header h3{font-size:18px;font-weight:700;color:var(--bv-text-color);margin:0}.modal-close{background:none;border:none;font-size:24px;color:var(--bv-text-secondary);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all var(--bv-transition-fast)}.modal-close:hover{background:#0000000d;color:var(--bv-text-color)}.book-viewer-root[data-theme=dark] .modal-close:hover{background:#ffffff1a}.modal-body{flex:1;padding:20px 24px;overflow:auto}.modal-body textarea{width:100%;height:300px;padding:16px;border:2px solid var(--bv-divider-color);border-radius:12px;font-family:Consolas,Monaco,monospace;font-size:14px;line-height:1.6;resize:vertical;background:#fafafa;color:var(--bv-text-color)}.book-viewer-root[data-theme=dark] .modal-body textarea{background:#0d1117;border-color:#30363d}.modal-body textarea:focus{outline:none;border-color:var(--bv-accent-color);box-shadow:0 0 0 3px #c9a66b26}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--bv-divider-color)}.modal-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--bv-transition-fast)}.modal-btn.primary{background:var(--bv-accent-color);color:#fff;border:none}.modal-btn.primary:hover{background:var(--bv-accent-hover)}.modal-btn.secondary{background:transparent;color:var(--bv-text-secondary);border:2px solid var(--bv-divider-color)}.modal-btn.secondary:hover{border-color:var(--bv-text-secondary);color:var(--bv-text-color)}@media(max-width:1200px){.page-content{padding:50px 40px 40px}.text-content{font-size:16px}}@media(max-width:900px){.book-header{padding:10px 16px}.header-thumbnail{width:32px;height:32px;min-width:32px;border-radius:6px}.header-name{font-size:14px}.header-buttons button{padding:4px}.header-buttons button :global(svg){width:16px;height:16px}.page-content{padding:40px 30px 35px}.book-spine{width:4px}.nav-controls{padding:12px 20px;gap:20px}}.viewer-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;width:unset!important;pointer-events:none;opacity:0;transition:opacity .3s ease}.viewer-toast.clickable:hover .toast-content{transform:scale(1.02);box-shadow:0 6px 28px #0006}.viewer-toast.clickable:active .toast-content{transform:scale(.98)}@font-face{font-family:나눔스퀘어네오;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:에스코어드림;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff) format("woff")}@font-face{font-family:레페리포인트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2201-2@1.0/LeferiPoint-WhiteObliqueA.woff) format("woff")}@font-face{font-family:플렉스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-07@1.0/IBMPlexSansKR-Regular.woff) format("woff")}@font-face{font-family:스위트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2304-2@1.0/SUITE-Regular.woff2) format("woff2")}@font-face{font-family:오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2310@1.0/Orbit-Regular.woff2) format("woff2")}@font-face{font-family:스쿨오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2307-2@1.0/HakgyoansimWoojuR.woff2) format("woff2")}@font-face{font-family:프리티나잇;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Oneprettynight.woff) format("woff")}@font-face{font-family:서라운드에어;src:url(https://gcore.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/Cafe24SsurroundAir.woff) format("woff")}@font-face{font-family:고운돋움;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunDodum-Regular.woff) format("woff")}@font-face{font-family:고운바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunBatang-Regular.woff) format("woff")}@font-face{font-family:리디바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.0/RIDIBatang.woff) format("woff")}@font-face{font-family:마루부리;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2) format("woff2"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.ttf) format("truetype")}@font-face{font-family:도스고딕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_eight@1.0/DOSGothic.woff) format("woff")}@font-face{font-family:스타더스트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/PFStardust.woff) format("woff")}@font-face{font-family:픽시드시스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/DungGeunMo.woff) format("woff")}@font-face{font-family:네오둥근모;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.3/NeoDunggeunmo.woff) format("woff")}.risu-chat>div{padding:unset!important;margin:unset!important;justify-content:unset!important;align-items:unset!important}.risu-chat>div>div{margin:unset!important;justify-content:unset!important}@media screen and (max-width:768px){.risu-chat>div{padding:unset!important;overflow-x:unset!important}}.mobile-reader{--mv-bg-gradient-start: #1a1f35;--mv-bg-gradient-end: #2d3654;--mv-page-color: #fdfbf7;--mv-text-color: #2c2c2c;--mv-text-secondary: #6b6b6b;--mv-header-bg: rgba(26, 31, 53, .97);--mv-footer-bg: rgba(253, 251, 247, .98);--mv-accent-color: #c9a66b;--mv-accent-light: rgba(201, 166, 107, .15);--mv-border-color: rgba(201, 166, 107, .2);--mv-shadow-soft: 0 2px 12px rgba(0, 0, 0, .08);--mv-shadow-medium: 0 4px 24px rgba(0, 0, 0, .12);--mv-shadow-glow: 0 0 20px rgba(201, 166, 107, .15);--mv-font-size: 17px;--mv-line-height: 1.85;--mv-font-family: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--mv-font-serif: "Noto Serif KR", "Crimson Text", "Georgia", serif;--mv-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--mv-transition-smooth: .3s cubic-bezier(.4, 0, .2, 1)}.mobile-reader{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;background:linear-gradient(135deg,var(--mv-bg-gradient-start) 0%,var(--mv-bg-gradient-end) 100%);z-index:5;font-family:var(--mv-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}.mobile-reader .reader-header{display:flex;flex-direction:column;background:var(--mv-header-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--mv-border-color);z-index:5;flex-shrink:0}.mobile-reader .header-row{display:flex;align-items:center;padding:0 12px}.mobile-reader .header-row-top{justify-content:space-between;padding-top:10px;padding-bottom:6px}.mobile-reader .header-row-bottom{justify-content:space-between;padding-top:4px;padding-bottom:10px;border-top:1px solid rgba(255,255,255,.06)}.mobile-reader .header-btn{background:none;border:none;color:#ffffffd9;padding:8px;cursor:pointer;border-radius:10px;transition:all var(--mv-transition-fast);display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:44px;min-height:44px}.mobile-reader .header-btn:active{background:#c9a66b33;color:var(--mv-accent-color);transform:scale(.95)}.mobile-reader .header-btn svg{width:20px;height:20px}.mobile-reader .header-bot-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0;justify-content:center}.mobile-reader .header-thumbnail{width:32px;height:32px;min-width:32px;border-radius:8px;background-size:cover;background-position:center;background-color:#ffffff1a;box-shadow:0 2px 6px #0003}.mobile-reader .header-bot-name{font-size:14px;font-weight:600;color:var(--mv-accent-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.mobile-reader .header-action-buttons{display:flex;align-items:center;gap:2px}.mobile-reader .header-action-buttons button{background:none;border:none;padding:6px;cursor:pointer;color:#fff9;border-radius:8px;transition:all var(--mv-transition-fast);display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px}.mobile-reader .header-action-buttons button:active{background:#c9a66b33;color:var(--mv-accent-color)}.mobile-reader .header-action-buttons button svg{width:18px;height:18px}.mobile-reader .header-chat-index{font-size:12px;font-weight:500;color:#fff9;background:#ffffff14;padding:4px 10px;border-radius:10px}.mobile-reader .header-right-group{display:flex;align-items:center;gap:8px}.mobile-reader .header-toggle-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--mv-accent-color);padding:4px 10px;font-size:11px;font-weight:700;border-radius:8px;cursor:pointer;transition:all var(--mv-transition-fast);min-height:32px}.mobile-reader .header-toggle-btn:active{background:var(--mv-accent-color);color:#fff;transform:scale(.95)}.mobile-reader .page-container{flex:1;overflow:hidden;position:relative;background:var(--mv-page-color);margin:10px;border-radius:12px;box-shadow:var(--mv-shadow-medium),var(--mv-shadow-glow);touch-action:pan-y;-moz-user-select:text!important;user-select:text!important;-webkit-user-select:text!important;cursor:text}.mobile-reader .page-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg viewBox=\'0 0 200 200\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cfilter id=\'noise\'%3E%3CfeTurbulence type=\'fractalNoise\' baseFrequency=\'0.9\' numOctaves=\'4\' stitchTiles=\'stitch\'/%3E%3C/filter%3E%3Crect width=\'100%25\' height=\'100%25\' filter=\'url(%23noise)\' opacity=\'0.02\'/%3E%3C/svg%3E");pointer-events:none;z-index:1;border-radius:12px}.mobile-reader .page-content{width:100%;height:100%;display:flex;flex-direction:column;padding:28px 24px;overflow:hidden;position:relative;z-index:2}.mobile-reader .text-content{flex:1;font-size:var(--mv-font-size)!important;line-height:var(--mv-line-height)!important;font-family:var(--mv-font-family)!important;color:var(--bv-text-color);word-break:keep-all;letter-spacing:-.01em;overflow-y:scroll!important;-moz-user-select:text;user-select:text;-webkit-user-select:text;cursor:text}.mobile-reader .text-content p{margin-bottom:1.3em}.mobile-reader .text-content p:first-child{text-indent:0}.mobile-reader .text-content h1,.mobile-reader .text-content h2,.mobile-reader .text-content h3{margin:1.8em 0 .8em;text-indent:0;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.mobile-reader .text-content h1{font-size:1.6em;border-bottom:2px solid var(--mv-accent-color);padding-bottom:.4em}.mobile-reader .text-content mark{background:linear-gradient(120deg,#c9a66b33,#c9a66b4d);color:inherit;padding:.1em .2em;border-radius:3px}.mobile-reader .text-content img{max-width:100%;height:auto;margin:1.2em 0;border-radius:8px;box-shadow:var(--mv-shadow-soft)}.mobile-reader .page-number{position:absolute;bottom:12px;font-size:11px;color:var(--mv-text-secondary);opacity:.6}.mobile-reader .page-number.left{left:10px}.mobile-reader .page-number.right{right:16px}.mobile-reader .touch-area{position:absolute;top:0;bottom:0;width:10%;z-index:50}.mobile-reader .touch-left{left:0}.mobile-reader .touch-right{right:0}.reader-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--mv-footer-bg, rgba(253, 251, 247, .98));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(201,166,107,.12);gap:12px;flex-shrink:0}.nav-btn{background:#c9a66b14;border:1px solid rgba(201,166,107,.25);color:var(--mv-accent-color, #c9a66b);padding:6px 14px;cursor:pointer;border-radius:20px;transition:all var(--mv-transition-fast, .15s cubic-bezier(.4, 0, .2, 1));display:flex;align-items:center;justify-content:center;gap:4px;min-height:32px;font-size:12px;font-weight:600}.nav-btn svg{width:14px;height:14px;flex-shrink:0;transition:transform var(--mv-transition-fast, .15s cubic-bezier(.4, 0, .2, 1))}.btn-label{font-size:11px;font-weight:600;letter-spacing:.02em}.nav-btn:active:not(:disabled){background:var(--mv-accent-color, #c9a66b);border-color:var(--mv-accent-color, #c9a66b);color:#fff;transform:scale(.97)}.nav-btn:disabled{opacity:.3;cursor:not-allowed}.page-info{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.page-indicator{font-size:11px;font-weight:600;color:var(--mv-text-secondary, #6b6b6b);white-space:nowrap;letter-spacing:.02em}.progress-bar{flex:1;height:3px;background:#c9a66b26;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--mv-accent-color, #c9a66b) 0%,#d4b87a 100%);border-radius:2px;transition:width var(--mv-transition-smooth, .3s cubic-bezier(.4, 0, .2, 1))}@supports (padding-bottom: env(safe-area-inset-bottom)){.reader-footer{padding-bottom:max(8px,env(safe-area-inset-bottom))}}.mobile-reader .panel-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-reader .panel-content{position:absolute;bottom:0;left:0;width:100%;background:var(--mv-page-color);border-radius:24px 24px 0 0;overflow-y:auto;animation:slideUp .35s cubic-bezier(.4,0,.2,1);box-shadow:0 -8px 32px #0003}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.mobile-reader .panel-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid rgba(201,166,107,.2);position:sticky;top:0;background:var(--mv-page-color);z-index:5}.mobile-reader .panel-header h3{font-size:18px;font-weight:700;color:var(--mv-text-color);letter-spacing:-.02em;margin:0}.mobile-reader .panel-close{background:none;border:none;font-size:20px;color:var(--mv-text-secondary);cursor:pointer;padding:8px 12px;border-radius:8px;transition:all var(--mv-transition-fast);line-height:1}.mobile-reader .panel-close:active{background:var(--mv-accent-light);color:var(--mv-accent-color)}.mobile-reader .panel-body{padding:24px}.mobile-reader .settings-panel{position:fixed;top:0;left:0;width:100%;height:100%;z-index:100;display:none}.mobile-reader .settings-panel.active{display:block}.mobile-reader .settings-panel .panel-content{max-height:80%}.mobile-reader .setting-item{margin-bottom:32px}.mobile-reader .setting-item:last-child{margin-bottom:0}.mobile-reader .setting-item label{display:block;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--mv-text-color);text-transform:uppercase;letter-spacing:.08em}.mobile-reader .range-control{display:flex;align-items:center;gap:14px;margin-bottom:10px}.mobile-reader .range-label{font-size:12px;color:var(--mv-text-secondary);min-width:36px}.mobile-reader .setting-item input[type=range]{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:#c9a66b40;border-radius:3px;outline:none}.mobile-reader .setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:26px;height:26px;background:var(--mv-accent-color);border-radius:50%;cursor:pointer;box-shadow:0 2px 10px #c9a66b66}.mobile-reader .setting-item input[type=range]::-moz-range-thumb{width:26px;height:26px;background:var(--mv-accent-color);border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 10px #c9a66b66}.mobile-reader .setting-value{display:block;text-align:center;font-size:13px;color:var(--mv-accent-color);font-weight:600}.mobile-reader .theme-buttons{display:flex;gap:12px}.mobile-reader .theme-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 12px;border:2px solid rgba(201,166,107,.25);border-radius:16px;background:transparent;cursor:pointer;transition:all var(--mv-transition-fast);font-size:13px;color:var(--mv-text-secondary);font-weight:500}.mobile-reader .theme-btn.active{border-color:var(--mv-accent-color);background:var(--mv-accent-light);color:var(--mv-accent-color)}.mobile-reader .theme-btn:active:not(.active){transform:scale(.97);background:#c9a66b14}.mobile-reader .theme-preview{width:44px;height:44px;border-radius:50%;border:2px solid rgba(201,166,107,.3);box-shadow:var(--mv-shadow-soft)}.mobile-reader .theme-preview.light{background:linear-gradient(135deg,#fff,#fdfbf7)}.mobile-reader .theme-preview.sepia{background:linear-gradient(135deg,#f7f0e3,#ebe4d7)}.mobile-reader .theme-preview.dark{background:linear-gradient(135deg,#1c2128,#0d1117)}.mobile-reader .font-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:200px;overflow-y:auto}.mobile-reader .font-option{padding:12px;border:2px solid rgba(201,166,107,.2);border-radius:10px;background:transparent;cursor:pointer;transition:all var(--mv-transition-fast);font-size:13px;color:var(--mv-text-color);text-align:center}.mobile-reader .font-option.active{border-color:var(--mv-accent-color);background:var(--mv-accent-light);color:var(--mv-accent-color)}.mobile-reader .font-option:active:not(.active){background:#c9a66b14}.mobile-reader .custom-css-btn{width:100%;padding:14px 16px;background:var(--mv-accent-color);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--mv-transition-fast)}.mobile-reader .custom-css-btn:active{transform:scale(.98);opacity:.9}.mobile-reader .lb-panel{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10;display:none}.mobile-reader .lb-panel.active{display:block}.mobile-reader .lb-panel .panel-content{max-height:60%}.mobile-reader .lb-modules-list{display:flex;flex-direction:column;gap:10px}.mobile-reader .lb-module-item{padding:16px;background:#c9a66b14;border-radius:12px;cursor:pointer;transition:all var(--mv-transition-fast);font-size:15px;font-weight:500;color:var(--mv-text-color);border:1px solid transparent}.mobile-reader .lb-module-item:active{background:#c9a66b33;border-color:var(--mv-accent-color);transform:scale(.98)}.mobile-reader .lb-empty{text-align:center;color:var(--mv-text-secondary);font-size:14px;padding:20px}.mobile-reader .modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:300;display:flex;justify-content:center;align-items:center;padding:20px}.mobile-reader .modal-content{background:var(--mv-page-color);border-radius:16px;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0006;animation:modalSlideIn .25s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-reader .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.1)}.mobile-reader .modal-header h3{font-size:16px;font-weight:700;color:var(--mv-text-color);margin:0}.mobile-reader .modal-close{background:none;border:none;font-size:24px;color:var(--mv-text-secondary);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all var(--mv-transition-fast);line-height:1}.mobile-reader .modal-close:active{background:#0000001a}.mobile-reader .modal-body{flex:1;padding:16px 20px;overflow:auto}.mobile-reader .modal-body textarea{width:100%;height:200px;padding:14px;border:2px solid rgba(0,0,0,.1);border-radius:10px;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:1.5;resize:vertical;background:#00000005;color:var(--mv-text-color)}.mobile-reader .modal-body textarea:focus{outline:none;border-color:var(--mv-accent-color)}.mobile-reader .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid rgba(0,0,0,.1)}.mobile-reader .modal-btn{padding:10px 18px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--mv-transition-fast)}.mobile-reader .modal-btn.primary{background:var(--mv-accent-color);color:#fff;border:none}.mobile-reader .modal-btn.primary:active{opacity:.9;transform:scale(.98)}.mobile-reader .modal-btn.secondary{background:transparent;color:var(--mv-text-secondary);border:2px solid rgba(0,0,0,.15)}.mobile-reader .modal-btn.secondary:active{background:#0000000d}.mobile-reader[data-theme=light]{--FontColorStandard: #2c2c2c;--FontColorItalic: #5a5a5a;--FontColorBold: #1a1a1a;--FontColorItalicBold: #5a5a5a;--FontColorQuote1: #0e7490;--FontColorQuote2: #c2410c;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.mobile-reader[data-theme=sepia]{--bv-bg-gradient-start: #3d3830;--bv-bg-gradient-end: #4a4238;--bv-page-color: #f7f0e3;--bv-page-shadow: #ebe4d7;--bv-text-color: #3d2e1c;--bv-text-secondary: #7a6b5a;--bv-accent-color: #8b7355;--bv-divider-color: #d4c9b8;--bv-spine-gradient: linear-gradient( 90deg, #c4b9a8 0%, #b8ad9c 50%, #c4b9a8 100% );--mv-bg-gradient-start: #3d3830;--mv-bg-gradient-end: #4a4238;--mv-page-color: #f7f0e3;--mv-text-color: #3d2e1c;--mv-text-secondary: #7a6b5a;--mv-header-bg: rgba(61, 56, 48, .97);--mv-accent-color: #8b7355;--FontColorBold: #2a1f10;--FontColorItalicBold: #6b5a48;--FontColorStandard: #3d2e1c;--FontColorQuote1: #1a6b6b;--FontColorQuote2: #a85d20;--FontColorItalic: #6b5a48;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.mobile-reader[data-theme=dark]{--bv-bg-gradient-start: #0d1117;--bv-bg-gradient-end: #161b22;--bv-page-color: var(--risu-theme-bgcolor);--bv-page-shadow: #151a20;--bv-text-color: #c9d1d9;--bv-text-secondary: #8b949e;--bv-accent-color: #d4a574;--bv-accent-hover: #e0b584;--bv-divider-color: #30363d;--bv-spine-gradient: linear-gradient( 90deg, #21262d 0%, #30363d 50%, #21262d 100% );--mv-bg-gradient-start: #0d1117;--mv-bg-gradient-end: #161b22;--mv-page-color: var(--risu-theme-bgcolor);--mv-page-shadow: #151a20;--mv-text-color: #c9d1d9;--mv-text-secondary: #8b949e;--mv-header-bg: rgba(13, 17, 23, .97);--mv-footer-bg: var(--bv-page-color);--mv-accent-color: #d4a574;--FontColorStandard: #fafafa;--FontColorItalic: #8c8d93;--FontColorBold: #fafafa;--FontColorItalicBold: #8c8d93;--FontColorQuote1: #8be9fd;--FontColorQuote2: #ffb86c;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.mobile-reader[data-theme=dark] .page-container:before{opacity:.5}.mobile-reader[data-theme=dark] .page-indicator{color:var(--mv-text-color)}.mobile-reader[data-theme=dark] .panel-content,.mobile-reader[data-theme=dark] .panel-header{background:#1c2128}.mobile-reader[data-theme=dark] .panel-header{border-bottom-color:#d4a57433}.mobile-reader[data-theme=dark] .lb-module-item{background:#d4a5741a}.mobile-reader[data-theme=dark] .lb-module-item:active{background:#d4a57433}.mobile-reader[data-theme=dark] .modal-content{background:#1c2128}.mobile-reader[data-theme=dark] .modal-body textarea{background:#0d1117;border-color:#30363d;color:var(--mv-text-color)}.mobile-reader[data-theme=dark] .modal-header,.mobile-reader[data-theme=dark] .modal-footer{border-color:#ffffff1a}.mobile-reader .loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--mv-page-color);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;border-radius:12px;opacity:1;transition:opacity .3s ease}.mobile-reader .loading-overlay.fade-out{opacity:0;pointer-events:none}@media(min-width:600px)and (orientation:landscape){.mobile-reader .page-container{margin:12px 20px}.mobile-reader .page-content{padding:36px 48px}.mobile-reader .text-content{max-width:720px;margin:0 auto;font-size:18px}.mobile-reader .reader-header,.mobile-reader .reader-footer{padding:14px 24px}}@media(min-width:768px){.mobile-reader .page-container{margin:16px 24px;border-radius:16px}.mobile-reader .page-content{padding:40px 56px}.mobile-reader .text-content{max-width:800px;font-size:18px;line-height:1.9}.mobile-reader .settings-panel .panel-content,.mobile-reader .lb-panel .panel-content{max-width:480px;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{transform:translate(-50%) translateY(100%)}to{transform:translate(-50%) translateY(0)}}}@supports (padding-top: env(safe-area-inset-top)){.mobile-reader .header-row-top{padding-top:max(10px,env(safe-area-inset-top))}.mobile-reader .reader-footer{padding-bottom:max(14px,env(safe-area-inset-bottom))}.mobile-reader .panel-body{padding-bottom:max(24px,env(safe-area-inset-bottom))}}.settings-panel{position:fixed;top:0;left:0;width:100%;height:100%;z-index:200;display:none}.settings-panel.active{display:block}.panel-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.panel-content{position:absolute;bottom:0;left:0;width:100%;background:var(--mv-page-color, #fdfbf7);border-radius:24px 24px 0 0;max-height:80%;overflow-y:auto;animation:slideUp .35s cubic-bezier(.4,0,.2,1);box-shadow:0 -8px 32px #0003}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid rgba(201,166,107,.2);position:sticky;top:0;background:var(--mv-page-color, #fdfbf7);z-index:10}.panel-header h3{font-size:18px;font-weight:700;color:var(--mv-text-color, #2c2c2c);letter-spacing:-.02em;margin:0}.panel-close{background:none;border:none;font-size:20px;color:var(--mv-text-secondary, #6b6b6b);cursor:pointer;padding:8px 12px;border-radius:8px;transition:all var(--mv-transition-fast, .15s);line-height:1}.panel-close:active{background:var(--mv-accent-light, rgba(201, 166, 107, .15));color:var(--mv-accent-color, #c9a66b)}.panel-body{padding:24px}.setting-item{margin-bottom:32px}.setting-item:last-child{margin-bottom:0}.setting-item label{display:block;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--mv-text-color, #2c2c2c);text-transform:uppercase;letter-spacing:.08em}.font-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:200px;overflow-y:auto}.font-option{padding:12px;border:2px solid rgba(201,166,107,.2);border-radius:10px;background:transparent;cursor:pointer;transition:all var(--mv-transition-fast, .15s);font-size:13px;color:var(--mv-text-color, #2c2c2c);text-align:center}.font-option.active{border-color:var(--mv-accent-color, #c9a66b);background:var(--mv-accent-light, rgba(201, 166, 107, .15));color:var(--mv-accent-color, #c9a66b)}.font-option:active:not(.active){background:#c9a66b14}.range-control{display:flex;align-items:center;gap:14px;margin-bottom:10px}.range-label{font-size:12px;color:var(--mv-text-secondary, #6b6b6b);min-width:36px}.setting-item input[type=range]{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:#c9a66b40;border-radius:3px;outline:none}.setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:26px;height:26px;background:var(--mv-accent-color, #c9a66b);border-radius:50%;cursor:pointer;box-shadow:0 2px 10px #c9a66b66}.setting-item input[type=range]::-moz-range-thumb{width:26px;height:26px;background:var(--mv-accent-color, #c9a66b);border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 10px #c9a66b66}.setting-value{display:block;text-align:center;font-size:13px;color:var(--mv-accent-color, #c9a66b);font-weight:600}.theme-buttons{display:flex;gap:12px}.theme-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 12px;border:2px solid rgba(201,166,107,.25);border-radius:16px;background:transparent;cursor:pointer;transition:all var(--mv-transition-fast, .15s);font-size:13px;color:var(--mv-text-secondary, #6b6b6b);font-weight:500}.theme-btn.active{border-color:var(--mv-accent-color, #c9a66b);background:var(--mv-accent-light, rgba(201, 166, 107, .15));color:var(--mv-accent-color, #c9a66b)}.theme-btn:active:not(.active){transform:scale(.97);background:#c9a66b14}.theme-preview{width:44px;height:44px;border-radius:50%;border:2px solid rgba(201,166,107,.3);box-shadow:var(--mv-shadow-soft, 0 2px 12px rgba(0, 0, 0, .08))}.theme-preview.light{background:linear-gradient(135deg,#fff,#fdfbf7)}.theme-preview.sepia{background:linear-gradient(135deg,#f7f0e3,#ebe4d7)}.theme-preview.dark{background:linear-gradient(135deg,#1c2128,#0d1117)}.custom-css-btn{width:100%;padding:14px 16px;background:var(--mv-accent-color, #c9a66b);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--mv-transition-fast, .15s)}.custom-css-btn:active{transform:scale(.98);opacity:.9}@supports (padding-bottom: env(safe-area-inset-bottom)){.panel-body{padding-bottom:max(24px,env(safe-area-inset-bottom))}}@media(min-width:768px){.panel-content{max-width:480px;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{transform:translate(-50%) translateY(100%)}to{transform:translate(-50%) translateY(0)}}}.viewer-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;pointer-events:none;opacity:0;transition:opacity .3s ease}.viewer-toast.showing{opacity:1}.toast-content{background:#000c;color:#fff;padding:16px 32px;border-radius:12px;font-size:15px;font-weight:500;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #0000004d;max-width:400px}:global(.book-viewer-root[data-theme=light]) .toast-content{background:#323232e6}:global(.mobile-reader[data-theme=light]) .toast-content{background:#323232e6}.viewer-toast.clickable{pointer-events:auto;cursor:pointer}.viewer-toast.clickable .toast-content{transition:transform .15s ease,box-shadow .15s ease}.viewer-toast.clickable:active .toast-content{transform:scale(.98);box-shadow:0 2px 12px #0006}')),document.head.appendChild(e)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}}();
|
|
10
|
-
!function(n){"function"==typeof define&&define.amd?define(n):n()}(function(){"use strict";var n,t,e,r,o,i,a,l,s,u,c,f,d,p,v,h,g,b,m,y,w,x,_,k,C,S,E,M,z,A,j,N,$,I,L,P,F,B,T,R,O,W,q=Object.defineProperty,D=n=>{throw TypeError(n)},H=(n,t,e)=>((n,t,e)=>t in n?q(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e)(n,"symbol"!=typeof t?t+"":t,e),U=(n,t,e)=>t.has(n)||D("Cannot "+e),V=(n,t,e)=>(U(n,t,"read from private field"),e?e.call(n):t.get(n)),G=(n,t,e)=>t.has(n)?D("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(n):t.set(n,e),Y=(n,t,e,r)=>(U(n,t,"write to private field"),r?r.call(n,e):t.set(n,e),e),K=(n,t,e)=>(U(n,t,"access private method"),e);const J={udRoot:"update-dialog-module__udRoot--bWc9J",udCard:"update-dialog-module__udCard---wy8T",udPop:"update-dialog-module__udPop--0Vb0B",udTitle:"update-dialog-module__udTitle--5imsi",udPill:"update-dialog-module__udPill--leinK",udSub:"update-dialog-module__udSub--zfs1y",udList:"update-dialog-module__udList--jnFg8",udFeat:"update-dialog-module__udFeat--MSXJY",udFix:"update-dialog-module__udFix--18UZ3",udPerf:"update-dialog-module__udPerf--bRifN",udBreak:"update-dialog-module__udBreak--jl-Bf",udActions:"update-dialog-module__udActions--5tqy2",udBtn:"update-dialog-module__udBtn--IHB-y",udBtnPrimary:"update-dialog-module__udBtnPrimary--ZlLFd",udBtnGhost:"update-dialog-module__udBtnGhost--Ly-cb",udAlert:"update-dialog-module__udAlert--GJ6WI",udAlertMessage:"update-dialog-module__udAlertMessage--nJfX4",udLoading:"update-dialog-module__udLoading----KQf",udLoadingSpinner:"update-dialog-module__udLoadingSpinner--0OgBH",udLoadingSvg:"update-dialog-module__udLoadingSvg--k5e0b",udRotate:"update-dialog-module__udRotate--gve2C",udLoadingCircle:"update-dialog-module__udLoadingCircle--Q78XG",udDash:"update-dialog-module__udDash--TGdW5",udLoadingMessage:"update-dialog-module__udLoadingMessage---UM99"},Q=!1;var X=Array.isArray,Z=Array.prototype.indexOf,nn=Array.from,tn=Object.defineProperty,en=Object.getOwnPropertyDescriptor,rn=Object.getOwnPropertyDescriptors,on=Object.prototype,an=Array.prototype,ln=Object.getPrototypeOf,sn=Object.isExtensible;function un(n){return"function"==typeof n}const cn=()=>{};function fn(n){return n()}function dn(n){for(var t=0;t<n.length;t++)n[t]()}function pn(){var n,t;return{promise:new Promise((e,r)=>{n=e,t=r}),resolve:n,reject:t}}const vn=1<<24,hn=16,gn=32,bn=64,mn=128,yn=512,wn=1024,xn=2048,_n=4096,kn=8192,Cn=16384,Sn=32768,En=65536,Mn=1<<17,zn=1<<18,An=1<<19,jn=1<<25,Nn=32768,$n=1<<21,In=1<<23,Ln=Symbol("$state"),Pn=Symbol("legacy props"),Fn=Symbol(""),Bn=new class extends Error{constructor(){super(...arguments),H(this,"name","StaleReactionError"),H(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};function Tn(n){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}const Rn=Symbol();function On(n){return n===this.v}function Wn(n){return t=n,e=this.v,!(t!=t?e==e:t!==e||null!==t&&"object"==typeof t||"function"==typeof t);var t,e}let qn=!1;let Dn=null;function Hn(n){Dn=n}function Un(n,t=!1,e){Dn={p:Dn,i:!1,c:null,e:null,s:n,x:null,l:qn&&!t?{s:null,u:null,$:[]}:null}}function Vn(n){var t=Dn,e=t.e;if(null!==e)for(var r of(t.e=null,e))ae(r);return t.i=!0,Dn=t.p,{}}function Gn(){return!qn||null!==Dn&&null===Dn.l}let Yn=[];function Kn(){var n=Yn;Yn=[],dn(n)}function Jn(n){if(0===Yn.length&&!lt){var t=Yn;queueMicrotask(()=>{t===Yn&&Kn()})}Yn.push(n)}function Qn(){for(;Yn.length>0;)Kn()}function Xn(n){var t=je;if(null===t)return Me.f|=In,n;if(0===(t.f&Sn)){if(0===(t.f&mn))throw n;t.b.error(n)}else Zn(n,t)}function Zn(n,t){for(;null!==t;){if(0!==(t.f&mn))try{return void t.b.error(n)}catch(e){n=e}t=t.parent}throw n}const nt=new Set;let tt=null,et=null,rt=null,ot=[],it=null,at=!1,lt=!1;n=new WeakMap,t=new WeakMap,e=new WeakMap,r=new WeakMap,o=new WeakMap,i=new WeakMap,a=new WeakMap,l=new WeakSet,s=function(n,t){var e;n.f^=wn;for(var r=n.first;null!==r;){var o=r.f,a=!!(96&o),s=a&&0!==(o&wn)||0!==(o&kn)||this.skipped_effects.has(r);if(0!==(r.f&mn)&&(null==(e=r.b)?void 0:e.is_pending())&&(t={parent:t,effect:r,effects:[],render_effects:[]}),!s&&null!==r.fn){a?r.f^=wn:4&o?t.effects.push(r):qe(r)&&(0!==(r.f&hn)&&V(this,i).add(r),Ge(r));var c=r.first;if(null!==c){r=c;continue}}var f=r.parent;for(r=r.next;null===r&&null!==f;)f===t.effect&&(K(this,l,u).call(this,t.effects),K(this,l,u).call(this,t.render_effects),t=t.parent),r=f.next,f=f.parent}},u=function(n){for(const t of n)0!==(t.f&xn)?V(this,i).add(t):0!==(t.f&_n)&&V(this,a).add(t),K(this,l,c).call(this,t.deps),nr(t,wn)},c=function(n){if(null!==n)for(const t of n)2&t.f&&0!==(t.f&Nn)&&(t.f^=Nn,K(this,l,c).call(this,t.deps))},f=function(){if(0===V(this,r)){for(const t of V(this,n))t();V(this,n).clear()}0===V(this,e)&&K(this,l,d).call(this)},d=function(){var n;if(nt.size>1){this.previous.clear();var t=rt,e=!0,r={parent:null,effect:null,effects:[],render_effects:[]};for(const t of nt){if(t===this){e=!1;continue}const i=[];for(const[n,r]of this.current){if(t.current.has(n)){if(!e||r===t.current.get(n))continue;t.current.set(n,r)}i.push(n)}if(0===i.length)continue;const a=[...t.current.keys()].filter(n=>!this.current.has(n));if(a.length>0){var o=ot;ot=[];const e=new Set,u=new Map;for(const n of i)pt(n,a,e,u);if(ot.length>0){tt=t,t.apply();for(const e of ot)K(n=t,l,s).call(n,e,r);t.deactivate()}ot=o}}tt=null,rt=t}this.committed=!0,nt.delete(this)};let st=class c{constructor(){G(this,l),H(this,"committed",!1),H(this,"current",new Map),H(this,"previous",new Map),G(this,n,new Set),G(this,t,new Set),G(this,e,0),G(this,r,0),G(this,o,null),G(this,i,new Set),G(this,a,new Set),H(this,"skipped_effects",new Set),H(this,"is_fork",!1)}is_deferred(){return this.is_fork||V(this,r)>0}process(n){var t;ot=[],et=null,this.apply();var e={parent:null,effect:null,effects:[],render_effects:[]};for(const r of n)K(this,l,s).call(this,r,e);this.is_fork||K(this,l,f).call(this),this.is_deferred()?(K(this,l,u).call(this,e.effects),K(this,l,u).call(this,e.render_effects)):(et=this,tt=null,dt(e.render_effects),dt(e.effects),et=null,null==(t=V(this,o))||t.resolve()),rt=null}capture(n,t){this.previous.has(n)||this.previous.set(n,t),0===(n.f&In)&&(this.current.set(n,n.v),null==rt||rt.set(n,n.v))}activate(){tt=this,this.apply()}deactivate(){tt===this&&(tt=null,rt=null)}flush(){if(this.activate(),ot.length>0){if(ut(),null!==tt&&tt!==this)return}else 0===V(this,e)&&this.process([]);this.deactivate()}discard(){for(const n of V(this,t))n(this);V(this,t).clear()}increment(n){Y(this,e,V(this,e)+1),n&&Y(this,r,V(this,r)+1)}decrement(n){Y(this,e,V(this,e)-1),n&&Y(this,r,V(this,r)-1),this.revive()}revive(){for(const n of V(this,i))V(this,a).delete(n),nr(n,xn),ht(n);for(const n of V(this,a))nr(n,_n),ht(n);this.flush()}oncommit(t){V(this,n).add(t)}ondiscard(n){V(this,t).add(n)}settled(){return(V(this,o)??Y(this,o,pn())).promise}static ensure(){if(null===tt){const n=tt=new c;nt.add(tt),lt||c.enqueue(()=>{tt===n&&n.flush()})}return tt}static enqueue(n){Jn(n)}apply(){}};function ut(){var n=ke;at=!0;try{var t=0;for(Ce(!0);ot.length>0;){var e=st.ensure();if(t++>1e3)Q,ct();e.process(ot),Mt.clear()}}finally{at=!1,Ce(n),it=null}}function ct(){try{!function(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}()}catch(n){Zn(n,it)}}let ft=null;function dt(n){var t=n.length;if(0!==t){for(var e=0;e<t;){var r=n[e++];if(!(24576&r.f)&&qe(r)&&(ft=new Set,Ge(r),null===r.deps&&null===r.first&&null===r.nodes&&(null===r.teardown&&null===r.ac?be(r):r.fn=null),(null==ft?void 0:ft.size)>0)){Mt.clear();for(const n of ft){if(24576&n.f)continue;const t=[n];let e=n.parent;for(;null!==e;)ft.has(e)&&(ft.delete(e),t.push(e)),e=e.parent;for(let n=t.length-1;n>=0;n--){const e=t[n];24576&e.f||Ge(e)}}ft.clear()}}ft=null}}function pt(n,t,e,r){if(!e.has(n)&&(e.add(n),null!==n.reactions))for(const o of n.reactions){const n=o.f;2&n?pt(o,t,e,r):4194320&n&&0===(n&xn)&&vt(o,t,r)&&(nr(o,xn),ht(o))}}function vt(n,t,e){const r=e.get(n);if(void 0!==r)return r;if(null!==n.deps)for(const o of n.deps){if(t.includes(o))return!0;if(2&o.f&&vt(o,t,e))return e.set(o,!0),!0}return e.set(n,!1),!1}function ht(n){for(var t=it=n;null!==t.parent;){var e=(t=t.parent).f;if(at&&t===je&&0!==(e&hn)&&0===(e&zn))return;if(96&e){if(0===(e&wn))return;t.f^=wn}}ot.push(t)}class gt{constructor(n,t,e){G(this,A),H(this,"parent"),G(this,p,!1),G(this,v),G(this,h,null),G(this,g),G(this,b),G(this,m),G(this,y,null),G(this,w,null),G(this,x,null),G(this,_,null),G(this,k,null),G(this,C,0),G(this,S,0),G(this,E,!1),G(this,M,null),G(this,z,function(n){let t,e=0,r=At(0);return()=>{re()&&(Ke(r),se(()=>(0===e&&(t=Xe(()=>n(()=>Pt(r)))),e+=1,()=>{Jn(()=>{e-=1,0===e&&(null==t||t(),t=void 0,Pt(r))})})))}}(()=>(Y(this,M,At(V(this,C))),()=>{Y(this,M,null)}))),Y(this,v,n),Y(this,g,t),Y(this,b,e),this.parent=je.b,Y(this,p,!!V(this,g).pending),Y(this,m,ce(()=>{je.b=this;var n=K(this,A,j).call(this);try{Y(this,y,de(()=>e(n)))}catch(t){this.error(t)}return V(this,S)>0?K(this,A,$).call(this):Y(this,p,!1),()=>{var n;null==(n=V(this,k))||n.remove()}},589952))}is_pending(){return V(this,p)||!!this.parent&&this.parent.is_pending()}has_pending_snippet(){return!!V(this,g).pending}update_pending_count(n){K(this,A,I).call(this,n),Y(this,C,V(this,C)+n),V(this,M)&&It(V(this,M),V(this,C))}get_effect_pending(){return V(this,z).call(this),Ke(V(this,M))}error(n){var t=V(this,g).onerror;let e=V(this,g).failed;if(V(this,E)||!t&&!e)throw n;V(this,y)&&(he(V(this,y)),Y(this,y,null)),V(this,w)&&(he(V(this,w)),Y(this,w,null)),V(this,x)&&(he(V(this,x)),Y(this,x,null));var r=!1,o=!1;const i=()=>{r?console.warn("https://svelte.dev/e/svelte_boundary_reset_noop"):(r=!0,o&&function(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}(),st.ensure(),Y(this,C,0),null!==V(this,x)&&me(V(this,x),()=>{Y(this,x,null)}),Y(this,p,this.has_pending_snippet()),Y(this,y,K(this,A,N).call(this,()=>(Y(this,E,!1),de(()=>V(this,b).call(this,V(this,v)))))),V(this,S)>0?K(this,A,$).call(this):Y(this,p,!1))};var a=Me;try{Ae(null),o=!0,null==t||t(n,i),o=!1}catch(l){Zn(l,V(this,m)&&V(this,m).parent)}finally{Ae(a)}e&&Jn(()=>{Y(this,x,K(this,A,N).call(this,()=>{st.ensure(),Y(this,E,!0);try{return de(()=>{e(V(this,v),()=>n,()=>i)})}catch(l){return Zn(l,V(this,m).parent),null}finally{Y(this,E,!1)}}))})}}function bt(n,t,e,r){const o=Gn()?yt:_t;if(0!==e.length||0!==n.length){var i,a,l,s,u=tt,c=je,f=(i=je,a=Me,l=Dn,s=tt,function(n=!0){Ne(i),Ae(a),Hn(l),n&&(null==s||s.activate())});n.length>0?Promise.all(n).then(()=>{f();try{return d()}finally{null==u||u.deactivate(),mt()}}):d()}else r(t.map(o));function d(){Promise.all(e.map(n=>wt(n))).then(n=>{f();try{r([...t.map(o),...n])}catch(e){0===(c.f&Cn)&&Zn(e,c)}null==u||u.deactivate(),mt()}).catch(n=>{Zn(n,c)})}}function mt(){Ne(null),Ae(null),Hn(null)}function yt(n){var t=null!==Me&&2&Me.f?Me:null;null!==je&&(je.f|=An);return{ctx:Dn,deps:null,effects:null,equals:On,f:2050,fn:n,reactions:null,rv:0,v:Rn,wv:0,parent:t??je,ac:null}}function wt(n,t){let e=je;null===e&&function(){throw new Error("https://svelte.dev/e/async_derived_orphan")}();var r=e.b,o=void 0,i=At(Rn),a=!Me,l=new Map;return function(n){ee(4718592,n,!0)}(()=>{var t,e=pn();o=e.promise;try{Promise.resolve(n()).then(e.resolve,e.reject).then(()=>{s===tt&&s.committed&&s.deactivate(),mt()})}catch(f){e.reject(f),mt()}var s=tt;if(a){var u=!r.is_pending();r.update_pending_count(1),s.increment(u),null==(t=l.get(s))||t.reject(Bn),l.delete(s),l.set(s,e)}const c=(n,t=void 0)=>{if(s.activate(),t)t!==Bn&&(i.f|=In,It(i,t));else{0!==(i.f&In)&&(i.f^=In),It(i,n);for(const[n,t]of l){if(l.delete(n),n===s)break;t.reject(Bn)}}a&&(r.update_pending_count(-1),s.decrement(u))};e.promise.then(c,n=>c(null,n||"unknown"))}),oe(()=>{for(const n of l.values())n.reject(Bn)}),new Promise(n=>{!function t(e){function r(){e===o?n(i):t(o)}e.then(r,r)}(o)})}function xt(n){const t=yt(n);return Ie(t),t}function _t(n){const t=yt(n);return t.equals=Wn,t}function kt(n){var t=n.effects;if(null!==t){n.effects=null;for(var e=0;e<t.length;e+=1)he(t[e])}}function Ct(n){var t,e=je;Ne(function(n){for(var t=n.parent;null!==t;){if(!(2&t.f))return 0===(t.f&Cn)?t:null;t=t.parent}return null}(n));try{n.f&=-32769,kt(n),t=He(n)}finally{Ne(e)}return t}function St(n){var t=Ct(n);(n.equals(t)||((null==tt?void 0:tt.is_fork)||(n.v=t),n.wv=We()),Se)||(null!==rt?(re()||(null==tt?void 0:tt.is_fork))&&rt.set(n,t):nr(n,0===(n.f&yn)?_n:wn))}p=new WeakMap,v=new WeakMap,h=new WeakMap,g=new WeakMap,b=new WeakMap,m=new WeakMap,y=new WeakMap,w=new WeakMap,x=new WeakMap,_=new WeakMap,k=new WeakMap,C=new WeakMap,S=new WeakMap,E=new WeakMap,M=new WeakMap,z=new WeakMap,A=new WeakSet,j=function(){var n=V(this,v);return V(this,p)&&(Y(this,k,Ut()),V(this,v).before(V(this,k)),n=V(this,k)),n},N=function(n){var t=je,e=Me,r=Dn;Ne(V(this,m)),Ae(V(this,m)),Hn(V(this,m).ctx);try{return n()}catch(o){return Xn(o),null}finally{Ne(t),Ae(e),Hn(r)}},$=function(){const n=V(this,g).pending;null!==V(this,y)&&(Y(this,_,document.createDocumentFragment()),V(this,_).append(V(this,k)),_e(V(this,y),V(this,_))),null===V(this,w)&&Y(this,w,de(()=>n(V(this,v))))},I=function(n){var t;this.has_pending_snippet()?(Y(this,S,V(this,S)+n),0===V(this,S)&&(Y(this,p,!1),V(this,w)&&me(V(this,w),()=>{Y(this,w,null)}),V(this,_)&&(V(this,v).before(V(this,_)),Y(this,_,null)))):this.parent&&K(t=this.parent,A,I).call(t,n)};let Et=new Set;const Mt=new Map;let zt=!1;function At(n,t){return{f:0,v:n,reactions:null,equals:On,rv:0,wv:0}}function jt(n,t){const e=At(n);return Ie(e),e}function Nt(n,t=!1,e=!0){var r;const o=At(n);return t||(o.equals=Wn),qn&&e&&null!==Dn&&null!==Dn.l&&((r=Dn.l).s??(r.s=[])).push(o),o}function $t(n,t,e=!1){return null!==Me&&(!ze||0!==(Me.f&Mn))&&Gn()&&4325394&Me.f&&!(null==$e?void 0:$e.includes(n))&&function(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}(),It(n,e?Bt(t):t)}function It(n,t){if(!n.equals(t)){var e=n.v;Se?Mt.set(n,t):Mt.set(n,e),n.v=t;var r=st.ensure();r.capture(n,e),2&n.f&&(0!==(n.f&xn)&&Ct(n),nr(n,0!==(n.f&yn)?wn:_n)),n.wv=We(),Ft(n,xn),!Gn()||null===je||0===(je.f&wn)||96&je.f||(null===Fe?function(n){Fe=n}([n]):Fe.push(n)),!r.is_fork&&Et.size>0&&!zt&&function(){zt=!1;var n=ke;Ce(!0);const t=Array.from(Et);try{for(const n of t)0!==(n.f&wn)&&nr(n,_n),qe(n)&&Ge(n)}finally{Ce(n)}Et.clear()}()}return t}function Lt(n,t=1){var e=Ke(n),r=1===t?e++:e--;return $t(n,e),r}function Pt(n){$t(n,n.v+1)}function Ft(n,t){var e=n.reactions;if(null!==e)for(var r=Gn(),o=e.length,i=0;i<o;i++){var a=e[i],l=a.f;if(r||a!==je){var s=0===(l&xn);if(s&&nr(a,t),2&l){var u=a;null==rt||rt.delete(u),0===(l&Nn)&&(l&yn&&(a.f|=Nn),Ft(u,_n))}else s&&(0!==(l&hn)&&null!==ft&&ft.add(a),ht(a))}}}function Bt(n){if("object"!=typeof n||null===n||Ln in n)return n;const t=ln(n);if(t!==on&&t!==an)return n;var e=new Map,r=X(n),o=jt(0),i=Re,a=n=>{if(Re===i)return n();var t=Me,e=Re;Ae(null),Oe(i);var r=n();return Ae(t),Oe(e),r};return r&&e.set("length",jt(n.length)),new Proxy(n,{defineProperty(n,t,r){"value"in r&&!1!==r.configurable&&!1!==r.enumerable&&!1!==r.writable||function(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}();var o=e.get(t);return void 0===o?o=a(()=>{var n=jt(r.value);return e.set(t,n),n}):$t(o,r.value,!0),!0},deleteProperty(n,t){var r=e.get(t);if(void 0===r){if(t in n){const n=a(()=>jt(Rn));e.set(t,n),Pt(o)}}else $t(r,Rn),Pt(o);return!0},get(t,r,o){var i;if(r===Ln)return n;var l=e.get(r),s=r in t;if(void 0!==l||s&&!(null==(i=en(t,r))?void 0:i.writable)||(l=a(()=>jt(Bt(s?t[r]:Rn))),e.set(r,l)),void 0!==l){var u=Ke(l);return u===Rn?void 0:u}return Reflect.get(t,r,o)},getOwnPropertyDescriptor(n,t){var r=Reflect.getOwnPropertyDescriptor(n,t);if(r&&"value"in r){var o=e.get(t);o&&(r.value=Ke(o))}else if(void 0===r){var i=e.get(t),a=null==i?void 0:i.v;if(void 0!==i&&a!==Rn)return{enumerable:!0,configurable:!0,value:a,writable:!0}}return r},has(n,t){var r;if(t===Ln)return!0;var o=e.get(t),i=void 0!==o&&o.v!==Rn||Reflect.has(n,t);if((void 0!==o||null!==je&&(!i||(null==(r=en(n,t))?void 0:r.writable)))&&(void 0===o&&(o=a(()=>jt(i?Bt(n[t]):Rn)),e.set(t,o)),Ke(o)===Rn))return!1;return i},set(n,t,i,l){var s,u=e.get(t),c=t in n;if(r&&"length"===t)for(var f=i;f<u.v;f+=1){var d=e.get(f+"");void 0!==d?$t(d,Rn):f in n&&(d=a(()=>jt(Rn)),e.set(f+"",d))}void 0===u?c&&!(null==(s=en(n,t))?void 0:s.writable)||($t(u=a(()=>jt(void 0)),Bt(i)),e.set(t,u)):(c=u.v!==Rn,$t(u,a(()=>Bt(i))));var p=Reflect.getOwnPropertyDescriptor(n,t);if((null==p?void 0:p.set)&&p.set.call(l,i),!c){if(r&&"string"==typeof t){var v=e.get("length"),h=Number(t);Number.isInteger(h)&&h>=v.v&&$t(v,h+1)}Pt(o)}return!0},ownKeys(n){Ke(o);var t=Reflect.ownKeys(n).filter(n=>{var t=e.get(n);return void 0===t||t.v!==Rn});for(var[r,i]of e)i.v===Rn||r in n||t.push(r);return t},setPrototypeOf(){!function(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}()}})}function Tt(n){try{if(null!==n&&"object"==typeof n&&Ln in n)return n[Ln]}catch{}return n}function Rt(n,t){return Object.is(Tt(n),Tt(t))}var Ot,Wt,qt,Dt,Ht;function Ut(n=""){return document.createTextNode(n)}function Vt(n){return Dt.call(n)}function Gt(n){return Ht.call(n)}function Yt(n,t){return Vt(n)}function Kt(n,t=!1){var e=Vt(n);return e instanceof Comment&&""===e.data?Gt(e):e}function Jt(n,t=1,e=!1){let r=n;for(;t--;)r=Gt(r);return r}function Qt(n,t){if(t){const t=document.body;n.autofocus=!0,Jn(()=>{document.activeElement===t&&n.focus()})}}let Xt=!1;function Zt(n){var t=Me,e=je;Ae(null),Ne(null);try{return n()}finally{Ae(t),Ne(e)}}function ne(n,t,e,r=e){n.addEventListener(t,()=>Zt(e));const o=n.__on_r;n.__on_r=o?()=>{o(),r(!0)}:()=>r(!0),Xt||(Xt=!0,document.addEventListener("reset",n=>{Promise.resolve().then(()=>{var t;if(!n.defaultPrevented)for(const e of n.target.elements)null==(t=e.__on_r)||t.call(e)})},{capture:!0}))}function te(n){null===je&&(null===Me&&function(){throw new Error("https://svelte.dev/e/effect_orphan")}(),function(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}()),Se&&function(){throw new Error("https://svelte.dev/e/effect_in_teardown")}()}function ee(n,t,e){var r=je;null!==r&&0!==(r.f&kn)&&(n|=kn);var o={ctx:Dn,deps:null,nodes:null,f:n|xn|yn,first:null,fn:t,last:null,next:null,parent:r,b:r&&r.b,prev:null,teardown:null,wv:0,ac:null};if(e)try{Ge(o),o.f|=Sn}catch(l){throw he(o),l}else null!==t&&ht(o);var i=o;if(e&&null===i.deps&&null===i.teardown&&null===i.nodes&&i.first===i.last&&0===(i.f&An)&&(i=i.first,0!==(n&hn)&&0!==(n&En)&&null!==i&&(i.f|=En)),null!==i&&(i.parent=r,null!==r&&function(n,t){var e=t.last;null===e?t.last=t.first=n:(e.next=n,n.prev=e,t.last=n)}(i,r),null!==Me&&2&Me.f&&0===(n&bn))){var a=Me;(a.effects??(a.effects=[])).push(i)}return o}function re(){return null!==Me&&!ze}function oe(n){const t=ee(8,null,!1);return nr(t,wn),t.teardown=n,t}function ie(n){te();var t=je.f;if(!(!Me&&0!==(t&gn)&&0===(t&Sn)))return ae(n);var e=Dn;(e.e??(e.e=[])).push(n)}function ae(n){return ee(1048580,n,!1)}function le(n){return ee(4,n,!1)}function se(n,t=0){return ee(8|t,n,!0)}function ue(n,t=[],e=[],r=[]){bt(r,t,e,t=>{ee(8,()=>n(...t.map(Ke)),!0)})}function ce(n,t=0){return ee(hn|t,n,!0)}function fe(n,t=0){return ee(vn|t,n,!0)}function de(n){return ee(524320,n,!0)}function pe(n){var t=n.teardown;if(null!==t){const n=Se,e=Me;Ee(!0),Ae(null);try{t.call(null)}finally{Ee(n),Ae(e)}}}function ve(n,t=!1){var e=n.first;for(n.first=n.last=null;null!==e;){const n=e.ac;null!==n&&Zt(()=>{n.abort(Bn)});var r=e.next;0!==(e.f&bn)?e.parent=null:he(e,t),e=r}}function he(n,t=!0){var e=!1;!t&&0===(n.f&zn)||null===n.nodes||null===n.nodes.end||(ge(n.nodes.start,n.nodes.end),e=!0),ve(n,t&&!e),Ve(n,0),nr(n,Cn);var r=n.nodes&&n.nodes.t;if(null!==r)for(const i of r)i.stop();pe(n);var o=n.parent;null!==o&&null!==o.first&&be(n),n.next=n.prev=n.teardown=n.ctx=n.deps=n.fn=n.nodes=n.ac=null}function ge(n,t){for(;null!==n;){var e=n===t?null:Gt(n);n.remove(),n=e}}function be(n){var t=n.parent,e=n.prev,r=n.next;null!==e&&(e.next=r),null!==r&&(r.prev=e),null!==t&&(t.first===n&&(t.first=r),t.last===n&&(t.last=e))}function me(n,t,e=!0){var r=[];ye(n,r,!0);var o=()=>{e&&he(n),t&&t()},i=r.length;if(i>0){var a=()=>--i||o();for(var l of r)l.out(a)}else o()}function ye(n,t,e){if(0===(n.f&kn)){n.f^=kn;var r=n.nodes&&n.nodes.t;if(null!==r)for(const n of r)(n.is_global||e)&&t.push(n);for(var o=n.first;null!==o;){var i=o.next;ye(o,t,!!(0!==(o.f&En)||0!==(o.f&gn)&&0!==(n.f&hn))&&e),o=i}}}function we(n){xe(n,!0)}function xe(n,t){if(0!==(n.f&kn)){n.f^=kn,0===(n.f&wn)&&(nr(n,xn),ht(n));for(var e=n.first;null!==e;){var r=e.next;xe(e,!!(0!==(e.f&En)||0!==(e.f&gn))&&t),e=r}var o=n.nodes&&n.nodes.t;if(null!==o)for(const n of o)(n.is_global||t)&&n.in()}}function _e(n,t){if(n.nodes)for(var e=n.nodes.start,r=n.nodes.end;null!==e;){var o=e===r?null:Gt(e);t.append(e),e=o}}let ke=!1;function Ce(n){ke=n}let Se=!1;function Ee(n){Se=n}let Me=null,ze=!1;function Ae(n){Me=n}let je=null;function Ne(n){je=n}let $e=null;function Ie(n){null!==Me&&(null===$e?$e=[n]:$e.push(n))}let Le=null,Pe=0,Fe=null;let Be=1,Te=0,Re=Te;function Oe(n){Re=n}function We(){return++Be}function qe(n){var t=n.f;if(0!==(t&xn))return!0;if(2&t&&(n.f&=-32769),0!==(t&_n)){var e=n.deps;if(null!==e)for(var r=e.length,o=0;o<r;o++){var i=e[o];if(qe(i)&&St(i),i.wv>n.wv)return!0}0!==(t&yn)&&null===rt&&nr(n,wn)}return!1}function De(n,t,e=!0){var r=n.reactions;if(null!==r&&!(null==$e?void 0:$e.includes(n)))for(var o=0;o<r.length;o++){var i=r[o];2&i.f?De(i,t,!1):t===i&&(e?nr(i,xn):0!==(i.f&wn)&&nr(i,_n),ht(i))}}function He(n){var t,e=Le,r=Pe,o=Fe,i=Me,a=$e,l=Dn,s=ze,u=Re,c=n.f;Le=null,Pe=0,Fe=null,Me=96&c?null:n,$e=null,Hn(n.ctx),ze=!1,Re=++Te,null!==n.ac&&(Zt(()=>{n.ac.abort(Bn)}),n.ac=null);try{n.f|=$n;var f=(0,n.fn)(),d=n.deps;if(null!==Le){var p;if(Ve(n,Pe),null!==d&&Pe>0)for(d.length=Pe+Le.length,p=0;p<Le.length;p++)d[Pe+p]=Le[p];else n.deps=d=Le;if(re()&&0!==(n.f&yn))for(p=Pe;p<d.length;p++)((t=d[p]).reactions??(t.reactions=[])).push(n)}else null!==d&&Pe<d.length&&(Ve(n,Pe),d.length=Pe);if(Gn()&&null!==Fe&&!ze&&null!==d&&!(6146&n.f))for(p=0;p<Fe.length;p++)De(Fe[p],n);return null!==i&&i!==n&&(Te++,null!==Fe&&(null===o?o=Fe:o.push(...Fe))),0!==(n.f&In)&&(n.f^=In),f}catch(v){return Xn(v)}finally{n.f^=$n,Le=e,Pe=r,Fe=o,Me=i,$e=a,Hn(l),ze=s,Re=u}}function Ue(n,t){let e=t.reactions;if(null!==e){var r=Z.call(e,n);if(-1!==r){var o=e.length-1;0===o?e=t.reactions=null:(e[r]=e[o],e.pop())}}null===e&&2&t.f&&(null===Le||!Le.includes(t))&&(nr(t,_n),0!==(t.f&yn)&&(t.f^=yn,t.f&=-32769),kt(t),Ve(t,0))}function Ve(n,t){var e=n.deps;if(null!==e)for(var r=t;r<e.length;r++)Ue(n,e[r])}function Ge(n){var t=n.f;if(0===(t&Cn)){nr(n,wn);var e=je,r=ke;je=n,ke=!0;try{16777232&t?function(n){for(var t=n.first;null!==t;){var e=t.next;0===(t.f&gn)&&he(t),t=e}}(n):ve(n),pe(n);var o=He(n);n.teardown="function"==typeof o?o:null,n.wv=Be}finally{ke=r,je=e}}}async function Ye(){await Promise.resolve(),function(){var n=lt;lt=!0;try{for(;;){if(Qn(),0===ot.length&&(null==tt||tt.flush(),0===ot.length))return void(it=null);ut()}}finally{lt=n}}()}function Ke(n){var t=!!(2&n.f);if(null!==Me&&!ze&&(!(null!==je&&0!==(je.f&Cn))&&!(null==$e?void 0:$e.includes(n)))){var e=Me.deps;if(0!==(Me.f&$n))n.rv<Te&&(n.rv=Te,null===Le&&null!==e&&e[Pe]===n?Pe++:null===Le?Le=[n]:Le.includes(n)||Le.push(n));else{(Me.deps??(Me.deps=[])).push(n);var r=n.reactions;null===r?n.reactions=[Me]:r.includes(Me)||r.push(Me)}}if(Se){if(Mt.has(n))return Mt.get(n);if(t){var o=n,i=o.v;return(0===(o.f&wn)&&null!==o.reactions||Qe(o))&&(i=Ct(o)),Mt.set(o,i),i}}else t&&(!(null==rt?void 0:rt.has(n))||(null==tt?void 0:tt.is_fork)&&!re())&&(qe(o=n)&&St(o),ke&&re()&&0===(o.f&yn)&&Je(o));if(null==rt?void 0:rt.has(n))return rt.get(n);if(0!==(n.f&In))throw n.v;return n.v}function Je(n){if(null!==n.deps){n.f^=yn;for(const t of n.deps)(t.reactions??(t.reactions=[])).push(n),2&t.f&&0===(t.f&yn)&&Je(t)}}function Qe(n){if(n.v===Rn)return!0;if(null===n.deps)return!1;for(const t of n.deps){if(Mt.has(t))return!0;if(2&t.f&&Qe(t))return!0}return!1}function Xe(n){var t=ze;try{return ze=!0,n()}finally{ze=t}}const Ze=-7169;function nr(n,t){n.f=n.f&Ze|t}function tr(n){if("object"==typeof n&&n&&!(n instanceof EventTarget))if(Ln in n)er(n);else if(!Array.isArray(n))for(let t in n){const e=n[t];"object"==typeof e&&e&&Ln in e&&er(e)}}function er(n,t=new Set){if(!("object"!=typeof n||null===n||n instanceof EventTarget||t.has(n))){t.add(n),n instanceof Date&&n.getTime();for(let o in n)try{er(n[o],t)}catch(e){}const r=ln(n);if(r!==Object.prototype&&r!==Array.prototype&&r!==Map.prototype&&r!==Set.prototype&&r!==Date.prototype){const t=rn(r);for(let r in t){const o=t[r].get;if(o)try{o.call(n)}catch(e){}}}}}function rr(n){return n.endsWith("capture")&&"gotpointercapture"!==n&&"lostpointercapture"!==n}const or=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function ir(n){return or.includes(n)}const ar={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function lr(n){return n=n.toLowerCase(),ar[n]??n}const sr=["touchstart","touchmove"];function ur(n){return sr.includes(n)}const cr=new Set,fr=new Set;function dr(n,t,e,r={}){function o(n){if(r.capture||gr.call(t,n),!n.cancelBubble)return Zt(()=>null==e?void 0:e.call(this,n))}return n.startsWith("pointer")||n.startsWith("touch")||"wheel"===n?Jn(()=>{t.addEventListener(n,o,r)}):t.addEventListener(n,o,r),o}function pr(n,t,e,r,o){var i={capture:r,passive:o},a=dr(n,t,e,i);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&oe(()=>{t.removeEventListener(n,a,i)})}function vr(n){for(var t=0;t<n.length;t++)cr.add(n[t]);for(var e of fr)e(n)}let hr=null;function gr(n){var t,e=this,r=e.ownerDocument,o=n.type,i=(null==(t=n.composedPath)?void 0:t.call(n))||[],a=i[0]||n.target;hr=n;var l=0,s=hr===n&&n.__root;if(s){var u=i.indexOf(s);if(-1!==u&&(e===document||e===window))return void(n.__root=e);var c=i.indexOf(e);if(-1===c)return;u<=c&&(l=u)}if((a=i[l]||n.target)!==e){tn(n,"currentTarget",{configurable:!0,get:()=>a||r});var f=Me,d=je;Ae(null),Ne(null);try{for(var p,v=[];null!==a;){var h=a.assignedSlot||a.parentNode||a.host||null;try{var g=a["__"+o];null==g||a.disabled&&n.target!==a||g.call(a,n)}catch(b){p?v.push(b):p=b}if(n.cancelBubble||h===e||null===h)break;a=h}if(p){for(let n of v)queueMicrotask(()=>{throw n});throw p}}finally{n.__root=e,delete n.currentTarget,Ae(f),Ne(d)}}}function br(n){var t=document.createElement("template");return t.innerHTML=n.replaceAll("<!>","\x3c!----\x3e"),t.content}function mr(n,t){var e=je;null===e.nodes&&(e.nodes={start:n,end:t,a:null,t:null})}function yr(n,t){var e,r=!!(1&t),o=!!(2&t),i=!n.startsWith("<!>");return()=>{void 0===e&&(e=br(i?n:"<!>"+n),r||(e=Vt(e)));var t=o||qt?document.importNode(e,!0):e.cloneNode(!0);r?mr(Vt(t),t.lastChild):mr(t,t);return t}}function wr(n,t,e="svg"){var r,o=`<${e}>${!n.startsWith("<!>")?n:"<!>"+n}</${e}>`;return()=>{if(!r){var n=br(o);r=Vt(Vt(n))}var t=r.cloneNode(!0);return mr(t,t),t}}function xr(n,t){return wr(n,0,"svg")}function _r(){var n=document.createDocumentFragment(),t=document.createComment(""),e=Ut();return n.append(t,e),mr(t,e),n}function kr(n,t){null!==n&&n.before(t)}let Cr=!0;function Sr(n){Cr=n}function Er(n,t){var e=null==t?"":"object"==typeof t?t+"":t;e!==(n.__t??(n.__t=n.nodeValue))&&(n.__t=e,n.nodeValue=e+"")}function Mr(n,t){return function(n,{target:t,anchor:e,props:r={},events:o,context:i,intro:a=!0}){!function(){if(void 0===Ot){Ot=window,Wt=document,qt=/Firefox/.test(navigator.userAgent);var n=Element.prototype,t=Node.prototype,e=Text.prototype;Dt=en(t,"firstChild").get,Ht=en(t,"nextSibling").get,sn(n)&&(n.__click=void 0,n.__className=void 0,n.__attributes=null,n.__style=void 0,n.__e=void 0),sn(e)&&(e.__t=void 0)}}();var l=new Set,s=n=>{for(var e=0;e<n.length;e++){var r=n[e];if(!l.has(r)){l.add(r);var o=ur(r);t.addEventListener(r,gr,{passive:o});var i=zr.get(r);void 0===i?(document.addEventListener(r,gr,{passive:o}),zr.set(r,1)):zr.set(r,i+1)}}};s(nn(cr)),fr.add(s);var u=void 0,c=function(n){st.ensure();const t=ee(524352,n,!0);return(n={})=>new Promise(e=>{n.outro?me(t,()=>{he(t),e(void 0)}):(he(t),e(void 0))})}(()=>{var c=e??t.appendChild(Ut());return function(n,t,e){new gt(n,t,e)}(c,{pending:()=>{}},t=>{i&&(Un({}),Dn.c=i);o&&(r.$$events=o),Cr=a,u=n(t,r)||{},Cr=!0,i&&Vn()}),()=>{var n;for(var r of l){t.removeEventListener(r,gr);var o=zr.get(r);0===--o?(document.removeEventListener(r,gr),zr.delete(r)):zr.set(r,o)}fr.delete(s),c!==e&&(null==(n=c.parentNode)||n.removeChild(c))}});return Ar.set(u,c),u}(n,t)}const zr=new Map;let Ar=new WeakMap;function jr(n,t){const e=Ar.get(n);return e?(Ar.delete(n),e(t)):Promise.resolve()}class Nr{constructor(n,t=!0){H(this,"anchor"),G(this,L,new Map),G(this,P,new Map),G(this,F,new Map),G(this,B,new Set),G(this,T,!0),G(this,R,()=>{var n=tt;if(V(this,L).has(n)){var t=V(this,L).get(n),e=V(this,P).get(t);if(e)we(e),V(this,B).delete(t);else{var r=V(this,F).get(t);r&&(V(this,P).set(t,r.effect),V(this,F).delete(t),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),e=r.effect)}for(const[t,e]of V(this,L)){if(V(this,L).delete(t),t===n)break;const r=V(this,F).get(e);r&&(he(r.effect),V(this,F).delete(e))}for(const[n,r]of V(this,P)){if(n===t||V(this,B).has(n))continue;const o=()=>{if(Array.from(V(this,L).values()).includes(n)){var t=document.createDocumentFragment();_e(r,t),t.append(Ut()),V(this,F).set(n,{effect:r,fragment:t})}else he(r);V(this,B).delete(n),V(this,P).delete(n)};V(this,T)||!e?(V(this,B).add(n),me(r,o,!1)):o()}}}),G(this,O,n=>{V(this,L).delete(n);const t=Array.from(V(this,L).values());for(const[e,r]of V(this,F))t.includes(e)||(he(r.effect),V(this,F).delete(e))}),this.anchor=n,Y(this,T,t)}ensure(n,t){var e=tt;!t||V(this,P).has(n)||V(this,F).has(n)||V(this,P).set(n,de(()=>t(this.anchor)));V(this,L).set(e,n),V(this,R).call(this)}}function $r(n,t,e=!1){var r=new Nr(n);function o(n,t){r.ensure(n,t)}ce(()=>{var n=!1;t((t,e=!0)=>{n=!0,o(e,t)}),n||o(!1,null)},e?En:0)}function Ir(n,t){return t}function Lr(n,t=!0){for(var e=0;e<n.length;e++)he(n[e],t)}var Pr;function Fr(n,t,e,r,o,i=null){var a=n,l=new Map;!(4&t)||(a=n.appendChild(Ut()));var s,u=null,c=_t(()=>{var n=e();return X(n)?n:null==n?[]:nn(n)}),f=!0;function d(){p.fallback=u,function(n,t,e,r,o){var i,a,l,s,u,c,f,d,p,v,h,g,b,m,y=!!(8&r),w=t.length,x=n.items,_=n.effect.first,k=null,C=[],S=[];if(y)for(m=0;m<w;m+=1)g=o(t[m],m),0===((b=x.get(g).e).f&jn)&&(null==(a=null==(i=b.nodes)?void 0:i.a)||a.measure(),(h??(h=new Set)).add(b));for(m=0;m<w;m+=1){if(g=o(t[m],m),b=x.get(g).e,null!==n.outrogroups)for(const t of n.outrogroups)t.pending.delete(b),t.done.delete(b);if(0!==(b.f&jn)){if(b.f^=jn,b!==_){var E=k?k.next:_;b===n.effect.last&&(n.effect.last=b.prev),b.prev&&(b.prev.next=b.next),b.next&&(b.next.prev=b.prev),Rr(n,k,b),Rr(n,b,E),Tr(b,E,e),C=[],S=[],_=(k=b).next;continue}Tr(b,null,e)}if(0!==(b.f&kn)&&(we(b),y&&(null==(s=null==(l=b.nodes)?void 0:l.a)||s.unfix(),(h??(h=new Set)).delete(b))),b!==_){if(void 0!==v&&v.has(b)){if(C.length<S.length){var M,z=S[0];k=z.prev;var A=C[0],j=C[C.length-1];for(M=0;M<C.length;M+=1)Tr(C[M],z,e);for(M=0;M<S.length;M+=1)v.delete(S[M]);Rr(n,A.prev,j.next),Rr(n,k,A),Rr(n,j,z),_=z,k=j,m-=1,C=[],S=[]}else v.delete(b),Tr(b,_,e),Rr(n,b.prev,b.next),Rr(n,b,null===k?n.effect.first:k.next),Rr(n,k,b),k=b;continue}for(C=[],S=[];null!==_&&_!==b;)(v??(v=new Set)).add(_),S.push(_),_=_.next;if(null===_)continue}0===(b.f&jn)&&C.push(b),k=b,_=b.next}if(null!==n.outrogroups){for(const t of n.outrogroups)0===t.pending.size&&(Lr(nn(t.done)),null==(u=n.outrogroups)||u.delete(t));0===n.outrogroups.size&&(n.outrogroups=null)}if(null!==_||void 0!==v){var N=[];if(void 0!==v)for(b of v)0===(b.f&kn)&&N.push(b);for(;null!==_;)0===(_.f&kn)&&_!==n.fallback&&N.push(_),_=_.next;var $=N.length;if($>0){var I=4&r&&0===w?e:null;if(y){for(m=0;m<$;m+=1)null==(f=null==(c=N[m].nodes)?void 0:c.a)||f.measure();for(m=0;m<$;m+=1)null==(p=null==(d=N[m].nodes)?void 0:d.a)||p.fix()}!function(n,t,e){for(var r,o=t.length,i=t.length,a=0;a<o;a++){let e=t[a];me(e,()=>{if(r){if(r.pending.delete(e),r.done.add(e),0===r.pending.size){var t=n.outrogroups;Lr(nn(r.done)),t.delete(r),0===t.size&&(n.outrogroups=null)}}else i-=1},!1)}if(0===i){var l=null!==e;if(l){var s=e,u=s.parentNode;u.textContent="",u.append(s),n.items.clear()}Lr(t,!l)}else r={pending:new Set(t),done:new Set},(n.outrogroups??(n.outrogroups=new Set)).add(r)}(n,N,I)}}y&&Jn(()=>{var n,t;if(void 0!==h)for(b of h)null==(t=null==(n=b.nodes)?void 0:n.a)||t.apply()})}(p,s,a,t,r),null!==u&&(0===s.length?0===(u.f&jn)?we(u):(u.f^=jn,Tr(u,null,a)):me(u,()=>{u=null}))}var p={effect:ce(()=>{for(var n=(s=Ke(c)).length,p=new Set,v=0;v<n;v+=1){var h=s[v],g=r(h,v),b=f?null:l.get(g);b?(b.v&&It(b.v,h),b.i&&It(b.i,v)):(b=Br(l,f?a:Pr??(Pr=Ut()),h,g,v,o,t,e),f||(b.e.f|=jn),l.set(g,b)),p.add(g)}0===n&&i&&!u&&(f?u=de(()=>i(a)):(u=de(()=>i(Pr??(Pr=Ut())))).f|=jn),f||d(),Ke(c)}),items:l,outrogroups:null,fallback:u};f=!1}function Br(n,t,e,r,o,i,a,l){var s=1&a?16&a?At(e):Nt(e,!1,!1):null,u=2&a?At(o):null;return{v:s,i:u,e:de(()=>(i(t,s??e,u??o,l),()=>{n.delete(r)}))}}function Tr(n,t,e){if(n.nodes)for(var r=n.nodes.start,o=n.nodes.end,i=t&&0===(t.f&jn)?t.nodes.start:e;null!==r;){var a=Gt(r);if(i.before(r),r===o)return;r=a}}function Rr(n,t,e){null===t?n.effect.first=e:t.next=e,null===e?n.effect.last=t:e.prev=t}function Or(n,t,e,r,o){var i,a=null==(i=t.$$slots)?void 0:i[e],l=!1;!0===a&&(a=t.children,l=!0),void 0===a||a(n,l?()=>r:r)}L=new WeakMap,P=new WeakMap,F=new WeakMap,B=new WeakMap,T=new WeakMap,R=new WeakMap,O=new WeakMap;const Wr={tick:n=>requestAnimationFrame(n),now:()=>performance.now(),tasks:new Set};function qr(){const n=Wr.now();Wr.tasks.forEach(t=>{t.c(n)||(Wr.tasks.delete(t),t.f())}),0!==Wr.tasks.size&&Wr.tick(qr)}function Dr(n,t){Zt(()=>{n.dispatchEvent(new CustomEvent(t))})}function Hr(n){if("float"===n)return"cssFloat";if("offset"===n)return"cssOffset";if(n.startsWith("--"))return n;const t=n.split("-");return 1===t.length?t[0]:t[0]+t.slice(1).map(n=>n[0].toUpperCase()+n.slice(1)).join("")}function Ur(n){const t={},e=n.split(";");for(const r of e){const[n,e]=r.split(":");if(!n||void 0===e)break;t[Hr(n.trim())]=e.trim()}return t}const Vr=n=>n;function Gr(n,t,e,r){var o,i,a,l,s=!!(1&n),u=!!(2&n),c=!!(4&n),f=s&&u?"both":s?"in":"out",d=t.inert,p=t.style.overflow;function v(){return Zt(()=>i??(i=e()(t,(null==r?void 0:r())??{},{direction:f})))}var h={is_global:c,in(){var n;if(t.inert=d,!s)return null==l||l.abort(),void(null==(n=null==l?void 0:l.reset)||n.call(l));u||null==a||a.abort(),Dr(t,"introstart"),a=Yr(t,v(),l,1,()=>{Dr(t,"introend"),null==a||a.abort(),a=i=void 0,t.style.overflow=p})},out(n){if(!u)return null==n||n(),void(i=void 0);t.inert=!0,Dr(t,"outrostart"),l=Yr(t,v(),a,0,()=>{Dr(t,"outroend"),null==n||n()})},stop:()=>{null==a||a.abort(),null==l||l.abort()}},g=je;if(((o=g.nodes).t??(o.t=[])).push(h),s&&Cr){var b=c;if(!b){for(var m=g.parent;m&&0!==(m.f&En);)for(;(m=m.parent)&&0===(m.f&hn););b=!m||0!==(m.f&Sn)}b&&le(()=>{Xe(()=>h.in())})}}function Yr(n,t,e,r,o){var i=1===r;if(un(t)){var a,l=!1;return Jn(()=>{if(!l){var s=t({direction:i?"in":"out"});a=Yr(n,s,e,r,o)}}),{abort:()=>{l=!0,null==a||a.abort()},deactivate:()=>a.deactivate(),reset:()=>a.reset(),t:()=>a.t()}}if(null==e||e.deactivate(),!(null==t?void 0:t.duration))return o(),{abort:cn,deactivate:cn,reset:cn,t:()=>r};const{delay:s=0,css:u,tick:c,easing:f=Vr}=t;var d=[];if(i&&void 0===e&&(c&&c(0,1),u)){var p=Ur(u(0,1));d.push(p,p)}var v=()=>1-r,h=n.animate(d,{duration:s,fill:"forwards"});return h.onfinish=()=>{h.cancel();var i=(null==e?void 0:e.t())??1-r;null==e||e.abort();var a=r-i,l=t.duration*Math.abs(a),s=[];if(l>0){var d=!1;if(u)for(var p=Math.ceil(l/(1e3/60)),g=0;g<=p;g+=1){var b=i+a*f(g/p),m=Ur(u(b,1-b));s.push(m),d||(d="hidden"===m.overflow)}d&&(n.style.overflow="hidden"),v=()=>{var n=h.currentTime;return i+a*f(n/l)},c&&function(n){let t;0===Wr.tasks.size&&Wr.tick(qr),new Promise(e=>{Wr.tasks.add(t={c:n,f:e})})}(()=>{if("running"!==h.playState)return!1;var n=v();return c(n,1-n),!0})}(h=n.animate(s,{duration:l,fill:"forwards"})).onfinish=()=>{v=()=>r,null==c||c(r,1-r),o()}},{abort:()=>{h&&(h.cancel(),h.effect=null,h.onfinish=cn)},deactivate:()=>{o=cn},reset:()=>{0===r&&(null==c||c(1,0))},t:()=>v()}}function Kr(n,t){le(()=>{var e=n.getRootNode(),r=e.host?e:e.head??e.ownerDocument.head;if(!r.querySelector("#"+t.hash)){const n=document.createElement("style");n.id=t.hash,n.textContent=t.code,r.appendChild(n)}})}function Jr(n,t){var e,r=void 0;fe(()=>{r!==(r=t())&&(e&&(he(e),e=null),r&&(e=de(()=>{le(()=>r(n))})))})}function Qr(n){var t,e,r="";if("string"==typeof n||"number"==typeof n)r+=n;else if("object"==typeof n)if(Array.isArray(n)){var o=n.length;for(t=0;t<o;t++)n[t]&&(e=Qr(n[t]))&&(r&&(r+=" "),r+=e)}else for(e in n)n[e]&&(r&&(r+=" "),r+=e);return r}function Xr(n){return"object"==typeof n?function(){for(var n,t,e=0,r="",o=arguments.length;e<o;e++)(n=arguments[e])&&(t=Qr(n))&&(r&&(r+=" "),r+=t);return r}(n):n??""}const Zr=[..." \t\n\r\f \v\ufeff"];function no(n,t=!1){var e=t?" !important;":";",r="";for(var o in n){var i=n[o];null!=i&&""!==i&&(r+=" "+o+": "+i+e)}return r}function to(n){return"-"!==n[0]||"-"!==n[1]?n.toLowerCase():n}function eo(n,t,e,r,o,i){var a=n.__className;if(a!==e||void 0===a){var l=function(n,t,e){var r=null==n?"":""+n;if(t&&(r=r?r+" "+t:t),e)for(var o in e)if(e[o])r=r?r+" "+o:o;else if(r.length)for(var i=o.length,a=0;(a=r.indexOf(o,a))>=0;){var l=a+i;0!==a&&!Zr.includes(r[a-1])||l!==r.length&&!Zr.includes(r[l])?a=l:r=(0===a?"":r.substring(0,a))+r.substring(l+1)}return""===r?null:r}(e,r,i);null==l?n.removeAttribute("class"):t?n.className=l:n.setAttribute("class",l),n.__className=e}else if(i&&o!==i)for(var s in i){var u=!!i[s];null!=o&&u===!!o[s]||n.classList.toggle(s,u)}return i}function ro(n,t={},e,r){for(var o in e){var i=e[o];t[o]!==i&&(null==e[o]?n.style.removeProperty(o):n.style.setProperty(o,i,r))}}function oo(n,t,e,r){if(n.__style!==t){var o=function(n,t){if(t){var e,r,o="";if(Array.isArray(t)?(e=t[0],r=t[1]):e=t,n){n=String(n).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var i=!1,a=0,l=!1,s=[];e&&s.push(...Object.keys(e).map(to)),r&&s.push(...Object.keys(r).map(to));var u=0,c=-1;const t=n.length;for(var f=0;f<t;f++){var d=n[f];if(l?"/"===d&&"*"===n[f-1]&&(l=!1):i?i===d&&(i=!1):"/"===d&&"*"===n[f+1]?l=!0:'"'===d||"'"===d?i=d:"("===d?a++:")"===d&&a--,!l&&!1===i&&0===a)if(":"===d&&-1===c)c=f;else if(";"===d||f===t-1){if(-1!==c){var p=to(n.substring(u,c).trim());s.includes(p)||(";"!==d&&f++,o+=" "+n.substring(u,f).trim()+";")}u=f+1,c=-1}}}return e&&(o+=no(e)),r&&(o+=no(r,!0)),""===(o=o.trim())?null:o}return null==n?null:String(n)}(t,r);null==o?n.removeAttribute("style"):n.style.cssText=o,n.__style=t}else r&&(Array.isArray(r)?(ro(n,null==e?void 0:e[0],r[0]),ro(n,null==e?void 0:e[1],r[1],"important")):ro(n,e,r));return r}function io(n,t,e=!1){if(n.multiple){if(null==t)return;if(!X(t))return void console.warn("https://svelte.dev/e/select_multiple_invalid_value");for(var r of n.options)r.selected=t.includes(lo(r))}else{for(r of n.options){if(Rt(lo(r),t))return void(r.selected=!0)}e&&void 0===t||(n.selectedIndex=-1)}}function ao(n){var t=new MutationObserver(()=>{io(n,n.__value)});t.observe(n,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),oe(()=>{t.disconnect()})}function lo(n){return"__value"in n?n.__value:n.value}const so=Symbol("class"),uo=Symbol("style"),co=Symbol("is custom element"),fo=Symbol("is html");function po(n,t){var e=bo(n);e.value!==(e.value=t??void 0)&&(n.value!==t||0===t&&"PROGRESS"===n.nodeName)&&(n.value=t??"")}function vo(n,t){t?n.hasAttribute("selected")||n.setAttribute("selected",""):n.removeAttribute("selected")}function ho(n,t,e,r){var o=bo(n);o[t]!==(o[t]=e)&&("loading"===t&&(n[Fn]=e),null==e?n.removeAttribute(t):"string"!=typeof e&&yo(n).includes(t)?n[t]=e:n.setAttribute(t,e))}function go(n,t,e=[],r=[],o=[],i,a=!1,l=!1){bt(o,e,r,e=>{var r=void 0,o={},s="SELECT"===n.nodeName,u=!1;if(fe(()=>{var c=t(...e.map(Ke)),f=function(n,t,e,r){var o=bo(n),i=o[co],a=!o[fo],l=t||{},s="OPTION"===n.tagName;for(var u in t)u in e||(e[u]=null);e.class?e.class=Xr(e.class):e[so]&&(e.class=null),e[uo]&&(e.style??(e.style=null));var c=yo(n);for(const g in e){let u=e[g];if(s&&"value"===g&&null==u)n.value=n.__value="",l[g]=u;else if("class"!==g)if("style"!==g){var f=l[g];if(u!==f||void 0===u&&n.hasAttribute(g)){l[g]=u;var d=g[0]+g[1];if("$$"!==d)if("on"===d){const t={},e="$$"+g;let r=g.slice(2);var p=ir(r);if(rr(r)&&(r=r.slice(0,-7),t.capture=!0),!p&&f){if(null!=u)continue;n.removeEventListener(r,l[e],t),l[e]=null}if(null!=u)if(p)n[`__${r}`]=u,vr([r]);else{let o=function(n){l[g].call(this,n)};l[e]=dr(r,n,o,t)}else p&&(n[`__${r}`]=void 0)}else if("style"===g)ho(n,g,u);else if("autofocus"===g)Qt(n,Boolean(u));else if(i||"__value"!==g&&("value"!==g||null==u))if("selected"===g&&s)vo(n,u);else{var v=g;a||(v=lr(v));var h="defaultValue"===v||"defaultChecked"===v;if(null!=u||i||h)h||c.includes(v)&&(i||"string"!=typeof u)?(n[v]=u,v in o&&(o[v]=Rn)):"function"!=typeof u&&ho(n,v,u);else if(o[g]=null,"value"===v||"checked"===v){let e=n;const r=void 0===t;if("value"===v){let n=e.defaultValue;e.removeAttribute(v),e.defaultValue=n,e.value=e.__value=r?n:null}else{let n=e.defaultChecked;e.removeAttribute(v),e.defaultChecked=n,e.checked=!!r&&n}}else n.removeAttribute(g)}else n.value=n.__value=u}}else oo(n,u,null==t?void 0:t[uo],e[uo]),l[g]=u,l[uo]=e[uo];else eo(n,"http://www.w3.org/1999/xhtml"===n.namespaceURI,u,r,null==t?void 0:t[so],e[so]),l[g]=u,l[so]=e[so]}return l}(n,r,c,i,a,l);u&&s&&"value"in c&&io(n,c.value);for(let n of Object.getOwnPropertySymbols(o))c[n]||he(o[n]);for(let t of Object.getOwnPropertySymbols(c)){var d=c[t];"@attach"!==t.description||r&&d===r[t]||(o[t]&&he(o[t]),o[t]=de(()=>Jr(n,()=>d))),f[t]=d}r=f}),s){var c=n;le(()=>{io(c,r.value,!0),ao(c)})}u=!0})}function bo(n){return n.__attributes??(n.__attributes={[co]:n.nodeName.includes("-"),[fo]:"http://www.w3.org/1999/xhtml"===n.namespaceURI})}var mo=new Map;function yo(n){var t,e=n.getAttribute("is")||n.nodeName,r=mo.get(e);if(r)return r;mo.set(e,r=[]);for(var o=n,i=Element.prototype;i!==o;){for(var a in t=rn(o))t[a].set&&r.push(a);o=ln(o)}return r}function wo(n,t,e=t){var r=new WeakSet;ne(n,"input",async o=>{var i=o?n.defaultValue:n.value;if(i=xo(n)?_o(i):i,e(i),null!==tt&&r.add(tt),await Ye(),i!==(i=t())){var a=n.selectionStart,l=n.selectionEnd,s=n.value.length;if(n.value=i??"",null!==l){var u=n.value.length;a===l&&l===s&&u>s?(n.selectionStart=u,n.selectionEnd=u):(n.selectionStart=a,n.selectionEnd=Math.min(l,u))}}}),null==Xe(t)&&n.value&&(e(xo(n)?_o(n.value):n.value),null!==tt&&r.add(tt)),se(()=>{var e=t();if(n===document.activeElement){var o=et??tt;if(r.has(o))return}xo(n)&&e===_o(n.value)||("date"!==n.type||e||n.value)&&e!==n.value&&(n.value=e??"")})}function xo(n){var t=n.type;return"number"===t||"range"===t}function _o(n){return""===n?null:+n}function ko(n,t){return n===t||(null==n?void 0:n[Ln])===t}function Co(n={},t,e,r){return le(()=>{var r,o;return se(()=>{r=o,o=[],Xe(()=>{n!==e(...o)&&(t(n,...o),r&&ko(e(...r),n)&&t(null,...r))})}),()=>{Jn(()=>{o&&ko(e(...o),n)&&t(null,...o)})}}),n}function So(n=!1){const t=Dn,e=t.l.u;if(!e)return;let r=()=>tr(t.s);if(n){let n=0,e={};const o=yt(()=>{let r=!1;const o=t.s;for(const n in o)o[n]!==e[n]&&(e[n]=o[n],r=!0);return r&&n++,n});r=()=>Ke(o)}var o;e.b.length&&(o=()=>{Eo(t,r),dn(e.b)},te(),ee(1048584,o,!0)),ie(()=>{const n=Xe(()=>e.m.map(fn));return()=>{for(const t of n)"function"==typeof t&&t()}}),e.a.length&&ie(()=>{Eo(t,r),dn(e.a)})}function Eo(n,t){if(n.l.s)for(const e of n.l.s)Ke(e);t()}let Mo=!1;const zo={get(n,t){if(!n.exclude.includes(t))return Ke(n.version),t in n.special?n.special[t]():n.props[t]},set(n,t,e){if(!(t in n.special)){var r=je;try{Ne(n.parent_effect),n.special[t]=$o({get[t](){return n.props[t]}},t,4)}finally{Ne(r)}}return n.special[t](e),Lt(n.version),!0},getOwnPropertyDescriptor(n,t){if(!n.exclude.includes(t))return t in n.props?{enumerable:!0,configurable:!0,value:n.props[t]}:void 0},deleteProperty:(n,t)=>(n.exclude.includes(t)||(n.exclude.push(t),Lt(n.version)),!0),has:(n,t)=>!n.exclude.includes(t)&&t in n.props,ownKeys:n=>Reflect.ownKeys(n.props).filter(t=>!n.exclude.includes(t))};function Ao(n,t){return new Proxy({props:n,exclude:t,special:{},version:At(0),parent_effect:je},zo)}const jo={get(n,t){let e=n.props.length;for(;e--;){let r=n.props[e];if(un(r)&&(r=r()),"object"==typeof r&&null!==r&&t in r)return r[t]}},set(n,t,e){let r=n.props.length;for(;r--;){let o=n.props[r];un(o)&&(o=o());const i=en(o,t);if(i&&i.set)return i.set(e),!0}return!1},getOwnPropertyDescriptor(n,t){let e=n.props.length;for(;e--;){let r=n.props[e];if(un(r)&&(r=r()),"object"==typeof r&&null!==r&&t in r){const n=en(r,t);return n&&!n.configurable&&(n.configurable=!0),n}}},has(n,t){if(t===Ln||t===Pn)return!1;for(let e of n.props)if(un(e)&&(e=e()),null!=e&&t in e)return!0;return!1},ownKeys(n){const t=[];for(let e of n.props)if(un(e)&&(e=e()),e){for(const n in e)t.includes(n)||t.push(n);for(const n of Object.getOwnPropertySymbols(e))t.includes(n)||t.push(n)}return t}};function No(...n){return new Proxy({props:n},jo)}function $o(n,t,e,r){var o,i,a,l=!qn||!!(2&e),s=!!(8&e),u=!!(16&e),c=r,f=!0,d=()=>(f&&(f=!1,c=u?Xe(r):r),c);if(s){var p=Ln in n||Pn in n;i=(null==(o=en(n,t))?void 0:o.set)??(p&&t in n?e=>n[t]=e:void 0)}var v,h=!1;if(s?[a,h]=function(n){var t=Mo;try{return Mo=!1,[n(),Mo]}finally{Mo=t}}(()=>n[t]):a=n[t],void 0===a&&void 0!==r&&(a=d(),i&&(l&&function(){throw new Error("https://svelte.dev/e/props_invalid_value")}(),i(a))),v=l?()=>{var e=n[t];return void 0===e?d():(f=!0,e)}:()=>{var e=n[t];return void 0!==e&&(c=void 0),void 0===e?c:e},l&&!(4&e))return v;if(i){var g=n.$$legacy;return function(n,t){return arguments.length>0?(l&&t&&!g&&!h||i(t?v():n),n):v()}}var b=!1,m=(1&e?yt:_t)(()=>(b=!1,v()));s&&Ke(m);var y=je;return function(n,t){if(arguments.length>0){const e=t?Ke(m):l&&s?Bt(n):n;return $t(m,e),b=!0,void 0!==c&&(c=e),n}return Se&&b||0!==(y.f&Cn)?m.v:Ke(m)}}function Io(n){var t,e;null===Dn&&Tn(),qn&&null!==Dn.l?(t=Dn,e=t.l,e.u??(e.u={a:[],b:[],m:[]})).m.push(n):ie(()=>{const t=Xe(n);if("function"==typeof t)return t})}function Lo(n){null===Dn&&Tn(),Io(()=>()=>Xe(n))}const Po="risu-ebooklike-viewer",Fo="0.1.0",Bo=class n{constructor(t){if(n._instance)return console.log(`[${Po}] Returning existing RisuAPI instance`),n._instance;this._risuFetch=t.risuFetch,this._nativeFetch=t.nativeFetch,this._getArg=t.getArg,this._setArg=t.setArg,this._getChar=t.getChar,this._setChar=t.setChar,this._addProvider=t.addProvider,this._addRisuScriptHandler=t.addRisuScriptHandler,this._removeRisuScriptHandler=t.removeRisuScriptHandler,this._addRisuReplacer=t.addRisuReplacer,this._removeRisuReplacer=t.removeRisuReplacer,this._onUnload=t.onUnload,this._getDatabase=null,this._setDatabaseLite=null,this._charWatchers=new Map,this._databaseWatchers=new Map,this._watcherIdCounter=0,n._instance=this}async initialize(){try{return this._getDatabase=getDatabase,this._setDatabaseLite=setDatabaseLite,console.log(`[${Po}] RisuAPI initialized successfully`),!0}catch(n){return console.log(`[${Po}] Failed to initialize RisuAPI:`,n),!1}}static getInstance(t=null){if(!n._instance){if(!t)throw new Error("RisuAPI instance does not exist. Provide pluginApis on first call.");n._instance=new n(t)}return n._instance}static resetInstance(){n._instance=null}risuFetch(n,t={}){return this._risuFetch(n,t)}nativeFetch(n,t={}){return this._nativeFetch(n,t)}getArg(n){return this._getArg(n)}setArg(n,t){return this._setArg(n,t)}getChar(){return this._getChar()}setChar(n){return this._setChar(n)}subscribeToChar(n,t,e=500){const r=++this._watcherIdCounter,o=()=>{try{const t=this._getChar();if(null===t)return null;const e=n?n(t):t;return JSON.stringify(e)}catch(t){return null}};let i=o();const a=setInterval(()=>{const n=o();if(n!==i){i=n;try{const e=n?JSON.parse(n):null;t(e)}catch(e){console.error(`[${Po}] subscribeToChar callback error:`,e)}}},e);return this._charWatchers.set(r,a),()=>{clearInterval(a),this._charWatchers.delete(r)}}addProvider(n,t,e){return this._addProvider(n,t,e)}addRisuScriptHandler(n,t){return this._addRisuScriptHandler(n,t)}removeRisuScriptHandler(n,t){return this._removeRisuScriptHandler(n,t)}addRisuReplacer(n,t){return this._addRisuReplacer(n,t)}removeRisuReplacer(n,t){return this._removeRisuReplacer(n,t)}onUnload(n){return this._onUnload(n)}clearAllSubscriptions(){this._charWatchers.forEach(n=>clearInterval(n)),this._charWatchers.clear(),this._databaseWatchers.forEach(n=>clearInterval(n)),this._databaseWatchers.clear(),console.log(`[${Po}] All subscriptions cleared`)}getDatabase(){if(!this._getDatabase)throw new Error("RisuAPI is not initialized. Call initialize() first.");return this._getDatabase()}setDatabaseLite(n){if(!this._setDatabaseLite)throw new Error("RisuAPI is not initialized. Call initialize() first.");return this._setDatabaseLite(n)}subscribeToDatabase(n,t,e=500){if(!this._getDatabase)throw new Error("RisuAPI is not initialized. Call initialize() first.");const r=++this._watcherIdCounter,o=()=>{try{const t=this._getDatabase();if(null===t)return null;const e=n?n(t):t;return JSON.stringify(e)}catch(t){return null}};let i=o();const a=setInterval(()=>{const n=o();if(n!==i){i=n;try{const e=n?JSON.parse(n):null;t(e)}catch(e){console.error(`[${Po}] subscribeToDatabase callback error:`,e)}}},e);return this._databaseWatchers.set(r,a),()=>{clearInterval(a),this._databaseWatchers.delete(r)}}getChaId(){const n=this._getChar();return null==n?null:n.chaId}getCurrentChatPage(){const n=this._getChar();return null==n?null:n.chatPage}getAllCurrentChatMessages(){const n=this._getChar();return null==n?null:n.chats[this.getCurrentChatPage()].message}getLastChatIndex(){const n=this._getChar();return null==n?null:n.chats[this.getCurrentChatPage()].message.length}getLastChatMessage(){const n=this._getChar();return null==n?null:n.chats[this.getCurrentChatPage()].message[this.getLastChatIndex()]}};H(Bo,"_instance",null);let To=Bo;const Ro="data-svelte-helper",Oo=new WeakMap,Wo=new Map;function qo({id:n,component:t,target:e,anchor:r=null,props:o={},wrapperTag:i="div",useContents:a=!0}){if(!n||!t||!e)return console.warn("[safeMount] id, component, target은 필수입니다."),null;const l=`data-mounted-${n}`;if(e.hasAttribute(l))return null;try{const s=document.createElement(i);s.setAttribute("data-svelte-wrapper",n),a&&(s.style.display="contents");const u=Mr(t,{target:s,props:o}),c=Array.from(s.childNodes);r&&r.parentElement===e?c.forEach(n=>{e.insertBefore(n,r)}):c.forEach(n=>{e.appendChild(n)}),e.setAttribute(l,"true");const f={instance:u,wrapper:s,target:e,cleanup:()=>Do(n),flagKey:l};return Wo.set(n,f),f}catch(s){return console.log(s),console.error(`[safeMount] ${n} 마운트 실패:`,s),null}}function Do(n){const t=Wo.get(n);if(!t)return!1;try{const{instance:e,wrapper:r,target:o,flagKey:i}=t;return e&&jr(e),o&&i&&o.removeAttribute(i),Wo.delete(n),!0}catch(e){return console.error(`[safeUnmount] ${n} 언마운트 실패:`,e),!1}}function Ho(n){return Wo.has(n)}function Uo(n,t,e="default"){var r;if(!n||!t)return;const o=`${Ro}-style-${e}`;let i=(null==(r=Oo.get(n))?void 0:r[o])||{};Object.entries(t).forEach(([t,e])=>{t in i||(i[t]=n.style.getPropertyValue(t)),n.style.setProperty(t,e)});const a=Oo.get(n)||{};a[o]=i,Oo.set(n,a)}function Vo(n,t="default"){if(!n)return;const e=`${Ro}-style-${t}`,r=Oo.get(n),o=null==r?void 0:r[e];o&&(Object.entries(o).forEach(([t,e])=>{e?n.style.setProperty(t,e):n.style.removeProperty(t)}),delete r[e])}function Go(n){const t=To.getInstance();if(!t)throw new Error("RisuAPI is not initialized. Please ensure the plugin is loaded.");const e=t.getDatabase(),r=e.plugins.findIndex(n=>n.name===Po),o=r>=0?{...e.plugins[r]}:null;console.log("[UpdateManager] Old plugin found:",r>=0,null==o?void 0:o.name);const i=function(n,t){const e={};for(const[r,o]of Object.entries(t))e[r]=n&&r in n?n[r]:"int"===o?0:"";return e}(null==o?void 0:o.realArg,n.arguments),a={...n,realArg:i};console.log("[UpdateManager] New plugin data prepared:",a.name,a.displayName),r>=0?(e.plugins[r]=a,console.log("[UpdateManager] Replaced existing plugin at index",r)):(e.plugins.push(a),console.log("[UpdateManager] Added new plugin"));try{return t.setDatabaseLite(e),console.log("[UpdateManager] Database saved successfully"),{success:!0}}catch(l){return console.error("[UpdateManager] Database save failed:",l),o&&r>=0?(e.plugins[r]=o,console.log("[UpdateManager] Rolled back to previous plugin")):-1===r&&(e.plugins.pop(),console.log("[UpdateManager] Removed newly added plugin")),{success:!1,error:l}}}"undefined"!=typeof window&&((W=window.__svelte??(window.__svelte={})).v??(W.v=new Set)).add("5");var Yo=yr('<div role="dialog" aria-modal="true" tabindex="-1"><div><div> </div> <div><button> </button></div></div></div>');function Ko(n,t){Un(t,!0);let e=$o(t,"message",3,""),r=$o(t,"confirmText",3,"확인"),o=jt(null);function i(n){"Enter"!==n.key&&"Escape"!==n.key||a()}function a(){var n;null==(n=Ke(o))||n.dispatchEvent(new CustomEvent("confirm",{bubbles:!0,composed:!0}))}Io(()=>{document.addEventListener("keydown",i),setTimeout(()=>{var n;return null==(n=Ke(o))?void 0:n.focus()},0)}),Lo(()=>{document.removeEventListener("keydown",i)});var l=Yo(),s=Yt(l),u=Yt(s),c=Yt(u),f=Jt(u,2),d=Yt(f);d.__click=a;var p=Yt(d);Co(d,n=>$t(o,n),()=>Ke(o)),ue(()=>{eo(l,1,Xr(J.udRoot)),eo(s,1,`${J.udCard} ${J.udAlert}`),eo(u,1,Xr(J.udAlertMessage)),Er(c,e()),eo(f,1,Xr(J.udActions)),eo(d,1,Xr(J.udBtnPrimary)),Er(p,r())}),kr(n,l),Vn()}vr(["click"]);var Jo=yr('<div role="dialog" aria-modal="true" aria-busy="true" tabindex="-1"><div><div><svg viewBox="0 0 50 50"><circle cx="25" cy="25" r="20" fill="none" stroke-width="4"></circle></svg></div> <div> </div></div></div>');function Qo(n,t){Un(t,!0);let e=$o(t,"message",3,"업데이트를 처리하고 있습니다...");var r=Jo(),o=Yt(r),i=Yt(o),a=Yt(i),l=Yt(a),s=Jt(i,2),u=Yt(s);ue(()=>{eo(r,1,Xr(J.udRoot)),eo(o,1,`${J.udCard} ${J.udLoading}`),eo(i,1,Xr(J.udLoadingSpinner)),eo(a,0,Xr(J.udLoadingSvg)),eo(l,0,Xr(J.udLoadingCircle)),eo(s,1,Xr(J.udLoadingMessage)),Er(u,e())}),kr(n,r),Vn()}var Xo=yr("<li> </li>"),Zo=yr("<li>세부 변경사항은 릴리스 노트를 참고해주세요</li>"),ni=yr("<button> </button> <button> </button>",1),ti=yr('<div role="dialog" aria-modal="true" tabindex="-1"><div><div><h3> </h3> <span> </span></div> <div> </div> <ul aria-label="변경사항"><!></ul> <div><!> <button> </button></div></div></div>');function ei(n,t){Un(t,!0);let e=$o(t,"name",3,""),r=$o(t,"currentVersion",3,"0.0.0"),o=$o(t,"version",3,"0.0.0"),i=$o(t,"releasedAt",19,()=>(new Date).toISOString()),a=$o(t,"mandatory",3,!1),l=$o(t,"notes",19,()=>[]),s=$o(t,"i18n",19,()=>({title:"플러그인 업데이트 준비 완료",primary:"지금 업데이트",later:"나중에",skip:"이번 버전 건너뛰기"})),u=jt(null),c=xt(()=>new Date(i()).toLocaleDateString()),f=xt(()=>a()?"필수 업데이트":"선택 업데이트");function d(n){"Escape"!==n.key||a()||p("later"),"Enter"===n.key&&p("update")}function p(n){var t;const e={action:n};"skip"===n&&(e.skipVersion=o()),null==(t=Ke(u))||t.dispatchEvent(new CustomEvent("update-action",{detail:e,bubbles:!0,composed:!0}))}Io(()=>{document.addEventListener("keydown",d),setTimeout(()=>{var n;return null==(n=Ke(u))?void 0:n.focus()},0)}),Lo(()=>{document.removeEventListener("keydown",d)});var v=ti();v.__click=function(n){a()||n.target!==n.currentTarget||p("later")},v.__keydown=function(n){a()||"Escape"!==n.key&&"Enter"!==n.key||n.target===n.currentTarget&&p("later")};var h=Yt(v),g=Yt(h),b=Yt(g),m=Yt(b),y=Jt(b,2),w=Yt(y),x=Jt(g,2),_=Yt(x),k=Jt(x,2),C=Yt(k),S=n=>{var t=_r();Fr(Kt(t),17,()=>l().slice(0,8),Ir,(n,t)=>{var e=Xo(),r=Yt(e);ue(n=>{eo(e,1,n),Er(r,Ke(t).text||"")},[()=>Xr(function(n){const t=(n||"").trim(),e=t.charAt(0).toUpperCase()+t.slice(1);return J[`ud${e}`]||""}(Ke(t).type))]),kr(n,e)}),kr(n,t)},E=n=>{kr(n,Zo())};$r(C,n=>{l().length>0?n(S):n(E,!1)});var M=Jt(k,2),z=Yt(M),A=n=>{var t=ni(),e=Kt(t);e.__click=()=>p("later");var r=Yt(e),o=Jt(e,2);o.__click=()=>p("skip");var i=Yt(o);ue(()=>{eo(e,1,Xr(J.udBtnGhost)),Er(r,s().later),eo(o,1,Xr(J.udBtnGhost)),Er(i,s().skip)}),kr(n,t)};$r(z,n=>{a()||n(A)});var j=Jt(z,2);j.__click=()=>p("update");var N=Yt(j);Co(j,n=>$t(u,n),()=>Ke(u)),ue(()=>{eo(v,1,Xr(J.udRoot)),eo(h,1,Xr(J.udCard)),eo(g,1,Xr(J.udTitle)),Er(m,`${s().title??""}${e()?` · ${e()}`:""}`),eo(y,1,Xr(J.udPill)),Er(w,`v${r()??""} → v${o()??""}`),eo(x,1,Xr(J.udSub)),Er(_,`${Ke(c)??""} · ${Ke(f)??""}`),eo(k,1,Xr(J.udList)),eo(M,1,Xr(J.udActions)),eo(j,1,Xr(J.udBtnPrimary)),Er(N,s().primary)}),kr(n,v),Vn()}async function ri(n){try{console.log("[UpdateManager] Fetching latest script from unpkg:",n.url);const t=await fetch(n.url).then(n=>n.text());console.log("[UpdateManager] Parsing plugin script...");const e=function(n){const t=n.split("\n");let e,r="",o={},i={},a=[];for(const l of t){if(l.startsWith("//@risu-name")||l.startsWith("//@risu-display-name"))throw new Error("V1 plugin is not supported. Please use V2 plugin.");if(l.startsWith("//@name")){const n=l.slice(7).trim();if(""===n)throw new Error("Plugin name must be longer than 0");r=n}if(l.startsWith("//@display-name")){const n=l.slice(16).trim();if(""===n)throw new Error("Plugin display name must be longer than 0");e=n}if(l.startsWith("//@link")){const n=l.split(" ")[1];if(!n||""===n)throw new Error("Plugin link is empty");if(!n.startsWith("https"))throw new Error("Plugin link must start with https");const t=l.split(" ").slice(2).join(" ").trim();a.push({link:n,hoverText:t||void 0})}if(l.startsWith("//@risu-arg")||l.startsWith("//@arg")){const n=l.trim().split(" "),t=n[1];if("int"!==n[2]&&"string"!==n[2])throw new Error(`Unknown argument type: ${n[2]}`);"int"===n[2]?(o[t]="int",i[t]=0):"string"===n[2]&&(o[t]="string",i[t]="")}}if(0===r.length)throw new Error("Plugin name not found");return{name:r,script:n,realArg:i,arguments:o,displayName:e,version:2,customLink:a}}(t);return Go(e)}catch(t){return console.error("[UpdateManager] Plugin update failed:",t),{success:!1,error:t}}}function oi(n,t,e){return function(n,t){const e=n.split(".").map(Number),r=t.split(".").map(Number);for(let o=0;o<Math.max(e.length,r.length);o++){const n=e[o]||0,t=r[o]||0;if(n>t)return 1;if(n<t)return-1}return 0}(n,t)<=0?(e||console.log(`[UpdateManager] Already up to date (${t})`),{available:!1,current:t,latest:n}):null}async function ii(n,t){var e;console.log("[UpdateManager] Updating to version",t);const r=await ri(n);return r.success?(console.log("[UpdateManager] Plugin script updated successfully"),await function(n="업데이트를 처리하고 있습니다...",t=3e3){return new Promise(e=>{const r=document.createElement("div");document.body.appendChild(r);const o=Mr(Qo,{target:r,props:{message:n}});setTimeout(()=>{jr(o),r.remove(),e()},t)})}("업데이트를 적용하고 있습니다...",4e3),await function(n,t="확인"){return new Promise(e=>{const r=document.createElement("div");document.body.appendChild(r);const o=Mr(Ko,{target:r,props:{message:n,confirmText:t}});r.addEventListener("confirm",()=>{jr(o),r.remove(),e()})})}("업데이트가 완료되었습니다.\n\n업데이트된 스크립트를 적용하기 위해\n페이지를 새로고침합니다."),window.location.reload(),{available:!0,action:"updated",version:t}):(console.error("[UpdateManager] Plugin update failed:",r.error),alert(`업데이트 실패: ${(null==(e=r.error)?void 0:e.message)||"알 수 없는 오류"}\n\n페이지를 새로고침하여 다시 시도해주세요.`),{available:!0,action:"update_failed",error:r.error})}async function ai(n={}){const{silent:t=!1,force:e=!1,i18n:r={}}=n;try{const n=await async function(){var n,t,e;try{const o=`https://unpkg.com/${Po}@latest/dist/${Po}.js`,i=(await fetch(o,{method:"HEAD",redirect:"follow"})).url,a=i.match(/@([\d.]+)\//);if(!a)throw new Error("Version not found in resolved URL");const l=a[1],s=await fetch(i).then(n=>n.text()),u=/\/\/@name (.+?)\n\/\/@display-name (.+?)\n\/\/@version (.+?)\n\/\/@description (.+?)(?:\n|$)/,c=s.match(u),f=`https://unpkg.com/${Po}@${l}/dist/release-notes.json`;let d={};try{const n=await fetch(f);n.ok&&(d=(await n.json())[l]||{})}catch(r){console.warn("[UpdateManager] Failed to fetch release notes:",r)}return{version:l,url:i,name:(null==(n=null==c?void 0:c[1])?void 0:n.trim())||Po,displayName:(null==(t=null==c?void 0:c[2])?void 0:t.trim())||`${Po}_v${l}`,description:(null==(e=null==c?void 0:c[4])?void 0:e.trim())||"",mandatory:d.mandatory||!1,notes:d.notes||[],released_at:d.released_at||(new Date).toISOString()}}catch(r){return console.log(`[${Po}] Update check skipped: Plugin not published to npm yet`),null}}();if(!n)return{available:!1,skipped:!0};const o=Fo,i=n.version,a=function(n,t,e){if(t)return null;const r=`${Po}_skip_version`;return localStorage.getItem(r)===n?(e||console.log(`[UpdateManager] Version ${n} is skipped by user`),{available:!1,skipped:!0,version:n}):null}(i,e,t);if(a)return a;const l=oi(i,o,t);if(l)return l;console.log(`[UpdateManager] New version available: ${o} → ${i}`);const s=await function(n){const{name:t,currentVersion:e,manifest:r,i18n:o={},mandatory:i=!0===r.mandatory}=n,a=Object.assign({title:"플러그인 업데이트 준비 완료",primary:"지금 업데이트",later:"나중에",skip:"이번 버전 건너뛰기"},o);return new Promise(n=>{const o=document.createElement("div");document.body.appendChild(o);const l=Mr(ei,{target:o,props:{name:t||"",currentVersion:e,version:r.version,releasedAt:r.released_at||(new Date).toISOString(),mandatory:i,notes:r.notes||[],i18n:a}});o.addEventListener("update-action",t=>{const{action:e,skipVersion:i}=t.detail,a={action:e};"update"===e?a.url=r.url:"skip"===e&&(a.skipVersion=i),jr(l),o.remove(),n(a)})})}({name:Po,currentVersion:o,manifest:n,i18n:r});return await async function(n,t,e){if("update"===n.action)return await ii(t,e);if("skip"===n.action){const t=`${Po}_skip_version`;return localStorage.setItem(t,n.skipVersion),console.log("[UpdateManager] Skipped version",n.skipVersion),{available:!0,action:"skipped",version:n.skipVersion}}return console.log("[UpdateManager] Update postponed"),{available:!0,action:"later",version:e}}(s,n,i)}catch(o){return console.error("[UpdateManager] Check failed:",o),{available:!1,error:o.message}}}vr(["click","keydown"]);var li,si="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},ui={exports:{}};var ci,fi,di=(li||(li=1,ci=ui,fi=ui.exports,function(){var n,t="Expected a function",e="__lodash_hash_undefined__",r="__lodash_placeholder__",o=32,i=128,a=256,l=1/0,s=9007199254740991,u=NaN,c=4294967295,f=[["ary",i],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",o],["partialRight",64],["rearg",a]],d="[object Arguments]",p="[object Array]",v="[object Boolean]",h="[object Date]",g="[object Error]",b="[object Function]",m="[object GeneratorFunction]",y="[object Map]",w="[object Number]",x="[object Object]",_="[object Promise]",k="[object RegExp]",C="[object Set]",S="[object String]",E="[object Symbol]",M="[object WeakMap]",z="[object ArrayBuffer]",A="[object DataView]",j="[object Float32Array]",N="[object Float64Array]",$="[object Int8Array]",I="[object Int16Array]",L="[object Int32Array]",P="[object Uint8Array]",F="[object Uint8ClampedArray]",B="[object Uint16Array]",T="[object Uint32Array]",R=/\b__p \+= '';/g,O=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,D=/[&<>"']/g,H=RegExp(q.source),U=RegExp(D.source),V=/<%-([\s\S]+?)%>/g,G=/<%([\s\S]+?)%>/g,Y=/<%=([\s\S]+?)%>/g,K=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,J=/^\w*$/,Q=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,X=/[\\^$.*+?()[\]{}|]/g,Z=RegExp(X.source),nn=/^\s+/,tn=/\s/,en=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,rn=/\{\n\/\* \[wrapped with (.+)\] \*/,on=/,? & /,an=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ln=/[()=,{}\[\]\/\s]/,sn=/\\(\\)?/g,un=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,cn=/\w*$/,fn=/^[-+]0x[0-9a-f]+$/i,dn=/^0b[01]+$/i,pn=/^\[object .+?Constructor\]$/,vn=/^0o[0-7]+$/i,hn=/^(?:0|[1-9]\d*)$/,gn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,bn=/($^)/,mn=/['\n\r\u2028\u2029\\]/g,yn="\\ud800-\\udfff",wn="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xn="\\u2700-\\u27bf",_n="a-z\\xdf-\\xf6\\xf8-\\xff",kn="A-Z\\xc0-\\xd6\\xd8-\\xde",Cn="\\ufe0e\\ufe0f",Sn="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",En="['’]",Mn="["+yn+"]",zn="["+Sn+"]",An="["+wn+"]",jn="\\d+",Nn="["+xn+"]",$n="["+_n+"]",In="[^"+yn+Sn+jn+xn+_n+kn+"]",Ln="\\ud83c[\\udffb-\\udfff]",Pn="[^"+yn+"]",Fn="(?:\\ud83c[\\udde6-\\uddff]){2}",Bn="[\\ud800-\\udbff][\\udc00-\\udfff]",Tn="["+kn+"]",Rn="\\u200d",On="(?:"+$n+"|"+In+")",Wn="(?:"+Tn+"|"+In+")",qn="(?:['’](?:d|ll|m|re|s|t|ve))?",Dn="(?:['’](?:D|LL|M|RE|S|T|VE))?",Hn="(?:"+An+"|"+Ln+")?",Un="["+Cn+"]?",Vn=Un+Hn+"(?:"+Rn+"(?:"+[Pn,Fn,Bn].join("|")+")"+Un+Hn+")*",Gn="(?:"+[Nn,Fn,Bn].join("|")+")"+Vn,Yn="(?:"+[Pn+An+"?",An,Fn,Bn,Mn].join("|")+")",Kn=RegExp(En,"g"),Jn=RegExp(An,"g"),Qn=RegExp(Ln+"(?="+Ln+")|"+Yn+Vn,"g"),Xn=RegExp([Tn+"?"+$n+"+"+qn+"(?="+[zn,Tn,"$"].join("|")+")",Wn+"+"+Dn+"(?="+[zn,Tn+On,"$"].join("|")+")",Tn+"?"+On+"+"+qn,Tn+"+"+Dn,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",jn,Gn].join("|"),"g"),Zn=RegExp("["+Rn+yn+wn+Cn+"]"),nt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,tt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],et=-1,rt={};rt[j]=rt[N]=rt[$]=rt[I]=rt[L]=rt[P]=rt[F]=rt[B]=rt[T]=!0,rt[d]=rt[p]=rt[z]=rt[v]=rt[A]=rt[h]=rt[g]=rt[b]=rt[y]=rt[w]=rt[x]=rt[k]=rt[C]=rt[S]=rt[M]=!1;var ot={};ot[d]=ot[p]=ot[z]=ot[A]=ot[v]=ot[h]=ot[j]=ot[N]=ot[$]=ot[I]=ot[L]=ot[y]=ot[w]=ot[x]=ot[k]=ot[C]=ot[S]=ot[E]=ot[P]=ot[F]=ot[B]=ot[T]=!0,ot[g]=ot[b]=ot[M]=!1;var it={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},at=parseFloat,lt=parseInt,st="object"==typeof si&&si&&si.Object===Object&&si,ut="object"==typeof self&&self&&self.Object===Object&&self,ct=st||ut||Function("return this")(),ft=fi&&!fi.nodeType&&fi,dt=ft&&ci&&!ci.nodeType&&ci,pt=dt&&dt.exports===ft,vt=pt&&st.process,ht=function(){try{var n=dt&&dt.require&&dt.require("util").types;return n||vt&&vt.binding&&vt.binding("util")}catch(t){}}(),gt=ht&&ht.isArrayBuffer,bt=ht&&ht.isDate,mt=ht&&ht.isMap,yt=ht&&ht.isRegExp,wt=ht&&ht.isSet,xt=ht&&ht.isTypedArray;function _t(n,t,e){switch(e.length){case 0:return n.call(t);case 1:return n.call(t,e[0]);case 2:return n.call(t,e[0],e[1]);case 3:return n.call(t,e[0],e[1],e[2])}return n.apply(t,e)}function kt(n,t,e,r){for(var o=-1,i=null==n?0:n.length;++o<i;){var a=n[o];t(r,a,e(a),n)}return r}function Ct(n,t){for(var e=-1,r=null==n?0:n.length;++e<r&&!1!==t(n[e],e,n););return n}function St(n,t){for(var e=null==n?0:n.length;e--&&!1!==t(n[e],e,n););return n}function Et(n,t){for(var e=-1,r=null==n?0:n.length;++e<r;)if(!t(n[e],e,n))return!1;return!0}function Mt(n,t){for(var e=-1,r=null==n?0:n.length,o=0,i=[];++e<r;){var a=n[e];t(a,e,n)&&(i[o++]=a)}return i}function zt(n,t){return!(null==n||!n.length)&&Tt(n,t,0)>-1}function At(n,t,e){for(var r=-1,o=null==n?0:n.length;++r<o;)if(e(t,n[r]))return!0;return!1}function jt(n,t){for(var e=-1,r=null==n?0:n.length,o=Array(r);++e<r;)o[e]=t(n[e],e,n);return o}function Nt(n,t){for(var e=-1,r=t.length,o=n.length;++e<r;)n[o+e]=t[e];return n}function $t(n,t,e,r){var o=-1,i=null==n?0:n.length;for(r&&i&&(e=n[++o]);++o<i;)e=t(e,n[o],o,n);return e}function It(n,t,e,r){var o=null==n?0:n.length;for(r&&o&&(e=n[--o]);o--;)e=t(e,n[o],o,n);return e}function Lt(n,t){for(var e=-1,r=null==n?0:n.length;++e<r;)if(t(n[e],e,n))return!0;return!1}var Pt=qt("length");function Ft(n,t,e){var r;return e(n,function(n,e,o){if(t(n,e,o))return r=e,!1}),r}function Bt(n,t,e,r){for(var o=n.length,i=e+(r?1:-1);r?i--:++i<o;)if(t(n[i],i,n))return i;return-1}function Tt(n,t,e){return t==t?function(n,t,e){for(var r=e-1,o=n.length;++r<o;)if(n[r]===t)return r;return-1}(n,t,e):Bt(n,Ot,e)}function Rt(n,t,e,r){for(var o=e-1,i=n.length;++o<i;)if(r(n[o],t))return o;return-1}function Ot(n){return n!=n}function Wt(n,t){var e=null==n?0:n.length;return e?Ut(n,t)/e:u}function qt(t){return function(e){return null==e?n:e[t]}}function Dt(t){return function(e){return null==t?n:t[e]}}function Ht(n,t,e,r,o){return o(n,function(n,o,i){e=r?(r=!1,n):t(e,n,o,i)}),e}function Ut(t,e){for(var r,o=-1,i=t.length;++o<i;){var a=e(t[o]);a!==n&&(r=r===n?a:r+a)}return r}function Vt(n,t){for(var e=-1,r=Array(n);++e<n;)r[e]=t(e);return r}function Gt(n){return n?n.slice(0,ue(n)+1).replace(nn,""):n}function Yt(n){return function(t){return n(t)}}function Kt(n,t){return jt(t,function(t){return n[t]})}function Jt(n,t){return n.has(t)}function Qt(n,t){for(var e=-1,r=n.length;++e<r&&Tt(t,n[e],0)>-1;);return e}function Xt(n,t){for(var e=n.length;e--&&Tt(t,n[e],0)>-1;);return e}var Zt=Dt({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),ne=Dt({"&":"&","<":"<",">":">",'"':""","'":"'"});function te(n){return"\\"+it[n]}function ee(n){return Zn.test(n)}function re(n){var t=-1,e=Array(n.size);return n.forEach(function(n,r){e[++t]=[r,n]}),e}function oe(n,t){return function(e){return n(t(e))}}function ie(n,t){for(var e=-1,o=n.length,i=0,a=[];++e<o;){var l=n[e];l!==t&&l!==r||(n[e]=r,a[i++]=e)}return a}function ae(n){var t=-1,e=Array(n.size);return n.forEach(function(n){e[++t]=n}),e}function le(n){return ee(n)?function(n){for(var t=Qn.lastIndex=0;Qn.test(n);)++t;return t}(n):Pt(n)}function se(n){return ee(n)?function(n){return n.match(Qn)||[]}(n):function(n){return n.split("")}(n)}function ue(n){for(var t=n.length;t--&&tn.test(n.charAt(t)););return t}var ce=Dt({"&":"&","<":"<",">":">",""":'"',"'":"'"}),fe=function tn(yn){var wn,xn=(yn=null==yn?ct:fe.defaults(ct.Object(),yn,fe.pick(ct,tt))).Array,_n=yn.Date,kn=yn.Error,Cn=yn.Function,Sn=yn.Math,En=yn.Object,Mn=yn.RegExp,zn=yn.String,An=yn.TypeError,jn=xn.prototype,Nn=Cn.prototype,$n=En.prototype,In=yn["__core-js_shared__"],Ln=Nn.toString,Pn=$n.hasOwnProperty,Fn=0,Bn=(wn=/[^.]+$/.exec(In&&In.keys&&In.keys.IE_PROTO||""))?"Symbol(src)_1."+wn:"",Tn=$n.toString,Rn=Ln.call(En),On=ct._,Wn=Mn("^"+Ln.call(Pn).replace(X,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),qn=pt?yn.Buffer:n,Dn=yn.Symbol,Hn=yn.Uint8Array,Un=qn?qn.allocUnsafe:n,Vn=oe(En.getPrototypeOf,En),Gn=En.create,Yn=$n.propertyIsEnumerable,Qn=jn.splice,Zn=Dn?Dn.isConcatSpreadable:n,it=Dn?Dn.iterator:n,st=Dn?Dn.toStringTag:n,ut=function(){try{var n=ci(En,"defineProperty");return n({},"",{}),n}catch(t){}}(),ft=yn.clearTimeout!==ct.clearTimeout&&yn.clearTimeout,dt=_n&&_n.now!==ct.Date.now&&_n.now,vt=yn.setTimeout!==ct.setTimeout&&yn.setTimeout,ht=Sn.ceil,Pt=Sn.floor,Dt=En.getOwnPropertySymbols,de=qn?qn.isBuffer:n,pe=yn.isFinite,ve=jn.join,he=oe(En.keys,En),ge=Sn.max,be=Sn.min,me=_n.now,ye=yn.parseInt,we=Sn.random,xe=jn.reverse,_e=ci(yn,"DataView"),ke=ci(yn,"Map"),Ce=ci(yn,"Promise"),Se=ci(yn,"Set"),Ee=ci(yn,"WeakMap"),Me=ci(En,"create"),ze=Ee&&new Ee,Ae={},je=Ri(_e),Ne=Ri(ke),$e=Ri(Ce),Ie=Ri(Se),Le=Ri(Ee),Pe=Dn?Dn.prototype:n,Fe=Pe?Pe.valueOf:n,Be=Pe?Pe.toString:n;function Te(n){if(el(n)&&!Ua(n)&&!(n instanceof qe)){if(n instanceof We)return n;if(Pn.call(n,"__wrapped__"))return Oi(n)}return new We(n)}var Re=function(){function t(){}return function(e){if(!tl(e))return{};if(Gn)return Gn(e);t.prototype=e;var r=new t;return t.prototype=n,r}}();function Oe(){}function We(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=n}function qe(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=c,this.__views__=[]}function De(n){var t=-1,e=null==n?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function He(n){var t=-1,e=null==n?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Ue(n){var t=-1,e=null==n?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Ve(n){var t=-1,e=null==n?0:n.length;for(this.__data__=new Ue;++t<e;)this.add(n[t])}function Ge(n){var t=this.__data__=new He(n);this.size=t.size}function Ye(n,t){var e=Ua(n),r=!e&&Ha(n),o=!e&&!r&&Ka(n),i=!e&&!r&&!o&&cl(n),a=e||r||o||i,l=a?Vt(n.length,zn):[],s=l.length;for(var u in n)!t&&!Pn.call(n,u)||a&&("length"==u||o&&("offset"==u||"parent"==u)||i&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||bi(u,s))||l.push(u);return l}function Ke(t){var e=t.length;return e?t[Vr(0,e-1)]:n}function Je(n,t){return Ii(zo(n),ir(t,0,n.length))}function Qe(n){return Ii(zo(n))}function Xe(t,e,r){(r!==n&&!Wa(t[e],r)||r===n&&!(e in t))&&rr(t,e,r)}function Ze(t,e,r){var o=t[e];Pn.call(t,e)&&Wa(o,r)&&(r!==n||e in t)||rr(t,e,r)}function nr(n,t){for(var e=n.length;e--;)if(Wa(n[e][0],t))return e;return-1}function tr(n,t,e,r){return cr(n,function(n,o,i){t(r,n,e(n),i)}),r}function er(n,t){return n&&Ao(t,$l(t),n)}function rr(n,t,e){"__proto__"==t&&ut?ut(n,t,{configurable:!0,enumerable:!0,value:e,writable:!0}):n[t]=e}function or(t,e){for(var r=-1,o=e.length,i=xn(o),a=null==t;++r<o;)i[r]=a?n:Ml(t,e[r]);return i}function ir(t,e,r){return t==t&&(r!==n&&(t=t<=r?t:r),e!==n&&(t=t>=e?t:e)),t}function ar(t,e,r,o,i,a){var l,s=1&e,u=2&e,c=4&e;if(r&&(l=i?r(t,o,i,a):r(t)),l!==n)return l;if(!tl(t))return t;var f=Ua(t);if(f){if(l=function(n){var t=n.length,e=new n.constructor(t);return t&&"string"==typeof n[0]&&Pn.call(n,"index")&&(e.index=n.index,e.input=n.input),e}(t),!s)return zo(t,l)}else{var p=pi(t),g=p==b||p==m;if(Ka(t))return _o(t,s);if(p==x||p==d||g&&!i){if(l=u||g?{}:hi(t),!s)return u?function(n,t){return Ao(n,di(n),t)}(t,function(n,t){return n&&Ao(t,Il(t),n)}(l,t)):function(n,t){return Ao(n,fi(n),t)}(t,er(l,t))}else{if(!ot[p])return i?t:{};l=function(n,t,e){var r,o=n.constructor;switch(t){case z:return ko(n);case v:case h:return new o(+n);case A:return function(n,t){var e=t?ko(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}(n,e);case j:case N:case $:case I:case L:case P:case F:case B:case T:return Co(n,e);case y:return new o;case w:case S:return new o(n);case k:return function(n){var t=new n.constructor(n.source,cn.exec(n));return t.lastIndex=n.lastIndex,t}(n);case C:return new o;case E:return r=n,Fe?En(Fe.call(r)):{}}}(t,p,s)}}a||(a=new Ge);var _=a.get(t);if(_)return _;a.set(t,l),ll(t)?t.forEach(function(n){l.add(ar(n,e,r,n,t,a))}):rl(t)&&t.forEach(function(n,o){l.set(o,ar(n,e,r,o,t,a))});var M=f?n:(c?u?ri:ei:u?Il:$l)(t);return Ct(M||t,function(n,o){M&&(n=t[o=n]),Ze(l,o,ar(n,e,r,o,t,a))}),l}function lr(t,e,r){var o=r.length;if(null==t)return!o;for(t=En(t);o--;){var i=r[o],a=e[i],l=t[i];if(l===n&&!(i in t)||!a(l))return!1}return!0}function sr(e,r,o){if("function"!=typeof e)throw new An(t);return Ai(function(){e.apply(n,o)},r)}function ur(n,t,e,r){var o=-1,i=zt,a=!0,l=n.length,s=[],u=t.length;if(!l)return s;e&&(t=jt(t,Yt(e))),r?(i=At,a=!1):t.length>=200&&(i=Jt,a=!1,t=new Ve(t));n:for(;++o<l;){var c=n[o],f=null==e?c:e(c);if(c=r||0!==c?c:0,a&&f==f){for(var d=u;d--;)if(t[d]===f)continue n;s.push(c)}else i(t,f,r)||s.push(c)}return s}Te.templateSettings={escape:V,evaluate:G,interpolate:Y,variable:"",imports:{_:Te}},Te.prototype=Oe.prototype,Te.prototype.constructor=Te,We.prototype=Re(Oe.prototype),We.prototype.constructor=We,qe.prototype=Re(Oe.prototype),qe.prototype.constructor=qe,De.prototype.clear=function(){this.__data__=Me?Me(null):{},this.size=0},De.prototype.delete=function(n){var t=this.has(n)&&delete this.__data__[n];return this.size-=t?1:0,t},De.prototype.get=function(t){var r=this.__data__;if(Me){var o=r[t];return o===e?n:o}return Pn.call(r,t)?r[t]:n},De.prototype.has=function(t){var e=this.__data__;return Me?e[t]!==n:Pn.call(e,t)},De.prototype.set=function(t,r){var o=this.__data__;return this.size+=this.has(t)?0:1,o[t]=Me&&r===n?e:r,this},He.prototype.clear=function(){this.__data__=[],this.size=0},He.prototype.delete=function(n){var t=this.__data__,e=nr(t,n);return!(e<0||(e==t.length-1?t.pop():Qn.call(t,e,1),--this.size,0))},He.prototype.get=function(t){var e=this.__data__,r=nr(e,t);return r<0?n:e[r][1]},He.prototype.has=function(n){return nr(this.__data__,n)>-1},He.prototype.set=function(n,t){var e=this.__data__,r=nr(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this},Ue.prototype.clear=function(){this.size=0,this.__data__={hash:new De,map:new(ke||He),string:new De}},Ue.prototype.delete=function(n){var t=si(this,n).delete(n);return this.size-=t?1:0,t},Ue.prototype.get=function(n){return si(this,n).get(n)},Ue.prototype.has=function(n){return si(this,n).has(n)},Ue.prototype.set=function(n,t){var e=si(this,n),r=e.size;return e.set(n,t),this.size+=e.size==r?0:1,this},Ve.prototype.add=Ve.prototype.push=function(n){return this.__data__.set(n,e),this},Ve.prototype.has=function(n){return this.__data__.has(n)},Ge.prototype.clear=function(){this.__data__=new He,this.size=0},Ge.prototype.delete=function(n){var t=this.__data__,e=t.delete(n);return this.size=t.size,e},Ge.prototype.get=function(n){return this.__data__.get(n)},Ge.prototype.has=function(n){return this.__data__.has(n)},Ge.prototype.set=function(n,t){var e=this.__data__;if(e instanceof He){var r=e.__data__;if(!ke||r.length<199)return r.push([n,t]),this.size=++e.size,this;e=this.__data__=new Ue(r)}return e.set(n,t),this.size=e.size,this};var cr=$o(mr),fr=$o(yr,!0);function dr(n,t){var e=!0;return cr(n,function(n,r,o){return e=!!t(n,r,o)}),e}function pr(t,e,r){for(var o=-1,i=t.length;++o<i;){var a=t[o],l=e(a);if(null!=l&&(s===n?l==l&&!ul(l):r(l,s)))var s=l,u=a}return u}function vr(n,t){var e=[];return cr(n,function(n,r,o){t(n,r,o)&&e.push(n)}),e}function hr(n,t,e,r,o){var i=-1,a=n.length;for(e||(e=gi),o||(o=[]);++i<a;){var l=n[i];t>0&&e(l)?t>1?hr(l,t-1,e,r,o):Nt(o,l):r||(o[o.length]=l)}return o}var gr=Io(),br=Io(!0);function mr(n,t){return n&&gr(n,t,$l)}function yr(n,t){return n&&br(n,t,$l)}function wr(n,t){return Mt(t,function(t){return Xa(n[t])})}function xr(t,e){for(var r=0,o=(e=mo(e,t)).length;null!=t&&r<o;)t=t[Ti(e[r++])];return r&&r==o?t:n}function _r(n,t,e){var r=t(n);return Ua(n)?r:Nt(r,e(n))}function kr(t){return null==t?t===n?"[object Undefined]":"[object Null]":st&&st in En(t)?function(t){var e=Pn.call(t,st),r=t[st];try{t[st]=n;var o=!0}catch(a){}var i=Tn.call(t);return o&&(e?t[st]=r:delete t[st]),i}(t):function(n){return Tn.call(n)}(t)}function Cr(n,t){return n>t}function Sr(n,t){return null!=n&&Pn.call(n,t)}function Er(n,t){return null!=n&&t in En(n)}function Mr(t,e,r){for(var o=r?At:zt,i=t[0].length,a=t.length,l=a,s=xn(a),u=1/0,c=[];l--;){var f=t[l];l&&e&&(f=jt(f,Yt(e))),u=be(f.length,u),s[l]=!r&&(e||i>=120&&f.length>=120)?new Ve(l&&f):n}f=t[0];var d=-1,p=s[0];n:for(;++d<i&&c.length<u;){var v=f[d],h=e?e(v):v;if(v=r||0!==v?v:0,!(p?Jt(p,h):o(c,h,r))){for(l=a;--l;){var g=s[l];if(!(g?Jt(g,h):o(t[l],h,r)))continue n}p&&p.push(h),c.push(v)}}return c}function zr(t,e,r){var o=null==(t=Ei(t,e=mo(e,t)))?t:t[Ti(Qi(e))];return null==o?n:_t(o,t,r)}function Ar(n){return el(n)&&kr(n)==d}function jr(t,e,r,o,i){return t===e||(null==t||null==e||!el(t)&&!el(e)?t!=t&&e!=e:function(t,e,r,o,i,a){var l=Ua(t),s=Ua(e),u=l?p:pi(t),c=s?p:pi(e),f=(u=u==d?x:u)==x,b=(c=c==d?x:c)==x,m=u==c;if(m&&Ka(t)){if(!Ka(e))return!1;l=!0,f=!1}if(m&&!f)return a||(a=new Ge),l||cl(t)?ni(t,e,r,o,i,a):function(n,t,e,r,o,i,a){switch(e){case A:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case z:return!(n.byteLength!=t.byteLength||!i(new Hn(n),new Hn(t)));case v:case h:case w:return Wa(+n,+t);case g:return n.name==t.name&&n.message==t.message;case k:case S:return n==t+"";case y:var l=re;case C:var s=1&r;if(l||(l=ae),n.size!=t.size&&!s)return!1;var u=a.get(n);if(u)return u==t;r|=2,a.set(n,t);var c=ni(l(n),l(t),r,o,i,a);return a.delete(n),c;case E:if(Fe)return Fe.call(n)==Fe.call(t)}return!1}(t,e,u,r,o,i,a);if(!(1&r)){var _=f&&Pn.call(t,"__wrapped__"),M=b&&Pn.call(e,"__wrapped__");if(_||M){var j=_?t.value():t,N=M?e.value():e;return a||(a=new Ge),i(j,N,r,o,a)}}return!!m&&(a||(a=new Ge),function(t,e,r,o,i,a){var l=1&r,s=ei(t),u=s.length,c=ei(e),f=c.length;if(u!=f&&!l)return!1;for(var d=u;d--;){var p=s[d];if(!(l?p in e:Pn.call(e,p)))return!1}var v=a.get(t),h=a.get(e);if(v&&h)return v==e&&h==t;var g=!0;a.set(t,e),a.set(e,t);for(var b=l;++d<u;){var m=t[p=s[d]],y=e[p];if(o)var w=l?o(y,m,p,e,t,a):o(m,y,p,t,e,a);if(!(w===n?m===y||i(m,y,r,o,a):w)){g=!1;break}b||(b="constructor"==p)}if(g&&!b){var x=t.constructor,_=e.constructor;x==_||!("constructor"in t)||!("constructor"in e)||"function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _||(g=!1)}return a.delete(t),a.delete(e),g}(t,e,r,o,i,a))}(t,e,r,o,jr,i))}function Nr(t,e,r,o){var i=r.length,a=i,l=!o;if(null==t)return!a;for(t=En(t);i--;){var s=r[i];if(l&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++i<a;){var u=(s=r[i])[0],c=t[u],f=s[1];if(l&&s[2]){if(c===n&&!(u in t))return!1}else{var d=new Ge;if(o)var p=o(c,f,u,t,e,d);if(!(p===n?jr(f,c,3,o,d):p))return!1}}return!0}function $r(n){return!(!tl(n)||(t=n,Bn&&Bn in t))&&(Xa(n)?Wn:pn).test(Ri(n));var t}function Ir(n){return"function"==typeof n?n:null==n?os:"object"==typeof n?Ua(n)?Rr(n[0],n[1]):Tr(n):ps(n)}function Lr(n){if(!_i(n))return he(n);var t=[];for(var e in En(n))Pn.call(n,e)&&"constructor"!=e&&t.push(e);return t}function Pr(n){if(!tl(n))return function(n){var t=[];if(null!=n)for(var e in En(n))t.push(e);return t}(n);var t=_i(n),e=[];for(var r in n)("constructor"!=r||!t&&Pn.call(n,r))&&e.push(r);return e}function Fr(n,t){return n<t}function Br(n,t){var e=-1,r=Ga(n)?xn(n.length):[];return cr(n,function(n,o,i){r[++e]=t(n,o,i)}),r}function Tr(n){var t=ui(n);return 1==t.length&&t[0][2]?Ci(t[0][0],t[0][1]):function(e){return e===n||Nr(e,n,t)}}function Rr(t,e){return yi(t)&&ki(e)?Ci(Ti(t),e):function(r){var o=Ml(r,t);return o===n&&o===e?zl(r,t):jr(e,o,3)}}function Or(t,e,r,o,i){t!==e&&gr(e,function(a,l){if(i||(i=new Ge),tl(a))!function(t,e,r,o,i,a,l){var s=Mi(t,r),u=Mi(e,r),c=l.get(u);if(c)Xe(t,r,c);else{var f=a?a(s,u,r+"",t,e,l):n,d=f===n;if(d){var p=Ua(u),v=!p&&Ka(u),h=!p&&!v&&cl(u);f=u,p||v||h?Ua(s)?f=s:Ya(s)?f=zo(s):v?(d=!1,f=_o(u,!0)):h?(d=!1,f=Co(u,!0)):f=[]:il(u)||Ha(u)?(f=s,Ha(s)?f=ml(s):tl(s)&&!Xa(s)||(f=hi(u))):d=!1}d&&(l.set(u,f),i(f,u,o,a,l),l.delete(u)),Xe(t,r,f)}}(t,e,l,r,Or,o,i);else{var s=o?o(Mi(t,l),a,l+"",t,e,i):n;s===n&&(s=a),Xe(t,l,s)}},Il)}function Wr(t,e){var r=t.length;if(r)return bi(e+=e<0?r:0,r)?t[e]:n}function qr(n,t,e){t=t.length?jt(t,function(n){return Ua(n)?function(t){return xr(t,1===n.length?n[0]:n)}:n}):[os];var r=-1;return t=jt(t,Yt(li())),function(n,t){var e=n.length;for(n.sort(t);e--;)n[e]=n[e].value;return n}(Br(n,function(n,e,o){return{criteria:jt(t,function(t){return t(n)}),index:++r,value:n}}),function(n,t){return function(n,t,e){for(var r=-1,o=n.criteria,i=t.criteria,a=o.length,l=e.length;++r<a;){var s=So(o[r],i[r]);if(s)return r>=l?s:s*("desc"==e[r]?-1:1)}return n.index-t.index}(n,t,e)})}function Dr(n,t,e){for(var r=-1,o=t.length,i={};++r<o;){var a=t[r],l=xr(n,a);e(l,a)&&Qr(i,mo(a,n),l)}return i}function Hr(n,t,e,r){var o=r?Rt:Tt,i=-1,a=t.length,l=n;for(n===t&&(t=zo(t)),e&&(l=jt(n,Yt(e)));++i<a;)for(var s=0,u=t[i],c=e?e(u):u;(s=o(l,c,s,r))>-1;)l!==n&&Qn.call(l,s,1),Qn.call(n,s,1);return n}function Ur(n,t){for(var e=n?t.length:0,r=e-1;e--;){var o=t[e];if(e==r||o!==i){var i=o;bi(o)?Qn.call(n,o,1):uo(n,o)}}return n}function Vr(n,t){return n+Pt(we()*(t-n+1))}function Gr(n,t){var e="";if(!n||t<1||t>s)return e;do{t%2&&(e+=n),(t=Pt(t/2))&&(n+=n)}while(t);return e}function Yr(n,t){return ji(Si(n,t,os),n+"")}function Kr(n){return Ke(Wl(n))}function Jr(n,t){var e=Wl(n);return Ii(e,ir(t,0,e.length))}function Qr(t,e,r,o){if(!tl(t))return t;for(var i=-1,a=(e=mo(e,t)).length,l=a-1,s=t;null!=s&&++i<a;){var u=Ti(e[i]),c=r;if("__proto__"===u||"constructor"===u||"prototype"===u)return t;if(i!=l){var f=s[u];(c=o?o(f,u,s):n)===n&&(c=tl(f)?f:bi(e[i+1])?[]:{})}Ze(s,u,c),s=s[u]}return t}var Xr=ze?function(n,t){return ze.set(n,t),n}:os,Zr=ut?function(n,t){return ut(n,"toString",{configurable:!0,enumerable:!1,value:ts(t),writable:!0})}:os;function no(n){return Ii(Wl(n))}function to(n,t,e){var r=-1,o=n.length;t<0&&(t=-t>o?0:o+t),(e=e>o?o:e)<0&&(e+=o),o=t>e?0:e-t>>>0,t>>>=0;for(var i=xn(o);++r<o;)i[r]=n[r+t];return i}function eo(n,t){var e;return cr(n,function(n,r,o){return!(e=t(n,r,o))}),!!e}function ro(n,t,e){var r=0,o=null==n?r:n.length;if("number"==typeof t&&t==t&&o<=2147483647){for(;r<o;){var i=r+o>>>1,a=n[i];null!==a&&!ul(a)&&(e?a<=t:a<t)?r=i+1:o=i}return o}return oo(n,t,os,e)}function oo(t,e,r,o){var i=0,a=null==t?0:t.length;if(0===a)return 0;for(var l=(e=r(e))!=e,s=null===e,u=ul(e),c=e===n;i<a;){var f=Pt((i+a)/2),d=r(t[f]),p=d!==n,v=null===d,h=d==d,g=ul(d);if(l)var b=o||h;else b=c?h&&(o||p):s?h&&p&&(o||!v):u?h&&p&&!v&&(o||!g):!v&&!g&&(o?d<=e:d<e);b?i=f+1:a=f}return be(a,4294967294)}function io(n,t){for(var e=-1,r=n.length,o=0,i=[];++e<r;){var a=n[e],l=t?t(a):a;if(!e||!Wa(l,s)){var s=l;i[o++]=0===a?0:a}}return i}function ao(n){return"number"==typeof n?n:ul(n)?u:+n}function lo(n){if("string"==typeof n)return n;if(Ua(n))return jt(n,lo)+"";if(ul(n))return Be?Be.call(n):"";var t=n+"";return"0"==t&&1/n==-1/0?"-0":t}function so(n,t,e){var r=-1,o=zt,i=n.length,a=!0,l=[],s=l;if(e)a=!1,o=At;else if(i>=200){var u=t?null:Yo(n);if(u)return ae(u);a=!1,o=Jt,s=new Ve}else s=t?[]:l;n:for(;++r<i;){var c=n[r],f=t?t(c):c;if(c=e||0!==c?c:0,a&&f==f){for(var d=s.length;d--;)if(s[d]===f)continue n;t&&s.push(f),l.push(c)}else o(s,f,e)||(s!==l&&s.push(f),l.push(c))}return l}function uo(n,t){return null==(n=Ei(n,t=mo(t,n)))||delete n[Ti(Qi(t))]}function co(n,t,e,r){return Qr(n,t,e(xr(n,t)),r)}function fo(n,t,e,r){for(var o=n.length,i=r?o:-1;(r?i--:++i<o)&&t(n[i],i,n););return e?to(n,r?0:i,r?i+1:o):to(n,r?i+1:0,r?o:i)}function po(n,t){var e=n;return e instanceof qe&&(e=e.value()),$t(t,function(n,t){return t.func.apply(t.thisArg,Nt([n],t.args))},e)}function vo(n,t,e){var r=n.length;if(r<2)return r?so(n[0]):[];for(var o=-1,i=xn(r);++o<r;)for(var a=n[o],l=-1;++l<r;)l!=o&&(i[o]=ur(i[o]||a,n[l],t,e));return so(hr(i,1),t,e)}function ho(t,e,r){for(var o=-1,i=t.length,a=e.length,l={};++o<i;){var s=o<a?e[o]:n;r(l,t[o],s)}return l}function go(n){return Ya(n)?n:[]}function bo(n){return"function"==typeof n?n:os}function mo(n,t){return Ua(n)?n:yi(n,t)?[n]:Bi(yl(n))}var yo=Yr;function wo(t,e,r){var o=t.length;return r=r===n?o:r,!e&&r>=o?t:to(t,e,r)}var xo=ft||function(n){return ct.clearTimeout(n)};function _o(n,t){if(t)return n.slice();var e=n.length,r=Un?Un(e):new n.constructor(e);return n.copy(r),r}function ko(n){var t=new n.constructor(n.byteLength);return new Hn(t).set(new Hn(n)),t}function Co(n,t){var e=t?ko(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function So(t,e){if(t!==e){var r=t!==n,o=null===t,i=t==t,a=ul(t),l=e!==n,s=null===e,u=e==e,c=ul(e);if(!s&&!c&&!a&&t>e||a&&l&&u&&!s&&!c||o&&l&&u||!r&&u||!i)return 1;if(!o&&!a&&!c&&t<e||c&&r&&i&&!o&&!a||s&&r&&i||!l&&i||!u)return-1}return 0}function Eo(n,t,e,r){for(var o=-1,i=n.length,a=e.length,l=-1,s=t.length,u=ge(i-a,0),c=xn(s+u),f=!r;++l<s;)c[l]=t[l];for(;++o<a;)(f||o<i)&&(c[e[o]]=n[o]);for(;u--;)c[l++]=n[o++];return c}function Mo(n,t,e,r){for(var o=-1,i=n.length,a=-1,l=e.length,s=-1,u=t.length,c=ge(i-l,0),f=xn(c+u),d=!r;++o<c;)f[o]=n[o];for(var p=o;++s<u;)f[p+s]=t[s];for(;++a<l;)(d||o<i)&&(f[p+e[a]]=n[o++]);return f}function zo(n,t){var e=-1,r=n.length;for(t||(t=xn(r));++e<r;)t[e]=n[e];return t}function Ao(t,e,r,o){var i=!r;r||(r={});for(var a=-1,l=e.length;++a<l;){var s=e[a],u=o?o(r[s],t[s],s,r,t):n;u===n&&(u=t[s]),i?rr(r,s,u):Ze(r,s,u)}return r}function jo(n,t){return function(e,r){var o=Ua(e)?kt:tr,i=t?t():{};return o(e,n,li(r,2),i)}}function No(t){return Yr(function(e,r){var o=-1,i=r.length,a=i>1?r[i-1]:n,l=i>2?r[2]:n;for(a=t.length>3&&"function"==typeof a?(i--,a):n,l&&mi(r[0],r[1],l)&&(a=i<3?n:a,i=1),e=En(e);++o<i;){var s=r[o];s&&t(e,s,o,a)}return e})}function $o(n,t){return function(e,r){if(null==e)return e;if(!Ga(e))return n(e,r);for(var o=e.length,i=t?o:-1,a=En(e);(t?i--:++i<o)&&!1!==r(a[i],i,a););return e}}function Io(n){return function(t,e,r){for(var o=-1,i=En(t),a=r(t),l=a.length;l--;){var s=a[n?l:++o];if(!1===e(i[s],s,i))break}return t}}function Lo(t){return function(e){var r=ee(e=yl(e))?se(e):n,o=r?r[0]:e.charAt(0),i=r?wo(r,1).join(""):e.slice(1);return o[t]()+i}}function Po(n){return function(t){return $t(Xl(Hl(t).replace(Kn,"")),n,"")}}function Fo(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=Re(n.prototype),r=n.apply(e,t);return tl(r)?r:e}}function Bo(t){return function(e,r,o){var i=En(e);if(!Ga(e)){var a=li(r,3);e=$l(e),r=function(n){return a(i[n],n,i)}}var l=t(e,r,o);return l>-1?i[a?e[l]:l]:n}}function To(e){return ti(function(r){var o=r.length,i=o,a=We.prototype.thru;for(e&&r.reverse();i--;){var l=r[i];if("function"!=typeof l)throw new An(t);if(a&&!s&&"wrapper"==ii(l))var s=new We([],!0)}for(i=s?i:o;++i<o;){var u=ii(l=r[i]),c="wrapper"==u?oi(l):n;s=c&&wi(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?s[ii(c[0])].apply(s,c[3]):1==l.length&&wi(l)?s[u]():s.thru(l)}return function(){var n=arguments,t=n[0];if(s&&1==n.length&&Ua(t))return s.plant(t).value();for(var e=0,i=o?r[e].apply(this,n):t;++e<o;)i=r[e].call(this,i);return i}})}function Ro(t,e,r,o,a,l,s,u,c,f){var d=e&i,p=1&e,v=2&e,h=24&e,g=512&e,b=v?n:Fo(t);return function i(){for(var m=arguments.length,y=xn(m),w=m;w--;)y[w]=arguments[w];if(h)var x=ai(i),_=function(n,t){for(var e=n.length,r=0;e--;)n[e]===t&&++r;return r}(y,x);if(o&&(y=Eo(y,o,a,h)),l&&(y=Mo(y,l,s,h)),m-=_,h&&m<f){var k=ie(y,x);return Vo(t,e,Ro,i.placeholder,r,y,k,u,c,f-m)}var C=p?r:this,S=v?C[t]:t;return m=y.length,u?y=function(t,e){for(var r=t.length,o=be(e.length,r),i=zo(t);o--;){var a=e[o];t[o]=bi(a,r)?i[a]:n}return t}(y,u):g&&m>1&&y.reverse(),d&&c<m&&(y.length=c),this&&this!==ct&&this instanceof i&&(S=b||Fo(S)),S.apply(C,y)}}function Oo(n,t){return function(e,r){return function(n,t,e,r){return mr(n,function(n,o,i){t(r,e(n),o,i)}),r}(e,n,t(r),{})}}function Wo(t,e){return function(r,o){var i;if(r===n&&o===n)return e;if(r!==n&&(i=r),o!==n){if(i===n)return o;"string"==typeof r||"string"==typeof o?(r=lo(r),o=lo(o)):(r=ao(r),o=ao(o)),i=t(r,o)}return i}}function qo(n){return ti(function(t){return t=jt(t,Yt(li())),Yr(function(e){var r=this;return n(t,function(n){return _t(n,r,e)})})})}function Do(t,e){var r=(e=e===n?" ":lo(e)).length;if(r<2)return r?Gr(e,t):e;var o=Gr(e,ht(t/le(e)));return ee(e)?wo(se(o),0,t).join(""):o.slice(0,t)}function Ho(t){return function(e,r,o){return o&&"number"!=typeof o&&mi(e,r,o)&&(r=o=n),e=vl(e),r===n?(r=e,e=0):r=vl(r),function(n,t,e,r){for(var o=-1,i=ge(ht((t-n)/(e||1)),0),a=xn(i);i--;)a[r?i:++o]=n,n+=e;return a}(e,r,o=o===n?e<r?1:-1:vl(o),t)}}function Uo(n){return function(t,e){return"string"==typeof t&&"string"==typeof e||(t=bl(t),e=bl(e)),n(t,e)}}function Vo(t,e,r,i,a,l,s,u,c,f){var d=8&e;e|=d?o:64,4&(e&=~(d?64:o))||(e&=-4);var p=[t,e,a,d?l:n,d?s:n,d?n:l,d?n:s,u,c,f],v=r.apply(n,p);return wi(t)&&zi(v,p),v.placeholder=i,Ni(v,t,e)}function Go(n){var t=Sn[n];return function(n,e){if(n=bl(n),(e=null==e?0:be(hl(e),292))&&pe(n)){var r=(yl(n)+"e").split("e");return+((r=(yl(t(r[0]+"e"+(+r[1]+e)))+"e").split("e"))[0]+"e"+(+r[1]-e))}return t(n)}}var Yo=Se&&1/ae(new Se([,-0]))[1]==l?function(n){return new Se(n)}:us;function Ko(n){return function(t){var e=pi(t);return e==y?re(t):e==C?function(n){var t=-1,e=Array(n.size);return n.forEach(function(n){e[++t]=[n,n]}),e}(t):function(n,t){return jt(t,function(t){return[t,n[t]]})}(t,n(t))}}function Jo(e,l,s,u,c,f,d,p){var v=2&l;if(!v&&"function"!=typeof e)throw new An(t);var h=u?u.length:0;if(h||(l&=-97,u=c=n),d=d===n?d:ge(hl(d),0),p=p===n?p:hl(p),h-=c?c.length:0,64&l){var g=u,b=c;u=c=n}var m=v?n:oi(e),y=[e,l,s,u,c,g,b,f,d,p];if(m&&function(n,t){var e=n[1],o=t[1],l=e|o,s=l<131,u=o==i&&8==e||o==i&&e==a&&n[7].length<=t[8]||384==o&&t[7].length<=t[8]&&8==e;if(!s&&!u)return n;1&o&&(n[2]=t[2],l|=1&e?0:4);var c=t[3];if(c){var f=n[3];n[3]=f?Eo(f,c,t[4]):c,n[4]=f?ie(n[3],r):t[4]}(c=t[5])&&(f=n[5],n[5]=f?Mo(f,c,t[6]):c,n[6]=f?ie(n[5],r):t[6]),(c=t[7])&&(n[7]=c),o&i&&(n[8]=null==n[8]?t[8]:be(n[8],t[8])),null==n[9]&&(n[9]=t[9]),n[0]=t[0],n[1]=l}(y,m),e=y[0],l=y[1],s=y[2],u=y[3],c=y[4],!(p=y[9]=y[9]===n?v?0:e.length:ge(y[9]-h,0))&&24&l&&(l&=-25),l&&1!=l)w=8==l||16==l?function(t,e,r){var o=Fo(t);return function i(){for(var a=arguments.length,l=xn(a),s=a,u=ai(i);s--;)l[s]=arguments[s];var c=a<3&&l[0]!==u&&l[a-1]!==u?[]:ie(l,u);return(a-=c.length)<r?Vo(t,e,Ro,i.placeholder,n,l,c,n,n,r-a):_t(this&&this!==ct&&this instanceof i?o:t,this,l)}}(e,l,p):l!=o&&33!=l||c.length?Ro.apply(n,y):function(n,t,e,r){var o=1&t,i=Fo(n);return function t(){for(var a=-1,l=arguments.length,s=-1,u=r.length,c=xn(u+l),f=this&&this!==ct&&this instanceof t?i:n;++s<u;)c[s]=r[s];for(;l--;)c[s++]=arguments[++a];return _t(f,o?e:this,c)}}(e,l,s,u);else var w=function(n,t,e){var r=1&t,o=Fo(n);return function t(){return(this&&this!==ct&&this instanceof t?o:n).apply(r?e:this,arguments)}}(e,l,s);return Ni((m?Xr:zi)(w,y),e,l)}function Qo(t,e,r,o){return t===n||Wa(t,$n[r])&&!Pn.call(o,r)?e:t}function Xo(t,e,r,o,i,a){return tl(t)&&tl(e)&&(a.set(e,t),Or(t,e,n,Xo,a),a.delete(e)),t}function Zo(t){return il(t)?n:t}function ni(t,e,r,o,i,a){var l=1&r,s=t.length,u=e.length;if(s!=u&&!(l&&u>s))return!1;var c=a.get(t),f=a.get(e);if(c&&f)return c==e&&f==t;var d=-1,p=!0,v=2&r?new Ve:n;for(a.set(t,e),a.set(e,t);++d<s;){var h=t[d],g=e[d];if(o)var b=l?o(g,h,d,e,t,a):o(h,g,d,t,e,a);if(b!==n){if(b)continue;p=!1;break}if(v){if(!Lt(e,function(n,t){if(!Jt(v,t)&&(h===n||i(h,n,r,o,a)))return v.push(t)})){p=!1;break}}else if(h!==g&&!i(h,g,r,o,a)){p=!1;break}}return a.delete(t),a.delete(e),p}function ti(t){return ji(Si(t,n,Vi),t+"")}function ei(n){return _r(n,$l,fi)}function ri(n){return _r(n,Il,di)}var oi=ze?function(n){return ze.get(n)}:us;function ii(n){for(var t=n.name+"",e=Ae[t],r=Pn.call(Ae,t)?e.length:0;r--;){var o=e[r],i=o.func;if(null==i||i==n)return o.name}return t}function ai(n){return(Pn.call(Te,"placeholder")?Te:n).placeholder}function li(){var n=Te.iteratee||is;return n=n===is?Ir:n,arguments.length?n(arguments[0],arguments[1]):n}function si(n,t){var e,r,o=n.__data__;return("string"==(r=typeof(e=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==e:null===e)?o["string"==typeof t?"string":"hash"]:o.map}function ui(n){for(var t=$l(n),e=t.length;e--;){var r=t[e],o=n[r];t[e]=[r,o,ki(o)]}return t}function ci(t,e){var r=function(t,e){return null==t?n:t[e]}(t,e);return $r(r)?r:n}var fi=Dt?function(n){return null==n?[]:(n=En(n),Mt(Dt(n),function(t){return Yn.call(n,t)}))}:gs,di=Dt?function(n){for(var t=[];n;)Nt(t,fi(n)),n=Vn(n);return t}:gs,pi=kr;function vi(n,t,e){for(var r=-1,o=(t=mo(t,n)).length,i=!1;++r<o;){var a=Ti(t[r]);if(!(i=null!=n&&e(n,a)))break;n=n[a]}return i||++r!=o?i:!!(o=null==n?0:n.length)&&nl(o)&&bi(a,o)&&(Ua(n)||Ha(n))}function hi(n){return"function"!=typeof n.constructor||_i(n)?{}:Re(Vn(n))}function gi(n){return Ua(n)||Ha(n)||!!(Zn&&n&&n[Zn])}function bi(n,t){var e=typeof n;return!!(t=null==t?s:t)&&("number"==e||"symbol"!=e&&hn.test(n))&&n>-1&&n%1==0&&n<t}function mi(n,t,e){if(!tl(e))return!1;var r=typeof t;return!!("number"==r?Ga(e)&&bi(t,e.length):"string"==r&&t in e)&&Wa(e[t],n)}function yi(n,t){if(Ua(n))return!1;var e=typeof n;return!("number"!=e&&"symbol"!=e&&"boolean"!=e&&null!=n&&!ul(n))||J.test(n)||!K.test(n)||null!=t&&n in En(t)}function wi(n){var t=ii(n),e=Te[t];if("function"!=typeof e||!(t in qe.prototype))return!1;if(n===e)return!0;var r=oi(e);return!!r&&n===r[0]}(_e&&pi(new _e(new ArrayBuffer(1)))!=A||ke&&pi(new ke)!=y||Ce&&pi(Ce.resolve())!=_||Se&&pi(new Se)!=C||Ee&&pi(new Ee)!=M)&&(pi=function(t){var e=kr(t),r=e==x?t.constructor:n,o=r?Ri(r):"";if(o)switch(o){case je:return A;case Ne:return y;case $e:return _;case Ie:return C;case Le:return M}return e});var xi=In?Xa:bs;function _i(n){var t=n&&n.constructor;return n===("function"==typeof t&&t.prototype||$n)}function ki(n){return n==n&&!tl(n)}function Ci(t,e){return function(r){return null!=r&&r[t]===e&&(e!==n||t in En(r))}}function Si(t,e,r){return e=ge(e===n?t.length-1:e,0),function(){for(var n=arguments,o=-1,i=ge(n.length-e,0),a=xn(i);++o<i;)a[o]=n[e+o];o=-1;for(var l=xn(e+1);++o<e;)l[o]=n[o];return l[e]=r(a),_t(t,this,l)}}function Ei(n,t){return t.length<2?n:xr(n,to(t,0,-1))}function Mi(n,t){if(("constructor"!==t||"function"!=typeof n[t])&&"__proto__"!=t)return n[t]}var zi=$i(Xr),Ai=vt||function(n,t){return ct.setTimeout(n,t)},ji=$i(Zr);function Ni(n,t,e){var r=t+"";return ji(n,function(n,t){var e=t.length;if(!e)return n;var r=e-1;return t[r]=(e>1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(en,"{\n/* [wrapped with "+t+"] */\n")}(r,function(n,t){return Ct(f,function(e){var r="_."+e[0];t&e[1]&&!zt(n,r)&&n.push(r)}),n.sort()}(function(n){var t=n.match(rn);return t?t[1].split(on):[]}(r),e)))}function $i(t){var e=0,r=0;return function(){var o=me(),i=16-(o-r);if(r=o,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(n,arguments)}}function Ii(t,e){var r=-1,o=t.length,i=o-1;for(e=e===n?o:e;++r<e;){var a=Vr(r,i),l=t[a];t[a]=t[r],t[r]=l}return t.length=e,t}var Li,Pi,Fi,Bi=(Li=function(n){var t=[];return 46===n.charCodeAt(0)&&t.push(""),n.replace(Q,function(n,e,r,o){t.push(r?o.replace(sn,"$1"):e||n)}),t},Pi=Pa(Li,function(n){return 500===Fi.size&&Fi.clear(),n}),Fi=Pi.cache,Pi);function Ti(n){if("string"==typeof n||ul(n))return n;var t=n+"";return"0"==t&&1/n==-1/0?"-0":t}function Ri(n){if(null!=n){try{return Ln.call(n)}catch(t){}try{return n+""}catch(t){}}return""}function Oi(n){if(n instanceof qe)return n.clone();var t=new We(n.__wrapped__,n.__chain__);return t.__actions__=zo(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}var Wi=Yr(function(n,t){return Ya(n)?ur(n,hr(t,1,Ya,!0)):[]}),qi=Yr(function(t,e){var r=Qi(e);return Ya(r)&&(r=n),Ya(t)?ur(t,hr(e,1,Ya,!0),li(r,2)):[]}),Di=Yr(function(t,e){var r=Qi(e);return Ya(r)&&(r=n),Ya(t)?ur(t,hr(e,1,Ya,!0),n,r):[]});function Hi(n,t,e){var r=null==n?0:n.length;if(!r)return-1;var o=null==e?0:hl(e);return o<0&&(o=ge(r+o,0)),Bt(n,li(t,3),o)}function Ui(t,e,r){var o=null==t?0:t.length;if(!o)return-1;var i=o-1;return r!==n&&(i=hl(r),i=r<0?ge(o+i,0):be(i,o-1)),Bt(t,li(e,3),i,!0)}function Vi(n){return null!=n&&n.length?hr(n,1):[]}function Gi(t){return t&&t.length?t[0]:n}var Yi=Yr(function(n){var t=jt(n,go);return t.length&&t[0]===n[0]?Mr(t):[]}),Ki=Yr(function(t){var e=Qi(t),r=jt(t,go);return e===Qi(r)?e=n:r.pop(),r.length&&r[0]===t[0]?Mr(r,li(e,2)):[]}),Ji=Yr(function(t){var e=Qi(t),r=jt(t,go);return(e="function"==typeof e?e:n)&&r.pop(),r.length&&r[0]===t[0]?Mr(r,n,e):[]});function Qi(t){var e=null==t?0:t.length;return e?t[e-1]:n}var Xi=Yr(Zi);function Zi(n,t){return n&&n.length&&t&&t.length?Hr(n,t):n}var na=ti(function(n,t){var e=null==n?0:n.length,r=or(n,t);return Ur(n,jt(t,function(n){return bi(n,e)?+n:n}).sort(So)),r});function ta(n){return null==n?n:xe.call(n)}var ea=Yr(function(n){return so(hr(n,1,Ya,!0))}),ra=Yr(function(t){var e=Qi(t);return Ya(e)&&(e=n),so(hr(t,1,Ya,!0),li(e,2))}),oa=Yr(function(t){var e=Qi(t);return e="function"==typeof e?e:n,so(hr(t,1,Ya,!0),n,e)});function ia(n){if(!n||!n.length)return[];var t=0;return n=Mt(n,function(n){if(Ya(n))return t=ge(n.length,t),!0}),Vt(t,function(t){return jt(n,qt(t))})}function aa(t,e){if(!t||!t.length)return[];var r=ia(t);return null==e?r:jt(r,function(t){return _t(e,n,t)})}var la=Yr(function(n,t){return Ya(n)?ur(n,t):[]}),sa=Yr(function(n){return vo(Mt(n,Ya))}),ua=Yr(function(t){var e=Qi(t);return Ya(e)&&(e=n),vo(Mt(t,Ya),li(e,2))}),ca=Yr(function(t){var e=Qi(t);return e="function"==typeof e?e:n,vo(Mt(t,Ya),n,e)}),fa=Yr(ia),da=Yr(function(t){var e=t.length,r=e>1?t[e-1]:n;return r="function"==typeof r?(t.pop(),r):n,aa(t,r)});function pa(n){var t=Te(n);return t.__chain__=!0,t}function va(n,t){return t(n)}var ha=ti(function(t){var e=t.length,r=e?t[0]:0,o=this.__wrapped__,i=function(n){return or(n,t)};return!(e>1||this.__actions__.length)&&o instanceof qe&&bi(r)?((o=o.slice(r,+r+(e?1:0))).__actions__.push({func:va,args:[i],thisArg:n}),new We(o,this.__chain__).thru(function(t){return e&&!t.length&&t.push(n),t})):this.thru(i)}),ga=jo(function(n,t,e){Pn.call(n,e)?++n[e]:rr(n,e,1)}),ba=Bo(Hi),ma=Bo(Ui);function ya(n,t){return(Ua(n)?Ct:cr)(n,li(t,3))}function wa(n,t){return(Ua(n)?St:fr)(n,li(t,3))}var xa=jo(function(n,t,e){Pn.call(n,e)?n[e].push(t):rr(n,e,[t])}),_a=Yr(function(n,t,e){var r=-1,o="function"==typeof t,i=Ga(n)?xn(n.length):[];return cr(n,function(n){i[++r]=o?_t(t,n,e):zr(n,t,e)}),i}),ka=jo(function(n,t,e){rr(n,e,t)});function Ca(n,t){return(Ua(n)?jt:Br)(n,li(t,3))}var Sa=jo(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]}),Ea=Yr(function(n,t){if(null==n)return[];var e=t.length;return e>1&&mi(n,t[0],t[1])?t=[]:e>2&&mi(t[0],t[1],t[2])&&(t=[t[0]]),qr(n,hr(t,1),[])}),Ma=dt||function(){return ct.Date.now()};function za(t,e,r){return e=r?n:e,e=t&&null==e?t.length:e,Jo(t,i,n,n,n,n,e)}function Aa(e,r){var o;if("function"!=typeof r)throw new An(t);return e=hl(e),function(){return--e>0&&(o=r.apply(this,arguments)),e<=1&&(r=n),o}}var ja=Yr(function(n,t,e){var r=1;if(e.length){var i=ie(e,ai(ja));r|=o}return Jo(n,r,t,e,i)}),Na=Yr(function(n,t,e){var r=3;if(e.length){var i=ie(e,ai(Na));r|=o}return Jo(t,r,n,e,i)});function $a(e,r,o){var i,a,l,s,u,c,f=0,d=!1,p=!1,v=!0;if("function"!=typeof e)throw new An(t);function h(t){var r=i,o=a;return i=a=n,f=t,s=e.apply(o,r)}function g(t){var e=t-c;return c===n||e>=r||e<0||p&&t-f>=l}function b(){var n=Ma();if(g(n))return m(n);u=Ai(b,function(n){var t=r-(n-c);return p?be(t,l-(n-f)):t}(n))}function m(t){return u=n,v&&i?h(t):(i=a=n,s)}function y(){var t=Ma(),e=g(t);if(i=arguments,a=this,c=t,e){if(u===n)return function(n){return f=n,u=Ai(b,r),d?h(n):s}(c);if(p)return xo(u),u=Ai(b,r),h(c)}return u===n&&(u=Ai(b,r)),s}return r=bl(r)||0,tl(o)&&(d=!!o.leading,l=(p="maxWait"in o)?ge(bl(o.maxWait)||0,r):l,v="trailing"in o?!!o.trailing:v),y.cancel=function(){u!==n&&xo(u),f=0,i=c=a=u=n},y.flush=function(){return u===n?s:m(Ma())},y}var Ia=Yr(function(n,t){return sr(n,1,t)}),La=Yr(function(n,t,e){return sr(n,bl(t)||0,e)});function Pa(n,e){if("function"!=typeof n||null!=e&&"function"!=typeof e)throw new An(t);var r=function(){var t=arguments,o=e?e.apply(this,t):t[0],i=r.cache;if(i.has(o))return i.get(o);var a=n.apply(this,t);return r.cache=i.set(o,a)||i,a};return r.cache=new(Pa.Cache||Ue),r}function Fa(n){if("function"!=typeof n)throw new An(t);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}Pa.Cache=Ue;var Ba=yo(function(n,t){var e=(t=1==t.length&&Ua(t[0])?jt(t[0],Yt(li())):jt(hr(t,1),Yt(li()))).length;return Yr(function(r){for(var o=-1,i=be(r.length,e);++o<i;)r[o]=t[o].call(this,r[o]);return _t(n,this,r)})}),Ta=Yr(function(t,e){var r=ie(e,ai(Ta));return Jo(t,o,n,e,r)}),Ra=Yr(function(t,e){var r=ie(e,ai(Ra));return Jo(t,64,n,e,r)}),Oa=ti(function(t,e){return Jo(t,a,n,n,n,e)});function Wa(n,t){return n===t||n!=n&&t!=t}var qa=Uo(Cr),Da=Uo(function(n,t){return n>=t}),Ha=Ar(function(){return arguments}())?Ar:function(n){return el(n)&&Pn.call(n,"callee")&&!Yn.call(n,"callee")},Ua=xn.isArray,Va=gt?Yt(gt):function(n){return el(n)&&kr(n)==z};function Ga(n){return null!=n&&nl(n.length)&&!Xa(n)}function Ya(n){return el(n)&&Ga(n)}var Ka=de||bs,Ja=bt?Yt(bt):function(n){return el(n)&&kr(n)==h};function Qa(n){if(!el(n))return!1;var t=kr(n);return t==g||"[object DOMException]"==t||"string"==typeof n.message&&"string"==typeof n.name&&!il(n)}function Xa(n){if(!tl(n))return!1;var t=kr(n);return t==b||t==m||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Za(n){return"number"==typeof n&&n==hl(n)}function nl(n){return"number"==typeof n&&n>-1&&n%1==0&&n<=s}function tl(n){var t=typeof n;return null!=n&&("object"==t||"function"==t)}function el(n){return null!=n&&"object"==typeof n}var rl=mt?Yt(mt):function(n){return el(n)&&pi(n)==y};function ol(n){return"number"==typeof n||el(n)&&kr(n)==w}function il(n){if(!el(n)||kr(n)!=x)return!1;var t=Vn(n);if(null===t)return!0;var e=Pn.call(t,"constructor")&&t.constructor;return"function"==typeof e&&e instanceof e&&Ln.call(e)==Rn}var al=yt?Yt(yt):function(n){return el(n)&&kr(n)==k},ll=wt?Yt(wt):function(n){return el(n)&&pi(n)==C};function sl(n){return"string"==typeof n||!Ua(n)&&el(n)&&kr(n)==S}function ul(n){return"symbol"==typeof n||el(n)&&kr(n)==E}var cl=xt?Yt(xt):function(n){return el(n)&&nl(n.length)&&!!rt[kr(n)]},fl=Uo(Fr),dl=Uo(function(n,t){return n<=t});function pl(n){if(!n)return[];if(Ga(n))return sl(n)?se(n):zo(n);if(it&&n[it])return function(n){for(var t,e=[];!(t=n.next()).done;)e.push(t.value);return e}(n[it]());var t=pi(n);return(t==y?re:t==C?ae:Wl)(n)}function vl(n){return n?(n=bl(n))===l||n===-1/0?17976931348623157e292*(n<0?-1:1):n==n?n:0:0===n?n:0}function hl(n){var t=vl(n),e=t%1;return t==t?e?t-e:t:0}function gl(n){return n?ir(hl(n),0,c):0}function bl(n){if("number"==typeof n)return n;if(ul(n))return u;if(tl(n)){var t="function"==typeof n.valueOf?n.valueOf():n;n=tl(t)?t+"":t}if("string"!=typeof n)return 0===n?n:+n;n=Gt(n);var e=dn.test(n);return e||vn.test(n)?lt(n.slice(2),e?2:8):fn.test(n)?u:+n}function ml(n){return Ao(n,Il(n))}function yl(n){return null==n?"":lo(n)}var wl=No(function(n,t){if(_i(t)||Ga(t))Ao(t,$l(t),n);else for(var e in t)Pn.call(t,e)&&Ze(n,e,t[e])}),xl=No(function(n,t){Ao(t,Il(t),n)}),_l=No(function(n,t,e,r){Ao(t,Il(t),n,r)}),kl=No(function(n,t,e,r){Ao(t,$l(t),n,r)}),Cl=ti(or),Sl=Yr(function(t,e){t=En(t);var r=-1,o=e.length,i=o>2?e[2]:n;for(i&&mi(e[0],e[1],i)&&(o=1);++r<o;)for(var a=e[r],l=Il(a),s=-1,u=l.length;++s<u;){var c=l[s],f=t[c];(f===n||Wa(f,$n[c])&&!Pn.call(t,c))&&(t[c]=a[c])}return t}),El=Yr(function(t){return t.push(n,Xo),_t(Pl,n,t)});function Ml(t,e,r){var o=null==t?n:xr(t,e);return o===n?r:o}function zl(n,t){return null!=n&&vi(n,t,Er)}var Al=Oo(function(n,t,e){null!=t&&"function"!=typeof t.toString&&(t=Tn.call(t)),n[t]=e},ts(os)),jl=Oo(function(n,t,e){null!=t&&"function"!=typeof t.toString&&(t=Tn.call(t)),Pn.call(n,t)?n[t].push(e):n[t]=[e]},li),Nl=Yr(zr);function $l(n){return Ga(n)?Ye(n):Lr(n)}function Il(n){return Ga(n)?Ye(n,!0):Pr(n)}var Ll=No(function(n,t,e){Or(n,t,e)}),Pl=No(function(n,t,e,r){Or(n,t,e,r)}),Fl=ti(function(n,t){var e={};if(null==n)return e;var r=!1;t=jt(t,function(t){return t=mo(t,n),r||(r=t.length>1),t}),Ao(n,ri(n),e),r&&(e=ar(e,7,Zo));for(var o=t.length;o--;)uo(e,t[o]);return e}),Bl=ti(function(n,t){return null==n?{}:function(n,t){return Dr(n,t,function(t,e){return zl(n,e)})}(n,t)});function Tl(n,t){if(null==n)return{};var e=jt(ri(n),function(n){return[n]});return t=li(t),Dr(n,e,function(n,e){return t(n,e[0])})}var Rl=Ko($l),Ol=Ko(Il);function Wl(n){return null==n?[]:Kt(n,$l(n))}var ql=Po(function(n,t,e){return t=t.toLowerCase(),n+(e?Dl(t):t)});function Dl(n){return Ql(yl(n).toLowerCase())}function Hl(n){return(n=yl(n))&&n.replace(gn,Zt).replace(Jn,"")}var Ul=Po(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),Vl=Po(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),Gl=Lo("toLowerCase"),Yl=Po(function(n,t,e){return n+(e?"_":"")+t.toLowerCase()}),Kl=Po(function(n,t,e){return n+(e?" ":"")+Ql(t)}),Jl=Po(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),Ql=Lo("toUpperCase");function Xl(t,e,r){return t=yl(t),(e=r?n:e)===n?function(n){return nt.test(n)}(t)?function(n){return n.match(Xn)||[]}(t):function(n){return n.match(an)||[]}(t):t.match(e)||[]}var Zl=Yr(function(t,e){try{return _t(t,n,e)}catch(r){return Qa(r)?r:new kn(r)}}),ns=ti(function(n,t){return Ct(t,function(t){t=Ti(t),rr(n,t,ja(n[t],n))}),n});function ts(n){return function(){return n}}var es=To(),rs=To(!0);function os(n){return n}function is(n){return Ir("function"==typeof n?n:ar(n,1))}var as=Yr(function(n,t){return function(e){return zr(e,n,t)}}),ls=Yr(function(n,t){return function(e){return zr(n,e,t)}});function ss(n,t,e){var r=$l(t),o=wr(t,r);null!=e||tl(t)&&(o.length||!r.length)||(e=t,t=n,n=this,o=wr(t,$l(t)));var i=!(tl(e)&&"chain"in e&&!e.chain),a=Xa(n);return Ct(o,function(e){var r=t[e];n[e]=r,a&&(n.prototype[e]=function(){var t=this.__chain__;if(i||t){var e=n(this.__wrapped__);return(e.__actions__=zo(this.__actions__)).push({func:r,args:arguments,thisArg:n}),e.__chain__=t,e}return r.apply(n,Nt([this.value()],arguments))})}),n}function us(){}var cs=qo(jt),fs=qo(Et),ds=qo(Lt);function ps(n){return yi(n)?qt(Ti(n)):function(n){return function(t){return xr(t,n)}}(n)}var vs=Ho(),hs=Ho(!0);function gs(){return[]}function bs(){return!1}var ms,ys=Wo(function(n,t){return n+t},0),ws=Go("ceil"),xs=Wo(function(n,t){return n/t},1),_s=Go("floor"),ks=Wo(function(n,t){return n*t},1),Cs=Go("round"),Ss=Wo(function(n,t){return n-t},0);return Te.after=function(n,e){if("function"!=typeof e)throw new An(t);return n=hl(n),function(){if(--n<1)return e.apply(this,arguments)}},Te.ary=za,Te.assign=wl,Te.assignIn=xl,Te.assignInWith=_l,Te.assignWith=kl,Te.at=Cl,Te.before=Aa,Te.bind=ja,Te.bindAll=ns,Te.bindKey=Na,Te.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return Ua(n)?n:[n]},Te.chain=pa,Te.chunk=function(t,e,r){e=(r?mi(t,e,r):e===n)?1:ge(hl(e),0);var o=null==t?0:t.length;if(!o||e<1)return[];for(var i=0,a=0,l=xn(ht(o/e));i<o;)l[a++]=to(t,i,i+=e);return l},Te.compact=function(n){for(var t=-1,e=null==n?0:n.length,r=0,o=[];++t<e;){var i=n[t];i&&(o[r++]=i)}return o},Te.concat=function(){var n=arguments.length;if(!n)return[];for(var t=xn(n-1),e=arguments[0],r=n;r--;)t[r-1]=arguments[r];return Nt(Ua(e)?zo(e):[e],hr(t,1))},Te.cond=function(n){var e=null==n?0:n.length,r=li();return n=e?jt(n,function(n){if("function"!=typeof n[1])throw new An(t);return[r(n[0]),n[1]]}):[],Yr(function(t){for(var r=-1;++r<e;){var o=n[r];if(_t(o[0],this,t))return _t(o[1],this,t)}})},Te.conforms=function(n){return function(n){var t=$l(n);return function(e){return lr(e,n,t)}}(ar(n,1))},Te.constant=ts,Te.countBy=ga,Te.create=function(n,t){var e=Re(n);return null==t?e:er(e,t)},Te.curry=function t(e,r,o){var i=Jo(e,8,n,n,n,n,n,r=o?n:r);return i.placeholder=t.placeholder,i},Te.curryRight=function t(e,r,o){var i=Jo(e,16,n,n,n,n,n,r=o?n:r);return i.placeholder=t.placeholder,i},Te.debounce=$a,Te.defaults=Sl,Te.defaultsDeep=El,Te.defer=Ia,Te.delay=La,Te.difference=Wi,Te.differenceBy=qi,Te.differenceWith=Di,Te.drop=function(t,e,r){var o=null==t?0:t.length;return o?to(t,(e=r||e===n?1:hl(e))<0?0:e,o):[]},Te.dropRight=function(t,e,r){var o=null==t?0:t.length;return o?to(t,0,(e=o-(e=r||e===n?1:hl(e)))<0?0:e):[]},Te.dropRightWhile=function(n,t){return n&&n.length?fo(n,li(t,3),!0,!0):[]},Te.dropWhile=function(n,t){return n&&n.length?fo(n,li(t,3),!0):[]},Te.fill=function(t,e,r,o){var i=null==t?0:t.length;return i?(r&&"number"!=typeof r&&mi(t,e,r)&&(r=0,o=i),function(t,e,r,o){var i=t.length;for((r=hl(r))<0&&(r=-r>i?0:i+r),(o=o===n||o>i?i:hl(o))<0&&(o+=i),o=r>o?0:gl(o);r<o;)t[r++]=e;return t}(t,e,r,o)):[]},Te.filter=function(n,t){return(Ua(n)?Mt:vr)(n,li(t,3))},Te.flatMap=function(n,t){return hr(Ca(n,t),1)},Te.flatMapDeep=function(n,t){return hr(Ca(n,t),l)},Te.flatMapDepth=function(t,e,r){return r=r===n?1:hl(r),hr(Ca(t,e),r)},Te.flatten=Vi,Te.flattenDeep=function(n){return null!=n&&n.length?hr(n,l):[]},Te.flattenDepth=function(t,e){return null!=t&&t.length?hr(t,e=e===n?1:hl(e)):[]},Te.flip=function(n){return Jo(n,512)},Te.flow=es,Te.flowRight=rs,Te.fromPairs=function(n){for(var t=-1,e=null==n?0:n.length,r={};++t<e;){var o=n[t];r[o[0]]=o[1]}return r},Te.functions=function(n){return null==n?[]:wr(n,$l(n))},Te.functionsIn=function(n){return null==n?[]:wr(n,Il(n))},Te.groupBy=xa,Te.initial=function(n){return null!=n&&n.length?to(n,0,-1):[]},Te.intersection=Yi,Te.intersectionBy=Ki,Te.intersectionWith=Ji,Te.invert=Al,Te.invertBy=jl,Te.invokeMap=_a,Te.iteratee=is,Te.keyBy=ka,Te.keys=$l,Te.keysIn=Il,Te.map=Ca,Te.mapKeys=function(n,t){var e={};return t=li(t,3),mr(n,function(n,r,o){rr(e,t(n,r,o),n)}),e},Te.mapValues=function(n,t){var e={};return t=li(t,3),mr(n,function(n,r,o){rr(e,r,t(n,r,o))}),e},Te.matches=function(n){return Tr(ar(n,1))},Te.matchesProperty=function(n,t){return Rr(n,ar(t,1))},Te.memoize=Pa,Te.merge=Ll,Te.mergeWith=Pl,Te.method=as,Te.methodOf=ls,Te.mixin=ss,Te.negate=Fa,Te.nthArg=function(n){return n=hl(n),Yr(function(t){return Wr(t,n)})},Te.omit=Fl,Te.omitBy=function(n,t){return Tl(n,Fa(li(t)))},Te.once=function(n){return Aa(2,n)},Te.orderBy=function(t,e,r,o){return null==t?[]:(Ua(e)||(e=null==e?[]:[e]),Ua(r=o?n:r)||(r=null==r?[]:[r]),qr(t,e,r))},Te.over=cs,Te.overArgs=Ba,Te.overEvery=fs,Te.overSome=ds,Te.partial=Ta,Te.partialRight=Ra,Te.partition=Sa,Te.pick=Bl,Te.pickBy=Tl,Te.property=ps,Te.propertyOf=function(t){return function(e){return null==t?n:xr(t,e)}},Te.pull=Xi,Te.pullAll=Zi,Te.pullAllBy=function(n,t,e){return n&&n.length&&t&&t.length?Hr(n,t,li(e,2)):n},Te.pullAllWith=function(t,e,r){return t&&t.length&&e&&e.length?Hr(t,e,n,r):t},Te.pullAt=na,Te.range=vs,Te.rangeRight=hs,Te.rearg=Oa,Te.reject=function(n,t){return(Ua(n)?Mt:vr)(n,Fa(li(t,3)))},Te.remove=function(n,t){var e=[];if(!n||!n.length)return e;var r=-1,o=[],i=n.length;for(t=li(t,3);++r<i;){var a=n[r];t(a,r,n)&&(e.push(a),o.push(r))}return Ur(n,o),e},Te.rest=function(e,r){if("function"!=typeof e)throw new An(t);return Yr(e,r=r===n?r:hl(r))},Te.reverse=ta,Te.sampleSize=function(t,e,r){return e=(r?mi(t,e,r):e===n)?1:hl(e),(Ua(t)?Je:Jr)(t,e)},Te.set=function(n,t,e){return null==n?n:Qr(n,t,e)},Te.setWith=function(t,e,r,o){return o="function"==typeof o?o:n,null==t?t:Qr(t,e,r,o)},Te.shuffle=function(n){return(Ua(n)?Qe:no)(n)},Te.slice=function(t,e,r){var o=null==t?0:t.length;return o?(r&&"number"!=typeof r&&mi(t,e,r)?(e=0,r=o):(e=null==e?0:hl(e),r=r===n?o:hl(r)),to(t,e,r)):[]},Te.sortBy=Ea,Te.sortedUniq=function(n){return n&&n.length?io(n):[]},Te.sortedUniqBy=function(n,t){return n&&n.length?io(n,li(t,2)):[]},Te.split=function(t,e,r){return r&&"number"!=typeof r&&mi(t,e,r)&&(e=r=n),(r=r===n?c:r>>>0)?(t=yl(t))&&("string"==typeof e||null!=e&&!al(e))&&!(e=lo(e))&&ee(t)?wo(se(t),0,r):t.split(e,r):[]},Te.spread=function(n,e){if("function"!=typeof n)throw new An(t);return e=null==e?0:ge(hl(e),0),Yr(function(t){var r=t[e],o=wo(t,0,e);return r&&Nt(o,r),_t(n,this,o)})},Te.tail=function(n){var t=null==n?0:n.length;return t?to(n,1,t):[]},Te.take=function(t,e,r){return t&&t.length?to(t,0,(e=r||e===n?1:hl(e))<0?0:e):[]},Te.takeRight=function(t,e,r){var o=null==t?0:t.length;return o?to(t,(e=o-(e=r||e===n?1:hl(e)))<0?0:e,o):[]},Te.takeRightWhile=function(n,t){return n&&n.length?fo(n,li(t,3),!1,!0):[]},Te.takeWhile=function(n,t){return n&&n.length?fo(n,li(t,3)):[]},Te.tap=function(n,t){return t(n),n},Te.throttle=function(n,e,r){var o=!0,i=!0;if("function"!=typeof n)throw new An(t);return tl(r)&&(o="leading"in r?!!r.leading:o,i="trailing"in r?!!r.trailing:i),$a(n,e,{leading:o,maxWait:e,trailing:i})},Te.thru=va,Te.toArray=pl,Te.toPairs=Rl,Te.toPairsIn=Ol,Te.toPath=function(n){return Ua(n)?jt(n,Ti):ul(n)?[n]:zo(Bi(yl(n)))},Te.toPlainObject=ml,Te.transform=function(n,t,e){var r=Ua(n),o=r||Ka(n)||cl(n);if(t=li(t,4),null==e){var i=n&&n.constructor;e=o?r?new i:[]:tl(n)&&Xa(i)?Re(Vn(n)):{}}return(o?Ct:mr)(n,function(n,r,o){return t(e,n,r,o)}),e},Te.unary=function(n){return za(n,1)},Te.union=ea,Te.unionBy=ra,Te.unionWith=oa,Te.uniq=function(n){return n&&n.length?so(n):[]},Te.uniqBy=function(n,t){return n&&n.length?so(n,li(t,2)):[]},Te.uniqWith=function(t,e){return e="function"==typeof e?e:n,t&&t.length?so(t,n,e):[]},Te.unset=function(n,t){return null==n||uo(n,t)},Te.unzip=ia,Te.unzipWith=aa,Te.update=function(n,t,e){return null==n?n:co(n,t,bo(e))},Te.updateWith=function(t,e,r,o){return o="function"==typeof o?o:n,null==t?t:co(t,e,bo(r),o)},Te.values=Wl,Te.valuesIn=function(n){return null==n?[]:Kt(n,Il(n))},Te.without=la,Te.words=Xl,Te.wrap=function(n,t){return Ta(bo(t),n)},Te.xor=sa,Te.xorBy=ua,Te.xorWith=ca,Te.zip=fa,Te.zipObject=function(n,t){return ho(n||[],t||[],Ze)},Te.zipObjectDeep=function(n,t){return ho(n||[],t||[],Qr)},Te.zipWith=da,Te.entries=Rl,Te.entriesIn=Ol,Te.extend=xl,Te.extendWith=_l,ss(Te,Te),Te.add=ys,Te.attempt=Zl,Te.camelCase=ql,Te.capitalize=Dl,Te.ceil=ws,Te.clamp=function(t,e,r){return r===n&&(r=e,e=n),r!==n&&(r=(r=bl(r))==r?r:0),e!==n&&(e=(e=bl(e))==e?e:0),ir(bl(t),e,r)},Te.clone=function(n){return ar(n,4)},Te.cloneDeep=function(n){return ar(n,5)},Te.cloneDeepWith=function(t,e){return ar(t,5,e="function"==typeof e?e:n)},Te.cloneWith=function(t,e){return ar(t,4,e="function"==typeof e?e:n)},Te.conformsTo=function(n,t){return null==t||lr(n,t,$l(t))},Te.deburr=Hl,Te.defaultTo=function(n,t){return null==n||n!=n?t:n},Te.divide=xs,Te.endsWith=function(t,e,r){t=yl(t),e=lo(e);var o=t.length,i=r=r===n?o:ir(hl(r),0,o);return(r-=e.length)>=0&&t.slice(r,i)==e},Te.eq=Wa,Te.escape=function(n){return(n=yl(n))&&U.test(n)?n.replace(D,ne):n},Te.escapeRegExp=function(n){return(n=yl(n))&&Z.test(n)?n.replace(X,"\\$&"):n},Te.every=function(t,e,r){var o=Ua(t)?Et:dr;return r&&mi(t,e,r)&&(e=n),o(t,li(e,3))},Te.find=ba,Te.findIndex=Hi,Te.findKey=function(n,t){return Ft(n,li(t,3),mr)},Te.findLast=ma,Te.findLastIndex=Ui,Te.findLastKey=function(n,t){return Ft(n,li(t,3),yr)},Te.floor=_s,Te.forEach=ya,Te.forEachRight=wa,Te.forIn=function(n,t){return null==n?n:gr(n,li(t,3),Il)},Te.forInRight=function(n,t){return null==n?n:br(n,li(t,3),Il)},Te.forOwn=function(n,t){return n&&mr(n,li(t,3))},Te.forOwnRight=function(n,t){return n&&yr(n,li(t,3))},Te.get=Ml,Te.gt=qa,Te.gte=Da,Te.has=function(n,t){return null!=n&&vi(n,t,Sr)},Te.hasIn=zl,Te.head=Gi,Te.identity=os,Te.includes=function(n,t,e,r){n=Ga(n)?n:Wl(n),e=e&&!r?hl(e):0;var o=n.length;return e<0&&(e=ge(o+e,0)),sl(n)?e<=o&&n.indexOf(t,e)>-1:!!o&&Tt(n,t,e)>-1},Te.indexOf=function(n,t,e){var r=null==n?0:n.length;if(!r)return-1;var o=null==e?0:hl(e);return o<0&&(o=ge(r+o,0)),Tt(n,t,o)},Te.inRange=function(t,e,r){return e=vl(e),r===n?(r=e,e=0):r=vl(r),function(n,t,e){return n>=be(t,e)&&n<ge(t,e)}(t=bl(t),e,r)},Te.invoke=Nl,Te.isArguments=Ha,Te.isArray=Ua,Te.isArrayBuffer=Va,Te.isArrayLike=Ga,Te.isArrayLikeObject=Ya,Te.isBoolean=function(n){return!0===n||!1===n||el(n)&&kr(n)==v},Te.isBuffer=Ka,Te.isDate=Ja,Te.isElement=function(n){return el(n)&&1===n.nodeType&&!il(n)},Te.isEmpty=function(n){if(null==n)return!0;if(Ga(n)&&(Ua(n)||"string"==typeof n||"function"==typeof n.splice||Ka(n)||cl(n)||Ha(n)))return!n.length;var t=pi(n);if(t==y||t==C)return!n.size;if(_i(n))return!Lr(n).length;for(var e in n)if(Pn.call(n,e))return!1;return!0},Te.isEqual=function(n,t){return jr(n,t)},Te.isEqualWith=function(t,e,r){var o=(r="function"==typeof r?r:n)?r(t,e):n;return o===n?jr(t,e,n,r):!!o},Te.isError=Qa,Te.isFinite=function(n){return"number"==typeof n&&pe(n)},Te.isFunction=Xa,Te.isInteger=Za,Te.isLength=nl,Te.isMap=rl,Te.isMatch=function(n,t){return n===t||Nr(n,t,ui(t))},Te.isMatchWith=function(t,e,r){return r="function"==typeof r?r:n,Nr(t,e,ui(e),r)},Te.isNaN=function(n){return ol(n)&&n!=+n},Te.isNative=function(n){if(xi(n))throw new kn("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return $r(n)},Te.isNil=function(n){return null==n},Te.isNull=function(n){return null===n},Te.isNumber=ol,Te.isObject=tl,Te.isObjectLike=el,Te.isPlainObject=il,Te.isRegExp=al,Te.isSafeInteger=function(n){return Za(n)&&n>=-9007199254740991&&n<=s},Te.isSet=ll,Te.isString=sl,Te.isSymbol=ul,Te.isTypedArray=cl,Te.isUndefined=function(t){return t===n},Te.isWeakMap=function(n){return el(n)&&pi(n)==M},Te.isWeakSet=function(n){return el(n)&&"[object WeakSet]"==kr(n)},Te.join=function(n,t){return null==n?"":ve.call(n,t)},Te.kebabCase=Ul,Te.last=Qi,Te.lastIndexOf=function(t,e,r){var o=null==t?0:t.length;if(!o)return-1;var i=o;return r!==n&&(i=(i=hl(r))<0?ge(o+i,0):be(i,o-1)),e==e?function(n,t,e){for(var r=e+1;r--;)if(n[r]===t)return r;return r}(t,e,i):Bt(t,Ot,i,!0)},Te.lowerCase=Vl,Te.lowerFirst=Gl,Te.lt=fl,Te.lte=dl,Te.max=function(t){return t&&t.length?pr(t,os,Cr):n},Te.maxBy=function(t,e){return t&&t.length?pr(t,li(e,2),Cr):n},Te.mean=function(n){return Wt(n,os)},Te.meanBy=function(n,t){return Wt(n,li(t,2))},Te.min=function(t){return t&&t.length?pr(t,os,Fr):n},Te.minBy=function(t,e){return t&&t.length?pr(t,li(e,2),Fr):n},Te.stubArray=gs,Te.stubFalse=bs,Te.stubObject=function(){return{}},Te.stubString=function(){return""},Te.stubTrue=function(){return!0},Te.multiply=ks,Te.nth=function(t,e){return t&&t.length?Wr(t,hl(e)):n},Te.noConflict=function(){return ct._===this&&(ct._=On),this},Te.noop=us,Te.now=Ma,Te.pad=function(n,t,e){n=yl(n);var r=(t=hl(t))?le(n):0;if(!t||r>=t)return n;var o=(t-r)/2;return Do(Pt(o),e)+n+Do(ht(o),e)},Te.padEnd=function(n,t,e){n=yl(n);var r=(t=hl(t))?le(n):0;return t&&r<t?n+Do(t-r,e):n},Te.padStart=function(n,t,e){n=yl(n);var r=(t=hl(t))?le(n):0;return t&&r<t?Do(t-r,e)+n:n},Te.parseInt=function(n,t,e){return e||null==t?t=0:t&&(t=+t),ye(yl(n).replace(nn,""),t||0)},Te.random=function(t,e,r){if(r&&"boolean"!=typeof r&&mi(t,e,r)&&(e=r=n),r===n&&("boolean"==typeof e?(r=e,e=n):"boolean"==typeof t&&(r=t,t=n)),t===n&&e===n?(t=0,e=1):(t=vl(t),e===n?(e=t,t=0):e=vl(e)),t>e){var o=t;t=e,e=o}if(r||t%1||e%1){var i=we();return be(t+i*(e-t+at("1e-"+((i+"").length-1))),e)}return Vr(t,e)},Te.reduce=function(n,t,e){var r=Ua(n)?$t:Ht,o=arguments.length<3;return r(n,li(t,4),e,o,cr)},Te.reduceRight=function(n,t,e){var r=Ua(n)?It:Ht,o=arguments.length<3;return r(n,li(t,4),e,o,fr)},Te.repeat=function(t,e,r){return e=(r?mi(t,e,r):e===n)?1:hl(e),Gr(yl(t),e)},Te.replace=function(){var n=arguments,t=yl(n[0]);return n.length<3?t:t.replace(n[1],n[2])},Te.result=function(t,e,r){var o=-1,i=(e=mo(e,t)).length;for(i||(i=1,t=n);++o<i;){var a=null==t?n:t[Ti(e[o])];a===n&&(o=i,a=r),t=Xa(a)?a.call(t):a}return t},Te.round=Cs,Te.runInContext=tn,Te.sample=function(n){return(Ua(n)?Ke:Kr)(n)},Te.size=function(n){if(null==n)return 0;if(Ga(n))return sl(n)?le(n):n.length;var t=pi(n);return t==y||t==C?n.size:Lr(n).length},Te.snakeCase=Yl,Te.some=function(t,e,r){var o=Ua(t)?Lt:eo;return r&&mi(t,e,r)&&(e=n),o(t,li(e,3))},Te.sortedIndex=function(n,t){return ro(n,t)},Te.sortedIndexBy=function(n,t,e){return oo(n,t,li(e,2))},Te.sortedIndexOf=function(n,t){var e=null==n?0:n.length;if(e){var r=ro(n,t);if(r<e&&Wa(n[r],t))return r}return-1},Te.sortedLastIndex=function(n,t){return ro(n,t,!0)},Te.sortedLastIndexBy=function(n,t,e){return oo(n,t,li(e,2),!0)},Te.sortedLastIndexOf=function(n,t){if(null!=n&&n.length){var e=ro(n,t,!0)-1;if(Wa(n[e],t))return e}return-1},Te.startCase=Kl,Te.startsWith=function(n,t,e){return n=yl(n),e=null==e?0:ir(hl(e),0,n.length),t=lo(t),n.slice(e,e+t.length)==t},Te.subtract=Ss,Te.sum=function(n){return n&&n.length?Ut(n,os):0},Te.sumBy=function(n,t){return n&&n.length?Ut(n,li(t,2)):0},Te.template=function(t,e,r){var o=Te.templateSettings;r&&mi(t,e,r)&&(e=n),t=yl(t),e=_l({},e,o,Qo);var i,a,l=_l({},e.imports,o.imports,Qo),s=$l(l),u=Kt(l,s),c=0,f=e.interpolate||bn,d="__p += '",p=Mn((e.escape||bn).source+"|"+f.source+"|"+(f===Y?un:bn).source+"|"+(e.evaluate||bn).source+"|$","g"),v="//# sourceURL="+(Pn.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++et+"]")+"\n";t.replace(p,function(n,e,r,o,l,s){return r||(r=o),d+=t.slice(c,s).replace(mn,te),e&&(i=!0,d+="' +\n__e("+e+") +\n'"),l&&(a=!0,d+="';\n"+l+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),c=s+n.length,n}),d+="';\n";var h=Pn.call(e,"variable")&&e.variable;if(h){if(ln.test(h))throw new kn("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(a?d.replace(R,""):d).replace(O,"$1").replace(W,"$1;"),d="function("+(h||"obj")+") {\n"+(h?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var g=Zl(function(){return Cn(s,v+"return "+d).apply(n,u)});if(g.source=d,Qa(g))throw g;return g},Te.times=function(n,t){if((n=hl(n))<1||n>s)return[];var e=c,r=be(n,c);t=li(t),n-=c;for(var o=Vt(r,t);++e<n;)t(e);return o},Te.toFinite=vl,Te.toInteger=hl,Te.toLength=gl,Te.toLower=function(n){return yl(n).toLowerCase()},Te.toNumber=bl,Te.toSafeInteger=function(n){return n?ir(hl(n),-9007199254740991,s):0===n?n:0},Te.toString=yl,Te.toUpper=function(n){return yl(n).toUpperCase()},Te.trim=function(t,e,r){if((t=yl(t))&&(r||e===n))return Gt(t);if(!t||!(e=lo(e)))return t;var o=se(t),i=se(e);return wo(o,Qt(o,i),Xt(o,i)+1).join("")},Te.trimEnd=function(t,e,r){if((t=yl(t))&&(r||e===n))return t.slice(0,ue(t)+1);if(!t||!(e=lo(e)))return t;var o=se(t);return wo(o,0,Xt(o,se(e))+1).join("")},Te.trimStart=function(t,e,r){if((t=yl(t))&&(r||e===n))return t.replace(nn,"");if(!t||!(e=lo(e)))return t;var o=se(t);return wo(o,Qt(o,se(e))).join("")},Te.truncate=function(t,e){var r=30,o="...";if(tl(e)){var i="separator"in e?e.separator:i;r="length"in e?hl(e.length):r,o="omission"in e?lo(e.omission):o}var a=(t=yl(t)).length;if(ee(t)){var l=se(t);a=l.length}if(r>=a)return t;var s=r-le(o);if(s<1)return o;var u=l?wo(l,0,s).join(""):t.slice(0,s);if(i===n)return u+o;if(l&&(s+=u.length-s),al(i)){if(t.slice(s).search(i)){var c,f=u;for(i.global||(i=Mn(i.source,yl(cn.exec(i))+"g")),i.lastIndex=0;c=i.exec(f);)var d=c.index;u=u.slice(0,d===n?s:d)}}else if(t.indexOf(lo(i),s)!=s){var p=u.lastIndexOf(i);p>-1&&(u=u.slice(0,p))}return u+o},Te.unescape=function(n){return(n=yl(n))&&H.test(n)?n.replace(q,ce):n},Te.uniqueId=function(n){var t=++Fn;return yl(n)+t},Te.upperCase=Jl,Te.upperFirst=Ql,Te.each=ya,Te.eachRight=wa,Te.first=Gi,ss(Te,(ms={},mr(Te,function(n,t){Pn.call(Te.prototype,t)||(ms[t]=n)}),ms),{chain:!1}),Te.VERSION="4.17.21",Ct(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){Te[n].placeholder=Te}),Ct(["drop","take"],function(t,e){qe.prototype[t]=function(r){r=r===n?1:ge(hl(r),0);var o=this.__filtered__&&!e?new qe(this):this.clone();return o.__filtered__?o.__takeCount__=be(r,o.__takeCount__):o.__views__.push({size:be(r,c),type:t+(o.__dir__<0?"Right":"")}),o},qe.prototype[t+"Right"]=function(n){return this.reverse()[t](n).reverse()}}),Ct(["filter","map","takeWhile"],function(n,t){var e=t+1,r=1==e||3==e;qe.prototype[n]=function(n){var t=this.clone();return t.__iteratees__.push({iteratee:li(n,3),type:e}),t.__filtered__=t.__filtered__||r,t}}),Ct(["head","last"],function(n,t){var e="take"+(t?"Right":"");qe.prototype[n]=function(){return this[e](1).value()[0]}}),Ct(["initial","tail"],function(n,t){var e="drop"+(t?"":"Right");qe.prototype[n]=function(){return this.__filtered__?new qe(this):this[e](1)}}),qe.prototype.compact=function(){return this.filter(os)},qe.prototype.find=function(n){return this.filter(n).head()},qe.prototype.findLast=function(n){return this.reverse().find(n)},qe.prototype.invokeMap=Yr(function(n,t){return"function"==typeof n?new qe(this):this.map(function(e){return zr(e,n,t)})}),qe.prototype.reject=function(n){return this.filter(Fa(li(n)))},qe.prototype.slice=function(t,e){t=hl(t);var r=this;return r.__filtered__&&(t>0||e<0)?new qe(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),e!==n&&(r=(e=hl(e))<0?r.dropRight(-e):r.take(e-t)),r)},qe.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},qe.prototype.toArray=function(){return this.take(c)},mr(qe.prototype,function(t,e){var r=/^(?:filter|find|map|reject)|While$/.test(e),o=/^(?:head|last)$/.test(e),i=Te[o?"take"+("last"==e?"Right":""):e],a=o||/^find/.test(e);i&&(Te.prototype[e]=function(){var e=this.__wrapped__,l=o?[1]:arguments,s=e instanceof qe,u=l[0],c=s||Ua(e),f=function(n){var t=i.apply(Te,Nt([n],l));return o&&d?t[0]:t};c&&r&&"function"==typeof u&&1!=u.length&&(s=c=!1);var d=this.__chain__,p=!!this.__actions__.length,v=a&&!d,h=s&&!p;if(!a&&c){e=h?e:new qe(this);var g=t.apply(e,l);return g.__actions__.push({func:va,args:[f],thisArg:n}),new We(g,d)}return v&&h?t.apply(this,l):(g=this.thru(f),v?o?g.value()[0]:g.value():g)})}),Ct(["pop","push","shift","sort","splice","unshift"],function(n){var t=jn[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);Te.prototype[n]=function(){var n=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(Ua(o)?o:[],n)}return this[e](function(e){return t.apply(Ua(e)?e:[],n)})}}),mr(qe.prototype,function(n,t){var e=Te[t];if(e){var r=e.name+"";Pn.call(Ae,r)||(Ae[r]=[]),Ae[r].push({name:t,func:e})}}),Ae[Ro(n,2).name]=[{name:"wrapper",func:n}],qe.prototype.clone=function(){var n=new qe(this.__wrapped__);return n.__actions__=zo(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=zo(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=zo(this.__views__),n},qe.prototype.reverse=function(){if(this.__filtered__){var n=new qe(this);n.__dir__=-1,n.__filtered__=!0}else(n=this.clone()).__dir__*=-1;return n},qe.prototype.value=function(){var n=this.__wrapped__.value(),t=this.__dir__,e=Ua(n),r=t<0,o=e?n.length:0,i=function(n,t,e){for(var r=-1,o=e.length;++r<o;){var i=e[r],a=i.size;switch(i.type){case"drop":n+=a;break;case"dropRight":t-=a;break;case"take":t=be(t,n+a);break;case"takeRight":n=ge(n,t-a)}}return{start:n,end:t}}(0,o,this.__views__),a=i.start,l=i.end,s=l-a,u=r?l:a-1,c=this.__iteratees__,f=c.length,d=0,p=be(s,this.__takeCount__);if(!e||!r&&o==s&&p==s)return po(n,this.__actions__);var v=[];n:for(;s--&&d<p;){for(var h=-1,g=n[u+=t];++h<f;){var b=c[h],m=b.iteratee,y=b.type,w=m(g);if(2==y)g=w;else if(!w){if(1==y)continue n;break n}}v[d++]=g}return v},Te.prototype.at=ha,Te.prototype.chain=function(){return pa(this)},Te.prototype.commit=function(){return new We(this.value(),this.__chain__)},Te.prototype.next=function(){this.__values__===n&&(this.__values__=pl(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?n:this.__values__[this.__index__++]}},Te.prototype.plant=function(t){for(var e,r=this;r instanceof Oe;){var o=Oi(r);o.__index__=0,o.__values__=n,e?i.__wrapped__=o:e=o;var i=o;r=r.__wrapped__}return i.__wrapped__=t,e},Te.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof qe){var e=t;return this.__actions__.length&&(e=new qe(this)),(e=e.reverse()).__actions__.push({func:va,args:[ta],thisArg:n}),new We(e,this.__chain__)}return this.thru(ta)},Te.prototype.toJSON=Te.prototype.valueOf=Te.prototype.value=function(){return po(this.__wrapped__,this.__actions__)},Te.prototype.first=Te.prototype.head,it&&(Te.prototype[it]=function(){return this}),Te}();dt?((dt.exports=fe)._=fe,ft._=fe):ct._=fe}.call(ui.exports)),ui.exports);const pi={chatScreen:{root:{cssClass:["div.default-chat-screen"],className:"default-chat-screen"},displayContainer:{cssClass:["div.default-chat-screen > div.flex.flex-col-reverse"],className:`${Po}-display-container`},inputContainer:{cssClass:["div.default-chat-screen > div.mt-2.mb-2.flex.items-stretch.w-full","div.default-chat-screen > div.sticky.pt-2.pb-2.right-0.bottom-0.bg-bgcolor.flex.items-stretch.w-full"],className:`${Po}-input-container`},textarea:{cssClass:["div.default-chat-screen > div.mt-2.mb-2.flex.items-stretch.w-full > textarea"],className:`${Po}-input-textarea`},sendButton:{cssClass:["div.default-chat-screen > button.button-icon-send",".button-icon-send"],className:`${Po}-send-button`},burgerButton:{cssClass:["div.default-chat-screen > button.peer-focus:border-textcolor.mr-2.flex.border-y.border-r.border-darkborderc.justify-center.items-center.text-gray-100.p-3.rounded-r-md.hover:bg-blue-500.transition-colors",`${Po}-burger-button`]},burgerMenu:{cssClass:["div.default-chat-screen > div.right-2.bottom-16.p-5.bg-darkbg.flex.flex-col.gap-3.text-textcolor.rounded-md"],className:"burger-menu"}},chatMessage:{root:{cssClass:["div.risu-chat"],className:`${Po}-chat-message-root`},thumbnail:{cssClass:["div.shadow-lg.bg-textcolor2.rounded-md"],className:`${Po}-chat-message-thumbnail`},botName:{cssClass:["span.chat-width.text-xl.unmargin.text-textcolor"],className:`${Po}-chat-message-bot-name`},botButtonDiv:{cssClass:["div.flex-grow.flex.items-center.justify-end.text-textcolor2"],className:`${Po}-chat-message-bot-buttons`},copyButton:{cssClass:["button-icon-copy"],className:"button-icon-copy"},ttsButton:{cssClass:["button-icon-tts"],className:"button-icon-tts"},removeButton:{cssClass:["button-icon-remove"],className:"button-icon-remove"},translateButton:{cssClass:["button-icon-translate"],className:"button-icon-translate"},unrerollButton:{cssClass:["button-icon-unreroll"],className:"button-icon-unreroll"},rerollButton:{cssClass:["button-icon-reroll"],className:"button-icon-reroll"},lightboardButtons:{cssClass:["x-risu-lb-module-root","x-risu-lb-nai-btn"],className:"x-risu-lb-module-root"},lightboardNewsButton:{dataId:"lightboard-news",cssClass:["div.x-risu-lb-module-root"],className:`${Po}-lightboard-news`},lightboardCommentButton:{dataId:"lightboard-comment",cssClass:["div.x-risu-lb-module-root"],className:`${Po}-lightboard-comment`},lightboardMiniboardButton:{dataId:"lightboard-miniboard",cssClass:["div.x-risu-lb-module-root"],className:`${Po}-lightboard-miniboard`},lightboardSNSButton:{dataId:"SNS-Forme",cssClass:["div.x-risu-lb-module-root"],className:`${Po}-lightboard-sns`},lightboardNAIButton:{cssClass:["x-risu-lb-nai-btn"],className:"x-risu-lb-nai-btn"}},setting:{root:{cssClass:["rs-setting-cont"],className:"rs-setting-cont"}}};function vi(n,t){const e=t??document;if(!n)return null;if(n.dataId){const t=e.querySelector(`[data-id="${n.dataId}"]`);if(t)return t.classList.contains(n.className)||(t.className=`${n.className} ${t.className}`.trim()),t}for(const r of[null==n?void 0:n.className,...(null==n?void 0:n.cssClass)??[]])if(r)try{const t=e.querySelector(r.startsWith(".")?r:`.${r}`);if(t)return t.classList.contains(n.className)||(t.className=`${n.className} ${t.className}`.trim()),t}catch{}for(const r of(null==n?void 0:n.cssClass)??[])try{const t=e.querySelector(r);if(t)return t.classList.contains(n.className)||(t.className=`${n.className} ${t.className}`.trim()),t}catch{}return null}function hi(n,t){const e=document;if(!n)return[];const r=new Set;if(n.dataId)try{e.querySelectorAll(`[data-id="${n.dataId}"]`).forEach(n=>r.add(n))}catch{}for(const i of(null==n?void 0:n.cssClass)??[])try{e.querySelectorAll(i).forEach(n=>r.add(n))}catch{}if(null==n?void 0:n.className)try{e.querySelectorAll(`.${n.className}`).forEach(n=>r.add(n))}catch{}const o=[...r];return o.forEach(t=>{n.className&&!t.classList.contains(n.className)&&(t.className=`${n.className} ${t.className}`.trim())}),o}function gi(n){if(null==n)return null;const t=hi(pi.chatMessage.root);if(!t.length)return null;const e="string"==typeof n?parseInt(n,10):n;if(!Number.isFinite(e))return null;const r=String(e);return t.find(n=>{var t;return(null==(t=n.dataset)?void 0:t.chatIndex)===r})??null}function bi(){const n=hi(pi.chatMessage.root);if(!n.length)return[];const t=n.filter(n=>!n.classList.contains("book-viewer-root")).map(n=>{var t;const e=null==(t=n.dataset)?void 0:t.chatIndex;if(null==e)return null;const r=parseInt(e,10);return Number.isFinite(r)?r:null}).filter(n=>null!==n);return[...new Set(t)].sort((n,t)=>n-t)}function mi(n,t){const e=bi();if(0===e.length)return{index:null,isFirst:!0,isLast:!0};let r=e.indexOf(n);if(-1===r){if(r=e.findIndex(t=>t>n),-1===r&&(r=e.length),"prev"===t){const n=r>0?e[r-1]:null;return{index:n,isFirst:null===n,isLast:r>=e.length}}{const n=r<e.length?e[r]:null;return{index:n,isFirst:r<=0,isLast:null===n}}}const o=0===r,i=r===e.length-1;return"prev"===t?{index:o?null:e[r-1],isFirst:o,isLast:i}:{index:i?null:e[r+1],isFirst:o,isLast:i}}function yi(n){const t=bi();if(0===t.length)return{position:0,total:0,isFirst:!0,isLast:!0};const e=t.indexOf(n);if(-1===e){const e=t.findIndex(t=>t>n),r=-1===e?t.length:e;return{position:0,total:t.length,isFirst:0===r,isLast:r>=t.length}}return{position:e+1,total:t.length,currentIndex:n,lastIndex:t[t.length-1],isFirst:0===e,isLast:e===t.length-1}}qn=!0;const wi={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};var xi=xr("<svg><!><!></svg>");function _i(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=Ao(e,["name","color","size","strokeWidth","absoluteStrokeWidth","iconNode"]);Un(t,!1);let o=$o(t,"name",8,void 0),i=$o(t,"color",8,"currentColor"),a=$o(t,"size",8,24),l=$o(t,"strokeWidth",8,2),s=$o(t,"absoluteStrokeWidth",8,!1),u=$o(t,"iconNode",24,()=>[]);So();var c=xi();go(c,(n,t)=>({...wi,...r,width:a(),height:a(),stroke:i(),"stroke-width":n,class:t}),[()=>(tr(s()),tr(l()),tr(a()),Xe(()=>s()?24*Number(l())/Number(a()):l())),()=>(tr(o()),tr(e),Xe(()=>((...n)=>n.filter((n,t,e)=>Boolean(n)&&e.indexOf(n)===t).join(" "))("lucide-icon","lucide",o()?`lucide-${o()}`:"",e.class)))]);var f=Yt(c);Fr(f,1,u,Ir,(n,t)=>{var e=xt(()=>function(n,t){if(Array.isArray(n))return n;if(!(Symbol.iterator in n))return Array.from(n);const e=[];for(const r of n)if(e.push(r),e.length===t)break;return e}(Ke(t),2));var r=_r();!function(n,t,e,r){var o=null,i=new Nr(n,!1);ce(()=>{const n=t()||null;return null===n?(i.ensure(null,null),void Sr(!0)):(i.ensure(n,t=>{if(n){if(mr(o=document.createElementNS("http://www.w3.org/2000/svg",n),o),r){var e=o.appendChild(Ut());r(o,e)}je.nodes.end=o,t.before(o)}}),Sr(!0),()=>{n&&Sr(!1)})},En),oe(()=>{Sr(!0)})}(Kt(r),()=>Ke(e)[0],0,(n,t)=>{go(n,()=>({...Ke(e)[1]}))}),kr(n,r)}),Or(Jt(f),t,"default",{}),kr(n,c),Vn()}function ki(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"m15 18-6-6 6-6"}]];_i(n,No({name:"chevron-left"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}function Ci(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"m9 18 6-6-6-6"}]];_i(n,No({name:"chevron-right"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}function Si(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56"}]];_i(n,No({name:"loader-circle"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}function Ei(n,t,e={}){const{clearContainer:r=!0,additionalClasses:o=[]}=e;if(!t||!(null==n?void 0:n.length))return[];r&&(t.innerHTML="");const i=[];return n.forEach(n=>{const e=n.cloneNode(!0);o.forEach(n=>e.classList.add(n)),e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const e=new MouseEvent("click",{bubbles:!0,cancelable:!0});n.dispatchEvent(e)}),t.appendChild(e),i.push(e)}),i}function Mi(n,t,e={}){const{buttonSelector:r='button, [role="button"], .risu-btn, [risu-btn]',matcher:o}=e;if(!n||!(null==t?void 0:t.length))return;n.querySelectorAll(r).forEach(n=>{const e=t.find(t=>{var e,r;if(o)return o(t,n);const i=(null==(e=t.dataset)?void 0:e.id)||t.getAttribute("risu-btn"),a=(null==(r=n.dataset)?void 0:r.id)||n.getAttribute("risu-btn");return!(!i||!a||i!==a)||!(!t.className||!n.className||t.className!==n.className)});e&&n.addEventListener("click",n=>{n.preventDefault(),n.stopPropagation();const t=new MouseEvent("click",{bubbles:!0,cancelable:!0});e.dispatchEvent(t)})})}var zi=yr('<span class="chat-index-total"> </span>'),Ai=yr('<header class="book-header"><div class="header-left"><div class="header-thumbnail"></div> <div class="header-info"><span class="header-name"> </span> <div class="header-buttons"></div></div></div> <div class="header-right"><div class="chat-index-nav"><button class="chat-nav-btn" title="이전 채팅"><!></button> <span class="header-chat-index"> <!></span> <button class="chat-nav-btn" title="다음 채팅"><!></button></div> <button class="close-btn" title="닫기"><!></button></div></header>');function ji(n,t){Un(t,!0);const e=To.getInstance();let r=$o(t,"thumbnailUrl",3,""),o=$o(t,"name",3,""),i=$o(t,"chatIndex",3,0),a=$o(t,"buttons",19,()=>[]),l=$o(t,"chatIndexPosition",19,()=>({position:0,total:0,isFirst:!0,isLast:!0})),s=jt(null);ie(()=>{Ke(s)&&a().length>0&&Ei(a(),Ke(s))});let u=xt(()=>i()+1);var c=Ai(),f=Yt(c),d=Yt(f);let p;var v=Yt(Jt(d,2)),h=Yt(v);Co(Jt(v,2),n=>$t(s,n),()=>Ke(s));var g=Yt(Jt(f,2)),b=Yt(g);b.__click=function(...n){var e;null==(e=t.onPrevChat)||e.apply(this,n)},ki(Yt(b),{size:16});var m=Jt(b,2),y=Yt(m),w=Jt(y),x=n=>{var t=zi(),e=Yt(t);ue(()=>Er(e,`(${l().currentIndex??""}/${l().lastIndex??""})`)),kr(n,t)};$r(w,n=>{l().total>0&&n(x)});var _=Jt(m,2);_.__click=function(...n){var e;null==(e=t.onNextChat)||e.apply(this,n)},Ci(Yt(_),{size:16});var k=Jt(g,2);k.__click=function(...n){var e;null==(e=t.onClose)||e.apply(this,n)},function(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M18 6 6 18"}],["path",{d:"m6 6 12 12"}]];_i(n,No({name:"x"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Yt(k),{size:20}),ue(n=>{p=oo(d,"",p,{"background-image":r()?`url('${r()}')`:"none"}),Er(h,n),b.disabled=l().isFirst,Er(y,`#${Ke(u)??""} `),_.disabled=l().isLast},[()=>{var n;return o()||(null==(n=e.getChar())?void 0:n.name)||"Unknown"}]),kr(n,c),Vn()}vr(["click"]);const Ni=n=>n;function $i(n,{delay:t=0,duration:e=400,easing:r=Ni}={}){const o=+getComputedStyle(n).opacity;return{delay:t,duration:e,easing:r,css:n=>"opacity: "+n*o}}function Ii(n){const t=n-1;return t*t*t+1}var Li=yr('<span class="loading-message svelte-1lzy2gy"> </span>'),Pi=yr('<div class="loading-overlay svelte-1lzy2gy"><div class="loading-content svelte-1lzy2gy"><div class="loading-spinner svelte-1lzy2gy"><div class="spinner-ring svelte-1lzy2gy"></div> <div class="spinner-ring svelte-1lzy2gy"></div> <div class="spinner-ring svelte-1lzy2gy"></div></div> <!></div></div>');const Fi={hash:"svelte-1lzy2gy",code:".loading-overlay.svelte-1lzy2gy {position:absolute;top:0;left:0;right:0;bottom:0;z-index:50;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb, var(--bv-page-color) 85%, transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:all;border-radius:inherit;}.loading-content.svelte-1lzy2gy {display:flex;flex-direction:column;align-items:center;gap:16px;\n animation: svelte-1lzy2gy-contentFadeIn 0.3s ease-out;}\n\n @keyframes svelte-1lzy2gy-contentFadeIn {\n from {\n opacity: 0;\n transform: scale(0.95);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n }.loading-spinner.svelte-1lzy2gy {position:relative;width:44px;height:44px;}.spinner-ring.svelte-1lzy2gy {position:absolute;width:100%;height:100%;border:2.5px solid transparent;border-top-color:var(--bv-accent-color, #6366f1);border-radius:50%;\n animation: svelte-1lzy2gy-spin 1s cubic-bezier(0.5, 0, 0.5, 1) infinite;}.spinner-ring.svelte-1lzy2gy:nth-child(1) {animation-delay:-0.4s;}.spinner-ring.svelte-1lzy2gy:nth-child(2) {animation-delay:-0.25s;width:75%;height:75%;top:12.5%;left:12.5%;}.spinner-ring.svelte-1lzy2gy:nth-child(3) {animation-delay:-0.1s;width:50%;height:50%;top:25%;left:25%;}\n\n @keyframes svelte-1lzy2gy-spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }.loading-message.svelte-1lzy2gy {font-size:13px;font-weight:500;color:var(--bv-text-secondary, #666);}.book-viewer-root[data-theme='dark'] .loading-message.svelte-1lzy2gy {color:var(--bv-text-secondary, #aaa);}"};function Bi(n,t){Kr(n,Fi);let e=$o(t,"visible",3,!1),r=$o(t,"message",3,"로딩 중...");var o=_r(),i=Kt(o),a=n=>{var t=Pi(),e=Yt(t),o=Jt(Yt(e),2),i=n=>{var t=Li(),e=Yt(t);ue(()=>Er(e,r())),kr(n,t)};$r(o,n=>{r()&&n(i)}),Gr(1,t,()=>$i,()=>({duration:200,easing:Ii})),Gr(2,t,()=>$i,()=>({duration:300,easing:Ii})),kr(n,t)};$r(i,n=>{e()&&n(a)}),kr(n,o)}var Ti=yr('<div class="page-number left-page-num"> </div>'),Ri=yr('<div class="page-number right-page-num"> </div>'),Oi=yr('<div class="book-pages"><div class="click-area click-left"></div> <div class="click-area click-right"></div> <div class="page page-left"><div class="page-content"><div class="text-content chattext"></div> <!></div></div> <div class="book-spine"></div> <div class="page page-right"><div class="page-content"><div class="text-content chattext"></div> <!></div></div> <!></div>');vr(["click"]);var Wi=yr("<option> </option>"),qi=yr('<div class="dropdown-container"><div><div class="dropdown-header">설정</div> <div class="setting-item"><label for="fontFamily">폰트</label> <select id="fontFamily"></select></div> <div class="setting-item"><label for="fontSize">폰트 크기</label> <input type="range" id="fontSize" min="12" max="24" step="1"/> <span> </span></div> <div class="setting-item"><label for="lineHeight">줄 간격</label> <input type="range" id="lineHeight" min="1.5" max="2.2" step="0.1"/> <span> </span></div> <div class="setting-item"><label for="theme">테마</label> <select id="theme"><option>라이트 테마</option><option>세피아</option><option>다크 테마</option></select></div> <div class="setting-item"><button class="custom-css-btn">사용자 CSS 편집</button></div></div></div>');vr(["change","input","click"]);var Di=yr('<div class="lb-module-item" style="cursor: default; opacity: 0.6;">모듈이 없습니다</div>'),Hi=yr('<div class="lb-module-item" role="button" tabindex="0"><span class="lb-module-label"> </span></div>'),Ui=yr('<div class="dropdown-container"><div><div class="dropdown-header">LB 모듈</div> <div class="lb-modules-list"><!></div></div></div>');vr(["click","keydown"]);var Vi=yr('<div class="lb-menu-container"><button><!> <span>LB</span></button> <!></div>'),Gi=yr('<nav class="nav-controls"><button class="nav-btn prev-btn" title="이전 페이지"><!></button> <span class="page-indicator"> </span> <button class="nav-btn next-btn" title="다음 페이지"><!></button> <div class="nav-right-buttons"><!> <div class="settings-menu-container"><button class="nav-icon-btn settings-btn" title="설정"><!></button> <!></div></div></nav>');function Yi(n,t){Un(t,!0);let e=$o(t,"currentSpread",3,0),r=$o(t,"totalSpreads",3,1),o=$o(t,"isFirst",3,!0),i=$o(t,"isLast",3,!0),a=$o(t,"prevDisabled",3,!1),l=$o(t,"nextDisabled",3,!1),s=$o(t,"settings",19,()=>({fontSize:17,lineHeight:1.9,theme:"light"})),u=$o(t,"lbModules",19,()=>[]),c=$o(t,"isLBLoading",3,!1),f=jt(!1),d=jt(!1);function p(){$t(f,!1),$t(d,!1)}function v(n){var e;p(),null==(e=t.onLBModuleClick)||e.call(t,n)}var h=Gi();pr("click",Ot,function(n){const t=n.target.closest(".settings-menu-container"),e=n.target.closest(".lb-menu-container");!t&&Ke(f)&&$t(f,!1),!e&&Ke(d)&&$t(d,!1)});var g=Yt(h);g.__click=function(...n){var e;null==(e=t.onPrev)||e.apply(this,n)},ki(Yt(g),{size:28});var b=Jt(g,2),m=Yt(b),y=Jt(b,2);y.__click=function(...n){var e;null==(e=t.onNext)||e.apply(this,n)},Ci(Yt(y),{size:28});var w=Yt(Jt(y,2)),x=n=>{var t=Vi(),e=Yt(t);let r;e.__click=n=>{n.stopPropagation(),c()||($t(d,!Ke(d)),Ke(d)&&$t(f,!1))};var o=Yt(e),i=n=>{Si(n,{size:18})},a=n=>{!function(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"}]];_i(n,No({name:"layers"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(n,{size:18})};$r(o,n=>{c()?n(i):n(a,!1)}),function(n,t){Un(t,!0);let e=$o(t,"isOpen",3,!1),r=$o(t,"modules",19,()=>[]);function o(n){var e;null==(e=t.onModuleClick)||e.call(t,n)}var i=Ui(),a=Yt(i);let l;var s=Jt(Yt(a),2),u=Yt(s),c=n=>{kr(n,Di())},f=n=>{var t=_r();Fr(Kt(t),17,r,Ir,(n,t)=>{var e=Hi();e.__click=()=>o(Ke(t)),e.__keydown=n=>"Enter"===n.key&&o(Ke(t));var r=Yt(e),i=Yt(r);ue(n=>Er(i,n),[()=>function(n,t=30){const e=n.replace(/\s+/g," ").trim();return e.length<=t?e:e.substring(0,t)+"..."}(Ke(t).label)]),kr(n,e)}),kr(n,t)};$r(u,n=>{0===r().length?n(c):n(f,!1)}),ue(()=>l=eo(a,1,"dropdown-menu",null,l,{active:e()})),kr(n,i),Vn()}(Jt(e,2),{get isOpen(){return Ke(d)},get modules(){return u()},onModuleClick:v,onClose:()=>$t(d,!1)}),ue(()=>{r=eo(e,1,"nav-icon-btn lb-btn",null,r,{loading:c()}),e.disabled=c(),ho(e,"title",c()?"LB 모듈 처리 중...":"LB 모듈")}),kr(n,t)};$r(w,n=>{(u().length>0||c())&&n(x)});var _=Yt(Jt(w,2));_.__click=n=>{n.stopPropagation(),$t(f,!Ke(f)),Ke(f)&&$t(d,!1)},function(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}],["circle",{cx:"12",cy:"12",r:"3"}]];_i(n,No({name:"settings"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Yt(_),{size:18}),function(n,t){Un(t,!0);let e=$o(t,"isOpen",3,!1),r=$o(t,"settings",19,()=>({fontSize:17,lineHeight:1.5,theme:"dark",fontFamily:"나눔스퀘어네오"}));const o=["Pretendard","나눔스퀘어네오","에스코어드림","레페리포인트","플렉스","스위트","오르빗","스쿨오르빗","프리티나잇","서라운드에어","고운돋움","고운바탕","리디바탕","마루부리","도스고딕","스타더스트","픽시드시스","네오둥근모"];var i=qi(),a=Yt(i);let l;var s,u=Jt(Yt(a),2),c=Jt(Yt(u),2);c.__change=function(n){var e;const o={...r(),fontFamily:n.target.value};null==(e=t.onSettingsChange)||e.call(t,o)},Fr(c,21,()=>o,Ir,(n,t)=>{var e=Wi();let r;var o=Yt(e),i={};ue(()=>{r=oo(e,"",r,{"font-family":Ke(t)}),Er(o,Ke(t)),i!==(i=Ke(t))&&(e.value=(e.__value=Ke(t))??"")}),kr(n,e)}),ao(c);var f=Jt(u,2),d=Jt(Yt(f),2);d.__input=function(n){var e;const o={...r(),fontSize:Number(n.target.value)};null==(e=t.onSettingsChange)||e.call(t,o)};var p=Yt(Jt(d,2)),v=Jt(f,2),h=Jt(Yt(v),2);h.__input=function(n){var e;const o={...r(),lineHeight:Number(n.target.value)};null==(e=t.onSettingsChange)||e.call(t,o)};var g=Yt(Jt(h,2)),b=Jt(v,2),m=Jt(Yt(b),2);m.__change=function(n){var e;const o={...r(),theme:n.target.value};null==(e=t.onSettingsChange)||e.call(t,o)};var y=Yt(m);y.value=y.__value="light";var w=Jt(y);w.value=w.__value="sepia";var x,_=Jt(w);_.value=_.__value="dark",ao(m),Yt(Jt(b,2)).__click=function(...n){var e;null==(e=t.onOpenCustomCss)||e.apply(this,n)},ue(n=>{l=eo(a,1,"dropdown-menu",null,l,{active:e()}),s!==(s=r().fontFamily)&&(c.value=(c.__value=r().fontFamily)??"",io(c,r().fontFamily)),po(d,r().fontSize),Er(p,`${r().fontSize??""}px`),po(h,r().lineHeight),Er(g,n),x!==(x=r().theme)&&(m.value=(m.__value=r().theme)??"",io(m,r().theme))},[()=>r().lineHeight.toFixed(1)]),kr(n,i),Vn()}(Jt(_,2),{get isOpen(){return Ke(f)},get settings(){return s()},onSettingsChange:function(n){var e;null==(e=t.onSettingsChange)||e.call(t,n)},onOpenCustomCss:function(){var n;p(),null==(n=t.onOpenCustomCss)||n.call(t)},onClose:()=>$t(f,!1)}),ue(()=>{g.disabled=o()&&a(),Er(m,`${e()+1} / ${r()??""}`),y.disabled=i()&&l()}),kr(n,h),Vn()}vr(["click"]);const Ki="@font-face {\n font-family: '나눔스퀘어네오';\n src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);\n src:\n url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix)\n format('embedded-opentype'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff)\n format('woff'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf)\n format('truetype');\n font-weight: normal;\n font-style: normal;\n}\n@font-face {\n font-family: '에스코어드림';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff')\n format('woff');\n}\n@font-face {\n font-family: '레페리포인트';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2201-2@1.0/LeferiPoint-WhiteObliqueA.woff')\n format('woff');\n}\n@font-face {\n font-family: '플렉스';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-07@1.0/IBMPlexSansKR-Regular.woff')\n format('woff');\n}\n@font-face {\n font-family: '스위트';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2304-2@1.0/SUITE-Regular.woff2')\n format('woff2');\n}\n@font-face {\n font-family: '오르빗';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2310@1.0/Orbit-Regular.woff2')\n format('woff2');\n}\n@font-face {\n font-family: '스쿨오르빗';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2307-2@1.0/HakgyoansimWoojuR.woff2')\n format('woff2');\n}\n@font-face {\n font-family: '프리티나잇';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Oneprettynight.woff')\n format('woff');\n}\n@font-face {\n font-family: '서라운드에어';\n src: url('https://gcore.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/Cafe24SsurroundAir.woff')\n format('woff');\n}\n@font-face {\n font-family: '고운돋움';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunDodum-Regular.woff')\n format('woff');\n}\n@font-face {\n font-family: '고운바탕';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunBatang-Regular.woff')\n format('woff');\n}\n@font-face {\n font-family: '리디바탕';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.0/RIDIBatang.woff')\n format('woff');\n}\n@font-face {\n font-family: '마루부리';\n src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot);\n src:\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot?#iefix)\n format('embedded-opentype'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2)\n format('woff2'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff)\n format('woff'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.ttf)\n format('truetype');\n}\n@font-face {\n font-family: '도스고딕';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_eight@1.0/DOSGothic.woff')\n format('woff');\n}\n@font-face {\n font-family: '스타더스트';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/PFStardust.woff')\n format('woff');\n}\n@font-face {\n font-family: '픽시드시스';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/DungGeunMo.woff')\n format('woff');\n}\n@font-face {\n font-family: '네오둥근모';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.3/NeoDunggeunmo.woff')\n format('woff');\n}\n\n/* ===== Risu Chat Styles ===== */\n.risu-chat > div {\n padding: unset !important;\n margin: unset !important;\n justify-content: unset !important;\n align-items: unset !important;\n}\n.risu-chat > div > div {\n margin: unset !important;\n justify-content: unset !important;\n}\n\n/* ===== PC Book Viewer Styles ===== */\n.pc-viewer-container {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%; /* JS에서 동적으로 제어 */\n}\n\n.pc-viewer-container > div {\n padding: unset !important;\n margin: unset !important;\n justify-content: unset !important;\n align-items: unset !important;\n}\n.pc-viewer-container > div > div {\n margin: unset !important;\n justify-content: unset !important;\n}\n\n/* CSS 변수 정의 */\n.book-viewer-root {\n /* 프리미엄 컬러 팔레트 */\n --bv-bg-gradient-start: #1a1f35;\n --bv-bg-gradient-end: #2d3654;\n --bv-page-color: #fdfbf7;\n --bv-page-shadow: #f5f0e8;\n --bv-text-color: #2c2c2c;\n --bv-text-secondary: #6b6b6b;\n --bv-accent-color: #c9a66b;\n --bv-accent-hover: #b8935a;\n --bv-divider-color: #e8e4dc;\n --bv-spine-gradient: linear-gradient(\n 90deg,\n #d4cfc4 0%,\n hsl(41, 13%, 76%) 50%,\n #d4cfc4 100%\n );\n\n /* 그림자 시스템 */\n --bv-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.08);\n --bv-shadow-medium: 0 8px 40px rgba(0, 0, 0, 0.12);\n --bv-shadow-strong: 0 20px 60px rgba(0, 0, 0, 0.2);\n --bv-shadow-inner: inset 0 0 30px rgba(0, 0, 0, 0.03);\n\n /* 타이포그래피 */\n --bv-font-size: 17px;\n --bv-line-height: 1.9;\n --bv-font-family:\n 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;\n --bv-font-serif: 'Noto Serif KR', 'Crimson Text', 'Georgia', serif;\n\n /* 애니메이션 */\n --bv-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);\n --bv-transition-smooth: 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n --bv-transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n\n /* 폰트 컬러 (Light) */\n --FontColorStandard: #2c2c2c;\n --FontColorItalic: #5a5a5a;\n --FontColorBold: #1a1a1a;\n --FontColorItalicBold: #5a5a5a;\n --FontColorQuote1: #0e7490;\n --FontColorQuote2: #c2410c;\n\n --bv-font-color: var(--FontColorStandard);\n --bv-mark1-color: var(--FontColorQuote1);\n --bv-mark2-color: var(--FontColorQuote2);\n --bv-em-color: var(--FontColorItalic);\n}\n\n/* 테마: Sepia */\n.book-viewer-root[data-theme='sepia'] {\n --bv-bg-gradient-start: #3d3830;\n --bv-bg-gradient-end: #4a4238;\n --bv-page-color: #f7f0e3;\n --bv-page-shadow: #ebe4d7;\n --bv-text-color: #3d2e1c;\n --bv-text-secondary: #7a6b5a;\n --bv-accent-color: #8b7355;\n --bv-divider-color: #d4c9b8;\n --bv-spine-gradient: linear-gradient(\n 90deg,\n #c4b9a8 0%,\n #b8ad9c 50%,\n #c4b9a8 100%\n );\n\n /* 폰트 컬러 (Sepia) */\n --FontColorBold: #2a1f10;\n --FontColorItalicBold: #6b5a48;\n\n --FontColorStandard: #3d2e1c;\n --FontColorQuote1: #1a6b6b;\n --FontColorQuote2: #a85d20;\n --FontColorItalic: #6b5a48;\n --bv-font-color: var(--FontColorStandard);\n --bv-mark1-color: var(--FontColorQuote1);\n --bv-mark2-color: var(--FontColorQuote2);\n --bv-em-color: var(--FontColorItalic);\n}\n\n/* 테마: Dark */\n.book-viewer-root[data-theme='dark'] {\n --bv-bg-gradient-start: #0d1117;\n --bv-bg-gradient-end: #161b22;\n --bv-page-color: var(--risu-theme-bgcolor);\n --bv-page-shadow: #151a20;\n --bv-text-color: #c9d1d9;\n --bv-text-secondary: #8b949e;\n --bv-accent-color: #d4a574;\n --bv-accent-hover: #e0b584;\n --bv-divider-color: #30363d;\n --bv-spine-gradient: linear-gradient(\n 90deg,\n #21262d 0%,\n #30363d 50%,\n #21262d 100%\n );\n --FontColorStandard: #fafafa;\n --FontColorItalic: #8c8d93;\n --FontColorBold: #fafafa;\n --FontColorItalicBold: #8c8d93;\n --FontColorQuote1: #8be9fd;\n --FontColorQuote2: #ffb86c;\n\n --bv-font-color: var(--FontColorStandard);\n --bv-mark1-color: var(--FontColorQuote1);\n --bv-mark2-color: var(--FontColorQuote2);\n --bv-em-color: var(--FontColorItalic);\n}\n\n/* 텍스트 색상 */\n.text-content p {\n margin-top: 1em;\n /* color: var(--bv-font-color); */\n}\n\n.text-content h1 {\n font-weight: 800;\n font-size: 2.25em;\n line-height: 1.1111111;\n}\n\n.text-content h2 {\n font-weight: 700;\n font-size: 1.5em;\n line-height: 1.3333333;\n}\n\n.text-content h3 {\n font-weight: 600;\n font-size: 1.25em;\n line-height: 1.6;\n}\n\n/* ===== 책 래퍼 (전체 화면) ===== */\n.book-viewer-root {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%; /* JS에서 부모 요소(.risu-chat)의 높이를 동적으로 제어 */\n display: flex !important;\n flex-direction: column;\n overflow: hidden;\n z-index: 5;\n font-family: var(--bv-font-family);\n background: linear-gradient(\n 135deg,\n var(--bv-bg-gradient-start) 0%,\n var(--bv-bg-gradient-end) 100%\n );\n user-select: none;\n border-bottom: 1px solid var(--bv-divider-color);\n}\n\n/* 배경 패턴 */\n.book-viewer-root::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-image:\n radial-gradient(\n circle at 20% 80%,\n rgba(201, 166, 107, 0.05) 0%,\n transparent 50%\n ),\n radial-gradient(\n circle at 80% 20%,\n rgba(201, 166, 107, 0.03) 0%,\n transparent 50%\n );\n pointer-events: none;\n z-index: 0;\n}\n\n/* ===== 헤더 영역 ===== */\n.book-header {\n display: flex !important;\n align-items: center;\n justify-content: space-between;\n padding: 12px 24px;\n background: var(--bv-page-color);\n border-bottom: 1px solid var(--bv-divider-color);\n flex-shrink: 0;\n z-index: 1;\n}\n\n.header-left {\n display: flex !important;\n align-items: center;\n gap: 12px;\n min-width: 0;\n flex: 1;\n margin-left: 30px;\n}\n\n.header-thumbnail {\n width: 40px;\n height: 40px;\n min-width: 40px;\n border-radius: 8px;\n background-size: cover;\n background-position: center;\n background-color: var(--bv-divider-color);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n}\n\n.header-info {\n display: flex !important;\n align-items: center;\n gap: 12px;\n min-width: 0;\n flex: 1;\n}\n\n.header-name {\n font-size: 15px;\n font-weight: 600;\n color: var(--bv-text-color);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.header-buttons {\n display: flex !important;\n align-items: center;\n gap: 4px;\n}\n\n.header-buttons button {\n background: none;\n border: none;\n padding: 6px;\n cursor: pointer;\n color: var(--bv-text-secondary);\n border-radius: 6px;\n transition: all var(--bv-transition-fast);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.header-buttons button:hover {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-accent-color);\n}\n\n.book-viewer-root[data-theme='dark'] .header-buttons button:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.header-buttons button :global(svg) {\n width: 18px;\n height: 18px;\n}\n\n.header-right {\n display: flex !important;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.chat-index-nav {\n display: flex !important;\n align-items: center;\n gap: 4px;\n}\n\n.chat-nav-btn {\n background: none;\n border: none;\n padding: 4px;\n cursor: pointer;\n color: var(--bv-text-secondary);\n border-radius: 4px;\n transition: all var(--bv-transition-fast);\n display: flex !important;\n align-items: center;\n justify-content: center;\n}\n\n.chat-nav-btn:hover:not(:disabled) {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-accent-color);\n}\n\n.chat-nav-btn:disabled {\n opacity: 0.3;\n cursor: not-allowed;\n}\n\n.book-viewer-root[data-theme='dark'] .chat-nav-btn:hover:not(:disabled) {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.header-chat-index {\n font-size: 13px;\n font-weight: 500;\n color: var(--bv-text-secondary);\n background: rgba(0, 0, 0, 0.04);\n padding: 4px 10px;\n border-radius: 12px;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.chat-index-total {\n font-size: 11px;\n opacity: 0.7;\n}\n\n.book-viewer-root[data-theme='dark'] .header-chat-index {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.close-btn {\n background: none;\n border: none;\n padding: 6px;\n cursor: pointer;\n color: var(--bv-text-secondary);\n border-radius: 6px;\n transition: all var(--bv-transition-fast);\n display: flex !important;\n align-items: center;\n justify-content: center;\n}\n\n.close-btn:hover {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-accent-color);\n}\n\n/* ===== 페이지 영역 ===== */\n.book-pages {\n position: relative;\n display: flex !important;\n flex: 1;\n min-height: 0;\n z-index: 1;\n}\n\n.page {\n flex: 1;\n background: var(--bv-page-color);\n position: relative;\n overflow: hidden;\n}\n\n/* 종이 질감 효과 */\n.page::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background:\n linear-gradient(\n 90deg,\n rgba(0, 0, 0, 0.02) 0%,\n transparent 5%,\n transparent 95%,\n rgba(0, 0, 0, 0.02) 100%\n ),\n url(\"data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E\");\n pointer-events: none;\n z-index: 1;\n}\n\n.book-viewer-root[data-theme='dark'] .page::before {\n opacity: 0.5;\n}\n\n.page-left {\n border-radius: 4px 0 0 4px;\n box-shadow: var(--bv-shadow-inner);\n}\n\n.page-left::after {\n content: '';\n position: absolute;\n top: 0;\n right: 0;\n width: 40px;\n height: 100%;\n background: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.03) 100%);\n pointer-events: none;\n}\n\n.page-right {\n border-radius: 0 4px 4px 0;\n box-shadow: var(--bv-shadow-inner);\n}\n\n.page-right::after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 40px;\n height: 100%;\n background: linear-gradient(90deg, rgba(0, 0, 0, 0.03) 0%, transparent 100%);\n pointer-events: none;\n}\n\n/* ===== 책등 (스파인) ===== */\n.book-spine {\n width: 8px;\n background: var(--bv-spine-gradient);\n position: relative;\n box-shadow:\n inset 2px 0 4px rgba(0, 0, 0, 0.1),\n inset -2px 0 4px rgba(0, 0, 0, 0.1);\n}\n\n.book-spine::before {\n content: '';\n position: absolute;\n top: 0;\n left: 50%;\n transform: translateX(-50%);\n width: 1px;\n height: 100%;\n background: rgba(0, 0, 0, 0.1);\n}\n\n/* ===== 페이지 콘텐츠 ===== */\n.page-content {\n padding: 50px 60px 10px;\n height: 100%;\n display: flex !important;\n flex-direction: column;\n color: var(--bv-text-color);\n position: relative;\n z-index: 2;\n}\n\n.page-content > .chattext [class*='-image-wrapper'] {\n max-height: 100%;\n}\n.page-content > .chattext [class*='-image-container'] {\n min-height: 98%;\n max-height: 100%;\n}\n.page-content > .chattext .x-risu-image-container:hover {\n}\n\n.page-content > .x-risu-image-cell {\n aspect-ratio: auto;\n}\n\n.text-content {\n flex: 1;\n overflow-y: auto;\n font-size: var(--bv-font-size) !important;\n line-height: var(--bv-line-height) !important;\n font-family: var(--bv-font-family) !important;\n text-align: -webkit-auto;\n word-break: keep-all;\n letter-spacing: -0.01em;\n padding-right: 10px;\n user-select: text;\n -webkit-user-select: text;\n cursor: text;\n}\n\n.text-content * {\n user-select: text;\n -webkit-user-select: text;\n}\n\n/* 헤딩 스타일 */\n.text-content :global(h1),\n.text-content :global(h2),\n.text-content :global(h3) {\n margin: 2em 0 1em;\n text-indent: 0;\n font-weight: 600;\n color: #1a1a1a;\n letter-spacing: -0.02em;\n}\n\n.text-content :global(h1) {\n font-size: 1.8em;\n border-bottom: 2px solid var(--bv-accent-color);\n padding-bottom: 0.5em;\n}\n\n.text-content :global(h2) {\n font-size: 1.4em;\n}\n\n/* Mark 스타일 */\n.text-content :global(mark),\n.text-content :global(mark[risu-mark]) {\n display: inline;\n background: linear-gradient(\n 120deg,\n rgba(201, 166, 107, 0.2) 0%,\n rgba(201, 166, 107, 0.3) 100%\n );\n color: inherit;\n padding: 0.1em 0.3em;\n border-radius: 3px;\n flex-direction: unset;\n align-items: unset;\n gap: unset;\n}\n\n/* 이미지 스타일 */\n.text-content:has(img) {\n position: static;\n}\n\n.text-content :global(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n margin: 0;\n z-index: 10;\n}\n\n.page-content:has(img) .page-number {\n display: none;\n}\n\n/* ===== 페이지 번호 ===== */\n.page-number {\n font-size: 13px;\n color: var(--bv-text-secondary);\n font-weight: 500;\n letter-spacing: 0.05em;\n}\n\n.left-page-num {\n text-align: left;\n}\n.right-page-num {\n text-align: right;\n}\n\n/* ===== 클릭 영역 ===== */\n.click-area {\n position: absolute;\n top: 0;\n width: 5%;\n height: 100%;\n z-index: 10;\n cursor: pointer;\n}\n\n.click-left {\n left: 0;\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='%23c9a66b' stroke-width='2'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E\")\n 16 16,\n w-resize;\n}\n\n.click-right {\n right: 0;\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='%23c9a66b' stroke-width='2'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E\")\n 16 16,\n e-resize;\n}\n\n.click-area::after {\n content: '';\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 50px;\n height: 100px;\n opacity: 0;\n transition: opacity var(--bv-transition-smooth);\n pointer-events: none;\n}\n\n.click-left::after {\n left: 30px;\n background: radial-gradient(\n ellipse at left,\n rgba(201, 166, 107, 0.15),\n transparent 70%\n );\n}\n\n.click-right::after {\n right: 30px;\n background: radial-gradient(\n ellipse at right,\n rgba(201, 166, 107, 0.15),\n transparent 70%\n );\n}\n\n.click-area:hover::after {\n opacity: 1;\n}\n\n/* ===== 네비게이션 컨트롤 ===== */\n.nav-controls {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 32px;\n background: var(--bv-page-color);\n padding: 14px 40px;\n border-top: 1px solid rgba(201, 166, 107, 0.12);\n flex-shrink: 0;\n z-index: 1;\n}\n\n.nav-btn {\n background: none;\n border: none;\n cursor: pointer;\n padding: 10px;\n border-radius: 50%;\n transition: all var(--bv-transition-fast);\n color: var(--bv-accent-color);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.nav-btn :global(svg) {\n transition: transform var(--bv-transition-fast);\n}\n\n.nav-btn:hover:not(:disabled) {\n background: rgba(201, 166, 107, 0.12);\n}\n.nav-btn:hover:not(:disabled) :global(svg) {\n transform: scale(1.1);\n}\n.nav-btn:active:not(:disabled) {\n background: transparent !important;\n}\n.nav-btn:active:not(:disabled) :global(svg) {\n transform: scale(0.95);\n}\n.nav-btn:disabled {\n opacity: 0.25;\n cursor: not-allowed;\n}\n\n.page-indicator {\n font-size: 14px;\n color: var(--bv-text-color);\n min-width: 90px;\n text-align: center;\n font-weight: 600;\n letter-spacing: 0.02em;\n font-variant-numeric: tabular-nums;\n}\n\n/* ===== 네비게이션 우측 버튼 그룹 ===== */\n.nav-right-buttons {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-left: auto;\n padding-left: 20px;\n}\n\n.nav-icon-btn {\n background: none;\n border: 2px solid var(--bv-accent-color);\n color: var(--bv-accent-color);\n padding: 8px 12px;\n cursor: pointer;\n border-radius: 8px;\n transition: all var(--bv-transition-fast);\n font-size: 13px !important;\n font-weight: 600 !important;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n}\n\n.nav-icon-btn:hover {\n background: var(--bv-accent-color);\n color: white;\n}\n\n.nav-icon-btn :global(svg) {\n width: 18px;\n height: 18px;\n}\n\n/* LB 버튼 로딩 상태 */\n.nav-icon-btn.loading {\n opacity: 0.7;\n cursor: wait;\n}\n\n.nav-icon-btn.loading svg {\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n/* ===== 드롭다운 메뉴 ===== */\n.dropdown-container {\n position: relative;\n}\n\n.dropdown-menu {\n display: none;\n position: absolute;\n bottom: calc(100% + 40px);\n right: 0;\n background: rgba(255, 255, 255, 0.98);\n backdrop-filter: blur(20px);\n -webkit-backdrop-filter: blur(20px);\n padding: 16px;\n border-radius: 16px;\n box-shadow: var(--bv-shadow-strong);\n min-width: 280px;\n max-width: 320px;\n border: 1px solid rgba(201, 166, 107, 0.15);\n z-index: 200;\n}\n\n.dropdown-menu.active {\n display: block;\n animation: dropdownFadeIn 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n@keyframes dropdownFadeIn {\n from {\n opacity: 0;\n transform: translateY(10px) scale(0.95);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n\n.book-viewer-root[data-theme='dark'] .dropdown-menu {\n background: rgba(28, 33, 40, 0.98);\n}\n\n.dropdown-header {\n font-size: 14px;\n font-weight: 700;\n color: var(--bv-text-color);\n padding-bottom: 12px;\n margin-bottom: 12px;\n border-bottom: 1px solid var(--bv-divider-color);\n text-transform: uppercase;\n letter-spacing: 0.05em;\n}\n\n/* ===== 설정 아이템 ===== */\n.setting-item {\n margin-bottom: 16px;\n}\n.setting-item:last-child {\n margin-bottom: 0;\n}\n\n.setting-item label {\n display: block;\n margin-bottom: 8px;\n font-size: 12px;\n font-weight: 600;\n color: var(--bv-font-color);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n}\n\n.setting-item input[type='range'] {\n width: 100%;\n height: 5px;\n -webkit-appearance: none;\n appearance: none;\n background: #e8e4dc;\n border-radius: 3px;\n outline: none;\n margin-bottom: 6px;\n}\n\n.book-viewer-root[data-theme='dark'] .setting-item input[type='range'] {\n background: #30363d;\n}\n\n.setting-item input[type='range']::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 18px;\n height: 18px;\n background: var(--bv-accent-color);\n border-radius: 50%;\n cursor: pointer;\n box-shadow: 0 2px 6px rgba(201, 166, 107, 0.4);\n transition: all var(--bv-transition-fast);\n}\n\n.setting-item input[type='range']::-webkit-slider-thumb:hover {\n transform: scale(1.1);\n}\n\n.setting-item input[type='range']::-moz-range-thumb {\n width: 18px;\n height: 18px;\n background: var(--bv-accent-color);\n border-radius: 50%;\n cursor: pointer;\n border: none;\n}\n\n.setting-item select {\n width: 100%;\n padding: 10px 14px;\n border: 2px solid #e8e4dc;\n border-radius: 10px;\n font-size: 13px;\n background: #fff;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n appearance: none;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23c9a66b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: right 10px center;\n background-size: 16px;\n}\n\n.book-viewer-root[data-theme='dark'] .setting-item select {\n background-color: #21262d;\n border-color: #30363d;\n color: var(--bv-font-color);\n}\n\n.book-viewer-root[data-theme='light'] .setting-item select {\n color: var(--bv-font-color);\n}\n\n.book-viewer-root[data-theme='sepia'] .setting-item select {\n color: var(--bv-font-color);\n}\n\n.setting-item select:hover {\n border-color: var(--bv-accent-color);\n}\n.setting-item select:focus {\n outline: none;\n border-color: var(--bv-accent-color);\n box-shadow: 0 0 0 3px rgba(201, 166, 107, 0.15);\n}\n\n.setting-item span {\n font-size: 11px;\n color: var(--bv-text-secondary);\n font-weight: 500;\n}\n\n.custom-css-btn {\n width: 100%;\n padding: 10px 16px;\n background: var(--bv-accent-color);\n color: white;\n border: none;\n border-radius: 8px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n}\n\n.custom-css-btn:hover {\n background: var(--bv-accent-hover);\n transform: translateY(-1px);\n}\n\n/* ===== LB 모듈 리스트 ===== */\n.lb-modules-list {\n max-height: 300px;\n overflow-y: auto;\n}\n\n.lb-module-item {\n padding: 10px 12px;\n margin-bottom: 6px;\n background: rgba(201, 166, 107, 0.08);\n border-radius: 8px;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n font-size: 13px;\n color: var(--bv-text-color);\n}\n\n.lb-module-item:hover {\n background: rgba(201, 166, 107, 0.2);\n}\n.lb-module-item:last-child {\n margin-bottom: 0;\n}\n\n.book-viewer-root[data-theme='dark'] .lb-module-item {\n background: rgba(212, 165, 116, 0.1);\n}\n\n.book-viewer-root[data-theme='dark'] .lb-module-item:hover {\n background: rgba(212, 165, 116, 0.2);\n}\n\n/* ===== 모달 ===== */\n.modal-overlay {\n display: none !important;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.6);\n backdrop-filter: blur(4px);\n z-index: 1100;\n justify-content: center;\n align-items: center;\n}\n\n.modal-overlay.active {\n display: flex;\n animation: modalFadeIn 0.3s ease;\n}\n\n@keyframes modalFadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n.modal-content {\n background: var(--bv-page-color);\n border-radius: 16px;\n width: 90%;\n max-width: 600px;\n max-height: 80vh;\n display: flex;\n flex-direction: column;\n box-shadow: var(--bv-shadow-strong);\n animation: modalSlideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.book-viewer-root[data-theme='dark'] .modal-content {\n background: #1c2128;\n}\n\n@keyframes modalSlideIn {\n from {\n opacity: 0;\n transform: translateY(-20px) scale(0.95);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n\n.modal-header {\n display: flex !important;\n justify-content: space-between;\n align-items: center;\n padding: 20px 24px;\n border-bottom: 1px solid var(--bv-divider-color);\n}\n\n.modal-header h3 {\n font-size: 18px;\n font-weight: 700;\n color: var(--bv-text-color);\n margin: 0;\n}\n\n.modal-close {\n background: none;\n border: none;\n font-size: 24px;\n color: var(--bv-text-secondary);\n cursor: pointer;\n padding: 4px 8px;\n border-radius: 6px;\n transition: all var(--bv-transition-fast);\n}\n\n.modal-close:hover {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-text-color);\n}\n\n.book-viewer-root[data-theme='dark'] .modal-close:hover {\n background: rgba(255, 255, 255, 0.1);\n}\n\n.modal-body {\n flex: 1;\n padding: 20px 24px;\n overflow: auto;\n}\n\n.modal-body textarea {\n width: 100%;\n height: 300px;\n padding: 16px;\n border: 2px solid var(--bv-divider-color);\n border-radius: 12px;\n font-family: 'Consolas', 'Monaco', monospace;\n font-size: 14px;\n line-height: 1.6;\n resize: vertical;\n background: #fafafa;\n color: var(--bv-text-color);\n}\n\n.book-viewer-root[data-theme='dark'] .modal-body textarea {\n background: #0d1117;\n border-color: #30363d;\n}\n\n.modal-body textarea:focus {\n outline: none;\n border-color: var(--bv-accent-color);\n box-shadow: 0 0 0 3px rgba(201, 166, 107, 0.15);\n}\n\n.modal-footer {\n display: flex;\n justify-content: flex-end;\n gap: 12px;\n padding: 16px 24px;\n border-top: 1px solid var(--bv-divider-color);\n}\n\n.modal-btn {\n padding: 10px 20px;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n}\n\n.modal-btn.primary {\n background: var(--bv-accent-color);\n color: white;\n border: none;\n}\n\n.modal-btn.primary:hover {\n background: var(--bv-accent-hover);\n}\n\n.modal-btn.secondary {\n background: transparent;\n color: var(--bv-text-secondary);\n border: 2px solid var(--bv-divider-color);\n}\n\n.modal-btn.secondary:hover {\n border-color: var(--bv-text-secondary);\n color: var(--bv-text-color);\n}\n\n/* ===== 반응형 ===== */\n@media (max-width: 1200px) {\n .page-content {\n padding: 50px 40px 40px;\n }\n .text-content {\n font-size: 16px;\n }\n}\n\n@media (max-width: 900px) {\n .book-header {\n padding: 10px 16px;\n }\n .header-thumbnail {\n width: 32px;\n height: 32px;\n min-width: 32px;\n border-radius: 6px;\n }\n .header-name {\n font-size: 14px;\n }\n .header-buttons button {\n padding: 4px;\n }\n .header-buttons button :global(svg) {\n width: 16px;\n height: 16px;\n }\n .page-content {\n padding: 40px 30px 35px;\n }\n .book-spine {\n width: 4px;\n }\n .nav-controls {\n padding: 12px 20px;\n gap: 20px;\n }\n}\n\n/* ===== Toast ===== */\n.viewer-toast {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 1000;\n width: unset !important;\n pointer-events: none;\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n\n.viewer-toast.showing {\n opacity: 1;\n}\n\n/* 클릭 가능한 토스트 */\n.viewer-toast.clickable {\n pointer-events: auto;\n cursor: pointer;\n}\n\n.viewer-toast.clickable .toast-content {\n transition:\n transform 0.15s ease,\n box-shadow 0.15s ease;\n}\n\n.viewer-toast.clickable:hover .toast-content {\n transform: scale(1.02);\n box-shadow: 0 6px 28px rgba(0, 0, 0, 0.4);\n}\n\n.viewer-toast.clickable:active .toast-content {\n transform: scale(0.98);\n}\n\n.toast-content {\n background: rgba(0, 0, 0, 0.8);\n color: white;\n padding: 16px 32px;\n border-radius: 12px;\n font-size: 15px;\n font-weight: 500;\n text-align: center;\n backdrop-filter: blur(8px);\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n max-width: 400px;\n}\n\n/* PC 테마 지원 */\n:global(.book-viewer-root[data-theme='light']) .toast-content {\n background: rgba(50, 50, 50, 0.9);\n}\n\n/* Mobile 테마 지원 */\n:global(.mobile-reader[data-theme='light']) .toast-content {\n background: rgba(50, 50, 50, 0.9);\n}\n";var Ji=yr('<div><div class="modal-content"><div class="modal-header"><h3>사용자 CSS</h3> <button class="modal-close">×</button></div> <div class="modal-body"><textarea placeholder="/* 사용자 정의 CSS를 입력하세요 */"></textarea></div> <div class="modal-footer"><button class="modal-btn secondary">초기화</button> <button class="modal-btn primary">적용</button></div></div></div>');vr(["click"]);var Qi=yr('<div><div class="toast-content"> </div></div>');function Xi(n,t){Un(t,!0);let e=$o(t,"message",3,""),r=$o(t,"duration",3,2e3),o=$o(t,"visible",3,!1),i=$o(t,"clickable",3,!1),a=$o(t,"onClick",3,null),l=$o(t,"onHide",3,()=>{}),s=jt(!1),u=null;function c(){i()&&a()&&(u&&clearTimeout(u),$t(s,!1),a()(),setTimeout(()=>{l()()},100))}ie(()=>{o()&&($t(s,!0),u&&clearTimeout(u),u=setTimeout(()=>{$t(s,!1),setTimeout(()=>{l()()},300)},r()))}),Io(()=>()=>{u&&clearTimeout(u)});var f=_r(),d=Kt(f),p=n=>{var t=Qi();let r;t.__click=c;var o=Yt(t),a=Yt(o);ue(()=>{r=eo(t,1,"viewer-toast",null,r,{showing:Ke(s),clickable:i()}),ho(t,"role",i()?"button":"status"),ho(t,"tabindex",i()?0:-1),Er(a,e())}),kr(n,t)};$r(d,n=>{o()&&n(p)}),kr(n,f),Vn()}vr(["click"]);class Zi{constructor(n={}){this.splittableTags=n.splittableTags||["p"],this.minHeightRatio=n.minHeightRatio||.9}isSplittable(n){var t;const e=null==(t=n.tagName)?void 0:t.toLowerCase();if(!this.splittableTags.includes(e))return!1;return!n.querySelector("mark, strong, em, a, span[class], code")}splitElement(n,t,e){if(!this.isSplittable(n))return[n.cloneNode(!0)];const r=n.cloneNode(!0);t.innerHTML="",t.appendChild(r);return t.scrollHeight<=e?[n.cloneNode(!0)]:this._splitBySentence(n,t,e)}_splitBySentence(n,t,e){const r=n.tagName.toLowerCase(),o=n.innerText||n.textContent||"",i=this._splitIntoSentences(o);if(i.length<=1)return this._splitByWords(n,t,e);const a=[];let l=[];for(const s of i){const o=[...l,s].join(""),i=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{i.setAttribute(n.name,n.value)}),i.textContent=o,t.innerHTML="",t.appendChild(i),t.scrollHeight<=e)l.push(s);else{if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}l=[s]}}if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}return a.length>0?a:[n.cloneNode(!0)]}_splitIntoSentences(n){return n.split(new RegExp("(?<=[.!?。!?])\\s*")).filter(n=>n.length>0)}_splitByWords(n,t,e){const r=n.tagName.toLowerCase(),o=(n.innerText||n.textContent||"").split(/(\s+)/).filter(n=>n.length>0);if(0===o.length)return[n.cloneNode(!0)];const i=[];let a=0;for(;a<o.length;){let l=a+1,s=a+1;for(;l<=o.length;){const i=o.slice(a,l).join(""),u=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=i,t.innerHTML="",t.appendChild(u),!(t.scrollHeight<=e))break;s=l,l++}const u=document.createElement(r);Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=o.slice(a,s).join(""),i.push(u),a=s}return i}static createMeasureContainer(n){const t=document.createElement("div"),e=getComputedStyle(n);return t.style.cssText=`\n position: absolute;\n visibility: hidden;\n pointer-events: none;\n width: ${n.clientWidth}px;\n padding: ${e.padding};\n font-size: ${e.fontSize};\n line-height: ${e.lineHeight};\n font-family: ${e.fontFamily};\n overflow: hidden;\n `,t}}function na(n){const t=document.createElement("div");if(t.className="text-content chattext",t.style.position="absolute",t.style.visibility="hidden",t.style.pointerEvents="none",t.style.overflow="hidden",n){const e=n.getBoundingClientRect(),r=window.getComputedStyle(n);t.style.width=e.width+"px",t.style.height=e.height+"px",t.style.padding=r.padding,t.style.fontSize=r.fontSize,t.style.lineHeight=r.lineHeight,t.style.fontFamily=r.fontFamily}return t}function ta(n){const t=Array.from(n.childNodes);let e=[];const r=()=>{if(0===e.length)return;const t=e.map(n=>n.nodeType===Node.TEXT_NODE?n.textContent:n.outerHTML).join("");if(""===t.trim())return e.forEach(n=>{n.parentNode&&n.parentNode.removeChild(n)}),void(e=[]);const r=document.createElement("p");r.innerHTML=t;const o=e[0];n.insertBefore(r,o),e.forEach(n=>{n.parentNode&&n.parentNode.removeChild(n)}),e=[]},o=["p","div","ul","ol","li","h1","h2","h3","h4","h5","h6","table","blockquote","pre","hr","details","figure","section","article","header","footer","nav","aside","title"];t.forEach(n=>{if(n.nodeType===Node.TEXT_NODE)(""!==n.textContent.trim()||e.length>0)&&e.push(n);else if(n.nodeType===Node.ELEMENT_NODE){const t=n.tagName.toLowerCase();o.includes(t)?r():e.push(n)}}),r()}function ea(n,t,e){const r=[],o=Array.from(n.children),i=t.clientHeight;let a=[];return o.forEach(n=>{const o=n.cloneNode(!0);if(t.innerHTML="",t.appendChild(o),n.querySelector("img")||"IMG"===n.tagName||"DIV"===n.tagName&&n.classList.contains("x-risu-image-container"))return a.length>0&&(r.push(ra(a)),a=[]),r.push(ra([n.cloneNode(!0)])),void(t.innerHTML="");t.innerHTML="",a.forEach(n=>{t.appendChild(n.cloneNode(!0))}),t.appendChild(o);const l=t.scrollHeight>t.clientHeight;if(l&&e.isSplittable(n)){a.length>0&&(r.push(ra(a)),a=[]),t.innerHTML="";return void e.splitElement(n,t,i).forEach(n=>{(n=>{const e=n.cloneNode(!0);t.appendChild(e),t.scrollHeight>t.clientHeight&&a.length>0&&(r.push(ra(a)),a=[],t.innerHTML="",t.appendChild(e)),a.push(n)})(n)})}l&&a.length>0&&(r.push(ra(a)),a=[],t.innerHTML="",t.appendChild(o)),a.push(n.cloneNode(!0))}),a.length>0&&r.push(ra(a)),r}function ra(n){const t=document.createElement("div");return n.forEach(n=>t.appendChild(n)),t.innerHTML}function oa(n){const t={thumbnailUrl:"",name:"",chatIndex:0,buttons:[]},e=n.querySelector(".shadow-lg.bg-textcolor2.rounded-md");if(e){const n=e.getAttribute("style");if(n){const e=n.match(/background:\s*url\(['"]?([^'")\s]+)['"]?\)/);e&&e[1]&&(t.thumbnailUrl=e[1])}}const r=n.querySelector(".flexium.items-center.chat-width");if(r){const n=r.querySelector("span.chat-width");n&&(t.name=n.textContent.trim())}const o=n.querySelector(".risu-ebooklike-viewer-chat-message-bot-buttons");if(o){[".button-icon-copy",".button-icon-tts",".button-icon-edit",".button-icon-translate"].forEach(n=>{const e=o.querySelector(n);e&&t.buttons.push(e.cloneNode(!0))})}const i=n.querySelector(".risu-chat");if(i){const n=i.getAttribute("data-chat-index");n&&(t.chatIndex=parseInt(n,10))}return t}function ia(n){if(!n)return[];const t=[],e=vi(pi.chatMessage.botButtonDiv,n);if(e){[".button-icon-copy",".button-icon-edit",".button-icon-translate",".button-icon-reroll"].forEach(n=>{const r=e.querySelector(n);r&&t.push(r)})}return t}function aa(n){if(!n)return[];const t=n.querySelector(".chattext");if(!t)return[];const e=["button",'[role="button"]',".risu-btn","[risu-btn]",".x-risu-lb-opener",".x-risu-lb-nai-btn",".x-risu-lb-nai-opener"].join(", ");return Array.from(t.querySelectorAll(e))}function la(n){const t=new Map;if(!n)return t;const e=n.querySelector(".chattext");if(!e)return t;e.querySelectorAll(".x-risu-lb-module-root").forEach(n=>{const e=n.getAttribute("data-id");if(e){const r=n.querySelector(".x-risu-lb-opener")||n.querySelector(".x-risu-lb-nai-opener");r&&t.set(e,r)}});return e.querySelectorAll(".x-risu-lb-nai-btn").forEach(n=>{if(!n.closest(".x-risu-lb-module-root")){const e=n.getAttribute("risu-btn");e&&t.set(e,n)}}),t}function sa(n){const t=[];n.querySelectorAll(".x-risu-lb-module-root").forEach(n=>{var e,r;const o=n.getAttribute("data-id")||"",i=n.querySelector(".x-risu-lb-opener span"),a=n.querySelector(".x-risu-lb-nai-opener span"),l=(null==(e=null==i?void 0:i.textContent)?void 0:e.trim())||(null==(r=null==a?void 0:a.textContent)?void 0:r.trim())||o||"LB Module";t.push({type:"module-root",dataId:o,label:l,element:n.cloneNode(!0)})});return n.querySelectorAll(".x-risu-lb-nai-btn").forEach(n=>{var e;if(!n.closest(".x-risu-lb-module-root")){const r=n.getAttribute("risu-btn")||"",o=(null==(e=n.textContent)?void 0:e.trim())||r||"NAI Button";t.push({type:"nai-btn",dataId:r,label:o,element:n.cloneNode(!0)})}}),t}function ua(){return new Promise(n=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{n()})})})}const ca="bookViewerSettings",fa="bookViewerCustomCss",da={fontSize:17,lineHeight:1.9,theme:"light",fontFamily:"나눔스퀘어네오"};function pa(){try{const n=localStorage.getItem(ca);if(n){const t=JSON.parse(n);return{fontSize:t.fontSize??da.fontSize,lineHeight:t.lineHeight??da.lineHeight,theme:t.theme??da.theme,fontFamily:t.fontFamily??da.fontFamily}}}catch(n){console.error("[SettingsManager] Failed to load settings:",n)}return{...da}}function va(n){try{const t={...pa(),...n};localStorage.setItem(ca,JSON.stringify(t))}catch(t){console.error("[SettingsManager] Failed to save settings:",t)}}function ha(){try{return localStorage.getItem(fa)||""}catch(n){return console.error("[SettingsManager] Failed to load custom CSS:",n),""}}function ga(n){try{n?localStorage.setItem(fa,n):localStorage.removeItem(fa)}catch(t){console.error("[SettingsManager] Failed to save custom CSS:",t)}}function ba(n){const t=document.getElementById("book-viewer-custom-css");if(t&&t.remove(),!n||""===n.trim())return null;const e=document.createElement("style");return e.id="book-viewer-custom-css",e.textContent=n,document.head.appendChild(e),e}function ma(){const n=document.getElementById("book-viewer-custom-css");n&&n.remove(),localStorage.removeItem(fa)}var ya=yr('<div class="risu-chat pc-viewer-container"><div class="book-viewer-root chat-message-container"><!> <!> <!> <!> <!></div></div>');function wa(n,t){Un(t,!0);let e=$o(t,"chatHtml",7,""),r=$o(t,"chatIndex",3,0),o=$o(t,"chatPage",3,0),i=$o(t,"chaId",3,null),a=$o(t,"initialLoading",3,!1),l=jt(Bt([])),s=jt(0),u=jt(Bt({fontSize:17,lineHeight:1.5,theme:"dark",fontFamily:"나눔스퀘어네오"})),c=jt(Bt({thumbnailUrl:"",name:"",chatIndex:0,buttons:[]})),f=jt(Bt([])),d=jt(Bt(new Map)),p=jt(Bt([])),v=jt(!1),h=jt(""),g=jt(null),b=jt(""),m=jt(Bt({position:0,total:0,isFirst:!0,isLast:!0})),y=jt(Bt([])),w=jt(!1),x=jt(""),_=jt(!1),k=jt(""),C=jt(!1),S=jt(null),E=jt(!1),M=jt("100%"),z=null;ie(()=>{$t(w,a()),$t(x,a()?"Loading...":"",!0)});let A=new Zi({splittableTags:["p"]}),j=jt(null),N=jt(null),$=null,I=null,L=null,P=null,F=xt(()=>Math.ceil(Ke(l).length/2)),B=xt(()=>2*Ke(s)),T=xt(()=>2*Ke(s)+1),R=xt(()=>Ke(l)[Ke(B)]||""),O=xt(()=>Ke(l)[Ke(T)]||""),W=xt(()=>Ke(l)[Ke(B)]?Ke(B)+1:0),q=xt(()=>Ke(l)[Ke(T)]?Ke(T)+1:0),D=xt(()=>0===Ke(s)),H=xt(()=>Ke(T)>=Ke(l).length-1);function U(){$t(y,bi(),!0),$t(m,yi(r()),!0)}async function V(){if(!e())return;$t(b,e(),!0);const n=(new DOMParser).parseFromString(e(),"text/html");$t(c,oa(n),!0),Ke(c).chatIndex=r();const t=gi(r());t&&(Ke(c).buttons=ia(t),$t(p,aa(t),!0),$t(d,la(t),!0)),$t(f,sa(n),!0);const o=n.querySelector(".chattext");o&&(ta(o),$t(g,o.cloneNode(!0),!0),await ua(),await G(),Ke(w)&&setTimeout(()=>{$t(w,!1),$t(x,"")},100))}async function G(){if(!Ke(g))return;const n=document.querySelector(".book-viewer-root .text-content");if(!n){await ua();if(!document.querySelector(".book-viewer-root .text-content"))return}const t=na(n||document.body);document.body.appendChild(t);try{$t(l,ea(Ke(g).cloneNode(!0),t,A),!0)}finally{document.body.removeChild(t)}}function Y(){$&&clearTimeout($),$=setTimeout(()=>{!async function(){if(!Ke(g))return;const n=2*Ke(s);$t(l,[],!0),$t(s,0),await ua(),await G();const t=Math.max(0,Math.ceil(Ke(l).length/2)-1);$t(s,Math.min(Math.floor(n/2),t),!0)}()},300)}function K(){const n=gi(r());if(n){const t=n.outerHTML;t!==Ke(b)&&($t(b,t,!0),e(t),V())}}function J(n){$t(k,n,!0),$t(C,!1),$t(S,null),$t(_,!0)}function Q(){Ke(T)>=Ke(l).length-1?nn():Lt(s)}function X(){0!==Ke(s)?Lt(s,-1):Z()}function Z(){const{index:n,isFirst:t}=mi(r(),"prev");null!==n?Sa(n,!1,!0):t&&J("현재 채팅의 첫 번째 페이지입니다")}function nn(){const{index:n,isLast:t}=mi(r(),"next");null!==n?Sa(n,!1,!0):t&&J("현재 채팅의 마지막 페이지입니다")}function tn(n){n!==r()&&Sa(n,!1,!0)}ie(()=>{Ke(N)&&(Ke(N).style.setProperty("--bv-font-size",`${Ke(u).fontSize}px`),Ke(N).style.setProperty("--bv-line-height",String(Ke(u).lineHeight)),Ke(N).style.setProperty("--bv-font-family",Ke(u).fontFamily),Ke(N).style.setProperty("--risu-font-family",Ke(u).fontFamily),Ke(N).setAttribute("data-theme",Ke(u).theme))}),Io(async()=>{$t(u,pa(),!0),$t(h,ha(),!0),Ke(h)&&ba(Ke(h));const n=vi(pi.chatScreen.textarea);if(n){const t=n.scrollHeight+10;$t(M,`calc(100% - ${t}px)`),z=new ResizeObserver(n=>{for(const t of n){const n=t.target.scrollHeight+10;$t(M,`calc(100% - ${n}px)`)}}),z.observe(n)}U(),await ua(),await V(),I=setInterval(K,1e3);const t=To.getInstance();L=t.subscribeToChar(n=>({chatPage:null==n?void 0:n.chatPage,chaId:null==n?void 0:n.chaId}),n=>{n.chatPage===o()&&n.chaId===i()||(console.log("[PCBookViewer] Chat page or character changed, reloading..."),Sa(null,!1))},500),P=t.subscribeToChar(n=>{var t,e,r;return null==(r=null==(e=null==(t=null==n?void 0:n.chats)?void 0:t[n.chatPage])?void 0:e.message)?void 0:r.length},n=>{var e,r,o;const i=bi();if(i.length!==Ke(y).length){const l=i.filter(n=>!Ke(y).includes(n));if(l.length>0){console.log("[PCBookViewer] New chat indices detected:",l);const i=t.getChar(),s=null==(o=null==(r=null==(e=null==i?void 0:i.chats)?void 0:e[i.chatPage])?void 0:r.message)?void 0:o[n-1],u=null==s?void 0:s.role,c=(null==s?void 0:s.data)||"";if("char"===u)if(c.includes("<lb-rerolling>"))$t(E,!0),console.log("[PCBookViewer] LB module rerolling detected");else{const n=l[l.length-1];a=()=>tn(n),$t(k,"새로운 응답이 수신되었습니다. 클릭 시 이동합니다.",!0),$t(C,!0),$t(S,a,!0),$t(_,!0)}else if("user"===u){tn(l[l.length-1])}}else Ke(E)&&($t(E,!1),console.log("[PCBookViewer] LB module processing completed"));$t(y,i,!0),U()}var a},1e3)}),Lo(()=>{$&&clearTimeout($),I&&clearInterval(I),z&&(z.disconnect(),z=null),L&&L(),P&&P();const n=document.getElementById("book-viewer-custom-css");n&&n.remove()});var en=ya();let rn;pr("keydown",Ot,function(n){var e;if(Ke(v))"Escape"===n.key&&$t(v,!1);else{if("Escape"!==n.key){const n=document.activeElement;if(n&&("TEXTAREA"===n.tagName||"INPUT"===n.tagName||n.isContentEditable))return;const t=window.getSelection();if(t&&t.toString().length>0)return}"ArrowRight"===n.key||"PageDown"===n.key||" "===n.key?(n.preventDefault(),Q()):"ArrowLeft"===n.key||"PageUp"===n.key?(n.preventDefault(),X()):"Escape"===n.key&&(null==(e=t.onClose)||e.call(t))}}),pr("resize",Ot,function(){Y()});var on=Yt(en),an=Yt(on);ji(an,{get thumbnailUrl(){return Ke(c).thumbnailUrl},get name(){return Ke(c).name},get chatIndex(){return Ke(c).chatIndex},get buttons(){return Ke(c).buttons},get chatIndexPosition(){return Ke(m)},onPrevChat:Z,onNextChat:nn,get onClose(){return t.onClose}});var ln=Jt(an,2);!function(n,t){Un(t,!0);let e=$o(t,"leftContent",3,""),r=$o(t,"rightContent",3,""),o=$o(t,"leftPageNum",3,0),i=$o(t,"rightPageNum",3,0),a=$o(t,"leftContentRef",7,null);$o(t,"rightContentRef",3,null);let l=$o(t,"isLoading",3,!1),s=$o(t,"loadingMessage",3,""),u=$o(t,"liveContentButtons",19,()=>[]),c=jt(null),f=jt(null);ie(()=>{Ke(c)&&(Ke(c).innerHTML=e(),u().length>0&&Mi(Ke(c),u()))}),ie(()=>{Ke(f)&&(Ke(f).innerHTML=r(),u().length>0&&Mi(Ke(f),u()))}),ie(()=>{Ke(c)&&a()!==Ke(c)&&a(Ke(c))});var d=Oi(),p=Yt(d);p.__click=function(...n){var e;null==(e=t.onPrevPage)||e.apply(this,n)};var v=Jt(p,2);v.__click=function(...n){var e;null==(e=t.onNextPage)||e.apply(this,n)};var h=Jt(v,2),g=Yt(h),b=Yt(g);Co(b,n=>$t(c,n),()=>Ke(c));var m=Jt(b,2),y=n=>{var t=Ti(),e=Yt(t);ue(()=>Er(e,o())),kr(n,t)};$r(m,n=>{o()>0&&n(y)});var w=Jt(h,4),x=Yt(w),_=Yt(x);Co(_,n=>$t(f,n),()=>Ke(f));var k=Jt(_,2),C=n=>{var t=Ri(),e=Yt(t);ue(()=>Er(e,i())),kr(n,t)};$r(k,n=>{i()>0&&n(C)}),Bi(Jt(w,2),{get visible(){return l()},get message(){return s()}}),kr(n,d),Vn()}(ln,{get leftContent(){return Ke(R)},get rightContent(){return Ke(O)},get leftPageNum(){return Ke(W)},get rightPageNum(){return Ke(q)},onPrevPage:X,onNextPage:Q,get isLoading(){return Ke(w)},get loadingMessage(){return Ke(x)},get liveContentButtons(){return Ke(p)},get leftContentRef(){return Ke(j)},set leftContentRef(n){$t(j,n,!0)}});var sn=Jt(ln,2);Yi(sn,{get currentSpread(){return Ke(s)},get totalSpreads(){return Ke(F)},onPrev:X,onNext:Q,get isFirst(){return Ke(m).isFirst},get isLast(){return Ke(m).isLast},get prevDisabled(){return Ke(D)},get nextDisabled(){return Ke(H)},get settings(){return Ke(u)},onSettingsChange:function(n){$t(u,n,!0),va(Ke(u)),Y()},onOpenCustomCss:function(){$t(v,!0)},get lbModules(){return Ke(f)},onLBModuleClick:function(n){const t=n.dataId||n.risuBtn;if(t&&Ke(d).has(t)){const n=Ke(d).get(t),e=new MouseEvent("click",{bubbles:!0,cancelable:!0});n.dispatchEvent(e)}},get isLBLoading(){return Ke(E)}});var un=Jt(sn,2);!function(n,t){Un(t,!0);let e=$o(t,"isOpen",3,!1),r=$o(t,"initialCss",3,""),o=jt("");ie(()=>{e()&&$t(o,r()||Ki,!0)});var i=Ji();let a;pr("keydown",Ot,function(n){var e;"Escape"===n.key&&(null==(e=t.onClose)||e.call(t))}),i.__click=function(n){var e;n.target===n.currentTarget&&(null==(e=t.onClose)||e.call(t))};var l=Yt(i),s=Yt(l);Jt(Yt(s),2).__click=function(...n){var e;null==(e=t.onClose)||e.apply(this,n)};var u=Jt(s,2),c=Yt(u),f=Yt(Jt(u,2));f.__click=function(){var n;$t(o,Ki,!0),null==(n=t.onReset)||n.call(t)},Jt(f,2).__click=function(){var n;null==(n=t.onApply)||n.call(t,Ke(o))},ue(()=>a=eo(i,1,"modal-overlay",null,a,{active:e()})),wo(c,()=>Ke(o),n=>$t(o,n)),kr(n,i),Vn()}(un,{get isOpen(){return Ke(v)},get initialCss(){return Ke(h)},onApply:function(n){$t(h,n,!0),ga(n),ba(n),$t(v,!1),Y()},onReset:function(){$t(h,""),ma(),Y()},onClose:()=>$t(v,!1)});var cn=Jt(un,2);{let n=xt(()=>Ke(C)?5e3:2e3);Xi(cn,{get message(){return Ke(k)},get visible(){return Ke(_)},get duration(){return Ke(n)},get clickable(){return Ke(C)},get onClick(){return Ke(S)},onHide:function(){$t(_,!1),$t(k,""),$t(C,!1),$t(S,null)}})}Co(on,n=>$t(N,n),()=>Ke(N)),ue(()=>{ho(en,"data-chat-index",r()),ho(en,"data-chat-page",o()),ho(en,"data-char-id",i()),rn=oo(en,"",rn,{height:Ke(M)}),ho(on,"data-theme",Ke(u).theme)}),kr(n,en),Vn()}let xa=null;const _a="pc-book-viewer",ka="pc-viewer";let Ca=null;function Sa(n=null,t=!0,e=!1){if(Ho(_a)&&(Ea(),t))return!0;const r=To.getInstance();let o=r.getDatabase(),i=di.cloneDeep(o.theme),a=di.cloneDeep(o.customCSS);o.theme="",o.customCSS="";try{const t=null!=n?Number(n):r.getLastChatIndex()-1,l=gi(t);if(!l)return console.warn("[PCViewer] Chat element not found for index:",t),!1;const s=vi(pi.chatScreen.displayContainer);if(!s)return console.warn("[PCViewer] Display container not found"),!1;Ca=s,Uo(s,{overflow:"hidden"},ka);Uo(vi(pi.chatScreen.root),{overflow:"hidden"},ka);const u=qo({id:_a,component:wa,target:s,props:{chatHtml:l.outerHTML,chatIndex:t,chatPage:r.getCurrentChatPage(),chaId:r.getChaId(),onClose:Ea,initialLoading:e},useContents:!1});return o.theme=i,o.customCSS=a,!!u}catch(l){return o.theme=i,o.customCSS=a,console.error("[PCViewer] Failed to open:",l),!1}}function Ea(){if(Ca){Vo(Ca,ka);Vo(vi(pi.chatScreen.root),ka),Ca=null}return Do(_a)}async function Ma(n=null,t=!0,e=!1){if(function(){const n=window.innerWidth<=768,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),e="ontouchstart"in window||navigator.maxTouchPoints>0;return n||t&&e}()){return(await async function(){return xa||(xa=await Promise.resolve().then(()=>pl)),xa}()).openMobileViewer(n,t,e)}return Sa(n,t,e)}var za=yr('<button class="flex justify-center border-y border-darkborderc items-center text-gray-100 p-3 peer-focus:border-textcolor hover:bg-blue-500 transition-colors button-icon-ebook" title="이북 리수 기립하시오"><!></button>');function Aa(n,t){Un(t,!0);let e=jt("44px"),r=null;Io(()=>{const n=vi(pi.chatScreen.textarea);n&&($t(e,`${n.scrollHeight}px`),r=new ResizeObserver(n=>{for(const t of n){const n=t.target.scrollHeight;$t(e,`${n}px`)}}),r.observe(n))}),Lo(()=>{r&&(r.disconnect(),r=null)});var o=za();let i;o.__click=async function(n){n.stopPropagation(),await Ma()},function(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20"}]];_i(n,No({name:"book"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Yt(o),{}),ue(()=>i=oo(o,"",i,{height:Ke(e)})),kr(n,o),Vn()}vr(["click"]);var ja=yr('<button class="ml-2 hover:text-blue-500 transition-colors button-small-book" title="이북 뷰어로 보기"><!></button>');function Na(n,t){Un(t,!0);var e=ja();e.__click=async function(n){n.stopPropagation(),await Ma(t.chatIndex)},function(n,t){const e=Ao(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M12 7v14"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"}]];_i(n,No({name:"book-open"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Or(Kt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Yt(e),{size:20}),kr(n,e),Vn()}function $a(n,t){Un(t,!0);let e=jt(null),r=jt(null);const o=di.debounce(function(){const n=vi(pi.chatScreen.inputContainer),t=vi(pi.chatScreen.sendButton);di.isNil(n)||qo({id:"book-button",component:Aa,target:n,anchor:t});const e=hi(pi.chatMessage.botButtonDiv);di.isNil(e)||e.forEach(n=>{qo({id:"small-book-button",component:Na,target:n,anchor:vi(pi.chatMessage.copyButton,n),props:{chatIndex:function({node:n,maxDepth:t=10}){var e;return n&&n instanceof Node?(n instanceof Element||n.parentElement,null==(e=n.closest(".risu-chat").dataset)?void 0:e.chatIndex):null}({node:n})}})});vi(pi.chatScreen.burgerMenu)},100);Io(()=>{$t(e,To.getInstance(),!0),di.isNil(Ke(e))?console.log(`[${Po}] RisuAPI is not initialized`):(!function(){di.isNil(Ke(r))||Ke(r).disconnect();$t(r,new MutationObserver(()=>{o()}),!0),Ke(r).observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style","class"]}),o()}(),console.log(`[${Po}] plugin loaded`))}),Lo(()=>{di.isNil(Ke(r))||Ke(r).disconnect(),Do("book-button"),o.cancel(),console.log(`${Po} 언로드`)}),Vn()}vr(["click"]),(async()=>{try{const n=To.getInstance(globalThis.__pluginApis__);if(!(await n.initialize()))return void console.error(`[${Po}] Failed to initialize RisuAPI`);ai({silent:!0}).catch(n=>{console.warn("[App] Update check failed:",n)});const t=document.createElement("div");t.id=`${Po}-root`,document.body.appendChild(t);const e=Mr($a,{target:t});console.log(`${Po} v${Fo} loaded`),n.onUnload(()=>{jr(e),t.remove()})}catch(n){console.error(`[${Po}] Initialization failed:`,n)}})();var Ia=yr('<div class="header-thumbnail svelte-1p1awwn"></div>'),La=yr('<div class="header-thumbnail svelte-1p1awwn"></div>'),Pa=yr('<span class="chat-position svelte-1p1awwn"> </span>'),Fa=xr('<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="svelte-1p1awwn"><path d="M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"></path></svg>'),Ba=xr('<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="svelte-1p1awwn"><path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"></path></svg>'),Ta=yr("<button><!></button>"),Ra=yr('<button title="LB 모듈"><!></button>'),Oa=yr('<header class="reader-header svelte-1p1awwn"><div class="header-row header-row-top svelte-1p1awwn"><div class="header-bot-info svelte-1p1awwn"><!> <span class="header-bot-name svelte-1p1awwn"> </span></div> <div class="header-chat-nav svelte-1p1awwn"><button class="nav-chat-btn svelte-1p1awwn" title="이전 채팅"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="15 18 9 12 15 6"></polyline></svg></button> <span class="header-chat-index svelte-1p1awwn"> <!></span> <button class="nav-chat-btn svelte-1p1awwn" title="다음 채팅"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="9 18 15 12 9 6"></polyline></svg></button></div> <button class="header-btn close-btn svelte-1p1awwn" title="닫기"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" class="svelte-1p1awwn"><path d="M18 6L6 18M6 6l12 12"></path></svg></button></div> <div class="header-row header-row-bottom svelte-1p1awwn"><div class="header-action-buttons svelte-1p1awwn"></div> <div class="header-right-group svelte-1p1awwn"><!> <!> <button class="header-toggle-btn settings-btn svelte-1p1awwn" title="설정">설정</button></div></div></header>');const Wa={hash:"svelte-1p1awwn",code:".reader-header.svelte-1p1awwn {display:flex;flex-direction:column;background:var(--mv-header-bg, rgba(26, 31, 53, 0.97));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--mv-border-color, rgba(201, 166, 107, 0.2));z-index:100;flex-shrink:0;}.header-row.svelte-1p1awwn {display:flex;align-items:center;padding:0 12px;}.header-row-top.svelte-1p1awwn {justify-content:space-between;padding-top:10px;padding-bottom:6px;}.header-row-bottom.svelte-1p1awwn {justify-content:space-between;padding-top:4px;padding-bottom:10px;border-top:1px solid rgba(255, 255, 255, 0.06);}.header-btn.svelte-1p1awwn {background:none;border:none;color:rgba(255, 255, 255, 0.85);padding:8px;cursor:pointer;border-radius:10px;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:36px;min-height:36px;}.header-btn.svelte-1p1awwn:active {background:rgba(201, 166, 107, 0.2);color:var(--mv-accent-color, #c9a66b);transform:scale(0.95);}.header-btn.svelte-1p1awwn svg:where(.svelte-1p1awwn) {width:18px;height:18px;}\n\n /* 닫기 버튼 */.close-btn.svelte-1p1awwn {background:rgba(255, 255, 255, 0.08);border-radius:50%;color:rgba(255, 255, 255, 0.7);}.close-btn.svelte-1p1awwn:active {background:rgba(255, 100, 100, 0.3);color:#ff6b6b;}\n\n /* 봇 정보 */.header-bot-info.svelte-1p1awwn {display:flex;align-items:center;gap:8px;min-width:0;flex-shrink:1;}.header-thumbnail.svelte-1p1awwn {width:32px;height:32px;min-width:32px;border-radius:8px;background-size:cover;background-position:center;background-color:rgba(255, 255, 255, 0.1);box-shadow:0 2px 6px rgba(0, 0, 0, 0.2);}.header-bot-name.svelte-1p1awwn {font-size:14px;font-weight:600;color:var(--mv-accent-color, #c9a66b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;}\n\n /* 채팅 네비게이션 */.header-chat-nav.svelte-1p1awwn {display:flex;align-items:center;justify-content:center;gap:4px;flex:1;}.nav-chat-btn.svelte-1p1awwn {background:none;border:none;color:rgba(255, 255, 255, 0.6);padding:6px;cursor:pointer;border-radius:6px;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;}.nav-chat-btn.svelte-1p1awwn:active:not(:disabled) {background:rgba(201, 166, 107, 0.2);color:var(--mv-accent-color, #c9a66b);}.nav-chat-btn.svelte-1p1awwn:disabled {opacity:0.3;cursor:not-allowed;}.header-chat-index.svelte-1p1awwn {font-size:12px;font-weight:500;color:rgba(255, 255, 255, 0.6);background:rgba(255, 255, 255, 0.08);padding:4px 8px;border-radius:8px;display:flex;align-items:center;gap:4px;}.chat-position.svelte-1p1awwn {font-size:10px;opacity:0.7;}\n\n /* 액션 버튼들 */.header-action-buttons.svelte-1p1awwn {display:flex;align-items:center;gap:2px;}.header-action-buttons.svelte-1p1awwn button,\n .header-action-buttons.svelte-1p1awwn .header-action-btn {background:none;border:none;padding:6px;cursor:pointer;color:rgba(255, 255, 255, 0.6);border-radius:8px;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;}.header-action-buttons.svelte-1p1awwn button:active,\n .header-action-buttons.svelte-1p1awwn .header-action-btn:active {background:rgba(201, 166, 107, 0.2);color:var(--mv-accent-color, #c9a66b);}.header-action-buttons.svelte-1p1awwn button svg,\n .header-action-buttons.svelte-1p1awwn .header-action-btn svg {width:18px;height:18px;}\n\n /* 우측 그룹 */.header-right-group.svelte-1p1awwn {display:flex;align-items:center;gap:8px;}.header-toggle-btn.svelte-1p1awwn {background:rgba(255, 255, 255, 0.1);border:1px solid rgba(255, 255, 255, 0.2);color:var(--mv-accent-color, #c9a66b);padding:4px 10px;font-size:11px;font-weight:700;border-radius:8px;cursor:pointer;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));min-height:32px;}.header-toggle-btn.svelte-1p1awwn:active {background:var(--mv-accent-color, #c9a66b);color:white;transform:scale(0.95);}.header-toggle-btn.active.svelte-1p1awwn {background:var(--mv-accent-color, #c9a66b);color:white;border-color:var(--mv-accent-color, #c9a66b);}.fullscreen-btn.svelte-1p1awwn {display:flex;align-items:center;justify-content:center;padding:4px 8px;}.fullscreen-btn.svelte-1p1awwn svg:where(.svelte-1p1awwn) {flex-shrink:0;}\n\n /* LB 버튼 로딩 상태 */.lb-btn.loading.svelte-1p1awwn {opacity:0.7;cursor:wait;}.lb-btn.loading.svelte-1p1awwn svg {\n animation: svelte-1p1awwn-spin 1s linear infinite;}\n\n @keyframes svelte-1p1awwn-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n\n /* Safe Area */\n @supports (padding-top: env(safe-area-inset-top)) {.header-row-top.svelte-1p1awwn {padding-top:max(10px, env(safe-area-inset-top));}\n }"};function qa(n,t){Un(t,!0),Kr(n,Wa);const e=To.getInstance();let r=$o(t,"thumbnailUrl",3,""),o=$o(t,"name",3,""),i=$o(t,"chatIndex",3,null),a=$o(t,"buttons",19,()=>[]),l=$o(t,"chatIndexPosition",19,()=>({position:0,total:0,isFirst:!0,isLast:!0})),s=$o(t,"showLBButton",3,!1),u=$o(t,"isFullscreen",3,!1),c=$o(t,"isLBLoading",3,!1),f=$o(t,"onBack",3,()=>{}),d=$o(t,"onPrevChat",3,()=>{}),p=$o(t,"onNextChat",3,()=>{}),v=$o(t,"onFullscreenToggle",3,()=>{}),h=$o(t,"onLBToggle",3,()=>{}),g=$o(t,"onSettingsToggle",3,()=>{}),b=jt(null);const m=xt(()=>"undefined"!=typeof navigator&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1));ie(()=>{Ke(b)&&a().length>0&&Ei(a(),Ke(b),{clearContainer:!0,additionalClasses:["header-action-btn"]})});var y=Oa(),w=Yt(y),x=Yt(w),_=Yt(x),k=n=>{var t=Ia();ue(()=>oo(t,`background-image: url('${r()??""}')`)),kr(n,t)},C=n=>{kr(n,La())};$r(_,n=>{r()?n(k):n(C,!1)});var S=Yt(Jt(_,2)),E=Jt(x,2),M=Yt(E);M.__click=function(...n){var t;null==(t=d())||t.apply(this,n)};var z=Jt(M,2),A=Yt(z),j=Jt(A),N=n=>{var t=Pa(),e=Yt(t);ue(()=>Er(e,`(${l().currentIndex??""}/${l().lastIndex??""})`)),kr(n,t)};$r(j,n=>{l().total>0&&n(N)});var $=Jt(z,2);$.__click=function(...n){var t;null==(t=p())||t.apply(this,n)},Jt(E,2).__click=function(...n){var t;null==(t=f())||t.apply(this,n)};var I=Yt(Jt(w,2));Co(I,n=>$t(b,n),()=>Ke(b));var L=Yt(Jt(I,2)),P=n=>{var t=Ta();let e;t.__click=function(...n){var t;null==(t=v())||t.apply(this,n)};var r=Yt(t),o=n=>{kr(n,Fa())},i=n=>{kr(n,Ba())};$r(r,n=>{u()?n(o):n(i,!1)}),ue(()=>{e=eo(t,1,"header-toggle-btn fullscreen-btn svelte-1p1awwn",null,e,{active:u()}),ho(t,"title",u()?"전체화면 해제":"전체화면")}),kr(n,t)};$r(L,n=>{Ke(m)||n(P)});var F=Jt(L,2),B=n=>{var t=Ra();let e;t.__click=function(...n){var t;null==(t=h())||t.apply(this,n)};var r=Yt(t),o=n=>{Si(n,{size:14})},i=n=>{kr(n,function(n=""){var t=Ut(n+"");return mr(t,t),t}("LB"))};$r(r,n=>{c()?n(o):n(i,!1)}),ue(()=>{e=eo(t,1,"header-toggle-btn lb-btn svelte-1p1awwn",null,e,{loading:c()}),t.disabled=c()}),kr(n,t)};$r(F,n=>{s()&&n(B)}),Jt(F,2).__click=function(...n){var t;null==(t=g())||t.apply(this,n)},ue(n=>{Er(S,n),M.disabled=l().isFirst,Er(A,`#${i()??""} `),$.disabled=l().isLast},[()=>{var n;return o()||(null==(n=e.getChar())?void 0:n.name)||"Unknown"}]),kr(n,y),Vn()}vr(["click"]);var Da=yr('<span class="page-number svelte-1slpgjp"> </span>'),Ha=yr('<div class="page-container svelte-1slpgjp"><div class="page-content svelte-1slpgjp"><div class="text-content chattext svelte-1slpgjp"><!></div> <!></div> <!></div>');const Ua={hash:"svelte-1slpgjp",code:".page-container.svelte-1slpgjp {flex:1;overflow:hidden;position:relative;background:var(--mv-page-color, #fdfbf7);margin:10px;border-radius:12px;box-shadow:var(--mv-shadow-medium, 0 4px 24px rgba(0, 0, 0, 0.12)),\n var(--mv-shadow-glow, 0 0 20px rgba(201, 166, 107, 0.15));touch-action:pan-y;}\n\n /* 종이 질감 효과 */.page-container.svelte-1slpgjp::before {content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.02'/%3E%3C/svg%3E\");pointer-events:none;z-index:1;border-radius:12px;}.page-content.svelte-1slpgjp {width:100%;height:100%;display:flex;flex-direction:column;padding:28px 24px;overflow:hidden;position:relative;z-index:2;}.text-content.svelte-1slpgjp {flex:1;font-size:var(--mv-font-size, 17px);line-height:var(--mv-line-height, 1.85);font-family:var(--mv-font-family, 'Pretendard', sans-serif);color:var(--mv-text-color, #2c2c2c);word-break:keep-all;letter-spacing:-0.01em;overflow:hidden;}\n\n /* 텍스트 포맷팅 */.text-content.svelte-1slpgjp p {margin-bottom:1.3em;}.text-content.svelte-1slpgjp p:first-child {text-indent:0;}.text-content.svelte-1slpgjp h1,\n .text-content.svelte-1slpgjp h2,\n .text-content.svelte-1slpgjp h3 {margin:1.8em 0 0.8em;text-indent:0;font-weight:600;color:#1a1a1a;letter-spacing:-0.02em;}.text-content.svelte-1slpgjp h1 {font-size:1.6em;border-bottom:2px solid var(--mv-accent-color, #c9a66b);padding-bottom:0.4em;}.text-content.svelte-1slpgjp mark {background:linear-gradient(\n 120deg,\n rgba(201, 166, 107, 0.2) 0%,\n rgba(201, 166, 107, 0.3) 100%\n );color:inherit;padding:0.1em 0.2em;border-radius:3px;}.text-content.svelte-1slpgjp img {max-width:100%;height:auto;margin:1.2em 0;border-radius:8px;box-shadow:var(--mv-shadow-soft, 0 2px 12px rgba(0, 0, 0, 0.08));}\n\n /* 페이지 번호 */.page-number.svelte-1slpgjp {position:absolute;bottom:12px;right:16px;font-size:11px;color:var(--mv-text-secondary, #6b6b6b);opacity:0.6;z-index:3;}\n\n /* 반응형 */\n @media (min-width: 600px) and (orientation: landscape) {.page-container.svelte-1slpgjp {margin:12px 20px;}.page-content.svelte-1slpgjp {padding:36px 48px;}.text-content.svelte-1slpgjp {max-width:720px;margin:0 auto;font-size:18px;}\n }\n\n @media (min-width: 768px) {.page-container.svelte-1slpgjp {margin:16px 24px;border-radius:16px;}.page-content.svelte-1slpgjp {padding:40px 56px;}.text-content.svelte-1slpgjp {max-width:800px;font-size:18px;line-height:1.9;}\n }"};function Va(n,t){Un(t,!0),Kr(n,Ua);let e=$o(t,"content",3,""),r=$o(t,"pageNum",3,0),o=$o(t,"isLoading",3,!1),i=$o(t,"loadingMessage",3,""),a=$o(t,"liveContentButtons",19,()=>[]),l=jt(null);ie(()=>{Ke(l)&&e()&&requestAnimationFrame(()=>{Ke(l).scrollTop=0,a().length>0&&Mi(Ke(l),a())})});var s=Ha(),u=Yt(s),c=Yt(u);!function(n,t,e=!1,r=!1){var o=n,i="";ue(()=>{var n=je;if(i!==(i=t()??"")&&(null!==n.nodes&&(ge(n.nodes.start,n.nodes.end),n.nodes=null),""!==i)){var a=i+"";e?a=`<svg>${a}</svg>`:r&&(a=`<math>${a}</math>`);var l=br(a);if((e||r)&&(l=Vt(l)),mr(Vt(l),l.lastChild),e||r)for(;Vt(l);)o.before(Vt(l));else o.before(l)}})}(Yt(c),e),Co(c,n=>$t(l,n),()=>Ke(l));var f=Jt(c,2),d=n=>{var t=Da(),e=Yt(t);ue(()=>Er(e,r())),kr(n,t)};$r(f,n=>{r()>0&&n(d)}),Bi(Jt(u,2),{get visible(){return o()},get message(){return i()}}),kr(n,s),Vn()}var Ga=yr('<footer class="reader-footer"><button class="nav-btn prev-btn" title="이전"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="15 18 9 12 15 6"></polyline></svg> <span class="btn-label">이전</span></button> <div class="page-info"><div class="progress-bar"><div class="progress-fill"></div></div> <span class="page-indicator"> </span></div> <button class="nav-btn next-btn" title="다음"><span class="btn-label">다음</span> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="9 18 15 12 9 6"></polyline></svg></button></footer>');vr(["click"]);var Ya=yr("<button> </button>"),Ka=yr('<div class="settings-panel active"><div class="panel-overlay"></div> <div class="panel-content"><div class="panel-header"><h3>설정</h3> <button class="panel-close">✕</button></div> <div class="panel-body"><div class="setting-item"><label for="fontSelector">폰트</label> <div class="font-selector" id="fontSelector"></div></div> <div class="setting-item"><label for="fontSize">글자 크기</label> <div class="range-control"><span class="range-label">작게</span> <input name="fontSize" type="range" min="14" max="20" step="1"/> <span class="range-label">크게</span></div> <span class="setting-value"> </span></div> <div class="setting-item"><label for="lineHeight">줄 간격</label> <div class="range-control"><span class="range-label">좁게</span> <input type="range" name="lineHeight" min="1.4" max="2.2" step="0.1"/> <span class="range-label">넓게</span></div> <span class="setting-value"> </span></div> <div class="setting-item"><label for="themeButtons">테마</label> <div class="theme-buttons" id="themeButtons"><button><span class="theme-preview light"></span> 밝게</button> <button><span class="theme-preview sepia"></span> 세피아</button> <button><span class="theme-preview dark"></span> 어둡게</button></div></div> <div class="setting-item"><button class="custom-css-btn">사용자 CSS 편집</button></div></div></div></div>');function Ja(n,t){Un(t,!0);let e=$o(t,"isOpen",3,!1),r=$o(t,"settings",19,()=>({fontSize:17,lineHeight:1.85,theme:"dark",fontFamily:"Pretendard"})),o=$o(t,"onSettingsChange",3,()=>{}),i=$o(t,"onOpenCustomCss",3,()=>{}),a=$o(t,"onClose",3,()=>{});const l=["Pretendard","나눔스퀘어네오","에스코어드림","레페리포인트","플렉스","스위트","오르빗","스쿨오르빗","프리티나잇","서라운드에어","고운돋움","고운바탕","리디바탕","마루부리","도스고딕","스타더스트","픽시드시스","네오둥근모"];function s(n){o()({...r(),fontSize:Number(n.target.value)})}function u(n){o()({...r(),lineHeight:Number(n.target.value)})}function c(n){o()({...r(),theme:n})}function f(){a()()}function d(n){n.stopPropagation()}var p=_r(),v=Kt(p),h=n=>{var t=Ka(),e=Yt(t);e.__click=f;var p=Jt(e,2);p.__click=d;var v=Yt(p);Jt(Yt(v),2).__click=function(...n){var t;null==(t=a())||t.apply(this,n)};var h=Yt(Jt(v,2));Fr(Jt(Yt(h),2),21,()=>l,Ir,(n,t)=>{var e=Ya();let i;e.__click=()=>{return n=Ke(t),void o()({...r(),fontFamily:n});var n};var a=Yt(e);ue(()=>{i=eo(e,1,"font-option",null,i,{active:r().fontFamily===Ke(t)}),oo(e,`font-family: '${Ke(t)??""}'`),Er(a,Ke(t))}),kr(n,e)});var g=Jt(h,2),b=Jt(Yt(g),2),m=Jt(Yt(b),2);m.__input=s;var y=Yt(Jt(b,2)),w=Jt(g,2),x=Jt(Yt(w),2),_=Jt(Yt(x),2);_.__input=u;var k=Yt(Jt(x,2)),C=Jt(w,2),S=Jt(Yt(C),2),E=Yt(S);let M;E.__click=()=>c("light");var z=Jt(E,2);let A;z.__click=()=>c("sepia");var j=Jt(z,2);let N;j.__click=()=>c("dark"),Yt(Jt(C,2)).__click=function(...n){var t;null==(t=i())||t.apply(this,n)},ue(n=>{po(m,r().fontSize),Er(y,`${r().fontSize??""}px`),po(_,r().lineHeight),Er(k,n),M=eo(E,1,"theme-btn",null,M,{active:"light"===r().theme}),A=eo(z,1,"theme-btn",null,A,{active:"sepia"===r().theme}),N=eo(j,1,"theme-btn",null,N,{active:"dark"===r().theme})},[()=>r().lineHeight.toFixed(1)]),kr(n,t)};$r(v,n=>{e()&&n(h)}),kr(n,p),Vn()}vr(["click","input"]);var Qa=yr('<button class="lb-module-item svelte-1u46v5n"> </button>'),Xa=yr('<div class="lb-modules-list svelte-1u46v5n"></div>'),Za=yr('<div class="lb-empty svelte-1u46v5n">모듈이 없습니다</div>'),nl=yr('<div class="lb-panel active svelte-1u46v5n"><div class="panel-overlay svelte-1u46v5n"></div> <div class="panel-content svelte-1u46v5n"><div class="panel-header svelte-1u46v5n"><h3 class="svelte-1u46v5n">LB 모듈</h3> <button class="panel-close svelte-1u46v5n">✕</button></div> <div class="panel-body svelte-1u46v5n"><!></div></div></div>');const tl={hash:"svelte-1u46v5n",code:".lb-panel.svelte-1u46v5n {position:fixed;top:0;left:0;width:100%;height:100%;z-index:200;display:none;}.lb-panel.active.svelte-1u46v5n {display:block;}.panel-overlay.svelte-1u46v5n {position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);}.panel-content.svelte-1u46v5n {position:absolute;bottom:0;left:0;width:100%;background:var(--mv-page-color, #fdfbf7);border-radius:24px 24px 0 0;max-height:60%;overflow-y:auto;\n animation: svelte-1u46v5n-slideUp 0.35s cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0 -8px 32px rgba(0, 0, 0, 0.2);}\n\n @keyframes svelte-1u46v5n-slideUp {\n from {\n transform: translateY(100%);\n }\n to {\n transform: translateY(0);\n }\n }.panel-header.svelte-1u46v5n {display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid rgba(201, 166, 107, 0.2);position:sticky;top:0;background:var(--mv-page-color, #fdfbf7);z-index:10;}.panel-header.svelte-1u46v5n h3:where(.svelte-1u46v5n) {font-size:18px;font-weight:700;color:var(--mv-text-color, #2c2c2c);letter-spacing:-0.02em;margin:0;}.panel-close.svelte-1u46v5n {background:none;border:none;font-size:20px;color:var(--mv-text-secondary, #6b6b6b);cursor:pointer;padding:8px 12px;border-radius:8px;transition:all var(--mv-transition-fast, 0.15s);line-height:1;}.panel-close.svelte-1u46v5n:active {background:var(--mv-accent-light, rgba(201, 166, 107, 0.15));color:var(--mv-accent-color, #c9a66b);}.panel-body.svelte-1u46v5n {padding:16px 24px 24px;}.lb-modules-list.svelte-1u46v5n {display:flex;flex-direction:column;gap:10px;}.lb-module-item.svelte-1u46v5n {padding:16px;background:rgba(201, 166, 107, 0.08);border-radius:12px;cursor:pointer;transition:all var(--mv-transition-fast, 0.15s);font-size:15px;font-weight:500;color:var(--mv-text-color, #2c2c2c);border:1px solid transparent;text-align:left;width:100%;}.lb-module-item.svelte-1u46v5n:active {background:rgba(201, 166, 107, 0.2);border-color:var(--mv-accent-color, #c9a66b);transform:scale(0.98);}.lb-empty.svelte-1u46v5n {text-align:center;color:var(--mv-text-secondary, #6b6b6b);font-size:14px;padding:20px;}\n\n /* Safe Area */\n @supports (padding-bottom: env(safe-area-inset-bottom)) {.panel-body.svelte-1u46v5n {padding-bottom:max(24px, env(safe-area-inset-bottom));}\n }\n\n /* 태블릿 */\n @media (min-width: 768px) {.panel-content.svelte-1u46v5n {max-width:480px;left:50%;transform:translateX(-50%);}\n\n @keyframes svelte-1u46v5n-slideUp {\n from {\n transform: translateX(-50%) translateY(100%);\n }\n to {\n transform: translateX(-50%) translateY(0);\n }\n }\n }"};function el(n,t){Un(t,!0),Kr(n,tl);let e=$o(t,"isOpen",3,!1),r=$o(t,"modules",19,()=>[]),o=$o(t,"onModuleClick",3,()=>{}),i=$o(t,"onClose",3,()=>{});function a(){i()()}function l(n){n.stopPropagation()}var s=_r(),u=Kt(s),c=n=>{var t=nl(),e=Yt(t);e.__click=a;var s=Jt(e,2);s.__click=l;var u=Yt(s);Jt(Yt(u),2).__click=function(...n){var t;null==(t=i())||t.apply(this,n)};var c=Yt(Jt(u,2)),f=n=>{var t=Xa();Fr(t,21,r,Ir,(n,t)=>{var e=Qa();e.__click=()=>function(n){o()(n),i()()}(Ke(t));var r=Yt(e);ue(n=>Er(r,n),[()=>function(n,t=30){return n?n.length>t?n.slice(0,t)+"...":n:""}(Ke(t).label)]),kr(n,e)}),kr(n,t)},d=n=>{kr(n,Za())};$r(c,n=>{r().length>0?n(f):n(d,!1)}),kr(n,t)};$r(u,n=>{e()&&n(c)}),kr(n,s),Vn()}vr(["click"]);var rl=yr('<div class="modal-overlay svelte-1q9xlcg"><div class="modal-content svelte-1q9xlcg"><div class="modal-header svelte-1q9xlcg"><h3 class="svelte-1q9xlcg">사용자 CSS 편집</h3> <button class="modal-close svelte-1q9xlcg">×</button></div> <div class="modal-body svelte-1q9xlcg"><textarea placeholder="여기에 CSS를 입력하세요..." spellcheck="false" class="svelte-1q9xlcg"></textarea></div> <div class="modal-footer svelte-1q9xlcg"><button class="modal-btn secondary svelte-1q9xlcg">초기화</button> <button class="modal-btn primary svelte-1q9xlcg">적용</button></div></div></div>');const ol={hash:"svelte-1q9xlcg",code:".modal-overlay.svelte-1q9xlcg {position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.7);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:300;display:flex;justify-content:center;align-items:center;padding:20px;\n animation: svelte-1q9xlcg-fadeIn 0.25s ease;}\n\n @keyframes svelte-1q9xlcg-fadeIn {\n from { opacity: 0; }\n to { opacity: 1; }\n }.modal-content.svelte-1q9xlcg {background:var(--mv-page-color, #fdfbf7);border-radius:16px;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0, 0, 0, 0.4);\n animation: svelte-1q9xlcg-modalSlideIn 0.25s ease-out;}\n\n @keyframes svelte-1q9xlcg-modalSlideIn {\n from {\n opacity: 0;\n transform: translateY(-20px) scale(0.95);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }.modal-header.svelte-1q9xlcg {display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(0, 0, 0, 0.1);}.modal-header.svelte-1q9xlcg h3:where(.svelte-1q9xlcg) {font-size:16px;font-weight:700;color:var(--mv-text-color, #2c2c2c);margin:0;}.modal-close.svelte-1q9xlcg {background:none;border:none;font-size:24px;color:var(--mv-text-secondary, #6b6b6b);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all var(--mv-transition-fast, 0.15s);line-height:1;}.modal-close.svelte-1q9xlcg:active {background:rgba(0, 0, 0, 0.1);}.modal-body.svelte-1q9xlcg {flex:1;padding:16px 20px;overflow:auto;}.modal-body.svelte-1q9xlcg textarea:where(.svelte-1q9xlcg) {width:100%;height:200px;padding:14px;border:2px solid rgba(0, 0, 0, 0.1);border-radius:10px;font-family:'Consolas', 'Monaco', monospace;font-size:13px;line-height:1.5;resize:vertical;background:rgba(0, 0, 0, 0.02);color:var(--mv-text-color, #2c2c2c);}.modal-body.svelte-1q9xlcg textarea:where(.svelte-1q9xlcg):focus {outline:none;border-color:var(--mv-accent-color, #c9a66b);}.modal-footer.svelte-1q9xlcg {display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid rgba(0, 0, 0, 0.1);}.modal-btn.svelte-1q9xlcg {padding:10px 18px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--mv-transition-fast, 0.15s);}.modal-btn.primary.svelte-1q9xlcg {background:var(--mv-accent-color, #c9a66b);color:white;border:none;}.modal-btn.primary.svelte-1q9xlcg:active {opacity:0.9;transform:scale(0.98);}.modal-btn.secondary.svelte-1q9xlcg {background:transparent;color:var(--mv-text-secondary, #6b6b6b);border:2px solid rgba(0, 0, 0, 0.15);}.modal-btn.secondary.svelte-1q9xlcg:active {background:rgba(0, 0, 0, 0.05);}"};vr(["click"]);class il{constructor(n={}){this.splittableTags=n.splittableTags||["p","div"],this.minHeightRatio=n.minHeightRatio||.85}isSplittable(n){var t;const e=null==(t=n.tagName)?void 0:t.toLowerCase();if(!this.splittableTags.includes(e))return!1;return!n.querySelector("mark, strong, em, a, code")}splitElement(n,t,e){if(!this.isSplittable(n))return[n.cloneNode(!0)];const r=n.cloneNode(!0);t.innerHTML="",t.appendChild(r);return t.scrollHeight<=e?[n.cloneNode(!0)]:this._splitBySentence(n,t,e)}_splitBySentence(n,t,e){console.log("splitBySentence");const r=n.tagName.toLowerCase(),o=n.innerText||n.textContent||"",i=this._splitIntoSentences(o);if(i.length<=1)return this._splitByWords(n,t,e);const a=[];let l=[];for(const s of i){const o=[...l,s].join(""),i=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{i.setAttribute(n.name,n.value)}),i.textContent=o,t.innerHTML="",t.appendChild(i),t.scrollHeight<=e)l.push(s);else{if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}l=[s]}}if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}return a.length>0?a:[n.cloneNode(!0)]}_splitIntoSentences(n){return n.split(new RegExp("(?<=[.!?。!?])\\s*")).filter(n=>n.length>0)}_splitByWords(n,t,e){const r=n.tagName.toLowerCase(),o=n.innerText||n.textContent||"",i=this._tokenize(o);if(0===i.length)return[n.cloneNode(!0)];const a=[];let l=0;for(;l<i.length;){let o=l+1,s=l+1;for(;o<=i.length;){const a=i.slice(l,o).join(""),u=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=a,t.innerHTML="",t.appendChild(u),!(t.scrollHeight<=e))break;s=o,o++}const u=document.createElement(r);Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=i.slice(l,s).join(""),a.push(u),l=s}return a}_tokenize(n){const t=[];let e="",r=null;for(const o of n){const n=this._getCharType(o);"space"===n?(e&&(t.push(e),e=""),t.push(o)):"korean"===n?(e&&"korean"!==r&&(t.push(e),e=""),e&&t.push(e),t.push(o),e=""):(r&&r!==n&&"space"!==r&&(t.push(e),e=""),e+=o),r=n}return e&&t.push(e),t}_getCharType(n){return/\s/.test(n)?"space":/[\u3131-\uD79D]/.test(n)?"korean":/[\u3040-\u30FF]/.test(n)?"japanese":/[\u4E00-\u9FFF]/.test(n)?"chinese":/[a-zA-Z]/.test(n)?"english":/[0-9]/.test(n)?"number":"other"}static createMeasureContainer(n){const t=document.createElement("div"),e=getComputedStyle(n);return t.style.cssText=`\n position: absolute;\n visibility: hidden;\n pointer-events: none;\n width: ${n.clientWidth}px;\n padding: ${e.padding};\n font-size: ${e.fontSize};\n line-height: ${e.lineHeight};\n font-family: ${e.fontFamily};\n overflow: hidden;\n `,t}}var al=yr('<div class="risu-chat"><div class="mobile-reader"><!> <!> <!> <!> <!> <!> <!></div></div>');function ll(n,t){Un(t,!0);let e=$o(t,"chatHtml",7,""),r=$o(t,"chatIndex",3,0),o=$o(t,"chatPage",3,0),i=$o(t,"chaId",3,null),a=$o(t,"initialLoading",3,!1),l=jt(Bt([])),s=jt(0),u=jt(Bt({fontSize:17,lineHeight:1.85,theme:"dark",fontFamily:"Pretendard"})),c=jt(Bt({thumbnailUrl:"",name:"",chatIndex:0,buttons:[]})),f=jt(Bt([])),d=jt(Bt(new Map)),p=jt(Bt([])),v=jt(""),h=jt(null),g=jt(""),b=jt(Bt({position:0,total:0,isFirst:!0,isLast:!0})),m=jt(Bt([])),y=jt(!1),w=jt(!1),x=jt(!1),_=jt(!1),k=jt(!1),C=jt(""),S=jt(!1),E=jt(""),M=jt(!1),z=jt(null),A=jt(!1);ie(()=>{$t(k,a()),$t(C,a()?"Loading...":"",!0)});let j=new il({splittableTags:["p","div"]}),N=jt(null),$=jt("100%"),I=null,L=null,P=null,F=null,B=null,T=null,R=null,O=xt(()=>Ke(l).length),W=xt(()=>Ke(l)[Ke(s)]||""),q=xt(()=>Ke(s)+1);function D(){$t(m,bi(),!0),$t(b,yi(r()),!0)}async function H(){if(!e())return;$t(g,e(),!0);const n=(new DOMParser).parseFromString(e(),"text/html");$t(c,oa(n),!0),Ke(c).chatIndex=r();const t=gi(r());t&&(Ke(c).buttons=ia(t),$t(p,aa(t),!0),$t(d,la(t),!0)),$t(f,sa(n),!0);const o=n.querySelector(".chattext");o&&(ta(o),$t(h,o.cloneNode(!0),!0),await ua(),await U(),Ke(k)&&setTimeout(()=>{$t(k,!1),$t(C,"")},100))}async function U(){if(!Ke(h))return;const n=document.querySelector(".mobile-reader .text-content");if(!n){await ua();if(!document.querySelector(".mobile-reader .text-content"))return}const t=na(n||document.body);document.body.appendChild(t);try{$t(l,ea(Ke(h).cloneNode(!0),t,j),!0)}finally{document.body.removeChild(t)}}function V(){P&&clearTimeout(P),P=setTimeout(()=>{!async function(){if(!Ke(h))return;const n=Ke(s);$t(l,[],!0),$t(s,0),await ua(),await U();const t=Math.max(0,Ke(l).length-1);$t(s,Math.min(n,t),!0)}()},300)}function G(){const n=gi(r());if(n){const t=n.outerHTML;t!==Ke(g)&&($t(g,t,!0),e(t),H())}}function Y(n){$t(E,n,!0),$t(M,!1),$t(z,null),$t(S,!0)}function K(n){n!==r()&&cl(n,!1,!0)}function J(){Ke(s)>=Ke(l).length-1?Z():Lt(s)}function Q(){0!==Ke(s)?Lt(s,-1):X()}function X(){const{index:n,isFirst:t}=mi(r(),"prev");null!==n?cl(n,!1,!0):t&&Y("현재 채팅의 첫 번째 페이지입니다")}function Z(){const{index:n,isLast:t}=mi(r(),"next");null!==n?cl(n,!1,!0):t&&Y("현재 채팅의 마지막 페이지입니다")}ie(()=>{Ke(N)&&(Ke(N).style.setProperty("--mv-font-size",`${Ke(u).fontSize}px`),Ke(N).style.setProperty("--mv-line-height",String(Ke(u).lineHeight)),Ke(N).style.setProperty("--mv-font-family",Ke(u).fontFamily),Ke(N).style.setProperty("--risu-font-family",Ke(u).fontFamily),Ke(N).setAttribute("data-theme",Ke(u).theme))}),Io(async()=>{const n=vi(pi.chatScreen.textarea);if(n){const t=n.scrollHeight+10;$t($,`calc(100% - ${t}px)`),I=new ResizeObserver(n=>{for(const t of n){const n=t.target.scrollHeight+10;$t($,`calc(100% - ${n}px)`)}}),I.observe(n),di.isNil(L)||(L.disconnect(),L=null),L=new MutationObserver(()=>{nn()}),L.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style","class"]})}$t(u,pa(),!0),$t(v,ha(),!0),Ke(v)&&ba(Ke(v)),D(),await ua(),await H(),F=setInterval(G,1e3),R=function(n={}){const{onSwipeLeft:t=()=>{},onSwipeRight:e=()=>{},threshold:r=50,velocityThreshold:o=.3,maxVerticalRatio:i=.75}=n;let a=0,l=0,s=0,u=!1;return{touchStart:function(n){if(1!==n.touches.length)return;const t=n.touches[0];a=t.clientX,l=t.clientY,s=Date.now(),u=!0},touchMove:function(n){if(!u||1!==n.touches.length)return;const t=n.touches[0];t.clientX,t.clientY},touchEnd:function(n){if(!u)return;u=!1;const c=n.changedTouches[0],f=c.clientX-a,d=c.clientY-l,p=Date.now()-s;if(Math.abs(d)>Math.abs(f)*i)return;const v=Math.abs(f)/p;(Math.abs(f)>r||v>o&&Math.abs(f)>30)&&(f>0?e():t())},touchCancel:function(){u=!1}}}({onSwipeLeft:J,onSwipeRight:Q,threshold:50}),Ke(N)&&(Ke(N).addEventListener("touchstart",R.touchStart,{passive:!0}),Ke(N).addEventListener("touchmove",R.touchMove,{passive:!0}),Ke(N).addEventListener("touchend",R.touchEnd,{passive:!0}));const t=To.getInstance();B=t.subscribeToChar(n=>({chatPage:null==n?void 0:n.chatPage,chaId:null==n?void 0:n.chaId}),n=>{n.chatPage===o()&&n.chaId===i()||(console.log("[MobileBookViewer] Chat page or character changed, reloading..."),cl(null,!1))},500),T=t.subscribeToChar(n=>{var t,e,r;return null==(r=null==(e=null==(t=null==n?void 0:n.chats)?void 0:t[n.chatPage])?void 0:e.message)?void 0:r.length},n=>{var e,r,o;const i=bi();if(i.length!==Ke(m).length){const l=i.filter(n=>!Ke(m).includes(n));if(l.length>0){const i=t.getChar(),s=null==(o=null==(r=null==(e=null==i?void 0:i.chats)?void 0:e[i.chatPage])?void 0:r.message)?void 0:o[n-1],u=null==s?void 0:s.role,c=(null==s?void 0:s.data)||"";if("char"===u)if(c.includes("<lb-rerolling>"))$t(A,!0);else{const n=l[l.length-1];a=()=>K(n),$t(E,"새로운 응답이 수신되었습니다. 클릭 시 이동합니다.",!0),$t(M,!0),$t(z,a,!0),$t(S,!0)}else if("user"===u){K(l[l.length-1])}}else Ke(A)&&$t(A,!1);$t(m,i,!0),D()}var a},1e3)}),Lo(()=>{P&&clearTimeout(P),F&&clearInterval(F),I&&(I.disconnect(),I=null),L&&(L.disconnect(),L=null),Ke(N)&&R&&(Ke(N).removeEventListener("touchstart",R.touchStart),Ke(N).removeEventListener("touchmove",R.touchMove),Ke(N).removeEventListener("touchend",R.touchEnd)),B&&B(),T&&T();const n=document.getElementById("book-viewer-custom-css");n&&n.remove()});const nn=di.debounce(function(){const n=vi(pi.setting.root);n&&(console.log(n),fl())},100);var tn=al();pr("keydown",Ot,function(n){var e;if(Ke(x))"Escape"===n.key&&$t(x,!1);else if(Ke(y)||Ke(w))"Escape"===n.key&&($t(y,!1),$t(w,!1));else{if("Escape"!==n.key){const n=document.activeElement;if(n&&("TEXTAREA"===n.tagName||"INPUT"===n.tagName||n.isContentEditable))return;const t=window.getSelection();if(t&&t.toString().length>0)return}"ArrowRight"===n.key||"PageDown"===n.key||" "===n.key?(n.preventDefault(),J()):"ArrowLeft"===n.key||"PageUp"===n.key?(n.preventDefault(),Q()):"Escape"===n.key&&(null==(e=t.onClose)||e.call(t))}}),pr("resize",Ot,function(){V()}),pr("fullscreenchange",Wt,function(){$t(_,!!document.fullscreenElement)});var en=Yt(tn);let rn;var on=Yt(en);{let n=xt(()=>Ke(f).length>0);qa(on,{get thumbnailUrl(){return Ke(c).thumbnailUrl},get name(){return Ke(c).name},get chatIndex(){return Ke(c).chatIndex},get buttons(){return Ke(c).buttons},get chatIndexPosition(){return Ke(b)},get showLBButton(){return Ke(n)},get isFullscreen(){return Ke(_)},get isLBLoading(){return Ke(A)},get onBack(){return t.onClose},onPrevChat:X,onNextChat:Z,onFullscreenToggle:async function(){var n,t,e;try{document.fullscreenElement?(await(null==(e=document.exitFullscreen)?void 0:e.call(document)),$t(_,!1)):(await(null==(t=null==(n=document.documentElement)?void 0:n.requestFullscreen)?void 0:t.call(n)),$t(_,!0))}catch(r){console.warn("[MobileViewer] Fullscreen error:",r)}},onLBToggle:function(){$t(w,!Ke(w)),Ke(w)&&$t(y,!1)},onSettingsToggle:function(){$t(y,!Ke(y)),Ke(y)&&$t(w,!1)}})}var an=Jt(on,2);Va(an,{get content(){return Ke(W)},get pageNum(){return Ke(q)},get isLoading(){return Ke(k)},get loadingMessage(){return Ke(C)},get liveContentButtons(){return Ke(p)}});var ln=Jt(an,2);{let n=xt(()=>0===Ke(s)),t=xt(()=>Ke(s)>=Ke(O)-1);!function(n,t){let e=$o(t,"currentPage",3,0),r=$o(t,"totalPages",3,0),o=$o(t,"isFirst",3,!0),i=$o(t,"isLast",3,!0),a=$o(t,"onPrev",3,()=>{}),l=$o(t,"onNext",3,()=>{}),s=$o(t,"prevDisabled",3,!1),u=$o(t,"nextDisabled",3,!1),c=xt(()=>r()>0?(e()+1)/r()*100:0);var f=Ga(),d=Yt(f);d.__click=function(...n){var t;null==(t=a())||t.apply(this,n)};var p=Jt(d,2),v=Yt(p),h=Yt(v),g=Yt(Jt(v,2)),b=Jt(p,2);b.__click=function(...n){var t;null==(t=l())||t.apply(this,n)},ue(()=>{d.disabled=o()&&s(),oo(h,`width: ${Ke(c)??""}%`),Er(g,`${e()+1} / ${r()??""}`),b.disabled=i()&&u()}),kr(n,f)}(ln,{get currentPage(){return Ke(s)},get totalPages(){return Ke(O)},get isFirst(){return Ke(b).isFirst},get isLast(){return Ke(b).isLast},onPrev:Q,onNext:J,get prevDisabled(){return Ke(n)},get nextDisabled(){return Ke(t)}})}var sn=Jt(ln,2);Ja(sn,{get isOpen(){return Ke(y)},get settings(){return Ke(u)},onSettingsChange:function(n){$t(u,n,!0),va(Ke(u)),V()},onOpenCustomCss:function(){$t(y,!1),$t(x,!0)},onClose:()=>$t(y,!1)});var un=Jt(sn,2);el(un,{get isOpen(){return Ke(w)},get modules(){return Ke(f)},onModuleClick:function(n){const t=n.dataId||n.risuBtn;if(t&&Ke(d).has(t)){const n=Ke(d).get(t),e=new MouseEvent("click",{bubbles:!0,cancelable:!0});n.dispatchEvent(e)}},onClose:()=>$t(w,!1)});var cn=Jt(un,2);!function(n,t){Un(t,!0),Kr(n,ol);let e=$o(t,"isOpen",3,!1),r=$o(t,"initialCss",3,""),o=$o(t,"onApply",3,()=>{}),i=$o(t,"onReset",3,()=>{}),a=$o(t,"onClose",3,()=>{}),l=jt("");function s(){o()(Ke(l)),a()()}function u(){$t(l,""),i()()}function c(){a()()}function f(n){n.stopPropagation()}ie(()=>{e()&&$t(l,r())});var d=_r();pr("keydown",Ot,function(n){"Escape"===n.key&&a()()});var p=Kt(d),v=n=>{var t=rl();t.__click=c;var e=Yt(t);e.__click=f;var r=Yt(e);Jt(Yt(r),2).__click=function(...n){var t;null==(t=a())||t.apply(this,n)};var o=Jt(r,2),i=Yt(o),d=Yt(Jt(o,2));d.__click=u,Jt(d,2).__click=s,wo(i,()=>Ke(l),n=>$t(l,n)),kr(n,t)};$r(p,n=>{e()&&n(v)}),kr(n,d),Vn()}(cn,{get isOpen(){return Ke(x)},get initialCss(){return Ke(v)},onApply:function(n){$t(v,n,!0),ga(n),ba(n),$t(x,!1),V()},onReset:function(){$t(v,""),ma(),V()},onClose:()=>$t(x,!1)}),Xi(Jt(cn,2),{get message(){return Ke(E)},get visible(){return Ke(S)},duration:2e3,get clickable(){return Ke(M)},get onClick(){return Ke(z)},onHide:function(){$t(S,!1),$t(E,""),$t(M,!1),$t(z,null)}}),Co(en,n=>$t(N,n),()=>Ke(N)),ue(()=>{ho(tn,"data-chat-index",r()),ho(tn,"data-chat-page",o()),ho(tn,"data-char-id",i()),ho(en,"data-theme",Ke(u).theme),rn=oo(en,"",rn,{height:Ke($),padding:"unset !important"})}),kr(n,tn),Vn()}const sl="mobile-book-viewer",ul="mobile-viewer";function cl(n=null,t=!0,e=!1){if(t&&Ho(sl))return void fl();Ho(sl)&&Do(sl);const r=To.getInstance(),o=null!=n?Number(n):r.getLastChatIndex()-1,i=gi(o);if(!i)return void console.warn("[MobileViewer] Chat element not found for index:",o);const a=i.outerHTML,l=r.getCurrentChatPage(),s=r.getChaId(),u=vi(pi.chatScreen.displayContainer);u&&Uo(u,{overflow:"hidden"},ul),qo({id:sl,component:ll,target:document.body,props:{chatHtml:a,chatIndex:o,chatPage:l,chaId:s,onClose:fl,initialLoading:e}})}async function fl(){var n;const t=vi(pi.chatScreen.displayContainer);t&&Vo(t,ul),document.fullscreenElement&&await(null==(n=document.exitFullscreen)?void 0:n.call(document)),Do(sl)}function dl(){return Ho(sl)}const pl=Object.freeze(Object.defineProperty({__proto__:null,closeMobileViewer:fl,isMobileViewerOpen:dl,openMobileViewer:cl,toggleMobileViewer:function(n=null){dl()?fl():cl(n,!1,!1)}},Symbol.toStringTag,{value:"Module"}))});
|
|
8
|
+
//@link https://unpkg.com/risu-ebooklike-viewer@0.2.0/dist/risu-ebooklike-viewer.js
|
|
9
|
+
!function(){"use strict";try{if("undefined"!=typeof document){var e=document.createElement("style");e.appendChild(document.createTextNode('@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css";@import"//fonts.googleapis.com/earlyaccess/notosanskr.css";.burger-menu{z-index:10}.censored-image-container{position:relative;display:inline-block}.censored-overlay{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:10;background-size:cover;background-position:center;background-repeat:no-repeat;transition:all 1s cubic-bezier(.25,.46,.45,.94)}.censored-overlay.vanished{opacity:0;transform:scale(1.5) rotate(10deg);filter:blur(20px) grayscale(100%);pointer-events:none}.update-dialog-module__udRoot--bWc9J{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483646;display:grid;place-items:center;background:#0006;padding:16px}.update-dialog-module__udCard---wy8T{width:min(520px,100%);max-height:90vh;border-radius:16px;padding:20px;background:var(--bg, #111);color:var(--fg, #eaeaea);box-shadow:0 10px 30px #00000059;transform:scale(.97);animation:update-dialog-module__udPop--0Vb0B .16s ease-out forwards;overflow-y:auto}.update-dialog-module__udTitle--5imsi{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.update-dialog-module__udTitle--5imsi h3{margin:0;font-size:18px;font-weight:700;word-break:break-word;flex:1 1 auto;min-width:0}.update-dialog-module__udPill--leinK{font:12px/1.8 system-ui;padding:0 8px;border-radius:999px;background:#2a2a2a;color:#cfcfcf;white-space:nowrap;flex-shrink:0}.update-dialog-module__udSub--zfs1y{margin:8px 0 12px;color:#9aa0a6;font:13px/1.5 system-ui;word-break:break-word}.update-dialog-module__udList--jnFg8{margin:10px 0 16px;padding-left:18px;max-height:180px;overflow-y:auto;overflow-x:hidden}.update-dialog-module__udList--jnFg8 li{margin:6px 0;word-break:break-word;overflow-wrap:break-word}.update-dialog-module__udFeat--MSXJY::marker{content:"✨ "}.update-dialog-module__udFix--18UZ3::marker{content:"🔧 "}.update-dialog-module__udPerf--bRifN::marker{content:"⚡ "}.update-dialog-module__udBreak--jl-Bf::marker{content:"⚠️ "}.update-dialog-module__udActions--5tqy2{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.update-dialog-module__udBtn--IHB-y{border:0;padding:10px 12px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;white-space:nowrap;flex:0 1 auto}.update-dialog-module__udBtnPrimary--ZlLFd{border:0;padding:10px 12px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;background:#4f7cff;color:#fff;white-space:nowrap;flex:0 1 auto}.update-dialog-module__udBtnGhost--Ly-cb{border:0;padding:10px 12px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;background:transparent;color:#cfcfcf;white-space:nowrap;flex:0 1 auto}.update-dialog-module__udBtn--IHB-y:hover,.update-dialog-module__udBtnPrimary--ZlLFd:hover,.update-dialog-module__udBtnGhost--Ly-cb:hover{filter:brightness(1.05)}@media(max-width:480px){.update-dialog-module__udCard---wy8T{padding:16px;border-radius:12px}.update-dialog-module__udTitle--5imsi{gap:8px}.update-dialog-module__udTitle--5imsi h3{font-size:16px}.update-dialog-module__udPill--leinK{font-size:11px;padding:0 6px}.update-dialog-module__udSub--zfs1y{font-size:12px;margin:6px 0 10px}.update-dialog-module__udList--jnFg8{font-size:14px;max-height:150px;padding-left:16px}.update-dialog-module__udList--jnFg8 li{margin:5px 0;line-height:1.5}.update-dialog-module__udActions--5tqy2{flex-direction:column;gap:8px}.update-dialog-module__udBtn--IHB-y,.update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udBtnGhost--Ly-cb{width:100%;padding:11px 16px;font-size:14px}}@media(min-width:481px)and (max-width:600px){.update-dialog-module__udCard---wy8T{padding:18px}.update-dialog-module__udActions--5tqy2{gap:6px}.update-dialog-module__udBtn--IHB-y,.update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udBtnGhost--Ly-cb{padding:9px 11px;font-size:13px}}@media(prefers-color-scheme:light){:root{--bg: #fff;--fg: #111}.update-dialog-module__udCard---wy8T{background:#fff;color:#111}.update-dialog-module__udPill--leinK{background:#eef2ff;color:#1f3fb3}.update-dialog-module__udSub--zfs1y{color:#4b5563}}@media(prefers-reduced-motion:reduce){.update-dialog-module__udCard---wy8T{animation:none;transform:none}}@keyframes update-dialog-module__udPop--0Vb0B{to{transform:scale(1)}}.update-dialog-module__udAlert--GJ6WI{max-width:420px;text-align:center}.update-dialog-module__udAlertMessage--nJfX4{margin:16px 0 20px;font-size:16px;line-height:1.6;color:var(--fg, #eaeaea);white-space:pre-line;word-break:break-word}.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udActions--5tqy2{justify-content:center}.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtn--IHB-y,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnGhost--Ly-cb{min-width:120px}@media(max-width:480px){.update-dialog-module__udAlert--GJ6WI{max-width:100%}.update-dialog-module__udAlertMessage--nJfX4{font-size:15px;margin:12px 0 16px}.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtn--IHB-y,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnPrimary--ZlLFd,.update-dialog-module__udAlert--GJ6WI .update-dialog-module__udBtnGhost--Ly-cb{min-width:100px;padding:11px 16px}}@media(prefers-color-scheme:light){.update-dialog-module__udAlertMessage--nJfX4{color:var(--fg, #111)}}.update-dialog-module__udLoading----KQf{max-width:320px;text-align:center;padding:32px 24px}.update-dialog-module__udLoadingSpinner--0OgBH{display:flex;justify-content:center;align-items:center;margin-bottom:20px}.update-dialog-module__udLoadingSvg--k5e0b{width:50px;height:50px;animation:update-dialog-module__udRotate--gve2C 1.4s linear infinite}.update-dialog-module__udLoadingCircle--Q78XG{stroke:#4f7cff;stroke-linecap:round;animation:update-dialog-module__udDash--TGdW5 1.4s ease-in-out infinite}.update-dialog-module__udLoadingMessage---UM99{font-size:15px;line-height:1.6;color:var(--fg, #eaeaea);font-weight:500;word-break:break-word}@media(max-width:480px){.update-dialog-module__udLoading----KQf{max-width:100%;padding:28px 20px}.update-dialog-module__udLoadingSpinner--0OgBH{margin-bottom:16px}.update-dialog-module__udLoadingSvg--k5e0b{width:44px;height:44px}.update-dialog-module__udLoadingMessage---UM99{font-size:14px}}@keyframes update-dialog-module__udRotate--gve2C{to{transform:rotate(360deg)}}@keyframes update-dialog-module__udDash--TGdW5{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}@media(prefers-color-scheme:light){.update-dialog-module__udLoadingMessage---UM99{color:var(--fg, #111)}}@media(prefers-reduced-motion:reduce){.update-dialog-module__udLoadingSvg--k5e0b{animation:none}.update-dialog-module__udLoadingCircle--Q78XG{animation:none;stroke-dasharray:90,150}}@font-face{font-family:나눔스퀘어네오;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:에스코어드림;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff) format("woff")}@font-face{font-family:레페리포인트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2201-2@1.0/LeferiPoint-WhiteObliqueA.woff) format("woff")}@font-face{font-family:플렉스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-07@1.0/IBMPlexSansKR-Regular.woff) format("woff")}@font-face{font-family:스위트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2304-2@1.0/SUITE-Regular.woff2) format("woff2")}@font-face{font-family:오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2310@1.0/Orbit-Regular.woff2) format("woff2")}@font-face{font-family:스쿨오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2307-2@1.0/HakgyoansimWoojuR.woff2) format("woff2")}@font-face{font-family:프리티나잇;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Oneprettynight.woff) format("woff")}@font-face{font-family:서라운드에어;src:url(https://gcore.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/Cafe24SsurroundAir.woff) format("woff")}@font-face{font-family:고운돋움;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunDodum-Regular.woff) format("woff")}@font-face{font-family:고운바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunBatang-Regular.woff) format("woff")}@font-face{font-family:리디바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.0/RIDIBatang.woff) format("woff")}@font-face{font-family:마루부리;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2) format("woff2"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.ttf) format("truetype")}@font-face{font-family:도스고딕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_eight@1.0/DOSGothic.woff) format("woff")}@font-face{font-family:스타더스트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/PFStardust.woff) format("woff")}@font-face{font-family:픽시드시스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/DungGeunMo.woff) format("woff")}@font-face{font-family:네오둥근모;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.3/NeoDunggeunmo.woff) format("woff")}.pc-viewer-container{position:absolute;top:0;left:0;width:100%;height:100%}.pc-viewer-container>div{padding:unset!important;margin:unset!important;justify-content:unset!important;align-items:unset!important}.pc-viewer-container>div>div{margin:unset!important;justify-content:unset!important}.book-viewer-root,.book-viewer-root [data-theme=light]{--bv-bg-gradient-start: #1a1f35;--bv-bg-gradient-end: #2d3654;--bv-page-color: #fdfbf7;--bv-page-shadow: #f5f0e8;--bv-text-color: #2c2c2c;--bv-text-secondary: #6b6b6b;--bv-accent-color: #c9a66b;--bv-accent-hover: #b8935a;--bv-divider-color: #e8e4dc;--bv-spine-gradient: linear-gradient( 90deg, #d4cfc4 0%, hsl(41, 13%, 76%) 50%, #d4cfc4 100% );--bv-shadow-soft: 0 4px 20px rgba(0, 0, 0, .08);--bv-shadow-medium: 0 8px 40px rgba(0, 0, 0, .12);--bv-shadow-strong: 0 20px 60px rgba(0, 0, 0, .2);--bv-shadow-inner: inset 0 0 30px rgba(0, 0, 0, .03);--bv-font-size: 17px;--bv-line-height: 1.9;--bv-font-family: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--bv-font-serif: "Noto Serif KR", "Crimson Text", "Georgia", serif;--bv-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--bv-transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--bv-transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--FontColorStandard: #2c2c2c;--FontColorItalic: #5a5a5a;--FontColorBold: #1a1a1a;--FontColorItalicBold: #5a5a5a;--FontColorQuote1: #0e7490;--FontColorQuote2: #c2410c;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.book-viewer-root[data-theme=sepia]{--bv-bg-gradient-start: #3d3830;--bv-bg-gradient-end: #4a4238;--bv-page-color: #f7f0e3;--bv-page-shadow: #ebe4d7;--bv-text-color: #3d2e1c;--bv-text-secondary: #7a6b5a;--bv-accent-color: #8b7355;--bv-divider-color: #d4c9b8;--bv-spine-gradient: linear-gradient( 90deg, #c4b9a8 0%, #b8ad9c 50%, #c4b9a8 100% );--FontColorBold: #2a1f10;--FontColorItalicBold: #6b5a48;--FontColorStandard: #3d2e1c;--FontColorQuote1: #1a6b6b;--FontColorQuote2: #a85d20;--FontColorItalic: #6b5a48;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.book-viewer-root[data-theme=dark]{--bv-bg-gradient-start: #0d1117;--bv-bg-gradient-end: #161b22;--bv-page-color: var(--risu-theme-bgcolor);--bv-page-shadow: #151a20;--bv-text-color: #c9d1d9;--bv-text-secondary: #8b949e;--bv-accent-color: #d4a574;--bv-accent-hover: #e0b584;--bv-divider-color: #30363d;--bv-spine-gradient: linear-gradient( 90deg, #21262d 0%, #30363d 50%, #21262d 100% );--FontColorStandard: #fafafa;--FontColorItalic: #8c8d93;--FontColorBold: #fafafa;--FontColorItalicBold: #8c8d93;--FontColorQuote1: #8be9fd;--FontColorQuote2: #ffb86c;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.text-content p{margin-top:.65em}.text-content h1{font-weight:800;font-size:2.25em;line-height:1.1111111;color:var(--bv-text-color)}.text-content h2{font-weight:700;font-size:1.5em;line-height:1.3333333;color:var(--bv-text-color)}.text-content h3{font-weight:600;font-size:1.25em;line-height:1.6;color:var(--bv-text-color)}.book-viewer-root{position:absolute;top:0;left:0;width:100%;height:100%;display:flex!important;flex-direction:column;overflow:hidden;z-index:5;font-family:var(--bv-font-family);background:linear-gradient(135deg,var(--bv-bg-gradient-start) 0%,var(--bv-bg-gradient-end) 100%);-webkit-user-select:none;-moz-user-select:none;user-select:none;border-bottom:1px solid var(--bv-divider-color)}.book-viewer-root:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 80%,rgba(201,166,107,.05) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(201,166,107,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.book-viewer-root .book-header{display:flex!important;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--bv-page-color);border-bottom:1px solid var(--bv-divider-color);flex-shrink:0;z-index:1}.book-viewer-root .header-left{display:flex!important;align-items:center;gap:12px;min-width:0;flex:1;margin-left:30px}.book-viewer-root .header-thumbnail{width:40px;height:40px;min-width:40px;border-radius:8px;background-size:cover;background-position:center;background-color:var(--bv-divider-color);box-shadow:0 2px 8px #0000001a}.book-viewer-root .header-info{display:flex!important;align-items:center;gap:12px;min-width:0;flex:1}.book-viewer-root .header-name{font-size:15px;font-weight:600;color:var(--bv-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.book-viewer-root .header-buttons{display:flex!important;align-items:center;gap:4px}.book-viewer-root .header-buttons button{background:none;border:none;padding:6px;cursor:pointer;color:var(--bv-text-secondary);border-radius:6px;transition:all var(--bv-transition-fast);display:flex;align-items:center;justify-content:center}.book-viewer-root .header-buttons button:hover{background:#0000000d;color:var(--bv-accent-color)}.book-viewer-root[data-theme=dark] .header-buttons button:hover{background:#ffffff14}.book-viewer-root .header-buttons button :global(svg){width:18px;height:18px}.book-viewer-root .header-right{display:flex!important;align-items:center;gap:8px;flex-shrink:0}.book-viewer-root .chat-index-nav{display:flex!important;align-items:center;gap:4px}.book-viewer-root .chat-nav-btn{background:none;border:none;padding:4px;cursor:pointer;color:var(--bv-text-secondary);border-radius:4px;transition:all var(--bv-transition-fast);display:flex!important;align-items:center;justify-content:center}.book-viewer-root .chat-nav-btn:hover:not(:disabled){background:#0000000d;color:var(--bv-accent-color)}.book-viewer-root .chat-nav-btn:disabled{opacity:.3;cursor:not-allowed}.book-viewer-root[data-theme=dark] .chat-nav-btn:hover:not(:disabled){background:#ffffff14}.book-viewer-root .header-chat-index{font-size:13px;font-weight:500;color:var(--bv-text-secondary);background:#0000000a;padding:4px 10px;border-radius:12px;display:flex;align-items:center;gap:4px}.book-viewer-root .chat-index-total{font-size:11px;opacity:.7}.book-viewer-root[data-theme=dark] .header-chat-index{background:#ffffff14}.book-viewer-root .close-btn{background:none;border:none;padding:6px;cursor:pointer;color:var(--bv-text-secondary);border-radius:6px;transition:all var(--bv-transition-fast);display:flex!important;align-items:center;justify-content:center}.book-viewer-root .close-btn:hover{background:#0000000d;color:var(--bv-accent-color)}.book-viewer-root .book-pages{position:relative;display:flex!important;flex:1;min-height:0;z-index:1}.book-viewer-root .page{flex:1;background:var(--bv-page-color);position:relative;overflow:hidden}.book-viewer-root .page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,rgba(0,0,0,.02) 0%,transparent 5%,transparent 95%,rgba(0,0,0,.02) 100%),url("data:image/svg+xml,%3Csvg viewBox=\'0 0 200 200\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cfilter id=\'noise\'%3E%3CfeTurbulence type=\'fractalNoise\' baseFrequency=\'0.9\' numOctaves=\'4\' stitchTiles=\'stitch\'/%3E%3C/filter%3E%3Crect width=\'100%25\' height=\'100%25\' filter=\'url(%23noise)\' opacity=\'0.03\'/%3E%3C/svg%3E");pointer-events:none;z-index:1}.book-viewer-root[data-theme=dark] .page:before{opacity:.5}.book-viewer-root .page-left{box-shadow:var(--bv-shadow-inner)}.book-viewer-root .page-left:after{content:"";position:absolute;top:0;right:0;width:40px;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.03) 100%);pointer-events:none}.book-viewer-root .page-right{box-shadow:var(--bv-shadow-inner)}.book-viewer-root .page-right:after{content:"";position:absolute;top:0;left:0;width:40px;height:100%;background:linear-gradient(90deg,rgba(0,0,0,.03) 0%,transparent 100%);pointer-events:none}.book-viewer-root .book-spine{width:8px;background:var(--bv-spine-gradient);position:relative;box-shadow:inset 2px 0 4px #0000001a,inset -2px 0 4px #0000001a}.book-viewer-root .book-spine:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:1px;height:100%;background:#0000001a}.book-viewer-root .page-content{padding:50px 60px 10px;height:100%;display:flex!important;flex-direction:column;color:var(--bv-text-color);position:relative;z-index:2}.book-viewer-root .page-content>.chattext [class*=-image-wrapper]{max-height:100%}.book-viewer-root .page-content>.chattext [class*=-image-container]{min-height:98%;max-height:100%}.book-viewer-root .page-content>.x-risu-image-cell{aspect-ratio:auto}.book-viewer-root .text-content{flex:1;overflow-y:auto;font-size:var(--bv-font-size)!important;line-height:var(--bv-line-height)!important;font-family:var(--bv-font-family)!important;text-align:-webkit-auto;word-break:keep-all;letter-spacing:-.01em;padding-right:10px;-moz-user-select:text;user-select:text;-webkit-user-select:text;cursor:text}.book-viewer-root .text-content *{-moz-user-select:text;user-select:text;-webkit-user-select:text}.book-viewer-root .text-content :global(h1),.book-viewer-root .text-content :global(h2),.book-viewer-root .text-content :global(h3){margin:2em 0 1em;text-indent:0;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.book-viewer-root .text-content :global(h1){font-size:1.8em;border-bottom:2px solid var(--bv-accent-color);padding-bottom:.5em}.book-viewer-root .text-content :global(h2){font-size:1.4em}.book-viewer-root .text-content :global(mark),.book-viewer-root .text-content :global(mark[risu-mark]){display:inline;background:linear-gradient(120deg,#c9a66b33,#c9a66b4d);color:inherit;padding:.1em .3em;border-radius:3px;flex-direction:unset;align-items:unset;gap:unset}.book-viewer-root .text-content:has(img){position:static}.book-viewer-root .text-content :global(img){position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin:0;z-index:10}.book-viewer-root .page-content:has(img) .page-number{display:none}.book-viewer-root .page-number{font-size:13px;color:var(--bv-text-secondary);font-weight:500;letter-spacing:.05em}.book-viewer-root .left-page-num{text-align:left}.book-viewer-root .right-page-num{text-align:right}.book-viewer-root .click-area{position:absolute;top:0;width:5%;height:100%;z-index:10;cursor:pointer}.book-viewer-root .click-left{left:0;cursor:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'32\' height=\'32\' viewBox=\'0 0 24 24\' fill=\'none\' stroke=\'%23c9a66b\' stroke-width=\'2\'%3E%3Cpolyline points=\'15 18 9 12 15 6\'%3E%3C/polyline%3E%3C/svg%3E") 16 16,w-resize}.book-viewer-root .click-right{right:0;cursor:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'32\' height=\'32\' viewBox=\'0 0 24 24\' fill=\'none\' stroke=\'%23c9a66b\' stroke-width=\'2\'%3E%3Cpolyline points=\'9 18 15 12 9 6\'%3E%3C/polyline%3E%3C/svg%3E") 16 16,e-resize}.book-viewer-root .click-area:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:50px;height:100px;opacity:0;transition:opacity var(--bv-transition-smooth);pointer-events:none}.book-viewer-root .click-left:after{left:30px;background:radial-gradient(ellipse at left,rgba(201,166,107,.15),transparent 70%)}.book-viewer-root .click-right:after{right:30px;background:radial-gradient(ellipse at right,rgba(201,166,107,.15),transparent 70%)}.book-viewer-root .click-area:hover:after{opacity:1}.book-viewer-root .nav-controls{display:flex;align-items:center;justify-content:center;gap:32px;background:var(--bv-page-color);padding:14px 40px;border-top:1px solid rgba(201,166,107,.12);flex-shrink:0;z-index:1}.book-viewer-root .nav-btn{background:none;border:none;cursor:pointer;padding:10px;border-radius:50%;transition:all var(--bv-transition-fast);color:var(--bv-accent-color);display:flex;align-items:center;justify-content:center}.book-viewer-root .nav-btn :global(svg){transition:transform var(--bv-transition-fast)}.book-viewer-root .nav-btn:hover:not(:disabled){background:#c9a66b1f}.book-viewer-root .nav-btn:hover:not(:disabled) :global(svg){transform:scale(1.1)}.book-viewer-root .nav-btn:active:not(:disabled){background:transparent!important}.book-viewer-root .nav-btn:active:not(:disabled) :global(svg){transform:scale(.95)}.book-viewer-root .nav-btn:disabled{opacity:.25;cursor:not-allowed}.book-viewer-root .page-indicator{font-size:14px;color:var(--bv-text-color);min-width:90px;text-align:center;font-weight:600;letter-spacing:.02em;font-variant-numeric:tabular-nums}.book-viewer-root .nav-right-buttons{display:flex;align-items:center;gap:8px;margin-left:auto;padding-left:20px}.book-viewer-root .nav-icon-btn{background:none;border:2px solid var(--bv-accent-color);color:var(--bv-accent-color);padding:8px 12px;cursor:pointer;border-radius:8px;transition:all var(--bv-transition-fast);font-size:13px!important;font-weight:600!important;display:flex;align-items:center;justify-content:center;gap:4px}.book-viewer-root .nav-icon-btn:hover{background:var(--bv-accent-color);color:#fff}.book-viewer-root .nav-icon-btn :global(svg){width:18px;height:18px}.book-viewer-root .setting-item{margin-bottom:16px}.book-viewer-root .setting-item:last-child{margin-bottom:0}.book-viewer-root .setting-item label{display:block;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--bv-text-color);text-transform:uppercase;letter-spacing:.06em}.book-viewer-root .setting-item input[type=range]{width:100%;height:5px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#e8e4dc;border-radius:3px;outline:none;margin-bottom:6px}.book-viewer-root[data-theme=dark] .setting-item input[type=range]{background:#30363d}.book-viewer-root .setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:var(--bv-accent-color);border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #c9a66b66;-webkit-transition:all var(--bv-transition-fast);transition:all var(--bv-transition-fast)}.book-viewer-root .setting-item input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}.book-viewer-root .setting-item input[type=range]::-moz-range-thumb{width:18px;height:18px;background:var(--bv-accent-color);border-radius:50%;cursor:pointer;border:none}.book-viewer-root .setting-item select{width:100%;padding:10px 14px;border:2px solid #e8e4dc;border-radius:10px;font-size:13px;background:#fff;cursor:pointer;transition:all var(--bv-transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' width=\'24\' height=\'24\' viewBox=\'0 0 24 24\' fill=\'none\' stroke=\'%23c9a66b\' stroke-width=\'2\'%3E%3Cpolyline points=\'6 9 12 15 18 9\'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}.book-viewer-root .setting-item select:hover{border-color:var(--bv-accent-color)}.book-viewer-root .setting-item select:focus{outline:none;border-color:var(--bv-accent-color);box-shadow:0 0 0 3px #c9a66b26}.book-viewer-root .setting-item span{font-size:11px;color:var(--bv-text-secondary);font-weight:500}.book-viewer-root .custom-css-btn{width:100%;padding:10px 16px;background:var(--bv-accent-color);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all var(--bv-transition-fast)}.book-viewer-root .custom-css-btn:hover{background:var(--bv-accent-hover);transform:translateY(-1px)}.book-viewer-root .toggle-item{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid rgba(201,166,107,.15);border-bottom:1px solid rgba(201,166,107,.15)}.book-viewer-root .toggle-content{display:flex;flex-direction:column;gap:3px}.book-viewer-root .toggle-label{font-size:12px;font-weight:600;color:var(--bv-font-color);text-transform:uppercase;letter-spacing:.06em}.book-viewer-root .toggle-description{font-size:11px;color:var(--bv-text-secondary);font-weight:400;text-transform:none;letter-spacing:0}.book-viewer-root .toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.book-viewer-root .toggle-switch input{opacity:0;width:0;height:0}.book-viewer-root .toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#e8e4dc;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:24px}.book-viewer-root .toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:50%;box-shadow:0 2px 6px #00000026}.book-viewer-root .toggle-switch input:checked+.toggle-slider{background:var(--bv-accent-color);box-shadow:0 0 10px #c9a66b59}.book-viewer-root .toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.book-viewer-root .toggle-switch:hover .toggle-slider{box-shadow:0 0 0 3px #c9a66b26}.book-viewer-root[data-theme=dark] .toggle-slider{background:#30363d}.book-viewer-root[data-theme=dark] .toggle-slider:before{background:#8b949e}.book-viewer-root[data-theme=dark] .toggle-switch input:checked+.toggle-slider:before{background:#fff}.book-viewer-root[data-theme=dark] .setting-item select{background-color:#21262d;border-color:#30363d;color:var(--bv-font-color)}.book-viewer-root[data-theme=light] .setting-item select,.book-viewer-root[data-theme=sepia] .setting-item select{color:var(--bv-font-color)}.book-viewer-root .nav-icon-btn.loading{opacity:.7;cursor:wait}.book-viewer-root .nav-icon-btn.loading svg{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.book-viewer-root .dropdown-container{position:relative}.book-viewer-root .dropdown-menu{display:none;position:absolute;bottom:calc(100% + 40px);right:0;background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:16px;border-radius:16px;box-shadow:var(--bv-shadow-strong);min-width:280px;max-width:320px;border:1px solid rgba(201,166,107,.15);z-index:200}.book-viewer-root .dropdown-menu.active{display:block;animation:dropdownFadeIn .25s cubic-bezier(.4,0,.2,1)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.book-viewer-root[data-theme=dark] .dropdown-menu{background:#1c2128fa}.book-viewer-root .dropdown-header{font-size:14px;font-weight:700;color:var(--bv-text-color);padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--bv-divider-color);text-transform:uppercase;letter-spacing:.05em}.book-viewer-root .lb-modules-list{max-height:300px;overflow-y:auto}.book-viewer-root .lb-module-item{padding:10px 12px;margin-bottom:6px;background:#c9a66b14;border-radius:8px;cursor:pointer;transition:all var(--bv-transition-fast);font-size:13px;color:var(--bv-text-color)}.book-viewer-root .lb-module-item:hover{background:#c9a66b33}.book-viewer-root .lb-module-item:last-child{margin-bottom:0}.book-viewer-root[data-theme=dark] .lb-module-item{background:#d4a5741a}.book-viewer-root[data-theme=dark] .lb-module-item:hover{background:#d4a57433}.book-viewer-root .modal-overlay{display:none!important;position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;justify-content:center;align-items:center}.book-viewer-root .modal-overlay.active{display:flex;animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.book-viewer-root .modal-content{background:var(--bv-page-color);border-radius:16px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--bv-shadow-strong);animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1)}.book-viewer-root[data-theme=dark] .modal-content{background:#1c2128}.book-viewer-root .modal-header{display:flex!important;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--bv-divider-color)}.book-viewer-root .modal-header h3{font-size:18px;font-weight:700;color:var(--bv-text-color);margin:0}.book-viewer-root .modal-close{background:none;border:none;font-size:24px;color:var(--bv-text-secondary);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all var(--bv-transition-fast)}.book-viewer-root .modal-close:hover{background:#0000000d;color:var(--bv-text-color)}.book-viewer-root[data-theme=dark] .modal-close:hover{background:#ffffff1a}.book-viewer-root .modal-body{flex:1;padding:20px 24px;overflow:auto}.book-viewer-root .modal-body textarea{width:100%;height:300px;padding:16px;border:2px solid var(--bv-divider-color);border-radius:12px;font-family:Consolas,Monaco,monospace;font-size:14px;line-height:1.6;resize:vertical;background:#fafafa;color:var(--bv-text-color)}.book-viewer-root[data-theme=dark] .modal-body textarea{background:#0d1117;border-color:#30363d}.modal-body textarea:focus{outline:none;border-color:var(--bv-accent-color);box-shadow:0 0 0 3px #c9a66b26}.book-viewer-root .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--bv-divider-color)}.book-viewer-root .modal-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--bv-transition-fast)}.book-viewer-root .modal-btn.primary{background:var(--bv-accent-color);color:#fff;border:none}.book-viewer-root .modal-btn.primary:hover{background:var(--bv-accent-hover)}.book-viewer-root .modal-btn.secondary{background:transparent;color:var(--bv-text-secondary);border:2px solid var(--bv-divider-color)}.book-viewer-root .modal-btn.secondary:hover{border-color:var(--bv-text-secondary);color:var(--bv-text-color)}@media(max-width:1200px){.book-viewer-root .page-content{padding:50px 40px 40px}.book-viewer-root .text-content{font-size:16px}}@media(max-width:900px){.book-viewer-root .book-header{padding:10px 16px}.book-viewer-root .header-thumbnail{width:32px;height:32px;min-width:32px;border-radius:6px}.book-viewer-root .header-name{font-size:14px}.book-viewer-root .header-buttons button{padding:4px}.book-viewer-root .header-buttons button :global(svg){width:16px;height:16px}.book-viewer-root .page-content{padding:40px 30px 35px}.book-viewer-root .book-spine{width:4px}.book-viewer-root .nav-controls{padding:12px 20px;gap:20px}}.book-viewer-root .viewer-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;width:unset!important;pointer-events:none;opacity:0;transition:opacity .3s ease}.book-viewer-root .viewer-toast.showing{opacity:1}.book-viewer-root .viewer-toast.clickable{pointer-events:auto;cursor:pointer}.book-viewer-root .viewer-toast.clickable .toast-content{transition:transform .15s ease,box-shadow .15s ease}.book-viewer-root .viewer-toast.clickable:hover .toast-content{transform:scale(1.02);box-shadow:0 6px 28px #0006}.book-viewer-root .viewer-toast.clickable:active .toast-content{transform:scale(.98)}.book-viewer-root .toast-content{background:#000c;color:#fff;padding:16px 32px;border-radius:12px;font-size:15px;font-weight:500;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #0000004d;max-width:400px}@font-face{font-family:나눔스퀘어네오;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:에스코어드림;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff) format("woff")}@font-face{font-family:레페리포인트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2201-2@1.0/LeferiPoint-WhiteObliqueA.woff) format("woff")}@font-face{font-family:플렉스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-07@1.0/IBMPlexSansKR-Regular.woff) format("woff")}@font-face{font-family:스위트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2304-2@1.0/SUITE-Regular.woff2) format("woff2")}@font-face{font-family:오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2310@1.0/Orbit-Regular.woff2) format("woff2")}@font-face{font-family:스쿨오르빗;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2307-2@1.0/HakgyoansimWoojuR.woff2) format("woff2")}@font-face{font-family:프리티나잇;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Oneprettynight.woff) format("woff")}@font-face{font-family:서라운드에어;src:url(https://gcore.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/Cafe24SsurroundAir.woff) format("woff")}@font-face{font-family:고운돋움;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunDodum-Regular.woff) format("woff")}@font-face{font-family:고운바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunBatang-Regular.woff) format("woff")}@font-face{font-family:리디바탕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.0/RIDIBatang.woff) format("woff")}@font-face{font-family:마루부리;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot);src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot?#iefix) format("embedded-opentype"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2) format("woff2"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff) format("woff"),url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.ttf) format("truetype")}@font-face{font-family:도스고딕;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_eight@1.0/DOSGothic.woff) format("woff")}@font-face{font-family:스타더스트;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/PFStardust.woff) format("woff")}@font-face{font-family:픽시드시스;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/DungGeunMo.woff) format("woff")}@font-face{font-family:네오둥근모;src:url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.3/NeoDunggeunmo.woff) format("woff")}.risu-chat>div{padding:unset!important;margin:unset!important;justify-content:unset!important;align-items:unset!important}.risu-chat>div>div{margin:unset!important;justify-content:unset!important}@media screen and (max-width:768px){.risu-chat>div{padding:unset!important;overflow-x:unset!important}}.mobile-reader code{word-break:break-word}.mobile-reader{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;background:linear-gradient(135deg,var(--mv-bg-gradient-start) 0%,var(--mv-bg-gradient-end) 100%);z-index:5;font-family:var(--mv-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;--mv-bg-gradient-start: #1a1f35;--mv-bg-gradient-end: #2d3654;--mv-page-color: #fdfbf7;--mv-text-color: #2c2c2c;--mv-text-secondary: #6b6b6b;--mv-header-bg: rgba(26, 31, 53, .97);--mv-footer-bg: rgba(253, 251, 247, .98);--mv-accent-color: #c9a66b;--mv-accent-light: rgba(201, 166, 107, .15);--mv-border-color: rgba(201, 166, 107, .2);--mv-shadow-soft: 0 2px 12px rgba(0, 0, 0, .08);--mv-shadow-medium: 0 4px 24px rgba(0, 0, 0, .12);--mv-shadow-glow: 0 0 20px rgba(201, 166, 107, .15);--mv-font-size: 17px;--mv-line-height: 1.85;--mv-font-family: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--mv-font-serif: "Noto Serif KR", "Crimson Text", "Georgia", serif;--mv-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--mv-transition-smooth: .3s cubic-bezier(.4, 0, .2, 1)}.mobile-reader .reader-header{display:flex;flex-direction:column;background:var(--mv-header-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--mv-border-color);z-index:5;flex-shrink:0}.mobile-reader .header-row{display:flex;align-items:center;padding:0 12px}.mobile-reader .header-row-top{justify-content:space-between;padding-top:10px;padding-bottom:6px}.mobile-reader .header-row-bottom{justify-content:space-between;padding-top:4px;padding-bottom:10px;border-top:1px solid rgba(255,255,255,.06)}.mobile-reader .header-btn{background:none;border:none;color:#ffffffd9;padding:8px;cursor:pointer;border-radius:10px;transition:all var(--mv-transition-fast);display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:44px;min-height:44px}.mobile-reader .header-btn:active{background:#c9a66b33;color:var(--mv-accent-color);transform:scale(.95)}.mobile-reader .header-btn svg{width:20px;height:20px}.mobile-reader .header-bot-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0;justify-content:center}.mobile-reader .header-thumbnail{width:32px;height:32px;min-width:32px;border-radius:8px;background-size:cover;background-position:center;background-color:#ffffff1a;box-shadow:0 2px 6px #0003}.mobile-reader .header-bot-name{font-size:14px;font-weight:600;color:var(--mv-accent-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.mobile-reader .header-action-buttons{display:flex;align-items:center;gap:2px}.mobile-reader .header-action-buttons button{background:none;border:none;padding:6px;cursor:pointer;color:#fff9;border-radius:8px;transition:all var(--mv-transition-fast);display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px}.mobile-reader .header-action-buttons button:active{background:#c9a66b33;color:var(--mv-accent-color)}.mobile-reader .header-action-buttons button svg{width:18px;height:18px}.mobile-reader .header-chat-index{font-size:12px;font-weight:500;color:#fff9;background:#ffffff14;padding:4px 10px;border-radius:10px}.mobile-reader .header-right-group{display:flex;align-items:center;gap:8px}.mobile-reader .header-toggle-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--mv-accent-color);padding:4px 10px;font-size:11px;font-weight:700;border-radius:8px;cursor:pointer;transition:all var(--mv-transition-fast);min-height:32px}.mobile-reader .header-toggle-btn:active{background:var(--mv-accent-color);color:#fff;transform:scale(.95)}.mobile-reader .page-container{flex:1;overflow-y:auto;position:relative;background:var(--mv-page-color, #fdfbf7);margin:10px;box-shadow:var(--mv-shadow-medium, 0 4px 24px rgba(0, 0, 0, .12)),var(--mv-shadow-glow, 0 0 20px rgba(201, 166, 107, .15));touch-action:pan-y}.mobile-reader .page-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg viewBox=\'0 0 200 200\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cfilter id=\'noise\'%3E%3CfeTurbulence type=\'fractalNoise\' baseFrequency=\'0.9\' numOctaves=\'4\' stitchTiles=\'stitch\'/%3E%3C/filter%3E%3Crect width=\'100%25\' height=\'100%25\' filter=\'url(%23noise)\' opacity=\'0.02\'/%3E%3C/svg%3E");pointer-events:none;z-index:1}.mobile-reader .page-content>.chattext [class*=-image-wrapper]{height:unset!important;max-height:100%}.mobile-reader .page-content>.chattext [class*=-image-container]{height:unset!important;min-height:98%;max-height:100%}.mobile-reader .page-content>.x-risu-image-cell{aspect-ratio:auto}.mobile-reader .page-content{width:100%;height:100%;display:flex;flex-direction:column;padding:28px 24px;position:relative;z-index:2}.mobile-reader .text-content{flex:1;font-size:var(--mv-font-size, 17px);line-height:var(--mv-line-height, 1.85);font-family:var(--mv-font-family, "Pretendard", sans-serif);color:var(--mv-text-color, #2c2c2c);word-break:keep-all;letter-spacing:-.01em;overflow-y:auto}.mobile-reader .text-content :global(p){margin-bottom:1.3em}.mobile-reader .text-content :global(p:first-child){text-indent:0}.mobile-reader .text-content :global(h1),.mobile-reader .text-content :global(h2),.mobile-reader .text-content :global(h3){margin:1.8em 0 .8em;text-indent:0;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.mobile-reader .text-content :global(h1){font-size:1.6em;border-bottom:2px solid var(--mv-accent-color, #c9a66b);padding-bottom:.4em}.mobile-reader .text-content :global(mark){background:linear-gradient(120deg,#c9a66b33,#c9a66b4d);color:inherit;padding:.1em .2em;border-radius:3px}.mobile-reader .text-content :global(img){max-width:100%;height:auto;margin:1.2em 0;border-radius:8px;box-shadow:var(--mv-shadow-soft, 0 2px 12px rgba(0, 0, 0, .08))}.mobile-reader .page-number{position:absolute;bottom:12px;right:16px;font-size:11px;color:var(--mv-text-secondary, #6b6b6b);opacity:.6;z-index:3}@media(min-width:600px)and (orientation:landscape){.mobile-reader .page-container{margin:12px 20px}.mobile-reader .page-content{padding:36px 48px}.mobile-reader .text-content{max-width:720px;margin:0 auto;font-size:18px}}@media(min-width:768px){.mobile-reader .page-container{margin:16px 24px}.mobile-reader .page-content{padding:40px 56px}.mobile-reader .text-content{max-width:800px;font-size:18px;line-height:1.9}}.mobile-reader .touch-area{position:absolute;top:0;bottom:0;width:10%;z-index:50}.mobile-reader .touch-left{left:0}.mobile-reader .touch-right{right:0}.mobile-reader .reader-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--mv-footer-bg, rgba(253, 251, 247, .98));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(201,166,107,.12);gap:12px;flex-shrink:0}.mobile-reader .nav-btn{background:#c9a66b14;border:1px solid rgba(201,166,107,.25);color:var(--mv-accent-color, #c9a66b);padding:6px 14px;cursor:pointer;border-radius:20px;transition:all var(--mv-transition-fast, .15s cubic-bezier(.4, 0, .2, 1));display:flex;align-items:center;justify-content:center;gap:4px;min-height:32px;font-size:12px;font-weight:600}.mobile-reader .nav-btn svg{width:14px;height:14px;flex-shrink:0;transition:transform var(--mv-transition-fast, .15s cubic-bezier(.4, 0, .2, 1))}.mobile-reader .btn-label{font-size:11px;font-weight:600;letter-spacing:.02em}.mobile-reader .nav-btn:active:not(:disabled){background:var(--mv-accent-color, #c9a66b);border-color:var(--mv-accent-color, #c9a66b);color:#fff;transform:scale(.97)}.mobile-reader .nav-btn:disabled{opacity:.3;cursor:not-allowed}.mobile-reader .page-info{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.mobile-reader .page-indicator{font-size:11px;font-weight:600;color:var(--mv-text-secondary, #6b6b6b);white-space:nowrap;letter-spacing:.02em}.mobile-reader .progress-bar{flex:1;height:3px;background:#c9a66b26;border-radius:2px;overflow:hidden}.mobile-reader .progress-fill{height:100%;background:linear-gradient(90deg,var(--mv-accent-color, #c9a66b) 0%,#d4b87a 100%);border-radius:2px;transition:width var(--mv-transition-smooth, .3s cubic-bezier(.4, 0, .2, 1))}@supports (padding-bottom: env(safe-area-inset-bottom)){.mobile-reader .reader-footer{padding-bottom:max(8px,env(safe-area-inset-bottom))}}.mobile-reader .panel-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-reader .panel-content{position:absolute;bottom:0;left:0;width:100%;background:var(--mv-page-color);border-radius:24px 24px 0 0;overflow-y:auto;animation:slideUp .35s cubic-bezier(.4,0,.2,1);box-shadow:0 -8px 32px #0003}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.mobile-reader .panel-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid rgba(201,166,107,.2);position:sticky;top:0;background:var(--mv-page-color);z-index:5}.mobile-reader .panel-header h3{font-size:18px;font-weight:700;color:var(--mv-text-color);letter-spacing:-.02em;margin:0}.mobile-reader .panel-close{background:none;border:none;font-size:20px;color:var(--mv-text-secondary);cursor:pointer;padding:8px 12px;border-radius:8px;transition:all var(--mv-transition-fast);line-height:1}.mobile-reader .panel-close:active{background:var(--mv-accent-light);color:var(--mv-accent-color)}.mobile-reader .panel-body{padding:24px}.mobile-reader .settings-panel{position:fixed;top:0;left:0;width:100%;height:100%;z-index:100;display:none}.mobile-reader .settings-panel.active{display:block}.mobile-reader .settings-panel .panel-content{max-height:80%}.mobile-reader .setting-item{margin-bottom:32px}.mobile-reader .setting-item:last-child{margin-bottom:0}.mobile-reader .setting-item label{display:block;margin-bottom:14px;font-size:13px;font-weight:600;color:var(--mv-text-color);text-transform:uppercase;letter-spacing:.08em}.mobile-reader .setting-item span{color:var(--mv-text-color)}.mobile-reader .range-control{display:flex;align-items:center;gap:14px;margin-bottom:10px}.mobile-reader .range-label{font-size:12px;color:var(--mv-text-secondary);min-width:36px}.mobile-reader .setting-item input[type=range]{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:#c9a66b40;border-radius:3px;outline:none}.mobile-reader .setting-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:26px;height:26px;background:var(--mv-accent-color);border-radius:50%;cursor:pointer;box-shadow:0 2px 10px #c9a66b66}.mobile-reader .setting-item input[type=range]::-moz-range-thumb{width:26px;height:26px;background:var(--mv-accent-color);border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 10px #c9a66b66}.mobile-reader .setting-value{display:block;text-align:center;font-size:13px;color:var(--mv-accent-color);font-weight:600}.mobile-reader .theme-buttons{display:flex;gap:12px}.mobile-reader .theme-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 12px;border:2px solid rgba(201,166,107,.25);border-radius:16px;background:transparent;cursor:pointer;transition:all var(--mv-transition-fast);font-size:13px;color:var(--mv-text-secondary);font-weight:500}.mobile-reader .theme-btn.active{border-color:var(--mv-accent-color);background:var(--mv-accent-light);color:var(--mv-accent-color)}.mobile-reader .theme-btn:active:not(.active){transform:scale(.97);background:#c9a66b14}.mobile-reader .theme-preview{width:44px;height:44px;border-radius:50%;border:2px solid rgba(201,166,107,.3);box-shadow:var(--mv-shadow-soft)}.mobile-reader .theme-preview.light{background:linear-gradient(135deg,#fff,#fdfbf7)}.mobile-reader .theme-preview.sepia{background:linear-gradient(135deg,#f7f0e3,#ebe4d7)}.mobile-reader .theme-preview.dark{background:linear-gradient(135deg,#1c2128,#0d1117)}.mobile-reader .font-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:200px;overflow-y:auto}.mobile-reader .font-option{padding:12px;border:2px solid rgba(201,166,107,.2);border-radius:10px;background:transparent;cursor:pointer;transition:all var(--mv-transition-fast);font-size:13px;color:var(--mv-text-color);text-align:center}.mobile-reader .font-option.active{border-color:var(--mv-accent-color);background:var(--mv-accent-light);color:var(--mv-accent-color)}.mobile-reader .font-option:active:not(.active){background:#c9a66b14}.mobile-reader .custom-css-btn{width:100%;padding:14px 16px;background:var(--mv-accent-color);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--mv-transition-fast)}.mobile-reader .custom-css-btn:active{transform:scale(.98);opacity:.9}.mobile-reader .lb-panel{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10;display:none}.mobile-reader .lb-panel.active{display:block}.mobile-reader .lb-panel .panel-content{max-height:60%}.mobile-reader .lb-modules-list{display:flex;flex-direction:column;gap:10px}.mobile-reader .lb-module-item{padding:16px;background:#c9a66b14;border-radius:12px;cursor:pointer;transition:all var(--mv-transition-fast);font-size:15px;font-weight:500;color:var(--mv-text-color);border:1px solid transparent}.mobile-reader .lb-module-item:active{background:#c9a66b33;border-color:var(--mv-accent-color);transform:scale(.98)}.mobile-reader .lb-empty{text-align:center;color:var(--mv-text-secondary);font-size:14px;padding:20px}.mobile-reader .modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:300;display:flex;justify-content:center;align-items:center;padding:20px;animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-reader .modal-content{background:var(--mv-page-color, #fdfbf7);border-radius:16px;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0006;animation:modalSlideIn .25s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-reader .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.1)}.mobile-reader .modal-header h3{font-size:16px;font-weight:700;color:var(--mv-text-color, #2c2c2c);margin:0}.mobile-reader .modal-close{background:none;border:none;font-size:24px;color:var(--mv-text-secondary, #6b6b6b);cursor:pointer;padding:4px 8px;border-radius:6px;transition:all var(--mv-transition-fast, .15s);line-height:1}.mobile-reader .modal-close:active{background:#0000001a}.mobile-reader .modal-body{flex:1;padding:16px 20px;overflow:auto}.mobile-reader .modal-body textarea{width:100%;height:200px;padding:14px;border:2px solid rgba(0,0,0,.1);border-radius:10px;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:1.5;resize:vertical;background:#00000005;color:var(--mv-text-color, #2c2c2c)}.mobile-reader .modal-body textarea:focus{outline:none;border-color:var(--mv-accent-color, #c9a66b)}.mobile-reader .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid rgba(0,0,0,.1)}.mobile-reader .modal-btn{padding:10px 18px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--mv-transition-fast, .15s)}.mobile-reader .modal-btn.primary{background:var(--mv-accent-color, #c9a66b);color:#fff;border:none}.mobile-reader .modal-btn.primary:active{opacity:.9;transform:scale(.98)}.mobile-reader .modal-btn.secondary{background:transparent;color:var(--mv-text-secondary, #6b6b6b);border:2px solid rgba(0,0,0,.15)}.mobile-reader .modal-btn.secondary:active{background:#0000000d}.mobile-reader[data-theme=light]{--mv-bg-gradient-start: #1a1f35;--mv-bg-gradient-end: #2d3654;--mv-page-color: #fdfbf7;--mv-page-shadow: #f5f0e8;--mv-text-color: #2c2c2c;--mv-text-secondary: #6b6b6b;--mv-accent-color: #c9a66b;--mv-accent-hover: #b8935a;--mv-divider-color: #e8e4dc;--mv-spine-gradient: linear-gradient( 90deg, #d4cfc4 0%, hsl(41, 13%, 76%) 50%, #d4cfc4 100% );--mv-shadow-soft: 0 4px 20px rgba(0, 0, 0, .08);--mv-shadow-medium: 0 8px 40px rgba(0, 0, 0, .12);--mv-shadow-strong: 0 20px 60px rgba(0, 0, 0, .2);--mv-shadow-inner: inset 0 0 30px rgba(0, 0, 0, .03);--mv-font-size: 17px;--mv-line-height: 1.9;--mv-font-family: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--mv-font-serif: "Noto Serif KR", "Crimson Text", "Georgia", serif;--mv-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--mv-transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--mv-transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--FontColorStandard: #2c2c2c;--FontColorItalic: #5a5a5a;--FontColorBold: #1a1a1a;--FontColorItalicBold: #5a5a5a;--FontColorQuote1: #0e7490;--FontColorQuote2: #c2410c;--mv-font-color: var(--FontColorStandard);--mv-mark1-color: var(--FontColorQuote1);--mv-mark2-color: var(--FontColorQuote2);--mv-em-color: var(--FontColorItalic)}.mobile-reader[data-theme=sepia]{--bv-bg-gradient-start: #3d3830;--bv-bg-gradient-end: #4a4238;--bv-page-color: #f7f0e3;--bv-page-shadow: #ebe4d7;--bv-text-color: #3d2e1c;--bv-text-secondary: #7a6b5a;--bv-accent-color: #8b7355;--bv-divider-color: #d4c9b8;--bv-spine-gradient: linear-gradient( 90deg, #c4b9a8 0%, #b8ad9c 50%, #c4b9a8 100% );--mv-bg-gradient-start: #3d3830;--mv-bg-gradient-end: #4a4238;--mv-page-color: #f7f0e3;--mv-text-color: #3d2e1c;--mv-text-secondary: #7a6b5a;--mv-header-bg: rgba(61, 56, 48, .97);--mv-accent-color: #8b7355;--FontColorBold: #2a1f10;--FontColorItalicBold: #6b5a48;--FontColorStandard: #3d2e1c;--FontColorQuote1: #1a6b6b;--FontColorQuote2: #a85d20;--FontColorItalic: #6b5a48;--bv-font-color: var(--FontColorStandard);--bv-mark1-color: var(--FontColorQuote1);--bv-mark2-color: var(--FontColorQuote2);--bv-em-color: var(--FontColorItalic)}.mobile-reader[data-theme=dark]{--mv-accent-hover: #e0b584;--mv-divider-color: #30363d;--mv-spine-gradient: linear-gradient( 90deg, #21262d 0%, #30363d 50%, #21262d 100% );--mv-bg-gradient-start: #0d1117;--mv-bg-gradient-end: #161b22;--mv-page-color: var(--risu-theme-bgcolor);--mv-page-shadow: #151a20;--mv-text-color: #c9d1d9;--mv-text-secondary: #8b949e;--mv-header-bg: rgba(13, 17, 23, .97);--mv-footer-bg: var(--mv-page-color);--mv-accent-color: #d4a574;--FontColorStandard: #fafafa;--FontColorItalic: #8c8d93;--FontColorBold: #fafafa;--FontColorItalicBold: #8c8d93;--FontColorQuote1: #8be9fd;--FontColorQuote2: #ffb86c;--mv-text-color: var(--FontColorStandard);--mv-font-color: var(--FontColorStandard);--mv-mark1-color: var(--FontColorQuote1);--mv-mark2-color: var(--FontColorQuote2);--mv-em-color: var(--FontColorItalic)}.mobile-reader[data-theme=dark] .page-container:before{opacity:.5}.mobile-reader[data-theme=dark] .page-indicator{color:var(--mv-text-color)}.mobile-reader[data-theme=dark] .panel-content,.mobile-reader[data-theme=dark] .panel-header{background:#1c2128}.mobile-reader[data-theme=dark] .panel-header{border-bottom-color:#d4a57433}.mobile-reader[data-theme=dark] .lb-module-item{background:#d4a5741a}.mobile-reader[data-theme=dark] .lb-module-item:active{background:#d4a57433}.mobile-reader[data-theme=dark] .modal-content{background:#1c2128}.mobile-reader[data-theme=dark] .modal-body textarea{background:#0d1117;border-color:#30363d;color:var(--mv-text-color)}.mobile-reader[data-theme=dark] .modal-header,.mobile-reader[data-theme=dark] .modal-footer{border-color:#ffffff1a}.mobile-reader .loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--mv-page-color);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;border-radius:12px;opacity:1;transition:opacity .3s ease}.mobile-reader .loading-overlay.fade-out{opacity:0;pointer-events:none}@media(min-width:600px)and (orientation:landscape){.mobile-reader .page-container{margin:12px 20px}.mobile-reader .page-content{padding:36px 48px}.mobile-reader .text-content{max-width:720px;margin:0 auto;font-size:18px}.mobile-reader .reader-header,.mobile-reader .reader-footer{padding:14px 24px}}@media(min-width:768px){.mobile-reader .page-container{margin:16px 24px}.mobile-reader .page-content{padding:40px 56px}.mobile-reader .text-content{max-width:800px;font-size:18px;line-height:1.9}.mobile-reader .settings-panel .panel-content,.mobile-reader .lb-panel .panel-content{max-width:480px;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{transform:translate(-50%) translateY(100%)}to{transform:translate(-50%) translateY(0)}}}@supports (padding-top: env(safe-area-inset-top)){.mobile-reader .header-row-top{padding-top:max(10px,env(safe-area-inset-top))}.mobile-reader .reader-footer{padding-bottom:max(14px,env(safe-area-inset-bottom))}.mobile-reader .panel-body{padding-bottom:max(24px,env(safe-area-inset-bottom))}}.settings-panel{position:fixed;top:0;left:0;width:100%;height:100%;z-index:200;display:none}.settings-panel.active{display:block}.panel-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.panel-content{position:absolute;bottom:0;left:0;width:100%;background:var(--mv-page-color, #fdfbf7);border-radius:24px 24px 0 0;max-height:80%;overflow-y:auto;animation:slideUp .35s cubic-bezier(.4,0,.2,1);box-shadow:0 -8px 32px #0003}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid rgba(201,166,107,.2);position:sticky;top:0;background:var(--mv-page-color, #fdfbf7);z-index:10}.panel-header h3{font-size:18px;font-weight:700;color:var(--mv-text-color, #2c2c2c);letter-spacing:-.02em;margin:0}.panel-close{background:none;border:none;font-size:20px;color:var(--mv-text-secondary, #6b6b6b);cursor:pointer;padding:8px 12px;border-radius:8px;transition:all var(--mv-transition-fast, .15s);line-height:1}.panel-close:active{background:var(--mv-accent-light, rgba(201, 166, 107, .15));color:var(--mv-accent-color, #c9a66b)}.panel-body{padding:24px}.theme-buttons{display:flex;gap:12px}.theme-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 12px;border:2px solid rgba(201,166,107,.25);border-radius:16px;background:transparent;cursor:pointer;transition:all var(--mv-transition-fast, .15s);font-size:13px;color:var(--mv-text-secondary, #6b6b6b);font-weight:500}.theme-btn.active{border-color:var(--mv-accent-color, #c9a66b);background:var(--mv-accent-light, rgba(201, 166, 107, .15));color:var(--mv-accent-color, #c9a66b)}.theme-btn:active:not(.active){transform:scale(.97);background:#c9a66b14}.theme-preview{width:44px;height:44px;border-radius:50%;border:2px solid rgba(201,166,107,.3);box-shadow:var(--mv-shadow-soft, 0 2px 12px rgba(0, 0, 0, .08))}.theme-preview.light{background:linear-gradient(135deg,#fff,#fdfbf7)}.theme-preview.sepia{background:linear-gradient(135deg,#f7f0e3,#ebe4d7)}.theme-preview.dark{background:linear-gradient(135deg,#1c2128,#0d1117)}.toggle-item{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid rgba(201,166,107,.15);border-bottom:1px solid rgba(201,166,107,.15)}.toggle-content{display:flex;flex-direction:column;gap:4px}.toggle-label{font-size:14px;font-weight:600;color:var(--mv-text-color, #2c2c2c)}.toggle-description{font-size:12px;color:var(--mv-text-secondary, #6b6b6b);font-weight:400}.toggle-switch{position:relative;display:inline-block;width:52px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#c9a66b40;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:28px}.toggle-slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:50%;box-shadow:0 2px 8px #00000026}.toggle-switch input:checked+.toggle-slider{background:var(--mv-accent-color, #c9a66b);box-shadow:0 0 12px #c9a66b66}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px);background:#fff;box-shadow:0 2px 8px #c9a66b4d}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #c9a66b33}.mobile-reader[data-theme=dark] .toggle-slider{background:#ffffff26}.mobile-reader[data-theme=dark] .toggle-slider:before{background:#8b949e}.mobile-reader[data-theme=dark] .toggle-switch input:checked+.toggle-slider:before{background:#fff}.custom-css-btn{width:100%;padding:14px 16px;background:var(--mv-accent-color, #c9a66b);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--mv-transition-fast, .15s)}.custom-css-btn:active{transform:scale(.98);opacity:.9}@supports (padding-bottom: env(safe-area-inset-bottom)){.panel-body{padding-bottom:max(24px,env(safe-area-inset-bottom))}}@media(min-width:768px){.panel-content{max-width:480px;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{transform:translate(-50%) translateY(100%)}to{transform:translate(-50%) translateY(0)}}}.viewer-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;pointer-events:none;opacity:0;transition:opacity .3s ease}.viewer-toast.showing{opacity:1}.toast-content{background:#000c;color:#fff;padding:16px 32px;border-radius:12px;font-size:15px;font-weight:500;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #0000004d;max-width:400px}:global(.book-viewer-root[data-theme=light]) .toast-content{background:#323232e6}:global(.mobile-reader[data-theme=light]) .toast-content{background:#323232e6}.viewer-toast.clickable{pointer-events:auto;cursor:pointer}.viewer-toast.clickable .toast-content{transition:transform .15s ease,box-shadow .15s ease}.viewer-toast.clickable:active .toast-content{transform:scale(.98);box-shadow:0 2px 12px #0006}')),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}}();
|
|
10
|
+
!function(n){"function"==typeof define&&define.amd?define(n):n()}(function(){"use strict";var n,t,e,r,o,i,a,l,s,u,c,f,d,v,p,h,g,b,m,w,y,x,_,k,C,S,A,E,M,N,I,L,F,z,j,P,T,B,O,R,D,W,U=Object.defineProperty,q=n=>{throw TypeError(n)},H=(n,t,e)=>((n,t,e)=>t in n?U(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e)(n,"symbol"!=typeof t?t+"":t,e),$=(n,t,e)=>t.has(n)||q("Cannot "+e),V=(n,t,e)=>($(n,t,"read from private field"),e?e.call(n):t.get(n)),X=(n,t,e)=>t.has(n)?q("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(n):t.set(n,e),Q=(n,t,e,r)=>($(n,t,"write to private field"),r?r.call(n,e):t.set(n,e),e),G=(n,t,e)=>($(n,t,"access private method"),e);const K={udRoot:"update-dialog-module__udRoot--bWc9J",udCard:"update-dialog-module__udCard---wy8T",udPop:"update-dialog-module__udPop--0Vb0B",udTitle:"update-dialog-module__udTitle--5imsi",udPill:"update-dialog-module__udPill--leinK",udSub:"update-dialog-module__udSub--zfs1y",udList:"update-dialog-module__udList--jnFg8",udFeat:"update-dialog-module__udFeat--MSXJY",udFix:"update-dialog-module__udFix--18UZ3",udPerf:"update-dialog-module__udPerf--bRifN",udBreak:"update-dialog-module__udBreak--jl-Bf",udActions:"update-dialog-module__udActions--5tqy2",udBtn:"update-dialog-module__udBtn--IHB-y",udBtnPrimary:"update-dialog-module__udBtnPrimary--ZlLFd",udBtnGhost:"update-dialog-module__udBtnGhost--Ly-cb",udAlert:"update-dialog-module__udAlert--GJ6WI",udAlertMessage:"update-dialog-module__udAlertMessage--nJfX4",udLoading:"update-dialog-module__udLoading----KQf",udLoadingSpinner:"update-dialog-module__udLoadingSpinner--0OgBH",udLoadingSvg:"update-dialog-module__udLoadingSvg--k5e0b",udRotate:"update-dialog-module__udRotate--gve2C",udLoadingCircle:"update-dialog-module__udLoadingCircle--Q78XG",udDash:"update-dialog-module__udDash--TGdW5",udLoadingMessage:"update-dialog-module__udLoadingMessage---UM99"},Z=!1;var Y=Array.isArray,J=Array.prototype.indexOf,nn=Array.from,tn=Object.defineProperty,en=Object.getOwnPropertyDescriptor,rn=Object.getOwnPropertyDescriptors,on=Object.prototype,an=Array.prototype,ln=Object.getPrototypeOf,sn=Object.isExtensible;function un(n){return"function"==typeof n}const cn=()=>{};function fn(n){return n()}function dn(n){for(var t=0;t<n.length;t++)n[t]()}function vn(){var n,t;return{promise:new Promise((e,r)=>{n=e,t=r}),resolve:n,reject:t}}const pn=1<<24,hn=16,gn=32,bn=64,mn=128,wn=512,yn=1024,xn=2048,_n=4096,kn=8192,Cn=16384,Sn=32768,An=65536,En=1<<17,Mn=1<<18,Nn=1<<19,In=1<<25,Ln=32768,Fn=1<<21,zn=1<<23,jn=Symbol("$state"),Pn=Symbol("legacy props"),Tn=Symbol(""),Bn=new class extends Error{constructor(){super(...arguments),H(this,"name","StaleReactionError"),H(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};function On(n){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}const Rn=Symbol();function Dn(n){return n===this.v}function Wn(n){return t=n,e=this.v,!(t!=t?e==e:t!==e||null!==t&&"object"==typeof t||"function"==typeof t);var t,e}let Un=!1;let qn=null;function Hn(n){qn=n}function $n(n,t=!1,e){qn={p:qn,i:!1,c:null,e:null,s:n,x:null,l:Un&&!t?{s:null,u:null,$:[]}:null}}function Vn(n){var t=qn,e=t.e;if(null!==e)for(var r of(t.e=null,e))ae(r);return t.i=!0,qn=t.p,{}}function Xn(){return!Un||null!==qn&&null===qn.l}let Qn=[];function Gn(){var n=Qn;Qn=[],dn(n)}function Kn(n){if(0===Qn.length&&!lt){var t=Qn;queueMicrotask(()=>{t===Qn&&Gn()})}Qn.push(n)}function Zn(){for(;Qn.length>0;)Gn()}function Yn(n){var t=Ie;if(null===t)return Ee.f|=zn,n;if(0===(t.f&Sn)){if(0===(t.f&mn))throw n;t.b.error(n)}else Jn(n,t)}function Jn(n,t){for(;null!==t;){if(0!==(t.f&mn))try{return void t.b.error(n)}catch(e){n=e}t=t.parent}throw n}const nt=new Set;let tt=null,et=null,rt=null,ot=[],it=null,at=!1,lt=!1;n=new WeakMap,t=new WeakMap,e=new WeakMap,r=new WeakMap,o=new WeakMap,i=new WeakMap,a=new WeakMap,l=new WeakSet,s=function(n,t){var e;n.f^=yn;for(var r=n.first;null!==r;){var o=r.f,a=!!(96&o),s=a&&0!==(o&yn)||0!==(o&kn)||this.skipped_effects.has(r);if(0!==(r.f&mn)&&(null==(e=r.b)?void 0:e.is_pending())&&(t={parent:t,effect:r,effects:[],render_effects:[]}),!s&&null!==r.fn){a?r.f^=yn:4&o?t.effects.push(r):Ue(r)&&(0!==(r.f&hn)&&V(this,i).add(r),Xe(r));var c=r.first;if(null!==c){r=c;continue}}var f=r.parent;for(r=r.next;null===r&&null!==f;)f===t.effect&&(G(this,l,u).call(this,t.effects),G(this,l,u).call(this,t.render_effects),t=t.parent),r=f.next,f=f.parent}},u=function(n){for(const t of n)0!==(t.f&xn)?V(this,i).add(t):0!==(t.f&_n)&&V(this,a).add(t),G(this,l,c).call(this,t.deps),nr(t,yn)},c=function(n){if(null!==n)for(const t of n)2&t.f&&0!==(t.f&Ln)&&(t.f^=Ln,G(this,l,c).call(this,t.deps))},f=function(){if(0===V(this,r)){for(const t of V(this,n))t();V(this,n).clear()}0===V(this,e)&&G(this,l,d).call(this)},d=function(){var n;if(nt.size>1){this.previous.clear();var t=rt,e=!0,r={parent:null,effect:null,effects:[],render_effects:[]};for(const t of nt){if(t===this){e=!1;continue}const i=[];for(const[n,r]of this.current){if(t.current.has(n)){if(!e||r===t.current.get(n))continue;t.current.set(n,r)}i.push(n)}if(0===i.length)continue;const a=[...t.current.keys()].filter(n=>!this.current.has(n));if(a.length>0){var o=ot;ot=[];const e=new Set,u=new Map;for(const n of i)vt(n,a,e,u);if(ot.length>0){tt=t,t.apply();for(const e of ot)G(n=t,l,s).call(n,e,r);t.deactivate()}ot=o}}tt=null,rt=t}this.committed=!0,nt.delete(this)};let st=class c{constructor(){X(this,l),H(this,"committed",!1),H(this,"current",new Map),H(this,"previous",new Map),X(this,n,new Set),X(this,t,new Set),X(this,e,0),X(this,r,0),X(this,o,null),X(this,i,new Set),X(this,a,new Set),H(this,"skipped_effects",new Set),H(this,"is_fork",!1)}is_deferred(){return this.is_fork||V(this,r)>0}process(n){var t;ot=[],et=null,this.apply();var e={parent:null,effect:null,effects:[],render_effects:[]};for(const r of n)G(this,l,s).call(this,r,e);this.is_fork||G(this,l,f).call(this),this.is_deferred()?(G(this,l,u).call(this,e.effects),G(this,l,u).call(this,e.render_effects)):(et=this,tt=null,dt(e.render_effects),dt(e.effects),et=null,null==(t=V(this,o))||t.resolve()),rt=null}capture(n,t){this.previous.has(n)||this.previous.set(n,t),0===(n.f&zn)&&(this.current.set(n,n.v),null==rt||rt.set(n,n.v))}activate(){tt=this,this.apply()}deactivate(){tt===this&&(tt=null,rt=null)}flush(){if(this.activate(),ot.length>0){if(ut(),null!==tt&&tt!==this)return}else 0===V(this,e)&&this.process([]);this.deactivate()}discard(){for(const n of V(this,t))n(this);V(this,t).clear()}increment(n){Q(this,e,V(this,e)+1),n&&Q(this,r,V(this,r)+1)}decrement(n){Q(this,e,V(this,e)-1),n&&Q(this,r,V(this,r)-1),this.revive()}revive(){for(const n of V(this,i))V(this,a).delete(n),nr(n,xn),ht(n);for(const n of V(this,a))nr(n,_n),ht(n);this.flush()}oncommit(t){V(this,n).add(t)}ondiscard(n){V(this,t).add(n)}settled(){return(V(this,o)??Q(this,o,vn())).promise}static ensure(){if(null===tt){const n=tt=new c;nt.add(tt),lt||c.enqueue(()=>{tt===n&&n.flush()})}return tt}static enqueue(n){Kn(n)}apply(){}};function ut(){var n=ke;at=!0;try{var t=0;for(Ce(!0);ot.length>0;){var e=st.ensure();if(t++>1e3)Z,ct();e.process(ot),Et.clear()}}finally{at=!1,Ce(n),it=null}}function ct(){try{!function(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}()}catch(n){Jn(n,it)}}let ft=null;function dt(n){var t=n.length;if(0!==t){for(var e=0;e<t;){var r=n[e++];if(!(24576&r.f)&&Ue(r)&&(ft=new Set,Xe(r),null===r.deps&&null===r.first&&null===r.nodes&&(null===r.teardown&&null===r.ac?be(r):r.fn=null),(null==ft?void 0:ft.size)>0)){Et.clear();for(const n of ft){if(24576&n.f)continue;const t=[n];let e=n.parent;for(;null!==e;)ft.has(e)&&(ft.delete(e),t.push(e)),e=e.parent;for(let n=t.length-1;n>=0;n--){const e=t[n];24576&e.f||Xe(e)}}ft.clear()}}ft=null}}function vt(n,t,e,r){if(!e.has(n)&&(e.add(n),null!==n.reactions))for(const o of n.reactions){const n=o.f;2&n?vt(o,t,e,r):4194320&n&&0===(n&xn)&&pt(o,t,r)&&(nr(o,xn),ht(o))}}function pt(n,t,e){const r=e.get(n);if(void 0!==r)return r;if(null!==n.deps)for(const o of n.deps){if(t.includes(o))return!0;if(2&o.f&&pt(o,t,e))return e.set(o,!0),!0}return e.set(n,!1),!1}function ht(n){for(var t=it=n;null!==t.parent;){var e=(t=t.parent).f;if(at&&t===Ie&&0!==(e&hn)&&0===(e&Mn))return;if(96&e){if(0===(e&yn))return;t.f^=yn}}ot.push(t)}class gt{constructor(n,t,e){X(this,N),H(this,"parent"),X(this,v,!1),X(this,p),X(this,h,null),X(this,g),X(this,b),X(this,m),X(this,w,null),X(this,y,null),X(this,x,null),X(this,_,null),X(this,k,null),X(this,C,0),X(this,S,0),X(this,A,!1),X(this,E,null),X(this,M,function(n){let t,e=0,r=Nt(0);return()=>{re()&&(Ge(r),se(()=>(0===e&&(t=Ye(()=>n(()=>Pt(r)))),e+=1,()=>{Kn(()=>{e-=1,0===e&&(null==t||t(),t=void 0,Pt(r))})})))}}(()=>(Q(this,E,Nt(V(this,C))),()=>{Q(this,E,null)}))),Q(this,p,n),Q(this,g,t),Q(this,b,e),this.parent=Ie.b,Q(this,v,!!V(this,g).pending),Q(this,m,ce(()=>{Ie.b=this;var n=G(this,N,I).call(this);try{Q(this,w,de(()=>e(n)))}catch(t){this.error(t)}return V(this,S)>0?G(this,N,F).call(this):Q(this,v,!1),()=>{var n;null==(n=V(this,k))||n.remove()}},589952))}is_pending(){return V(this,v)||!!this.parent&&this.parent.is_pending()}has_pending_snippet(){return!!V(this,g).pending}update_pending_count(n){G(this,N,z).call(this,n),Q(this,C,V(this,C)+n),V(this,E)&&zt(V(this,E),V(this,C))}get_effect_pending(){return V(this,M).call(this),Ge(V(this,E))}error(n){var t=V(this,g).onerror;let e=V(this,g).failed;if(V(this,A)||!t&&!e)throw n;V(this,w)&&(he(V(this,w)),Q(this,w,null)),V(this,y)&&(he(V(this,y)),Q(this,y,null)),V(this,x)&&(he(V(this,x)),Q(this,x,null));var r=!1,o=!1;const i=()=>{r?console.warn("https://svelte.dev/e/svelte_boundary_reset_noop"):(r=!0,o&&function(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}(),st.ensure(),Q(this,C,0),null!==V(this,x)&&me(V(this,x),()=>{Q(this,x,null)}),Q(this,v,this.has_pending_snippet()),Q(this,w,G(this,N,L).call(this,()=>(Q(this,A,!1),de(()=>V(this,b).call(this,V(this,p)))))),V(this,S)>0?G(this,N,F).call(this):Q(this,v,!1))};var a=Ee;try{Ne(null),o=!0,null==t||t(n,i),o=!1}catch(l){Jn(l,V(this,m)&&V(this,m).parent)}finally{Ne(a)}e&&Kn(()=>{Q(this,x,G(this,N,L).call(this,()=>{st.ensure(),Q(this,A,!0);try{return de(()=>{e(V(this,p),()=>n,()=>i)})}catch(l){return Jn(l,V(this,m).parent),null}finally{Q(this,A,!1)}}))})}}function bt(n,t,e,r){const o=Xn()?wt:_t;if(0!==e.length||0!==n.length){var i,a,l,s,u=tt,c=Ie,f=(i=Ie,a=Ee,l=qn,s=tt,function(n=!0){Le(i),Ne(a),Hn(l),n&&(null==s||s.activate())});n.length>0?Promise.all(n).then(()=>{f();try{return d()}finally{null==u||u.deactivate(),mt()}}):d()}else r(t.map(o));function d(){Promise.all(e.map(n=>yt(n))).then(n=>{f();try{r([...t.map(o),...n])}catch(e){0===(c.f&Cn)&&Jn(e,c)}null==u||u.deactivate(),mt()}).catch(n=>{Jn(n,c)})}}function mt(){Le(null),Ne(null),Hn(null)}function wt(n){var t=null!==Ee&&2&Ee.f?Ee:null;null!==Ie&&(Ie.f|=Nn);return{ctx:qn,deps:null,effects:null,equals:Dn,f:2050,fn:n,reactions:null,rv:0,v:Rn,wv:0,parent:t??Ie,ac:null}}function yt(n,t){let e=Ie;null===e&&function(){throw new Error("https://svelte.dev/e/async_derived_orphan")}();var r=e.b,o=void 0,i=Nt(Rn),a=!Ee,l=new Map;return function(n){ee(4718592,n,!0)}(()=>{var t,e=vn();o=e.promise;try{Promise.resolve(n()).then(e.resolve,e.reject).then(()=>{s===tt&&s.committed&&s.deactivate(),mt()})}catch(f){e.reject(f),mt()}var s=tt;if(a){var u=!r.is_pending();r.update_pending_count(1),s.increment(u),null==(t=l.get(s))||t.reject(Bn),l.delete(s),l.set(s,e)}const c=(n,t=void 0)=>{if(s.activate(),t)t!==Bn&&(i.f|=zn,zt(i,t));else{0!==(i.f&zn)&&(i.f^=zn),zt(i,n);for(const[n,t]of l){if(l.delete(n),n===s)break;t.reject(Bn)}}a&&(r.update_pending_count(-1),s.decrement(u))};e.promise.then(c,n=>c(null,n||"unknown"))}),oe(()=>{for(const n of l.values())n.reject(Bn)}),new Promise(n=>{!function t(e){function r(){e===o?n(i):t(o)}e.then(r,r)}(o)})}function xt(n){const t=wt(n);return ze(t),t}function _t(n){const t=wt(n);return t.equals=Wn,t}function kt(n){var t=n.effects;if(null!==t){n.effects=null;for(var e=0;e<t.length;e+=1)he(t[e])}}function Ct(n){var t,e=Ie;Le(function(n){for(var t=n.parent;null!==t;){if(!(2&t.f))return 0===(t.f&Cn)?t:null;t=t.parent}return null}(n));try{n.f&=-32769,kt(n),t=He(n)}finally{Le(e)}return t}function St(n){var t=Ct(n);(n.equals(t)||((null==tt?void 0:tt.is_fork)||(n.v=t),n.wv=We()),Se)||(null!==rt?(re()||(null==tt?void 0:tt.is_fork))&&rt.set(n,t):nr(n,0===(n.f&wn)?_n:yn))}v=new WeakMap,p=new WeakMap,h=new WeakMap,g=new WeakMap,b=new WeakMap,m=new WeakMap,w=new WeakMap,y=new WeakMap,x=new WeakMap,_=new WeakMap,k=new WeakMap,C=new WeakMap,S=new WeakMap,A=new WeakMap,E=new WeakMap,M=new WeakMap,N=new WeakSet,I=function(){var n=V(this,p);return V(this,v)&&(Q(this,k,$t()),V(this,p).before(V(this,k)),n=V(this,k)),n},L=function(n){var t=Ie,e=Ee,r=qn;Le(V(this,m)),Ne(V(this,m)),Hn(V(this,m).ctx);try{return n()}catch(o){return Yn(o),null}finally{Le(t),Ne(e),Hn(r)}},F=function(){const n=V(this,g).pending;null!==V(this,w)&&(Q(this,_,document.createDocumentFragment()),V(this,_).append(V(this,k)),_e(V(this,w),V(this,_))),null===V(this,y)&&Q(this,y,de(()=>n(V(this,p))))},z=function(n){var t;this.has_pending_snippet()?(Q(this,S,V(this,S)+n),0===V(this,S)&&(Q(this,v,!1),V(this,y)&&me(V(this,y),()=>{Q(this,y,null)}),V(this,_)&&(V(this,p).before(V(this,_)),Q(this,_,null)))):this.parent&&G(t=this.parent,N,z).call(t,n)};let At=new Set;const Et=new Map;let Mt=!1;function Nt(n,t){return{f:0,v:n,reactions:null,equals:Dn,rv:0,wv:0}}function It(n,t){const e=Nt(n);return ze(e),e}function Lt(n,t=!1,e=!0){var r;const o=Nt(n);return t||(o.equals=Wn),Un&&e&&null!==qn&&null!==qn.l&&((r=qn.l).s??(r.s=[])).push(o),o}function Ft(n,t,e=!1){return null!==Ee&&(!Me||0!==(Ee.f&En))&&Xn()&&4325394&Ee.f&&!(null==Fe?void 0:Fe.includes(n))&&function(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}(),zt(n,e?Bt(t):t)}function zt(n,t){if(!n.equals(t)){var e=n.v;Se?Et.set(n,t):Et.set(n,e),n.v=t;var r=st.ensure();r.capture(n,e),2&n.f&&(0!==(n.f&xn)&&Ct(n),nr(n,0!==(n.f&wn)?yn:_n)),n.wv=We(),Tt(n,xn),!Xn()||null===Ie||0===(Ie.f&yn)||96&Ie.f||(null===Te?function(n){Te=n}([n]):Te.push(n)),!r.is_fork&&At.size>0&&!Mt&&function(){Mt=!1;var n=ke;Ce(!0);const t=Array.from(At);try{for(const n of t)0!==(n.f&yn)&&nr(n,_n),Ue(n)&&Xe(n)}finally{Ce(n)}At.clear()}()}return t}function jt(n,t=1){var e=Ge(n),r=1===t?e++:e--;return Ft(n,e),r}function Pt(n){Ft(n,n.v+1)}function Tt(n,t){var e=n.reactions;if(null!==e)for(var r=Xn(),o=e.length,i=0;i<o;i++){var a=e[i],l=a.f;if(r||a!==Ie){var s=0===(l&xn);if(s&&nr(a,t),2&l){var u=a;null==rt||rt.delete(u),0===(l&Ln)&&(l&wn&&(a.f|=Ln),Tt(u,_n))}else s&&(0!==(l&hn)&&null!==ft&&ft.add(a),ht(a))}}}function Bt(n){if("object"!=typeof n||null===n||jn in n)return n;const t=ln(n);if(t!==on&&t!==an)return n;var e=new Map,r=Y(n),o=It(0),i=Re,a=n=>{if(Re===i)return n();var t=Ee,e=Re;Ne(null),De(i);var r=n();return Ne(t),De(e),r};return r&&e.set("length",It(n.length)),new Proxy(n,{defineProperty(n,t,r){"value"in r&&!1!==r.configurable&&!1!==r.enumerable&&!1!==r.writable||function(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}();var o=e.get(t);return void 0===o?o=a(()=>{var n=It(r.value);return e.set(t,n),n}):Ft(o,r.value,!0),!0},deleteProperty(n,t){var r=e.get(t);if(void 0===r){if(t in n){const n=a(()=>It(Rn));e.set(t,n),Pt(o)}}else Ft(r,Rn),Pt(o);return!0},get(t,r,o){var i;if(r===jn)return n;var l=e.get(r),s=r in t;if(void 0!==l||s&&!(null==(i=en(t,r))?void 0:i.writable)||(l=a(()=>It(Bt(s?t[r]:Rn))),e.set(r,l)),void 0!==l){var u=Ge(l);return u===Rn?void 0:u}return Reflect.get(t,r,o)},getOwnPropertyDescriptor(n,t){var r=Reflect.getOwnPropertyDescriptor(n,t);if(r&&"value"in r){var o=e.get(t);o&&(r.value=Ge(o))}else if(void 0===r){var i=e.get(t),a=null==i?void 0:i.v;if(void 0!==i&&a!==Rn)return{enumerable:!0,configurable:!0,value:a,writable:!0}}return r},has(n,t){var r;if(t===jn)return!0;var o=e.get(t),i=void 0!==o&&o.v!==Rn||Reflect.has(n,t);if((void 0!==o||null!==Ie&&(!i||(null==(r=en(n,t))?void 0:r.writable)))&&(void 0===o&&(o=a(()=>It(i?Bt(n[t]):Rn)),e.set(t,o)),Ge(o)===Rn))return!1;return i},set(n,t,i,l){var s,u=e.get(t),c=t in n;if(r&&"length"===t)for(var f=i;f<u.v;f+=1){var d=e.get(f+"");void 0!==d?Ft(d,Rn):f in n&&(d=a(()=>It(Rn)),e.set(f+"",d))}void 0===u?c&&!(null==(s=en(n,t))?void 0:s.writable)||(Ft(u=a(()=>It(void 0)),Bt(i)),e.set(t,u)):(c=u.v!==Rn,Ft(u,a(()=>Bt(i))));var v=Reflect.getOwnPropertyDescriptor(n,t);if((null==v?void 0:v.set)&&v.set.call(l,i),!c){if(r&&"string"==typeof t){var p=e.get("length"),h=Number(t);Number.isInteger(h)&&h>=p.v&&Ft(p,h+1)}Pt(o)}return!0},ownKeys(n){Ge(o);var t=Reflect.ownKeys(n).filter(n=>{var t=e.get(n);return void 0===t||t.v!==Rn});for(var[r,i]of e)i.v===Rn||r in n||t.push(r);return t},setPrototypeOf(){!function(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}()}})}function Ot(n){try{if(null!==n&&"object"==typeof n&&jn in n)return n[jn]}catch{}return n}function Rt(n,t){return Object.is(Ot(n),Ot(t))}var Dt,Wt,Ut,qt,Ht;function $t(n=""){return document.createTextNode(n)}function Vt(n){return qt.call(n)}function Xt(n){return Ht.call(n)}function Qt(n,t){return Vt(n)}function Gt(n,t=!1){var e=Vt(n);return e instanceof Comment&&""===e.data?Xt(e):e}function Kt(n,t=1,e=!1){let r=n;for(;t--;)r=Xt(r);return r}function Zt(n,t){if(t){const t=document.body;n.autofocus=!0,Kn(()=>{document.activeElement===t&&n.focus()})}}let Yt=!1;function Jt(n){var t=Ee,e=Ie;Ne(null),Le(null);try{return n()}finally{Ne(t),Le(e)}}function ne(n,t,e,r=e){n.addEventListener(t,()=>Jt(e));const o=n.__on_r;n.__on_r=o?()=>{o(),r(!0)}:()=>r(!0),Yt||(Yt=!0,document.addEventListener("reset",n=>{Promise.resolve().then(()=>{var t;if(!n.defaultPrevented)for(const e of n.target.elements)null==(t=e.__on_r)||t.call(e)})},{capture:!0}))}function te(n){null===Ie&&(null===Ee&&function(){throw new Error("https://svelte.dev/e/effect_orphan")}(),function(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}()),Se&&function(){throw new Error("https://svelte.dev/e/effect_in_teardown")}()}function ee(n,t,e){var r=Ie;null!==r&&0!==(r.f&kn)&&(n|=kn);var o={ctx:qn,deps:null,nodes:null,f:n|xn|wn,first:null,fn:t,last:null,next:null,parent:r,b:r&&r.b,prev:null,teardown:null,wv:0,ac:null};if(e)try{Xe(o),o.f|=Sn}catch(l){throw he(o),l}else null!==t&&ht(o);var i=o;if(e&&null===i.deps&&null===i.teardown&&null===i.nodes&&i.first===i.last&&0===(i.f&Nn)&&(i=i.first,0!==(n&hn)&&0!==(n&An)&&null!==i&&(i.f|=An)),null!==i&&(i.parent=r,null!==r&&function(n,t){var e=t.last;null===e?t.last=t.first=n:(e.next=n,n.prev=e,t.last=n)}(i,r),null!==Ee&&2&Ee.f&&0===(n&bn))){var a=Ee;(a.effects??(a.effects=[])).push(i)}return o}function re(){return null!==Ee&&!Me}function oe(n){const t=ee(8,null,!1);return nr(t,yn),t.teardown=n,t}function ie(n){te();var t=Ie.f;if(!(!Ee&&0!==(t&gn)&&0===(t&Sn)))return ae(n);var e=qn;(e.e??(e.e=[])).push(n)}function ae(n){return ee(1048580,n,!1)}function le(n){return ee(4,n,!1)}function se(n,t=0){return ee(8|t,n,!0)}function ue(n,t=[],e=[],r=[]){bt(r,t,e,t=>{ee(8,()=>n(...t.map(Ge)),!0)})}function ce(n,t=0){return ee(hn|t,n,!0)}function fe(n,t=0){return ee(pn|t,n,!0)}function de(n){return ee(524320,n,!0)}function ve(n){var t=n.teardown;if(null!==t){const n=Se,e=Ee;Ae(!0),Ne(null);try{t.call(null)}finally{Ae(n),Ne(e)}}}function pe(n,t=!1){var e=n.first;for(n.first=n.last=null;null!==e;){const n=e.ac;null!==n&&Jt(()=>{n.abort(Bn)});var r=e.next;0!==(e.f&bn)?e.parent=null:he(e,t),e=r}}function he(n,t=!0){var e=!1;!t&&0===(n.f&Mn)||null===n.nodes||null===n.nodes.end||(ge(n.nodes.start,n.nodes.end),e=!0),pe(n,t&&!e),Ve(n,0),nr(n,Cn);var r=n.nodes&&n.nodes.t;if(null!==r)for(const i of r)i.stop();ve(n);var o=n.parent;null!==o&&null!==o.first&&be(n),n.next=n.prev=n.teardown=n.ctx=n.deps=n.fn=n.nodes=n.ac=null}function ge(n,t){for(;null!==n;){var e=n===t?null:Xt(n);n.remove(),n=e}}function be(n){var t=n.parent,e=n.prev,r=n.next;null!==e&&(e.next=r),null!==r&&(r.prev=e),null!==t&&(t.first===n&&(t.first=r),t.last===n&&(t.last=e))}function me(n,t,e=!0){var r=[];we(n,r,!0);var o=()=>{e&&he(n),t&&t()},i=r.length;if(i>0){var a=()=>--i||o();for(var l of r)l.out(a)}else o()}function we(n,t,e){if(0===(n.f&kn)){n.f^=kn;var r=n.nodes&&n.nodes.t;if(null!==r)for(const n of r)(n.is_global||e)&&t.push(n);for(var o=n.first;null!==o;){var i=o.next;we(o,t,!!(0!==(o.f&An)||0!==(o.f&gn)&&0!==(n.f&hn))&&e),o=i}}}function ye(n){xe(n,!0)}function xe(n,t){if(0!==(n.f&kn)){n.f^=kn,0===(n.f&yn)&&(nr(n,xn),ht(n));for(var e=n.first;null!==e;){var r=e.next;xe(e,!!(0!==(e.f&An)||0!==(e.f&gn))&&t),e=r}var o=n.nodes&&n.nodes.t;if(null!==o)for(const n of o)(n.is_global||t)&&n.in()}}function _e(n,t){if(n.nodes)for(var e=n.nodes.start,r=n.nodes.end;null!==e;){var o=e===r?null:Xt(e);t.append(e),e=o}}let ke=!1;function Ce(n){ke=n}let Se=!1;function Ae(n){Se=n}let Ee=null,Me=!1;function Ne(n){Ee=n}let Ie=null;function Le(n){Ie=n}let Fe=null;function ze(n){null!==Ee&&(null===Fe?Fe=[n]:Fe.push(n))}let je=null,Pe=0,Te=null;let Be=1,Oe=0,Re=Oe;function De(n){Re=n}function We(){return++Be}function Ue(n){var t=n.f;if(0!==(t&xn))return!0;if(2&t&&(n.f&=-32769),0!==(t&_n)){var e=n.deps;if(null!==e)for(var r=e.length,o=0;o<r;o++){var i=e[o];if(Ue(i)&&St(i),i.wv>n.wv)return!0}0!==(t&wn)&&null===rt&&nr(n,yn)}return!1}function qe(n,t,e=!0){var r=n.reactions;if(null!==r&&!(null==Fe?void 0:Fe.includes(n)))for(var o=0;o<r.length;o++){var i=r[o];2&i.f?qe(i,t,!1):t===i&&(e?nr(i,xn):0!==(i.f&yn)&&nr(i,_n),ht(i))}}function He(n){var t,e=je,r=Pe,o=Te,i=Ee,a=Fe,l=qn,s=Me,u=Re,c=n.f;je=null,Pe=0,Te=null,Ee=96&c?null:n,Fe=null,Hn(n.ctx),Me=!1,Re=++Oe,null!==n.ac&&(Jt(()=>{n.ac.abort(Bn)}),n.ac=null);try{n.f|=Fn;var f=(0,n.fn)(),d=n.deps;if(null!==je){var v;if(Ve(n,Pe),null!==d&&Pe>0)for(d.length=Pe+je.length,v=0;v<je.length;v++)d[Pe+v]=je[v];else n.deps=d=je;if(re()&&0!==(n.f&wn))for(v=Pe;v<d.length;v++)((t=d[v]).reactions??(t.reactions=[])).push(n)}else null!==d&&Pe<d.length&&(Ve(n,Pe),d.length=Pe);if(Xn()&&null!==Te&&!Me&&null!==d&&!(6146&n.f))for(v=0;v<Te.length;v++)qe(Te[v],n);return null!==i&&i!==n&&(Oe++,null!==Te&&(null===o?o=Te:o.push(...Te))),0!==(n.f&zn)&&(n.f^=zn),f}catch(p){return Yn(p)}finally{n.f^=Fn,je=e,Pe=r,Te=o,Ee=i,Fe=a,Hn(l),Me=s,Re=u}}function $e(n,t){let e=t.reactions;if(null!==e){var r=J.call(e,n);if(-1!==r){var o=e.length-1;0===o?e=t.reactions=null:(e[r]=e[o],e.pop())}}null===e&&2&t.f&&(null===je||!je.includes(t))&&(nr(t,_n),0!==(t.f&wn)&&(t.f^=wn,t.f&=-32769),kt(t),Ve(t,0))}function Ve(n,t){var e=n.deps;if(null!==e)for(var r=t;r<e.length;r++)$e(n,e[r])}function Xe(n){var t=n.f;if(0===(t&Cn)){nr(n,yn);var e=Ie,r=ke;Ie=n,ke=!0;try{16777232&t?function(n){for(var t=n.first;null!==t;){var e=t.next;0===(t.f&gn)&&he(t),t=e}}(n):pe(n),ve(n);var o=He(n);n.teardown="function"==typeof o?o:null,n.wv=Be}finally{ke=r,Ie=e}}}async function Qe(){await Promise.resolve(),function(){var n=lt;lt=!0;try{for(;;){if(Zn(),0===ot.length&&(null==tt||tt.flush(),0===ot.length))return void(it=null);ut()}}finally{lt=n}}()}function Ge(n){var t=!!(2&n.f);if(null!==Ee&&!Me&&(!(null!==Ie&&0!==(Ie.f&Cn))&&!(null==Fe?void 0:Fe.includes(n)))){var e=Ee.deps;if(0!==(Ee.f&Fn))n.rv<Oe&&(n.rv=Oe,null===je&&null!==e&&e[Pe]===n?Pe++:null===je?je=[n]:je.includes(n)||je.push(n));else{(Ee.deps??(Ee.deps=[])).push(n);var r=n.reactions;null===r?n.reactions=[Ee]:r.includes(Ee)||r.push(Ee)}}if(Se){if(Et.has(n))return Et.get(n);if(t){var o=n,i=o.v;return(0===(o.f&yn)&&null!==o.reactions||Ze(o))&&(i=Ct(o)),Et.set(o,i),i}}else t&&(!(null==rt?void 0:rt.has(n))||(null==tt?void 0:tt.is_fork)&&!re())&&(Ue(o=n)&&St(o),ke&&re()&&0===(o.f&wn)&&Ke(o));if(null==rt?void 0:rt.has(n))return rt.get(n);if(0!==(n.f&zn))throw n.v;return n.v}function Ke(n){if(null!==n.deps){n.f^=wn;for(const t of n.deps)(t.reactions??(t.reactions=[])).push(n),2&t.f&&0===(t.f&wn)&&Ke(t)}}function Ze(n){if(n.v===Rn)return!0;if(null===n.deps)return!1;for(const t of n.deps){if(Et.has(t))return!0;if(2&t.f&&Ze(t))return!0}return!1}function Ye(n){var t=Me;try{return Me=!0,n()}finally{Me=t}}const Je=-7169;function nr(n,t){n.f=n.f&Je|t}function tr(n){if("object"==typeof n&&n&&!(n instanceof EventTarget))if(jn in n)er(n);else if(!Array.isArray(n))for(let t in n){const e=n[t];"object"==typeof e&&e&&jn in e&&er(e)}}function er(n,t=new Set){if(!("object"!=typeof n||null===n||n instanceof EventTarget||t.has(n))){t.add(n),n instanceof Date&&n.getTime();for(let o in n)try{er(n[o],t)}catch(e){}const r=ln(n);if(r!==Object.prototype&&r!==Array.prototype&&r!==Map.prototype&&r!==Set.prototype&&r!==Date.prototype){const t=rn(r);for(let r in t){const o=t[r].get;if(o)try{o.call(n)}catch(e){}}}}}function rr(n){return n.endsWith("capture")&&"gotpointercapture"!==n&&"lostpointercapture"!==n}const or=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function ir(n){return or.includes(n)}const ar={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function lr(n){return n=n.toLowerCase(),ar[n]??n}const sr=["touchstart","touchmove"];function ur(n){return sr.includes(n)}const cr=new Set,fr=new Set;function dr(n,t,e,r={}){function o(n){if(r.capture||gr.call(t,n),!n.cancelBubble)return Jt(()=>null==e?void 0:e.call(this,n))}return n.startsWith("pointer")||n.startsWith("touch")||"wheel"===n?Kn(()=>{t.addEventListener(n,o,r)}):t.addEventListener(n,o,r),o}function vr(n,t,e,r,o){var i={capture:r,passive:o},a=dr(n,t,e,i);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&oe(()=>{t.removeEventListener(n,a,i)})}function pr(n){for(var t=0;t<n.length;t++)cr.add(n[t]);for(var e of fr)e(n)}let hr=null;function gr(n){var t,e=this,r=e.ownerDocument,o=n.type,i=(null==(t=n.composedPath)?void 0:t.call(n))||[],a=i[0]||n.target;hr=n;var l=0,s=hr===n&&n.__root;if(s){var u=i.indexOf(s);if(-1!==u&&(e===document||e===window))return void(n.__root=e);var c=i.indexOf(e);if(-1===c)return;u<=c&&(l=u)}if((a=i[l]||n.target)!==e){tn(n,"currentTarget",{configurable:!0,get:()=>a||r});var f=Ee,d=Ie;Ne(null),Le(null);try{for(var v,p=[];null!==a;){var h=a.assignedSlot||a.parentNode||a.host||null;try{var g=a["__"+o];null==g||a.disabled&&n.target!==a||g.call(a,n)}catch(b){v?p.push(b):v=b}if(n.cancelBubble||h===e||null===h)break;a=h}if(v){for(let n of p)queueMicrotask(()=>{throw n});throw v}}finally{n.__root=e,delete n.currentTarget,Ne(f),Le(d)}}}function br(n){var t=document.createElement("template");return t.innerHTML=n.replaceAll("<!>","\x3c!----\x3e"),t.content}function mr(n,t){var e=Ie;null===e.nodes&&(e.nodes={start:n,end:t,a:null,t:null})}function wr(n,t){var e,r=!!(1&t),o=!!(2&t),i=!n.startsWith("<!>");return()=>{void 0===e&&(e=br(i?n:"<!>"+n),r||(e=Vt(e)));var t=o||Ut?document.importNode(e,!0):e.cloneNode(!0);r?mr(Vt(t),t.lastChild):mr(t,t);return t}}function yr(n,t,e="svg"){var r,o=`<${e}>${!n.startsWith("<!>")?n:"<!>"+n}</${e}>`;return()=>{if(!r){var n=br(o);r=Vt(Vt(n))}var t=r.cloneNode(!0);return mr(t,t),t}}function xr(n,t){return yr(n,0,"svg")}function _r(){var n=document.createDocumentFragment(),t=document.createComment(""),e=$t();return n.append(t,e),mr(t,e),n}function kr(n,t){null!==n&&n.before(t)}let Cr=!0;function Sr(n){Cr=n}function Ar(n,t){var e=null==t?"":"object"==typeof t?t+"":t;e!==(n.__t??(n.__t=n.nodeValue))&&(n.__t=e,n.nodeValue=e+"")}function Er(n,t){return function(n,{target:t,anchor:e,props:r={},events:o,context:i,intro:a=!0}){!function(){if(void 0===Dt){Dt=window,Wt=document,Ut=/Firefox/.test(navigator.userAgent);var n=Element.prototype,t=Node.prototype,e=Text.prototype;qt=en(t,"firstChild").get,Ht=en(t,"nextSibling").get,sn(n)&&(n.__click=void 0,n.__className=void 0,n.__attributes=null,n.__style=void 0,n.__e=void 0),sn(e)&&(e.__t=void 0)}}();var l=new Set,s=n=>{for(var e=0;e<n.length;e++){var r=n[e];if(!l.has(r)){l.add(r);var o=ur(r);t.addEventListener(r,gr,{passive:o});var i=Mr.get(r);void 0===i?(document.addEventListener(r,gr,{passive:o}),Mr.set(r,1)):Mr.set(r,i+1)}}};s(nn(cr)),fr.add(s);var u=void 0,c=function(n){st.ensure();const t=ee(524352,n,!0);return(n={})=>new Promise(e=>{n.outro?me(t,()=>{he(t),e(void 0)}):(he(t),e(void 0))})}(()=>{var c=e??t.appendChild($t());return function(n,t,e){new gt(n,t,e)}(c,{pending:()=>{}},t=>{i&&($n({}),qn.c=i);o&&(r.$$events=o),Cr=a,u=n(t,r)||{},Cr=!0,i&&Vn()}),()=>{var n;for(var r of l){t.removeEventListener(r,gr);var o=Mr.get(r);0===--o?(document.removeEventListener(r,gr),Mr.delete(r)):Mr.set(r,o)}fr.delete(s),c!==e&&(null==(n=c.parentNode)||n.removeChild(c))}});return Nr.set(u,c),u}(n,t)}const Mr=new Map;let Nr=new WeakMap;function Ir(n,t){const e=Nr.get(n);return e?(Nr.delete(n),e(t)):Promise.resolve()}class Lr{constructor(n,t=!0){H(this,"anchor"),X(this,j,new Map),X(this,P,new Map),X(this,T,new Map),X(this,B,new Set),X(this,O,!0),X(this,R,()=>{var n=tt;if(V(this,j).has(n)){var t=V(this,j).get(n),e=V(this,P).get(t);if(e)ye(e),V(this,B).delete(t);else{var r=V(this,T).get(t);r&&(V(this,P).set(t,r.effect),V(this,T).delete(t),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),e=r.effect)}for(const[t,e]of V(this,j)){if(V(this,j).delete(t),t===n)break;const r=V(this,T).get(e);r&&(he(r.effect),V(this,T).delete(e))}for(const[n,r]of V(this,P)){if(n===t||V(this,B).has(n))continue;const o=()=>{if(Array.from(V(this,j).values()).includes(n)){var t=document.createDocumentFragment();_e(r,t),t.append($t()),V(this,T).set(n,{effect:r,fragment:t})}else he(r);V(this,B).delete(n),V(this,P).delete(n)};V(this,O)||!e?(V(this,B).add(n),me(r,o,!1)):o()}}}),X(this,D,n=>{V(this,j).delete(n);const t=Array.from(V(this,j).values());for(const[e,r]of V(this,T))t.includes(e)||(he(r.effect),V(this,T).delete(e))}),this.anchor=n,Q(this,O,t)}ensure(n,t){var e=tt;!t||V(this,P).has(n)||V(this,T).has(n)||V(this,P).set(n,de(()=>t(this.anchor)));V(this,j).set(e,n),V(this,R).call(this)}}function Fr(n,t,e=!1){var r=new Lr(n);function o(n,t){r.ensure(n,t)}ce(()=>{var n=!1;t((t,e=!0)=>{n=!0,o(e,t)}),n||o(!1,null)},e?An:0)}function zr(n,t){return t}function jr(n,t=!0){for(var e=0;e<n.length;e++)he(n[e],t)}var Pr;function Tr(n,t,e,r,o,i=null){var a=n,l=new Map;!(4&t)||(a=n.appendChild($t()));var s,u=null,c=_t(()=>{var n=e();return Y(n)?n:null==n?[]:nn(n)}),f=!0;function d(){v.fallback=u,function(n,t,e,r,o){var i,a,l,s,u,c,f,d,v,p,h,g,b,m,w=!!(8&r),y=t.length,x=n.items,_=n.effect.first,k=null,C=[],S=[];if(w)for(m=0;m<y;m+=1)g=o(t[m],m),0===((b=x.get(g).e).f&In)&&(null==(a=null==(i=b.nodes)?void 0:i.a)||a.measure(),(h??(h=new Set)).add(b));for(m=0;m<y;m+=1){if(g=o(t[m],m),b=x.get(g).e,null!==n.outrogroups)for(const t of n.outrogroups)t.pending.delete(b),t.done.delete(b);if(0!==(b.f&In)){if(b.f^=In,b!==_){var A=k?k.next:_;b===n.effect.last&&(n.effect.last=b.prev),b.prev&&(b.prev.next=b.next),b.next&&(b.next.prev=b.prev),Rr(n,k,b),Rr(n,b,A),Or(b,A,e),C=[],S=[],_=(k=b).next;continue}Or(b,null,e)}if(0!==(b.f&kn)&&(ye(b),w&&(null==(s=null==(l=b.nodes)?void 0:l.a)||s.unfix(),(h??(h=new Set)).delete(b))),b!==_){if(void 0!==p&&p.has(b)){if(C.length<S.length){var E,M=S[0];k=M.prev;var N=C[0],I=C[C.length-1];for(E=0;E<C.length;E+=1)Or(C[E],M,e);for(E=0;E<S.length;E+=1)p.delete(S[E]);Rr(n,N.prev,I.next),Rr(n,k,N),Rr(n,I,M),_=M,k=I,m-=1,C=[],S=[]}else p.delete(b),Or(b,_,e),Rr(n,b.prev,b.next),Rr(n,b,null===k?n.effect.first:k.next),Rr(n,k,b),k=b;continue}for(C=[],S=[];null!==_&&_!==b;)(p??(p=new Set)).add(_),S.push(_),_=_.next;if(null===_)continue}0===(b.f&In)&&C.push(b),k=b,_=b.next}if(null!==n.outrogroups){for(const t of n.outrogroups)0===t.pending.size&&(jr(nn(t.done)),null==(u=n.outrogroups)||u.delete(t));0===n.outrogroups.size&&(n.outrogroups=null)}if(null!==_||void 0!==p){var L=[];if(void 0!==p)for(b of p)0===(b.f&kn)&&L.push(b);for(;null!==_;)0===(_.f&kn)&&_!==n.fallback&&L.push(_),_=_.next;var F=L.length;if(F>0){var z=4&r&&0===y?e:null;if(w){for(m=0;m<F;m+=1)null==(f=null==(c=L[m].nodes)?void 0:c.a)||f.measure();for(m=0;m<F;m+=1)null==(v=null==(d=L[m].nodes)?void 0:d.a)||v.fix()}!function(n,t,e){for(var r,o=t.length,i=t.length,a=0;a<o;a++){let e=t[a];me(e,()=>{if(r){if(r.pending.delete(e),r.done.add(e),0===r.pending.size){var t=n.outrogroups;jr(nn(r.done)),t.delete(r),0===t.size&&(n.outrogroups=null)}}else i-=1},!1)}if(0===i){var l=null!==e;if(l){var s=e,u=s.parentNode;u.textContent="",u.append(s),n.items.clear()}jr(t,!l)}else r={pending:new Set(t),done:new Set},(n.outrogroups??(n.outrogroups=new Set)).add(r)}(n,L,z)}}w&&Kn(()=>{var n,t;if(void 0!==h)for(b of h)null==(t=null==(n=b.nodes)?void 0:n.a)||t.apply()})}(v,s,a,t,r),null!==u&&(0===s.length?0===(u.f&In)?ye(u):(u.f^=In,Or(u,null,a)):me(u,()=>{u=null}))}var v={effect:ce(()=>{for(var n=(s=Ge(c)).length,v=new Set,p=0;p<n;p+=1){var h=s[p],g=r(h,p),b=f?null:l.get(g);b?(b.v&&zt(b.v,h),b.i&&zt(b.i,p)):(b=Br(l,f?a:Pr??(Pr=$t()),h,g,p,o,t,e),f||(b.e.f|=In),l.set(g,b)),v.add(g)}0===n&&i&&!u&&(f?u=de(()=>i(a)):(u=de(()=>i(Pr??(Pr=$t())))).f|=In),f||d(),Ge(c)}),items:l,outrogroups:null,fallback:u};f=!1}function Br(n,t,e,r,o,i,a,l){var s=1&a?16&a?Nt(e):Lt(e,!1,!1):null,u=2&a?Nt(o):null;return{v:s,i:u,e:de(()=>(i(t,s??e,u??o,l),()=>{n.delete(r)}))}}function Or(n,t,e){if(n.nodes)for(var r=n.nodes.start,o=n.nodes.end,i=t&&0===(t.f&In)?t.nodes.start:e;null!==r;){var a=Xt(r);if(i.before(r),r===o)return;r=a}}function Rr(n,t,e){null===t?n.effect.first=e:t.next=e,null===e?n.effect.last=t:e.prev=t}function Dr(n,t,e,r,o){var i,a=null==(i=t.$$slots)?void 0:i[e],l=!1;!0===a&&(a=t.children,l=!0),void 0===a||a(n,l?()=>r:r)}j=new WeakMap,P=new WeakMap,T=new WeakMap,B=new WeakMap,O=new WeakMap,R=new WeakMap,D=new WeakMap;const Wr={tick:n=>requestAnimationFrame(n),now:()=>performance.now(),tasks:new Set};function Ur(){const n=Wr.now();Wr.tasks.forEach(t=>{t.c(n)||(Wr.tasks.delete(t),t.f())}),0!==Wr.tasks.size&&Wr.tick(Ur)}function qr(n,t){Jt(()=>{n.dispatchEvent(new CustomEvent(t))})}function Hr(n){if("float"===n)return"cssFloat";if("offset"===n)return"cssOffset";if(n.startsWith("--"))return n;const t=n.split("-");return 1===t.length?t[0]:t[0]+t.slice(1).map(n=>n[0].toUpperCase()+n.slice(1)).join("")}function $r(n){const t={},e=n.split(";");for(const r of e){const[n,e]=r.split(":");if(!n||void 0===e)break;t[Hr(n.trim())]=e.trim()}return t}const Vr=n=>n;function Xr(n,t,e,r){var o,i,a,l,s=!!(1&n),u=!!(2&n),c=!!(4&n),f=s&&u?"both":s?"in":"out",d=t.inert,v=t.style.overflow;function p(){return Jt(()=>i??(i=e()(t,(null==r?void 0:r())??{},{direction:f})))}var h={is_global:c,in(){var n;if(t.inert=d,!s)return null==l||l.abort(),void(null==(n=null==l?void 0:l.reset)||n.call(l));u||null==a||a.abort(),qr(t,"introstart"),a=Qr(t,p(),l,1,()=>{qr(t,"introend"),null==a||a.abort(),a=i=void 0,t.style.overflow=v})},out(n){if(!u)return null==n||n(),void(i=void 0);t.inert=!0,qr(t,"outrostart"),l=Qr(t,p(),a,0,()=>{qr(t,"outroend"),null==n||n()})},stop:()=>{null==a||a.abort(),null==l||l.abort()}},g=Ie;if(((o=g.nodes).t??(o.t=[])).push(h),s&&Cr){var b=c;if(!b){for(var m=g.parent;m&&0!==(m.f&An);)for(;(m=m.parent)&&0===(m.f&hn););b=!m||0!==(m.f&Sn)}b&&le(()=>{Ye(()=>h.in())})}}function Qr(n,t,e,r,o){var i=1===r;if(un(t)){var a,l=!1;return Kn(()=>{if(!l){var s=t({direction:i?"in":"out"});a=Qr(n,s,e,r,o)}}),{abort:()=>{l=!0,null==a||a.abort()},deactivate:()=>a.deactivate(),reset:()=>a.reset(),t:()=>a.t()}}if(null==e||e.deactivate(),!(null==t?void 0:t.duration))return o(),{abort:cn,deactivate:cn,reset:cn,t:()=>r};const{delay:s=0,css:u,tick:c,easing:f=Vr}=t;var d=[];if(i&&void 0===e&&(c&&c(0,1),u)){var v=$r(u(0,1));d.push(v,v)}var p=()=>1-r,h=n.animate(d,{duration:s,fill:"forwards"});return h.onfinish=()=>{h.cancel();var i=(null==e?void 0:e.t())??1-r;null==e||e.abort();var a=r-i,l=t.duration*Math.abs(a),s=[];if(l>0){var d=!1;if(u)for(var v=Math.ceil(l/(1e3/60)),g=0;g<=v;g+=1){var b=i+a*f(g/v),m=$r(u(b,1-b));s.push(m),d||(d="hidden"===m.overflow)}d&&(n.style.overflow="hidden"),p=()=>{var n=h.currentTime;return i+a*f(n/l)},c&&function(n){let t;0===Wr.tasks.size&&Wr.tick(Ur),new Promise(e=>{Wr.tasks.add(t={c:n,f:e})})}(()=>{if("running"!==h.playState)return!1;var n=p();return c(n,1-n),!0})}(h=n.animate(s,{duration:l,fill:"forwards"})).onfinish=()=>{p=()=>r,null==c||c(r,1-r),o()}},{abort:()=>{h&&(h.cancel(),h.effect=null,h.onfinish=cn)},deactivate:()=>{o=cn},reset:()=>{0===r&&(null==c||c(1,0))},t:()=>p()}}function Gr(n,t){le(()=>{var e=n.getRootNode(),r=e.host?e:e.head??e.ownerDocument.head;if(!r.querySelector("#"+t.hash)){const n=document.createElement("style");n.id=t.hash,n.textContent=t.code,r.appendChild(n)}})}function Kr(n,t){var e,r=void 0;fe(()=>{r!==(r=t())&&(e&&(he(e),e=null),r&&(e=de(()=>{le(()=>r(n))})))})}function Zr(n){var t,e,r="";if("string"==typeof n||"number"==typeof n)r+=n;else if("object"==typeof n)if(Array.isArray(n)){var o=n.length;for(t=0;t<o;t++)n[t]&&(e=Zr(n[t]))&&(r&&(r+=" "),r+=e)}else for(e in n)n[e]&&(r&&(r+=" "),r+=e);return r}function Yr(n){return"object"==typeof n?function(){for(var n,t,e=0,r="",o=arguments.length;e<o;e++)(n=arguments[e])&&(t=Zr(n))&&(r&&(r+=" "),r+=t);return r}(n):n??""}const Jr=[..." \t\n\r\f \v\ufeff"];function no(n,t=!1){var e=t?" !important;":";",r="";for(var o in n){var i=n[o];null!=i&&""!==i&&(r+=" "+o+": "+i+e)}return r}function to(n){return"-"!==n[0]||"-"!==n[1]?n.toLowerCase():n}function eo(n,t,e,r,o,i){var a=n.__className;if(a!==e||void 0===a){var l=function(n,t,e){var r=null==n?"":""+n;if(t&&(r=r?r+" "+t:t),e)for(var o in e)if(e[o])r=r?r+" "+o:o;else if(r.length)for(var i=o.length,a=0;(a=r.indexOf(o,a))>=0;){var l=a+i;0!==a&&!Jr.includes(r[a-1])||l!==r.length&&!Jr.includes(r[l])?a=l:r=(0===a?"":r.substring(0,a))+r.substring(l+1)}return""===r?null:r}(e,r,i);null==l?n.removeAttribute("class"):t?n.className=l:n.setAttribute("class",l),n.__className=e}else if(i&&o!==i)for(var s in i){var u=!!i[s];null!=o&&u===!!o[s]||n.classList.toggle(s,u)}return i}function ro(n,t={},e,r){for(var o in e){var i=e[o];t[o]!==i&&(null==e[o]?n.style.removeProperty(o):n.style.setProperty(o,i,r))}}function oo(n,t,e,r){if(n.__style!==t){var o=function(n,t){if(t){var e,r,o="";if(Array.isArray(t)?(e=t[0],r=t[1]):e=t,n){n=String(n).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var i=!1,a=0,l=!1,s=[];e&&s.push(...Object.keys(e).map(to)),r&&s.push(...Object.keys(r).map(to));var u=0,c=-1;const t=n.length;for(var f=0;f<t;f++){var d=n[f];if(l?"/"===d&&"*"===n[f-1]&&(l=!1):i?i===d&&(i=!1):"/"===d&&"*"===n[f+1]?l=!0:'"'===d||"'"===d?i=d:"("===d?a++:")"===d&&a--,!l&&!1===i&&0===a)if(":"===d&&-1===c)c=f;else if(";"===d||f===t-1){if(-1!==c){var v=to(n.substring(u,c).trim());s.includes(v)||(";"!==d&&f++,o+=" "+n.substring(u,f).trim()+";")}u=f+1,c=-1}}}return e&&(o+=no(e)),r&&(o+=no(r,!0)),""===(o=o.trim())?null:o}return null==n?null:String(n)}(t,r);null==o?n.removeAttribute("style"):n.style.cssText=o,n.__style=t}else r&&(Array.isArray(r)?(ro(n,null==e?void 0:e[0],r[0]),ro(n,null==e?void 0:e[1],r[1],"important")):ro(n,e,r));return r}function io(n,t,e=!1){if(n.multiple){if(null==t)return;if(!Y(t))return void console.warn("https://svelte.dev/e/select_multiple_invalid_value");for(var r of n.options)r.selected=t.includes(lo(r))}else{for(r of n.options){if(Rt(lo(r),t))return void(r.selected=!0)}e&&void 0===t||(n.selectedIndex=-1)}}function ao(n){var t=new MutationObserver(()=>{io(n,n.__value)});t.observe(n,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),oe(()=>{t.disconnect()})}function lo(n){return"__value"in n?n.__value:n.value}const so=Symbol("class"),uo=Symbol("style"),co=Symbol("is custom element"),fo=Symbol("is html");function vo(n,t){var e=mo(n);e.value!==(e.value=t??void 0)&&(n.value!==t||0===t&&"PROGRESS"===n.nodeName)&&(n.value=t??"")}function po(n,t){var e=mo(n);e.checked!==(e.checked=t??void 0)&&(n.checked=t)}function ho(n,t){t?n.hasAttribute("selected")||n.setAttribute("selected",""):n.removeAttribute("selected")}function go(n,t,e,r){var o=mo(n);o[t]!==(o[t]=e)&&("loading"===t&&(n[Tn]=e),null==e?n.removeAttribute(t):"string"!=typeof e&&yo(n).includes(t)?n[t]=e:n.setAttribute(t,e))}function bo(n,t,e=[],r=[],o=[],i,a=!1,l=!1){bt(o,e,r,e=>{var r=void 0,o={},s="SELECT"===n.nodeName,u=!1;if(fe(()=>{var c=t(...e.map(Ge)),f=function(n,t,e,r){var o=mo(n),i=o[co],a=!o[fo],l=t||{},s="OPTION"===n.tagName;for(var u in t)u in e||(e[u]=null);e.class?e.class=Yr(e.class):e[so]&&(e.class=null),e[uo]&&(e.style??(e.style=null));var c=yo(n);for(const g in e){let u=e[g];if(s&&"value"===g&&null==u)n.value=n.__value="",l[g]=u;else if("class"!==g)if("style"!==g){var f=l[g];if(u!==f||void 0===u&&n.hasAttribute(g)){l[g]=u;var d=g[0]+g[1];if("$$"!==d)if("on"===d){const t={},e="$$"+g;let r=g.slice(2);var v=ir(r);if(rr(r)&&(r=r.slice(0,-7),t.capture=!0),!v&&f){if(null!=u)continue;n.removeEventListener(r,l[e],t),l[e]=null}if(null!=u)if(v)n[`__${r}`]=u,pr([r]);else{let o=function(n){l[g].call(this,n)};l[e]=dr(r,n,o,t)}else v&&(n[`__${r}`]=void 0)}else if("style"===g)go(n,g,u);else if("autofocus"===g)Zt(n,Boolean(u));else if(i||"__value"!==g&&("value"!==g||null==u))if("selected"===g&&s)ho(n,u);else{var p=g;a||(p=lr(p));var h="defaultValue"===p||"defaultChecked"===p;if(null!=u||i||h)h||c.includes(p)&&(i||"string"!=typeof u)?(n[p]=u,p in o&&(o[p]=Rn)):"function"!=typeof u&&go(n,p,u);else if(o[g]=null,"value"===p||"checked"===p){let e=n;const r=void 0===t;if("value"===p){let n=e.defaultValue;e.removeAttribute(p),e.defaultValue=n,e.value=e.__value=r?n:null}else{let n=e.defaultChecked;e.removeAttribute(p),e.defaultChecked=n,e.checked=!!r&&n}}else n.removeAttribute(g)}else n.value=n.__value=u}}else oo(n,u,null==t?void 0:t[uo],e[uo]),l[g]=u,l[uo]=e[uo];else eo(n,"http://www.w3.org/1999/xhtml"===n.namespaceURI,u,r,null==t?void 0:t[so],e[so]),l[g]=u,l[so]=e[so]}return l}(n,r,c,i,a,l);u&&s&&"value"in c&&io(n,c.value);for(let n of Object.getOwnPropertySymbols(o))c[n]||he(o[n]);for(let t of Object.getOwnPropertySymbols(c)){var d=c[t];"@attach"!==t.description||r&&d===r[t]||(o[t]&&he(o[t]),o[t]=de(()=>Kr(n,()=>d))),f[t]=d}r=f}),s){var c=n;le(()=>{io(c,r.value,!0),ao(c)})}u=!0})}function mo(n){return n.__attributes??(n.__attributes={[co]:n.nodeName.includes("-"),[fo]:"http://www.w3.org/1999/xhtml"===n.namespaceURI})}var wo=new Map;function yo(n){var t,e=n.getAttribute("is")||n.nodeName,r=wo.get(e);if(r)return r;wo.set(e,r=[]);for(var o=n,i=Element.prototype;i!==o;){for(var a in t=rn(o))t[a].set&&r.push(a);o=ln(o)}return r}function xo(n,t,e=t){var r=new WeakSet;ne(n,"input",async o=>{var i=o?n.defaultValue:n.value;if(i=_o(n)?ko(i):i,e(i),null!==tt&&r.add(tt),await Qe(),i!==(i=t())){var a=n.selectionStart,l=n.selectionEnd,s=n.value.length;if(n.value=i??"",null!==l){var u=n.value.length;a===l&&l===s&&u>s?(n.selectionStart=u,n.selectionEnd=u):(n.selectionStart=a,n.selectionEnd=Math.min(l,u))}}}),null==Ye(t)&&n.value&&(e(_o(n)?ko(n.value):n.value),null!==tt&&r.add(tt)),se(()=>{var e=t();if(n===document.activeElement){var o=et??tt;if(r.has(o))return}_o(n)&&e===ko(n.value)||("date"!==n.type||e||n.value)&&e!==n.value&&(n.value=e??"")})}function _o(n){var t=n.type;return"number"===t||"range"===t}function ko(n){return""===n?null:+n}function Co(n,t){return n===t||(null==n?void 0:n[jn])===t}function So(n={},t,e,r){return le(()=>{var r,o;return se(()=>{r=o,o=[],Ye(()=>{n!==e(...o)&&(t(n,...o),r&&Co(e(...r),n)&&t(null,...r))})}),()=>{Kn(()=>{o&&Co(e(...o),n)&&t(null,...o)})}}),n}function Ao(n=!1){const t=qn,e=t.l.u;if(!e)return;let r=()=>tr(t.s);if(n){let n=0,e={};const o=wt(()=>{let r=!1;const o=t.s;for(const n in o)o[n]!==e[n]&&(e[n]=o[n],r=!0);return r&&n++,n});r=()=>Ge(o)}var o;e.b.length&&(o=()=>{Eo(t,r),dn(e.b)},te(),ee(1048584,o,!0)),ie(()=>{const n=Ye(()=>e.m.map(fn));return()=>{for(const t of n)"function"==typeof t&&t()}}),e.a.length&&ie(()=>{Eo(t,r),dn(e.a)})}function Eo(n,t){if(n.l.s)for(const e of n.l.s)Ge(e);t()}let Mo=!1;const No={get(n,t){if(!n.exclude.includes(t))return Ge(n.version),t in n.special?n.special[t]():n.props[t]},set(n,t,e){if(!(t in n.special)){var r=Ie;try{Le(n.parent_effect),n.special[t]=zo({get[t](){return n.props[t]}},t,4)}finally{Le(r)}}return n.special[t](e),jt(n.version),!0},getOwnPropertyDescriptor(n,t){if(!n.exclude.includes(t))return t in n.props?{enumerable:!0,configurable:!0,value:n.props[t]}:void 0},deleteProperty:(n,t)=>(n.exclude.includes(t)||(n.exclude.push(t),jt(n.version)),!0),has:(n,t)=>!n.exclude.includes(t)&&t in n.props,ownKeys:n=>Reflect.ownKeys(n.props).filter(t=>!n.exclude.includes(t))};function Io(n,t){return new Proxy({props:n,exclude:t,special:{},version:Nt(0),parent_effect:Ie},No)}const Lo={get(n,t){let e=n.props.length;for(;e--;){let r=n.props[e];if(un(r)&&(r=r()),"object"==typeof r&&null!==r&&t in r)return r[t]}},set(n,t,e){let r=n.props.length;for(;r--;){let o=n.props[r];un(o)&&(o=o());const i=en(o,t);if(i&&i.set)return i.set(e),!0}return!1},getOwnPropertyDescriptor(n,t){let e=n.props.length;for(;e--;){let r=n.props[e];if(un(r)&&(r=r()),"object"==typeof r&&null!==r&&t in r){const n=en(r,t);return n&&!n.configurable&&(n.configurable=!0),n}}},has(n,t){if(t===jn||t===Pn)return!1;for(let e of n.props)if(un(e)&&(e=e()),null!=e&&t in e)return!0;return!1},ownKeys(n){const t=[];for(let e of n.props)if(un(e)&&(e=e()),e){for(const n in e)t.includes(n)||t.push(n);for(const n of Object.getOwnPropertySymbols(e))t.includes(n)||t.push(n)}return t}};function Fo(...n){return new Proxy({props:n},Lo)}function zo(n,t,e,r){var o,i,a,l=!Un||!!(2&e),s=!!(8&e),u=!!(16&e),c=r,f=!0,d=()=>(f&&(f=!1,c=u?Ye(r):r),c);if(s){var v=jn in n||Pn in n;i=(null==(o=en(n,t))?void 0:o.set)??(v&&t in n?e=>n[t]=e:void 0)}var p,h=!1;if(s?[a,h]=function(n){var t=Mo;try{return Mo=!1,[n(),Mo]}finally{Mo=t}}(()=>n[t]):a=n[t],void 0===a&&void 0!==r&&(a=d(),i&&(l&&function(){throw new Error("https://svelte.dev/e/props_invalid_value")}(),i(a))),p=l?()=>{var e=n[t];return void 0===e?d():(f=!0,e)}:()=>{var e=n[t];return void 0!==e&&(c=void 0),void 0===e?c:e},l&&!(4&e))return p;if(i){var g=n.$$legacy;return function(n,t){return arguments.length>0?(l&&t&&!g&&!h||i(t?p():n),n):p()}}var b=!1,m=(1&e?wt:_t)(()=>(b=!1,p()));s&&Ge(m);var w=Ie;return function(n,t){if(arguments.length>0){const e=t?Ge(m):l&&s?Bt(n):n;return Ft(m,e),b=!0,void 0!==c&&(c=e),n}return Se&&b||0!==(w.f&Cn)?m.v:Ge(m)}}function jo(n){var t,e;null===qn&&On(),Un&&null!==qn.l?(t=qn,e=t.l,e.u??(e.u={a:[],b:[],m:[]})).m.push(n):ie(()=>{const t=Ye(n);if("function"==typeof t)return t})}function Po(n){null===qn&&On(),jo(()=>()=>Ye(n))}const To="risu-ebooklike-viewer",Bo="0.2.0",Oo=class n{constructor(t){if(n._instance)return console.log(`[${To}] Returning existing RisuAPI instance`),n._instance;this._risuFetch=t.risuFetch,this._nativeFetch=t.nativeFetch,this._getArg=t.getArg,this._setArg=t.setArg,this._getChar=t.getChar,this._setChar=t.setChar,this._addProvider=t.addProvider,this._addRisuScriptHandler=t.addRisuScriptHandler,this._removeRisuScriptHandler=t.removeRisuScriptHandler,this._addRisuReplacer=t.addRisuReplacer,this._removeRisuReplacer=t.removeRisuReplacer,this._onUnload=t.onUnload,this._getDatabase=null,this._setDatabaseLite=null,this._charWatchers=new Map,this._databaseWatchers=new Map,this._watcherIdCounter=0,n._instance=this}async initialize(){try{return this._getDatabase=getDatabase,this._setDatabaseLite=setDatabaseLite,console.log(`[${To}] RisuAPI initialized successfully`),!0}catch(n){return console.log(`[${To}] Failed to initialize RisuAPI:`,n),!1}}static getInstance(t=null){if(!n._instance){if(!t)throw new Error("RisuAPI instance does not exist. Provide pluginApis on first call.");n._instance=new n(t)}return n._instance}static resetInstance(){n._instance=null}risuFetch(n,t={}){return this._risuFetch(n,t)}nativeFetch(n,t={}){return this._nativeFetch(n,t)}getArg(n){return this._getArg(n)}setArg(n,t){return this._setArg(n,t)}getChar(){return this._getChar()}setChar(n){return this._setChar(n)}subscribeToChar(n,t,e=500){const r=++this._watcherIdCounter,o=()=>{try{const t=this._getChar();if(null===t)return null;const e=n?n(t):t;return JSON.stringify(e)}catch(t){return null}};let i=o();const a=setInterval(()=>{const n=o();if(n!==i){i=n;try{const e=n?JSON.parse(n):null;t(e)}catch(e){console.error(`[${To}] subscribeToChar callback error:`,e)}}},e);return this._charWatchers.set(r,a),()=>{clearInterval(a),this._charWatchers.delete(r)}}addProvider(n,t,e){return this._addProvider(n,t,e)}addRisuScriptHandler(n,t){return this._addRisuScriptHandler(n,t)}removeRisuScriptHandler(n,t){return this._removeRisuScriptHandler(n,t)}addRisuReplacer(n,t){return this._addRisuReplacer(n,t)}removeRisuReplacer(n,t){return this._removeRisuReplacer(n,t)}onUnload(n){return this._onUnload(n)}clearAllSubscriptions(){this._charWatchers.forEach(n=>clearInterval(n)),this._charWatchers.clear(),this._databaseWatchers.forEach(n=>clearInterval(n)),this._databaseWatchers.clear(),console.log(`[${To}] All subscriptions cleared`)}getDatabase(){if(!this._getDatabase)throw new Error("RisuAPI is not initialized. Call initialize() first.");return this._getDatabase()}setDatabaseLite(n){if(!this._setDatabaseLite)throw new Error("RisuAPI is not initialized. Call initialize() first.");return this._setDatabaseLite(n)}subscribeToDatabase(n,t,e=500){if(!this._getDatabase)throw new Error("RisuAPI is not initialized. Call initialize() first.");const r=++this._watcherIdCounter,o=()=>{try{const t=this._getDatabase();if(null===t)return null;const e=n?n(t):t;return JSON.stringify(e)}catch(t){return null}};let i=o();const a=setInterval(()=>{const n=o();if(n!==i){i=n;try{const e=n?JSON.parse(n):null;t(e)}catch(e){console.error(`[${To}] subscribeToDatabase callback error:`,e)}}},e);return this._databaseWatchers.set(r,a),()=>{clearInterval(a),this._databaseWatchers.delete(r)}}getChaId(){const n=this._getChar();return null==n?null:n.chaId}getCurrentChatPage(){const n=this._getChar();return null==n?null:n.chatPage}getAllCurrentChatMessages(){const n=this._getChar();return null==n?null:n.chats[this.getCurrentChatPage()].message}getLastChatIndex(){const n=this._getChar();return null==n?null:n.chats[this.getCurrentChatPage()].message.length}getLastChatMessage(){const n=this._getChar();return null==n?null:n.chats[this.getCurrentChatPage()].message[this.getLastChatIndex()]}};H(Oo,"_instance",null);let Ro=Oo;const Do="data-svelte-helper",Wo=new WeakMap,Uo=new Map;function qo({id:n,component:t,target:e,anchor:r=null,props:o={},wrapperTag:i="div",useContents:a=!0}){if(!n||!t||!e)return console.warn("[safeMount] id, component, target은 필수입니다."),null;const l=`data-mounted-${n}`;if(e.hasAttribute(l))return null;try{const s=document.createElement(i);s.setAttribute("data-svelte-wrapper",n),a&&(s.style.display="contents");const u=Er(t,{target:s,props:o}),c=Array.from(s.childNodes);r&&r.parentElement===e?c.forEach(n=>{e.insertBefore(n,r)}):c.forEach(n=>{e.appendChild(n)}),e.setAttribute(l,"true");const f={instance:u,wrapper:s,target:e,cleanup:()=>Ho(n),flagKey:l};return Uo.set(n,f),f}catch(s){return console.log(s),console.error(`[safeMount] ${n} 마운트 실패:`,s),null}}function Ho(n){const t=Uo.get(n);if(!t)return!1;try{const{instance:e,wrapper:r,target:o,flagKey:i}=t;return e&&Ir(e),o&&i&&o.removeAttribute(i),Uo.delete(n),!0}catch(e){return console.error(`[safeUnmount] ${n} 언마운트 실패:`,e),!1}}function $o(n){return Uo.has(n)}function Vo(n,t,e="default"){var r;if(!n||!t)return;const o=`${Do}-style-${e}`;let i=(null==(r=Wo.get(n))?void 0:r[o])||{};Object.entries(t).forEach(([t,e])=>{t in i||(i[t]=n.style.getPropertyValue(t)),n.style.setProperty(t,e)});const a=Wo.get(n)||{};a[o]=i,Wo.set(n,a)}function Xo(n,t="default"){if(!n)return;const e=`${Do}-style-${t}`,r=Wo.get(n),o=null==r?void 0:r[e];o&&(Object.entries(o).forEach(([t,e])=>{e?n.style.setProperty(t,e):n.style.removeProperty(t)}),delete r[e])}function Qo(n){const t=Ro.getInstance();if(!t)throw new Error("RisuAPI is not initialized. Please ensure the plugin is loaded.");const e=t.getDatabase(),r=e.plugins.findIndex(n=>n.name===To),o=r>=0?{...e.plugins[r]}:null;console.log("[UpdateManager] Old plugin found:",r>=0,null==o?void 0:o.name);const i=function(n,t){const e={};for(const[r,o]of Object.entries(t))e[r]=n&&r in n?n[r]:"int"===o?0:"";return e}(null==o?void 0:o.realArg,n.arguments),a={...n,realArg:i};console.log("[UpdateManager] New plugin data prepared:",a.name,a.displayName),r>=0?(e.plugins[r]=a,console.log("[UpdateManager] Replaced existing plugin at index",r)):(e.plugins.push(a),console.log("[UpdateManager] Added new plugin"));try{return t.setDatabaseLite(e),console.log("[UpdateManager] Database saved successfully"),{success:!0}}catch(l){return console.error("[UpdateManager] Database save failed:",l),o&&r>=0?(e.plugins[r]=o,console.log("[UpdateManager] Rolled back to previous plugin")):-1===r&&(e.plugins.pop(),console.log("[UpdateManager] Removed newly added plugin")),{success:!1,error:l}}}"undefined"!=typeof window&&((W=window.__svelte??(window.__svelte={})).v??(W.v=new Set)).add("5");var Go=wr('<div role="dialog" aria-modal="true" tabindex="-1"><div><div> </div> <div><button> </button></div></div></div>');function Ko(n,t){$n(t,!0);let e=zo(t,"message",3,""),r=zo(t,"confirmText",3,"확인"),o=It(null);function i(n){"Enter"!==n.key&&"Escape"!==n.key||a()}function a(){var n;null==(n=Ge(o))||n.dispatchEvent(new CustomEvent("confirm",{bubbles:!0,composed:!0}))}jo(()=>{document.addEventListener("keydown",i),setTimeout(()=>{var n;return null==(n=Ge(o))?void 0:n.focus()},0)}),Po(()=>{document.removeEventListener("keydown",i)});var l=Go(),s=Qt(l),u=Qt(s),c=Qt(u),f=Kt(u,2),d=Qt(f);d.__click=a;var v=Qt(d);So(d,n=>Ft(o,n),()=>Ge(o)),ue(()=>{eo(l,1,Yr(K.udRoot)),eo(s,1,`${K.udCard} ${K.udAlert}`),eo(u,1,Yr(K.udAlertMessage)),Ar(c,e()),eo(f,1,Yr(K.udActions)),eo(d,1,Yr(K.udBtnPrimary)),Ar(v,r())}),kr(n,l),Vn()}pr(["click"]);var Zo=wr('<div role="dialog" aria-modal="true" aria-busy="true" tabindex="-1"><div><div><svg viewBox="0 0 50 50"><circle cx="25" cy="25" r="20" fill="none" stroke-width="4"></circle></svg></div> <div> </div></div></div>');function Yo(n,t){$n(t,!0);let e=zo(t,"message",3,"업데이트를 처리하고 있습니다...");var r=Zo(),o=Qt(r),i=Qt(o),a=Qt(i),l=Qt(a),s=Kt(i,2),u=Qt(s);ue(()=>{eo(r,1,Yr(K.udRoot)),eo(o,1,`${K.udCard} ${K.udLoading}`),eo(i,1,Yr(K.udLoadingSpinner)),eo(a,0,Yr(K.udLoadingSvg)),eo(l,0,Yr(K.udLoadingCircle)),eo(s,1,Yr(K.udLoadingMessage)),Ar(u,e())}),kr(n,r),Vn()}var Jo=wr("<li> </li>"),ni=wr("<li>세부 변경사항은 릴리스 노트를 참고해주세요</li>"),ti=wr("<button> </button> <button> </button>",1),ei=wr('<div role="dialog" aria-modal="true" tabindex="-1"><div><div><h3> </h3> <span> </span></div> <div> </div> <ul aria-label="변경사항"><!></ul> <div><!> <button> </button></div></div></div>');function ri(n,t){$n(t,!0);let e=zo(t,"name",3,""),r=zo(t,"currentVersion",3,"0.0.0"),o=zo(t,"version",3,"0.0.0"),i=zo(t,"releasedAt",19,()=>(new Date).toISOString()),a=zo(t,"mandatory",3,!1),l=zo(t,"notes",19,()=>[]),s=zo(t,"i18n",19,()=>({title:"플러그인 업데이트 준비 완료",primary:"지금 업데이트",later:"나중에",skip:"이번 버전 건너뛰기"})),u=It(null),c=xt(()=>new Date(i()).toLocaleDateString()),f=xt(()=>a()?"필수 업데이트":"선택 업데이트");function d(n){"Escape"!==n.key||a()||v("later"),"Enter"===n.key&&v("update")}function v(n){var t;const e={action:n};"skip"===n&&(e.skipVersion=o()),null==(t=Ge(u))||t.dispatchEvent(new CustomEvent("update-action",{detail:e,bubbles:!0,composed:!0}))}jo(()=>{document.addEventListener("keydown",d),setTimeout(()=>{var n;return null==(n=Ge(u))?void 0:n.focus()},0)}),Po(()=>{document.removeEventListener("keydown",d)});var p=ei();p.__click=function(n){a()||n.target!==n.currentTarget||v("later")},p.__keydown=function(n){a()||"Escape"!==n.key&&"Enter"!==n.key||n.target===n.currentTarget&&v("later")};var h=Qt(p),g=Qt(h),b=Qt(g),m=Qt(b),w=Kt(b,2),y=Qt(w),x=Kt(g,2),_=Qt(x),k=Kt(x,2),C=Qt(k),S=n=>{var t=_r();Tr(Gt(t),17,()=>l().slice(0,8),zr,(n,t)=>{var e=Jo(),r=Qt(e);ue(n=>{eo(e,1,n),Ar(r,Ge(t).text||"")},[()=>Yr(function(n){const t=(n||"").trim(),e=t.charAt(0).toUpperCase()+t.slice(1);return K[`ud${e}`]||""}(Ge(t).type))]),kr(n,e)}),kr(n,t)},A=n=>{kr(n,ni())};Fr(C,n=>{l().length>0?n(S):n(A,!1)});var E=Kt(k,2),M=Qt(E),N=n=>{var t=ti(),e=Gt(t);e.__click=()=>v("later");var r=Qt(e),o=Kt(e,2);o.__click=()=>v("skip");var i=Qt(o);ue(()=>{eo(e,1,Yr(K.udBtnGhost)),Ar(r,s().later),eo(o,1,Yr(K.udBtnGhost)),Ar(i,s().skip)}),kr(n,t)};Fr(M,n=>{a()||n(N)});var I=Kt(M,2);I.__click=()=>v("update");var L=Qt(I);So(I,n=>Ft(u,n),()=>Ge(u)),ue(()=>{eo(p,1,Yr(K.udRoot)),eo(h,1,Yr(K.udCard)),eo(g,1,Yr(K.udTitle)),Ar(m,`${s().title??""}${e()?` · ${e()}`:""}`),eo(w,1,Yr(K.udPill)),Ar(y,`v${r()??""} → v${o()??""}`),eo(x,1,Yr(K.udSub)),Ar(_,`${Ge(c)??""} · ${Ge(f)??""}`),eo(k,1,Yr(K.udList)),eo(E,1,Yr(K.udActions)),eo(I,1,Yr(K.udBtnPrimary)),Ar(L,s().primary)}),kr(n,p),Vn()}async function oi(n){try{console.log("[UpdateManager] Fetching latest script from unpkg:",n.url);const t=await fetch(n.url).then(n=>n.text());console.log("[UpdateManager] Parsing plugin script...");const e=function(n){const t=n.split("\n");let e,r="",o={},i={},a=[];for(const l of t){if(l.startsWith("//@risu-name")||l.startsWith("//@risu-display-name"))throw new Error("V1 plugin is not supported. Please use V2 plugin.");if(l.startsWith("//@name")){const n=l.slice(7).trim();if(""===n)throw new Error("Plugin name must be longer than 0");r=n}if(l.startsWith("//@display-name")){const n=l.slice(16).trim();if(""===n)throw new Error("Plugin display name must be longer than 0");e=n}if(l.startsWith("//@link")){const n=l.split(" ")[1];if(!n||""===n)throw new Error("Plugin link is empty");if(!n.startsWith("https"))throw new Error("Plugin link must start with https");const t=l.split(" ").slice(2).join(" ").trim();a.push({link:n,hoverText:t||void 0})}if(l.startsWith("//@risu-arg")||l.startsWith("//@arg")){const n=l.trim().split(" "),t=n[1];if("int"!==n[2]&&"string"!==n[2])throw new Error(`Unknown argument type: ${n[2]}`);"int"===n[2]?(o[t]="int",i[t]=0):"string"===n[2]&&(o[t]="string",i[t]="")}}if(0===r.length)throw new Error("Plugin name not found");return{name:r,script:n,realArg:i,arguments:o,displayName:e,version:2,customLink:a}}(t);return Qo(e)}catch(t){return console.error("[UpdateManager] Plugin update failed:",t),{success:!1,error:t}}}function ii(n,t,e){return function(n,t){const e=n.split(".").map(Number),r=t.split(".").map(Number);for(let o=0;o<Math.max(e.length,r.length);o++){const n=e[o]||0,t=r[o]||0;if(n>t)return 1;if(n<t)return-1}return 0}(n,t)<=0?(e||console.log(`[UpdateManager] Already up to date (${t})`),{available:!1,current:t,latest:n}):null}async function ai(n,t){var e;console.log("[UpdateManager] Updating to version",t);const r=await oi(n);return r.success?(console.log("[UpdateManager] Plugin script updated successfully"),await function(n="업데이트를 처리하고 있습니다...",t=3e3){return new Promise(e=>{const r=document.createElement("div");document.body.appendChild(r);const o=Er(Yo,{target:r,props:{message:n}});setTimeout(()=>{Ir(o),r.remove(),e()},t)})}("업데이트를 적용하고 있습니다...",4e3),await function(n,t="확인"){return new Promise(e=>{const r=document.createElement("div");document.body.appendChild(r);const o=Er(Ko,{target:r,props:{message:n,confirmText:t}});r.addEventListener("confirm",()=>{Ir(o),r.remove(),e()})})}("업데이트가 완료되었습니다.\n\n업데이트된 스크립트를 적용하기 위해\n페이지를 새로고침합니다."),window.location.reload(),{available:!0,action:"updated",version:t}):(console.error("[UpdateManager] Plugin update failed:",r.error),alert(`업데이트 실패: ${(null==(e=r.error)?void 0:e.message)||"알 수 없는 오류"}\n\n페이지를 새로고침하여 다시 시도해주세요.`),{available:!0,action:"update_failed",error:r.error})}async function li(n={}){const{silent:t=!1,force:e=!1,i18n:r={}}=n;try{const n=await async function(){var n,t,e;try{const o=`https://unpkg.com/${To}@latest/dist/${To}.js`,i=(await fetch(o,{method:"HEAD",redirect:"follow"})).url,a=i.match(/@([\d.]+)\//);if(!a)throw new Error("Version not found in resolved URL");const l=a[1],s=await fetch(i).then(n=>n.text()),u=/\/\/@name (.+?)\n\/\/@display-name (.+?)\n\/\/@version (.+?)\n\/\/@description (.+?)(?:\n|$)/,c=s.match(u),f=`https://unpkg.com/${To}@${l}/dist/release-notes.json`;let d={};try{const n=await fetch(f);n.ok&&(d=(await n.json())[l]||{})}catch(r){console.warn("[UpdateManager] Failed to fetch release notes:",r)}return{version:l,url:i,name:(null==(n=null==c?void 0:c[1])?void 0:n.trim())||To,displayName:(null==(t=null==c?void 0:c[2])?void 0:t.trim())||`${To}_v${l}`,description:(null==(e=null==c?void 0:c[4])?void 0:e.trim())||"",mandatory:d.mandatory||!1,notes:d.notes||[],released_at:d.released_at||(new Date).toISOString()}}catch(r){return console.log(`[${To}] Update check skipped: Plugin not published to npm yet`),null}}();if(!n)return{available:!1,skipped:!0};const o=Bo,i=n.version,a=function(n,t,e){if(t)return null;const r=`${To}_skip_version`;return localStorage.getItem(r)===n?(e||console.log(`[UpdateManager] Version ${n} is skipped by user`),{available:!1,skipped:!0,version:n}):null}(i,e,t);if(a)return a;const l=ii(i,o,t);if(l)return l;console.log(`[UpdateManager] New version available: ${o} → ${i}`);const s=await function(n){const{name:t,currentVersion:e,manifest:r,i18n:o={},mandatory:i=!0===r.mandatory}=n,a=Object.assign({title:"플러그인 업데이트 준비 완료",primary:"지금 업데이트",later:"나중에",skip:"이번 버전 건너뛰기"},o);return new Promise(n=>{const o=document.createElement("div");document.body.appendChild(o);const l=Er(ri,{target:o,props:{name:t||"",currentVersion:e,version:r.version,releasedAt:r.released_at||(new Date).toISOString(),mandatory:i,notes:r.notes||[],i18n:a}});o.addEventListener("update-action",t=>{const{action:e,skipVersion:i}=t.detail,a={action:e};"update"===e?a.url=r.url:"skip"===e&&(a.skipVersion=i),Ir(l),o.remove(),n(a)})})}({name:To,currentVersion:o,manifest:n,i18n:r});return await async function(n,t,e){if("update"===n.action)return await ai(t,e);if("skip"===n.action){const t=`${To}_skip_version`;return localStorage.setItem(t,n.skipVersion),console.log("[UpdateManager] Skipped version",n.skipVersion),{available:!0,action:"skipped",version:n.skipVersion}}return console.log("[UpdateManager] Update postponed"),{available:!0,action:"later",version:e}}(s,n,i)}catch(o){return console.error("[UpdateManager] Check failed:",o),{available:!1,error:o.message}}}pr(["click","keydown"]);var si,ui="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},ci={exports:{}};var fi,di,vi=(si||(si=1,fi=ci,di=ci.exports,function(){var n,t="Expected a function",e="__lodash_hash_undefined__",r="__lodash_placeholder__",o=32,i=128,a=256,l=1/0,s=9007199254740991,u=NaN,c=4294967295,f=[["ary",i],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",o],["partialRight",64],["rearg",a]],d="[object Arguments]",v="[object Array]",p="[object Boolean]",h="[object Date]",g="[object Error]",b="[object Function]",m="[object GeneratorFunction]",w="[object Map]",y="[object Number]",x="[object Object]",_="[object Promise]",k="[object RegExp]",C="[object Set]",S="[object String]",A="[object Symbol]",E="[object WeakMap]",M="[object ArrayBuffer]",N="[object DataView]",I="[object Float32Array]",L="[object Float64Array]",F="[object Int8Array]",z="[object Int16Array]",j="[object Int32Array]",P="[object Uint8Array]",T="[object Uint8ClampedArray]",B="[object Uint16Array]",O="[object Uint32Array]",R=/\b__p \+= '';/g,D=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,U=/&(?:amp|lt|gt|quot|#39);/g,q=/[&<>"']/g,H=RegExp(U.source),$=RegExp(q.source),V=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,Q=/<%=([\s\S]+?)%>/g,G=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,K=/^\w*$/,Z=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Y=/[\\^$.*+?()[\]{}|]/g,J=RegExp(Y.source),nn=/^\s+/,tn=/\s/,en=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,rn=/\{\n\/\* \[wrapped with (.+)\] \*/,on=/,? & /,an=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ln=/[()=,{}\[\]\/\s]/,sn=/\\(\\)?/g,un=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,cn=/\w*$/,fn=/^[-+]0x[0-9a-f]+$/i,dn=/^0b[01]+$/i,vn=/^\[object .+?Constructor\]$/,pn=/^0o[0-7]+$/i,hn=/^(?:0|[1-9]\d*)$/,gn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,bn=/($^)/,mn=/['\n\r\u2028\u2029\\]/g,wn="\\ud800-\\udfff",yn="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xn="\\u2700-\\u27bf",_n="a-z\\xdf-\\xf6\\xf8-\\xff",kn="A-Z\\xc0-\\xd6\\xd8-\\xde",Cn="\\ufe0e\\ufe0f",Sn="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",An="['’]",En="["+wn+"]",Mn="["+Sn+"]",Nn="["+yn+"]",In="\\d+",Ln="["+xn+"]",Fn="["+_n+"]",zn="[^"+wn+Sn+In+xn+_n+kn+"]",jn="\\ud83c[\\udffb-\\udfff]",Pn="[^"+wn+"]",Tn="(?:\\ud83c[\\udde6-\\uddff]){2}",Bn="[\\ud800-\\udbff][\\udc00-\\udfff]",On="["+kn+"]",Rn="\\u200d",Dn="(?:"+Fn+"|"+zn+")",Wn="(?:"+On+"|"+zn+")",Un="(?:['’](?:d|ll|m|re|s|t|ve))?",qn="(?:['’](?:D|LL|M|RE|S|T|VE))?",Hn="(?:"+Nn+"|"+jn+")?",$n="["+Cn+"]?",Vn=$n+Hn+"(?:"+Rn+"(?:"+[Pn,Tn,Bn].join("|")+")"+$n+Hn+")*",Xn="(?:"+[Ln,Tn,Bn].join("|")+")"+Vn,Qn="(?:"+[Pn+Nn+"?",Nn,Tn,Bn,En].join("|")+")",Gn=RegExp(An,"g"),Kn=RegExp(Nn,"g"),Zn=RegExp(jn+"(?="+jn+")|"+Qn+Vn,"g"),Yn=RegExp([On+"?"+Fn+"+"+Un+"(?="+[Mn,On,"$"].join("|")+")",Wn+"+"+qn+"(?="+[Mn,On+Dn,"$"].join("|")+")",On+"?"+Dn+"+"+Un,On+"+"+qn,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",In,Xn].join("|"),"g"),Jn=RegExp("["+Rn+wn+yn+Cn+"]"),nt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,tt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],et=-1,rt={};rt[I]=rt[L]=rt[F]=rt[z]=rt[j]=rt[P]=rt[T]=rt[B]=rt[O]=!0,rt[d]=rt[v]=rt[M]=rt[p]=rt[N]=rt[h]=rt[g]=rt[b]=rt[w]=rt[y]=rt[x]=rt[k]=rt[C]=rt[S]=rt[E]=!1;var ot={};ot[d]=ot[v]=ot[M]=ot[N]=ot[p]=ot[h]=ot[I]=ot[L]=ot[F]=ot[z]=ot[j]=ot[w]=ot[y]=ot[x]=ot[k]=ot[C]=ot[S]=ot[A]=ot[P]=ot[T]=ot[B]=ot[O]=!0,ot[g]=ot[b]=ot[E]=!1;var it={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},at=parseFloat,lt=parseInt,st="object"==typeof ui&&ui&&ui.Object===Object&&ui,ut="object"==typeof self&&self&&self.Object===Object&&self,ct=st||ut||Function("return this")(),ft=di&&!di.nodeType&&di,dt=ft&&fi&&!fi.nodeType&&fi,vt=dt&&dt.exports===ft,pt=vt&&st.process,ht=function(){try{var n=dt&&dt.require&&dt.require("util").types;return n||pt&&pt.binding&&pt.binding("util")}catch(t){}}(),gt=ht&&ht.isArrayBuffer,bt=ht&&ht.isDate,mt=ht&&ht.isMap,wt=ht&&ht.isRegExp,yt=ht&&ht.isSet,xt=ht&&ht.isTypedArray;function _t(n,t,e){switch(e.length){case 0:return n.call(t);case 1:return n.call(t,e[0]);case 2:return n.call(t,e[0],e[1]);case 3:return n.call(t,e[0],e[1],e[2])}return n.apply(t,e)}function kt(n,t,e,r){for(var o=-1,i=null==n?0:n.length;++o<i;){var a=n[o];t(r,a,e(a),n)}return r}function Ct(n,t){for(var e=-1,r=null==n?0:n.length;++e<r&&!1!==t(n[e],e,n););return n}function St(n,t){for(var e=null==n?0:n.length;e--&&!1!==t(n[e],e,n););return n}function At(n,t){for(var e=-1,r=null==n?0:n.length;++e<r;)if(!t(n[e],e,n))return!1;return!0}function Et(n,t){for(var e=-1,r=null==n?0:n.length,o=0,i=[];++e<r;){var a=n[e];t(a,e,n)&&(i[o++]=a)}return i}function Mt(n,t){return!(null==n||!n.length)&&Ot(n,t,0)>-1}function Nt(n,t,e){for(var r=-1,o=null==n?0:n.length;++r<o;)if(e(t,n[r]))return!0;return!1}function It(n,t){for(var e=-1,r=null==n?0:n.length,o=Array(r);++e<r;)o[e]=t(n[e],e,n);return o}function Lt(n,t){for(var e=-1,r=t.length,o=n.length;++e<r;)n[o+e]=t[e];return n}function Ft(n,t,e,r){var o=-1,i=null==n?0:n.length;for(r&&i&&(e=n[++o]);++o<i;)e=t(e,n[o],o,n);return e}function zt(n,t,e,r){var o=null==n?0:n.length;for(r&&o&&(e=n[--o]);o--;)e=t(e,n[o],o,n);return e}function jt(n,t){for(var e=-1,r=null==n?0:n.length;++e<r;)if(t(n[e],e,n))return!0;return!1}var Pt=Ut("length");function Tt(n,t,e){var r;return e(n,function(n,e,o){if(t(n,e,o))return r=e,!1}),r}function Bt(n,t,e,r){for(var o=n.length,i=e+(r?1:-1);r?i--:++i<o;)if(t(n[i],i,n))return i;return-1}function Ot(n,t,e){return t==t?function(n,t,e){for(var r=e-1,o=n.length;++r<o;)if(n[r]===t)return r;return-1}(n,t,e):Bt(n,Dt,e)}function Rt(n,t,e,r){for(var o=e-1,i=n.length;++o<i;)if(r(n[o],t))return o;return-1}function Dt(n){return n!=n}function Wt(n,t){var e=null==n?0:n.length;return e?$t(n,t)/e:u}function Ut(t){return function(e){return null==e?n:e[t]}}function qt(t){return function(e){return null==t?n:t[e]}}function Ht(n,t,e,r,o){return o(n,function(n,o,i){e=r?(r=!1,n):t(e,n,o,i)}),e}function $t(t,e){for(var r,o=-1,i=t.length;++o<i;){var a=e(t[o]);a!==n&&(r=r===n?a:r+a)}return r}function Vt(n,t){for(var e=-1,r=Array(n);++e<n;)r[e]=t(e);return r}function Xt(n){return n?n.slice(0,ue(n)+1).replace(nn,""):n}function Qt(n){return function(t){return n(t)}}function Gt(n,t){return It(t,function(t){return n[t]})}function Kt(n,t){return n.has(t)}function Zt(n,t){for(var e=-1,r=n.length;++e<r&&Ot(t,n[e],0)>-1;);return e}function Yt(n,t){for(var e=n.length;e--&&Ot(t,n[e],0)>-1;);return e}var Jt=qt({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),ne=qt({"&":"&","<":"<",">":">",'"':""","'":"'"});function te(n){return"\\"+it[n]}function ee(n){return Jn.test(n)}function re(n){var t=-1,e=Array(n.size);return n.forEach(function(n,r){e[++t]=[r,n]}),e}function oe(n,t){return function(e){return n(t(e))}}function ie(n,t){for(var e=-1,o=n.length,i=0,a=[];++e<o;){var l=n[e];l!==t&&l!==r||(n[e]=r,a[i++]=e)}return a}function ae(n){var t=-1,e=Array(n.size);return n.forEach(function(n){e[++t]=n}),e}function le(n){return ee(n)?function(n){for(var t=Zn.lastIndex=0;Zn.test(n);)++t;return t}(n):Pt(n)}function se(n){return ee(n)?function(n){return n.match(Zn)||[]}(n):function(n){return n.split("")}(n)}function ue(n){for(var t=n.length;t--&&tn.test(n.charAt(t)););return t}var ce=qt({"&":"&","<":"<",">":">",""":'"',"'":"'"}),fe=function tn(wn){var yn,xn=(wn=null==wn?ct:fe.defaults(ct.Object(),wn,fe.pick(ct,tt))).Array,_n=wn.Date,kn=wn.Error,Cn=wn.Function,Sn=wn.Math,An=wn.Object,En=wn.RegExp,Mn=wn.String,Nn=wn.TypeError,In=xn.prototype,Ln=Cn.prototype,Fn=An.prototype,zn=wn["__core-js_shared__"],jn=Ln.toString,Pn=Fn.hasOwnProperty,Tn=0,Bn=(yn=/[^.]+$/.exec(zn&&zn.keys&&zn.keys.IE_PROTO||""))?"Symbol(src)_1."+yn:"",On=Fn.toString,Rn=jn.call(An),Dn=ct._,Wn=En("^"+jn.call(Pn).replace(Y,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Un=vt?wn.Buffer:n,qn=wn.Symbol,Hn=wn.Uint8Array,$n=Un?Un.allocUnsafe:n,Vn=oe(An.getPrototypeOf,An),Xn=An.create,Qn=Fn.propertyIsEnumerable,Zn=In.splice,Jn=qn?qn.isConcatSpreadable:n,it=qn?qn.iterator:n,st=qn?qn.toStringTag:n,ut=function(){try{var n=ci(An,"defineProperty");return n({},"",{}),n}catch(t){}}(),ft=wn.clearTimeout!==ct.clearTimeout&&wn.clearTimeout,dt=_n&&_n.now!==ct.Date.now&&_n.now,pt=wn.setTimeout!==ct.setTimeout&&wn.setTimeout,ht=Sn.ceil,Pt=Sn.floor,qt=An.getOwnPropertySymbols,de=Un?Un.isBuffer:n,ve=wn.isFinite,pe=In.join,he=oe(An.keys,An),ge=Sn.max,be=Sn.min,me=_n.now,we=wn.parseInt,ye=Sn.random,xe=In.reverse,_e=ci(wn,"DataView"),ke=ci(wn,"Map"),Ce=ci(wn,"Promise"),Se=ci(wn,"Set"),Ae=ci(wn,"WeakMap"),Ee=ci(An,"create"),Me=Ae&&new Ae,Ne={},Ie=Ri(_e),Le=Ri(ke),Fe=Ri(Ce),ze=Ri(Se),je=Ri(Ae),Pe=qn?qn.prototype:n,Te=Pe?Pe.valueOf:n,Be=Pe?Pe.toString:n;function Oe(n){if(el(n)&&!$a(n)&&!(n instanceof Ue)){if(n instanceof We)return n;if(Pn.call(n,"__wrapped__"))return Di(n)}return new We(n)}var Re=function(){function t(){}return function(e){if(!tl(e))return{};if(Xn)return Xn(e);t.prototype=e;var r=new t;return t.prototype=n,r}}();function De(){}function We(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=n}function Ue(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=c,this.__views__=[]}function qe(n){var t=-1,e=null==n?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function He(n){var t=-1,e=null==n?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function $e(n){var t=-1,e=null==n?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Ve(n){var t=-1,e=null==n?0:n.length;for(this.__data__=new $e;++t<e;)this.add(n[t])}function Xe(n){var t=this.__data__=new He(n);this.size=t.size}function Qe(n,t){var e=$a(n),r=!e&&Ha(n),o=!e&&!r&&Ga(n),i=!e&&!r&&!o&&cl(n),a=e||r||o||i,l=a?Vt(n.length,Mn):[],s=l.length;for(var u in n)!t&&!Pn.call(n,u)||a&&("length"==u||o&&("offset"==u||"parent"==u)||i&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||bi(u,s))||l.push(u);return l}function Ge(t){var e=t.length;return e?t[Vr(0,e-1)]:n}function Ke(n,t){return zi(Mo(n),ir(t,0,n.length))}function Ze(n){return zi(Mo(n))}function Ye(t,e,r){(r!==n&&!Wa(t[e],r)||r===n&&!(e in t))&&rr(t,e,r)}function Je(t,e,r){var o=t[e];Pn.call(t,e)&&Wa(o,r)&&(r!==n||e in t)||rr(t,e,r)}function nr(n,t){for(var e=n.length;e--;)if(Wa(n[e][0],t))return e;return-1}function tr(n,t,e,r){return cr(n,function(n,o,i){t(r,n,e(n),i)}),r}function er(n,t){return n&&No(t,Fl(t),n)}function rr(n,t,e){"__proto__"==t&&ut?ut(n,t,{configurable:!0,enumerable:!0,value:e,writable:!0}):n[t]=e}function or(t,e){for(var r=-1,o=e.length,i=xn(o),a=null==t;++r<o;)i[r]=a?n:El(t,e[r]);return i}function ir(t,e,r){return t==t&&(r!==n&&(t=t<=r?t:r),e!==n&&(t=t>=e?t:e)),t}function ar(t,e,r,o,i,a){var l,s=1&e,u=2&e,c=4&e;if(r&&(l=i?r(t,o,i,a):r(t)),l!==n)return l;if(!tl(t))return t;var f=$a(t);if(f){if(l=function(n){var t=n.length,e=new n.constructor(t);return t&&"string"==typeof n[0]&&Pn.call(n,"index")&&(e.index=n.index,e.input=n.input),e}(t),!s)return Mo(t,l)}else{var v=vi(t),g=v==b||v==m;if(Ga(t))return _o(t,s);if(v==x||v==d||g&&!i){if(l=u||g?{}:hi(t),!s)return u?function(n,t){return No(n,di(n),t)}(t,function(n,t){return n&&No(t,zl(t),n)}(l,t)):function(n,t){return No(n,fi(n),t)}(t,er(l,t))}else{if(!ot[v])return i?t:{};l=function(n,t,e){var r,o=n.constructor;switch(t){case M:return ko(n);case p:case h:return new o(+n);case N:return function(n,t){var e=t?ko(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}(n,e);case I:case L:case F:case z:case j:case P:case T:case B:case O:return Co(n,e);case w:return new o;case y:case S:return new o(n);case k:return function(n){var t=new n.constructor(n.source,cn.exec(n));return t.lastIndex=n.lastIndex,t}(n);case C:return new o;case A:return r=n,Te?An(Te.call(r)):{}}}(t,v,s)}}a||(a=new Xe);var _=a.get(t);if(_)return _;a.set(t,l),ll(t)?t.forEach(function(n){l.add(ar(n,e,r,n,t,a))}):rl(t)&&t.forEach(function(n,o){l.set(o,ar(n,e,r,o,t,a))});var E=f?n:(c?u?ri:ei:u?zl:Fl)(t);return Ct(E||t,function(n,o){E&&(n=t[o=n]),Je(l,o,ar(n,e,r,o,t,a))}),l}function lr(t,e,r){var o=r.length;if(null==t)return!o;for(t=An(t);o--;){var i=r[o],a=e[i],l=t[i];if(l===n&&!(i in t)||!a(l))return!1}return!0}function sr(e,r,o){if("function"!=typeof e)throw new Nn(t);return Ni(function(){e.apply(n,o)},r)}function ur(n,t,e,r){var o=-1,i=Mt,a=!0,l=n.length,s=[],u=t.length;if(!l)return s;e&&(t=It(t,Qt(e))),r?(i=Nt,a=!1):t.length>=200&&(i=Kt,a=!1,t=new Ve(t));n:for(;++o<l;){var c=n[o],f=null==e?c:e(c);if(c=r||0!==c?c:0,a&&f==f){for(var d=u;d--;)if(t[d]===f)continue n;s.push(c)}else i(t,f,r)||s.push(c)}return s}Oe.templateSettings={escape:V,evaluate:X,interpolate:Q,variable:"",imports:{_:Oe}},Oe.prototype=De.prototype,Oe.prototype.constructor=Oe,We.prototype=Re(De.prototype),We.prototype.constructor=We,Ue.prototype=Re(De.prototype),Ue.prototype.constructor=Ue,qe.prototype.clear=function(){this.__data__=Ee?Ee(null):{},this.size=0},qe.prototype.delete=function(n){var t=this.has(n)&&delete this.__data__[n];return this.size-=t?1:0,t},qe.prototype.get=function(t){var r=this.__data__;if(Ee){var o=r[t];return o===e?n:o}return Pn.call(r,t)?r[t]:n},qe.prototype.has=function(t){var e=this.__data__;return Ee?e[t]!==n:Pn.call(e,t)},qe.prototype.set=function(t,r){var o=this.__data__;return this.size+=this.has(t)?0:1,o[t]=Ee&&r===n?e:r,this},He.prototype.clear=function(){this.__data__=[],this.size=0},He.prototype.delete=function(n){var t=this.__data__,e=nr(t,n);return!(e<0||(e==t.length-1?t.pop():Zn.call(t,e,1),--this.size,0))},He.prototype.get=function(t){var e=this.__data__,r=nr(e,t);return r<0?n:e[r][1]},He.prototype.has=function(n){return nr(this.__data__,n)>-1},He.prototype.set=function(n,t){var e=this.__data__,r=nr(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this},$e.prototype.clear=function(){this.size=0,this.__data__={hash:new qe,map:new(ke||He),string:new qe}},$e.prototype.delete=function(n){var t=si(this,n).delete(n);return this.size-=t?1:0,t},$e.prototype.get=function(n){return si(this,n).get(n)},$e.prototype.has=function(n){return si(this,n).has(n)},$e.prototype.set=function(n,t){var e=si(this,n),r=e.size;return e.set(n,t),this.size+=e.size==r?0:1,this},Ve.prototype.add=Ve.prototype.push=function(n){return this.__data__.set(n,e),this},Ve.prototype.has=function(n){return this.__data__.has(n)},Xe.prototype.clear=function(){this.__data__=new He,this.size=0},Xe.prototype.delete=function(n){var t=this.__data__,e=t.delete(n);return this.size=t.size,e},Xe.prototype.get=function(n){return this.__data__.get(n)},Xe.prototype.has=function(n){return this.__data__.has(n)},Xe.prototype.set=function(n,t){var e=this.__data__;if(e instanceof He){var r=e.__data__;if(!ke||r.length<199)return r.push([n,t]),this.size=++e.size,this;e=this.__data__=new $e(r)}return e.set(n,t),this.size=e.size,this};var cr=Fo(mr),fr=Fo(wr,!0);function dr(n,t){var e=!0;return cr(n,function(n,r,o){return e=!!t(n,r,o)}),e}function vr(t,e,r){for(var o=-1,i=t.length;++o<i;){var a=t[o],l=e(a);if(null!=l&&(s===n?l==l&&!ul(l):r(l,s)))var s=l,u=a}return u}function pr(n,t){var e=[];return cr(n,function(n,r,o){t(n,r,o)&&e.push(n)}),e}function hr(n,t,e,r,o){var i=-1,a=n.length;for(e||(e=gi),o||(o=[]);++i<a;){var l=n[i];t>0&&e(l)?t>1?hr(l,t-1,e,r,o):Lt(o,l):r||(o[o.length]=l)}return o}var gr=zo(),br=zo(!0);function mr(n,t){return n&&gr(n,t,Fl)}function wr(n,t){return n&&br(n,t,Fl)}function yr(n,t){return Et(t,function(t){return Ya(n[t])})}function xr(t,e){for(var r=0,o=(e=mo(e,t)).length;null!=t&&r<o;)t=t[Oi(e[r++])];return r&&r==o?t:n}function _r(n,t,e){var r=t(n);return $a(n)?r:Lt(r,e(n))}function kr(t){return null==t?t===n?"[object Undefined]":"[object Null]":st&&st in An(t)?function(t){var e=Pn.call(t,st),r=t[st];try{t[st]=n;var o=!0}catch(a){}var i=On.call(t);return o&&(e?t[st]=r:delete t[st]),i}(t):function(n){return On.call(n)}(t)}function Cr(n,t){return n>t}function Sr(n,t){return null!=n&&Pn.call(n,t)}function Ar(n,t){return null!=n&&t in An(n)}function Er(t,e,r){for(var o=r?Nt:Mt,i=t[0].length,a=t.length,l=a,s=xn(a),u=1/0,c=[];l--;){var f=t[l];l&&e&&(f=It(f,Qt(e))),u=be(f.length,u),s[l]=!r&&(e||i>=120&&f.length>=120)?new Ve(l&&f):n}f=t[0];var d=-1,v=s[0];n:for(;++d<i&&c.length<u;){var p=f[d],h=e?e(p):p;if(p=r||0!==p?p:0,!(v?Kt(v,h):o(c,h,r))){for(l=a;--l;){var g=s[l];if(!(g?Kt(g,h):o(t[l],h,r)))continue n}v&&v.push(h),c.push(p)}}return c}function Mr(t,e,r){var o=null==(t=Ai(t,e=mo(e,t)))?t:t[Oi(Zi(e))];return null==o?n:_t(o,t,r)}function Nr(n){return el(n)&&kr(n)==d}function Ir(t,e,r,o,i){return t===e||(null==t||null==e||!el(t)&&!el(e)?t!=t&&e!=e:function(t,e,r,o,i,a){var l=$a(t),s=$a(e),u=l?v:vi(t),c=s?v:vi(e),f=(u=u==d?x:u)==x,b=(c=c==d?x:c)==x,m=u==c;if(m&&Ga(t)){if(!Ga(e))return!1;l=!0,f=!1}if(m&&!f)return a||(a=new Xe),l||cl(t)?ni(t,e,r,o,i,a):function(n,t,e,r,o,i,a){switch(e){case N:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case M:return!(n.byteLength!=t.byteLength||!i(new Hn(n),new Hn(t)));case p:case h:case y:return Wa(+n,+t);case g:return n.name==t.name&&n.message==t.message;case k:case S:return n==t+"";case w:var l=re;case C:var s=1&r;if(l||(l=ae),n.size!=t.size&&!s)return!1;var u=a.get(n);if(u)return u==t;r|=2,a.set(n,t);var c=ni(l(n),l(t),r,o,i,a);return a.delete(n),c;case A:if(Te)return Te.call(n)==Te.call(t)}return!1}(t,e,u,r,o,i,a);if(!(1&r)){var _=f&&Pn.call(t,"__wrapped__"),E=b&&Pn.call(e,"__wrapped__");if(_||E){var I=_?t.value():t,L=E?e.value():e;return a||(a=new Xe),i(I,L,r,o,a)}}return!!m&&(a||(a=new Xe),function(t,e,r,o,i,a){var l=1&r,s=ei(t),u=s.length,c=ei(e),f=c.length;if(u!=f&&!l)return!1;for(var d=u;d--;){var v=s[d];if(!(l?v in e:Pn.call(e,v)))return!1}var p=a.get(t),h=a.get(e);if(p&&h)return p==e&&h==t;var g=!0;a.set(t,e),a.set(e,t);for(var b=l;++d<u;){var m=t[v=s[d]],w=e[v];if(o)var y=l?o(w,m,v,e,t,a):o(m,w,v,t,e,a);if(!(y===n?m===w||i(m,w,r,o,a):y)){g=!1;break}b||(b="constructor"==v)}if(g&&!b){var x=t.constructor,_=e.constructor;x==_||!("constructor"in t)||!("constructor"in e)||"function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _||(g=!1)}return a.delete(t),a.delete(e),g}(t,e,r,o,i,a))}(t,e,r,o,Ir,i))}function Lr(t,e,r,o){var i=r.length,a=i,l=!o;if(null==t)return!a;for(t=An(t);i--;){var s=r[i];if(l&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++i<a;){var u=(s=r[i])[0],c=t[u],f=s[1];if(l&&s[2]){if(c===n&&!(u in t))return!1}else{var d=new Xe;if(o)var v=o(c,f,u,t,e,d);if(!(v===n?Ir(f,c,3,o,d):v))return!1}}return!0}function Fr(n){return!(!tl(n)||(t=n,Bn&&Bn in t))&&(Ya(n)?Wn:vn).test(Ri(n));var t}function zr(n){return"function"==typeof n?n:null==n?os:"object"==typeof n?$a(n)?Rr(n[0],n[1]):Or(n):vs(n)}function jr(n){if(!_i(n))return he(n);var t=[];for(var e in An(n))Pn.call(n,e)&&"constructor"!=e&&t.push(e);return t}function Pr(n){if(!tl(n))return function(n){var t=[];if(null!=n)for(var e in An(n))t.push(e);return t}(n);var t=_i(n),e=[];for(var r in n)("constructor"!=r||!t&&Pn.call(n,r))&&e.push(r);return e}function Tr(n,t){return n<t}function Br(n,t){var e=-1,r=Xa(n)?xn(n.length):[];return cr(n,function(n,o,i){r[++e]=t(n,o,i)}),r}function Or(n){var t=ui(n);return 1==t.length&&t[0][2]?Ci(t[0][0],t[0][1]):function(e){return e===n||Lr(e,n,t)}}function Rr(t,e){return wi(t)&&ki(e)?Ci(Oi(t),e):function(r){var o=El(r,t);return o===n&&o===e?Ml(r,t):Ir(e,o,3)}}function Dr(t,e,r,o,i){t!==e&&gr(e,function(a,l){if(i||(i=new Xe),tl(a))!function(t,e,r,o,i,a,l){var s=Ei(t,r),u=Ei(e,r),c=l.get(u);if(c)Ye(t,r,c);else{var f=a?a(s,u,r+"",t,e,l):n,d=f===n;if(d){var v=$a(u),p=!v&&Ga(u),h=!v&&!p&&cl(u);f=u,v||p||h?$a(s)?f=s:Qa(s)?f=Mo(s):p?(d=!1,f=_o(u,!0)):h?(d=!1,f=Co(u,!0)):f=[]:il(u)||Ha(u)?(f=s,Ha(s)?f=ml(s):tl(s)&&!Ya(s)||(f=hi(u))):d=!1}d&&(l.set(u,f),i(f,u,o,a,l),l.delete(u)),Ye(t,r,f)}}(t,e,l,r,Dr,o,i);else{var s=o?o(Ei(t,l),a,l+"",t,e,i):n;s===n&&(s=a),Ye(t,l,s)}},zl)}function Wr(t,e){var r=t.length;if(r)return bi(e+=e<0?r:0,r)?t[e]:n}function Ur(n,t,e){t=t.length?It(t,function(n){return $a(n)?function(t){return xr(t,1===n.length?n[0]:n)}:n}):[os];var r=-1;return t=It(t,Qt(li())),function(n,t){var e=n.length;for(n.sort(t);e--;)n[e]=n[e].value;return n}(Br(n,function(n,e,o){return{criteria:It(t,function(t){return t(n)}),index:++r,value:n}}),function(n,t){return function(n,t,e){for(var r=-1,o=n.criteria,i=t.criteria,a=o.length,l=e.length;++r<a;){var s=So(o[r],i[r]);if(s)return r>=l?s:s*("desc"==e[r]?-1:1)}return n.index-t.index}(n,t,e)})}function qr(n,t,e){for(var r=-1,o=t.length,i={};++r<o;){var a=t[r],l=xr(n,a);e(l,a)&&Zr(i,mo(a,n),l)}return i}function Hr(n,t,e,r){var o=r?Rt:Ot,i=-1,a=t.length,l=n;for(n===t&&(t=Mo(t)),e&&(l=It(n,Qt(e)));++i<a;)for(var s=0,u=t[i],c=e?e(u):u;(s=o(l,c,s,r))>-1;)l!==n&&Zn.call(l,s,1),Zn.call(n,s,1);return n}function $r(n,t){for(var e=n?t.length:0,r=e-1;e--;){var o=t[e];if(e==r||o!==i){var i=o;bi(o)?Zn.call(n,o,1):uo(n,o)}}return n}function Vr(n,t){return n+Pt(ye()*(t-n+1))}function Xr(n,t){var e="";if(!n||t<1||t>s)return e;do{t%2&&(e+=n),(t=Pt(t/2))&&(n+=n)}while(t);return e}function Qr(n,t){return Ii(Si(n,t,os),n+"")}function Gr(n){return Ge(Wl(n))}function Kr(n,t){var e=Wl(n);return zi(e,ir(t,0,e.length))}function Zr(t,e,r,o){if(!tl(t))return t;for(var i=-1,a=(e=mo(e,t)).length,l=a-1,s=t;null!=s&&++i<a;){var u=Oi(e[i]),c=r;if("__proto__"===u||"constructor"===u||"prototype"===u)return t;if(i!=l){var f=s[u];(c=o?o(f,u,s):n)===n&&(c=tl(f)?f:bi(e[i+1])?[]:{})}Je(s,u,c),s=s[u]}return t}var Yr=Me?function(n,t){return Me.set(n,t),n}:os,Jr=ut?function(n,t){return ut(n,"toString",{configurable:!0,enumerable:!1,value:ts(t),writable:!0})}:os;function no(n){return zi(Wl(n))}function to(n,t,e){var r=-1,o=n.length;t<0&&(t=-t>o?0:o+t),(e=e>o?o:e)<0&&(e+=o),o=t>e?0:e-t>>>0,t>>>=0;for(var i=xn(o);++r<o;)i[r]=n[r+t];return i}function eo(n,t){var e;return cr(n,function(n,r,o){return!(e=t(n,r,o))}),!!e}function ro(n,t,e){var r=0,o=null==n?r:n.length;if("number"==typeof t&&t==t&&o<=2147483647){for(;r<o;){var i=r+o>>>1,a=n[i];null!==a&&!ul(a)&&(e?a<=t:a<t)?r=i+1:o=i}return o}return oo(n,t,os,e)}function oo(t,e,r,o){var i=0,a=null==t?0:t.length;if(0===a)return 0;for(var l=(e=r(e))!=e,s=null===e,u=ul(e),c=e===n;i<a;){var f=Pt((i+a)/2),d=r(t[f]),v=d!==n,p=null===d,h=d==d,g=ul(d);if(l)var b=o||h;else b=c?h&&(o||v):s?h&&v&&(o||!p):u?h&&v&&!p&&(o||!g):!p&&!g&&(o?d<=e:d<e);b?i=f+1:a=f}return be(a,4294967294)}function io(n,t){for(var e=-1,r=n.length,o=0,i=[];++e<r;){var a=n[e],l=t?t(a):a;if(!e||!Wa(l,s)){var s=l;i[o++]=0===a?0:a}}return i}function ao(n){return"number"==typeof n?n:ul(n)?u:+n}function lo(n){if("string"==typeof n)return n;if($a(n))return It(n,lo)+"";if(ul(n))return Be?Be.call(n):"";var t=n+"";return"0"==t&&1/n==-1/0?"-0":t}function so(n,t,e){var r=-1,o=Mt,i=n.length,a=!0,l=[],s=l;if(e)a=!1,o=Nt;else if(i>=200){var u=t?null:Qo(n);if(u)return ae(u);a=!1,o=Kt,s=new Ve}else s=t?[]:l;n:for(;++r<i;){var c=n[r],f=t?t(c):c;if(c=e||0!==c?c:0,a&&f==f){for(var d=s.length;d--;)if(s[d]===f)continue n;t&&s.push(f),l.push(c)}else o(s,f,e)||(s!==l&&s.push(f),l.push(c))}return l}function uo(n,t){return null==(n=Ai(n,t=mo(t,n)))||delete n[Oi(Zi(t))]}function co(n,t,e,r){return Zr(n,t,e(xr(n,t)),r)}function fo(n,t,e,r){for(var o=n.length,i=r?o:-1;(r?i--:++i<o)&&t(n[i],i,n););return e?to(n,r?0:i,r?i+1:o):to(n,r?i+1:0,r?o:i)}function vo(n,t){var e=n;return e instanceof Ue&&(e=e.value()),Ft(t,function(n,t){return t.func.apply(t.thisArg,Lt([n],t.args))},e)}function po(n,t,e){var r=n.length;if(r<2)return r?so(n[0]):[];for(var o=-1,i=xn(r);++o<r;)for(var a=n[o],l=-1;++l<r;)l!=o&&(i[o]=ur(i[o]||a,n[l],t,e));return so(hr(i,1),t,e)}function ho(t,e,r){for(var o=-1,i=t.length,a=e.length,l={};++o<i;){var s=o<a?e[o]:n;r(l,t[o],s)}return l}function go(n){return Qa(n)?n:[]}function bo(n){return"function"==typeof n?n:os}function mo(n,t){return $a(n)?n:wi(n,t)?[n]:Bi(wl(n))}var wo=Qr;function yo(t,e,r){var o=t.length;return r=r===n?o:r,!e&&r>=o?t:to(t,e,r)}var xo=ft||function(n){return ct.clearTimeout(n)};function _o(n,t){if(t)return n.slice();var e=n.length,r=$n?$n(e):new n.constructor(e);return n.copy(r),r}function ko(n){var t=new n.constructor(n.byteLength);return new Hn(t).set(new Hn(n)),t}function Co(n,t){var e=t?ko(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function So(t,e){if(t!==e){var r=t!==n,o=null===t,i=t==t,a=ul(t),l=e!==n,s=null===e,u=e==e,c=ul(e);if(!s&&!c&&!a&&t>e||a&&l&&u&&!s&&!c||o&&l&&u||!r&&u||!i)return 1;if(!o&&!a&&!c&&t<e||c&&r&&i&&!o&&!a||s&&r&&i||!l&&i||!u)return-1}return 0}function Ao(n,t,e,r){for(var o=-1,i=n.length,a=e.length,l=-1,s=t.length,u=ge(i-a,0),c=xn(s+u),f=!r;++l<s;)c[l]=t[l];for(;++o<a;)(f||o<i)&&(c[e[o]]=n[o]);for(;u--;)c[l++]=n[o++];return c}function Eo(n,t,e,r){for(var o=-1,i=n.length,a=-1,l=e.length,s=-1,u=t.length,c=ge(i-l,0),f=xn(c+u),d=!r;++o<c;)f[o]=n[o];for(var v=o;++s<u;)f[v+s]=t[s];for(;++a<l;)(d||o<i)&&(f[v+e[a]]=n[o++]);return f}function Mo(n,t){var e=-1,r=n.length;for(t||(t=xn(r));++e<r;)t[e]=n[e];return t}function No(t,e,r,o){var i=!r;r||(r={});for(var a=-1,l=e.length;++a<l;){var s=e[a],u=o?o(r[s],t[s],s,r,t):n;u===n&&(u=t[s]),i?rr(r,s,u):Je(r,s,u)}return r}function Io(n,t){return function(e,r){var o=$a(e)?kt:tr,i=t?t():{};return o(e,n,li(r,2),i)}}function Lo(t){return Qr(function(e,r){var o=-1,i=r.length,a=i>1?r[i-1]:n,l=i>2?r[2]:n;for(a=t.length>3&&"function"==typeof a?(i--,a):n,l&&mi(r[0],r[1],l)&&(a=i<3?n:a,i=1),e=An(e);++o<i;){var s=r[o];s&&t(e,s,o,a)}return e})}function Fo(n,t){return function(e,r){if(null==e)return e;if(!Xa(e))return n(e,r);for(var o=e.length,i=t?o:-1,a=An(e);(t?i--:++i<o)&&!1!==r(a[i],i,a););return e}}function zo(n){return function(t,e,r){for(var o=-1,i=An(t),a=r(t),l=a.length;l--;){var s=a[n?l:++o];if(!1===e(i[s],s,i))break}return t}}function jo(t){return function(e){var r=ee(e=wl(e))?se(e):n,o=r?r[0]:e.charAt(0),i=r?yo(r,1).join(""):e.slice(1);return o[t]()+i}}function Po(n){return function(t){return Ft(Yl(Hl(t).replace(Gn,"")),n,"")}}function To(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=Re(n.prototype),r=n.apply(e,t);return tl(r)?r:e}}function Bo(t){return function(e,r,o){var i=An(e);if(!Xa(e)){var a=li(r,3);e=Fl(e),r=function(n){return a(i[n],n,i)}}var l=t(e,r,o);return l>-1?i[a?e[l]:l]:n}}function Oo(e){return ti(function(r){var o=r.length,i=o,a=We.prototype.thru;for(e&&r.reverse();i--;){var l=r[i];if("function"!=typeof l)throw new Nn(t);if(a&&!s&&"wrapper"==ii(l))var s=new We([],!0)}for(i=s?i:o;++i<o;){var u=ii(l=r[i]),c="wrapper"==u?oi(l):n;s=c&&yi(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?s[ii(c[0])].apply(s,c[3]):1==l.length&&yi(l)?s[u]():s.thru(l)}return function(){var n=arguments,t=n[0];if(s&&1==n.length&&$a(t))return s.plant(t).value();for(var e=0,i=o?r[e].apply(this,n):t;++e<o;)i=r[e].call(this,i);return i}})}function Ro(t,e,r,o,a,l,s,u,c,f){var d=e&i,v=1&e,p=2&e,h=24&e,g=512&e,b=p?n:To(t);return function i(){for(var m=arguments.length,w=xn(m),y=m;y--;)w[y]=arguments[y];if(h)var x=ai(i),_=function(n,t){for(var e=n.length,r=0;e--;)n[e]===t&&++r;return r}(w,x);if(o&&(w=Ao(w,o,a,h)),l&&(w=Eo(w,l,s,h)),m-=_,h&&m<f){var k=ie(w,x);return Vo(t,e,Ro,i.placeholder,r,w,k,u,c,f-m)}var C=v?r:this,S=p?C[t]:t;return m=w.length,u?w=function(t,e){for(var r=t.length,o=be(e.length,r),i=Mo(t);o--;){var a=e[o];t[o]=bi(a,r)?i[a]:n}return t}(w,u):g&&m>1&&w.reverse(),d&&c<m&&(w.length=c),this&&this!==ct&&this instanceof i&&(S=b||To(S)),S.apply(C,w)}}function Do(n,t){return function(e,r){return function(n,t,e,r){return mr(n,function(n,o,i){t(r,e(n),o,i)}),r}(e,n,t(r),{})}}function Wo(t,e){return function(r,o){var i;if(r===n&&o===n)return e;if(r!==n&&(i=r),o!==n){if(i===n)return o;"string"==typeof r||"string"==typeof o?(r=lo(r),o=lo(o)):(r=ao(r),o=ao(o)),i=t(r,o)}return i}}function Uo(n){return ti(function(t){return t=It(t,Qt(li())),Qr(function(e){var r=this;return n(t,function(n){return _t(n,r,e)})})})}function qo(t,e){var r=(e=e===n?" ":lo(e)).length;if(r<2)return r?Xr(e,t):e;var o=Xr(e,ht(t/le(e)));return ee(e)?yo(se(o),0,t).join(""):o.slice(0,t)}function Ho(t){return function(e,r,o){return o&&"number"!=typeof o&&mi(e,r,o)&&(r=o=n),e=pl(e),r===n?(r=e,e=0):r=pl(r),function(n,t,e,r){for(var o=-1,i=ge(ht((t-n)/(e||1)),0),a=xn(i);i--;)a[r?i:++o]=n,n+=e;return a}(e,r,o=o===n?e<r?1:-1:pl(o),t)}}function $o(n){return function(t,e){return"string"==typeof t&&"string"==typeof e||(t=bl(t),e=bl(e)),n(t,e)}}function Vo(t,e,r,i,a,l,s,u,c,f){var d=8&e;e|=d?o:64,4&(e&=~(d?64:o))||(e&=-4);var v=[t,e,a,d?l:n,d?s:n,d?n:l,d?n:s,u,c,f],p=r.apply(n,v);return yi(t)&&Mi(p,v),p.placeholder=i,Li(p,t,e)}function Xo(n){var t=Sn[n];return function(n,e){if(n=bl(n),(e=null==e?0:be(hl(e),292))&&ve(n)){var r=(wl(n)+"e").split("e");return+((r=(wl(t(r[0]+"e"+(+r[1]+e)))+"e").split("e"))[0]+"e"+(+r[1]-e))}return t(n)}}var Qo=Se&&1/ae(new Se([,-0]))[1]==l?function(n){return new Se(n)}:us;function Go(n){return function(t){var e=vi(t);return e==w?re(t):e==C?function(n){var t=-1,e=Array(n.size);return n.forEach(function(n){e[++t]=[n,n]}),e}(t):function(n,t){return It(t,function(t){return[t,n[t]]})}(t,n(t))}}function Ko(e,l,s,u,c,f,d,v){var p=2&l;if(!p&&"function"!=typeof e)throw new Nn(t);var h=u?u.length:0;if(h||(l&=-97,u=c=n),d=d===n?d:ge(hl(d),0),v=v===n?v:hl(v),h-=c?c.length:0,64&l){var g=u,b=c;u=c=n}var m=p?n:oi(e),w=[e,l,s,u,c,g,b,f,d,v];if(m&&function(n,t){var e=n[1],o=t[1],l=e|o,s=l<131,u=o==i&&8==e||o==i&&e==a&&n[7].length<=t[8]||384==o&&t[7].length<=t[8]&&8==e;if(!s&&!u)return n;1&o&&(n[2]=t[2],l|=1&e?0:4);var c=t[3];if(c){var f=n[3];n[3]=f?Ao(f,c,t[4]):c,n[4]=f?ie(n[3],r):t[4]}(c=t[5])&&(f=n[5],n[5]=f?Eo(f,c,t[6]):c,n[6]=f?ie(n[5],r):t[6]),(c=t[7])&&(n[7]=c),o&i&&(n[8]=null==n[8]?t[8]:be(n[8],t[8])),null==n[9]&&(n[9]=t[9]),n[0]=t[0],n[1]=l}(w,m),e=w[0],l=w[1],s=w[2],u=w[3],c=w[4],!(v=w[9]=w[9]===n?p?0:e.length:ge(w[9]-h,0))&&24&l&&(l&=-25),l&&1!=l)y=8==l||16==l?function(t,e,r){var o=To(t);return function i(){for(var a=arguments.length,l=xn(a),s=a,u=ai(i);s--;)l[s]=arguments[s];var c=a<3&&l[0]!==u&&l[a-1]!==u?[]:ie(l,u);return(a-=c.length)<r?Vo(t,e,Ro,i.placeholder,n,l,c,n,n,r-a):_t(this&&this!==ct&&this instanceof i?o:t,this,l)}}(e,l,v):l!=o&&33!=l||c.length?Ro.apply(n,w):function(n,t,e,r){var o=1&t,i=To(n);return function t(){for(var a=-1,l=arguments.length,s=-1,u=r.length,c=xn(u+l),f=this&&this!==ct&&this instanceof t?i:n;++s<u;)c[s]=r[s];for(;l--;)c[s++]=arguments[++a];return _t(f,o?e:this,c)}}(e,l,s,u);else var y=function(n,t,e){var r=1&t,o=To(n);return function t(){return(this&&this!==ct&&this instanceof t?o:n).apply(r?e:this,arguments)}}(e,l,s);return Li((m?Yr:Mi)(y,w),e,l)}function Zo(t,e,r,o){return t===n||Wa(t,Fn[r])&&!Pn.call(o,r)?e:t}function Yo(t,e,r,o,i,a){return tl(t)&&tl(e)&&(a.set(e,t),Dr(t,e,n,Yo,a),a.delete(e)),t}function Jo(t){return il(t)?n:t}function ni(t,e,r,o,i,a){var l=1&r,s=t.length,u=e.length;if(s!=u&&!(l&&u>s))return!1;var c=a.get(t),f=a.get(e);if(c&&f)return c==e&&f==t;var d=-1,v=!0,p=2&r?new Ve:n;for(a.set(t,e),a.set(e,t);++d<s;){var h=t[d],g=e[d];if(o)var b=l?o(g,h,d,e,t,a):o(h,g,d,t,e,a);if(b!==n){if(b)continue;v=!1;break}if(p){if(!jt(e,function(n,t){if(!Kt(p,t)&&(h===n||i(h,n,r,o,a)))return p.push(t)})){v=!1;break}}else if(h!==g&&!i(h,g,r,o,a)){v=!1;break}}return a.delete(t),a.delete(e),v}function ti(t){return Ii(Si(t,n,Vi),t+"")}function ei(n){return _r(n,Fl,fi)}function ri(n){return _r(n,zl,di)}var oi=Me?function(n){return Me.get(n)}:us;function ii(n){for(var t=n.name+"",e=Ne[t],r=Pn.call(Ne,t)?e.length:0;r--;){var o=e[r],i=o.func;if(null==i||i==n)return o.name}return t}function ai(n){return(Pn.call(Oe,"placeholder")?Oe:n).placeholder}function li(){var n=Oe.iteratee||is;return n=n===is?zr:n,arguments.length?n(arguments[0],arguments[1]):n}function si(n,t){var e,r,o=n.__data__;return("string"==(r=typeof(e=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==e:null===e)?o["string"==typeof t?"string":"hash"]:o.map}function ui(n){for(var t=Fl(n),e=t.length;e--;){var r=t[e],o=n[r];t[e]=[r,o,ki(o)]}return t}function ci(t,e){var r=function(t,e){return null==t?n:t[e]}(t,e);return Fr(r)?r:n}var fi=qt?function(n){return null==n?[]:(n=An(n),Et(qt(n),function(t){return Qn.call(n,t)}))}:gs,di=qt?function(n){for(var t=[];n;)Lt(t,fi(n)),n=Vn(n);return t}:gs,vi=kr;function pi(n,t,e){for(var r=-1,o=(t=mo(t,n)).length,i=!1;++r<o;){var a=Oi(t[r]);if(!(i=null!=n&&e(n,a)))break;n=n[a]}return i||++r!=o?i:!!(o=null==n?0:n.length)&&nl(o)&&bi(a,o)&&($a(n)||Ha(n))}function hi(n){return"function"!=typeof n.constructor||_i(n)?{}:Re(Vn(n))}function gi(n){return $a(n)||Ha(n)||!!(Jn&&n&&n[Jn])}function bi(n,t){var e=typeof n;return!!(t=null==t?s:t)&&("number"==e||"symbol"!=e&&hn.test(n))&&n>-1&&n%1==0&&n<t}function mi(n,t,e){if(!tl(e))return!1;var r=typeof t;return!!("number"==r?Xa(e)&&bi(t,e.length):"string"==r&&t in e)&&Wa(e[t],n)}function wi(n,t){if($a(n))return!1;var e=typeof n;return!("number"!=e&&"symbol"!=e&&"boolean"!=e&&null!=n&&!ul(n))||K.test(n)||!G.test(n)||null!=t&&n in An(t)}function yi(n){var t=ii(n),e=Oe[t];if("function"!=typeof e||!(t in Ue.prototype))return!1;if(n===e)return!0;var r=oi(e);return!!r&&n===r[0]}(_e&&vi(new _e(new ArrayBuffer(1)))!=N||ke&&vi(new ke)!=w||Ce&&vi(Ce.resolve())!=_||Se&&vi(new Se)!=C||Ae&&vi(new Ae)!=E)&&(vi=function(t){var e=kr(t),r=e==x?t.constructor:n,o=r?Ri(r):"";if(o)switch(o){case Ie:return N;case Le:return w;case Fe:return _;case ze:return C;case je:return E}return e});var xi=zn?Ya:bs;function _i(n){var t=n&&n.constructor;return n===("function"==typeof t&&t.prototype||Fn)}function ki(n){return n==n&&!tl(n)}function Ci(t,e){return function(r){return null!=r&&r[t]===e&&(e!==n||t in An(r))}}function Si(t,e,r){return e=ge(e===n?t.length-1:e,0),function(){for(var n=arguments,o=-1,i=ge(n.length-e,0),a=xn(i);++o<i;)a[o]=n[e+o];o=-1;for(var l=xn(e+1);++o<e;)l[o]=n[o];return l[e]=r(a),_t(t,this,l)}}function Ai(n,t){return t.length<2?n:xr(n,to(t,0,-1))}function Ei(n,t){if(("constructor"!==t||"function"!=typeof n[t])&&"__proto__"!=t)return n[t]}var Mi=Fi(Yr),Ni=pt||function(n,t){return ct.setTimeout(n,t)},Ii=Fi(Jr);function Li(n,t,e){var r=t+"";return Ii(n,function(n,t){var e=t.length;if(!e)return n;var r=e-1;return t[r]=(e>1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(en,"{\n/* [wrapped with "+t+"] */\n")}(r,function(n,t){return Ct(f,function(e){var r="_."+e[0];t&e[1]&&!Mt(n,r)&&n.push(r)}),n.sort()}(function(n){var t=n.match(rn);return t?t[1].split(on):[]}(r),e)))}function Fi(t){var e=0,r=0;return function(){var o=me(),i=16-(o-r);if(r=o,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(n,arguments)}}function zi(t,e){var r=-1,o=t.length,i=o-1;for(e=e===n?o:e;++r<e;){var a=Vr(r,i),l=t[a];t[a]=t[r],t[r]=l}return t.length=e,t}var ji,Pi,Ti,Bi=(ji=function(n){var t=[];return 46===n.charCodeAt(0)&&t.push(""),n.replace(Z,function(n,e,r,o){t.push(r?o.replace(sn,"$1"):e||n)}),t},Pi=Pa(ji,function(n){return 500===Ti.size&&Ti.clear(),n}),Ti=Pi.cache,Pi);function Oi(n){if("string"==typeof n||ul(n))return n;var t=n+"";return"0"==t&&1/n==-1/0?"-0":t}function Ri(n){if(null!=n){try{return jn.call(n)}catch(t){}try{return n+""}catch(t){}}return""}function Di(n){if(n instanceof Ue)return n.clone();var t=new We(n.__wrapped__,n.__chain__);return t.__actions__=Mo(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}var Wi=Qr(function(n,t){return Qa(n)?ur(n,hr(t,1,Qa,!0)):[]}),Ui=Qr(function(t,e){var r=Zi(e);return Qa(r)&&(r=n),Qa(t)?ur(t,hr(e,1,Qa,!0),li(r,2)):[]}),qi=Qr(function(t,e){var r=Zi(e);return Qa(r)&&(r=n),Qa(t)?ur(t,hr(e,1,Qa,!0),n,r):[]});function Hi(n,t,e){var r=null==n?0:n.length;if(!r)return-1;var o=null==e?0:hl(e);return o<0&&(o=ge(r+o,0)),Bt(n,li(t,3),o)}function $i(t,e,r){var o=null==t?0:t.length;if(!o)return-1;var i=o-1;return r!==n&&(i=hl(r),i=r<0?ge(o+i,0):be(i,o-1)),Bt(t,li(e,3),i,!0)}function Vi(n){return null!=n&&n.length?hr(n,1):[]}function Xi(t){return t&&t.length?t[0]:n}var Qi=Qr(function(n){var t=It(n,go);return t.length&&t[0]===n[0]?Er(t):[]}),Gi=Qr(function(t){var e=Zi(t),r=It(t,go);return e===Zi(r)?e=n:r.pop(),r.length&&r[0]===t[0]?Er(r,li(e,2)):[]}),Ki=Qr(function(t){var e=Zi(t),r=It(t,go);return(e="function"==typeof e?e:n)&&r.pop(),r.length&&r[0]===t[0]?Er(r,n,e):[]});function Zi(t){var e=null==t?0:t.length;return e?t[e-1]:n}var Yi=Qr(Ji);function Ji(n,t){return n&&n.length&&t&&t.length?Hr(n,t):n}var na=ti(function(n,t){var e=null==n?0:n.length,r=or(n,t);return $r(n,It(t,function(n){return bi(n,e)?+n:n}).sort(So)),r});function ta(n){return null==n?n:xe.call(n)}var ea=Qr(function(n){return so(hr(n,1,Qa,!0))}),ra=Qr(function(t){var e=Zi(t);return Qa(e)&&(e=n),so(hr(t,1,Qa,!0),li(e,2))}),oa=Qr(function(t){var e=Zi(t);return e="function"==typeof e?e:n,so(hr(t,1,Qa,!0),n,e)});function ia(n){if(!n||!n.length)return[];var t=0;return n=Et(n,function(n){if(Qa(n))return t=ge(n.length,t),!0}),Vt(t,function(t){return It(n,Ut(t))})}function aa(t,e){if(!t||!t.length)return[];var r=ia(t);return null==e?r:It(r,function(t){return _t(e,n,t)})}var la=Qr(function(n,t){return Qa(n)?ur(n,t):[]}),sa=Qr(function(n){return po(Et(n,Qa))}),ua=Qr(function(t){var e=Zi(t);return Qa(e)&&(e=n),po(Et(t,Qa),li(e,2))}),ca=Qr(function(t){var e=Zi(t);return e="function"==typeof e?e:n,po(Et(t,Qa),n,e)}),fa=Qr(ia),da=Qr(function(t){var e=t.length,r=e>1?t[e-1]:n;return r="function"==typeof r?(t.pop(),r):n,aa(t,r)});function va(n){var t=Oe(n);return t.__chain__=!0,t}function pa(n,t){return t(n)}var ha=ti(function(t){var e=t.length,r=e?t[0]:0,o=this.__wrapped__,i=function(n){return or(n,t)};return!(e>1||this.__actions__.length)&&o instanceof Ue&&bi(r)?((o=o.slice(r,+r+(e?1:0))).__actions__.push({func:pa,args:[i],thisArg:n}),new We(o,this.__chain__).thru(function(t){return e&&!t.length&&t.push(n),t})):this.thru(i)}),ga=Io(function(n,t,e){Pn.call(n,e)?++n[e]:rr(n,e,1)}),ba=Bo(Hi),ma=Bo($i);function wa(n,t){return($a(n)?Ct:cr)(n,li(t,3))}function ya(n,t){return($a(n)?St:fr)(n,li(t,3))}var xa=Io(function(n,t,e){Pn.call(n,e)?n[e].push(t):rr(n,e,[t])}),_a=Qr(function(n,t,e){var r=-1,o="function"==typeof t,i=Xa(n)?xn(n.length):[];return cr(n,function(n){i[++r]=o?_t(t,n,e):Mr(n,t,e)}),i}),ka=Io(function(n,t,e){rr(n,e,t)});function Ca(n,t){return($a(n)?It:Br)(n,li(t,3))}var Sa=Io(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]}),Aa=Qr(function(n,t){if(null==n)return[];var e=t.length;return e>1&&mi(n,t[0],t[1])?t=[]:e>2&&mi(t[0],t[1],t[2])&&(t=[t[0]]),Ur(n,hr(t,1),[])}),Ea=dt||function(){return ct.Date.now()};function Ma(t,e,r){return e=r?n:e,e=t&&null==e?t.length:e,Ko(t,i,n,n,n,n,e)}function Na(e,r){var o;if("function"!=typeof r)throw new Nn(t);return e=hl(e),function(){return--e>0&&(o=r.apply(this,arguments)),e<=1&&(r=n),o}}var Ia=Qr(function(n,t,e){var r=1;if(e.length){var i=ie(e,ai(Ia));r|=o}return Ko(n,r,t,e,i)}),La=Qr(function(n,t,e){var r=3;if(e.length){var i=ie(e,ai(La));r|=o}return Ko(t,r,n,e,i)});function Fa(e,r,o){var i,a,l,s,u,c,f=0,d=!1,v=!1,p=!0;if("function"!=typeof e)throw new Nn(t);function h(t){var r=i,o=a;return i=a=n,f=t,s=e.apply(o,r)}function g(t){var e=t-c;return c===n||e>=r||e<0||v&&t-f>=l}function b(){var n=Ea();if(g(n))return m(n);u=Ni(b,function(n){var t=r-(n-c);return v?be(t,l-(n-f)):t}(n))}function m(t){return u=n,p&&i?h(t):(i=a=n,s)}function w(){var t=Ea(),e=g(t);if(i=arguments,a=this,c=t,e){if(u===n)return function(n){return f=n,u=Ni(b,r),d?h(n):s}(c);if(v)return xo(u),u=Ni(b,r),h(c)}return u===n&&(u=Ni(b,r)),s}return r=bl(r)||0,tl(o)&&(d=!!o.leading,l=(v="maxWait"in o)?ge(bl(o.maxWait)||0,r):l,p="trailing"in o?!!o.trailing:p),w.cancel=function(){u!==n&&xo(u),f=0,i=c=a=u=n},w.flush=function(){return u===n?s:m(Ea())},w}var za=Qr(function(n,t){return sr(n,1,t)}),ja=Qr(function(n,t,e){return sr(n,bl(t)||0,e)});function Pa(n,e){if("function"!=typeof n||null!=e&&"function"!=typeof e)throw new Nn(t);var r=function(){var t=arguments,o=e?e.apply(this,t):t[0],i=r.cache;if(i.has(o))return i.get(o);var a=n.apply(this,t);return r.cache=i.set(o,a)||i,a};return r.cache=new(Pa.Cache||$e),r}function Ta(n){if("function"!=typeof n)throw new Nn(t);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}Pa.Cache=$e;var Ba=wo(function(n,t){var e=(t=1==t.length&&$a(t[0])?It(t[0],Qt(li())):It(hr(t,1),Qt(li()))).length;return Qr(function(r){for(var o=-1,i=be(r.length,e);++o<i;)r[o]=t[o].call(this,r[o]);return _t(n,this,r)})}),Oa=Qr(function(t,e){var r=ie(e,ai(Oa));return Ko(t,o,n,e,r)}),Ra=Qr(function(t,e){var r=ie(e,ai(Ra));return Ko(t,64,n,e,r)}),Da=ti(function(t,e){return Ko(t,a,n,n,n,e)});function Wa(n,t){return n===t||n!=n&&t!=t}var Ua=$o(Cr),qa=$o(function(n,t){return n>=t}),Ha=Nr(function(){return arguments}())?Nr:function(n){return el(n)&&Pn.call(n,"callee")&&!Qn.call(n,"callee")},$a=xn.isArray,Va=gt?Qt(gt):function(n){return el(n)&&kr(n)==M};function Xa(n){return null!=n&&nl(n.length)&&!Ya(n)}function Qa(n){return el(n)&&Xa(n)}var Ga=de||bs,Ka=bt?Qt(bt):function(n){return el(n)&&kr(n)==h};function Za(n){if(!el(n))return!1;var t=kr(n);return t==g||"[object DOMException]"==t||"string"==typeof n.message&&"string"==typeof n.name&&!il(n)}function Ya(n){if(!tl(n))return!1;var t=kr(n);return t==b||t==m||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Ja(n){return"number"==typeof n&&n==hl(n)}function nl(n){return"number"==typeof n&&n>-1&&n%1==0&&n<=s}function tl(n){var t=typeof n;return null!=n&&("object"==t||"function"==t)}function el(n){return null!=n&&"object"==typeof n}var rl=mt?Qt(mt):function(n){return el(n)&&vi(n)==w};function ol(n){return"number"==typeof n||el(n)&&kr(n)==y}function il(n){if(!el(n)||kr(n)!=x)return!1;var t=Vn(n);if(null===t)return!0;var e=Pn.call(t,"constructor")&&t.constructor;return"function"==typeof e&&e instanceof e&&jn.call(e)==Rn}var al=wt?Qt(wt):function(n){return el(n)&&kr(n)==k},ll=yt?Qt(yt):function(n){return el(n)&&vi(n)==C};function sl(n){return"string"==typeof n||!$a(n)&&el(n)&&kr(n)==S}function ul(n){return"symbol"==typeof n||el(n)&&kr(n)==A}var cl=xt?Qt(xt):function(n){return el(n)&&nl(n.length)&&!!rt[kr(n)]},fl=$o(Tr),dl=$o(function(n,t){return n<=t});function vl(n){if(!n)return[];if(Xa(n))return sl(n)?se(n):Mo(n);if(it&&n[it])return function(n){for(var t,e=[];!(t=n.next()).done;)e.push(t.value);return e}(n[it]());var t=vi(n);return(t==w?re:t==C?ae:Wl)(n)}function pl(n){return n?(n=bl(n))===l||n===-1/0?17976931348623157e292*(n<0?-1:1):n==n?n:0:0===n?n:0}function hl(n){var t=pl(n),e=t%1;return t==t?e?t-e:t:0}function gl(n){return n?ir(hl(n),0,c):0}function bl(n){if("number"==typeof n)return n;if(ul(n))return u;if(tl(n)){var t="function"==typeof n.valueOf?n.valueOf():n;n=tl(t)?t+"":t}if("string"!=typeof n)return 0===n?n:+n;n=Xt(n);var e=dn.test(n);return e||pn.test(n)?lt(n.slice(2),e?2:8):fn.test(n)?u:+n}function ml(n){return No(n,zl(n))}function wl(n){return null==n?"":lo(n)}var yl=Lo(function(n,t){if(_i(t)||Xa(t))No(t,Fl(t),n);else for(var e in t)Pn.call(t,e)&&Je(n,e,t[e])}),xl=Lo(function(n,t){No(t,zl(t),n)}),_l=Lo(function(n,t,e,r){No(t,zl(t),n,r)}),kl=Lo(function(n,t,e,r){No(t,Fl(t),n,r)}),Cl=ti(or),Sl=Qr(function(t,e){t=An(t);var r=-1,o=e.length,i=o>2?e[2]:n;for(i&&mi(e[0],e[1],i)&&(o=1);++r<o;)for(var a=e[r],l=zl(a),s=-1,u=l.length;++s<u;){var c=l[s],f=t[c];(f===n||Wa(f,Fn[c])&&!Pn.call(t,c))&&(t[c]=a[c])}return t}),Al=Qr(function(t){return t.push(n,Yo),_t(Pl,n,t)});function El(t,e,r){var o=null==t?n:xr(t,e);return o===n?r:o}function Ml(n,t){return null!=n&&pi(n,t,Ar)}var Nl=Do(function(n,t,e){null!=t&&"function"!=typeof t.toString&&(t=On.call(t)),n[t]=e},ts(os)),Il=Do(function(n,t,e){null!=t&&"function"!=typeof t.toString&&(t=On.call(t)),Pn.call(n,t)?n[t].push(e):n[t]=[e]},li),Ll=Qr(Mr);function Fl(n){return Xa(n)?Qe(n):jr(n)}function zl(n){return Xa(n)?Qe(n,!0):Pr(n)}var jl=Lo(function(n,t,e){Dr(n,t,e)}),Pl=Lo(function(n,t,e,r){Dr(n,t,e,r)}),Tl=ti(function(n,t){var e={};if(null==n)return e;var r=!1;t=It(t,function(t){return t=mo(t,n),r||(r=t.length>1),t}),No(n,ri(n),e),r&&(e=ar(e,7,Jo));for(var o=t.length;o--;)uo(e,t[o]);return e}),Bl=ti(function(n,t){return null==n?{}:function(n,t){return qr(n,t,function(t,e){return Ml(n,e)})}(n,t)});function Ol(n,t){if(null==n)return{};var e=It(ri(n),function(n){return[n]});return t=li(t),qr(n,e,function(n,e){return t(n,e[0])})}var Rl=Go(Fl),Dl=Go(zl);function Wl(n){return null==n?[]:Gt(n,Fl(n))}var Ul=Po(function(n,t,e){return t=t.toLowerCase(),n+(e?ql(t):t)});function ql(n){return Zl(wl(n).toLowerCase())}function Hl(n){return(n=wl(n))&&n.replace(gn,Jt).replace(Kn,"")}var $l=Po(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),Vl=Po(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),Xl=jo("toLowerCase"),Ql=Po(function(n,t,e){return n+(e?"_":"")+t.toLowerCase()}),Gl=Po(function(n,t,e){return n+(e?" ":"")+Zl(t)}),Kl=Po(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),Zl=jo("toUpperCase");function Yl(t,e,r){return t=wl(t),(e=r?n:e)===n?function(n){return nt.test(n)}(t)?function(n){return n.match(Yn)||[]}(t):function(n){return n.match(an)||[]}(t):t.match(e)||[]}var Jl=Qr(function(t,e){try{return _t(t,n,e)}catch(r){return Za(r)?r:new kn(r)}}),ns=ti(function(n,t){return Ct(t,function(t){t=Oi(t),rr(n,t,Ia(n[t],n))}),n});function ts(n){return function(){return n}}var es=Oo(),rs=Oo(!0);function os(n){return n}function is(n){return zr("function"==typeof n?n:ar(n,1))}var as=Qr(function(n,t){return function(e){return Mr(e,n,t)}}),ls=Qr(function(n,t){return function(e){return Mr(n,e,t)}});function ss(n,t,e){var r=Fl(t),o=yr(t,r);null!=e||tl(t)&&(o.length||!r.length)||(e=t,t=n,n=this,o=yr(t,Fl(t)));var i=!(tl(e)&&"chain"in e&&!e.chain),a=Ya(n);return Ct(o,function(e){var r=t[e];n[e]=r,a&&(n.prototype[e]=function(){var t=this.__chain__;if(i||t){var e=n(this.__wrapped__);return(e.__actions__=Mo(this.__actions__)).push({func:r,args:arguments,thisArg:n}),e.__chain__=t,e}return r.apply(n,Lt([this.value()],arguments))})}),n}function us(){}var cs=Uo(It),fs=Uo(At),ds=Uo(jt);function vs(n){return wi(n)?Ut(Oi(n)):function(n){return function(t){return xr(t,n)}}(n)}var ps=Ho(),hs=Ho(!0);function gs(){return[]}function bs(){return!1}var ms,ws=Wo(function(n,t){return n+t},0),ys=Xo("ceil"),xs=Wo(function(n,t){return n/t},1),_s=Xo("floor"),ks=Wo(function(n,t){return n*t},1),Cs=Xo("round"),Ss=Wo(function(n,t){return n-t},0);return Oe.after=function(n,e){if("function"!=typeof e)throw new Nn(t);return n=hl(n),function(){if(--n<1)return e.apply(this,arguments)}},Oe.ary=Ma,Oe.assign=yl,Oe.assignIn=xl,Oe.assignInWith=_l,Oe.assignWith=kl,Oe.at=Cl,Oe.before=Na,Oe.bind=Ia,Oe.bindAll=ns,Oe.bindKey=La,Oe.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return $a(n)?n:[n]},Oe.chain=va,Oe.chunk=function(t,e,r){e=(r?mi(t,e,r):e===n)?1:ge(hl(e),0);var o=null==t?0:t.length;if(!o||e<1)return[];for(var i=0,a=0,l=xn(ht(o/e));i<o;)l[a++]=to(t,i,i+=e);return l},Oe.compact=function(n){for(var t=-1,e=null==n?0:n.length,r=0,o=[];++t<e;){var i=n[t];i&&(o[r++]=i)}return o},Oe.concat=function(){var n=arguments.length;if(!n)return[];for(var t=xn(n-1),e=arguments[0],r=n;r--;)t[r-1]=arguments[r];return Lt($a(e)?Mo(e):[e],hr(t,1))},Oe.cond=function(n){var e=null==n?0:n.length,r=li();return n=e?It(n,function(n){if("function"!=typeof n[1])throw new Nn(t);return[r(n[0]),n[1]]}):[],Qr(function(t){for(var r=-1;++r<e;){var o=n[r];if(_t(o[0],this,t))return _t(o[1],this,t)}})},Oe.conforms=function(n){return function(n){var t=Fl(n);return function(e){return lr(e,n,t)}}(ar(n,1))},Oe.constant=ts,Oe.countBy=ga,Oe.create=function(n,t){var e=Re(n);return null==t?e:er(e,t)},Oe.curry=function t(e,r,o){var i=Ko(e,8,n,n,n,n,n,r=o?n:r);return i.placeholder=t.placeholder,i},Oe.curryRight=function t(e,r,o){var i=Ko(e,16,n,n,n,n,n,r=o?n:r);return i.placeholder=t.placeholder,i},Oe.debounce=Fa,Oe.defaults=Sl,Oe.defaultsDeep=Al,Oe.defer=za,Oe.delay=ja,Oe.difference=Wi,Oe.differenceBy=Ui,Oe.differenceWith=qi,Oe.drop=function(t,e,r){var o=null==t?0:t.length;return o?to(t,(e=r||e===n?1:hl(e))<0?0:e,o):[]},Oe.dropRight=function(t,e,r){var o=null==t?0:t.length;return o?to(t,0,(e=o-(e=r||e===n?1:hl(e)))<0?0:e):[]},Oe.dropRightWhile=function(n,t){return n&&n.length?fo(n,li(t,3),!0,!0):[]},Oe.dropWhile=function(n,t){return n&&n.length?fo(n,li(t,3),!0):[]},Oe.fill=function(t,e,r,o){var i=null==t?0:t.length;return i?(r&&"number"!=typeof r&&mi(t,e,r)&&(r=0,o=i),function(t,e,r,o){var i=t.length;for((r=hl(r))<0&&(r=-r>i?0:i+r),(o=o===n||o>i?i:hl(o))<0&&(o+=i),o=r>o?0:gl(o);r<o;)t[r++]=e;return t}(t,e,r,o)):[]},Oe.filter=function(n,t){return($a(n)?Et:pr)(n,li(t,3))},Oe.flatMap=function(n,t){return hr(Ca(n,t),1)},Oe.flatMapDeep=function(n,t){return hr(Ca(n,t),l)},Oe.flatMapDepth=function(t,e,r){return r=r===n?1:hl(r),hr(Ca(t,e),r)},Oe.flatten=Vi,Oe.flattenDeep=function(n){return null!=n&&n.length?hr(n,l):[]},Oe.flattenDepth=function(t,e){return null!=t&&t.length?hr(t,e=e===n?1:hl(e)):[]},Oe.flip=function(n){return Ko(n,512)},Oe.flow=es,Oe.flowRight=rs,Oe.fromPairs=function(n){for(var t=-1,e=null==n?0:n.length,r={};++t<e;){var o=n[t];r[o[0]]=o[1]}return r},Oe.functions=function(n){return null==n?[]:yr(n,Fl(n))},Oe.functionsIn=function(n){return null==n?[]:yr(n,zl(n))},Oe.groupBy=xa,Oe.initial=function(n){return null!=n&&n.length?to(n,0,-1):[]},Oe.intersection=Qi,Oe.intersectionBy=Gi,Oe.intersectionWith=Ki,Oe.invert=Nl,Oe.invertBy=Il,Oe.invokeMap=_a,Oe.iteratee=is,Oe.keyBy=ka,Oe.keys=Fl,Oe.keysIn=zl,Oe.map=Ca,Oe.mapKeys=function(n,t){var e={};return t=li(t,3),mr(n,function(n,r,o){rr(e,t(n,r,o),n)}),e},Oe.mapValues=function(n,t){var e={};return t=li(t,3),mr(n,function(n,r,o){rr(e,r,t(n,r,o))}),e},Oe.matches=function(n){return Or(ar(n,1))},Oe.matchesProperty=function(n,t){return Rr(n,ar(t,1))},Oe.memoize=Pa,Oe.merge=jl,Oe.mergeWith=Pl,Oe.method=as,Oe.methodOf=ls,Oe.mixin=ss,Oe.negate=Ta,Oe.nthArg=function(n){return n=hl(n),Qr(function(t){return Wr(t,n)})},Oe.omit=Tl,Oe.omitBy=function(n,t){return Ol(n,Ta(li(t)))},Oe.once=function(n){return Na(2,n)},Oe.orderBy=function(t,e,r,o){return null==t?[]:($a(e)||(e=null==e?[]:[e]),$a(r=o?n:r)||(r=null==r?[]:[r]),Ur(t,e,r))},Oe.over=cs,Oe.overArgs=Ba,Oe.overEvery=fs,Oe.overSome=ds,Oe.partial=Oa,Oe.partialRight=Ra,Oe.partition=Sa,Oe.pick=Bl,Oe.pickBy=Ol,Oe.property=vs,Oe.propertyOf=function(t){return function(e){return null==t?n:xr(t,e)}},Oe.pull=Yi,Oe.pullAll=Ji,Oe.pullAllBy=function(n,t,e){return n&&n.length&&t&&t.length?Hr(n,t,li(e,2)):n},Oe.pullAllWith=function(t,e,r){return t&&t.length&&e&&e.length?Hr(t,e,n,r):t},Oe.pullAt=na,Oe.range=ps,Oe.rangeRight=hs,Oe.rearg=Da,Oe.reject=function(n,t){return($a(n)?Et:pr)(n,Ta(li(t,3)))},Oe.remove=function(n,t){var e=[];if(!n||!n.length)return e;var r=-1,o=[],i=n.length;for(t=li(t,3);++r<i;){var a=n[r];t(a,r,n)&&(e.push(a),o.push(r))}return $r(n,o),e},Oe.rest=function(e,r){if("function"!=typeof e)throw new Nn(t);return Qr(e,r=r===n?r:hl(r))},Oe.reverse=ta,Oe.sampleSize=function(t,e,r){return e=(r?mi(t,e,r):e===n)?1:hl(e),($a(t)?Ke:Kr)(t,e)},Oe.set=function(n,t,e){return null==n?n:Zr(n,t,e)},Oe.setWith=function(t,e,r,o){return o="function"==typeof o?o:n,null==t?t:Zr(t,e,r,o)},Oe.shuffle=function(n){return($a(n)?Ze:no)(n)},Oe.slice=function(t,e,r){var o=null==t?0:t.length;return o?(r&&"number"!=typeof r&&mi(t,e,r)?(e=0,r=o):(e=null==e?0:hl(e),r=r===n?o:hl(r)),to(t,e,r)):[]},Oe.sortBy=Aa,Oe.sortedUniq=function(n){return n&&n.length?io(n):[]},Oe.sortedUniqBy=function(n,t){return n&&n.length?io(n,li(t,2)):[]},Oe.split=function(t,e,r){return r&&"number"!=typeof r&&mi(t,e,r)&&(e=r=n),(r=r===n?c:r>>>0)?(t=wl(t))&&("string"==typeof e||null!=e&&!al(e))&&!(e=lo(e))&&ee(t)?yo(se(t),0,r):t.split(e,r):[]},Oe.spread=function(n,e){if("function"!=typeof n)throw new Nn(t);return e=null==e?0:ge(hl(e),0),Qr(function(t){var r=t[e],o=yo(t,0,e);return r&&Lt(o,r),_t(n,this,o)})},Oe.tail=function(n){var t=null==n?0:n.length;return t?to(n,1,t):[]},Oe.take=function(t,e,r){return t&&t.length?to(t,0,(e=r||e===n?1:hl(e))<0?0:e):[]},Oe.takeRight=function(t,e,r){var o=null==t?0:t.length;return o?to(t,(e=o-(e=r||e===n?1:hl(e)))<0?0:e,o):[]},Oe.takeRightWhile=function(n,t){return n&&n.length?fo(n,li(t,3),!1,!0):[]},Oe.takeWhile=function(n,t){return n&&n.length?fo(n,li(t,3)):[]},Oe.tap=function(n,t){return t(n),n},Oe.throttle=function(n,e,r){var o=!0,i=!0;if("function"!=typeof n)throw new Nn(t);return tl(r)&&(o="leading"in r?!!r.leading:o,i="trailing"in r?!!r.trailing:i),Fa(n,e,{leading:o,maxWait:e,trailing:i})},Oe.thru=pa,Oe.toArray=vl,Oe.toPairs=Rl,Oe.toPairsIn=Dl,Oe.toPath=function(n){return $a(n)?It(n,Oi):ul(n)?[n]:Mo(Bi(wl(n)))},Oe.toPlainObject=ml,Oe.transform=function(n,t,e){var r=$a(n),o=r||Ga(n)||cl(n);if(t=li(t,4),null==e){var i=n&&n.constructor;e=o?r?new i:[]:tl(n)&&Ya(i)?Re(Vn(n)):{}}return(o?Ct:mr)(n,function(n,r,o){return t(e,n,r,o)}),e},Oe.unary=function(n){return Ma(n,1)},Oe.union=ea,Oe.unionBy=ra,Oe.unionWith=oa,Oe.uniq=function(n){return n&&n.length?so(n):[]},Oe.uniqBy=function(n,t){return n&&n.length?so(n,li(t,2)):[]},Oe.uniqWith=function(t,e){return e="function"==typeof e?e:n,t&&t.length?so(t,n,e):[]},Oe.unset=function(n,t){return null==n||uo(n,t)},Oe.unzip=ia,Oe.unzipWith=aa,Oe.update=function(n,t,e){return null==n?n:co(n,t,bo(e))},Oe.updateWith=function(t,e,r,o){return o="function"==typeof o?o:n,null==t?t:co(t,e,bo(r),o)},Oe.values=Wl,Oe.valuesIn=function(n){return null==n?[]:Gt(n,zl(n))},Oe.without=la,Oe.words=Yl,Oe.wrap=function(n,t){return Oa(bo(t),n)},Oe.xor=sa,Oe.xorBy=ua,Oe.xorWith=ca,Oe.zip=fa,Oe.zipObject=function(n,t){return ho(n||[],t||[],Je)},Oe.zipObjectDeep=function(n,t){return ho(n||[],t||[],Zr)},Oe.zipWith=da,Oe.entries=Rl,Oe.entriesIn=Dl,Oe.extend=xl,Oe.extendWith=_l,ss(Oe,Oe),Oe.add=ws,Oe.attempt=Jl,Oe.camelCase=Ul,Oe.capitalize=ql,Oe.ceil=ys,Oe.clamp=function(t,e,r){return r===n&&(r=e,e=n),r!==n&&(r=(r=bl(r))==r?r:0),e!==n&&(e=(e=bl(e))==e?e:0),ir(bl(t),e,r)},Oe.clone=function(n){return ar(n,4)},Oe.cloneDeep=function(n){return ar(n,5)},Oe.cloneDeepWith=function(t,e){return ar(t,5,e="function"==typeof e?e:n)},Oe.cloneWith=function(t,e){return ar(t,4,e="function"==typeof e?e:n)},Oe.conformsTo=function(n,t){return null==t||lr(n,t,Fl(t))},Oe.deburr=Hl,Oe.defaultTo=function(n,t){return null==n||n!=n?t:n},Oe.divide=xs,Oe.endsWith=function(t,e,r){t=wl(t),e=lo(e);var o=t.length,i=r=r===n?o:ir(hl(r),0,o);return(r-=e.length)>=0&&t.slice(r,i)==e},Oe.eq=Wa,Oe.escape=function(n){return(n=wl(n))&&$.test(n)?n.replace(q,ne):n},Oe.escapeRegExp=function(n){return(n=wl(n))&&J.test(n)?n.replace(Y,"\\$&"):n},Oe.every=function(t,e,r){var o=$a(t)?At:dr;return r&&mi(t,e,r)&&(e=n),o(t,li(e,3))},Oe.find=ba,Oe.findIndex=Hi,Oe.findKey=function(n,t){return Tt(n,li(t,3),mr)},Oe.findLast=ma,Oe.findLastIndex=$i,Oe.findLastKey=function(n,t){return Tt(n,li(t,3),wr)},Oe.floor=_s,Oe.forEach=wa,Oe.forEachRight=ya,Oe.forIn=function(n,t){return null==n?n:gr(n,li(t,3),zl)},Oe.forInRight=function(n,t){return null==n?n:br(n,li(t,3),zl)},Oe.forOwn=function(n,t){return n&&mr(n,li(t,3))},Oe.forOwnRight=function(n,t){return n&&wr(n,li(t,3))},Oe.get=El,Oe.gt=Ua,Oe.gte=qa,Oe.has=function(n,t){return null!=n&&pi(n,t,Sr)},Oe.hasIn=Ml,Oe.head=Xi,Oe.identity=os,Oe.includes=function(n,t,e,r){n=Xa(n)?n:Wl(n),e=e&&!r?hl(e):0;var o=n.length;return e<0&&(e=ge(o+e,0)),sl(n)?e<=o&&n.indexOf(t,e)>-1:!!o&&Ot(n,t,e)>-1},Oe.indexOf=function(n,t,e){var r=null==n?0:n.length;if(!r)return-1;var o=null==e?0:hl(e);return o<0&&(o=ge(r+o,0)),Ot(n,t,o)},Oe.inRange=function(t,e,r){return e=pl(e),r===n?(r=e,e=0):r=pl(r),function(n,t,e){return n>=be(t,e)&&n<ge(t,e)}(t=bl(t),e,r)},Oe.invoke=Ll,Oe.isArguments=Ha,Oe.isArray=$a,Oe.isArrayBuffer=Va,Oe.isArrayLike=Xa,Oe.isArrayLikeObject=Qa,Oe.isBoolean=function(n){return!0===n||!1===n||el(n)&&kr(n)==p},Oe.isBuffer=Ga,Oe.isDate=Ka,Oe.isElement=function(n){return el(n)&&1===n.nodeType&&!il(n)},Oe.isEmpty=function(n){if(null==n)return!0;if(Xa(n)&&($a(n)||"string"==typeof n||"function"==typeof n.splice||Ga(n)||cl(n)||Ha(n)))return!n.length;var t=vi(n);if(t==w||t==C)return!n.size;if(_i(n))return!jr(n).length;for(var e in n)if(Pn.call(n,e))return!1;return!0},Oe.isEqual=function(n,t){return Ir(n,t)},Oe.isEqualWith=function(t,e,r){var o=(r="function"==typeof r?r:n)?r(t,e):n;return o===n?Ir(t,e,n,r):!!o},Oe.isError=Za,Oe.isFinite=function(n){return"number"==typeof n&&ve(n)},Oe.isFunction=Ya,Oe.isInteger=Ja,Oe.isLength=nl,Oe.isMap=rl,Oe.isMatch=function(n,t){return n===t||Lr(n,t,ui(t))},Oe.isMatchWith=function(t,e,r){return r="function"==typeof r?r:n,Lr(t,e,ui(e),r)},Oe.isNaN=function(n){return ol(n)&&n!=+n},Oe.isNative=function(n){if(xi(n))throw new kn("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Fr(n)},Oe.isNil=function(n){return null==n},Oe.isNull=function(n){return null===n},Oe.isNumber=ol,Oe.isObject=tl,Oe.isObjectLike=el,Oe.isPlainObject=il,Oe.isRegExp=al,Oe.isSafeInteger=function(n){return Ja(n)&&n>=-9007199254740991&&n<=s},Oe.isSet=ll,Oe.isString=sl,Oe.isSymbol=ul,Oe.isTypedArray=cl,Oe.isUndefined=function(t){return t===n},Oe.isWeakMap=function(n){return el(n)&&vi(n)==E},Oe.isWeakSet=function(n){return el(n)&&"[object WeakSet]"==kr(n)},Oe.join=function(n,t){return null==n?"":pe.call(n,t)},Oe.kebabCase=$l,Oe.last=Zi,Oe.lastIndexOf=function(t,e,r){var o=null==t?0:t.length;if(!o)return-1;var i=o;return r!==n&&(i=(i=hl(r))<0?ge(o+i,0):be(i,o-1)),e==e?function(n,t,e){for(var r=e+1;r--;)if(n[r]===t)return r;return r}(t,e,i):Bt(t,Dt,i,!0)},Oe.lowerCase=Vl,Oe.lowerFirst=Xl,Oe.lt=fl,Oe.lte=dl,Oe.max=function(t){return t&&t.length?vr(t,os,Cr):n},Oe.maxBy=function(t,e){return t&&t.length?vr(t,li(e,2),Cr):n},Oe.mean=function(n){return Wt(n,os)},Oe.meanBy=function(n,t){return Wt(n,li(t,2))},Oe.min=function(t){return t&&t.length?vr(t,os,Tr):n},Oe.minBy=function(t,e){return t&&t.length?vr(t,li(e,2),Tr):n},Oe.stubArray=gs,Oe.stubFalse=bs,Oe.stubObject=function(){return{}},Oe.stubString=function(){return""},Oe.stubTrue=function(){return!0},Oe.multiply=ks,Oe.nth=function(t,e){return t&&t.length?Wr(t,hl(e)):n},Oe.noConflict=function(){return ct._===this&&(ct._=Dn),this},Oe.noop=us,Oe.now=Ea,Oe.pad=function(n,t,e){n=wl(n);var r=(t=hl(t))?le(n):0;if(!t||r>=t)return n;var o=(t-r)/2;return qo(Pt(o),e)+n+qo(ht(o),e)},Oe.padEnd=function(n,t,e){n=wl(n);var r=(t=hl(t))?le(n):0;return t&&r<t?n+qo(t-r,e):n},Oe.padStart=function(n,t,e){n=wl(n);var r=(t=hl(t))?le(n):0;return t&&r<t?qo(t-r,e)+n:n},Oe.parseInt=function(n,t,e){return e||null==t?t=0:t&&(t=+t),we(wl(n).replace(nn,""),t||0)},Oe.random=function(t,e,r){if(r&&"boolean"!=typeof r&&mi(t,e,r)&&(e=r=n),r===n&&("boolean"==typeof e?(r=e,e=n):"boolean"==typeof t&&(r=t,t=n)),t===n&&e===n?(t=0,e=1):(t=pl(t),e===n?(e=t,t=0):e=pl(e)),t>e){var o=t;t=e,e=o}if(r||t%1||e%1){var i=ye();return be(t+i*(e-t+at("1e-"+((i+"").length-1))),e)}return Vr(t,e)},Oe.reduce=function(n,t,e){var r=$a(n)?Ft:Ht,o=arguments.length<3;return r(n,li(t,4),e,o,cr)},Oe.reduceRight=function(n,t,e){var r=$a(n)?zt:Ht,o=arguments.length<3;return r(n,li(t,4),e,o,fr)},Oe.repeat=function(t,e,r){return e=(r?mi(t,e,r):e===n)?1:hl(e),Xr(wl(t),e)},Oe.replace=function(){var n=arguments,t=wl(n[0]);return n.length<3?t:t.replace(n[1],n[2])},Oe.result=function(t,e,r){var o=-1,i=(e=mo(e,t)).length;for(i||(i=1,t=n);++o<i;){var a=null==t?n:t[Oi(e[o])];a===n&&(o=i,a=r),t=Ya(a)?a.call(t):a}return t},Oe.round=Cs,Oe.runInContext=tn,Oe.sample=function(n){return($a(n)?Ge:Gr)(n)},Oe.size=function(n){if(null==n)return 0;if(Xa(n))return sl(n)?le(n):n.length;var t=vi(n);return t==w||t==C?n.size:jr(n).length},Oe.snakeCase=Ql,Oe.some=function(t,e,r){var o=$a(t)?jt:eo;return r&&mi(t,e,r)&&(e=n),o(t,li(e,3))},Oe.sortedIndex=function(n,t){return ro(n,t)},Oe.sortedIndexBy=function(n,t,e){return oo(n,t,li(e,2))},Oe.sortedIndexOf=function(n,t){var e=null==n?0:n.length;if(e){var r=ro(n,t);if(r<e&&Wa(n[r],t))return r}return-1},Oe.sortedLastIndex=function(n,t){return ro(n,t,!0)},Oe.sortedLastIndexBy=function(n,t,e){return oo(n,t,li(e,2),!0)},Oe.sortedLastIndexOf=function(n,t){if(null!=n&&n.length){var e=ro(n,t,!0)-1;if(Wa(n[e],t))return e}return-1},Oe.startCase=Gl,Oe.startsWith=function(n,t,e){return n=wl(n),e=null==e?0:ir(hl(e),0,n.length),t=lo(t),n.slice(e,e+t.length)==t},Oe.subtract=Ss,Oe.sum=function(n){return n&&n.length?$t(n,os):0},Oe.sumBy=function(n,t){return n&&n.length?$t(n,li(t,2)):0},Oe.template=function(t,e,r){var o=Oe.templateSettings;r&&mi(t,e,r)&&(e=n),t=wl(t),e=_l({},e,o,Zo);var i,a,l=_l({},e.imports,o.imports,Zo),s=Fl(l),u=Gt(l,s),c=0,f=e.interpolate||bn,d="__p += '",v=En((e.escape||bn).source+"|"+f.source+"|"+(f===Q?un:bn).source+"|"+(e.evaluate||bn).source+"|$","g"),p="//# sourceURL="+(Pn.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++et+"]")+"\n";t.replace(v,function(n,e,r,o,l,s){return r||(r=o),d+=t.slice(c,s).replace(mn,te),e&&(i=!0,d+="' +\n__e("+e+") +\n'"),l&&(a=!0,d+="';\n"+l+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),c=s+n.length,n}),d+="';\n";var h=Pn.call(e,"variable")&&e.variable;if(h){if(ln.test(h))throw new kn("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(a?d.replace(R,""):d).replace(D,"$1").replace(W,"$1;"),d="function("+(h||"obj")+") {\n"+(h?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(a?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var g=Jl(function(){return Cn(s,p+"return "+d).apply(n,u)});if(g.source=d,Za(g))throw g;return g},Oe.times=function(n,t){if((n=hl(n))<1||n>s)return[];var e=c,r=be(n,c);t=li(t),n-=c;for(var o=Vt(r,t);++e<n;)t(e);return o},Oe.toFinite=pl,Oe.toInteger=hl,Oe.toLength=gl,Oe.toLower=function(n){return wl(n).toLowerCase()},Oe.toNumber=bl,Oe.toSafeInteger=function(n){return n?ir(hl(n),-9007199254740991,s):0===n?n:0},Oe.toString=wl,Oe.toUpper=function(n){return wl(n).toUpperCase()},Oe.trim=function(t,e,r){if((t=wl(t))&&(r||e===n))return Xt(t);if(!t||!(e=lo(e)))return t;var o=se(t),i=se(e);return yo(o,Zt(o,i),Yt(o,i)+1).join("")},Oe.trimEnd=function(t,e,r){if((t=wl(t))&&(r||e===n))return t.slice(0,ue(t)+1);if(!t||!(e=lo(e)))return t;var o=se(t);return yo(o,0,Yt(o,se(e))+1).join("")},Oe.trimStart=function(t,e,r){if((t=wl(t))&&(r||e===n))return t.replace(nn,"");if(!t||!(e=lo(e)))return t;var o=se(t);return yo(o,Zt(o,se(e))).join("")},Oe.truncate=function(t,e){var r=30,o="...";if(tl(e)){var i="separator"in e?e.separator:i;r="length"in e?hl(e.length):r,o="omission"in e?lo(e.omission):o}var a=(t=wl(t)).length;if(ee(t)){var l=se(t);a=l.length}if(r>=a)return t;var s=r-le(o);if(s<1)return o;var u=l?yo(l,0,s).join(""):t.slice(0,s);if(i===n)return u+o;if(l&&(s+=u.length-s),al(i)){if(t.slice(s).search(i)){var c,f=u;for(i.global||(i=En(i.source,wl(cn.exec(i))+"g")),i.lastIndex=0;c=i.exec(f);)var d=c.index;u=u.slice(0,d===n?s:d)}}else if(t.indexOf(lo(i),s)!=s){var v=u.lastIndexOf(i);v>-1&&(u=u.slice(0,v))}return u+o},Oe.unescape=function(n){return(n=wl(n))&&H.test(n)?n.replace(U,ce):n},Oe.uniqueId=function(n){var t=++Tn;return wl(n)+t},Oe.upperCase=Kl,Oe.upperFirst=Zl,Oe.each=wa,Oe.eachRight=ya,Oe.first=Xi,ss(Oe,(ms={},mr(Oe,function(n,t){Pn.call(Oe.prototype,t)||(ms[t]=n)}),ms),{chain:!1}),Oe.VERSION="4.17.21",Ct(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){Oe[n].placeholder=Oe}),Ct(["drop","take"],function(t,e){Ue.prototype[t]=function(r){r=r===n?1:ge(hl(r),0);var o=this.__filtered__&&!e?new Ue(this):this.clone();return o.__filtered__?o.__takeCount__=be(r,o.__takeCount__):o.__views__.push({size:be(r,c),type:t+(o.__dir__<0?"Right":"")}),o},Ue.prototype[t+"Right"]=function(n){return this.reverse()[t](n).reverse()}}),Ct(["filter","map","takeWhile"],function(n,t){var e=t+1,r=1==e||3==e;Ue.prototype[n]=function(n){var t=this.clone();return t.__iteratees__.push({iteratee:li(n,3),type:e}),t.__filtered__=t.__filtered__||r,t}}),Ct(["head","last"],function(n,t){var e="take"+(t?"Right":"");Ue.prototype[n]=function(){return this[e](1).value()[0]}}),Ct(["initial","tail"],function(n,t){var e="drop"+(t?"":"Right");Ue.prototype[n]=function(){return this.__filtered__?new Ue(this):this[e](1)}}),Ue.prototype.compact=function(){return this.filter(os)},Ue.prototype.find=function(n){return this.filter(n).head()},Ue.prototype.findLast=function(n){return this.reverse().find(n)},Ue.prototype.invokeMap=Qr(function(n,t){return"function"==typeof n?new Ue(this):this.map(function(e){return Mr(e,n,t)})}),Ue.prototype.reject=function(n){return this.filter(Ta(li(n)))},Ue.prototype.slice=function(t,e){t=hl(t);var r=this;return r.__filtered__&&(t>0||e<0)?new Ue(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),e!==n&&(r=(e=hl(e))<0?r.dropRight(-e):r.take(e-t)),r)},Ue.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},Ue.prototype.toArray=function(){return this.take(c)},mr(Ue.prototype,function(t,e){var r=/^(?:filter|find|map|reject)|While$/.test(e),o=/^(?:head|last)$/.test(e),i=Oe[o?"take"+("last"==e?"Right":""):e],a=o||/^find/.test(e);i&&(Oe.prototype[e]=function(){var e=this.__wrapped__,l=o?[1]:arguments,s=e instanceof Ue,u=l[0],c=s||$a(e),f=function(n){var t=i.apply(Oe,Lt([n],l));return o&&d?t[0]:t};c&&r&&"function"==typeof u&&1!=u.length&&(s=c=!1);var d=this.__chain__,v=!!this.__actions__.length,p=a&&!d,h=s&&!v;if(!a&&c){e=h?e:new Ue(this);var g=t.apply(e,l);return g.__actions__.push({func:pa,args:[f],thisArg:n}),new We(g,d)}return p&&h?t.apply(this,l):(g=this.thru(f),p?o?g.value()[0]:g.value():g)})}),Ct(["pop","push","shift","sort","splice","unshift"],function(n){var t=In[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);Oe.prototype[n]=function(){var n=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply($a(o)?o:[],n)}return this[e](function(e){return t.apply($a(e)?e:[],n)})}}),mr(Ue.prototype,function(n,t){var e=Oe[t];if(e){var r=e.name+"";Pn.call(Ne,r)||(Ne[r]=[]),Ne[r].push({name:t,func:e})}}),Ne[Ro(n,2).name]=[{name:"wrapper",func:n}],Ue.prototype.clone=function(){var n=new Ue(this.__wrapped__);return n.__actions__=Mo(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=Mo(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=Mo(this.__views__),n},Ue.prototype.reverse=function(){if(this.__filtered__){var n=new Ue(this);n.__dir__=-1,n.__filtered__=!0}else(n=this.clone()).__dir__*=-1;return n},Ue.prototype.value=function(){var n=this.__wrapped__.value(),t=this.__dir__,e=$a(n),r=t<0,o=e?n.length:0,i=function(n,t,e){for(var r=-1,o=e.length;++r<o;){var i=e[r],a=i.size;switch(i.type){case"drop":n+=a;break;case"dropRight":t-=a;break;case"take":t=be(t,n+a);break;case"takeRight":n=ge(n,t-a)}}return{start:n,end:t}}(0,o,this.__views__),a=i.start,l=i.end,s=l-a,u=r?l:a-1,c=this.__iteratees__,f=c.length,d=0,v=be(s,this.__takeCount__);if(!e||!r&&o==s&&v==s)return vo(n,this.__actions__);var p=[];n:for(;s--&&d<v;){for(var h=-1,g=n[u+=t];++h<f;){var b=c[h],m=b.iteratee,w=b.type,y=m(g);if(2==w)g=y;else if(!y){if(1==w)continue n;break n}}p[d++]=g}return p},Oe.prototype.at=ha,Oe.prototype.chain=function(){return va(this)},Oe.prototype.commit=function(){return new We(this.value(),this.__chain__)},Oe.prototype.next=function(){this.__values__===n&&(this.__values__=vl(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?n:this.__values__[this.__index__++]}},Oe.prototype.plant=function(t){for(var e,r=this;r instanceof De;){var o=Di(r);o.__index__=0,o.__values__=n,e?i.__wrapped__=o:e=o;var i=o;r=r.__wrapped__}return i.__wrapped__=t,e},Oe.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Ue){var e=t;return this.__actions__.length&&(e=new Ue(this)),(e=e.reverse()).__actions__.push({func:pa,args:[ta],thisArg:n}),new We(e,this.__chain__)}return this.thru(ta)},Oe.prototype.toJSON=Oe.prototype.valueOf=Oe.prototype.value=function(){return vo(this.__wrapped__,this.__actions__)},Oe.prototype.first=Oe.prototype.head,it&&(Oe.prototype[it]=function(){return this}),Oe}();dt?((dt.exports=fe)._=fe,ft._=fe):ct._=fe}.call(ci.exports)),ci.exports);const pi={chatScreen:{root:{cssClass:["div.default-chat-screen"],className:"default-chat-screen"},displayContainer:{cssClass:["div.default-chat-screen > div.flex.flex-col-reverse"],className:`${To}-display-container`},inputContainer:{cssClass:["div.default-chat-screen > div.mt-2.mb-2.flex.items-stretch.w-full","div.default-chat-screen > div.sticky.pt-2.pb-2.right-0.bottom-0.bg-bgcolor.flex.items-stretch.w-full"],className:`${To}-input-container`},textarea:{cssClass:["div.default-chat-screen > div.mt-2.mb-2.flex.items-stretch.w-full > textarea","div.default-chat-screen textarea.text-input-area"],className:`${To}-input-textarea`},sendButton:{cssClass:["div.default-chat-screen > button.button-icon-send",".button-icon-send"],className:`${To}-send-button`},burgerButton:{cssClass:["div.default-chat-screen > button.peer-focus:border-textcolor.mr-2.flex.border-y.border-r.border-darkborderc.justify-center.items-center.text-gray-100.p-3.rounded-r-md.hover:bg-blue-500.transition-colors",`${To}-burger-button`]},burgerMenu:{cssClass:["div.default-chat-screen > div.right-2.bottom-16.p-5.bg-darkbg.flex.flex-col.gap-3.text-textcolor.rounded-md"],className:"burger-menu"}},chatMessage:{root:{cssClass:["div.risu-chat"],className:`${To}-chat-message-root`},thumbnail:{cssClass:["div.shadow-lg.bg-textcolor2.rounded-md"],className:`${To}-chat-message-thumbnail`},botName:{cssClass:["span.chat-width.text-xl.unmargin.text-textcolor"],className:`${To}-chat-message-bot-name`},botButtonDiv:{cssClass:["div.flex-grow.flex.items-center.justify-end.text-textcolor2"],className:`${To}-chat-message-bot-buttons`},copyButton:{cssClass:["button-icon-copy"],className:"button-icon-copy"},ttsButton:{cssClass:["button-icon-tts"],className:"button-icon-tts"},removeButton:{cssClass:["button-icon-remove"],className:"button-icon-remove"},translateButton:{cssClass:["button-icon-translate"],className:"button-icon-translate"},unrerollButton:{cssClass:["button-icon-unreroll"],className:"button-icon-unreroll"},rerollButton:{cssClass:["button-icon-reroll"],className:"button-icon-reroll"},lightboardButtons:{cssClass:["x-risu-lb-module-root","x-risu-lb-nai-btn"],className:"x-risu-lb-module-root"},lightboardNewsButton:{dataId:"lightboard-news",cssClass:["div.x-risu-lb-module-root"],className:`${To}-lightboard-news`},lightboardCommentButton:{dataId:"lightboard-comment",cssClass:["div.x-risu-lb-module-root"],className:`${To}-lightboard-comment`},lightboardMiniboardButton:{dataId:"lightboard-miniboard",cssClass:["div.x-risu-lb-module-root"],className:`${To}-lightboard-miniboard`},lightboardSNSButton:{dataId:"SNS-Forme",cssClass:["div.x-risu-lb-module-root"],className:`${To}-lightboard-sns`},lightboardNAIButton:{cssClass:["x-risu-lb-nai-btn"],className:"x-risu-lb-nai-btn"}},setting:{root:{cssClass:["rs-setting-cont"],className:"rs-setting-cont"}}};function hi(n,t){const e=t??document;if(!n)return null;if(n.dataId){const t=e.querySelector(`[data-id="${n.dataId}"]`);if(t)return t.classList.contains(n.className)||(t.className=`${n.className} ${t.className}`.trim()),t}for(const r of[null==n?void 0:n.className,...(null==n?void 0:n.cssClass)??[]])if(r)try{const t=e.querySelector(r.startsWith(".")?r:`.${r}`);if(t)return t.classList.contains(n.className)||(t.className=`${n.className} ${t.className}`.trim()),t}catch{}for(const r of(null==n?void 0:n.cssClass)??[])try{const t=e.querySelector(r);if(t)return t.classList.contains(n.className)||(t.className=`${n.className} ${t.className}`.trim()),t}catch{}return null}function gi(n,t){const e=document;if(!n)return[];const r=new Set;if(n.dataId)try{e.querySelectorAll(`[data-id="${n.dataId}"]`).forEach(n=>r.add(n))}catch{}for(const i of(null==n?void 0:n.cssClass)??[])try{e.querySelectorAll(i).forEach(n=>r.add(n))}catch{}if(null==n?void 0:n.className)try{e.querySelectorAll(`.${n.className}`).forEach(n=>r.add(n))}catch{}const o=[...r];return o.forEach(t=>{n.className&&!t.classList.contains(n.className)&&(t.className=`${n.className} ${t.className}`.trim())}),o}function bi(n){if(null==n)return null;const t=gi(pi.chatMessage.root);if(!t.length)return null;const e="string"==typeof n?parseInt(n,10):n;if(!Number.isFinite(e))return null;const r=String(e);return t.find(n=>{var t;return(null==(t=n.dataset)?void 0:t.chatIndex)===r})??null}function mi(){const n=gi(pi.chatMessage.root);if(!n.length)return[];const t=n.filter(n=>!n.classList.contains("book-viewer-root")).map(n=>{var t;const e=null==(t=n.dataset)?void 0:t.chatIndex;if(null==e)return null;const r=parseInt(e,10);return Number.isFinite(r)?r:null}).filter(n=>null!==n);return[...new Set(t)].sort((n,t)=>n-t)}function wi(n,t){const e=mi();if(0===e.length)return{index:null,isFirst:!0,isLast:!0};let r=e.indexOf(n);if(-1===r){if(r=e.findIndex(t=>t>n),-1===r&&(r=e.length),"prev"===t){const n=r>0?e[r-1]:null;return{index:n,isFirst:null===n,isLast:r>=e.length}}{const n=r<e.length?e[r]:null;return{index:n,isFirst:r<=0,isLast:null===n}}}const o=0===r,i=r===e.length-1;return"prev"===t?{index:o?null:e[r-1],isFirst:o,isLast:i}:{index:i?null:e[r+1],isFirst:o,isLast:i}}function yi(n){const t=mi();if(0===t.length)return{position:0,total:0,isFirst:!0,isLast:!0};const e=t.indexOf(n);if(-1===e){const e=t.findIndex(t=>t>n),r=-1===e?t.length:e;return{position:0,total:t.length,isFirst:0===r,isLast:r>=t.length}}return{position:e+1,total:t.length,currentIndex:n,lastIndex:t[t.length-1],isFirst:0===e,isLast:e===t.length-1}}Un=!0;const xi={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};var _i=xr("<svg><!><!></svg>");function ki(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=Io(e,["name","color","size","strokeWidth","absoluteStrokeWidth","iconNode"]);$n(t,!1);let o=zo(t,"name",8,void 0),i=zo(t,"color",8,"currentColor"),a=zo(t,"size",8,24),l=zo(t,"strokeWidth",8,2),s=zo(t,"absoluteStrokeWidth",8,!1),u=zo(t,"iconNode",24,()=>[]);Ao();var c=_i();bo(c,(n,t)=>({...xi,...r,width:a(),height:a(),stroke:i(),"stroke-width":n,class:t}),[()=>(tr(s()),tr(l()),tr(a()),Ye(()=>s()?24*Number(l())/Number(a()):l())),()=>(tr(o()),tr(e),Ye(()=>((...n)=>n.filter((n,t,e)=>Boolean(n)&&e.indexOf(n)===t).join(" "))("lucide-icon","lucide",o()?`lucide-${o()}`:"",e.class)))]);var f=Qt(c);Tr(f,1,u,zr,(n,t)=>{var e=xt(()=>function(n,t){if(Array.isArray(n))return n;if(!(Symbol.iterator in n))return Array.from(n);const e=[];for(const r of n)if(e.push(r),e.length===t)break;return e}(Ge(t),2));var r=_r();!function(n,t,e,r){var o=null,i=new Lr(n,!1);ce(()=>{const n=t()||null;return null===n?(i.ensure(null,null),void Sr(!0)):(i.ensure(n,t=>{if(n){if(mr(o=document.createElementNS("http://www.w3.org/2000/svg",n),o),r){var e=o.appendChild($t());r(o,e)}Ie.nodes.end=o,t.before(o)}}),Sr(!0),()=>{n&&Sr(!1)})},An),oe(()=>{Sr(!0)})}(Gt(r),()=>Ge(e)[0],0,(n,t)=>{bo(n,()=>({...Ge(e)[1]}))}),kr(n,r)}),Dr(Kt(f),t,"default",{}),kr(n,c),Vn()}function Ci(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"m15 18-6-6 6-6"}]];ki(n,Fo({name:"chevron-left"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}function Si(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"m9 18 6-6-6-6"}]];ki(n,Fo({name:"chevron-right"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}function Ai(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56"}]];ki(n,Fo({name:"loader-circle"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}function Ei(n,t,e={}){const{clearContainer:r=!0,additionalClasses:o=[]}=e;if(!t||!(null==n?void 0:n.length))return[];r&&(t.innerHTML="");const i=[];return n.forEach(n=>{const e=n.cloneNode(!0);o.forEach(n=>e.classList.add(n)),e.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const e=new MouseEvent("click",{bubbles:!0,cancelable:!0});n.dispatchEvent(e)}),t.appendChild(e),i.push(e)}),i}function Mi(n,t,e={}){const{buttonSelector:r='button, [role="button"], .risu-btn, [risu-btn]',matcher:o}=e;if(!n||!(null==t?void 0:t.length))return;n.querySelectorAll(r).forEach(n=>{const e=t.find(t=>{var e,r;if(o)return o(t,n);const i=(null==(e=t.dataset)?void 0:e.id)||t.getAttribute("risu-btn"),a=(null==(r=n.dataset)?void 0:r.id)||n.getAttribute("risu-btn");return!(!i||!a||i!==a)||!(!t.className||!n.className||t.className!==n.className)});e&&n.addEventListener("click",n=>{n.preventDefault(),n.stopPropagation();const t=new MouseEvent("click",{bubbles:!0,cancelable:!0});e.dispatchEvent(t)})})}var Ni=wr('<span class="chat-index-total"> </span>'),Ii=wr('<header class="book-header"><div class="header-left"><div class="header-thumbnail"></div> <div class="header-info"><span class="header-name"> </span> <div class="header-buttons"></div></div></div> <div class="header-right"><div class="chat-index-nav"><button class="chat-nav-btn" title="이전 채팅"><!></button> <span class="header-chat-index"> <!></span> <button class="chat-nav-btn" title="다음 채팅"><!></button></div> <button class="close-btn" title="닫기"><!></button></div></header>');function Li(n,t){$n(t,!0);const e=Ro.getInstance();let r=zo(t,"thumbnailUrl",3,""),o=zo(t,"name",3,""),i=zo(t,"chatIndex",3,0),a=zo(t,"buttons",19,()=>[]),l=zo(t,"chatIndexPosition",19,()=>({position:0,total:0,isFirst:!0,isLast:!0})),s=It(null);ie(()=>{Ge(s)&&a().length>0&&Ei(a(),Ge(s))});let u=xt(()=>i()+1);var c=Ii(),f=Qt(c),d=Qt(f);let v;var p=Qt(Kt(d,2)),h=Qt(p);So(Kt(p,2),n=>Ft(s,n),()=>Ge(s));var g=Qt(Kt(f,2)),b=Qt(g);b.__click=function(...n){var e;null==(e=t.onPrevChat)||e.apply(this,n)},Ci(Qt(b),{size:16});var m=Kt(b,2),w=Qt(m),y=Kt(w),x=n=>{var t=Ni(),e=Qt(t);ue(()=>Ar(e,`(${l().currentIndex??""}/${l().lastIndex??""})`)),kr(n,t)};Fr(y,n=>{l().total>0&&n(x)});var _=Kt(m,2);_.__click=function(...n){var e;null==(e=t.onNextChat)||e.apply(this,n)},Si(Qt(_),{size:16});var k=Kt(g,2);k.__click=function(...n){var e;null==(e=t.onClose)||e.apply(this,n)},function(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M18 6 6 18"}],["path",{d:"m6 6 12 12"}]];ki(n,Fo({name:"x"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Qt(k),{size:20}),ue(n=>{v=oo(d,"",v,{"background-image":r()?`url('${r()}')`:"none"}),Ar(h,n),b.disabled=l().isFirst,Ar(w,`#${Ge(u)??""} `),_.disabled=l().isLast},[()=>{var n;return o()||(null==(n=e.getChar())?void 0:n.name)||"Unknown"}]),kr(n,c),Vn()}pr(["click"]);const Fi=n=>n;function zi(n,{delay:t=0,duration:e=400,easing:r=Fi}={}){const o=+getComputedStyle(n).opacity;return{delay:t,duration:e,easing:r,css:n=>"opacity: "+n*o}}function ji(n){const t=n-1;return t*t*t+1}var Pi=wr('<span class="loading-message svelte-1lzy2gy"> </span>'),Ti=wr('<div class="loading-overlay svelte-1lzy2gy"><div class="loading-content svelte-1lzy2gy"><div class="loading-spinner svelte-1lzy2gy"><div class="spinner-ring svelte-1lzy2gy"></div> <div class="spinner-ring svelte-1lzy2gy"></div> <div class="spinner-ring svelte-1lzy2gy"></div></div> <!></div></div>');const Bi={hash:"svelte-1lzy2gy",code:".loading-overlay.svelte-1lzy2gy {position:absolute;top:0;left:0;right:0;bottom:0;z-index:50;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb, var(--bv-page-color) 85%, transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:all;border-radius:inherit;}.loading-content.svelte-1lzy2gy {display:flex;flex-direction:column;align-items:center;gap:16px;\n animation: svelte-1lzy2gy-contentFadeIn 0.3s ease-out;}\n\n @keyframes svelte-1lzy2gy-contentFadeIn {\n from {\n opacity: 0;\n transform: scale(0.95);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n }.loading-spinner.svelte-1lzy2gy {position:relative;width:44px;height:44px;}.spinner-ring.svelte-1lzy2gy {position:absolute;width:100%;height:100%;border:2.5px solid transparent;border-top-color:var(--bv-accent-color, #6366f1);border-radius:50%;\n animation: svelte-1lzy2gy-spin 1s cubic-bezier(0.5, 0, 0.5, 1) infinite;}.spinner-ring.svelte-1lzy2gy:nth-child(1) {animation-delay:-0.4s;}.spinner-ring.svelte-1lzy2gy:nth-child(2) {animation-delay:-0.25s;width:75%;height:75%;top:12.5%;left:12.5%;}.spinner-ring.svelte-1lzy2gy:nth-child(3) {animation-delay:-0.1s;width:50%;height:50%;top:25%;left:25%;}\n\n @keyframes svelte-1lzy2gy-spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }.loading-message.svelte-1lzy2gy {font-size:13px;font-weight:500;color:var(--bv-text-secondary, #666);}.book-viewer-root[data-theme='dark'] .loading-message.svelte-1lzy2gy {color:var(--bv-text-secondary, #aaa);}"};function Oi(n,t){Gr(n,Bi);let e=zo(t,"visible",3,!1),r=zo(t,"message",3,"로딩 중...");var o=_r(),i=Gt(o),a=n=>{var t=Ti(),e=Qt(t),o=Kt(Qt(e),2),i=n=>{var t=Pi(),e=Qt(t);ue(()=>Ar(e,r())),kr(n,t)};Fr(o,n=>{r()&&n(i)}),Xr(1,t,()=>zi,()=>({duration:200,easing:ji})),Xr(2,t,()=>zi,()=>({duration:300,easing:ji})),kr(n,t)};Fr(i,n=>{e()&&n(a)}),kr(n,o)}class Ri{constructor(n={}){this.splittableTags=n.splittableTags||["p"],this.minHeightRatio=n.minHeightRatio||.9}isSplittable(n){var t;const e=null==(t=n.tagName)?void 0:t.toLowerCase();if(!this.splittableTags.includes(e))return!1;return!n.querySelector("mark, strong, em, a, span[class], code")}splitElement(n,t,e){if(!this.isSplittable(n))return[n.cloneNode(!0)];const r=n.cloneNode(!0);t.innerHTML="",t.appendChild(r);return t.scrollHeight<=e?[n.cloneNode(!0)]:this._splitBySentence(n,t,e)}_splitBySentence(n,t,e){const r=n.tagName.toLowerCase(),o=n.innerText||n.textContent||"",i=this._splitIntoSentences(o);if(i.length<=1)return this._splitByWords(n,t,e);const a=[];let l=[];for(const s of i){const o=[...l,s].join(""),i=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{i.setAttribute(n.name,n.value)}),i.textContent=o,t.innerHTML="",t.appendChild(i),t.scrollHeight<=e)l.push(s);else{if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}l=[s]}}if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}return a.length>0?a:[n.cloneNode(!0)]}_splitIntoSentences(n){return n.split(new RegExp("(?<=[.!?。!?])\\s*")).filter(n=>n.length>0)}_splitByWords(n,t,e){const r=n.tagName.toLowerCase(),o=(n.innerText||n.textContent||"").split(/(\s+)/).filter(n=>n.length>0);if(0===o.length)return[n.cloneNode(!0)];const i=[];let a=0;for(;a<o.length;){let l=a+1,s=a+1;for(;l<=o.length;){const i=o.slice(a,l).join(""),u=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=i,t.innerHTML="",t.appendChild(u),!(t.scrollHeight<=e))break;s=l,l++}const u=document.createElement(r);Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=o.slice(a,s).join(""),i.push(u),a=s}return i}static createMeasureContainer(n){const t=document.createElement("div"),e=getComputedStyle(n);return t.className="text-content chattext",t.style.cssText=`\n position: absolute;\n visibility: hidden;\n pointer-events: none;\n width: ${n.clientWidth}px;\n padding: ${e.padding};\n font-size: ${e.fontSize};\n line-height: ${e.lineHeight};\n font-family: ${e.fontFamily};\n overflow: hidden;\n `,t}}function Di(n){const t=document.createElement("div");if(t.className="text-content chattext",t.style.position="absolute",t.style.visibility="hidden",t.style.pointerEvents="none",t.style.overflow="hidden",n){const e=n.getBoundingClientRect(),r=window.getComputedStyle(n);t.style.width=e.width+"px",t.style.height=e.height+"px",t.style.padding=r.padding,t.style.fontSize=r.fontSize,t.style.lineHeight=r.lineHeight,t.style.fontFamily=r.fontFamily}return t}function Wi(n){const t=Array.from(n.childNodes);let e=[];const r=()=>{if(0===e.length)return;const t=e.map(n=>n.nodeType===Node.TEXT_NODE?n.textContent:n.outerHTML).join("");if(""===t.trim())return e.forEach(n=>{n.parentNode&&n.parentNode.removeChild(n)}),void(e=[]);const r=document.createElement("p");r.innerHTML=t;const o=e[0];n.insertBefore(r,o),e.forEach(n=>{n.parentNode&&n.parentNode.removeChild(n)}),e=[]},o=["p","div","ul","ol","li","h1","h2","h3","h4","h5","h6","table","blockquote","pre","hr","details","figure","section","article","header","footer","nav","aside","title"];t.forEach(n=>{if(n.nodeType===Node.TEXT_NODE)(""!==n.textContent.trim()||e.length>0)&&e.push(n);else if(n.nodeType===Node.ELEMENT_NODE){const t=n.tagName.toLowerCase();o.includes(t)?r():e.push(n)}}),r()}function Ui(n,t,e){const r=[],o=Array.from(n.children),i=t.clientHeight;let a=[];return o.forEach(n=>{const o=n.cloneNode(!0);if(t.innerHTML="",t.appendChild(o),n.querySelector("img")||"IMG"===n.tagName||"DIV"===n.tagName&&n.classList.contains("x-risu-image-container"))return a.length>0&&(r.push(qi(a)),a=[]),r.push(qi([n.cloneNode(!0)])),void(t.innerHTML="");t.innerHTML="",a.forEach(n=>{t.appendChild(n.cloneNode(!0))}),t.appendChild(o);const l=t.scrollHeight>t.clientHeight;if(l&&e.isSplittable(n)){a.length>0&&(r.push(qi(a)),a=[]),t.innerHTML="";return void e.splitElement(n,t,i).forEach(n=>{(n=>{const e=n.cloneNode(!0);t.appendChild(e),t.scrollHeight>t.clientHeight&&a.length>0&&(r.push(qi(a)),a=[],t.innerHTML="",t.appendChild(e)),a.push(n)})(n)})}l&&a.length>0&&(r.push(qi(a)),a=[],t.innerHTML="",t.appendChild(o)),a.push(n.cloneNode(!0))}),a.length>0&&r.push(qi(a)),r}function qi(n){const t=document.createElement("div");return n.forEach(n=>t.appendChild(n)),t.innerHTML}function Hi(n){const t={thumbnailUrl:"",name:"",chatIndex:0,buttons:[]},e=n.querySelector(".shadow-lg.bg-textcolor2.rounded-md");if(e){const n=e.getAttribute("style");if(n){const e=n.match(/background:\s*url\(['"]?([^'")\s]+)['"]?\)/);e&&e[1]&&(t.thumbnailUrl=e[1])}}const r=n.querySelector(".flexium.items-center.chat-width");if(r){const n=r.querySelector("span.chat-width");n&&(t.name=n.textContent.trim())}const o=n.querySelector(".risu-ebooklike-viewer-chat-message-bot-buttons");if(o){[".button-icon-copy",".button-icon-tts",".button-icon-edit",".button-icon-translate"].forEach(n=>{const e=o.querySelector(n);e&&t.buttons.push(e.cloneNode(!0))})}const i=n.querySelector(".risu-chat");if(i){const n=i.getAttribute("data-chat-index");n&&(t.chatIndex=parseInt(n,10))}return t}function $i(n){if(!n)return[];const t=[],e=hi(pi.chatMessage.botButtonDiv,n);if(e){[".button-icon-copy",".button-icon-edit",".button-icon-translate",".button-icon-reroll"].forEach(n=>{const r=e.querySelector(n);r&&t.push(r)})}return t}function Vi(n){if(!n)return[];const t=n.querySelector(".chattext");if(!t)return[];const e=["button",'[role="button"]',".risu-btn","[risu-btn]",".x-risu-lb-opener",".x-risu-lb-nai-btn",".x-risu-lb-nai-opener"].join(", ");return Array.from(t.querySelectorAll(e))}function Xi(n){const t=new Map;if(!n)return t;const e=n.querySelector(".chattext");if(!e)return t;e.querySelectorAll(".x-risu-lb-module-root").forEach(n=>{const e=n.getAttribute("data-id");if(e){const r=n.querySelector(".x-risu-lb-opener")||n.querySelector(".x-risu-lb-nai-opener");r&&t.set(e,r)}});return e.querySelectorAll(".x-risu-lb-nai-btn").forEach(n=>{if(!n.closest(".x-risu-lb-module-root")){const e=n.getAttribute("risu-btn");e&&t.set(e,n)}}),t}function Qi(n){const t=[];n.querySelectorAll(".x-risu-lb-module-root").forEach(n=>{var e,r;const o=n.getAttribute("data-id")||"",i=n.querySelector(".x-risu-lb-opener span"),a=n.querySelector(".x-risu-lb-nai-opener span"),l=(null==(e=null==i?void 0:i.textContent)?void 0:e.trim())||(null==(r=null==a?void 0:a.textContent)?void 0:r.trim())||o||"LB Module";t.push({type:"module-root",dataId:o,label:l,element:n.cloneNode(!0)})});return n.querySelectorAll(".x-risu-lb-nai-btn").forEach(n=>{var e;if(!n.closest(".x-risu-lb-module-root")){const r=n.getAttribute("risu-btn")||"",o=(null==(e=n.textContent)?void 0:e.trim())||r||"NAI Button";t.push({type:"nai-btn",dataId:r,label:o,element:n.cloneNode(!0)})}}),t}function Gi(){return new Promise(n=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{n()})})})}function Ki(n){n.querySelectorAll("img").forEach(n=>{if(n.closest(".censored-image-container"))return;const t=document.createElement("div");t.className="censored-image-container";const e=document.createElement("div");e.className="censored-overlay",e.style.backgroundImage="url(data:image/webp;base64,UklGRtAcAABXRUJQVlA4IMQcAADwrAGdASogAyADP5nM3mW/v64nJRTKG/AzCWdu+A8n/0VaCo8PeW3F++730Qnrv8P0S1HJ2M9W+j7459qfLf8Z9e/wg0VP1k769gn1/+AT/98+Hz+pAO23//xAv//iE//5f+f/873/+PMAJH0pZc4A6hTFq4dQpi1cOoUxauHUKYtXC6ZxA/41HvPVFQOj3tKpZKkoLbzhyxEGv+NlDAATI5g21EG/+GLxv+20BF7ECSDLNOjAgAy/UIaTMXHw+ZZ9dFRjQBpn7ZVfmlzk9YEXUs21qYehHOzRRyeIw5KDpSw6dCL1MJ4YyoP+f3JxMU0P4kYBto7To4NorZGXlHaSmkMWjyKt7Ow3pFwwSvcFCjUekwhwcpxuJP/hXbCZ5Uje08rq1eLFNoFZK4083vnzXj1janiS86at95VPiQexk10mM+WYlLoZU8QsDgReJBI3EWLH9Vpyu+j0at38ULq+hxGRXr0ZJvQb8uyYNlW7SnPuMZ2uAEQvJd668XVQtym98DUgxJOsJHE3Y3bsWWtWDHP+tZo26T3Ix7T2oo0WpwB818gZr/4xM7f2ZeQdCcX/3P6IsnCnU7KUFbvFe4Mx6+UIWrkWd2zxkaKkJlnGv5YKg9x03Ns5bli0AdelWo14vybE0gtJwJc7YdwqhugkOa0iW5vErY+dDSAEHwOfYBEwZQqalsE3LVHIpugbOwzS/nAZ2upY5ImaCR80cYHVuwJ5hoQxFeG2MDHkzxqFWhhnGV0sSXqvrrppIFQDwBDVQv/zSZbcUsqpyrAk4aF1xHQPd8ol8yeW2tVTfsuuGH277vClhOwGAXPFi1bhLfjDWAcbNKQd7uXT5dgjwoiCEZU84cLOYQmg+QWSbt716E6H6qAT7iUG6FVVVWe9Uc1GS0R9dmqdBgYZtrbtaF0o1XrCe5DVFKw7Fb7s4Suj/ecJldmEe8Zj/m7ls+T0f4XqKD+qhHxJg2YTYVlSm7zsFlka4p881twcWjPKwq/fcDJgGUH79XOsxhApRxQiCuRz0jP6Esjg0HS+kkcXO2rqqzpqQ0alXEnFMoky5W3RYTthJGjDwL1KI//abP5PC3Z0mdXZY+AdQpi1cOoUxauHUKYtXDqFMWrh1CmLVw6hTFq4dQpi1cOdbUCCy5wB1CmLVw6hTFq4dQpi1cOoUxauHUJDbz7V7gBwer0pZc4A6hTFq4dQpi1cOoUxauHUKYtXDmkpbP92VS9gI0vAHUKYtXDqFMWrh1CmLVw6hTFq4dQpOAx0k++bFQX7ZWUNZc4A6hTFq4dQpRUPcezzOG3VzgDqFMWrbfVpvc5VySf4BMulXmjXNjPvAHUKYtXDqEnNOkHsXHVSCYOjHm0zxzIJlC/vDbq5wB1CmLVwsPaEP+SzDBZb3V2dzi5qAAVIUUXOAOoUxauGDFw8EJm8IT2pcPBDbq5wB1CmLLryJbkdncT8K0Y6KikHBDF2G1LApPCmLVw6hTEHMDvEkjc02BvVAE7AkfSllzgDp5YhNOX3nYQHWY6+XRwSm6VTYt82KZFbBZc4A6exIhlFrdAyB2pSy5wB1CmLIIRRR/i+WehVNEegBQRbasxpZMj5GWJqAW5wBYfZVjSGkA/T5reAOoUxaoGyKUwGte3MsA11VSS2+lLLnAHUJOaklEZT/4GdI/eumM8hpCjJjSM3Of1xogWPOBtWGvOvh5a0/fzUwktZ5nDbq5utHzX4qJxOm3k1snE8EqFMWrh1CS+Ccmb9vQgfanWt67KwnI8Wd3Xw+qZ+rI3R9sNFRqt94DfkXM27fvvX6hTFjCnQtLpUTKO6jD7ZHF8ad1CmLVw55+YxF9ELGgtcmku5wfHi2N0o4TctLmKB+I7MWrbxLCDAXRRSNIB9f60cOoUxYgoYYhnyVZx8ebmbtH5P1CmLVw51NSZHXX4EugkeQbDpXLpJtVgKcu5J5t77qe81yoMp6dvM/MWrh1CWHNiOyt5znJHALHREzUvpSy5wBe0GRSCu3D8mGi5o84EZNAB1ar9pfnMkBmwBVxRowpBR3opCK/1HC8xKkxBzXTE9OtcX54UpDbq5wBi1UZnhmhZ9VBIUOOvJOBwB1CmLU/DNavQdDyqy/Peb3hm51fxGWcgsNTrGuWnvhpwLGPyT9p+oYNKXDMMIeVn6hTFq4Vlvk4qUJbYN0EtOJ2k64kJH0pZc3Wx3AGDFcMIwmUeD94hFcL/HvUe9NKBsKUoF8fpSy5wBZaHAcDaMfxJmjPFDMQqA5JEQADqFMWpuJGYP+IMHzF55bPUeJRNE50n69Yh61U5H7UybYKfZK51c4A6hKXqYeWBIpsgkWrh1CYA6z++lq4dPdpzkuA+wxGZ+QUtVtZL052G/hQCl0qp7MFzdbHcAdQpi1Rnrp411fOIMFzgDqEl9O6tBurm6AEY1Y0WMTe6wQ5EvBqJMxBdSJVlVw6C3TEXOAOoSXlotk7uX6qZ2G/ybaCgv4cocgHGT9XA4bdXN/enZVqcTcld3uIucAdQpi1cLmFRY45ZhElz9Qpi1MMML8cocxtoFdD45dojcAT9D4KNTBoirHkaGWXoJs8M8AiHC8u3VzgDndFPCA4Wg5c4A6hTFq4dCSakMA+4/wEj5kl3K/w2BeNb3aHhRsnDdMA1xaQONZagS8bw1xMaTrRw8T2xUibV54Jo4RulNNXDqFKd6Er6P3hay15FtLWXOAOoUxauF5+cyF50htMRXDnU3ZPY9Ta4n6aD2qJt0O8716R/xmTpBtL4Y0KN23hlQcGh+rAWXOAMLK0i0ZCc8R4G/Xzht1c4A6hJcTlDx2krBqo7JuzKoMFgyM/+139wSQ67cRXXN6iZgO6X8HKbspMoM8jthUMYFxPNy0WBEqnLYT6VyuhKIbdXN/byiXnxy2RYUfFpw0y8unxqd3sAsJw26ucAXXY0VkEbp3+PV39teXMWNiEsFhfYpc+F1BAkp5IHOAUvXoT30zoCfDdPakANyOsQFq9Tp4cMVdFg5mPq6ZoU2Wt21CFd+n8C58//6ONR1CmLGlvhtjsCdY6tUhH2EhUwSOWwNrWMh0lcE3FhFr0I28qMq+Pu3T2hDp5WHirmKWhiNRohAoh/JkR/MB7i+wxzgIx7OiXlgo/Tac7b9TvLw3TOG3Rxe5Eg7hvllsts9iucCqFq4c62NBMswNt5Kj2Lk4Fn4xO9CrgWPADhZIu8rO9L/rAIkE0bsGzu797iUkOf3tvQCN+HLeIP/UmzPe3iKu1eQkMASmtmcZUeVBtoBvgXlPjqv+jQ+owxcOoUoqDduzOG+FXDkpVo4HtFbucVtdBI+X01sRvvagBdq6AS3kMOZaswYRdHM/48B/XDK1GmIvz3wbQBjXxV1P5BWdILkVAgCgbMz4iOgkfM2d5mh4m/HNKZJR/sD4YJIAD2QxEekuG/UK5o2ZAUNCYjjyRB/9atXhQwdWMssu2e/I53YU9Xmxw5uJhOCi2MjYhq6ai5PCvA4u8X5v1CQ2+jMzvfQ1bN5Nk4yT42WvG6ucAgQNPtNg+zR9tlFimbqvKr+kL/kaj7aySa34F2x1h3Kfv0sL9Qkiv8pNmqOAjAkOqPx1jgIzUN5ksKYtXDqKcNar328GlaM/x2v0+cS7X6ITy3LiCTx2yuIu6eZBoI7eX3BVDgOpH0pEfe8IVWnTQKP/Wm/XhkeozFY2Z5epTHMM67R9KWXOAOe0WrIMgRfo4Sc0oJPV4sVQphgMZ2rhOgthxuyTt6nViRtmgANI4s66VeUro4dQkiv8qEp7/MYIPYLrsid3rvsYrg2Lk1eZw26ucAc/9V+U96oa3a/PFhJw0SsOP6DrCMYuakuRKfD2kzzrciV61YUxalvZEFHdWFuP72VJ9RHjIligyT7q5wB1CmLVw54VOq3DVvNr8PyWd/Mf1IykYDwoFsOS+88KmM9oeN9jh2eRBDVpCF5Cg2s4whEspNGdV4NmD/Vl+XPyRzhMFegqssRAMXw+Eey00pV2GwHWqtFfgNigBeDoNurnAHUKYtXDAfPsj078zvLq7dMnk48TCobXjL6YghaOaXEEdYwAqgd9x06YqRMH41xAr9ryhaBiwpH8jSllzgDqFMWriIklEA7UUmp71tIBaP9gQxSIfACCOwXyizm7obWifdfKicqGqub0WmpT/d1Tn5I6KlgOZhrTS+KPkZRaT8qaQGbRLvGwghPM4bdXOAOoUxauIHe3lLclYlE/+1rOwdlJ76U2gN3CIWnXDa/UmrJqedCkQRuA+KYASPpSy5wB1CmLUwT9KqiGpp3GuHUKdXgqmNb7LnAHQEaZQbq5wB1CmLVw6hSnV5bkIlLTuNq4dARpnnVw6hShclkYqhTFq4dQpi1cOoUxancOMaeHVFabm6oNtu6igiVyleSXGg+bmXwYlUCFSQthpolH4hdkCZ4GcbsOoUxauHUKYtXDqFMQem2B6xZUlsmryKK/Y1zu4LeI2jIC7e/wDRAxGIIswuSOjWc+pnMyCme7itwB1CmLVw6hTFq4dQpRTS7McEkzEpZIYz7wh0zoqnPqTolGKLQ3t7+jSDfwLW5MFzwqY1G2IVMZ8WJgalTOIucAdQpi1cOoUwwAAD+9+AAABqNpt6MLPg6wcgaB1A1zerBe6p0Lqzy/ff4IzGOoJS557RLb5FAzGsGH3p5ChBnwRp6U//d9jJGF6Vm4PuRgvfLpZB19JV+ZIPz1aWsntBzS2ivkniA5BxisM1PMveUijbWrJWpU1zYkwsxno9WHeUfzR5nt3UuKR+fOJXZDYi4E+K7PWg5gu6EI7VXkJhq70pNve0wBsfNw+bDSsdIKaHB8+0U1d1m0TVTfAkDlwP78HDiSgb/jio0DW9j/YD99wiiAbdo8THFYZVuIGFIBcLParmmgrwGQ5SF0SAzyi9X8xegiZwBuTdZLq79mbVjNgCJNm3Cz6/pviZJT4/ErEBZyoqQljUJovEqY5buTlPyyR40ZSal1PZtskhmx6nlkBfL4GVlvQDm7jpujBEaXwwz9Q0D4hx2EmYVXzGw/5XmrG4XzXrf/feLD73FSrFKZwYqxeltkZZNWFI+gk5PfKecPnQMfktiKGoBUahhSHiQ2y2K895/DrAI2x2/IZ/gzZwiJ98a497xEeuSnaoy7EYt9CTKD1lfTNey8pYrdRx2YN2CB1weUQaUmaEwE0i2t94w9UrAmRlQPhk7ye56ZvL+/qOFO8u2X8iyKAQgQSOPQuRyksSTS7Whu5t9bRSvaeRyNOxdCj0t8FUQ8MTgczUzE3kDgulG1ecLVDtYoS3kT90mecMDlCtbZNJiFRkHq83a1tXufl5pc8Jlilwsi3b3/uHWkdaBxnOpa91/zxluJJsWKMwjOZLeXvT7OXk7xMR+zRpiQh06j4IDEE1IS3cmzrG1FEDhDwwQLYh2FeptlMH/spZc7Wr1P4Jw/mQIoRHUbKUQRMjbPmEsDr+b9VIY/YQvzXKmtANMnBR1p46OxDZKxPb58prLdMhb/Dd1vKFqUwxh/NSH58pZphbQhTTWtP+TWnzqjwKNMBY9rM/1m+iX6YE8PCAN78M6GVtcfTk1oRIn1z8l7X1A23M68tiw31+SfI7Ds/ClhWpVGTxNZpSi7E/sBE0urx8mozQY4IraVpl4gJ4K/QDF1IsoruaVCKZdVEgI1irR/EnhDO+2i9Ta0D1ZXoXRziNlyjmNAGxZYQ6ODGojZS+0GMsAXz6EGK6AAF26oOhE7HrTGW+5YVswP00FJMKMkqAAVBKqrjX6yVuQjlYWYKEqToct8QAASoddZJ3cb4rD+vPdzJcc1bo+gaMsjO+iILHwzkAwH3JjY7BtCQIa/2wGQH2XyuBa9rvCH2uBv2QwFZK1McalQkn/1sO12DtyNUBMxC4lbIDNWJUFVPPJhkuaS1wscbuKvtiyK9jExZuxwRloYHvLFCETiJHXfKS88oK3BrsyUoweQ2KhHsj3Njmc0XErdGPYZjU8EHqidXDuxullZFbXC3vOJ31N6T4Qo44GQAvv2q9af+qkqTYkKkSacb8pCP4HSYcsrAfJLGVudKAARrAwDdaIZ9SqlRgcg4OWYFx0pe9ThvINj7wsmNggg4SoM+tLqfyz35Eq1Mlg7ihaKXRnQn5rQcZKWo9dJl8F68nLKWPY9Gb0aE3HBqzZMOMrxp/+/TQlssxpJihl4l51WcMy8cGeCckw5LnGKlbJR9reguda/5sVO75gxLUZzY1QOZ4OlsFEEia1MAdxuTedZ6qIyN+zGCVNqcsUsjR3ckL2RBUQScyhjagsfPIU/MHG/vIdJrgHtpMN2z/AEOfdkKTFOaTKIjIJG7Cl+20CA+lVP3yXDQU+JRG1x4AaGabjID6JLrEuCNyDDbkE0Ja2ZUB6TIMtjyxeuYstx3pU3tBtoncproU+hUmgXNUhXVrcJ6WPBAiqI4SD7ADMQGjYw/BhrmqpXHOSVRIIdRyBxrebeDyNLfsr3iq4BnxfCgGjg0GARoGo8LasSNh4yqT7D9F8e+LXwI9DuDglbtwZFXvA6W+xK2uBSa9LWX0770np+/651u2ptJ70kTTbcrs7qZwAF52KAiEPtSXuQJRGvJmqqtf6U9CAJECfvGsCEv0J4Qc9uHVO8zxi0zI0mrwAvSS0ZRkP5Gd996l4C+S0oLjYh0hvPbcPLh80CpuvHLFkOmaxpe11kgN6VslbJ7+bZHhMPx+C6zSLz0W6ayPXSqQbb3vt9urbPW0ZliBb40WYGuj354GZo9CQbV8zOWMpETO6Cj/rhcobu98nJroTJm2pSBarMDnTO8X5Upa2Xp2ghXe1s2u2v77SGQD0lcUI6Gt6A4cEzyTbDckUFFfctv9vIqZrVDyZDUTXoON2MgtdG+AIOFpFzpn3fKfk72qURwx99DCcLRslaJ/aGzo9EE+srMWNaWnXFwgHBE7d911hNdURxNMJrm6O+qxJJ9MH6reAkEUfcjPc6i0SMn9EuFv1mu/PyuqdsS7sISaQs+ND6vyLC8NZEbyIvFwemmYoKBmxnq1PZgAFh1pwbd8mVqoBMxzIX0xl7+DhwiMiZrTsGcvDEW7CCgC3+JU9VbdlH5g1rVrktTAhFgA+4p5mXKA6Q4aPxq0rMJNv+slYYsfOsE0dd8LSikd3Kf24gG6vegpWsndzwa+LRCqTVOTv8NN5nw6JTHIbtLmBd+mm7ZAumi0PtF+IpHwo2QWp5lw2+VpHFaAfgE6FMu68jitdHXYKVkZA7vNDn9yrPQs0CjKoRTEUe7eaMwrHMZJu2Zr9DZOMQ2FlxIGUJij9Kce4jEdC7XUWVoMRdm72P3FxDdUtKURpFHjj2T/X3Rbydfaq9hLzXo2JH2/i7dzpxS52yCXeOuH96kH1cFR9xh/JIXSbz3McXKZA/M4YVR7pE22a3P2gDvp8ryt8YJhSuGx7hJaUEAhWwC5CxrxQ+GvENp583KQqklF5HGSl+Enna2G9/fdG252q8xw/ANH7uk98M7Amkn8GS3ktoccgOsCBkCnVvj2BS6UPdjo3OqdosSASWCZ6DiL9KToLmOADMVG0T86CNSn38celT2A6inJ0XlzBAmmFvnHbsFB/BHROOpbpuz5SCPSoKHbR5IBg9h96CWS8cZ7WKN13I7dNKsi0iTOo/dJP3cDiKDxk614OkkHF0TAK9H7ky9vTcgCJBXpq/LWXKlIAR4xT/wAbifZ5QjRrF01D7QjXVIiyAwMbb1ZXVF3WO4o3q5y2vfctYkatVw/wTMp9jnVu7IUDGLGGDnni4JM3VQPtWPlGQl5NcEk1uWncMVyFRtuABED3nxzE/SGAo5sQlVI5mhcPuVJeA+7pf/xQDBHgAuOei9sTXf7xZ/y1ZGMbkaaW2kUpzX67t0PCpCtMHVqNnC/I45glgfbnD8QgETCHWqTYL8NFqCK2j32s+DK3IWRH0pB+Qyzwuu5LM91R20DWQCoAiSNWQL73y0hm0/uRyyPovlT4RyHuLwPtpnwHCMKBTG52d4QUMEeIOcLlBCKQ0EcS8z5uZuGqCFDRfwnAY1xo9faBczjrR5aLYm9l4pwMcAmCQHHL1+bWgveG0ImEqEB/7g5R8kkc1ZS+AiZj2JgmuNept2xpunrvKsHL0Le87FggxGCMpniaWv6bmGqog0YG6Pr9lQvm6TCeDcP0dtamzyf4UCgUc9a+7/G+FgVs3pekdxHeoCgW7KAUhRGGfdjK7COwnKaO9LFluKY08x4tvkk887ZaZyYfhGPscjoI/kYl7iZmxx4eWtZXAhCySSAmoLMerhUqPFrFWn1bKSZ+ouUPZnnfdE/WOkMJAer7S7mMYxi2by52cLa76xw0ToOsNrZQ0cIpRSc4w690TJHVKsUsjXkRDYu0mTTKsMdzDs10wvXnz2Rw4GXAef2Xzvj7s8s+sBlV6KfkMAbzO8D7eMNXpNCZr+Ztm8X7UCvOTNhyf8xR8lHfCaUi0a724p40i3ioCfFKplE0JXIlsdoHCFPQHVC65yqKXp/SQvo6Qj2foBmX9g1nFZl0bXtERw2oV4hKBh6uPbBeyAYz4/MbmGC+JAaDUsUzkNkLlOV6BUm4jUT5Ft9Oxe3J2QJ+o41ygTEm6QZvYh1FNr/6Es7sqHCL7rmy9y91e0NsJOqYdiGk0mOLWTddGkLTUbJgIrtsipO/QXJgPylk8NcfLrN7Do8Gz+a+Be3ZEbq47zBao4q+Bm6m0zMBRrylJEZQVvG8Tf9r1qS7odXJmUpjwIFsr0Ey97kO7x5yK8vw9BGBS1ZLyT5yLIGiH37LEa46Tp9nKijuMgwWtH4FsEJ7DHiMwo51js4hXyhGOMshGyyj0kMy+2lyvUyMuVwTKH2ETuE+XyQReK/RmjYCpwW0fUClv7mw/8Gf92ZxNk2YWZCI9ARpSV30u/ruFrr1w0fxDsY/369U90D+0gqgubHUMMWGt7YL0TRt8dsrRmFqJ0ini6kyN+UIBK8FNGegVtlWybNRVrg7OgHQOT3bF5sxwdckizD2dTwyt4OixglGM0tyKBJMHLTUK3Xc+3kVCVk/HRVj8taR4snHqgpD1Rd1+nE+7M8g+uqJIYCBm5k2Aho06WQhYxCI8kRg8Ovj3m7DplK9/hII0gbF2oOdWmqrV6FyHcwWTdadoYj8FeslLTAabtjPJyuhpaj0tpRWoTNdsBwwmRLe61fFtnRA/XMzJT1tCgbOUlE5T9yzOhYZbQHwUTF9zFeqRyTfzOqSQuOMl7Pnk9XhQaQyIZqZp83l0bJwija8FD8s8tkTCHXjv2LfzmwfaQqn49MLJ5s6UajJeZV9yAbClBbfs0LqROi0/Z2qPwA4vbqaAB2MpU8CfydBa9QsS2lhhVnVbyemd2qSIgTQXfwEJft+Owg6aJliogLw6OoEKybg2TV1PO/FAGGRUj/ZFgYRHRvTgvggll30PbBO60gxFI5R3yQ7fj4MrAxR72ec952Bl5/Eq0/Nd2Tr3tiXveNx8RkSxWlymcio4S5Iu8x655W93NnOf9yF8GdTsNzBtzuAyS/HUY78G5j95ZF9SGvF4Fig36pay5j/TLkB6znyuL3/cK93EhkAzqrOfOehrt3gTOXTW3xnxgFGcNvYl2AwYyyjoLqNpAUjdICBlGjU8ysPoTM8N0b2nTBFFNRmy6fa9bgWQLti0VoXYgrhgWO4xQgbiydyWBXZUkDvRDQA/ekr1orpV/qMFjgw+DGK3oTOS8JH7nAKYIGTe7HZ69kJTkLxjt2oNs8jQ35PPYnVmgRtHKUerZX2++KK4bxQNCGTSOfLal0YySBszkzRtSbvsOkqxCab37NAbwOKGjcuyqQF8zs2DLwKY/I0JkaEyMiAAA==)",e.addEventListener("click",n=>{n.stopPropagation(),e.classList.add("vanished"),setTimeout(()=>{e.remove()},1e3)}),n.parentNode.insertBefore(t,n),t.appendChild(n),t.appendChild(e)})}function Zi(n){n.querySelectorAll(".censored-overlay").forEach(n=>n.remove());n.querySelectorAll(".censored-image-container").forEach(n=>{const t=n.querySelector("img");t&&n.parentNode&&(n.parentNode.insertBefore(t,n),n.remove())})}var Yi=wr('<div class="page-number left-page-num"> </div>'),Ji=wr('<div class="page-number right-page-num"> </div>'),na=wr('<div class="book-pages"><div class="click-area click-left"></div> <div class="click-area click-right"></div> <div class="page page-left"><div class="page-content"><div class="text-content chattext"></div> <!></div></div> <div class="book-spine"></div> <div class="page page-right"><div class="page-content"><div class="text-content chattext"></div> <!></div></div> <!></div>');pr(["click"]);var ta=wr("<option> </option>"),ea=wr('<div class="dropdown-container"><div><div class="dropdown-header">설정</div> <div class="setting-item"><label for="fontFamily">폰트</label> <select id="fontFamily"></select></div> <div class="setting-item"><label for="fontSize">폰트 크기</label> <input type="range" id="fontSize" min="12" max="24" step="1"/> <span> </span></div> <div class="setting-item"><label for="lineHeight">줄 간격</label> <input type="range" id="lineHeight" min="1.5" max="2.2" step="0.1"/> <span> </span></div> <div class="setting-item"><label for="theme">테마</label> <select id="theme"><option>라이트 테마</option><option>세피아</option><option>다크 테마</option></select></div> <div class="setting-item toggle-item"><div class="toggle-content"><span class="toggle-label">이미지 검열</span> <span class="toggle-description">이미지 위에 오버레이 표시</span></div> <label class="toggle-switch"><input type="checkbox"/> <span class="toggle-slider"></span></label></div> <div class="setting-item"><button class="custom-css-btn">사용자 CSS 편집</button></div></div></div>');pr(["change","input","click"]);var ra=wr('<div class="lb-module-item" style="cursor: default; opacity: 0.6;">모듈이 없습니다</div>'),oa=wr('<div class="lb-module-item" role="button" tabindex="0"><span class="lb-module-label"> </span></div>'),ia=wr('<div class="dropdown-container"><div><div class="dropdown-header">LB 모듈</div> <div class="lb-modules-list"><!></div></div></div>');pr(["click","keydown"]);var aa=wr('<div class="lb-menu-container"><button><!> <span>LB</span></button> <!></div>'),la=wr('<nav class="nav-controls"><button class="nav-btn prev-btn" title="이전 페이지"><!></button> <span class="page-indicator"> </span> <button class="nav-btn next-btn" title="다음 페이지"><!></button> <div class="nav-right-buttons"><!> <div class="settings-menu-container"><button class="nav-icon-btn settings-btn" title="설정"><!></button> <!></div></div></nav>');function sa(n,t){$n(t,!0);let e=zo(t,"currentSpread",3,0),r=zo(t,"totalSpreads",3,1),o=zo(t,"isFirst",3,!0),i=zo(t,"isLast",3,!0),a=zo(t,"prevDisabled",3,!1),l=zo(t,"nextDisabled",3,!1),s=zo(t,"settings",19,()=>({fontSize:17,lineHeight:1.9,theme:"light"})),u=zo(t,"lbModules",19,()=>[]),c=zo(t,"isLBLoading",3,!1),f=It(!1),d=It(!1);function v(){Ft(f,!1),Ft(d,!1)}function p(n){var e;v(),null==(e=t.onLBModuleClick)||e.call(t,n)}var h=la();vr("click",Dt,function(n){const t=n.target.closest(".settings-menu-container"),e=n.target.closest(".lb-menu-container");!t&&Ge(f)&&Ft(f,!1),!e&&Ge(d)&&Ft(d,!1)});var g=Qt(h);g.__click=function(...n){var e;null==(e=t.onPrev)||e.apply(this,n)},Ci(Qt(g),{size:28});var b=Kt(g,2),m=Qt(b),w=Kt(b,2);w.__click=function(...n){var e;null==(e=t.onNext)||e.apply(this,n)},Si(Qt(w),{size:28});var y=Qt(Kt(w,2)),x=n=>{var t=aa(),e=Qt(t);let r;e.__click=n=>{n.stopPropagation(),c()||(Ft(d,!Ge(d)),Ge(d)&&Ft(f,!1))};var o=Qt(e),i=n=>{Ai(n,{size:18})},a=n=>{!function(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"}]];ki(n,Fo({name:"layers"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(n,{size:18})};Fr(o,n=>{c()?n(i):n(a,!1)}),function(n,t){$n(t,!0);let e=zo(t,"isOpen",3,!1),r=zo(t,"modules",19,()=>[]);function o(n){var e;null==(e=t.onModuleClick)||e.call(t,n)}var i=ia(),a=Qt(i);let l;var s=Kt(Qt(a),2),u=Qt(s),c=n=>{kr(n,ra())},f=n=>{var t=_r();Tr(Gt(t),17,r,zr,(n,t)=>{var e=oa();e.__click=()=>o(Ge(t)),e.__keydown=n=>"Enter"===n.key&&o(Ge(t));var r=Qt(e),i=Qt(r);ue(n=>Ar(i,n),[()=>function(n,t=30){const e=n.replace(/\s+/g," ").trim();return e.length<=t?e:e.substring(0,t)+"..."}(Ge(t).label)]),kr(n,e)}),kr(n,t)};Fr(u,n=>{0===r().length?n(c):n(f,!1)}),ue(()=>l=eo(a,1,"dropdown-menu",null,l,{active:e()})),kr(n,i),Vn()}(Kt(e,2),{get isOpen(){return Ge(d)},get modules(){return u()},onModuleClick:p,onClose:()=>Ft(d,!1)}),ue(()=>{r=eo(e,1,"nav-icon-btn lb-btn",null,r,{loading:c()}),e.disabled=c(),go(e,"title",c()?"LB 모듈 처리 중...":"LB 모듈")}),kr(n,t)};Fr(y,n=>{(u().length>0||c())&&n(x)});var _=Qt(Kt(y,2));_.__click=n=>{n.stopPropagation(),Ft(f,!Ge(f)),Ge(f)&&Ft(d,!1)},function(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}],["circle",{cx:"12",cy:"12",r:"3"}]];ki(n,Fo({name:"settings"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Qt(_),{size:18}),function(n,t){$n(t,!0);let e=zo(t,"isOpen",3,!1),r=zo(t,"settings",19,()=>({fontSize:17,lineHeight:1.5,theme:"dark",fontFamily:"나눔스퀘어네오",imageCensored:!1}));const o=["Pretendard","나눔스퀘어네오","에스코어드림","레페리포인트","플렉스","스위트","오르빗","스쿨오르빗","프리티나잇","서라운드에어","고운돋움","고운바탕","리디바탕","마루부리","도스고딕","스타더스트","픽시드시스","네오둥근모"];var i=ea(),a=Qt(i);let l;var s,u=Kt(Qt(a),2),c=Kt(Qt(u),2);c.__change=function(n){var e;const o={...r(),fontFamily:n.target.value};null==(e=t.onSettingsChange)||e.call(t,o)},Tr(c,21,()=>o,zr,(n,t)=>{var e=ta();let r;var o=Qt(e),i={};ue(()=>{r=oo(e,"",r,{"font-family":Ge(t)}),Ar(o,Ge(t)),i!==(i=Ge(t))&&(e.value=(e.__value=Ge(t))??"")}),kr(n,e)}),ao(c);var f=Kt(u,2),d=Kt(Qt(f),2);d.__input=function(n){var e;const o={...r(),fontSize:Number(n.target.value)};null==(e=t.onSettingsChange)||e.call(t,o)};var v=Qt(Kt(d,2)),p=Kt(f,2),h=Kt(Qt(p),2);h.__input=function(n){var e;const o={...r(),lineHeight:Number(n.target.value)};null==(e=t.onSettingsChange)||e.call(t,o)};var g=Qt(Kt(h,2)),b=Kt(p,2),m=Kt(Qt(b),2);m.__change=function(n){var e;const o={...r(),theme:n.target.value};null==(e=t.onSettingsChange)||e.call(t,o)};var w=Qt(m);w.value=w.__value="light";var y=Kt(w);y.value=y.__value="sepia";var x,_=Kt(y);_.value=_.__value="dark",ao(m);var k=Kt(b,2),C=Kt(Qt(k),2),S=Qt(C);S.__change=function(n){var e;const o={...r(),imageCensored:n.target.checked};null==(e=t.onSettingsChange)||e.call(t,o)},Qt(Kt(k,2)).__click=function(...n){var e;null==(e=t.onOpenCustomCss)||e.apply(this,n)},ue(n=>{l=eo(a,1,"dropdown-menu",null,l,{active:e()}),s!==(s=r().fontFamily)&&(c.value=(c.__value=r().fontFamily)??"",io(c,r().fontFamily)),vo(d,r().fontSize),Ar(v,`${r().fontSize??""}px`),vo(h,r().lineHeight),Ar(g,n),x!==(x=r().theme)&&(m.value=(m.__value=r().theme)??"",io(m,r().theme)),po(S,r().imageCensored)},[()=>r().lineHeight.toFixed(1)]),kr(n,i),Vn()}(Kt(_,2),{get isOpen(){return Ge(f)},get settings(){return s()},onSettingsChange:function(n){var e;null==(e=t.onSettingsChange)||e.call(t,n)},onOpenCustomCss:function(){var n;v(),null==(n=t.onOpenCustomCss)||n.call(t)},onClose:()=>Ft(f,!1)}),ue(()=>{g.disabled=o()&&a(),Ar(m,`${e()+1} / ${r()??""}`),w.disabled=i()&&l()}),kr(n,h),Vn()}pr(["click"]);const ua="@font-face {\n font-family: '나눔스퀘어네오';\n src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);\n src:\n url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix)\n format('embedded-opentype'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff)\n format('woff'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf)\n format('truetype');\n font-weight: normal;\n font-style: normal;\n}\n@font-face {\n font-family: '에스코어드림';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff')\n format('woff');\n}\n@font-face {\n font-family: '레페리포인트';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2201-2@1.0/LeferiPoint-WhiteObliqueA.woff')\n format('woff');\n}\n@font-face {\n font-family: '플렉스';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_20-07@1.0/IBMPlexSansKR-Regular.woff')\n format('woff');\n}\n@font-face {\n font-family: '스위트';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2304-2@1.0/SUITE-Regular.woff2')\n format('woff2');\n}\n@font-face {\n font-family: '오르빗';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2310@1.0/Orbit-Regular.woff2')\n format('woff2');\n}\n@font-face {\n font-family: '스쿨오르빗';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2307-2@1.0/HakgyoansimWoojuR.woff2')\n format('woff2');\n}\n@font-face {\n font-family: '프리티나잇';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Oneprettynight.woff')\n format('woff');\n}\n@font-face {\n font-family: '서라운드에어';\n src: url('https://gcore.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/Cafe24SsurroundAir.woff')\n format('woff');\n}\n@font-face {\n font-family: '고운돋움';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunDodum-Regular.woff')\n format('woff');\n}\n@font-face {\n font-family: '고운바탕';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/GowunBatang-Regular.woff')\n format('woff');\n}\n@font-face {\n font-family: '리디바탕';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.0/RIDIBatang.woff')\n format('woff');\n}\n@font-face {\n font-family: '마루부리';\n src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot);\n src:\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.eot?#iefix)\n format('embedded-opentype'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2)\n format('woff2'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff)\n format('woff'),\n url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.ttf)\n format('truetype');\n}\n@font-face {\n font-family: '도스고딕';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_eight@1.0/DOSGothic.woff')\n format('woff');\n}\n@font-face {\n font-family: '스타더스트';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/PFStardust.woff')\n format('woff');\n}\n@font-face {\n font-family: '픽시드시스';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/DungGeunMo.woff')\n format('woff');\n}\n@font-face {\n font-family: '네오둥근모';\n src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.3/NeoDunggeunmo.woff')\n format('woff');\n}\n\n/* ===== Risu Chat Styles ===== */\n.risu-chat > div {\n padding: unset !important;\n margin: unset !important;\n justify-content: unset !important;\n align-items: unset !important;\n}\n.risu-chat > div > div {\n margin: unset !important;\n justify-content: unset !important;\n}\n/* \n.pc-viewer-container code {\n word-break: break-word;\n}\n */\n/* ===== PC Book Viewer Styles ===== */\n.pc-viewer-container {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%; /* JS에서 동적으로 제어 */\n}\n\n.pc-viewer-container > div {\n padding: unset !important;\n margin: unset !important;\n justify-content: unset !important;\n align-items: unset !important;\n}\n.pc-viewer-container > div > div {\n margin: unset !important;\n justify-content: unset !important;\n}\n\n/* CSS 변수 정의 */\n.book-viewer-root {\n /* 프리미엄 컬러 팔레트 */\n --bv-bg-gradient-start: #1a1f35;\n --bv-bg-gradient-end: #2d3654;\n --bv-page-color: #fdfbf7;\n --bv-page-shadow: #f5f0e8;\n --bv-text-color: #2c2c2c;\n --bv-text-secondary: #6b6b6b;\n --bv-accent-color: #c9a66b;\n --bv-accent-hover: #b8935a;\n --bv-divider-color: #e8e4dc;\n --bv-spine-gradient: linear-gradient(\n 90deg,\n #d4cfc4 0%,\n hsl(41, 13%, 76%) 50%,\n #d4cfc4 100%\n );\n\n /* 그림자 시스템 */\n --bv-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.08);\n --bv-shadow-medium: 0 8px 40px rgba(0, 0, 0, 0.12);\n --bv-shadow-strong: 0 20px 60px rgba(0, 0, 0, 0.2);\n --bv-shadow-inner: inset 0 0 30px rgba(0, 0, 0, 0.03);\n\n /* 타이포그래피 */\n --bv-font-size: 17px;\n --bv-line-height: 1.9;\n --bv-font-family:\n 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;\n --bv-font-serif: 'Noto Serif KR', 'Crimson Text', 'Georgia', serif;\n\n /* 애니메이션 */\n --bv-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);\n --bv-transition-smooth: 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n --bv-transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n\n /* 폰트 컬러 (Light) */\n --FontColorStandard: #2c2c2c;\n --FontColorItalic: #5a5a5a;\n --FontColorBold: #1a1a1a;\n --FontColorItalicBold: #5a5a5a;\n --FontColorQuote1: #0e7490;\n --FontColorQuote2: #c2410c;\n\n --bv-font-color: var(--FontColorStandard);\n --bv-mark1-color: var(--FontColorQuote1);\n --bv-mark2-color: var(--FontColorQuote2);\n --bv-em-color: var(--FontColorItalic);\n}\n.book-viewer-root [data-theme='light'] {\n /* 프리미엄 컬러 팔레트 */\n --bv-bg-gradient-start: #1a1f35;\n --bv-bg-gradient-end: #2d3654;\n --bv-page-color: #fdfbf7;\n --bv-page-shadow: #f5f0e8;\n --bv-text-color: #2c2c2c;\n --bv-text-secondary: #6b6b6b;\n --bv-accent-color: #c9a66b;\n --bv-accent-hover: #b8935a;\n --bv-divider-color: #e8e4dc;\n --bv-spine-gradient: linear-gradient(\n 90deg,\n #d4cfc4 0%,\n hsl(41, 13%, 76%) 50%,\n #d4cfc4 100%\n );\n\n /* 그림자 시스템 */\n --bv-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.08);\n --bv-shadow-medium: 0 8px 40px rgba(0, 0, 0, 0.12);\n --bv-shadow-strong: 0 20px 60px rgba(0, 0, 0, 0.2);\n --bv-shadow-inner: inset 0 0 30px rgba(0, 0, 0, 0.03);\n\n /* 타이포그래피 */\n --bv-font-size: 17px;\n --bv-line-height: 1.9;\n --bv-font-family:\n 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;\n --bv-font-serif: 'Noto Serif KR', 'Crimson Text', 'Georgia', serif;\n\n /* 애니메이션 */\n --bv-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);\n --bv-transition-smooth: 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n --bv-transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n\n /* 폰트 컬러 (Light) */\n --FontColorStandard: #2c2c2c;\n --FontColorItalic: #5a5a5a;\n --FontColorBold: #1a1a1a;\n --FontColorItalicBold: #5a5a5a;\n --FontColorQuote1: #0e7490;\n --FontColorQuote2: #c2410c;\n\n --bv-font-color: var(--FontColorStandard);\n --bv-mark1-color: var(--FontColorQuote1);\n --bv-mark2-color: var(--FontColorQuote2);\n --bv-em-color: var(--FontColorItalic);\n}\n\n/* 테마: Sepia */\n.book-viewer-root[data-theme='sepia'] {\n --bv-bg-gradient-start: #3d3830;\n --bv-bg-gradient-end: #4a4238;\n --bv-page-color: #f7f0e3;\n --bv-page-shadow: #ebe4d7;\n --bv-text-color: #3d2e1c;\n --bv-text-secondary: #7a6b5a;\n --bv-accent-color: #8b7355;\n --bv-divider-color: #d4c9b8;\n --bv-spine-gradient: linear-gradient(\n 90deg,\n #c4b9a8 0%,\n #b8ad9c 50%,\n #c4b9a8 100%\n );\n\n /* 폰트 컬러 (Sepia) */\n --FontColorBold: #2a1f10;\n --FontColorItalicBold: #6b5a48;\n\n --FontColorStandard: #3d2e1c;\n --FontColorQuote1: #1a6b6b;\n --FontColorQuote2: #a85d20;\n --FontColorItalic: #6b5a48;\n --bv-font-color: var(--FontColorStandard);\n --bv-mark1-color: var(--FontColorQuote1);\n --bv-mark2-color: var(--FontColorQuote2);\n --bv-em-color: var(--FontColorItalic);\n}\n\n/* 테마: Dark */\n.book-viewer-root[data-theme='dark'] {\n --bv-bg-gradient-start: #0d1117;\n --bv-bg-gradient-end: #161b22;\n --bv-page-color: var(--risu-theme-bgcolor);\n --bv-page-shadow: #151a20;\n --bv-text-color: #c9d1d9;\n --bv-text-secondary: #8b949e;\n --bv-accent-color: #d4a574;\n --bv-accent-hover: #e0b584;\n --bv-divider-color: #30363d;\n --bv-spine-gradient: linear-gradient(\n 90deg,\n #21262d 0%,\n #30363d 50%,\n #21262d 100%\n );\n --FontColorStandard: #fafafa;\n --FontColorItalic: #8c8d93;\n --FontColorBold: #fafafa;\n --FontColorItalicBold: #8c8d93;\n --FontColorQuote1: #8be9fd;\n --FontColorQuote2: #ffb86c;\n\n --bv-font-color: var(--FontColorStandard);\n --bv-mark1-color: var(--FontColorQuote1);\n --bv-mark2-color: var(--FontColorQuote2);\n --bv-em-color: var(--FontColorItalic);\n}\n\n/* 텍스트 색상 */\n.text-content p {\n margin-top: 0.65em;\n /* color: var(--bv-font-color); */\n}\n\n.text-content h1 {\n font-weight: 800;\n font-size: 2.25em;\n line-height: 1.1111111;\n color: var(--bv-text-color);\n}\n\n.text-content h2 {\n font-weight: 700;\n font-size: 1.5em;\n line-height: 1.3333333;\n color: var(--bv-text-color);\n}\n\n.text-content h3 {\n font-weight: 600;\n font-size: 1.25em;\n line-height: 1.6;\n color: var(--bv-text-color);\n}\n\n/* ===== 책 래퍼 (전체 화면) ===== */\n.book-viewer-root {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%; /* JS에서 부모 요소(.risu-chat)의 높이를 동적으로 제어 */\n display: flex !important;\n flex-direction: column;\n overflow: hidden;\n z-index: 5;\n font-family: var(--bv-font-family);\n background: linear-gradient(\n 135deg,\n var(--bv-bg-gradient-start) 0%,\n var(--bv-bg-gradient-end) 100%\n );\n user-select: none;\n border-bottom: 1px solid var(--bv-divider-color);\n}\n\n/* 배경 패턴 */\n.book-viewer-root::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-image:\n radial-gradient(\n circle at 20% 80%,\n rgba(201, 166, 107, 0.05) 0%,\n transparent 50%\n ),\n radial-gradient(\n circle at 80% 20%,\n rgba(201, 166, 107, 0.03) 0%,\n transparent 50%\n );\n pointer-events: none;\n z-index: 0;\n}\n\n/* ===== 헤더 영역 ===== */\n.book-viewer-root .book-header {\n display: flex !important;\n align-items: center;\n justify-content: space-between;\n padding: 12px 24px;\n background: var(--bv-page-color);\n border-bottom: 1px solid var(--bv-divider-color);\n flex-shrink: 0;\n z-index: 1;\n}\n\n.book-viewer-root .header-left {\n display: flex !important;\n align-items: center;\n gap: 12px;\n min-width: 0;\n flex: 1;\n margin-left: 30px;\n}\n\n.book-viewer-root .header-thumbnail {\n width: 40px;\n height: 40px;\n min-width: 40px;\n border-radius: 8px;\n background-size: cover;\n background-position: center;\n background-color: var(--bv-divider-color);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n}\n\n.book-viewer-root .header-info {\n display: flex !important;\n align-items: center;\n gap: 12px;\n min-width: 0;\n flex: 1;\n}\n\n.book-viewer-root .header-name {\n font-size: 15px;\n font-weight: 600;\n color: var(--bv-text-color);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.book-viewer-root .header-buttons {\n display: flex !important;\n align-items: center;\n gap: 4px;\n}\n\n.book-viewer-root .header-buttons button {\n background: none;\n border: none;\n padding: 6px;\n cursor: pointer;\n color: var(--bv-text-secondary);\n border-radius: 6px;\n transition: all var(--bv-transition-fast);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.book-viewer-root .header-buttons button:hover {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-accent-color);\n}\n\n.book-viewer-root[data-theme='dark'] .header-buttons button:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.book-viewer-root .header-buttons button :global(svg) {\n width: 18px;\n height: 18px;\n}\n\n.book-viewer-root .header-right {\n display: flex !important;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.book-viewer-root .chat-index-nav {\n display: flex !important;\n align-items: center;\n gap: 4px;\n}\n\n.book-viewer-root .chat-nav-btn {\n background: none;\n border: none;\n padding: 4px;\n cursor: pointer;\n color: var(--bv-text-secondary);\n border-radius: 4px;\n transition: all var(--bv-transition-fast);\n display: flex !important;\n align-items: center;\n justify-content: center;\n}\n\n.book-viewer-root .chat-nav-btn:hover:not(:disabled) {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-accent-color);\n}\n\n.book-viewer-root .chat-nav-btn:disabled {\n opacity: 0.3;\n cursor: not-allowed;\n}\n\n.book-viewer-root[data-theme='dark'] .chat-nav-btn:hover:not(:disabled) {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.book-viewer-root .header-chat-index {\n font-size: 13px;\n font-weight: 500;\n color: var(--bv-text-secondary);\n background: rgba(0, 0, 0, 0.04);\n padding: 4px 10px;\n border-radius: 12px;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.book-viewer-root .chat-index-total {\n font-size: 11px;\n opacity: 0.7;\n}\n\n.book-viewer-root[data-theme='dark'] .header-chat-index {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.book-viewer-root .close-btn {\n background: none;\n border: none;\n padding: 6px;\n cursor: pointer;\n color: var(--bv-text-secondary);\n border-radius: 6px;\n transition: all var(--bv-transition-fast);\n display: flex !important;\n align-items: center;\n justify-content: center;\n}\n\n.book-viewer-root .close-btn:hover {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-accent-color);\n}\n\n/* ===== 페이지 영역 ===== */\n.book-viewer-root .book-pages {\n position: relative;\n display: flex !important;\n flex: 1;\n min-height: 0;\n z-index: 1;\n}\n\n.book-viewer-root .page {\n flex: 1;\n background: var(--bv-page-color);\n position: relative;\n overflow: hidden;\n}\n\n/* 종이 질감 효과 */\n.book-viewer-root .page::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background:\n linear-gradient(\n 90deg,\n rgba(0, 0, 0, 0.02) 0%,\n transparent 5%,\n transparent 95%,\n rgba(0, 0, 0, 0.02) 100%\n ),\n url(\"data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E\");\n pointer-events: none;\n z-index: 1;\n}\n\n.book-viewer-root[data-theme='dark'] .page::before {\n opacity: 0.5;\n}\n\n.book-viewer-root .page-left {\n box-shadow: var(--bv-shadow-inner);\n}\n\n.book-viewer-root .page-left::after {\n content: '';\n position: absolute;\n top: 0;\n right: 0;\n width: 40px;\n height: 100%;\n background: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.03) 100%);\n pointer-events: none;\n}\n\n.book-viewer-root .page-right {\n box-shadow: var(--bv-shadow-inner);\n}\n\n.book-viewer-root .page-right::after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 40px;\n height: 100%;\n background: linear-gradient(90deg, rgba(0, 0, 0, 0.03) 0%, transparent 100%);\n pointer-events: none;\n}\n\n/* ===== 책등 (스파인) ===== */\n.book-viewer-root .book-spine {\n width: 8px;\n background: var(--bv-spine-gradient);\n position: relative;\n box-shadow:\n inset 2px 0 4px rgba(0, 0, 0, 0.1),\n inset -2px 0 4px rgba(0, 0, 0, 0.1);\n}\n\n.book-viewer-root .book-spine::before {\n content: '';\n position: absolute;\n top: 0;\n left: 50%;\n transform: translateX(-50%);\n width: 1px;\n height: 100%;\n background: rgba(0, 0, 0, 0.1);\n}\n\n/* ===== 페이지 콘텐츠 ===== */\n.book-viewer-root .page-content {\n padding: 50px 60px 10px;\n height: 100%;\n display: flex !important;\n flex-direction: column;\n color: var(--bv-text-color);\n position: relative;\n z-index: 2;\n}\n\n.book-viewer-root .page-content > .chattext [class*='-image-wrapper'] {\n max-height: 100%;\n}\n.book-viewer-root .page-content > .chattext [class*='-image-container'] {\n min-height: 98%;\n max-height: 100%;\n}\n.book-viewer-root .page-content > .chattext .x-risu-image-container:hover {\n}\n\n.book-viewer-root .page-content > .x-risu-image-cell {\n aspect-ratio: auto;\n}\n\n.book-viewer-root .text-content {\n flex: 1;\n overflow-y: auto;\n font-size: var(--bv-font-size) !important;\n line-height: var(--bv-line-height) !important;\n font-family: var(--bv-font-family) !important;\n text-align: -webkit-auto;\n word-break: keep-all;\n letter-spacing: -0.01em;\n padding-right: 10px;\n user-select: text;\n -webkit-user-select: text;\n cursor: text;\n}\n\n.book-viewer-root .text-content * {\n user-select: text;\n -webkit-user-select: text;\n}\n\n/* 헤딩 스타일 */\n.book-viewer-root .text-content :global(h1),\n.book-viewer-root .text-content :global(h2),\n.book-viewer-root .text-content :global(h3) {\n margin: 2em 0 1em;\n text-indent: 0;\n font-weight: 600;\n color: #1a1a1a;\n letter-spacing: -0.02em;\n}\n\n.book-viewer-root .text-content :global(h1) {\n font-size: 1.8em;\n border-bottom: 2px solid var(--bv-accent-color);\n padding-bottom: 0.5em;\n}\n\n.book-viewer-root .text-content :global(h2) {\n font-size: 1.4em;\n}\n\n/* Mark 스타일 */\n.book-viewer-root .text-content :global(mark),\n.book-viewer-root .text-content :global(mark[risu-mark]) {\n display: inline;\n background: linear-gradient(\n 120deg,\n rgba(201, 166, 107, 0.2) 0%,\n rgba(201, 166, 107, 0.3) 100%\n );\n color: inherit;\n padding: 0.1em 0.3em;\n border-radius: 3px;\n flex-direction: unset;\n align-items: unset;\n gap: unset;\n}\n\n/* 이미지 스타일 */\n.book-viewer-root .text-content:has(img) {\n position: static;\n}\n\n.book-viewer-root .text-content :global(img) {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n margin: 0;\n z-index: 10;\n}\n\n.book-viewer-root .page-content:has(img) .page-number {\n display: none;\n}\n\n/* ===== 페이지 번호 ===== */\n.book-viewer-root .page-number {\n font-size: 13px;\n color: var(--bv-text-secondary);\n font-weight: 500;\n letter-spacing: 0.05em;\n}\n\n.book-viewer-root .left-page-num {\n text-align: left;\n}\n.book-viewer-root .right-page-num {\n text-align: right;\n}\n\n/* ===== 클릭 영역 ===== */\n.book-viewer-root .click-area {\n position: absolute;\n top: 0;\n width: 5%;\n height: 100%;\n z-index: 10;\n cursor: pointer;\n}\n\n.book-viewer-root .click-left {\n left: 0;\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='%23c9a66b' stroke-width='2'%3E%3Cpolyline points='15 18 9 12 15 6'%3E%3C/polyline%3E%3C/svg%3E\")\n 16 16,\n w-resize;\n}\n\n.book-viewer-root .click-right {\n right: 0;\n cursor:\n url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='%23c9a66b' stroke-width='2'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E\")\n 16 16,\n e-resize;\n}\n\n.book-viewer-root .click-area::after {\n content: '';\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 50px;\n height: 100px;\n opacity: 0;\n transition: opacity var(--bv-transition-smooth);\n pointer-events: none;\n}\n\n.book-viewer-root .click-left::after {\n left: 30px;\n background: radial-gradient(\n ellipse at left,\n rgba(201, 166, 107, 0.15),\n transparent 70%\n );\n}\n\n.book-viewer-root .click-right::after {\n right: 30px;\n background: radial-gradient(\n ellipse at right,\n rgba(201, 166, 107, 0.15),\n transparent 70%\n );\n}\n\n.book-viewer-root .click-area:hover::after {\n opacity: 1;\n}\n\n/* ===== 네비게이션 컨트롤 ===== */\n.book-viewer-root .nav-controls {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 32px;\n background: var(--bv-page-color);\n padding: 14px 40px;\n border-top: 1px solid rgba(201, 166, 107, 0.12);\n flex-shrink: 0;\n z-index: 1;\n}\n\n.book-viewer-root .nav-btn {\n background: none;\n border: none;\n cursor: pointer;\n padding: 10px;\n border-radius: 50%;\n transition: all var(--bv-transition-fast);\n color: var(--bv-accent-color);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.book-viewer-root .nav-btn :global(svg) {\n transition: transform var(--bv-transition-fast);\n}\n\n.book-viewer-root .nav-btn:hover:not(:disabled) {\n background: rgba(201, 166, 107, 0.12);\n}\n.book-viewer-root .nav-btn:hover:not(:disabled) :global(svg) {\n transform: scale(1.1);\n}\n.book-viewer-root .nav-btn:active:not(:disabled) {\n background: transparent !important;\n}\n.book-viewer-root .nav-btn:active:not(:disabled) :global(svg) {\n transform: scale(0.95);\n}\n.book-viewer-root .nav-btn:disabled {\n opacity: 0.25;\n cursor: not-allowed;\n}\n\n.book-viewer-root .page-indicator {\n font-size: 14px;\n color: var(--bv-text-color);\n min-width: 90px;\n text-align: center;\n font-weight: 600;\n letter-spacing: 0.02em;\n font-variant-numeric: tabular-nums;\n}\n\n/* ===== 네비게이션 우측 버튼 그룹 ===== */\n.book-viewer-root .nav-right-buttons {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-left: auto;\n padding-left: 20px;\n}\n\n.book-viewer-root .nav-icon-btn {\n background: none;\n border: 2px solid var(--bv-accent-color);\n color: var(--bv-accent-color);\n padding: 8px 12px;\n cursor: pointer;\n border-radius: 8px;\n transition: all var(--bv-transition-fast);\n font-size: 13px !important;\n font-weight: 600 !important;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n}\n\n.book-viewer-root .nav-icon-btn:hover {\n background: var(--bv-accent-color);\n color: white;\n}\n\n.book-viewer-root .nav-icon-btn :global(svg) {\n width: 18px;\n height: 18px;\n}\n\n/* ===== 설정 아이템 ===== */\n.book-viewer-root .setting-item {\n margin-bottom: 16px;\n}\n.book-viewer-root .setting-item:last-child {\n margin-bottom: 0;\n}\n\n.book-viewer-root .setting-item label {\n display: block;\n margin-bottom: 8px;\n font-size: 12px;\n font-weight: 600;\n color: var(--bv-text-color);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n}\n\n.book-viewer-root .setting-item input[type='range'] {\n width: 100%;\n height: 5px;\n -webkit-appearance: none;\n appearance: none;\n background: #e8e4dc;\n border-radius: 3px;\n outline: none;\n margin-bottom: 6px;\n}\n\n.book-viewer-root[data-theme='dark'] .setting-item input[type='range'] {\n background: #30363d;\n}\n\n.book-viewer-root .setting-item input[type='range']::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 18px;\n height: 18px;\n background: var(--bv-accent-color);\n border-radius: 50%;\n cursor: pointer;\n box-shadow: 0 2px 6px rgba(201, 166, 107, 0.4);\n transition: all var(--bv-transition-fast);\n}\n\n.book-viewer-root\n .setting-item\n input[type='range']::-webkit-slider-thumb:hover {\n transform: scale(1.1);\n}\n\n.book-viewer-root .setting-item input[type='range']::-moz-range-thumb {\n width: 18px;\n height: 18px;\n background: var(--bv-accent-color);\n border-radius: 50%;\n cursor: pointer;\n border: none;\n}\n\n.book-viewer-root .setting-item select {\n width: 100%;\n padding: 10px 14px;\n border: 2px solid #e8e4dc;\n border-radius: 10px;\n font-size: 13px;\n background: #fff;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n appearance: none;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23c9a66b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: right 10px center;\n background-size: 16px;\n}\n.book-viewer-root .setting-item select:hover {\n border-color: var(--bv-accent-color);\n}\n.book-viewer-root .setting-item select:focus {\n outline: none;\n border-color: var(--bv-accent-color);\n box-shadow: 0 0 0 3px rgba(201, 166, 107, 0.15);\n}\n\n.book-viewer-root .setting-item span {\n font-size: 11px;\n color: var(--bv-text-secondary);\n font-weight: 500;\n}\n\n.book-viewer-root .custom-css-btn {\n width: 100%;\n padding: 10px 16px;\n background: var(--bv-accent-color);\n color: white;\n border: none;\n border-radius: 8px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n}\n\n.book-viewer-root .custom-css-btn:hover {\n background: var(--bv-accent-hover);\n transform: translateY(-1px);\n}\n\n/* ===== 토글 스위치 ===== */\n.book-viewer-root .toggle-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 14px 0;\n border-top: 1px solid rgba(201, 166, 107, 0.15);\n border-bottom: 1px solid rgba(201, 166, 107, 0.15);\n}\n\n.book-viewer-root .toggle-content {\n display: flex;\n flex-direction: column;\n gap: 3px;\n}\n\n.book-viewer-root .toggle-label {\n font-size: 12px;\n font-weight: 600;\n color: var(--bv-font-color);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n}\n\n.book-viewer-root .toggle-description {\n font-size: 11px;\n color: var(--bv-text-secondary);\n font-weight: 400;\n text-transform: none;\n letter-spacing: 0;\n}\n\n.book-viewer-root .toggle-switch {\n position: relative;\n display: inline-block;\n width: 44px;\n height: 24px;\n flex-shrink: 0;\n}\n\n.book-viewer-root .toggle-switch input {\n opacity: 0;\n width: 0;\n height: 0;\n}\n\n.book-viewer-root .toggle-slider {\n position: absolute;\n cursor: pointer;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: #e8e4dc;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n border-radius: 24px;\n}\n\n.book-viewer-root .toggle-slider::before {\n position: absolute;\n content: '';\n height: 18px;\n width: 18px;\n left: 3px;\n bottom: 3px;\n background: white;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n border-radius: 50%;\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);\n}\n\n.book-viewer-root .toggle-switch input:checked + .toggle-slider {\n background: var(--bv-accent-color);\n box-shadow: 0 0 10px rgba(201, 166, 107, 0.35);\n}\n\n.book-viewer-root .toggle-switch input:checked + .toggle-slider::before {\n transform: translateX(20px);\n}\n\n.book-viewer-root .toggle-switch:hover .toggle-slider {\n box-shadow: 0 0 0 3px rgba(201, 166, 107, 0.15);\n}\n\n/* 다크 테마 토글 */\n.book-viewer-root[data-theme='dark'] .toggle-slider {\n background: #30363d;\n}\n\n.book-viewer-root[data-theme='dark'] .toggle-slider::before {\n background: #8b949e;\n}\n\n.book-viewer-root[data-theme='dark']\n .toggle-switch\n input:checked\n + .toggle-slider::before {\n background: white;\n}\n.book-viewer-root[data-theme='dark'] .setting-item select {\n background-color: #21262d;\n border-color: #30363d;\n color: var(--bv-font-color);\n}\n\n.book-viewer-root[data-theme='light'] .setting-item select {\n color: var(--bv-font-color);\n}\n\n.book-viewer-root[data-theme='sepia'] .setting-item select {\n color: var(--bv-font-color);\n}\n\n/* LB 버튼 로딩 상태 */\n.book-viewer-root .nav-icon-btn.loading {\n opacity: 0.7;\n cursor: wait;\n}\n\n.book-viewer-root .nav-icon-btn.loading svg {\n animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n/* ===== 드롭다운 메뉴 ===== */\n.book-viewer-root .dropdown-container {\n position: relative;\n}\n\n.book-viewer-root .dropdown-menu {\n display: none;\n position: absolute;\n bottom: calc(100% + 40px);\n right: 0;\n background: rgba(255, 255, 255, 0.98);\n backdrop-filter: blur(20px);\n -webkit-backdrop-filter: blur(20px);\n padding: 16px;\n border-radius: 16px;\n box-shadow: var(--bv-shadow-strong);\n min-width: 280px;\n max-width: 320px;\n border: 1px solid rgba(201, 166, 107, 0.15);\n z-index: 200;\n}\n\n.book-viewer-root .dropdown-menu.active {\n display: block;\n animation: dropdownFadeIn 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n@keyframes dropdownFadeIn {\n from {\n opacity: 0;\n transform: translateY(10px) scale(0.95);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n\n.book-viewer-root[data-theme='dark'] .dropdown-menu {\n background: rgba(28, 33, 40, 0.98);\n}\n\n.book-viewer-root .dropdown-header {\n font-size: 14px;\n font-weight: 700;\n color: var(--bv-text-color);\n padding-bottom: 12px;\n margin-bottom: 12px;\n border-bottom: 1px solid var(--bv-divider-color);\n text-transform: uppercase;\n letter-spacing: 0.05em;\n}\n\n/* ===== LB 모듈 리스트 ===== */\n.book-viewer-root .lb-modules-list {\n max-height: 300px;\n overflow-y: auto;\n}\n\n.book-viewer-root .lb-module-item {\n padding: 10px 12px;\n margin-bottom: 6px;\n background: rgba(201, 166, 107, 0.08);\n border-radius: 8px;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n font-size: 13px;\n color: var(--bv-text-color);\n}\n\n.book-viewer-root .lb-module-item:hover {\n background: rgba(201, 166, 107, 0.2);\n}\n.book-viewer-root .lb-module-item:last-child {\n margin-bottom: 0;\n}\n\n.book-viewer-root[data-theme='dark'] .lb-module-item {\n background: rgba(212, 165, 116, 0.1);\n}\n\n.book-viewer-root[data-theme='dark'] .lb-module-item:hover {\n background: rgba(212, 165, 116, 0.2);\n}\n\n/* ===== 모달 ===== */\n.book-viewer-root .modal-overlay {\n display: none !important;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.6);\n backdrop-filter: blur(4px);\n z-index: 1100;\n justify-content: center;\n align-items: center;\n}\n\n.book-viewer-root .modal-overlay.active {\n display: flex;\n animation: modalFadeIn 0.3s ease;\n}\n\n@keyframes modalFadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n.book-viewer-root .modal-content {\n background: var(--bv-page-color);\n border-radius: 16px;\n width: 90%;\n max-width: 600px;\n max-height: 80vh;\n display: flex;\n flex-direction: column;\n box-shadow: var(--bv-shadow-strong);\n animation: modalSlideIn 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.book-viewer-root[data-theme='dark'] .modal-content {\n background: #1c2128;\n}\n\n@keyframes modalSlideIn {\n from {\n opacity: 0;\n transform: translateY(-20px) scale(0.95);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n}\n\n.book-viewer-root .modal-header {\n display: flex !important;\n justify-content: space-between;\n align-items: center;\n padding: 20px 24px;\n border-bottom: 1px solid var(--bv-divider-color);\n}\n\n.book-viewer-root .modal-header h3 {\n font-size: 18px;\n font-weight: 700;\n color: var(--bv-text-color);\n margin: 0;\n}\n\n.book-viewer-root .modal-close {\n background: none;\n border: none;\n font-size: 24px;\n color: var(--bv-text-secondary);\n cursor: pointer;\n padding: 4px 8px;\n border-radius: 6px;\n transition: all var(--bv-transition-fast);\n}\n\n.book-viewer-root .modal-close:hover {\n background: rgba(0, 0, 0, 0.05);\n color: var(--bv-text-color);\n}\n\n.book-viewer-root[data-theme='dark'] .modal-close:hover {\n background: rgba(255, 255, 255, 0.1);\n}\n\n.book-viewer-root .modal-body {\n flex: 1;\n padding: 20px 24px;\n overflow: auto;\n}\n\n.book-viewer-root .modal-body textarea {\n width: 100%;\n height: 300px;\n padding: 16px;\n border: 2px solid var(--bv-divider-color);\n border-radius: 12px;\n font-family: 'Consolas', 'Monaco', monospace;\n font-size: 14px;\n line-height: 1.6;\n resize: vertical;\n background: #fafafa;\n color: var(--bv-text-color);\n}\n\n.book-viewer-root[data-theme='dark'] .modal-body textarea {\n background: #0d1117;\n border-color: #30363d;\n}\n\n.modal-body textarea:focus {\n outline: none;\n border-color: var(--bv-accent-color);\n box-shadow: 0 0 0 3px rgba(201, 166, 107, 0.15);\n}\n\n.book-viewer-root .modal-footer {\n display: flex;\n justify-content: flex-end;\n gap: 12px;\n padding: 16px 24px;\n border-top: 1px solid var(--bv-divider-color);\n}\n\n.book-viewer-root .modal-btn {\n padding: 10px 20px;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 600;\n cursor: pointer;\n transition: all var(--bv-transition-fast);\n}\n\n.book-viewer-root .modal-btn.primary {\n background: var(--bv-accent-color);\n color: white;\n border: none;\n}\n\n.book-viewer-root .modal-btn.primary:hover {\n background: var(--bv-accent-hover);\n}\n\n.book-viewer-root .modal-btn.secondary {\n background: transparent;\n color: var(--bv-text-secondary);\n border: 2px solid var(--bv-divider-color);\n}\n\n.book-viewer-root .modal-btn.secondary:hover {\n border-color: var(--bv-text-secondary);\n color: var(--bv-text-color);\n}\n\n/* ===== 반응형 ===== */\n@media (max-width: 1200px) {\n .book-viewer-root .page-content {\n padding: 50px 40px 40px;\n }\n .book-viewer-root .text-content {\n font-size: 16px;\n }\n}\n\n@media (max-width: 900px) {\n .book-viewer-root .book-header {\n padding: 10px 16px;\n }\n .book-viewer-root .header-thumbnail {\n width: 32px;\n height: 32px;\n min-width: 32px;\n border-radius: 6px;\n }\n .book-viewer-root .header-name {\n font-size: 14px;\n }\n .book-viewer-root .header-buttons button {\n padding: 4px;\n }\n .book-viewer-root .header-buttons button :global(svg) {\n width: 16px;\n height: 16px;\n }\n .book-viewer-root .page-content {\n padding: 40px 30px 35px;\n }\n .book-viewer-root .book-spine {\n width: 4px;\n }\n .book-viewer-root .nav-controls {\n padding: 12px 20px;\n gap: 20px;\n }\n}\n\n/* ===== Toast ===== */\n.book-viewer-root .viewer-toast {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 1000;\n width: unset !important;\n pointer-events: none;\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n\n.book-viewer-root .viewer-toast.showing {\n opacity: 1;\n}\n\n/* 클릭 가능한 토스트 */\n.book-viewer-root .viewer-toast.clickable {\n pointer-events: auto;\n cursor: pointer;\n}\n\n.book-viewer-root .viewer-toast.clickable .toast-content {\n transition:\n transform 0.15s ease,\n box-shadow 0.15s ease;\n}\n\n.book-viewer-root .viewer-toast.clickable:hover .toast-content {\n transform: scale(1.02);\n box-shadow: 0 6px 28px rgba(0, 0, 0, 0.4);\n}\n\n.book-viewer-root .viewer-toast.clickable:active .toast-content {\n transform: scale(0.98);\n}\n\n.book-viewer-root .toast-content {\n background: rgba(0, 0, 0, 0.8);\n color: white;\n padding: 16px 32px;\n border-radius: 12px;\n font-size: 15px;\n font-weight: 500;\n text-align: center;\n backdrop-filter: blur(8px);\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);\n max-width: 400px;\n}\n\n/* PC 테마 지원 */\n:global(.book-viewer-root[data-theme='light']) .toast-content {\n background: rgba(50, 50, 50, 0.9);\n}\n\n/* Mobile 테마 지원 */\n:global(.mobile-reader[data-theme='light']) .toast-content {\n background: rgba(50, 50, 50, 0.9);\n}\n";var ca=wr('<div><div class="modal-content"><div class="modal-header"><h3>사용자 CSS</h3> <button class="modal-close">×</button></div> <div class="modal-body"><textarea placeholder="/* 사용자 정의 CSS를 입력하세요 */"></textarea></div> <div class="modal-footer"><button class="modal-btn secondary">초기화</button> <button class="modal-btn primary">적용</button></div></div></div>');pr(["click"]);var fa=wr('<div><div class="toast-content"> </div></div>');function da(n,t){$n(t,!0);let e=zo(t,"message",3,""),r=zo(t,"duration",3,2e3),o=zo(t,"visible",3,!1),i=zo(t,"clickable",3,!1),a=zo(t,"onClick",3,null),l=zo(t,"onHide",3,()=>{}),s=It(!1),u=null;function c(){i()&&a()&&(u&&clearTimeout(u),Ft(s,!1),a()(),setTimeout(()=>{l()()},100))}ie(()=>{o()&&(Ft(s,!0),u&&clearTimeout(u),u=setTimeout(()=>{Ft(s,!1),setTimeout(()=>{l()()},300)},r()))}),jo(()=>()=>{u&&clearTimeout(u)});var f=_r(),d=Gt(f),v=n=>{var t=fa();let r;t.__click=c;var o=Qt(t),a=Qt(o);ue(()=>{r=eo(t,1,"viewer-toast",null,r,{showing:Ge(s),clickable:i()}),go(t,"role",i()?"button":"status"),go(t,"tabindex",i()?0:-1),Ar(a,e())}),kr(n,t)};Fr(d,n=>{o()&&n(v)}),kr(n,f),Vn()}pr(["click"]);const va="bookViewerSettings",pa="bookViewerCustomCss",ha={fontSize:17,lineHeight:1.9,theme:"light",fontFamily:"나눔스퀘어네오",imageCensored:!1};function ga(){try{const n=localStorage.getItem(va);if(n){const t=JSON.parse(n);return{fontSize:t.fontSize??ha.fontSize,lineHeight:t.lineHeight??ha.lineHeight,theme:t.theme??ha.theme,fontFamily:t.fontFamily??ha.fontFamily,imageCensored:t.imageCensored??ha.imageCensored}}}catch(n){console.error("[SettingsManager] Failed to load settings:",n)}return{...ha}}function ba(n){try{const t={...ga(),...n};localStorage.setItem(va,JSON.stringify(t))}catch(t){console.error("[SettingsManager] Failed to save settings:",t)}}function ma(){try{return localStorage.getItem(pa)||""}catch(n){return console.error("[SettingsManager] Failed to load custom CSS:",n),""}}function wa(n){try{n?localStorage.setItem(pa,n):localStorage.removeItem(pa)}catch(t){console.error("[SettingsManager] Failed to save custom CSS:",t)}}function ya(n){const t=document.getElementById("book-viewer-custom-css");if(t&&t.remove(),!n||""===n.trim())return null;const e=document.createElement("style");return e.id="book-viewer-custom-css",e.textContent=n,document.head.appendChild(e),e}function xa(){const n=document.getElementById("book-viewer-custom-css");n&&n.remove(),localStorage.removeItem(pa)}var _a=wr('<div class="risu-chat pc-viewer-container"><div class="book-viewer-root chat-message-container"><!> <!> <!> <!> <!></div></div>');function ka(n,t){$n(t,!0);let e=zo(t,"chatHtml",7,""),r=zo(t,"chatIndex",3,0),o=zo(t,"chatPage",3,0),i=zo(t,"chaId",3,null),a=zo(t,"initialLoading",3,!1),l=It(Bt([])),s=It(0),u=It(Bt({fontSize:17,lineHeight:1.5,theme:"dark",fontFamily:"나눔스퀘어네오",imageCensored:!1})),c=It(Bt({thumbnailUrl:"",name:"",chatIndex:0,buttons:[]})),f=It(Bt([])),d=It(Bt(new Map)),v=It(Bt([])),p=It(!1),h=It(""),g=It(null),b=It(""),m=It(Bt({position:0,total:0,isFirst:!0,isLast:!0})),w=It(Bt([])),y=It(!1),x=It(""),_=It(!1),k=It(""),C=It(!1),S=It(null),A=It(!1),E=It("100%"),M=null;ie(()=>{Ft(y,a()),Ft(x,a()?"Loading...":"",!0)});let N=new Ri({splittableTags:["p"]}),I=It(null),L=It(null),F=null,z=null,j=null,P=null,T=xt(()=>Math.ceil(Ge(l).length/2)),B=xt(()=>2*Ge(s)),O=xt(()=>2*Ge(s)+1),R=xt(()=>Ge(l)[Ge(B)]||""),D=xt(()=>Ge(l)[Ge(O)]||""),W=xt(()=>Ge(l)[Ge(B)]?Ge(B)+1:0),U=xt(()=>Ge(l)[Ge(O)]?Ge(O)+1:0),q=xt(()=>0===Ge(s)),H=xt(()=>Ge(O)>=Ge(l).length-1);function $(){Ft(w,mi(),!0),Ft(m,yi(r()),!0)}async function V(){if(!e())return;Ft(b,e(),!0);const n=(new DOMParser).parseFromString(e(),"text/html");Ft(c,Hi(n),!0),Ge(c).chatIndex=r();const t=bi(r());t&&(Ge(c).buttons=$i(t),Ft(v,Vi(t),!0),Ft(d,Xi(t),!0)),Ft(f,Qi(n),!0);const o=n.querySelector(".chattext");o&&(Wi(o),Ft(g,o.cloneNode(!0),!0),await Gi(),await X(),Ge(y)&&setTimeout(()=>{Ft(y,!1),Ft(x,"")},100))}async function X(){if(!Ge(g))return;const n=document.querySelector(".book-viewer-root .text-content");if(!n){await Gi();if(!document.querySelector(".book-viewer-root .text-content"))return}const t=Di(n||document.body);document.body.appendChild(t);try{Ft(l,Ui(Ge(g).cloneNode(!0),t,N),!0)}finally{document.body.removeChild(t)}}function Q(){F&&clearTimeout(F),F=setTimeout(()=>{!async function(){if(!Ge(g))return;const n=2*Ge(s);Ft(l,[],!0),Ft(s,0),await Gi(),await X();const t=Math.max(0,Math.ceil(Ge(l).length/2)-1);Ft(s,Math.min(Math.floor(n/2),t),!0)}()},300)}function G(){const n=bi(r());if(n){const t=n.outerHTML;t!==Ge(b)&&(Ft(b,t,!0),e(t),V())}}function K(n){Ft(k,n,!0),Ft(C,!1),Ft(S,null),Ft(_,!0)}function Z(){Ge(O)>=Ge(l).length-1?nn():jt(s)}function Y(){0!==Ge(s)?jt(s,-1):J()}function J(){const{index:n,isFirst:t}=wi(r(),"prev");null!==n?Ea(n,!1,!0):t&&K("현재 채팅의 첫 번째 페이지입니다")}function nn(){const{index:n,isLast:t}=wi(r(),"next");null!==n?Ea(n,!1,!0):t&&K("현재 채팅의 마지막 페이지입니다")}function tn(n){n!==r()&&Ea(n,!1,!0)}ie(()=>{Ge(L)&&(Ge(L).style.setProperty("--bv-font-size",`${Ge(u).fontSize}px`),Ge(L).style.setProperty("--bv-line-height",String(Ge(u).lineHeight)),Ge(L).style.setProperty("--bv-font-family",Ge(u).fontFamily),Ge(L).style.setProperty("--risu-font-family",Ge(u).fontFamily),Ge(L).setAttribute("data-theme",Ge(u).theme))}),jo(async()=>{Ft(u,ga(),!0),Ft(h,ma(),!0),Ge(h)&&ya(Ge(h));const n=hi(pi.chatScreen.textarea);if(n){const t=n.scrollHeight+10;Ft(E,`calc(100% - ${t}px)`),M=new ResizeObserver(n=>{for(const t of n){const n=t.target.scrollHeight+10;Ft(E,`calc(100% - ${n}px)`)}}),M.observe(n)}$(),await Gi(),await V(),z=setInterval(G,1e3);const t=Ro.getInstance();j=t.subscribeToChar(n=>({chatPage:null==n?void 0:n.chatPage,chaId:null==n?void 0:n.chaId}),n=>{n.chatPage===o()&&n.chaId===i()||(console.log("[PCBookViewer] Chat page or character changed, reloading..."),Ea(null,!1))},500),P=t.subscribeToChar(n=>{var t,e,r;return null==(r=null==(e=null==(t=null==n?void 0:n.chats)?void 0:t[n.chatPage])?void 0:e.message)?void 0:r.length},n=>{var e,r,o;const i=mi();if(i.length!==Ge(w).length){const l=i.filter(n=>!Ge(w).includes(n));if(l.length>0){console.log("[PCBookViewer] New chat indices detected:",l);const i=t.getChar(),s=null==(o=null==(r=null==(e=null==i?void 0:i.chats)?void 0:e[i.chatPage])?void 0:r.message)?void 0:o[n-1],u=null==s?void 0:s.role,c=(null==s?void 0:s.data)||"";if("char"===u)if(c.includes("<lb-rerolling>"))Ft(A,!0),console.log("[PCBookViewer] LB module rerolling detected");else{const n=l[l.length-1];a=()=>tn(n),Ft(k,"새로운 응답이 수신되었습니다. 클릭 시 이동합니다.",!0),Ft(C,!0),Ft(S,a,!0),Ft(_,!0)}else if("user"===u){tn(l[l.length-1])}}else Ge(A)&&(Ft(A,!1),console.log("[PCBookViewer] LB module processing completed"));Ft(w,i,!0),$()}var a},1e3)}),Po(()=>{F&&clearTimeout(F),z&&clearInterval(z),M&&(M.disconnect(),M=null),j&&j(),P&&P();const n=document.getElementById("book-viewer-custom-css");n&&n.remove()});var en=_a();let rn;vr("keydown",Dt,function(n){var e;if(Ge(p))"Escape"===n.key&&Ft(p,!1);else{if("Escape"!==n.key){const n=document.activeElement;if(n&&("TEXTAREA"===n.tagName||"INPUT"===n.tagName||n.isContentEditable))return;const t=window.getSelection();if(t&&t.toString().length>0)return}"ArrowRight"===n.key||"PageDown"===n.key||" "===n.key?(n.preventDefault(),Z()):"ArrowLeft"===n.key||"PageUp"===n.key?(n.preventDefault(),Y()):"Escape"===n.key&&(null==(e=t.onClose)||e.call(t))}}),vr("resize",Dt,function(){Q()});var on=Qt(en),an=Qt(on);Li(an,{get thumbnailUrl(){return Ge(c).thumbnailUrl},get name(){return Ge(c).name},get chatIndex(){return Ge(c).chatIndex},get buttons(){return Ge(c).buttons},get chatIndexPosition(){return Ge(m)},onPrevChat:J,onNextChat:nn,get onClose(){return t.onClose}});var ln=Kt(an,2);!function(n,t){$n(t,!0);let e=zo(t,"leftContent",3,""),r=zo(t,"rightContent",3,""),o=zo(t,"leftPageNum",3,0),i=zo(t,"rightPageNum",3,0),a=zo(t,"leftContentRef",7,null);zo(t,"rightContentRef",3,null);let l=zo(t,"isLoading",3,!1),s=zo(t,"loadingMessage",3,""),u=zo(t,"liveContentButtons",19,()=>[]),c=zo(t,"imageCensored",3,!1),f=It(null),d=It(null);ie(()=>{Ge(f)&&(Ge(f).innerHTML=e(),u().length>0&&Mi(Ge(f),u()),c()?Ki(Ge(f)):Zi(Ge(f)))}),ie(()=>{Ge(d)&&(Ge(d).innerHTML=r(),u().length>0&&Mi(Ge(d),u()),c()?Ki(Ge(d)):Zi(Ge(d)))}),ie(()=>{Ge(f)&&a()!==Ge(f)&&a(Ge(f))});var v=na(),p=Qt(v);p.__click=function(...n){var e;null==(e=t.onPrevPage)||e.apply(this,n)};var h=Kt(p,2);h.__click=function(...n){var e;null==(e=t.onNextPage)||e.apply(this,n)};var g=Kt(h,2),b=Qt(g),m=Qt(b);So(m,n=>Ft(f,n),()=>Ge(f));var w=Kt(m,2),y=n=>{var t=Yi(),e=Qt(t);ue(()=>Ar(e,o())),kr(n,t)};Fr(w,n=>{o()>0&&n(y)});var x=Kt(g,4),_=Qt(x),k=Qt(_);So(k,n=>Ft(d,n),()=>Ge(d));var C=Kt(k,2),S=n=>{var t=Ji(),e=Qt(t);ue(()=>Ar(e,i())),kr(n,t)};Fr(C,n=>{i()>0&&n(S)}),Oi(Kt(x,2),{get visible(){return l()},get message(){return s()}}),kr(n,v),Vn()}(ln,{get leftContent(){return Ge(R)},get rightContent(){return Ge(D)},get leftPageNum(){return Ge(W)},get rightPageNum(){return Ge(U)},onPrevPage:Y,onNextPage:Z,get isLoading(){return Ge(y)},get loadingMessage(){return Ge(x)},get liveContentButtons(){return Ge(v)},get imageCensored(){return Ge(u).imageCensored},get leftContentRef(){return Ge(I)},set leftContentRef(n){Ft(I,n,!0)}});var sn=Kt(ln,2);sa(sn,{get currentSpread(){return Ge(s)},get totalSpreads(){return Ge(T)},onPrev:Y,onNext:Z,get isFirst(){return Ge(m).isFirst},get isLast(){return Ge(m).isLast},get prevDisabled(){return Ge(q)},get nextDisabled(){return Ge(H)},get settings(){return Ge(u)},onSettingsChange:function(n){Ft(u,n,!0),ba(Ge(u)),Q()},onOpenCustomCss:function(){Ft(p,!0)},get lbModules(){return Ge(f)},onLBModuleClick:function(n){const t=n.dataId||n.risuBtn;if(t&&Ge(d).has(t)){const n=Ge(d).get(t),e=new MouseEvent("click",{bubbles:!0,cancelable:!0});n.dispatchEvent(e)}},get isLBLoading(){return Ge(A)}});var un=Kt(sn,2);!function(n,t){$n(t,!0);let e=zo(t,"isOpen",3,!1),r=zo(t,"initialCss",3,""),o=It("");ie(()=>{e()&&Ft(o,r()||ua,!0)});var i=ca();let a;vr("keydown",Dt,function(n){var e;"Escape"===n.key&&(null==(e=t.onClose)||e.call(t))}),i.__click=function(n){var e;n.target===n.currentTarget&&(null==(e=t.onClose)||e.call(t))};var l=Qt(i),s=Qt(l);Kt(Qt(s),2).__click=function(...n){var e;null==(e=t.onClose)||e.apply(this,n)};var u=Kt(s,2),c=Qt(u),f=Qt(Kt(u,2));f.__click=function(){var n;Ft(o,ua,!0),null==(n=t.onReset)||n.call(t)},Kt(f,2).__click=function(){var n;null==(n=t.onApply)||n.call(t,Ge(o))},ue(()=>a=eo(i,1,"modal-overlay",null,a,{active:e()})),xo(c,()=>Ge(o),n=>Ft(o,n)),kr(n,i),Vn()}(un,{get isOpen(){return Ge(p)},get initialCss(){return Ge(h)},onApply:function(n){Ft(h,n,!0),wa(n),ya(n),Ft(p,!1),Q()},onReset:function(){Ft(h,""),xa(),Q()},onClose:()=>Ft(p,!1)});var cn=Kt(un,2);{let n=xt(()=>Ge(C)?5e3:2e3);da(cn,{get message(){return Ge(k)},get visible(){return Ge(_)},get duration(){return Ge(n)},get clickable(){return Ge(C)},get onClick(){return Ge(S)},onHide:function(){Ft(_,!1),Ft(k,""),Ft(C,!1),Ft(S,null)}})}So(on,n=>Ft(L,n),()=>Ge(L)),ue(()=>{go(en,"data-chat-index",r()),go(en,"data-chat-page",o()),go(en,"data-char-id",i()),rn=oo(en,"",rn,{height:Ge(E)}),go(on,"data-theme",Ge(u).theme)}),kr(n,en),Vn()}const Ca="pc-book-viewer",Sa="pc-viewer";let Aa=null;function Ea(n=null,t=!0,e=!1){if($o(Ca)&&(Ma(),t))return!0;const r=Ro.getInstance();let o=r.getDatabase(),i=vi.cloneDeep(o.theme),a=vi.cloneDeep(o.customCSS);o.theme="",o.customCSS="";try{const t=null!=n?Number(n):r.getLastChatIndex()-1,l=bi(t);if(!l)return console.warn("[PCViewer] Chat element not found for index:",t),!1;const s=hi(pi.chatScreen.displayContainer);if(!s)return console.warn("[PCViewer] Display container not found"),!1;Aa=s,Vo(s,{overflow:"hidden"},Sa);Vo(hi(pi.chatScreen.root),{overflow:"hidden"},Sa);const u=qo({id:Ca,component:ka,target:s,props:{chatHtml:l.outerHTML,chatIndex:t,chatPage:r.getCurrentChatPage(),chaId:r.getChaId(),onClose:Ma,initialLoading:e},useContents:!1});return o.theme=i,o.customCSS=a,!!u}catch(l){return o.theme=i,o.customCSS=a,console.error("[PCViewer] Failed to open:",l),!1}}function Ma(){if(Aa){Xo(Aa,Sa);Xo(hi(pi.chatScreen.root),Sa),Aa=null}return Ho(Ca)}function Na(){const n=window.innerWidth<=768,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),e="ontouchstart"in window||navigator.maxTouchPoints>0;return n||t&&e}async function Ia(n=null,t=!0,e=!1){return Ea(n,t,e)}var La=wr('<div class="header-thumbnail svelte-1p1awwn"></div>'),Fa=wr('<div class="header-thumbnail svelte-1p1awwn"></div>'),za=wr('<span class="chat-position svelte-1p1awwn"> </span>'),ja=xr('<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="svelte-1p1awwn"><path d="M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"></path></svg>'),Pa=xr('<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="svelte-1p1awwn"><path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"></path></svg>'),Ta=wr("<button><!></button>"),Ba=wr('<button title="LB 모듈"><!></button>'),Oa=wr('<header class="reader-header svelte-1p1awwn"><div class="header-row header-row-top svelte-1p1awwn"><div class="header-bot-info svelte-1p1awwn"><!> <span class="header-bot-name svelte-1p1awwn"> </span></div> <div class="header-chat-nav svelte-1p1awwn"><button class="nav-chat-btn svelte-1p1awwn" title="이전 채팅"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="15 18 9 12 15 6"></polyline></svg></button> <span class="header-chat-index svelte-1p1awwn"> <!></span> <button class="nav-chat-btn svelte-1p1awwn" title="다음 채팅"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="9 18 15 12 9 6"></polyline></svg></button></div> <button class="header-btn close-btn svelte-1p1awwn" title="닫기"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" class="svelte-1p1awwn"><path d="M18 6L6 18M6 6l12 12"></path></svg></button></div> <div class="header-row header-row-bottom svelte-1p1awwn"><div class="header-action-buttons svelte-1p1awwn"></div> <div class="header-right-group svelte-1p1awwn"><!> <!> <button class="header-toggle-btn settings-btn svelte-1p1awwn" title="설정">설정</button></div></div></header>');const Ra={hash:"svelte-1p1awwn",code:".reader-header.svelte-1p1awwn {display:flex;flex-direction:column;background:var(--mv-header-bg, rgba(26, 31, 53, 0.97));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--mv-border-color, rgba(201, 166, 107, 0.2));z-index:100;flex-shrink:0;}.header-row.svelte-1p1awwn {display:flex;align-items:center;padding:0 12px;}.header-row-top.svelte-1p1awwn {justify-content:space-between;padding-top:10px;padding-bottom:6px;}.header-row-bottom.svelte-1p1awwn {justify-content:space-between;padding-top:4px;padding-bottom:10px;border-top:1px solid rgba(255, 255, 255, 0.06);}.header-btn.svelte-1p1awwn {background:none;border:none;color:rgba(255, 255, 255, 0.85);padding:8px;cursor:pointer;border-radius:10px;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:36px;min-height:36px;}.header-btn.svelte-1p1awwn:active {background:rgba(201, 166, 107, 0.2);color:var(--mv-accent-color, #c9a66b);transform:scale(0.95);}.header-btn.svelte-1p1awwn svg:where(.svelte-1p1awwn) {width:18px;height:18px;}\n\n /* 닫기 버튼 */.close-btn.svelte-1p1awwn {background:rgba(255, 255, 255, 0.08);border-radius:50%;color:rgba(255, 255, 255, 0.7);}.close-btn.svelte-1p1awwn:active {background:rgba(255, 100, 100, 0.3);color:#ff6b6b;}\n\n /* 봇 정보 */.header-bot-info.svelte-1p1awwn {display:flex;align-items:center;gap:8px;min-width:0;flex-shrink:1;}.header-thumbnail.svelte-1p1awwn {width:32px;height:32px;min-width:32px;border-radius:8px;background-size:cover;background-position:center;background-color:rgba(255, 255, 255, 0.1);box-shadow:0 2px 6px rgba(0, 0, 0, 0.2);}.header-bot-name.svelte-1p1awwn {font-size:14px;font-weight:600;color:var(--mv-accent-color, #c9a66b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;}\n\n /* 채팅 네비게이션 */.header-chat-nav.svelte-1p1awwn {display:flex;align-items:center;justify-content:center;gap:4px;flex:1;}.nav-chat-btn.svelte-1p1awwn {background:none;border:none;color:rgba(255, 255, 255, 0.6);padding:6px;cursor:pointer;border-radius:6px;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;}.nav-chat-btn.svelte-1p1awwn:active:not(:disabled) {background:rgba(201, 166, 107, 0.2);color:var(--mv-accent-color, #c9a66b);}.nav-chat-btn.svelte-1p1awwn:disabled {opacity:0.3;cursor:not-allowed;}.header-chat-index.svelte-1p1awwn {font-size:12px;font-weight:500;color:rgba(255, 255, 255, 0.6);background:rgba(255, 255, 255, 0.08);padding:4px 8px;border-radius:8px;display:flex;align-items:center;gap:4px;}.chat-position.svelte-1p1awwn {font-size:10px;opacity:0.7;}\n\n /* 액션 버튼들 */.header-action-buttons.svelte-1p1awwn {display:flex;align-items:center;gap:2px;}.header-action-buttons.svelte-1p1awwn button,\n .header-action-buttons.svelte-1p1awwn .header-action-btn {background:none;border:none;padding:6px;cursor:pointer;color:rgba(255, 255, 255, 0.6);border-radius:8px;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;}.header-action-buttons.svelte-1p1awwn button:active,\n .header-action-buttons.svelte-1p1awwn .header-action-btn:active {background:rgba(201, 166, 107, 0.2);color:var(--mv-accent-color, #c9a66b);}.header-action-buttons.svelte-1p1awwn button svg,\n .header-action-buttons.svelte-1p1awwn .header-action-btn svg {width:18px;height:18px;}\n\n /* 우측 그룹 */.header-right-group.svelte-1p1awwn {display:flex;align-items:center;gap:8px;}.header-toggle-btn.svelte-1p1awwn {background:rgba(255, 255, 255, 0.1);border:1px solid rgba(255, 255, 255, 0.2);color:var(--mv-accent-color, #c9a66b);padding:4px 10px;font-size:11px;font-weight:700;border-radius:8px;cursor:pointer;transition:all\n var(--mv-transition-fast, 0.15s cubic-bezier(0.4, 0, 0.2, 1));min-height:32px;}.header-toggle-btn.svelte-1p1awwn:active {background:var(--mv-accent-color, #c9a66b);color:white;transform:scale(0.95);}.header-toggle-btn.active.svelte-1p1awwn {background:var(--mv-accent-color, #c9a66b);color:white;border-color:var(--mv-accent-color, #c9a66b);}.fullscreen-btn.svelte-1p1awwn {display:flex;align-items:center;justify-content:center;padding:4px 8px;}.fullscreen-btn.svelte-1p1awwn svg:where(.svelte-1p1awwn) {flex-shrink:0;}\n\n /* LB 버튼 로딩 상태 */.lb-btn.loading.svelte-1p1awwn {opacity:0.7;cursor:wait;}.lb-btn.loading.svelte-1p1awwn svg {\n animation: svelte-1p1awwn-spin 1s linear infinite;}\n\n @keyframes svelte-1p1awwn-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n\n /* Safe Area */\n @supports (padding-top: env(safe-area-inset-top)) {.header-row-top.svelte-1p1awwn {padding-top:max(10px, env(safe-area-inset-top));}\n }"};function Da(n,t){$n(t,!0),Gr(n,Ra);const e=Ro.getInstance();let r=zo(t,"thumbnailUrl",3,""),o=zo(t,"name",3,""),i=zo(t,"chatIndex",3,null),a=zo(t,"buttons",19,()=>[]),l=zo(t,"chatIndexPosition",19,()=>({position:0,total:0,isFirst:!0,isLast:!0})),s=zo(t,"showLBButton",3,!1),u=zo(t,"isFullscreen",3,!1),c=zo(t,"isLBLoading",3,!1),f=zo(t,"onBack",3,()=>{}),d=zo(t,"onPrevChat",3,()=>{}),v=zo(t,"onNextChat",3,()=>{}),p=zo(t,"onFullscreenToggle",3,()=>{}),h=zo(t,"onLBToggle",3,()=>{}),g=zo(t,"onSettingsToggle",3,()=>{}),b=It(null);const m=xt(()=>"undefined"!=typeof navigator&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1));ie(()=>{Ge(b)&&a().length>0&&Ei(a(),Ge(b),{clearContainer:!0,additionalClasses:["header-action-btn"]})});var w=Oa(),y=Qt(w),x=Qt(y),_=Qt(x),k=n=>{var t=La();ue(()=>oo(t,`background-image: url('${r()??""}')`)),kr(n,t)},C=n=>{kr(n,Fa())};Fr(_,n=>{r()?n(k):n(C,!1)});var S=Qt(Kt(_,2)),A=Kt(x,2),E=Qt(A);E.__click=function(...n){var t;null==(t=d())||t.apply(this,n)};var M=Kt(E,2),N=Qt(M),I=Kt(N),L=n=>{var t=za(),e=Qt(t);ue(()=>Ar(e,`(${l().currentIndex??""}/${l().lastIndex??""})`)),kr(n,t)};Fr(I,n=>{l().total>0&&n(L)});var F=Kt(M,2);F.__click=function(...n){var t;null==(t=v())||t.apply(this,n)},Kt(A,2).__click=function(...n){var t;null==(t=f())||t.apply(this,n)};var z=Qt(Kt(y,2));So(z,n=>Ft(b,n),()=>Ge(b));var j=Qt(Kt(z,2)),P=n=>{var t=Ta();let e;t.__click=function(...n){var t;null==(t=p())||t.apply(this,n)};var r=Qt(t),o=n=>{kr(n,ja())},i=n=>{kr(n,Pa())};Fr(r,n=>{u()?n(o):n(i,!1)}),ue(()=>{e=eo(t,1,"header-toggle-btn fullscreen-btn svelte-1p1awwn",null,e,{active:u()}),go(t,"title",u()?"전체화면 해제":"전체화면")}),kr(n,t)};Fr(j,n=>{Ge(m)||n(P)});var T=Kt(j,2),B=n=>{var t=Ba();let e;t.__click=function(...n){var t;null==(t=h())||t.apply(this,n)};var r=Qt(t),o=n=>{Ai(n,{size:14})},i=n=>{kr(n,function(n=""){var t=$t(n+"");return mr(t,t),t}("LB"))};Fr(r,n=>{c()?n(o):n(i,!1)}),ue(()=>{e=eo(t,1,"header-toggle-btn lb-btn svelte-1p1awwn",null,e,{loading:c()}),t.disabled=c()}),kr(n,t)};Fr(T,n=>{s()&&n(B)}),Kt(T,2).__click=function(...n){var t;null==(t=g())||t.apply(this,n)},ue(n=>{Ar(S,n),E.disabled=l().isFirst,Ar(N,`#${i()??""} `),F.disabled=l().isLast},[()=>{var n;return o()||(null==(n=e.getChar())?void 0:n.name)||"Unknown"}]),kr(n,w),Vn()}pr(["click"]);var Wa=wr('<span class="page-number"> </span>'),Ua=wr('<div class="page-container"><div class="page-content"><div class="text-content chattext"><!></div> <!></div> <!></div>');const qa={hash:"svelte-1slpgjp",code:""};function Ha(n,t){$n(t,!0),Gr(n,qa);let e=zo(t,"content",3,""),r=zo(t,"pageNum",3,0),o=zo(t,"isLoading",3,!1),i=zo(t,"loadingMessage",3,""),a=zo(t,"liveContentButtons",19,()=>[]),l=zo(t,"imageCensored",3,!1),s=It(null);ie(()=>{Ge(s)&&e()&&requestAnimationFrame(()=>{Ge(s).scrollTop=0,a().length>0&&Mi(Ge(s),a()),l()?Ki(Ge(s)):Zi(Ge(s))})});var u=Ua(),c=Qt(u),f=Qt(c);!function(n,t,e=!1,r=!1){var o=n,i="";ue(()=>{var n=Ie;if(i!==(i=t()??"")&&(null!==n.nodes&&(ge(n.nodes.start,n.nodes.end),n.nodes=null),""!==i)){var a=i+"";e?a=`<svg>${a}</svg>`:r&&(a=`<math>${a}</math>`);var l=br(a);if((e||r)&&(l=Vt(l)),mr(Vt(l),l.lastChild),e||r)for(;Vt(l);)o.before(Vt(l));else o.before(l)}})}(Qt(f),e),So(f,n=>Ft(s,n),()=>Ge(s));var d=Kt(f,2),v=n=>{var t=Wa(),e=Qt(t);ue(()=>Ar(e,r())),kr(n,t)};Fr(d,n=>{r()>0&&n(v)}),Oi(Kt(c,2),{get visible(){return o()},get message(){return i()}}),kr(n,u),Vn()}var $a=wr('<footer class="reader-footer"><button class="nav-btn prev-btn" title="이전"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="15 18 9 12 15 6"></polyline></svg> <span class="btn-label">이전</span></button> <div class="page-info"><div class="progress-bar"><div class="progress-fill"></div></div> <span class="page-indicator"> </span></div> <button class="nav-btn next-btn" title="다음"><span class="btn-label">다음</span> <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><polyline points="9 18 15 12 9 6"></polyline></svg></button></footer>');pr(["click"]);var Va=wr("<button> </button>"),Xa=wr('<div class="settings-panel active"><div class="panel-overlay"></div> <div class="panel-content"><div class="panel-header"><h3>설정</h3> <button class="panel-close">✕</button></div> <div class="panel-body"><div class="setting-item"><label for="fontSelector">폰트</label> <div class="font-selector" id="fontSelector"></div></div> <div class="setting-item"><label for="fontSize">글자 크기</label> <div class="range-control"><span class="range-label">작게</span> <input name="fontSize" type="range" min="14" max="20" step="1"/> <span class="range-label">크게</span></div> <span class="setting-value"> </span></div> <div class="setting-item"><label for="lineHeight">줄 간격</label> <div class="range-control"><span class="range-label">좁게</span> <input type="range" name="lineHeight" min="1.4" max="2.2" step="0.1"/> <span class="range-label">넓게</span></div> <span class="setting-value"> </span></div> <div class="setting-item"><label for="themeButtons">테마</label> <div class="theme-buttons" id="themeButtons"><button><span class="theme-preview light"></span> 밝게</button> <button><span class="theme-preview sepia"></span> 세피아</button> <button><span class="theme-preview dark"></span> 어둡게</button></div></div> <div class="setting-item toggle-item"><div class="toggle-content"><span class="toggle-label">이미지 검열</span> <span class="toggle-description">이미지 위에 검열 오버레이 표시</span></div> <label class="toggle-switch"><input type="checkbox"/> <span class="toggle-slider"></span></label></div> <div class="setting-item"><button class="custom-css-btn">사용자 CSS 편집</button></div></div></div></div>');function Qa(n,t){$n(t,!0);let e=zo(t,"isOpen",3,!1),r=zo(t,"settings",19,()=>({fontSize:17,lineHeight:1.85,theme:"dark",fontFamily:"Pretendard",imageCensored:!1})),o=zo(t,"onSettingsChange",3,()=>{}),i=zo(t,"onOpenCustomCss",3,()=>{}),a=zo(t,"onClose",3,()=>{});const l=["Pretendard","나눔스퀘어네오","에스코어드림","레페리포인트","플렉스","스위트","오르빗","스쿨오르빗","프리티나잇","서라운드에어","고운돋움","고운바탕","리디바탕","마루부리","도스고딕","스타더스트","픽시드시스","네오둥근모"];function s(n){o()({...r(),fontSize:Number(n.target.value)})}function u(n){o()({...r(),lineHeight:Number(n.target.value)})}function c(n){o()({...r(),theme:n})}function f(n){o()({...r(),imageCensored:n.target.checked})}function d(){a()()}function v(n){n.stopPropagation()}var p=_r(),h=Gt(p),g=n=>{var t=Xa(),e=Qt(t);e.__click=d;var p=Kt(e,2);p.__click=v;var h=Qt(p);Kt(Qt(h),2).__click=function(...n){var t;null==(t=a())||t.apply(this,n)};var g=Qt(Kt(h,2));Tr(Kt(Qt(g),2),21,()=>l,zr,(n,t)=>{var e=Va();let i;e.__click=()=>{return n=Ge(t),void o()({...r(),fontFamily:n});var n};var a=Qt(e);ue(()=>{i=eo(e,1,"font-option",null,i,{active:r().fontFamily===Ge(t)}),oo(e,`font-family: '${Ge(t)??""}'`),Ar(a,Ge(t))}),kr(n,e)});var b=Kt(g,2),m=Kt(Qt(b),2),w=Kt(Qt(m),2);w.__input=s;var y=Qt(Kt(m,2)),x=Kt(b,2),_=Kt(Qt(x),2),k=Kt(Qt(_),2);k.__input=u;var C=Qt(Kt(_,2)),S=Kt(x,2),A=Kt(Qt(S),2),E=Qt(A);let M;E.__click=()=>c("light");var N=Kt(E,2);let I;N.__click=()=>c("sepia");var L=Kt(N,2);let F;L.__click=()=>c("dark");var z=Kt(S,2),j=Kt(Qt(z),2),P=Qt(j);P.__change=f,Qt(Kt(z,2)).__click=function(...n){var t;null==(t=i())||t.apply(this,n)},ue(n=>{vo(w,r().fontSize),Ar(y,`${r().fontSize??""}px`),vo(k,r().lineHeight),Ar(C,n),M=eo(E,1,"theme-btn",null,M,{active:"light"===r().theme}),I=eo(N,1,"theme-btn",null,I,{active:"sepia"===r().theme}),F=eo(L,1,"theme-btn",null,F,{active:"dark"===r().theme}),po(P,r().imageCensored)},[()=>r().lineHeight.toFixed(1)]),kr(n,t)};Fr(h,n=>{e()&&n(g)}),kr(n,p),Vn()}pr(["click","input","change"]);var Ga=wr('<button class="lb-module-item"> </button>'),Ka=wr('<div class="lb-modules-list"></div>'),Za=wr('<div class="lb-empty">모듈이 없습니다</div>'),Ya=wr('<div class="lb-panel active"><div class="panel-overlay"></div> <div class="panel-content"><div class="panel-header"><h3>LB 모듈</h3> <button class="panel-close">✕</button></div> <div class="panel-body"><!></div></div></div>');function Ja(n,t){$n(t,!0);let e=zo(t,"isOpen",3,!1),r=zo(t,"modules",19,()=>[]),o=zo(t,"onModuleClick",3,()=>{}),i=zo(t,"onClose",3,()=>{});function a(){i()()}function l(n){n.stopPropagation()}var s=_r(),u=Gt(s),c=n=>{var t=Ya(),e=Qt(t);e.__click=a;var s=Kt(e,2);s.__click=l;var u=Qt(s);Kt(Qt(u),2).__click=function(...n){var t;null==(t=i())||t.apply(this,n)};var c=Qt(Kt(u,2)),f=n=>{var t=Ka();Tr(t,21,r,zr,(n,t)=>{var e=Ga();e.__click=()=>function(n){o()(n),i()()}(Ge(t));var r=Qt(e);ue(n=>Ar(r,n),[()=>function(n,t=30){return n?n.length>t?n.slice(0,t)+"...":n:""}(Ge(t).label)]),kr(n,e)}),kr(n,t)},d=n=>{kr(n,Za())};Fr(c,n=>{r().length>0?n(f):n(d,!1)}),kr(n,t)};Fr(u,n=>{e()&&n(c)}),kr(n,s),Vn()}pr(["click"]);var nl=wr('<div class="modal-overlay" role="button" tabindex="0"><div class="modal-content" role="dialog" tabindex="-1"><div class="modal-header"><h3>사용자 CSS 편집</h3> <button class="modal-close">×</button></div> <div class="modal-body"><textarea placeholder="여기에 CSS를 입력하세요..." spellcheck="false"></textarea></div> <div class="modal-footer"><button class="modal-btn secondary">초기화</button> <button class="modal-btn primary">적용</button></div></div></div>');pr(["click","keydown"]);class tl{constructor(n={}){this.splittableTags=n.splittableTags||["p","div"],this.minHeightRatio=n.minHeightRatio||.85}isSplittable(n){var t;const e=null==(t=n.tagName)?void 0:t.toLowerCase();if(!this.splittableTags.includes(e))return!1;return!n.querySelector("mark, strong, em, a, code")}splitElement(n,t,e){if(!this.isSplittable(n))return[n.cloneNode(!0)];const r=n.cloneNode(!0);t.innerHTML="",t.appendChild(r);return t.scrollHeight<=e?[n.cloneNode(!0)]:this._splitBySentence(n,t,e)}_splitBySentence(n,t,e){console.log("splitBySentence");const r=n.tagName.toLowerCase(),o=n.innerText||n.textContent||"",i=this._splitIntoSentences(o);if(i.length<=1)return this._splitByWords(n,t,e);const a=[];let l=[];for(const s of i){const o=[...l,s].join(""),i=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{i.setAttribute(n.name,n.value)}),i.textContent=o,t.innerHTML="",t.appendChild(i),t.scrollHeight<=e)l.push(s);else{if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}l=[s]}}if(l.length>0){const t=document.createElement(r);Array.from(n.attributes).forEach(n=>{t.setAttribute(n.name,n.value)}),t.textContent=l.join(""),a.push(t)}return a.length>0?a:[n.cloneNode(!0)]}_splitIntoSentences(n){return n.split(new RegExp("(?<=[.!?。!?])\\s*")).filter(n=>n.length>0)}_splitByWords(n,t,e){const r=n.tagName.toLowerCase(),o=n.innerText||n.textContent||"",i=this._tokenize(o);if(0===i.length)return[n.cloneNode(!0)];const a=[];let l=0;for(;l<i.length;){let o=l+1,s=l+1;for(;o<=i.length;){const a=i.slice(l,o).join(""),u=document.createElement(r);if(Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=a,t.innerHTML="",t.appendChild(u),!(t.scrollHeight<=e))break;s=o,o++}const u=document.createElement(r);Array.from(n.attributes).forEach(n=>{u.setAttribute(n.name,n.value)}),u.textContent=i.slice(l,s).join(""),a.push(u),l=s}return a}_tokenize(n){const t=[];let e="",r=null;for(const o of n){const n=this._getCharType(o);"space"===n?(e&&(t.push(e),e=""),t.push(o)):"korean"===n?(e&&"korean"!==r&&(t.push(e),e=""),e&&t.push(e),t.push(o),e=""):(r&&r!==n&&"space"!==r&&(t.push(e),e=""),e+=o),r=n}return e&&t.push(e),t}_getCharType(n){return/\s/.test(n)?"space":/[\u3131-\uD79D]/.test(n)?"korean":/[\u3040-\u30FF]/.test(n)?"japanese":/[\u4E00-\u9FFF]/.test(n)?"chinese":/[a-zA-Z]/.test(n)?"english":/[0-9]/.test(n)?"number":"other"}static createMeasureContainer(n){const t=document.createElement("div"),e=getComputedStyle(n);return t.className="text-content chattext",t.style.cssText=`\n position: absolute;\n visibility: hidden;\n pointer-events: none;\n width: ${n.clientWidth}px;\n padding: ${e.padding};\n font-size: ${e.fontSize};\n line-height: ${e.lineHeight};\n font-family: ${e.fontFamily};\n overflow: hidden;\n `,t}}var el=wr('<div class="risu-chat"><div class="mobile-reader"><!> <!> <!> <!> <!> <!> <!></div></div>');function rl(n,t){$n(t,!0);let e=zo(t,"chatHtml",7,""),r=zo(t,"chatIndex",3,0),o=zo(t,"chatPage",3,0),i=zo(t,"chaId",3,null),a=zo(t,"initialLoading",3,!1),l=It(Bt([])),s=It(0),u=It(Bt({fontSize:17,lineHeight:1.85,theme:"dark",fontFamily:"Pretendard",imageCensored:!1})),c=It(Bt({thumbnailUrl:"",name:"",chatIndex:0,buttons:[]})),f=It(Bt([])),d=It(Bt(new Map)),v=It(Bt([])),p=It(""),h=It(null),g=It(""),b=It(Bt({position:0,total:0,isFirst:!0,isLast:!0})),m=It(Bt([])),w=It(!1),y=It(!1),x=It(!1),_=It(!1),k=It(!1),C=It(""),S=It(!1),A=It(""),E=It(!1),M=It(null),N=It(!1);ie(()=>{Ft(k,a()),Ft(C,a()?"Loading...":"",!0)});let I=new tl({splittableTags:["p","div"]}),L=It(null),F=It("100%"),z=null,j=null,P=null,T=null,B=null,O=null,R=null,D=xt(()=>Ge(l).length),W=xt(()=>Ge(l)[Ge(s)]||""),U=xt(()=>Ge(s)+1);function q(){Ft(m,mi(),!0),Ft(b,yi(r()),!0)}async function H(){if(!e())return;Ft(g,e(),!0);const n=(new DOMParser).parseFromString(e(),"text/html");Ft(c,Hi(n),!0),Ge(c).chatIndex=r();const t=bi(r());t&&(Ge(c).buttons=$i(t),Ft(v,Vi(t),!0),Ft(d,Xi(t),!0)),Ft(f,Qi(n),!0);const o=n.querySelector(".chattext");o&&(Wi(o),Ft(h,o.cloneNode(!0),!0),await Gi(),await $(),Ge(k)&&setTimeout(()=>{Ft(k,!1),Ft(C,"")},100))}async function $(){if(!Ge(h))return;const n=document.querySelector(".mobile-reader .text-content");if(!n){await Gi();if(!document.querySelector(".mobile-reader .text-content"))return}const t=Di(n||document.body);document.body.appendChild(t);try{Ft(l,Ui(Ge(h).cloneNode(!0),t,I),!0)}finally{document.body.removeChild(t)}}function V(){P&&clearTimeout(P),P=setTimeout(()=>{!async function(){if(!Ge(h))return;const n=Ge(s);Ft(l,[],!0),Ft(s,0),await Gi(),await $();const t=Math.max(0,Ge(l).length-1);Ft(s,Math.min(n,t),!0)}()},300)}function X(){const n=bi(r());if(n){const t=n.outerHTML;t!==Ge(g)&&(Ft(g,t,!0),e(t),H())}}function Q(n){Ft(A,n,!0),Ft(E,!1),Ft(M,null),Ft(S,!0)}function G(n){n!==r()&&al(n,!1,!0)}function K(){Ge(s)>=Ge(l).length-1?J():jt(s)}function Z(){0!==Ge(s)?jt(s,-1):Y()}function Y(){const{index:n,isFirst:t}=wi(r(),"prev");null!==n?al(n,!1,!0):t&&Q("현재 채팅의 첫 번째 페이지입니다")}function J(){const{index:n,isLast:t}=wi(r(),"next");null!==n?al(n,!1,!0):t&&Q("현재 채팅의 마지막 페이지입니다")}ie(()=>{Ge(L)&&(Ge(L).style.setProperty("--mv-font-size",`${Ge(u).fontSize}px`),Ge(L).style.setProperty("--mv-line-height",String(Ge(u).lineHeight)),Ge(L).style.setProperty("--mv-font-family",Ge(u).fontFamily),Ge(L).style.setProperty("--risu-font-family",Ge(u).fontFamily),Ge(L).setAttribute("data-theme",Ge(u).theme))}),jo(async()=>{const n=hi(pi.chatScreen.textarea);if(n){const t=n.scrollHeight+10;Ft(F,`calc(100% - ${t}px)`),z=new ResizeObserver(n=>{for(const t of n){const n=t.target.scrollHeight+10;Ft(F,`calc(100% - ${n}px)`)}}),z.observe(n),vi.isNil(j)||(j.disconnect(),j=null),j=new MutationObserver(()=>{nn()}),j.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style","class"]})}Ft(u,ga(),!0),Ft(p,ma(),!0),Ge(p)&&ya(Ge(p)),q(),await Gi(),await H(),T=setInterval(X,1e3),R=function(n={}){const{onSwipeLeft:t=()=>{},onSwipeRight:e=()=>{},threshold:r=50,velocityThreshold:o=.3,maxVerticalRatio:i=.75}=n;let a=0,l=0,s=0,u=!1;return{touchStart:function(n){if(1!==n.touches.length)return;const t=n.touches[0];a=t.clientX,l=t.clientY,s=Date.now(),u=!0},touchMove:function(n){if(!u||1!==n.touches.length)return;const t=n.touches[0];t.clientX,t.clientY},touchEnd:function(n){if(!u)return;u=!1;const c=n.changedTouches[0],f=c.clientX-a,d=c.clientY-l,v=Date.now()-s;if(Math.abs(d)>Math.abs(f)*i)return;const p=Math.abs(f)/v;(Math.abs(f)>r||p>o&&Math.abs(f)>30)&&(f>0?e():t())},touchCancel:function(){u=!1}}}({onSwipeLeft:K,onSwipeRight:Z,threshold:50}),Ge(L)&&(Ge(L).addEventListener("touchstart",R.touchStart,{passive:!0}),Ge(L).addEventListener("touchmove",R.touchMove,{passive:!0}),Ge(L).addEventListener("touchend",R.touchEnd,{passive:!0}));const t=Ro.getInstance();B=t.subscribeToChar(n=>({chatPage:null==n?void 0:n.chatPage,chaId:null==n?void 0:n.chaId}),n=>{n.chatPage===o()&&n.chaId===i()||(console.log("[MobileBookViewer] Chat page or character changed, reloading..."),al(null,!1))},500),O=t.subscribeToChar(n=>{var t,e,r;return null==(r=null==(e=null==(t=null==n?void 0:n.chats)?void 0:t[n.chatPage])?void 0:e.message)?void 0:r.length},n=>{var e,r,o;const i=mi();if(i.length!==Ge(m).length){const l=i.filter(n=>!Ge(m).includes(n));if(l.length>0){const i=t.getChar(),s=null==(o=null==(r=null==(e=null==i?void 0:i.chats)?void 0:e[i.chatPage])?void 0:r.message)?void 0:o[n-1],u=null==s?void 0:s.role,c=(null==s?void 0:s.data)||"";if("char"===u)if(c.includes("<lb-rerolling>"))Ft(N,!0);else{const n=l[l.length-1];a=()=>G(n),Ft(A,"새로운 응답이 수신되었습니다. 클릭 시 이동합니다.",!0),Ft(E,!0),Ft(M,a,!0),Ft(S,!0)}else if("user"===u){G(l[l.length-1])}}else Ge(N)&&Ft(N,!1);Ft(m,i,!0),q()}var a},1e3)}),Po(()=>{P&&clearTimeout(P),T&&clearInterval(T),z&&(z.disconnect(),z=null),j&&(j.disconnect(),j=null),Ge(L)&&R&&(Ge(L).removeEventListener("touchstart",R.touchStart),Ge(L).removeEventListener("touchmove",R.touchMove),Ge(L).removeEventListener("touchend",R.touchEnd)),B&&B(),O&&O();const n=document.getElementById("book-viewer-custom-css");n&&n.remove()});const nn=vi.debounce(function(){const n=hi(pi.setting.root);n&&(console.log(n),ll())},100);var tn=el();vr("keydown",Dt,function(n){var e;if(Ge(x))"Escape"===n.key&&Ft(x,!1);else if(Ge(w)||Ge(y))"Escape"===n.key&&(Ft(w,!1),Ft(y,!1));else{if("Escape"!==n.key){const n=document.activeElement;if(n&&("TEXTAREA"===n.tagName||"INPUT"===n.tagName||n.isContentEditable))return;const t=window.getSelection();if(t&&t.toString().length>0)return}"ArrowRight"===n.key||"PageDown"===n.key||" "===n.key?(n.preventDefault(),K()):"ArrowLeft"===n.key||"PageUp"===n.key?(n.preventDefault(),Z()):"Escape"===n.key&&(null==(e=t.onClose)||e.call(t))}}),vr("resize",Dt,function(){V()}),vr("fullscreenchange",Wt,function(){Ft(_,!!document.fullscreenElement)});var en=Qt(tn);let rn;var on=Qt(en);{let n=xt(()=>Ge(f).length>0);Da(on,{get thumbnailUrl(){return Ge(c).thumbnailUrl},get name(){return Ge(c).name},get chatIndex(){return Ge(c).chatIndex},get buttons(){return Ge(c).buttons},get chatIndexPosition(){return Ge(b)},get showLBButton(){return Ge(n)},get isFullscreen(){return Ge(_)},get isLBLoading(){return Ge(N)},get onBack(){return t.onClose},onPrevChat:Y,onNextChat:J,onFullscreenToggle:async function(){var n,t,e;try{document.fullscreenElement?(await(null==(e=document.exitFullscreen)?void 0:e.call(document)),Ft(_,!1)):(await(null==(t=null==(n=document.documentElement)?void 0:n.requestFullscreen)?void 0:t.call(n)),Ft(_,!0))}catch(r){console.warn("[MobileViewer] Fullscreen error:",r)}},onLBToggle:function(){Ft(y,!Ge(y)),Ge(y)&&Ft(w,!1)},onSettingsToggle:function(){Ft(w,!Ge(w)),Ge(w)&&Ft(y,!1)}})}var an=Kt(on,2);Ha(an,{get content(){return Ge(W)},get pageNum(){return Ge(U)},get isLoading(){return Ge(k)},get loadingMessage(){return Ge(C)},get liveContentButtons(){return Ge(v)},get imageCensored(){return Ge(u).imageCensored}});var ln=Kt(an,2);{let n=xt(()=>0===Ge(s)),t=xt(()=>Ge(s)>=Ge(D)-1);!function(n,t){let e=zo(t,"currentPage",3,0),r=zo(t,"totalPages",3,0),o=zo(t,"isFirst",3,!0),i=zo(t,"isLast",3,!0),a=zo(t,"onPrev",3,()=>{}),l=zo(t,"onNext",3,()=>{}),s=zo(t,"prevDisabled",3,!1),u=zo(t,"nextDisabled",3,!1),c=xt(()=>r()>0?(e()+1)/r()*100:0);var f=$a(),d=Qt(f);d.__click=function(...n){var t;null==(t=a())||t.apply(this,n)};var v=Kt(d,2),p=Qt(v),h=Qt(p),g=Qt(Kt(p,2)),b=Kt(v,2);b.__click=function(...n){var t;null==(t=l())||t.apply(this,n)},ue(()=>{d.disabled=o()&&s(),oo(h,`width: ${Ge(c)??""}%`),Ar(g,`${e()+1} / ${r()??""}`),b.disabled=i()&&u()}),kr(n,f)}(ln,{get currentPage(){return Ge(s)},get totalPages(){return Ge(D)},get isFirst(){return Ge(b).isFirst},get isLast(){return Ge(b).isLast},onPrev:Z,onNext:K,get prevDisabled(){return Ge(n)},get nextDisabled(){return Ge(t)}})}var sn=Kt(ln,2);Qa(sn,{get isOpen(){return Ge(w)},get settings(){return Ge(u)},onSettingsChange:function(n){Ft(u,n,!0),ba(Ge(u)),V()},onOpenCustomCss:function(){Ft(w,!1),Ft(x,!0)},onClose:()=>Ft(w,!1)});var un=Kt(sn,2);Ja(un,{get isOpen(){return Ge(y)},get modules(){return Ge(f)},onModuleClick:function(n){const t=n.dataId||n.risuBtn;if(t&&Ge(d).has(t)){const n=Ge(d).get(t),e=new MouseEvent("click",{bubbles:!0,cancelable:!0});n.dispatchEvent(e)}},onClose:()=>Ft(y,!1)});var cn=Kt(un,2);!function(n,t){$n(t,!0);let e=zo(t,"isOpen",3,!1),r=zo(t,"initialCss",3,""),o=zo(t,"onApply",3,()=>{}),i=zo(t,"onReset",3,()=>{}),a=zo(t,"onClose",3,()=>{}),l=It("");function s(){o()(Ge(l)),a()()}function u(){Ft(l,""),i()()}function c(){a()()}function f(n){n.stopPropagation()}ie(()=>{e()&&Ft(l,r())});var d=_r();vr("keydown",Dt,function(n){"Escape"===n.key&&a()()});var v=Gt(d),p=n=>{var t=nl();t.__click=c,t.__keydown=n=>"Enter"===n.key&&c();var e=Qt(t);e.__click=f,e.__keydown=n=>n.stopPropagation();var r=Qt(e);Kt(Qt(r),2).__click=function(...n){var t;null==(t=a())||t.apply(this,n)};var o=Kt(r,2),i=Qt(o),d=Qt(Kt(o,2));d.__click=u,Kt(d,2).__click=s,xo(i,()=>Ge(l),n=>Ft(l,n)),kr(n,t)};Fr(v,n=>{e()&&n(p)}),kr(n,d),Vn()}(cn,{get isOpen(){return Ge(x)},get initialCss(){return Ge(p)},onApply:function(n){Ft(p,n,!0),wa(n),ya(n),Ft(x,!1),V()},onReset:function(){Ft(p,""),xa(),V()},onClose:()=>Ft(x,!1)}),da(Kt(cn,2),{get message(){return Ge(A)},get visible(){return Ge(S)},duration:2e3,get clickable(){return Ge(E)},get onClick(){return Ge(M)},onHide:function(){Ft(S,!1),Ft(A,""),Ft(E,!1),Ft(M,null)}}),So(en,n=>Ft(L,n),()=>Ge(L)),ue(()=>{go(tn,"data-chat-index",r()),go(tn,"data-chat-page",o()),go(tn,"data-char-id",i()),go(en,"data-theme",Ge(u).theme),rn=oo(en,"",rn,{height:Ge(F),padding:"unset !important"})}),kr(n,tn),Vn()}const ol="mobile-book-viewer",il="mobile-viewer";function al(n=null,t=!0,e=!1){if(t&&$o(ol))return void ll();$o(ol)&&Ho(ol);const r=Ro.getInstance(),o=null!=n?Number(n):r.getLastChatIndex()-1,i=bi(o);if(!i)return void console.warn("[MobileViewer] Chat element not found for index:",o);const a=i.outerHTML,l=r.getCurrentChatPage(),s=r.getChaId(),u=hi(pi.chatScreen.displayContainer);u&&Vo(u,{overflow:"hidden"},il),qo({id:ol,component:rl,target:document.body,props:{chatHtml:a,chatIndex:o,chatPage:l,chaId:s,onClose:ll,initialLoading:e}})}async function ll(){var n;const t=hi(pi.chatScreen.displayContainer);t&&Xo(t,il),document.fullscreenElement&&await(null==(n=document.exitFullscreen)?void 0:n.call(document)),Ho(ol)}var sl=wr('<button class="flex justify-center border-y border-darkborderc items-center text-gray-100 p-3 peer-focus:border-textcolor hover:bg-blue-500 transition-colors button-icon-ebook" title="이북 리수 기립하시오"><!></button>');function ul(n,t){$n(t,!0);let e=It("44px"),r=null;jo(()=>{const n=hi(pi.chatScreen.textarea);n&&(Ft(e,`${n.scrollHeight}px`),r=new ResizeObserver(n=>{for(const t of n){const n=t.target.scrollHeight;Ft(e,`${n}px`)}}),r.observe(n))}),Po(()=>{r&&(r.disconnect(),r=null)});var o=sl();let i;o.__click=async function(n){n.stopPropagation(),Na()?await al():await Ia()},function(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20"}]];ki(n,Fo({name:"book"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Qt(o),{}),ue(()=>i=oo(o,"",i,{height:Ge(e)})),kr(n,o),Vn()}pr(["click"]);var cl=wr('<button class="ml-2 hover:text-blue-500 transition-colors button-small-book" title="이북 뷰어로 보기"><!></button>');function fl(n,t){$n(t,!0);var e=cl();e.__click=async function(n){n.stopPropagation(),Na()?await al():await Ia(t.chatIndex)},function(n,t){const e=Io(t,["children","$$slots","$$events","$$legacy"]),r=[["path",{d:"M12 7v14"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"}]];ki(n,Fo({name:"book-open"},()=>e,{get iconNode(){return r},children:(n,e)=>{var r=_r();Dr(Gt(r),t,"default",{}),kr(n,r)},$$slots:{default:!0}}))}(Qt(e),{size:20}),kr(n,e),Vn()}function dl(n,t){$n(t,!0);let e=It(null),r=It(null);const o=vi.debounce(function(){const n=hi(pi.chatScreen.inputContainer),t=hi(pi.chatScreen.sendButton);vi.isNil(n)||qo({id:"book-button",component:ul,target:n,anchor:t});const e=gi(pi.chatMessage.botButtonDiv);vi.isNil(e)||e.forEach(n=>{qo({id:"small-book-button",component:fl,target:n,anchor:hi(pi.chatMessage.copyButton,n),props:{chatIndex:function({node:n,maxDepth:t=10}){var e;return n&&n instanceof Node?(n instanceof Element||n.parentElement,null==(e=n.closest(".risu-chat").dataset)?void 0:e.chatIndex):null}({node:n})}})});hi(pi.chatScreen.burgerMenu)},100);jo(()=>{Ft(e,Ro.getInstance(),!0),vi.isNil(Ge(e))?console.log(`[${To}] RisuAPI is not initialized`):(!function(){vi.isNil(Ge(r))||Ge(r).disconnect();Ft(r,new MutationObserver(()=>{o()}),!0),Ge(r).observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style","class"]}),o()}(),console.log(`[${To}] plugin loaded`))}),Po(()=>{vi.isNil(Ge(r))||Ge(r).disconnect(),Ho("book-button"),o.cancel(),console.log(`${To} 언로드`)}),Vn()}pr(["click"]),(async()=>{try{const n=Ro.getInstance(globalThis.__pluginApis__);if(!(await n.initialize()))return void console.error(`[${To}] Failed to initialize RisuAPI`);li({silent:!0}).catch(n=>{console.warn("[App] Update check failed:",n)});const t=document.createElement("div");t.id=`${To}-root`,document.body.appendChild(t);const e=Er(dl,{target:t});console.log(`${To} v${Bo} loaded`),n.onUnload(()=>{Ir(e),t.remove()})}catch(n){console.error(`[${To}] Initialization failed:`,n)}})()});
|