@import "https://fonts.googleapis.com/css2?family=Literata:opsz,wght@7..72,400;7..72,600&family=Noto+Sans+KR:wght@400;500;600;700&family=Noto+Serif+KR:wght@400;600&display=swap";html{scrollbar-gutter:stable}@media (pointer:coarse){html,body,#root{touch-action:pan-x pan-y}}:root{color:#202127;font-synthesis:none;--app-bg:#f5f5f3;--panel:#fff;--panel-2:#f0f0ed;--text:#202127;--muted:#767880;--line:#dedfda;--accent:#425bc1;--accent-soft:#e9edff;--shadow:0 18px 60px #171b271a;background:#f5f5f3;font-family:Noto Sans KR,sans-serif}:root[data-app-theme=dark]{--app-bg:#111318;--panel:#191c22;--panel-2:#22262e;--text:#e9eaf0;--muted:#a0a4af;--line:#313640;--accent:#91a5ff;--accent-soft:#262f55;--shadow:0 18px 60px #00000059;color:var(--text);background:var(--app-bg)}*{box-sizing:border-box}html,body,#root{background:var(--app-bg);min-height:100%;color:var(--text);margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.center-state{height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.loader{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.overline{letter-spacing:.17em;color:var(--accent);margin-bottom:7px;font-size:10px;font-weight:700;display:block}.library-layout{grid-template-columns:236px minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.library-sidebar{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;height:100vh;padding:30px 20px;display:flex}.brand{color:var(--accent);align-items:center;gap:10px;margin-bottom:42px;padding:0 11px;font-size:19px;font-weight:700;display:flex}.library-sidebar nav{gap:7px;display:grid}.library-sidebar nav button{height:45px;color:var(--muted);background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:0 13px;display:flex}.library-sidebar nav button.active,.library-sidebar nav button:hover{background:var(--accent-soft);color:var(--accent);font-weight:700}.sidebar-foot{border-top:1px solid var(--line);color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:7px;margin-top:auto;padding:18px 10px 0;font-size:12px;display:grid}.sidebar-foot i{background:#2db875;border-radius:50%;width:8px;height:8px}.sidebar-foot strong{color:var(--text)}.library-content{flex-direction:column;width:100%;max-width:1500px;height:100vh;margin:auto;padding:38px clamp(30px,4vw,70px) 0;display:flex;overflow:hidden}.library-content>header{justify-content:space-between;align-items:flex-start;margin-bottom:25px;display:flex}.library-content h1{letter-spacing:-.04em;margin:0 0 5px;font-size:29px}.library-content header p{color:var(--muted);margin:0;font-size:13px}.square-button,.reader-toolbar button,.panel-title button,.settings-sheet header button{border:1px solid var(--line);background:var(--panel);border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.library-tools{grid-template-columns:minmax(300px,1fr) 160px;gap:11px;display:grid}.search-box{border:1px solid var(--line);background:var(--panel);height:47px;color:var(--muted);border-radius:11px;align-items:center;gap:10px;padding:0 14px;display:flex}.search-box input{background:0 0;border:0;outline:0;flex:1;min-width:0}.search-box kbd{border:1px solid var(--line);border-radius:5px;padding:3px 6px;font-size:10px}.library-tools select{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:0 12px}.category-row{gap:7px;margin:18px 0 24px;display:flex}.category-row button{background:var(--panel-2);color:var(--muted);border:0;border-radius:99px;padding:8px 13px}.category-row button span{opacity:.65;margin-left:7px;font-size:10px}.category-row button.active{background:var(--accent-soft);color:var(--accent);font-weight:700}.list-heading{height:33px;color:var(--muted);border-bottom:1px solid var(--line);grid-template-columns:1fr 350px;padding:0 18px;font-size:11px;display:grid}.list-heading div{grid-template-columns:250px 1fr;display:grid}.virtual-list{flex:1;min-height:0;padding:9px 0 35px;overflow:auto}.book-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) 250px 28px;align-items:center;gap:24px;padding:0 18px;display:grid}.book-row:hover{background:var(--panel);border-bottom-color:#0000;border-radius:10px}.book-main{align-items:center;gap:15px;min-width:0;display:flex}.file-mark{background:var(--panel-2);width:42px;height:49px;color:var(--muted);border-left:3px solid var(--accent);border-radius:7px;flex:none;place-items:center;font-size:10px;font-weight:800;display:grid}.c-패러디{border-left-color:#9867c7}.c-선협{border-left-color:#438a62}.c-언정{border-left-color:#c86c78}.c-야설{border-left-color:#c17a54}.c-복구{border-left-color:#a98b43}.book-main>div{min-width:0}.book-main strong{white-space:nowrap;text-overflow:ellipsis;margin-bottom:7px;font-size:14px;display:block;overflow:hidden}.book-main span{color:var(--muted);font-size:11px}.book-progress>div{color:var(--muted);justify-content:space-between;margin-bottom:7px;font-size:11px;display:flex}.book-progress b{color:var(--accent)}.book-progress i{background:var(--panel-2);border-radius:99px;height:4px;display:block;overflow:hidden}.book-progress em{background:var(--accent);height:100%;display:block}.empty-state{height:100%;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.reader{background:var(--reader-bg,#f2f0eb);min-height:100vh;color:var(--reader-text,#292721);transition:background .2s}.theme-paper{--reader-bg:#f3f1eb;--reader-paper:#fffefa;--reader-text:#282720;--reader-muted:#77746a;--reader-line-color:#dedbd1;--reader-accent:#384f9f}.theme-sepia{--reader-bg:#e9ddc7;--reader-paper:#f7ecd8;--reader-text:#3c3025;--reader-muted:#887463;--reader-line-color:#ddcbb1;--reader-accent:#8a5435}.theme-dark{--reader-bg:#101216;--reader-paper:#171a20;--reader-text:#d9dbe0;--reader-muted:#90949e;--reader-line-color:#30343c;--reader-accent:#91a5ff}.reader-toolbar{z-index:10;border-bottom:1px solid var(--reader-line-color);background:color-mix(in srgb,var(--reader-bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:42px 42px minmax(0,1fr) auto;align-items:center;gap:8px;height:62px;padding:0 17px;display:grid;position:sticky;top:0}.reader-toolbar button{color:var(--reader-muted);background:0 0;border-color:#0000}.reader-toolbar button:hover,.reader-toolbar button.selected{background:var(--reader-paper);color:var(--reader-accent)}.reader-title{min-width:0;margin-left:8px}.reader-title strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.reader-title span{color:var(--reader-muted);margin-top:2px;font-size:10px;display:block}.reader-tools{gap:5px;display:flex}.reading-stage{padding:48px 28px 145px}.reading-paper{max-width:var(--reader-width);background:var(--reader-paper);border:1px solid var(--reader-line-color);min-height:calc(100vh - 190px);font-size:var(--reader-size);line-height:var(--reader-line);letter-spacing:var(--reader-spacing);color:var(--reader-text);word-break:keep-all;overflow-wrap:anywhere;margin:auto;padding:clamp(58px,7vw,100px) clamp(50px,8vw,105px);box-shadow:0 20px 65px #1c1a141a}.reading-paper.font-literata{font-family:Literata,Noto Serif KR,serif}.reading-paper.font-serif{font-family:Noto Serif KR,serif}.reading-paper.font-sans{font-family:Noto Sans KR,sans-serif}.reading-paper.align-justify{text-align:justify}.reading-paper p{white-space:pre-wrap;margin:0 0 var(--paragraph-gap)}.page-loading{height:50vh;color:var(--reader-muted);justify-content:center;align-items:center;gap:13px;font-size:13px;display:flex}.reader-status{z-index:8;background:color-mix(in srgb,var(--reader-bg) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--reader-line-color);grid-template-columns:120px minmax(300px,600px) 120px;justify-content:center;align-items:center;gap:25px;height:84px;padding:0 25px;display:grid;position:fixed;bottom:0;left:0;right:0}.reader-status>button{height:40px;color:var(--reader-muted);background:0 0;border:0;justify-content:center;align-items:center;gap:5px;display:flex}.reader-status button:disabled{opacity:.25}.status-center input{width:100%;height:3px;accent-color:var(--reader-accent);display:block}.status-center>div{color:var(--reader-muted);justify-content:space-between;margin-top:7px;font-size:10px;display:flex}.reader-nav{z-index:12;background:var(--reader-paper);border-right:1px solid var(--reader-line-color);width:390px;padding:25px;position:fixed;top:62px;bottom:84px;left:0;overflow:auto;box-shadow:14px 0 45px #0000001f}.panel-title{justify-content:space-between;align-items:flex-start;display:flex}.panel-title h2,.settings-sheet h2{margin:0;font-size:23px}.panel-title button{color:var(--reader-muted);background:0 0;border:0}.panel-search{border:1px solid var(--reader-line-color);border-radius:9px;align-items:center;gap:8px;height:43px;margin:24px 0;padding-left:11px;display:flex}.panel-search svg{width:17px}.panel-search input{background:0 0;border:0;outline:0;flex:1;min-width:0}.panel-search button{border:0;border-left:1px solid var(--reader-line-color);background:0 0;height:100%;padding:0 11px}.search-results,.bookmark-panel{gap:7px;display:grid}.search-results>button,.bookmark-panel>button{border:1px solid var(--reader-line-color);text-align:left;background:0 0;border-radius:8px;gap:5px;padding:11px;display:grid}.search-results span,.bookmark-panel span{color:var(--reader-muted);font-size:11px;line-height:1.5}.bookmark-panel{margin-top:26px}.bookmark-panel h3{color:var(--reader-muted);font-size:12px}.bookmark-panel>button{grid-template-columns:18px 1fr}.bookmark-panel svg{width:15px}.focus-mode .reading-stage{padding-top:70px}.sheet-backdrop{z-index:30;background:#00000059;position:fixed;inset:0}.settings-sheet{background:var(--panel);width:430px;max-width:100%;height:100%;color:var(--text);padding:28px 28px 50px;position:absolute;top:0;right:0;overflow:auto;box-shadow:-18px 0 65px #00000029}.settings-sheet>header{justify-content:space-between;align-items:flex-start;margin-bottom:25px;display:flex}.settings-sheet header button{background:0 0;border:0}.setting{border-top:1px solid var(--line);padding:18px 0}.setting>label{justify-content:space-between;margin-bottom:12px;font-size:12px;font-weight:700;display:flex}.setting output{color:var(--accent)}.segment{background:var(--panel-2);border-radius:9px;padding:4px;display:flex}.segment button{background:0 0;border:0;border-radius:7px;flex:1;padding:9px 7px;font-size:12px}.segment button.active{background:var(--panel);color:var(--accent);font-weight:700;box-shadow:0 2px 7px #00000014}.theme-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.theme-options button{border:2px solid #0000;border-radius:9px;place-items:center;height:55px;display:grid}.theme-options button.paper{color:#282720;background:#fffefa}.theme-options button.sepia{color:#3c3025;background:#f7ecd8}.theme-options button.dark{color:#d9dbe0;background:#171a20}.theme-options button.active{border-color:var(--accent)}.range-setting>div{grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;display:grid}.range-setting button{border:1px solid var(--line);background:var(--panel);border-radius:7px;height:31px}.range-setting button svg{width:13px}.range-setting input{width:100%;accent-color:var(--accent)}.reset-settings{border:1px solid var(--line);width:100%;height:42px;color:var(--muted);background:0 0;border-radius:9px;margin-top:16px}@media (max-width:900px){.library-layout{grid-template-columns:190px 1fr}.library-sidebar{padding:25px 13px}.library-content{padding-left:24px;padding-right:24px}.book-row{grid-template-columns:minmax(0,1fr) 210px 20px}.list-heading{grid-template-columns:1fr 310px}.reader-status{grid-template-columns:90px 1fr 90px}.reading-paper{padding-left:55px;padding-right:55px}}.reader .sheet-backdrop{--panel:var(--reader-paper);--panel-2:color-mix(in srgb,var(--reader-paper) 82%,var(--reader-bg));--text:var(--reader-text);--muted:var(--reader-muted);--line:var(--reader-line-color);--accent:var(--reader-accent)}.reader-nav-backdrop{z-index:11;background:#0000002e;position:fixed;inset:0}.bookmark-list-button{border:1px solid var(--reader-line-color);width:100%;height:44px;color:var(--reader-text);background:0 0;border-radius:9px;align-items:center;gap:9px;padding:0 12px;font-weight:700;display:flex}.bookmark-list-button svg{width:17px}.bookmark-list-button span{color:var(--reader-muted);margin-left:auto;font-size:11px}.bookmark-panel>button>div{min-width:0}.bookmark-panel>button span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.bookmark-empty{color:var(--reader-muted);margin:8px 0;font-size:12px}.bookmark-dialog-backdrop{z-index:50;background:#0000007a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.bookmark-dialog{border:1px solid var(--reader-line-color);background:var(--reader-paper);width:min(430px,100%);color:var(--reader-text);border-radius:14px;padding:24px;box-shadow:0 20px 65px #00000047}.bookmark-dialog h2{margin:0 0 20px;font-size:21px}.bookmark-dialog label{color:var(--reader-muted);gap:8px;margin-top:15px;font-size:12px;font-weight:700;display:grid}.bookmark-dialog .bookmark-line-number{background:color-mix(in srgb,var(--reader-paper) 82%,var(--reader-bg));border-radius:8px;justify-content:space-between;padding:12px;display:flex}.bookmark-dialog textarea{resize:vertical;border:1px solid var(--reader-line-color);background:var(--reader-bg);width:100%;color:var(--reader-text);font:inherit;border-radius:9px;padding:12px;line-height:1.5}.bookmark-dialog textarea::placeholder{color:var(--reader-muted)}.bookmark-dialog-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;display:grid}.bookmark-dialog-actions button{border:1px solid var(--reader-line-color);height:43px;color:var(--reader-text);background:0 0;border-radius:9px}.bookmark-dialog-actions .primary{border-color:var(--reader-accent);background:var(--reader-accent);color:#fff}@media (max-width:700px){.reader-toolbar{height:58px;padding:0 max(6px,env(safe-area-inset-left));opacity:0;pointer-events:none;background:color-mix(in srgb,var(--reader-paper) 94%,transparent);grid-template-columns:42px 42px minmax(0,1fr) auto;gap:0;transition:transform .2s,opacity .2s;position:fixed;left:0;right:0;transform:translateY(-105%)}.reader-toolbar button{width:42px;height:42px}.reader-title{margin-left:4px}.reader-title strong{font-size:12px}.reader-tools{gap:0}.reader-tools svg{width:18px}.reader-status{height:104px;padding:12px max(10px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));opacity:0;pointer-events:none;background:color-mix(in srgb,var(--reader-paper) 96%,transparent);color:var(--reader-text);grid-template-columns:74px minmax(0,1fr) 74px;gap:8px;transition:transform .2s,opacity .2s;transform:translateY(105%)}.reader-status>button{gap:2px;padding:0;font-size:10px}.reader-status>button svg{width:15px}.reader.controls-visible:not(.focus-mode) .reader-toolbar,.reader.controls-visible .reader-status{opacity:1;pointer-events:auto;transform:translateY(0)}.reader-nav{width:min(88vw,390px);padding:calc(22px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));background:var(--reader-paper);color:var(--reader-text);border-color:var(--reader-line-color);inset:0 auto 0 0;box-shadow:18px 0 50px #00000038}.panel-title button{color:var(--reader-muted)}.panel-search{height:46px}.panel-search input,.panel-search button{color:var(--reader-text)}.settings-sheet{width:100%;height:min(78dvh,680px);padding:14px 18px calc(28px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;top:auto;bottom:0;box-shadow:0 -18px 55px #00000038}.settings-sheet:before{content:"";background:var(--line);border-radius:99px;width:38px;height:4px;margin:0 auto 15px;display:block}.settings-sheet>header{align-items:center;margin-bottom:18px}.settings-sheet header button{width:42px;height:42px}.setting{padding:15px 0}.segment button{min-height:38px}.range-setting button{width:38px;height:38px}.sheet-backdrop{background:#0000007a}}.reader-title{min-width:0;overflow:hidden}.reader-title strong,.reader-title span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (max-width:700px){.reader-tools{min-width:126px}}.reading-stage{background:var(--reader-paper);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:pan-x;justify-content:center;padding:0;display:flex;position:fixed;inset:62px 0 84px;overflow:hidden}.txt-scroll-view{width:min(var(--reader-width), 100vw);box-sizing:border-box;height:100%;color:var(--reader-text);scrollbar-gutter:stable;overscroll-behavior:contain;overflow-anchor:none;-webkit-user-select:none;user-select:none;scrollbar-width:none;padding:44px 72px;overflow:hidden auto}.txt-scroll-view::-webkit-scrollbar{display:none}@media (min-width:701px){.txt-scroll-view{width:100%;padding-inline:max(72px, calc((100% - var(--reader-width)) / 2 + 72px))}}.txt-virtual-space{width:100%;position:relative}.txt-line{white-space:pre-wrap;overflow-wrap:anywhere;word-break:keep-all;width:100%;min-height:1em;position:absolute;inset:0 0 auto}.line-jump{justify-content:flex-end;align-items:center;gap:5px;display:inline-flex}.line-jump input{border:1px solid var(--reader-line-color);background:var(--reader-paper);color:var(--reader-text);text-align:right;font:inherit;border-radius:5px;padding:0 6px;width:82px!important;height:23px!important;accent-color:initial!important;display:inline-block!important}.reading-viewport{width:min(var(--reader-width), 100vw);height:100%;overflow:hidden}.reading-columns{column-width:calc(var(--reader-width) - 144px);width:calc(100% - 144px);height:calc(100% - 88px);font-size:var(--reader-size);line-height:var(--reader-line);letter-spacing:var(--reader-spacing);color:var(--reader-text);word-break:keep-all;overflow-wrap:anywhere;white-space:pre-wrap;will-change:transform;contain:layout style;-webkit-user-select:none;user-select:none;column-gap:144px;margin:44px 72px;transition:transform .18s ease-out}.reading-columns.font-literata{font-family:Literata,Noto Serif KR,serif}.reading-columns.font-serif{font-family:Noto Serif KR,serif}.reading-columns.font-sans{font-family:Noto Sans KR,sans-serif}.reading-columns.align-justify{text-align:justify}.book-text{white-space:pre-wrap}.reading-stage .page-loading{height:100%}.reader-status{background:var(--reader-bg);-webkit-backdrop-filter:none;backdrop-filter:none}.status-center>input[type=range]{touch-action:none;-webkit-user-select:none;user-select:none}.focus-mode .reading-stage{padding:0;top:0}.focus-mode .reader-toolbar{opacity:0;pointer-events:none}@media (max-width:700px){.reading-stage{inset:0}.txt-scroll-view{width:min(var(--reader-width), 100%);padding:calc(30px + env(safe-area-inset-top)) 22px calc(36px + env(safe-area-inset-bottom));scrollbar-gutter:auto}.focus-mode .reading-stage{top:0}.reader-status{height:calc(82px + env(safe-area-inset-bottom));padding:13px max(16px, env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));grid-template-rows:56px;grid-template-columns:minmax(0,1fr);align-content:center;gap:0}.status-center{grid-area:1/1;grid-template-rows:32px 24px;align-items:center;min-width:0;display:grid}.status-center>div{grid-row:1;align-items:center;margin:0;font-size:11px}.status-center>div>strong{color:var(--reader-text);letter-spacing:-.03em;font-size:18px;line-height:1}.status-center>input[type=range]{cursor:pointer;grid-row:2;width:100%;height:32px;margin:0}.line-jump{border:1px solid var(--reader-line-color);background:color-mix(in srgb, var(--reader-paper) 82%, var(--reader-bg));white-space:nowrap;border-radius:9px;gap:3px;height:32px;padding:0 10px}.line-jump input{background:0 0;border:0;border-radius:0;outline:0;padding:0;font-size:16px;line-height:28px;width:48px!important;height:28px!important}.line-jump input:focus{color:var(--reader-accent)}.reader-status>button{display:none}}.auth-page{background:radial-gradient(circle at 30% 20%,#e8ecff,transparent 35%),var(--app-bg);place-items:center;min-height:100vh;padding:30px;display:grid}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;width:min(430px,100%);padding:36px;box-shadow:0 24px 80px #1e254224}.auth-brand{align-items:center;gap:12px;margin-bottom:38px;display:flex}.auth-brand>svg{width:35px;height:35px;color:var(--accent)}.auth-brand strong,.auth-brand span{display:block}.auth-brand span{letter-spacing:.14em;color:var(--muted);margin-top:3px;font-size:9px}.auth-card h1{margin:0 0 8px;font-size:27px}.auth-card>p,.auth-result p{color:var(--muted);font-size:13px;line-height:1.7}.auth-card form{gap:16px;margin-top:27px;display:grid}.auth-card form label{gap:7px;font-size:11px;font-weight:700;display:grid}.auth-card form input{border:1px solid var(--line);background:var(--panel-2);height:44px;color:var(--text);border-radius:9px;outline:none;padding:0 12px}.auth-card form input:focus{border-color:var(--accent)}.auth-card form>button,.auth-result button{background:var(--accent);color:#fff;border:0;border-radius:9px;height:45px;font-weight:700}.auth-switch{width:100%;color:var(--accent);background:0 0;border:0;margin-top:15px;font-size:12px}.form-error,.inline-error{color:#a22d2d;background:#fff0f0;border-radius:8px;padding:11px 13px;font-size:12px}.auth-result{text-align:center;padding:25px 0 5px}.auth-result svg{color:#388358;width:52px;height:52px}.auth-result button{width:100%;margin-top:20px}.folder-library{background:var(--app-bg);min-height:100vh;color:var(--text)}.app-header{border-bottom:1px solid var(--line);background:var(--panel);z-index:5;justify-content:space-between;align-items:center;height:66px;padding:0 32px;display:flex;position:sticky;top:0}.reader-logo{color:var(--text);background:0 0;border:0;align-items:center;gap:9px;font-size:15px;font-weight:800;display:flex}.reader-logo svg{color:var(--accent)}.account-actions{align-items:center;gap:7px;display:flex}.account-actions>span,.account-actions button{border:1px solid var(--line);background:var(--panel);height:34px;color:var(--muted);border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:11px;display:flex}.account-actions>span{border:0}.account-actions i{background:#45a46a;border-radius:50%;width:7px;height:7px}.account-actions svg{width:15px}.folder-content{max-width:1180px;margin:auto;padding:48px 40px 72px}.folder-hero{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:34px;display:flex}.folder-title-group{min-width:0}.folder-title-group h1{letter-spacing:-.04em;margin:0 0 10px;font-size:34px;line-height:1.25}.folder-title-group p{color:var(--muted);margin:0;font-size:13px;line-height:1.65}.folder-back{width:max-content;color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;margin:0 0 16px;padding:0;font-size:12px;font-weight:600;display:flex}.folder-back:hover{color:var(--accent)}.folder-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:25px;display:grid}.folder-card{border:1px solid var(--line);background:var(--panel);text-align:left;height:92px;color:var(--text);border-radius:12px;grid-template-columns:42px 1fr 20px;align-items:center;padding:0 18px;display:grid}.folder-card>svg:first-child{width:29px;color:var(--accent)}.folder-card div strong,.folder-card div span{display:block}.folder-card div span{color:var(--muted);margin-top:5px;font-size:10px}.folder-card.up{opacity:.75}.library-tools{gap:9px;margin-bottom:15px;display:flex}.library-search{border:1px solid var(--line);background:var(--panel);border-radius:9px;flex:1;align-items:center;gap:8px;height:44px;padding:0 12px;display:flex}.library-search svg{width:17px;color:var(--muted)}.library-search input{color:var(--text);background:0 0;border:0;outline:0;flex:1}.sort-select{border:1px solid var(--line);background:var(--panel);width:150px;min-width:150px;height:44px;color:var(--muted);border-radius:9px;font-size:10px;position:relative;overflow:hidden}.sort-select>span{z-index:1;pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.sort-select select{width:100%;height:100%;color:var(--text);cursor:pointer;background:0 0;border:0;outline:0;padding:0 10px 0 48px;font-size:11px;font-weight:700;position:absolute;inset:0}.sort-select:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.file-list{display:grid}.file-list>.empty-state{border-top:1px solid var(--line);min-height:280px}.empty-state svg{width:24px;height:24px}.empty-state strong{font-size:13px}.text-file-row{border:0;border-top:1px solid var(--line);text-align:left;min-height:72px;color:var(--text);background:0 0;grid-template-columns:34px minmax(0,1fr) 210px 22px;align-items:center;padding:10px;display:grid}.text-file-row>svg:first-child{color:var(--muted)}.text-file-row strong,.text-file-row span{display:block}.text-file-row span{color:var(--muted);margin-top:4px;font-size:10px}.row-progress span{text-align:right}.row-progress i{background:var(--line);height:3px;margin-top:7px;display:block}.row-progress em{background:var(--accent);height:100%;display:block}.upload-button{background:var(--accent);color:#fff;white-space:nowrap;border-radius:9px;align-items:center;gap:7px;height:42px;padding:0 16px;font-size:12px;font-weight:700;display:flex}.upload-button svg{width:17px}.upload-button input{display:none}.admin-overlay{z-index:40;background:#0c0f198c;place-items:center;padding:30px;display:grid;position:fixed;inset:0}.admin-page{background:var(--panel);border-radius:16px;width:min(850px,100%);max-height:85vh;padding:30px;overflow:auto}.admin-page>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:20px;display:flex}.admin-page h1{margin:4px 0}.admin-page header button{background:0 0;border:0}.user-table article{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 100px 190px;align-items:center;gap:15px;padding:15px 4px;display:grid}.user-table article span{color:var(--muted);margin-top:4px;font-size:10px;display:block}.status-pending{color:#a66b00}.status-approved{color:#27834d}.status-rejected{color:#a83232}.approval-actions{justify-content:flex-end;gap:6px;display:flex}.approval-actions button{border:1px solid var(--line);background:var(--panel-2);border-radius:7px;align-items:center;gap:4px;height:32px;display:flex}.approval-actions svg{width:14px}@media (max-width:800px){.account-actions>span,.account-actions button{padding:0 9px;font-size:0}.folder-content{padding:32px 18px 48px}.folder-hero{align-items:flex-end;gap:18px;margin-bottom:28px}.folder-title-group h1{font-size:29px}.folder-back{margin-bottom:13px}.folder-grid{grid-template-columns:1fr}.text-file-row{grid-template-columns:30px minmax(0,1fr) 100px 18px}.user-table article{grid-template-columns:1fr 90px}.approval-actions{grid-column:1/-1;justify-content:flex-start}}.login-options{justify-content:space-between;align-items:center;display:flex}.auth-card form .login-options label{color:var(--muted);grid-template:none;align-items:center;gap:7px;font-size:11px;font-weight:500;display:flex}.auth-card form .login-options input{width:15px;height:15px;accent-color:var(--accent);padding:0}.heading-actions{align-items:center;gap:8px;display:flex}.compact-back{border:1px solid var(--line);background:var(--panel);height:38px;color:var(--muted);border-radius:8px;align-items:center;gap:6px;padding:0 11px;font-size:11px;display:flex}.compact-back svg{width:15px}.section-title{justify-content:space-between;align-items:flex-end;margin-bottom:14px;display:flex}.section-title h2{margin:4px 0;font-size:19px}.section-title>span{color:var(--muted);font-size:11px}.recent-section{margin:35px 0 48px}.recent-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.recent-list button{border:1px solid var(--line);background:var(--panel);text-align:left;min-height:68px;color:var(--text);border-radius:10px;grid-template-columns:28px minmax(0,1fr) 42px;align-items:center;padding:10px 13px;display:grid}.recent-list svg{width:19px;color:var(--accent)}.recent-list strong,.recent-list span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.recent-list span{color:var(--muted);margin-top:4px;font-size:10px}.recent-list b{text-align:right;color:var(--accent);font-size:11px}.folder-section{margin-top:35px}.tag-row{flex-wrap:wrap;align-items:center;gap:7px;margin:18px 0 16px;display:flex}.tag-row button{border:1px solid var(--line);background:var(--panel);height:34px;color:var(--muted);border-radius:17px;padding:0 12px;font-size:11px}.tag-row button.active{background:var(--accent);border-color:var(--accent);color:#fff}.tag-row span{opacity:.65;margin-left:6px}@media (max-width:800px){.recent-list{grid-template-columns:1fr}.heading-actions{margin-left:12px}.compact-back{font-size:0}.compact-back svg{margin:0}.library-tools{align-items:stretch}.sort-select{min-width:125px}}@media (max-width:520px){.folder-hero{grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.upload-button{justify-content:center;justify-self:stretch;width:100%}.library-tools{grid-template-columns:minmax(0,1fr) 120px;display:grid}.sort-select{width:100%;min-width:0}}@media (max-width:700px){.app-header{height:58px;padding:0 12px}.reader-logo span{font-size:14px}.reader-logo svg{width:21px}.account-actions{gap:2px}.account-actions>span{display:none}.account-actions button{background:0 0;border:0;justify-content:center;width:40px;height:40px}.account-actions svg{width:18px}.folder-content{padding-top:28px}.folder-hero{margin-bottom:26px}.folder-title-group h1{font-size:28px}.folder-title-group p{font-size:12px}.folder-back{min-height:38px;margin-bottom:7px;margin-left:-8px;padding:0 8px}.recent-section{margin:28px 0 38px}.recent-list button{min-height:76px;padding:12px 14px}.folder-card{height:82px}.library-search,.sort-select{height:46px}.tag-row{scrollbar-width:none;overscroll-behavior-x:contain;flex-wrap:nowrap;margin:16px -18px 14px;padding:0 18px 5px;overflow-x:auto}.tag-row::-webkit-scrollbar{display:none}.tag-row button{border-radius:19px;flex:none;height:38px}.text-file-row{grid-template-columns:28px minmax(0,1fr) 62px 16px;gap:6px;min-height:76px;padding:10px 4px}.text-file-row>svg:first-child{width:19px}.row-progress span{font-size:10px}.file-list>.empty-state{min-height:240px}.tag-row{gap:6px;margin:7px -18px;padding:0 18px 2px}.tag-row button{border-radius:16px;height:32px;padding:0 11px}.tag-row button span{display:none}}.folder-back{border-radius:8px;gap:8px;min-height:40px;margin:0 0 12px -12px;padding:0 12px;font-size:14px}.folder-back svg{width:18px;height:18px}.folder-back:hover{background:var(--accent-soft);color:var(--accent)}.folder-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:700px){.folder-back{min-height:42px;margin-bottom:5px;margin-left:-10px;padding:0 10px}.auth-page{background:var(--app-bg);place-items:start center;padding:clamp(42px,9vh,72px) 18px 28px}.auth-card{border-radius:16px;width:100%;padding:28px 22px;box-shadow:0 16px 48px #1e25421a}.auth-brand{margin-bottom:28px}.auth-card h1{font-size:25px}.auth-card form{gap:14px;margin-top:22px}.auth-card form input{height:46px}.auth-card form>button{height:48px}.auth-switch{min-height:42px;margin-top:8px}.login-options{min-height:34px}.folder-section .overline{display:none}.folder-section .section-title h2{margin-top:0}.text-file-row>div:not(.row-progress){min-width:0;padding-right:4px}.text-file-row strong{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.text-file-row>div:not(.row-progress)>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.recent-list button>div{min-width:0}.recent-list strong{white-space:normal;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box}.upload-button{min-height:46px}}.file-info-button{width:34px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:grid}.file-info-button:hover{background:var(--accent-soft);color:var(--accent)}.file-info-button svg{width:19px;height:19px}.file-open-button{min-width:0;min-height:71px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-column:2/-1;grid-template-columns:minmax(0,1fr) 210px 22px;align-items:center;gap:0;padding:10px 0;display:grid}.file-row-copy{min-width:0}.file-row-copy strong,.file-row-copy span{display:block}.file-row-copy strong{font-size:14px;line-height:1.45}.file-row-copy span{color:var(--muted);margin-top:4px;font-size:10px}.file-info-backdrop{z-index:35;cursor:default;background:#0c0f197a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.file-info-sheet{background:var(--panel);width:min(430px,100%);max-height:85vh;color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:20px;overflow:auto}.file-info-sheet header{display:block}.file-info-sheet header span{color:var(--accent);font-size:10px;font-weight:700;display:block}.file-info-sheet h2{overflow-wrap:anywhere;margin:6px 0 0;font-size:19px;line-height:1.45}.file-info-sheet dl{margin:14px 0}.file-info-sheet dl>div{border-top:1px solid var(--line);grid-template-columns:92px minmax(0,1fr);gap:12px;padding:8px 0;font-size:12px;display:grid}.file-info-sheet dt{color:var(--muted)}.file-info-sheet dd{text-align:right;overflow-wrap:anywhere;min-width:0;margin:0}.file-info-open{background:var(--accent);color:#fff;border:0;border-radius:9px;width:100%;height:46px;font-size:13px;font-weight:700}@media (max-width:700px){.folder-card div strong{font-size:14px;line-height:1.4}.folder-card div span{font-size:9.5px}.section-title h2{font-size:18px}.text-file-row{grid-template-columns:32px minmax(0,1fr);gap:4px;padding:0 4px}.file-info-button{width:32px;height:48px}.file-info-button svg{width:18px;height:18px}.file-open-button{grid-template-columns:minmax(0,1fr) 62px 16px;gap:6px;min-height:75px;padding:9px 0}.file-row-copy{padding-right:4px}.file-row-copy strong{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.file-row-copy span{white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;overflow:hidden}.row-progress span{font-size:9.5px}.file-info-backdrop{align-items:end;padding:0}.file-info-sheet{width:100%;max-height:76dvh;padding:10px 18px calc(16px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:18px 18px 0 0}.file-info-sheet:before{content:"";background:var(--line);border-radius:99px;width:38px;height:4px;margin:0 auto 10px;display:block}.file-info-sheet h2{font-size:17px;line-height:1.45}.file-info-sheet dl{margin:14px 0}.file-info-sheet dl>div{font-size:12px}.auth-card form input,.library-search input{font-size:16px}.text-file-row{grid-template-columns:44px minmax(0,1fr);padding-left:0}.file-info-button{width:44px}.file-info-backdrop{width:100vw;height:100dvh;inset:0 auto auto 0}.file-info-sheet{max-width:100vw}}.folder-actions{align-items:center;gap:8px;display:flex}.folder-actions button{white-space:nowrap}.secondary-action{border:1px solid var(--line);background:var(--panel);height:42px;color:var(--text);border-radius:9px;align-items:center;gap:7px;padding:0 14px;font-size:12px;font-weight:700;display:flex}.secondary-action svg{width:17px}.upload-button{cursor:pointer;border:0}.manage-backdrop{z-index:36;background:#0c0f1985;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.manage-sheet{background:var(--panel);width:min(520px,100%);max-height:88vh;color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:26px;overflow:auto}.manage-sheet header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.manage-sheet header span{color:var(--accent);font-size:10px;font-weight:700;display:block}.manage-sheet h2{margin:5px 0 0;font-size:21px}.manage-sheet header button{width:40px;height:40px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.manage-sheet header svg{width:19px}.manage-sheet>label:not(.multi-file-picker){color:var(--muted);gap:7px;font-size:11px;font-weight:700;display:grid}.manage-sheet input{border:1px solid var(--line);background:var(--panel-2);width:100%;height:44px;color:var(--text);border-radius:9px;outline:0;padding:0 12px;font-size:14px}.manage-sheet input:focus{border-color:var(--accent)}.manage-submit{background:var(--accent);color:#fff;border:0;border-radius:9px;width:100%;height:46px;margin-top:20px;font-size:13px;font-weight:700}.manage-submit:disabled{opacity:.5}.multi-file-picker{border:1px dashed var(--line);background:var(--panel-2);min-height:108px;color:var(--text);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.multi-file-picker svg{width:22px;color:var(--accent)}.multi-file-picker span{color:var(--muted);font-size:10px}.multi-file-picker input{display:none}.upload-items{gap:8px;margin-top:16px;display:grid}.upload-items>label{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:11px}.upload-items>label>div{justify-content:space-between;gap:12px;margin-bottom:8px;display:flex}.upload-items strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;overflow:hidden}.upload-items span{color:var(--muted);flex:none;font-size:10px}.upload-items input{height:38px}@media (max-width:700px){.folder-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.folder-actions:has(>:only-child){grid-template-columns:1fr}.folder-actions button{justify-content:center;width:100%;min-height:46px}.manage-backdrop{align-items:end;width:100vw;height:100dvh;padding:0;inset:0 auto auto 0}.manage-sheet{width:100%;max-width:100vw;max-height:88dvh;padding:12px 18px calc(24px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:18px 18px 0 0}.manage-sheet:before{content:"";background:var(--line);border-radius:99px;width:38px;height:4px;margin:0 auto 14px;display:block}.manage-sheet header{margin-bottom:20px}.manage-sheet h2{font-size:19px}.manage-sheet input{font-size:16px}.upload-sheet{max-height:92dvh}.multi-file-picker{min-height:100px}.upload-items{max-height:42dvh;overflow:auto}}.secret-option{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:10px;align-items:center;margin-top:16px;padding:12px;grid-template-columns:none!important;gap:11px!important;display:flex!important}.secret-option input{accent-color:var(--accent);flex:none;width:18px!important;height:18px!important}.secret-option span,.secret-option strong,.secret-option small{display:block}.secret-option strong{color:var(--text);font-size:12px}.secret-option small{color:var(--muted);margin-top:3px;font-size:10px;font-weight:400;line-height:1.45}.folder-card.secret>svg:first-child{color:var(--accent)}@media (max-width:700px){.folder-grid{gap:8px;margin-bottom:20px}.folder-card{border-radius:10px;grid-template-columns:32px minmax(0,1fr) 18px;height:66px;padding:0 13px}.folder-card>svg:first-child{width:22px}.folder-card div strong{font-size:13.5px}.folder-card div span{margin-top:2px;font-size:9px}.recent-list{gap:7px}.recent-list button{min-height:62px;padding:8px 11px}.text-file-row{grid-template-columns:44px minmax(0,1fr);gap:0;min-height:60px;padding:0}.file-info-button{width:44px;height:44px}.file-open-button{grid-template-columns:minmax(0,1fr) 54px 15px;gap:5px;min-height:60px;padding:6px 0}.file-row-copy strong{font-size:13.5px;line-height:1.35}.file-row-copy span{margin-top:3px;font-size:9px}.row-progress span{font-size:9px}.folder-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.folder-actions:has(>:only-child){grid-template-columns:1fr}.folder-actions:has(>:nth-child(2):last-child){grid-template-columns:1fr 1fr}.folder-actions button{height:42px;min-height:42px;padding:0 8px;font-size:11px}.library-search,.sort-select{height:44px}}.danger-zone{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.danger-zone>div:first-child strong,.danger-zone>div:first-child span{display:block}.danger-zone>div:first-child strong{font-size:12px}.danger-zone>div:first-child span{color:var(--muted);margin-top:4px;font-size:10px}.danger-button{color:#c84f4f;background:0 0;border:1px solid #dc6a6a;border-radius:9px;justify-content:center;align-items:center;gap:6px;height:40px;margin-top:12px;padding:0 12px;font-size:11px;font-weight:700;display:flex}.danger-button svg{width:15px}.danger-button:disabled{opacity:.4}.delete-confirm{background:var(--panel-2);border-radius:10px;margin-top:14px;padding:12px}.delete-confirm label{color:var(--muted);gap:7px;font-size:10px;display:grid}.delete-confirm label b{color:var(--text)}.delete-confirm>div{justify-content:flex-end;gap:7px;margin-top:10px;display:flex}.delete-confirm>div>button:not(.danger-button){border:1px solid var(--line);background:var(--panel);height:40px;color:var(--text);border-radius:9px;padding:0 13px;font-size:11px}.delete-confirm .danger-button{margin-top:0}.folder-settings-sheet{max-width:480px}@media (max-width:700px){.danger-zone{margin-top:20px}.danger-button{width:100%;min-height:44px}.delete-confirm>div{grid-template-columns:1fr 1fr;display:grid}.delete-confirm>div>button{width:100%}}.section-more{height:36px;color:var(--accent);background:0 0;border:0;align-items:center;gap:3px;padding:0 2px;font-size:11px;font-weight:700;display:flex}.section-more svg{width:14px}.file-info-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.favorite-action{border:1px solid var(--line);background:var(--panel-2);height:46px;color:var(--muted);border-radius:9px;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.favorite-action svg{width:17px}.favorite-action.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}@media (max-width:700px){.section-more{min-height:40px}.file-info-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.favorite-action{height:44px}}.auth-brand>img{object-fit:cover;border-radius:9px;flex:none;width:38px;height:38px}.reader-logo img{object-fit:cover;border-radius:7px;flex:none;width:28px;height:28px}@media (max-width:700px){.reader-logo img{border-radius:6px;width:26px;height:26px}}.mobile-folder-create{display:none}@media (max-width:700px){.folder-content:has(.root-hero){padding-top:0}.root-hero{display:none}.root-hero+.library-error{margin-top:18px}.root-hero~.recent-section{margin-top:22px}.recent-section{margin-bottom:28px}.recent-section .section-title{align-items:center;margin-bottom:8px}.recent-section .section-title h2{margin:2px 0;font-size:17px}.recent-section .overline{font-size:9px}.section-more{height:40px;font-size:10px}.recent-list{gap:0}.recent-list button{border:0;border-top:1px solid var(--line);min-height:52px;color:var(--text);background:0 0;border-radius:0;grid-template-columns:26px minmax(0,1fr) 40px;padding:6px 4px}.recent-list button:last-child{border-bottom:1px solid var(--line)}.recent-list svg{width:17px}.recent-list strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:1.3;display:block;overflow:hidden}.recent-list span{margin-top:2px;font-size:9px}.recent-list b{font-size:9.5px}.folder-section{margin-top:26px}.folder-section .section-title{align-items:center;margin-bottom:10px}.folder-section .section-title h2{font-size:17px}.mobile-folder-create{border:1px solid var(--line);background:var(--panel);width:42px;height:42px;color:var(--accent);border-radius:9px;place-items:center;padding:0;display:grid}.mobile-folder-create svg{width:18px}.folder-grid{gap:6px;margin-bottom:16px}.folder-card{grid-template-columns:29px minmax(0,1fr) 16px;height:56px;padding:0 11px}.folder-card>svg:first-child{width:20px}.folder-card div strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.folder-card div span{margin-top:1px;font-size:8.5px}}.recent-remove:hover{color:#d45c5c;background:#d45c5c1a}.sort-select{z-index:4;overflow:visible}.sort-trigger{width:100%;height:100%;color:var(--text);text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:auto 1fr 18px;align-items:center;gap:9px;padding:0 11px 0 13px;display:grid}.sort-trigger>span{color:var(--muted);font-size:10px;font-weight:500}.sort-trigger>strong{font-size:12px;font-weight:700}.sort-trigger>svg{width:16px;height:16px;color:var(--muted);transition:transform .16s}.sort-select.open{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.sort-select.open .sort-trigger>svg{transform:rotate(180deg)}.sort-menu{border:1px solid var(--line);background:var(--panel);border-radius:10px;width:100%;padding:5px;position:absolute;top:calc(100% + 7px);right:0;overflow:hidden;box-shadow:0 14px 38px #11141f2e}.sort-menu>button{width:100%;height:38px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;padding:0 10px;font-size:12px;display:flex}.sort-menu>button:hover,.sort-menu>button:focus-visible{background:var(--panel-2);outline:0}.sort-menu>button.selected{background:var(--accent-soft);color:var(--accent);font-weight:700}.sort-menu>button svg{width:15px;height:15px}@media (max-width:700px){.sort-trigger{gap:7px;padding-left:11px}.sort-trigger>strong,.sort-menu>button{font-size:11px}.sort-menu>button{height:40px}}.account-actions>span,.account-actions button{font-size:13px}.folder-card div span{font-size:12px}.folder-card{padding:0;display:block;position:relative;overflow:hidden}.folder-card-open{width:100%;height:100%;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;padding:0 18px;display:grid}.folder-card-open>svg:first-child{width:29px;color:var(--accent)}.folder-drag-handle{z-index:2;width:40px;height:48px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.folder-drag-handle:active{cursor:grabbing}.folder-drag-handle svg{width:20px}.folder-card.dragging{opacity:.55;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.folder-card:has(.folder-drag-handle) .folder-card-open{padding-right:52px}.library-search input{font-size:15px}.section-title>span,.section-more,.tag-row button{font-size:13px}.recent-list span{font-size:12px}.file-row-copy span,.row-progress span{font-size:12px}.upload-button,.secondary-action,.compact-back{font-size:14px}.multi-file-picker span{font-size:12px}.upload-items strong{font-size:14px}.upload-items span{font-size:12px}.secret-option strong,.danger-zone>div:first-child strong{font-size:14px}.secret-option small,.danger-zone>div:first-child span{font-size:12px}.manage-submit,.danger-button,.delete-confirm>div>button:not(.danger-button){font-size:13px}.delete-confirm label{font-size:12px}.file-info-sheet dl>div,.file-info-open,.favorite-action{font-size:14px}.user-table article span{font-size:12px}.user-table article>b{font-size:13px}@media (max-width:700px){.reader-logo{font-size:16px}.account-actions{gap:2px}.account-actions>span{display:none}.account-actions button{background:0 0;border:0;flex:none;justify-content:center;gap:0;width:42px;height:42px;padding:0;font-size:0}.account-actions button:hover,.account-actions button:focus-visible{background:var(--accent-soft);color:var(--accent)}.account-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.account-actions svg{width:20px;height:20px}.folder-title-group p{font-size:14px}.folder-card div strong{font-size:15px}.folder-card div span{font-size:11px}.folder-card-open{grid-template-columns:32px minmax(0,1fr) 18px;padding:0 13px}.folder-card-open>svg:first-child{width:22px}.folder-drag-handle{width:44px;height:44px;right:3px}.folder-card:has(.folder-drag-handle) .folder-card-open{padding-right:48px}.recent-section .overline{font-size:11px}.recent-section .section-title h2,.folder-section .section-title h2{font-size:19px}.section-more{font-size:12px}.recent-list strong{font-size:14px;font-weight:600}.recent-list span,.recent-list b{font-size:11px}.file-row-copy strong{font-size:14px;font-weight:600}.file-row-copy span,.row-progress span{font-size:11px}.folder-actions button,.sort-trigger>strong,.sort-menu>button{font-size:13px}.manage-sheet h2{font-size:21px}.file-info-sheet h2{font-size:19px}.text-file-row{grid-template-columns:36px minmax(0,1fr)}.file-info-button{width:36px;height:44px}.file-open-button{grid-template-columns:minmax(0,1fr) 46px;gap:8px}.file-open-button>svg:last-child{display:none}.file-row-copy strong{white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset;line-clamp:unset;font-size:13px;font-weight:600;display:block;overflow:hidden}.row-progress{background:conic-gradient(var(--accent) var(--progress-angle),var(--line) 0);border-radius:50%;justify-self:end;place-items:center;width:42px;height:42px;display:grid;position:relative}.row-progress:after{content:"";background:var(--app-bg);border-radius:50%;position:absolute;inset:4px}.row-progress span{z-index:1;color:var(--text);margin:0;font-size:10px;font-weight:700;line-height:1;position:relative}.row-progress i{display:none}}.multi-file-picker{transition:border-color .15s,background .15s,box-shadow .15s}.multi-file-picker.dragging{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.upload-sheet{overflow:hidden}.upload-items{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 55%,transparent) transparent;min-width:0;max-height:min(48vh,480px);padding-right:6px;overflow:hidden auto}.upload-items>label,.upload-items>label>div{min-width:0;max-width:100%}.upload-items::-webkit-scrollbar{width:7px}.upload-items::-webkit-scrollbar-track{background:0 0}.upload-items::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 55%,transparent);background-clip:padding-box;border:2px solid #0000;border-radius:99px}.upload-items::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 75%,transparent);background-clip:padding-box}@media (max-width:700px){.upload-items{max-height:42dvh}}.upload-progress{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;gap:7px;margin-top:16px;padding:12px;display:grid}.upload-progress>div{justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.upload-progress>div strong{color:var(--accent);font-size:14px}.upload-progress>div span,.upload-progress small{color:var(--muted);font-size:10px}.upload-progress>i{background:var(--line);border-radius:99px;height:6px;display:block;overflow:hidden}.upload-progress>i>em{border-radius:inherit;background:var(--accent);height:100%;transition:width .15s linear;display:block}.upload-progress small{text-align:right}.favorite-indicator{color:#eab308;vertical-align:-.12em;width:1em;height:1em;margin-left:5px;display:inline-block!important}.row-favorite-toggle{transition:color .15s,background .15s}.row-favorite-toggle.active{color:#eab308}.row-favorite-toggle:disabled{opacity:.55}.virtual-file-list{contain:layout style;display:block;position:relative}.virtual-file-row{width:100%;position:absolute;left:0}.global-library-search{align-items:center;gap:12px;margin:0 0 24px;display:flex}.search-controls{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.search-controls>.library-search{flex:1;min-width:0}.search-back,.search-clear{color:var(--muted);background:0 0;border:0;flex:none;place-items:center;display:grid}.search-back{border:1px solid var(--line);background:var(--panel);border-radius:9px;width:44px;height:44px}.search-back svg{width:18px}.search-clear{border-radius:7px;width:32px;height:32px}.search-clear:hover,.search-back:hover{color:var(--text);background:var(--panel-2)}.search-clear svg{width:16px}.global-library-search>span{color:var(--muted);white-space:nowrap;flex:none;font-size:12px}.search-status{align-items:center;gap:6px;display:inline-flex}.search-spinner{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin}@media (max-width:700px){.global-library-search{gap:7px;margin:18px 0 20px;display:grid}.global-library-search>span{padding-left:3px;font-size:11px}}:root[data-app-theme=black]{--app-bg:#000;--panel:#080808;--panel-2:#111;--text:#e8e8ec;--muted:#999da7;--line:#242424;--accent:#91a5ff;--accent-soft:#182044;--shadow:0 18px 60px #000000b3;color:var(--text);background:var(--app-bg)}.theme-black{--reader-bg:#000;--reader-paper:#000;--reader-text:#dedee3;--reader-muted:#92959e;--reader-line-color:#242424;--reader-accent:#91a5ff}.color-setting{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.color-setting input[type=color]{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;width:42px;height:38px;padding:3px}.color-setting code{color:var(--muted);font-size:11px}.color-setting button{border:1px solid var(--line);background:var(--panel);height:38px;color:var(--muted);border-radius:8px;padding:0 12px;font-size:11px}.color-setting button.active{border-color:var(--accent);color:var(--accent)}.fullscreen-fab{z-index:22;border:1px solid color-mix(in srgb, var(--reader-text) 16%, transparent);background:color-mix(in srgb, var(--reader-bg) 38%, transparent);width:51px;height:51px;color:var(--reader-text);opacity:.28;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:50%;place-items:center;padding:0;transition:opacity .16s,background .16s;display:grid;position:fixed;top:72px;right:12px}.fullscreen-fab:hover,.fullscreen-fab:focus-visible{opacity:.75;background:color-mix(in srgb, var(--reader-bg) 72%, transparent)}.fullscreen-fab svg{width:24px;height:24px}:root{--ds-content-max:1180px;--ds-header-height:66px;--ds-page-x:40px;--ds-page-top:48px;--ds-page-top-with-back:32px;--ds-page-bottom:72px;--ds-hero-bottom:34px;--ds-space-1:4px;--ds-space-2:8px;--ds-space-3:12px;--ds-space-4:16px;--ds-space-5:24px;--ds-space-6:32px;--ds-control-sm:38px;--ds-control:44px;--ds-control-lg:46px;--ds-radius-sm:8px;--ds-radius:10px;--ds-radius-lg:16px;--ds-text-caption:12px;--ds-text-meta:13px;--ds-text-body:14px;--ds-text-item:16px;--ds-text-section:21px;--ds-text-page:34px;--ds-weight-medium:600;--ds-weight-bold:700}.app-header{height:var(--ds-header-height);padding-inline:32px}.reader-logo{font-size:17px}.account-actions{gap:7px}.account-actions>span,.account-actions button{border-radius:var(--ds-radius-sm);height:34px;font-size:var(--ds-text-meta);padding-inline:10px}.folder-content{width:100%;max-width:var(--ds-content-max);padding:var(--ds-page-top) var(--ds-page-x) var(--ds-page-bottom)}.folder-content.page-with-back{padding-top:var(--ds-page-top-with-back)}.collection-content{max-width:900px}.folder-hero{gap:var(--ds-space-6);margin-bottom:var(--ds-hero-bottom)}.mobile-folder-menu{display:none}.folder-title-group h1{font-size:var(--ds-text-page)}.folder-title-group p{font-size:15px}.folder-back{min-height:40px;margin:0 0 var(--ds-space-3) -12px;padding-inline:var(--ds-space-3);gap:var(--ds-space-2);border-radius:var(--ds-radius-sm);font-size:var(--ds-text-body)}.library-topbar{top:var(--ds-header-height);z-index:4;margin-inline:calc(-1 * var(--ds-page-x));padding:8px var(--ds-page-x);background:var(--app-bg);transition:top .18s;position:sticky}.library-topbar.is-hidden{top:calc(var(--ds-header-height) - var(--library-topbar-height,0px))}.library-topbar .folder-hero{align-items:center;gap:12px;margin-bottom:8px}.library-topbar .folder-title-group{align-items:center;gap:8px;display:flex}.library-topbar .folder-back{flex:none;justify-content:center;width:42px;height:42px;margin:0;padding:0;font-size:0}.library-topbar .folder-title-group h1{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.library-topbar .library-tools{margin-bottom:6px}.library-topbar .tag-row{margin-block:6px 0}@media (prefers-reduced-motion:reduce){.library-topbar{transition:none}}.overline{font-size:var(--ds-text-caption)}.section-title h2{font-size:var(--ds-text-section)}.section-title>span,.section-more{font-size:var(--ds-text-meta)}.folder-card div strong{font-size:var(--ds-text-item)}.folder-card div span,.recent-list span,.file-row-copy span,.row-progress span{font-size:var(--ds-text-caption)}.recent-list strong{font-size:15px}.recent-list b{font-size:var(--ds-text-meta)}.file-row-copy strong{font-size:var(--ds-text-item)}.library-search,.sort-select{height:var(--ds-control);border-radius:var(--ds-radius)}.library-search input{min-width:0;font-size:15px}.sort-trigger>span{font-size:var(--ds-text-caption)}.sort-trigger>strong,.sort-menu>button{font-size:var(--ds-text-body)}.upload-button,.secondary-action,.compact-back{border-radius:var(--ds-radius);min-height:42px;font-size:var(--ds-text-body)}.tag-row button{font-size:var(--ds-text-meta)}.folder-card{border-radius:12px}.recent-list button{border-radius:var(--ds-radius)}.text-file-row{min-height:72px}.text-file-row.deletable{grid-template-columns:34px 34px minmax(0,1fr)}.text-file-row.deletable .file-open-button{grid-column:3/-1}.book-select-toggle{border:1px solid var(--line);background:var(--panel);color:#fff;border-radius:6px;place-self:center;place-items:center;width:24px;height:24px;padding:0;display:grid}.book-select-toggle.selected{border-color:var(--accent);background:var(--accent)}.book-select-toggle svg{width:15px;height:15px}.book-selection-start{justify-content:flex-end;margin:-4px 0 12px;display:flex}.book-delete-toolbar{justify-content:flex-end;align-items:center;gap:8px;min-height:46px;margin:-4px 0 12px;display:flex}.book-delete-toolbar>span{color:var(--muted);font-size:var(--ds-text-meta);margin-right:auto}.book-delete-toolbar button,.delete-dialog-actions button,.file-info-delete{border:1px solid var(--line);border-radius:var(--ds-radius-sm);background:var(--panel);min-height:40px;color:var(--text);font-size:var(--ds-text-meta);justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:700;display:inline-flex}.book-delete-toolbar svg,.file-info-delete svg{width:15px}.book-delete-toolbar .delete-action,.file-info-delete,.delete-dialog-actions .confirm-delete{color:#d45c5c;border-color:#b94b4b}.selection-mode-toggle.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--panel));color:var(--accent)}.book-delete-toolbar button:disabled,.delete-dialog-actions button:disabled{opacity:.4}.file-info-actions .file-info-delete{grid-column:1/-1;width:100%}.delete-books-sheet{max-width:460px}.delete-books-sheet>p{color:var(--muted);font-size:var(--ds-text-body);margin:0;line-height:1.7}.delete-books-sheet>p strong{color:var(--text)}.delete-book-name{border-radius:var(--ds-radius-sm);background:var(--panel-2);overflow-wrap:anywhere;font-size:var(--ds-text-meta);margin-top:16px;padding:12px}.delete-dialog-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;display:grid}.file-info-button{border-radius:var(--ds-radius-sm)}.file-open-button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}@media (max-width:700px){.recent-list>button:nth-child(n+6){display:none}}.file-row-copy strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.manage-sheet,.file-info-sheet,.admin-page{border-radius:var(--ds-radius-lg)}.manage-sheet header span,.file-info-sheet header span{font-size:var(--ds-text-caption)}.manage-sheet h2{font-size:23px}.file-info-sheet h2{font-size:var(--ds-text-section)}.manage-sheet>label:not(.multi-file-picker){font-size:var(--ds-text-meta)}.manage-sheet input{height:var(--ds-control);font-size:var(--ds-text-body)}.manage-submit,.file-info-open,.favorite-action{height:var(--ds-control-lg);font-size:var(--ds-text-body)}.multi-file-picker span,.upload-items span,.secret-option small,.danger-zone>div:first-child span,.delete-confirm label{font-size:var(--ds-text-caption)}.upload-items strong,.secret-option strong,.danger-zone>div:first-child strong,.file-info-sheet dl>div{font-size:var(--ds-text-body)}@media (max-width:800px){:root{--ds-page-x:18px;--ds-page-top:32px;--ds-page-top-with-back:24px;--ds-hero-bottom:28px;--ds-page-bottom:48px}.folder-grid,.recent-list{grid-template-columns:1fr}}@media (max-width:700px){:root{--ds-header-height:58px;--ds-page-top:28px;--ds-page-top-with-back:6px;--ds-hero-bottom:14px;--ds-text-page:28px;--ds-text-section:19px}.app-header{padding-inline:12px}.reader-logo{font-size:16px}.reader-logo span{font-size:14px}.account-actions{gap:2px}.account-actions>span{display:none}.account-actions button{background:0 0;border:0;flex:none;justify-content:center;gap:0;width:42px;height:42px;padding:0;font-size:0}.account-actions button:hover,.account-actions button:focus-visible{background:var(--accent-soft);color:var(--accent)}.account-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.account-actions svg{width:20px;height:20px}.fullscreen-fab{top:calc(10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));width:48px;height:48px}.reader.controls-visible .fullscreen-fab{top:calc(66px + env(safe-area-inset-top))}.folder-content.page-root .root-hero{display:none}.folder-hero{align-items:flex-start;display:flex;position:relative}.desktop-folder-actions{display:none}.mobile-folder-menu{flex:none;gap:2px;margin-top:42px;display:flex;position:relative}.library-topbar .mobile-folder-menu{margin-top:0}.library-topbar .folder-title-group h1{font-size:24px}.mobile-folder-menu-trigger{border:1px solid var(--line);border-radius:var(--ds-radius);background:var(--panel);width:42px;height:42px;color:var(--muted);place-items:center;padding:0;display:grid}.mobile-folder-menu-trigger:hover,.mobile-folder-menu-trigger:focus-visible{color:var(--accent);background:var(--accent-soft)}.favorite-mode-trigger.active{color:#eab308;background:#eab30824}.mobile-folder-menu-trigger svg{width:21px;height:21px}.mobile-folder-menu-popover{z-index:12;border:1px solid var(--line);border-radius:var(--ds-radius);background:var(--panel);width:174px;box-shadow:var(--shadow);padding:5px;position:absolute;top:calc(100% + 6px);right:0}.mobile-folder-menu-popover button{border-radius:var(--ds-radius-sm);width:100%;height:42px;color:var(--text);font-size:var(--ds-text-meta);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0 11px;display:flex}.mobile-folder-menu-popover button:hover,.mobile-folder-menu-popover button:focus-visible{background:var(--accent-soft);color:var(--accent);outline:0}.mobile-folder-menu-popover svg{width:18px;height:18px}.folder-title-group p{font-size:var(--ds-text-body)}.folder-back{min-height:42px;margin-bottom:5px;margin-left:-10px;padding-inline:10px}.recent-section .overline{font-size:11px}.recent-section .section-title h2,.folder-section .section-title h2{font-size:var(--ds-text-section)}.section-more{min-height:40px;font-size:var(--ds-text-caption)}.folder-card div strong{font-size:15px}.folder-card div span{font-size:11px}.recent-list strong{font-size:var(--ds-text-body);font-weight:var(--ds-weight-medium)}.recent-list span,.recent-list b{font-size:11px}.library-search,.sort-select{height:var(--ds-control)}.sort-trigger>strong,.sort-menu>button,.folder-actions button{font-size:var(--ds-text-meta)}.text-file-row{min-height:60px;padding-left:0;display:flex}.book-select-toggle{flex:none;margin-inline:4px}.book-delete-toolbar{grid-template-columns:1fr 1fr;gap:6px;margin-top:0;display:grid}.book-delete-toolbar>span{grid-area:1/1/auto/-1;margin:0}.book-delete-toolbar button{width:100%;min-height:42px;padding:0 8px}.book-delete-toolbar button:first-child{grid-column:1/-1}.file-info-button{flex:none;width:36px;height:44px}.file-info-button:not(.row-favorite-toggle){display:none}.row-favorite-toggle.active{color:#eab308}.file-open-button{flex:1;grid-template-columns:minmax(0,1fr) 42px;gap:4px;min-height:59px;padding-block:6px}.file-open-button>svg:last-child{display:none}.file-row-copy{padding-right:0}.file-row-copy strong{font-size:13px;font-weight:var(--ds-weight-medium);line-height:1.35}.file-row-copy span{margin-top:3px;font-size:11px}.row-progress{background:conic-gradient(var(--accent) var(--progress-angle), var(--line) 0);border-radius:50%;justify-self:end;place-items:center;width:42px;height:42px;display:grid;position:relative}.row-progress:after{content:"";background:var(--app-bg);border-radius:50%;position:absolute;inset:4px}.row-progress span{z-index:1;color:var(--text);font-size:10px;font-weight:var(--ds-weight-bold);margin:0;line-height:1;position:relative}.row-progress i{display:none}.manage-sheet h2,.file-info-sheet h2{font-size:var(--ds-text-section)}.manage-sheet input,.auth-card form input,.library-search input{font-size:16px}}@media (display-mode:standalone){.fullscreen-fab{display:none}}html.library-pull-active,html.library-pull-active body,.folder-library{overscroll-behavior-y:none}.pull-refresh-indicator{--pull-distance:0px;z-index:4;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent);height:42px;color:var(--muted);opacity:0;transform:translate(-50%,calc(-52px + var(--pull-distance)));pointer-events:none;white-space:nowrap;border-radius:21px;align-items:center;gap:8px;padding:0 14px;transition:opacity .16s,transform .16s;display:flex;position:fixed;top:58px;left:50%;box-shadow:0 8px 24px #00000024}.pull-refresh-indicator strong{font-size:11px}.pull-refresh-spinner{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px}.pull-refresh-indicator.refreshing,.pull-refresh-indicator.done,.pull-refresh-indicator.error{opacity:1;--pull-distance:58px!important}.pull-refresh-indicator.refreshing .pull-refresh-spinner{animation:.7s linear infinite spin}.pull-refresh-indicator.done .pull-refresh-spinner{background:#45a46a;border-color:#45a46a}.pull-refresh-indicator.error{color:#c94f4f}.pull-refresh-indicator.error .pull-refresh-spinner{border-color:#c94f4f}@media (min-width:701px){.pull-refresh-indicator{display:none}}.epub-reader{height:100dvh;overflow:hidden}.epub-reader .reader-toolbar{grid-template-columns:42px minmax(0,1fr) auto}.epub-stage{background:var(--reader-bg);position:fixed;inset:62px 0 84px}.epub-navigator{width:100%;height:100%;position:absolute;top:0;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.epub-navigator iframe.readium-navigator-iframe{background:var(--reader-bg);border:0;width:100%;height:100%;inset:0}.epub-loading{color:var(--reader-muted);background:var(--reader-bg);z-index:2;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex;position:absolute;inset:0}.epub-loading.error{color:#d35454;text-align:center;padding:24px}.epub-loading .spinner{border:2px solid var(--reader-line-color);border-top-color:var(--reader-accent);border-radius:50%;width:22px;height:22px;animation:.7s linear infinite spin}.epub-control-hint{z-index:3;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));border:1px solid color-mix(in srgb,var(--reader-text) 14%,transparent);background:color-mix(in srgb,var(--reader-bg) 84%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:min(350px,100% - 28px);min-height:44px;color:var(--reader-muted);pointer-events:none;border-radius:22px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:0 14px;animation:.25s ease-out epub-hint-in;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 8px 28px #00000024}.epub-control-hint span{white-space:nowrap;font-size:10px}.epub-control-hint strong{text-align:center;text-overflow:ellipsis;white-space:nowrap;color:var(--reader-text);font-size:10px;overflow:hidden}.toc-sheet{flex-direction:column;width:min(440px,100%);padding-bottom:0;display:flex;overflow:hidden}.toc-sheet header{flex:none;align-items:flex-start;margin-bottom:8px;padding-bottom:10px}.toc-sheet header h2{margin-top:3px}.sheet-eyebrow{color:var(--reader-accent,var(--accent));letter-spacing:.16em;font-size:9px;font-weight:800}.toc-count{background:color-mix(in srgb,var(--accent) 12%,transparent);min-width:24px;height:24px;color:var(--accent);vertical-align:3px;border-radius:12px;place-items:center;margin-left:5px;padding:0 7px;font-size:10px;display:inline-grid}.toc-list{min-height:0;padding:0 12px calc(22px + env(safe-area-inset-bottom));overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none;cursor:grab;flex:auto;overflow-y:auto}.toc-list::-webkit-scrollbar{display:none}.toc-list:active{cursor:grabbing}.toc-empty{min-height:220px;color:var(--muted);text-align:center;place-items:center;padding:24px;font-size:11px;display:grid}.toc-entry>button{width:100%;min-height:48px;padding:8px 10px 8px calc(12px + var(--toc-depth) * 18px);border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);color:var(--text);text-align:left;background:0 0;border-radius:9px;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:10px;display:grid}.toc-entry>button span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;overflow:hidden}.toc-entry>button svg{width:14px;color:var(--muted)}.toc-entry>button:hover{background:color-mix(in srgb,var(--accent) 7%,transparent)}.toc-entry>button.current{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.toc-entry>button.current span:before{content:"읽는 중";background:var(--accent);color:#fff;vertical-align:1px;border-radius:9px;margin-right:8px;padding:3px 6px;font-size:8px;line-height:1;display:inline-block}@keyframes epub-hint-in{0%{opacity:0;transform:translate(-50%,8px)}}@media (max-width:700px){.epub-stage{inset:0}.epub-reader .reader-toolbar{grid-template-columns:42px minmax(0,1fr) auto}.epub-reader .reader-tools{min-width:210px}.epub-reader .reader-title{margin-left:2px}.epub-reader .reader-title strong{font-size:11.5px}.epub-reader .epub-status .status-center>div>span{font-variant-numeric:tabular-nums}.toc-sheet{height:min(90dvh,820px)}.toc-sheet header{margin-bottom:4px;padding-bottom:6px}.toc-list{padding-left:2px;padding-right:2px}}
