:root{color-scheme:light;--app-custom-background: #111315;--app-custom-surface: #1b1e22;--app-custom-text: #e2e5e8;--app-custom-accent: #4c7df0;--app-custom-accent-contrast: #ffffff;--app-canvas: #f3f1ec;--app-sidebar: #ebe9e3;--app-surface: #faf9f6;--app-surface-strong: #ffffff;--app-surface-muted: #ebe9e3;--app-surface-hover: #e9e7e1;--app-surface-selected: #e3eafb;--app-panel: #faf9f6;--app-panel-elevated: #ffffff;--app-panel-toolbar: #f2f0eb;--app-field: #ffffff;--app-field-muted: #e9e7e1;--app-card: #faf9f6;--app-card-hover: #ffffff;--app-card-selected: #eef2fb;--app-track: #dfe1e5;--app-text: #35383d;--app-text-strong: #171a1f;--app-text-muted: #6d7279;--app-text-faint: #969a9f;--app-line: #d9d6ce;--app-line-strong: #c8c4bb;--app-accent: #3766df;--app-accent-strong: #2858cf;--app-accent-soft: #dfe7fb;--app-accent-contrast: #ffffff;--app-success: #347d5d;--app-danger: #ad4d52;--app-warning: #8c6527;--app-tag-surface: #edf1fa;--app-tag-line: #cbd6eb;--app-tag-text: #52698f;--app-row-read: #eeece6;--app-row-current: #e4ebfa;--app-row-current-text: #455b82;--app-rail-background: var(--app-sidebar);--app-rail-text: var(--app-text-strong);--app-rail-muted: var(--app-text-muted);--app-modal-backdrop: rgb(39 42 47 / 38%);--app-menu-backdrop: rgb(39 42 47 / 25%);--bg: var(--app-canvas);--surface: var(--app-surface);--surface-2: var(--app-surface-muted);--border: var(--app-line);--border-strong: var(--app-line-strong);--text: var(--app-text);--text-2: var(--app-text-muted);--muted: var(--app-text-faint);--primary: var(--app-accent);--primary-2: var(--app-accent-strong);--accent: var(--app-accent);--danger: var(--app-danger);--warning: var(--app-warning);--reader-canvas: var(--app-canvas);--reader-surface: var(--app-surface);--reader-text: var(--app-text);--reader-muted: var(--app-text-muted);--reader-line: var(--app-line);--shadow: 0 24px 64px rgb(38 42 48 / 17%);--shadow-soft: 0 8px 28px rgb(45 49 55 / 12%);--radius: 6px;--radius-control: 5px;--radius-panel: 8px;--radius-overlay: 12px;--app-rail-width: 58px;--workspace-sidebar-width: 244px;--library-sidebar-width: 244px;--library-inspector-width: 348px;--reader-panel-width: 370px;--app-topbar-height: 70px;--reader-bottombar-height: 64px;--layer-chrome: 20;--layer-floating: 40;--layer-drawer: 70;--layer-dialog: 100;--layer-toast: 120;--font-ui: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;--font-serif: "Noto Serif KR", "KoPub Batang", "Batang", Georgia, serif;--font-sans: "Pretendard Variable", Pretendard, "Segoe UI", "Malgun Gothic", Arial, sans-serif;--font-mono: "JetBrains Mono", "D2Coding", Consolas, monospace;--ui-title-xl-size: 21px;--ui-title-lg-size: 20px;--ui-title-md-size: 16px;--ui-body-size: 13px;--ui-meta-size: 12px;--ui-label-size: 12px;--ui-weight-regular: 400;--ui-weight-medium: 500;--ui-weight-semibold: 600;--ui-weight-bold: 700;--ui-tracking-title: -.028em;--ui-tracking-label: -.01em;--ui-leading-title: 1.34;--ui-leading-body: 1.55;--app-card-shadow: 0 8px 28px rgb(38 42 48 / 10%);--app-card-shadow-hover: 0 12px 34px rgb(38 42 48 / 15%);--app-cover-shadow: 0 10px 24px rgb(26 29 34 / 18%);--reading-font-size: 18px;--reading-line-height: 1.85;--reading-paragraph-spacing: 1.15em;--reading-margin-x: 12vw;--reading-width: 760px}[data-theme=dark]{color-scheme:dark;--app-canvas: #111315;--app-sidebar: #0f1113;--app-surface: #15181b;--app-surface-strong: #1b1e22;--app-surface-muted: #202429;--app-surface-hover: #272c31;--app-surface-selected: #263246;--app-panel: #15181b;--app-panel-elevated: #1a1e22;--app-panel-toolbar: #131619;--app-field: #1c2024;--app-field-muted: #111416;--app-card: #171a1d;--app-card-hover: #1e2226;--app-card-selected: #202a38;--app-track: #2a2f35;--app-text: #e2e5e8;--app-text-strong: #f5f6f7;--app-text-muted: #979da5;--app-text-faint: #676d75;--app-line: #292e34;--app-line-strong: #3a4149;--app-accent: #4c7df0;--app-accent-strong: #6a92f4;--app-accent-soft: #203556;--app-accent-contrast: #ffffff;--app-success: #52bf8a;--app-danger: #e06c73;--app-warning: #d7a85d;--app-tag-surface: #1e252e;--app-tag-line: #343e4b;--app-tag-text: #a2afbf;--app-row-read: #111315;--app-row-current: #202a38;--app-row-current-text: #bdc7d5;--app-rail-background: var(--app-sidebar);--app-rail-text: var(--app-text-strong);--app-rail-muted: var(--app-text-muted);--app-modal-backdrop: rgb(2 7 13 / 72%);--app-menu-backdrop: rgb(2 7 13 / 54%);--shadow: 0 30px 90px rgb(0 0 0 / 42%);--shadow-soft: 0 8px 30px rgb(0 0 0 / 24%);--app-card-shadow: 0 8px 30px rgb(0 0 0 / 24%);--app-card-shadow-hover: 0 14px 38px rgb(0 0 0 / 34%);--app-cover-shadow: 0 12px 28px rgb(0 0 0 / 34%)}[data-theme=custom]{--app-canvas: var(--app-custom-background, #111315);--app-sidebar: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 58%, var(--app-custom-background, #111315));--app-surface: var(--app-custom-surface, #1b1e22);--app-surface-strong: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 94%, var(--app-custom-text, #e2e5e8));--app-surface-muted: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 88%, var(--app-custom-text, #e2e5e8));--app-surface-hover: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 82%, var(--app-custom-text, #e2e5e8));--app-surface-selected: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 18%, var(--app-custom-surface, #1b1e22));--app-panel: var(--app-custom-surface, #1b1e22);--app-panel-elevated: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 94%, var(--app-custom-text, #e2e5e8));--app-panel-toolbar: color-mix( in srgb, var(--app-custom-surface, #1b1e22) 76%, var(--app-custom-background, #111315) );--app-field: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 92%, var(--app-custom-text, #e2e5e8));--app-field-muted: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 72%, var(--app-custom-background, #111315));--app-card: var(--app-custom-surface, #1b1e22);--app-card-hover: color-mix(in srgb, var(--app-custom-surface, #1b1e22) 90%, var(--app-custom-text, #e2e5e8));--app-card-selected: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 14%, var(--app-custom-surface, #1b1e22));--app-track: color-mix(in srgb, var(--app-custom-text, #e2e5e8) 16%, var(--app-custom-surface, #1b1e22));--app-text: var(--app-custom-text, #e2e5e8);--app-text-strong: color-mix(in srgb, var(--app-custom-text, #e2e5e8) 94%, white);--app-text-muted: color-mix(in srgb, var(--app-custom-text, #e2e5e8) 66%, var(--app-custom-background, #111315));--app-text-faint: color-mix(in srgb, var(--app-custom-text, #e2e5e8) 44%, var(--app-custom-background, #111315));--app-line: color-mix(in srgb, var(--app-custom-text, #e2e5e8) 14%, var(--app-custom-background, #111315));--app-line-strong: color-mix(in srgb, var(--app-custom-text, #e2e5e8) 24%, var(--app-custom-background, #111315));--app-accent: var(--app-custom-accent, #4c7df0);--app-accent-strong: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 82%, var(--app-custom-text, #e2e5e8));--app-accent-soft: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 20%, var(--app-custom-surface, #1b1e22));--app-accent-contrast: var(--app-custom-accent-contrast, #ffffff);--app-success: #52bf8a;--app-danger: #e06c73;--app-warning: #d7a85d;--app-tag-surface: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 10%, var(--app-custom-surface, #1b1e22));--app-tag-line: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 26%, var(--app-custom-surface, #1b1e22));--app-tag-text: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 44%, var(--app-custom-text, #e2e5e8));--app-row-read: color-mix(in srgb, var(--app-custom-background, #111315) 74%, var(--app-custom-surface, #1b1e22));--app-row-current: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 15%, var(--app-custom-surface, #1b1e22));--app-row-current-text: color-mix(in srgb, var(--app-custom-accent, #4c7df0) 35%, var(--app-custom-text, #e2e5e8));--app-rail-background: var(--app-sidebar);--app-rail-text: var(--app-text-strong);--app-rail-muted: var(--app-text-muted);--app-modal-backdrop: color-mix(in srgb, var(--app-custom-background, #111315) 72%, transparent);--app-menu-backdrop: color-mix(in srgb, var(--app-custom-background, #111315) 52%, transparent);--shadow: 0 30px 90px rgb(0 0 0 / 38%);--shadow-soft: 0 8px 30px rgb(0 0 0 / 22%);--app-card-shadow: 0 8px 30px rgb(0 0 0 / 22%);--app-card-shadow-hover: 0 14px 38px rgb(0 0 0 / 31%);--app-cover-shadow: 0 12px 28px rgb(0 0 0 / 31%)}[data-theme=sepia]{color-scheme:light;--app-canvas: #eee4d3;--app-sidebar: #e4d8c5;--app-surface: #faf3e6;--app-surface-strong: #fffaf0;--app-surface-muted: #e5d8c3;--app-surface-hover: #dfd0b8;--app-surface-selected: #e1dfca;--app-panel: #faf3e6;--app-panel-elevated: #fffaf0;--app-panel-toolbar: #f2e8d7;--app-field: #fffaf0;--app-field-muted: #e5d8c3;--app-card: #faf3e6;--app-card-hover: #fffaf0;--app-card-selected: #efead8;--app-track: #d9ccb7;--app-text: #34291f;--app-text-strong: #251c15;--app-text-muted: #6f5c49;--app-text-faint: #927d66;--app-line: #cfbda2;--app-line-strong: #bca789;--app-accent: #65704d;--app-accent-strong: #505a3a;--app-accent-soft: #e1e1cf;--app-accent-contrast: #ffffff;--app-success: #4f7656;--app-danger: #9b554d;--app-warning: #966522;--app-tag-surface: #ece5d3;--app-tag-line: #d2c29f;--app-tag-text: #705f43;--app-row-read: #e7dcc9;--app-row-current: #e1e1cf;--app-row-current-text: #555d3d;--app-rail-background: var(--app-sidebar);--app-rail-text: var(--app-text-strong);--app-rail-muted: var(--app-text-muted);--app-modal-backdrop: rgb(58 43 28 / 42%);--app-menu-backdrop: rgb(58 43 28 / 26%)}[data-theme=midnight]{color-scheme:dark;--app-canvas: #080f19;--app-sidebar: #09111b;--app-surface: #0d1622;--app-surface-strong: #111b28;--app-surface-muted: #151f2c;--app-surface-hover: #182536;--app-surface-selected: #1a2940;--app-panel: #0d1622;--app-panel-elevated: #101a28;--app-panel-toolbar: #0b1420;--app-field: #101925;--app-field-muted: #0a121d;--app-card: #0d1622;--app-card-hover: #111c2a;--app-card-selected: #101b29;--app-track: #1c2837;--app-text: #d9e0ea;--app-text-strong: #f2f5f9;--app-text-muted: #8f9aaa;--app-text-faint: #606c7d;--app-line: #1a2736;--app-line-strong: #2b3a4d;--app-accent: #3d73f6;--app-accent-strong: #648cff;--app-accent-soft: #152d5d;--app-accent-contrast: #ffffff;--app-success: #52bf8a;--app-danger: #e06c73;--app-warning: #d7a85d;--app-tag-surface: #101b29;--app-tag-line: #26364a;--app-tag-text: #93a3b8;--app-row-read: #09121c;--app-row-current: #14243a;--app-row-current-text: #aebed4;--app-rail-background: var(--app-sidebar);--app-rail-text: var(--app-text-strong);--app-rail-muted: var(--app-text-muted);--app-modal-backdrop: rgb(2 7 13 / 72%);--app-menu-backdrop: rgb(2 7 13 / 54%);--shadow: 0 30px 90px rgb(0 0 0 / 50%);--shadow-soft: 0 8px 30px rgb(0 0 0 / 28%);--app-card-shadow: 0 8px 30px rgb(0 0 0 / 28%);--app-card-shadow-hover: 0 14px 40px rgb(0 0 0 / 38%);--app-cover-shadow: 0 12px 30px rgb(0 0 0 / 38%)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--app-text);background:var(--app-canvas);font-family:var(--font-ui);font-size:var(--ui-body-size, 13px);font-weight:var(--ui-weight-regular, 400);line-height:var(--ui-leading-body, 1.55);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow:auto}h1,h2,h3,h4{text-wrap:balance}button,input,select,textarea{font:inherit}button{border:0;color:inherit}input,select,textarea{color:var(--text)}input::placeholder,textarea::placeholder{color:var(--muted)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:color-mix(in srgb,var(--primary) 26%,transparent)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--app-line-strong);border-radius:var(--radius-control)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{min-height:100dvh;color:var(--app-text);background:var(--app-canvas)}.library-screen,.chapters-screen{height:100dvh;overflow:auto;padding:28px clamp(20px,4vw,56px) 80px}.library-screen{position:relative}.library-drop-overlay{position:fixed;top:14px;right:14px;bottom:14px;left:14px;z-index:55;display:grid;place-items:center;pointer-events:none;background:color-mix(in srgb,var(--primary) 12%,transparent);border:2px dashed color-mix(in srgb,var(--primary) 58%,var(--border));border-radius:var(--radius-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.library-drop-overlay>div{display:grid;justify-items:center;gap:8px;min-width:min(320px,calc(100vw - 56px));padding:24px;color:var(--text);background:color-mix(in srgb,var(--app-surface-strong) 96%,transparent);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow)}.library-drop-overlay svg{color:var(--primary)}.library-drop-overlay span{color:var(--text-2);font-size:.88rem}.app-header,.sub-header,.reader-topbar,.reader-bottombar,.panel-header{display:flex;align-items:center;gap:14px}.app-header,.sub-header{justify-content:space-between;margin-bottom:22px}.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand-mark{width:42px;height:42px;display:grid;place-items:center;color:var(--app-accent-contrast);background:var(--primary-2);border:1px solid color-mix(in srgb,var(--primary-2) 82%,black);border-radius:var(--radius-control)}h1,h2,h3,h4,p{margin:0}.brand h1,.sub-title h1{color:var(--app-text-strong);font-size:clamp(1.35rem,2vw,1.8rem);font-weight:700}.book-title-editor{display:flex;align-items:center;gap:6px;min-width:min(520px,100%)}.book-title-editor input{min-width:0;flex:1;height:38px;padding:0 12px;color:var(--text);background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-control);font:700 1.05rem/1 var(--font-ui)}.brand p,.sub-title p,.muted{color:var(--text-2)}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.sync-pill{min-height:30px;display:inline-flex;align-items:center;padding:0 10px;color:var(--text-2);background:var(--app-surface-muted);border:1px solid var(--border);border-radius:var(--radius-control);font-size:var(--ui-meta-size, 12px);font-weight:var(--ui-weight-medium, 500);white-space:nowrap}button.sync-pill{font-family:inherit;cursor:pointer}.sync-pill.ready{color:var(--primary-2);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.sync-pill.pending,.sync-pill.syncing{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 35%,var(--border))}.sync-pill.warning{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 45%,var(--border))}.sync-pill.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.search-box{height:40px;min-width:min(320px,42vw);display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-control);color:var(--text-2);font-size:var(--ui-body-size, 13px)}.search-box.compact{height:36px;min-width:220px}.search-box:focus-within{border-color:color-mix(in srgb,var(--primary) 72%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.search-box input{width:100%;min-width:0;border:0;outline:0;background:transparent}.primary-btn,.ghost-btn,.icon-btn,.mini-icon-btn,.segmented button,.reader-mode-switch button,.panel-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--radius-control);cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .12s ease;white-space:nowrap}.primary-btn{min-height:40px;padding:0 16px;color:var(--app-accent-contrast);background:var(--primary-2);font-size:var(--ui-body-size, 13px);font-weight:var(--ui-weight-semibold, 600)}.primary-btn:hover{background:var(--primary)}.primary-btn:disabled,.ghost-btn:disabled,.icon-btn:disabled,.mini-icon-btn:disabled{opacity:.45;cursor:not-allowed}.ghost-btn{min-height:38px;padding:0 14px;background:var(--app-surface);border:1px solid var(--border);color:var(--text-2);font-size:var(--ui-body-size, 13px);font-weight:var(--ui-weight-medium, 500)}.ghost-btn:hover{color:var(--text);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.ghost-btn.wide,.primary-btn.wide{width:100%}.icon-btn,.mini-icon-btn{width:38px;height:38px;background:transparent;border:1px solid var(--border);color:var(--text-2)}.icon-btn:hover,.mini-icon-btn:hover{color:var(--text);background:var(--app-surface-hover)}.icon-btn.active,.mini-icon-btn.active{color:var(--primary);background:var(--app-accent-soft);border-color:color-mix(in srgb,var(--primary) 58%,var(--border))}.mini-icon-btn{width:30px;height:30px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.library-screen{height:100dvh;padding:0;overflow:hidden;background:var(--app-canvas)}.library-screen~.floating-import{display:none}.library-product-shell{height:100%;display:grid;grid-template-columns:var(--workspace-sidebar-width, 244px) minmax(0,1fr)}.library-workspace{min-width:0;min-height:0;display:grid;grid-template-rows:var(--app-topbar-height) minmax(0,1fr)}.library-mobile-header{display:none}.library-topbar{position:relative;z-index:var(--layer-chrome);min-width:0;display:grid;grid-template-columns:minmax(280px,535px) minmax(360px,1fr);align-items:center;gap:20px;padding:0 28px;background:var(--app-surface-strong);border-bottom:1px solid var(--border)}.library-search{width:100%;min-width:0;height:38px;background:var(--app-field, var(--app-surface-strong));border-color:var(--border)}.library-search kbd{margin-left:auto;padding:2px 6px;color:var(--muted);background:var(--app-surface-muted);border:1px solid var(--border);border-radius:3px;font:inherit;font-size:.65rem}.library-topbar-actions{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:7px}.library-sync-entry{min-width:118px;min-height:42px;display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 6px;color:var(--text);background:var(--app-surface-muted);border:1px solid var(--border);border-radius:var(--radius-control);font:inherit;cursor:pointer}.library-sync-entry:hover{border-color:color-mix(in srgb,var(--primary) 38%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--app-surface-muted))}.library-sync-entry-icon{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;color:var(--text-2);background:var(--app-surface-strong);border:1px solid var(--border);border-radius:50%}.library-sync-entry-copy{min-width:0;display:grid;gap:1px;text-align:left;line-height:1.1}.library-sync-entry-copy strong{font-size:.76rem}.library-sync-entry-copy small{max-width:94px;overflow:hidden;color:var(--text-2);font-size:.64rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.library-sync-entry.ready .library-sync-entry-icon{color:var(--primary-2);border-color:color-mix(in srgb,var(--primary) 42%,var(--border))}.library-sync-entry.syncing .library-sync-entry-icon>svg{animation:library-bootstrap-spin .9s linear infinite}.library-sync-entry.warning .library-sync-entry-icon,.library-sync-entry.pending .library-sync-entry-icon{color:var(--warning)}.library-sync-entry.danger .library-sync-entry-icon{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 46%,var(--border))}.library-layout{position:relative;min-width:0;min-height:0;display:grid;grid-template-columns:minmax(460px,1fr) var(--library-inspector-width);overflow:hidden}.library-sidebar,.library-inspector{min-width:0;min-height:0;background:linear-gradient(180deg,color-mix(in srgb,var(--app-surface-strong) 18%,transparent),transparent 280px),var(--app-surface)}.library-sidebar{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden;border-right:1px solid var(--border)}.library-brand-lockup{min-height:var(--app-topbar-height);display:flex;align-items:center;padding:0 22px;background:transparent;border-bottom:1px solid var(--border);cursor:pointer}.library-brand-lockup img{width:112px;height:37px;object-fit:contain;object-position:left center}.library-sidebar-scroll{min-height:0;display:flex;flex:1;flex-direction:column;gap:28px;padding:22px 14px;overflow-y:auto}.library-sidebar-footer{display:grid;gap:12px;padding:16px 18px;border-top:1px solid var(--border)}.library-sidebar-footer button{min-height:36px;display:flex;align-items:center;gap:10px;padding:0 9px;color:var(--text-2);background:transparent;border-radius:var(--radius-control);font-size:var(--ui-body-size);font-weight:var(--ui-weight-medium);text-align:left}.library-sidebar-footer button:hover{color:var(--text);background:var(--app-surface-hover)}.library-sidebar-footer p{color:var(--muted);font-size:.66rem;line-height:1.5}.library-sidebar-label{display:block;margin:0 8px 7px;color:var(--text-2);font-size:var(--ui-label-size);font-weight:var(--ui-weight-semibold);letter-spacing:var(--ui-tracking-label)}.library-sidebar-list{display:grid;gap:2px}.library-sidebar-list button{width:100%;min-width:0;min-height:38px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;color:var(--text-2);background:transparent;border-left:2px solid transparent;border-radius:var(--radius-control);cursor:pointer;font-size:var(--ui-body-size);font-weight:var(--ui-weight-medium);text-align:left}.library-sidebar-list button:hover{color:var(--text);background:var(--app-surface-hover)}.library-sidebar-list button.active{color:var(--text);background:var(--app-accent-soft);border-left-color:transparent;font-weight:var(--ui-weight-semibold)}.library-sidebar-list button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-sidebar-list button em{color:var(--muted);font-size:11px;font-style:normal;font-variant-numeric:tabular-nums}.library-sidebar-section-head{display:flex;align-items:center;justify-content:space-between}.library-sidebar-section-head button{width:28px;height:28px;display:grid;place-items:center;color:var(--text-2);background:transparent;border-radius:var(--radius-control);cursor:pointer}.library-sidebar-section-head button:hover{color:var(--text);background:var(--app-surface-hover)}.library-main{min-width:0;min-height:0;padding:24px 28px 48px;overflow:auto;background:radial-gradient(circle at 54% -12%,color-mix(in srgb,var(--primary) 6%,transparent) 0,transparent 34rem),var(--app-canvas)}.recent-band{min-height:164px;display:grid;grid-template-columns:90px minmax(170px,1fr) minmax(180px,.7fr) auto;align-items:center;gap:20px;margin-bottom:26px;padding:15px 20px;background:linear-gradient(112deg,color-mix(in srgb,var(--app-surface-strong) 98%,var(--primary) 2%),var(--app-surface-strong));border:1px solid var(--border);border-radius:10px;box-shadow:var(--app-card-shadow)}.recent-band>.book-cover{width:90px;height:134px;padding:10px;box-shadow:var(--app-cover-shadow)}.recent-band>.book-cover .book-cover-fallback{gap:8px;padding:14px 10px 12px}.recent-band>.book-cover .book-cover-format{top:13px;left:10px;right:10px;font-size:8px}.recent-band>.book-cover .book-cover-fallback strong{font-size:13px;line-height:1.45}.recent-band>.book-cover .book-cover-fallback small{display:none}.recent-copy,.recent-progress{min-width:0}.recent-progress>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.recent-progress>div span{overflow:hidden;color:var(--text-2);font-size:var(--ui-meta-size);text-overflow:ellipsis;white-space:nowrap}.eyebrow{display:block;margin-bottom:6px;color:var(--text-2);font-size:11px;font-weight:var(--ui-weight-semibold);letter-spacing:.01em}.recent-copy h2{overflow:hidden;color:var(--app-text-strong);font-size:var(--ui-title-xl-size);font-weight:var(--ui-weight-semibold);letter-spacing:var(--ui-tracking-title);line-height:var(--ui-leading-title);text-overflow:ellipsis;white-space:nowrap}.recent-copy p,.recent-progress small{color:var(--text-2);font-size:var(--ui-meta-size)}.recent-copy p{margin-top:7px}.recent-progress{display:grid;grid-template-columns:auto;gap:6px}.recent-progress strong{font-size:15px;font-weight:var(--ui-weight-semibold);font-variant-numeric:tabular-nums}.recent-band .primary-btn{min-height:40px;padding-inline:15px;font-size:var(--ui-body-size);font-weight:var(--ui-weight-semibold)}.library-toolbar{min-height:50px;display:flex;align-items:center;gap:12px;margin:0 -28px 18px;padding:0 28px 13px;border-bottom:1px solid var(--border)}.library-toolbar-heading{min-width:0;display:flex;align-items:baseline;gap:8px}.library-toolbar-heading h1{overflow:hidden;color:var(--app-text-strong);font-size:var(--ui-title-lg-size);font-weight:var(--ui-weight-semibold);letter-spacing:var(--ui-tracking-title);line-height:var(--ui-leading-title);text-overflow:ellipsis;white-space:nowrap}.library-toolbar-heading span{color:var(--text-2);font-size:var(--ui-meta-size);white-space:nowrap}.library-mobile-controls{display:none}.library-toolbar-actions{min-width:0;display:flex;align-items:center;gap:6px;margin-left:auto}.library-sort-select select,.library-mobile-controls select{min-height:34px;padding:0 28px 0 9px;background:var(--app-surface);border:1px solid var(--border);border-radius:var(--radius-control);font-size:var(--ui-meta-size)}.library-view-control{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-control);overflow:hidden}.library-view-control button{width:34px;height:32px;display:grid;place-items:center;color:var(--text-2);background:var(--app-surface);cursor:pointer}.library-view-control button+button{border-left:1px solid var(--border)}.library-view-control button:hover,.library-view-control button.active{color:var(--text);background:var(--app-accent-soft)}.library-select-start{min-height:34px;padding:0 10px;font-size:var(--ui-meta-size);font-weight:var(--ui-weight-medium)}.library-shelf-settings{display:none}.library-selection-controls{display:flex;align-items:center;gap:6px}.library-selection-controls strong{font-size:.76rem;white-space:nowrap}.books-list{display:grid;background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-panel)}.book-list-head{min-height:36px;display:grid;grid-template-columns:minmax(220px,1fr) 150px 164px;align-items:center;gap:14px;padding:0 14px 0 69px;color:var(--muted);background:var(--app-panel-toolbar, var(--app-surface-muted));border-bottom:1px solid var(--border);font-size:.68rem}.book-list-head span:nth-child(n+2){text-align:right}.book-list-row{position:relative;min-width:0;min-height:78px;display:grid;grid-template-columns:42px minmax(170px,1fr) 150px 164px;align-items:center;gap:13px;padding:9px 12px;border-left:2px solid transparent}.book-list-row+.book-list-row{border-top:1px solid var(--border)}.book-list-row:hover,.book-list-row.is-focused{background:var(--app-surface-hover)}.book-list-row.is-focused{border-left-color:var(--primary)}.book-list-row.is-selected,.book-card.is-selected{background:var(--app-accent-soft);border-color:var(--primary)}.book-card-open{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:transparent;border-radius:inherit;cursor:pointer}.book-card>:not(.book-card-open),.book-list-row>:not(.book-card-open){pointer-events:none}.book-card .card-actions,.book-card .card-actions *,.book-list-row .card-actions,.book-list-row .card-actions *{pointer-events:auto}.book-list-main,.book-list-title{min-width:0}.book-list-title{display:flex;align-items:center;gap:7px}.book-list-title h3,.book-info h3{min-width:0;overflow:hidden;color:var(--app-text-strong);font-size:var(--ui-title-md-size);font-weight:var(--ui-weight-semibold);letter-spacing:-.02em;line-height:var(--ui-leading-title);text-overflow:ellipsis;white-space:nowrap}.book-list-title svg,.book-favorite-mark{flex:0 0 auto;color:var(--primary)}.book-list-main p,.book-list-progress span,.book-info p,.card-row{color:var(--text-2);font-size:var(--ui-meta-size)}.book-list-main p,.book-info p{margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-list-progress{min-width:0;display:grid;gap:4px;text-align:right}.book-list-progress strong{font-size:.8rem;font-variant-numeric:tabular-nums}.book-list-progress span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions{position:relative;z-index:2;display:flex;align-items:center;gap:4px}.book-list-row .book-edit-action,.book-list-row .book-remove-action{opacity:0}.book-list-row:hover .book-edit-action,.book-list-row:hover .book-remove-action,.book-list-row:focus-within .book-edit-action,.book-list-row:focus-within .book-remove-action{opacity:1}.books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,216px));gap:30px 22px;align-items:start}.book-card{position:relative;container-type:inline-size;min-width:0;padding:11px;background:var(--app-card);border:1px solid var(--border);border-radius:8px;box-shadow:var(--app-card-shadow);transition:transform .15s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.book-card:hover,.book-card.is-focused{background:var(--app-card-hover, var(--app-surface-hover));border-color:color-mix(in srgb,var(--app-line-strong) 82%,var(--primary) 18%);box-shadow:var(--app-card-shadow-hover);transform:translateY(-1px)}.book-cover-wrap{position:relative}.book-format-overlay{position:absolute;z-index:2;left:8px;top:8px;bottom:auto;padding:4px 7px;color:#fff;background:#191c21c7;border:1px solid rgb(255 255 255 / 12%);border-radius:4px;font-size:11px;font-weight:var(--ui-weight-semibold);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.book-card .book-cover-format{display:none}.book-cover.thumb .book-format-overlay{left:4px;top:4px;padding:2px 4px;font-size:8px}.book-cover{position:relative;aspect-ratio:2 / 3;display:flex;align-items:stretch;justify-content:center;padding:0;overflow:hidden;color:#f7f6f0;background:#4d5547;border:1px solid color-mix(in srgb,#000 18%,transparent);border-radius:6px;box-shadow:var(--app-cover-shadow);isolation:isolate}.book-cover:after{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;border:1px solid rgb(255 255 255 / 12%);border-radius:inherit;content:"";pointer-events:none}.book-cover>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:var(--app-surface-muted)}.external-work-card .book-cover>img,.external-work-list-row .book-cover>img{object-fit:cover}.external-work-cover-fallback{width:100%;height:100%;display:grid;place-items:center;color:color-mix(in srgb,currentColor 72%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 22%,#34425b),#273244)}.book-cover-fallback{position:relative;z-index:0;width:100%;min-width:0;display:grid;grid-template-rows:auto 1fr auto;align-items:center;gap:14px;padding:17px 15px 16px;background:linear-gradient(90deg,rgb(255 255 255 / 7%) 0 1px,transparent 1px) 12px 0 / calc(100% - 24px) 100% no-repeat,linear-gradient(160deg,rgb(255 255 255 / 8%),transparent 48%,rgb(0 0 0 / 14%));text-align:center}.book-cover-fallback:before{width:28px;height:1px;margin:0 auto;background:currentColor;content:"";opacity:.58}.book-cover-fallback strong{min-width:0;max-width:100%;align-self:center;font-family:var(--font-serif);font-size:clamp(14px,8.2cqi,18px);font-weight:600;letter-spacing:-.035em;line-height:1.5;overflow-wrap:anywhere}.book-cover-format,.book-cover-fallback small{min-width:0;overflow:hidden;font-family:var(--font-ui);font-size:clamp(8px,4.8cqi,10px);font-weight:var(--ui-weight-semibold);letter-spacing:.08em;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;opacity:.74}.book-cover-format{position:absolute;top:17px;left:15px;right:15px}.cover-1{background:#4d5547}.cover-2{background:#725347}.cover-3{background:#465873}.cover-4{background:#6f4d58}.cover-5{background:#3f6152}.cover-6{background:#554f70}.book-cover.thumb{width:42px;height:58px;flex:0 0 auto}.book-cover.thumb .book-cover-fallback{gap:4px;padding:6px 4px 5px}.book-cover.thumb .book-cover-format,.book-cover.thumb .book-cover-fallback small,.book-cover.thumb .book-cover-fallback:before{display:none}.book-cover.thumb .book-cover-fallback strong{font-size:7px;line-height:1.3}.book-info{padding:13px 2px 3px}.book-title-line{min-width:0;display:flex;align-items:center;gap:6px}.card-row{min-width:0;display:flex;align-items:center;gap:7px;margin-top:10px}.card-row>span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-row>strong{color:var(--text);font-size:var(--ui-meta-size);font-weight:var(--ui-weight-semibold)}.book-card .card-actions{gap:4px}.book-card .card-row>span{display:none}.book-card .book-edit-action,.book-card .book-remove-action{display:none}.book-card.external-work-card .book-remove-action{display:inline-grid}.book-direct-action{min-height:30px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 9px;color:var(--app-accent-contrast);background:var(--primary);border-radius:var(--radius-control);font-size:11px;font-weight:var(--ui-weight-semibold);white-space:nowrap}.book-direct-action:hover{background:var(--primary-2)}@container (max-width: 170px){.book-card .card-row>span,.book-card .book-favorite-action{display:none}.book-card .book-direct-action span{display:none}.book-card .book-direct-action{width:30px;padding:0}.book-card .card-row{justify-content:space-between}}.progress-track,.card-progress{height:3px;overflow:hidden;background:var(--app-line);border-radius:0}.card-progress{margin-top:8px}.progress-track span,.card-progress span,.top-progress span{display:block;height:100%;background:var(--primary)}.book-selection-mark{position:absolute;top:5px;left:5px;z-index:2;width:23px;height:23px;display:grid;place-items:center;color:#fff;background:color-mix(in srgb,#111 60%,transparent);border:1px solid color-mix(in srgb,#fff 72%,transparent);border-radius:2px}.is-selected .book-selection-mark{background:var(--primary)}.library-inspector{display:flex;flex-direction:column;border-left:1px solid var(--border)}.library-inspector-header{min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border)}.library-inspector-header>span{font-size:var(--ui-label-size);font-weight:var(--ui-weight-semibold);letter-spacing:var(--ui-tracking-label)}.library-inspector-close{display:none}.library-inspector-scroll{min-height:0;padding:24px 22px 32px;overflow-y:auto}.library-inspector-cover{width:min(150px,62%);margin:0 auto 20px;box-shadow:var(--app-cover-shadow)}.library-inspector-title{text-align:center}.library-inspector-title>span{color:var(--primary);font-size:11px;font-weight:var(--ui-weight-semibold)}.library-inspector-title h2{margin-top:7px;color:var(--app-text-strong);font-size:var(--ui-title-lg-size);font-weight:var(--ui-weight-semibold);letter-spacing:var(--ui-tracking-title);line-height:var(--ui-leading-title)}.library-inspector-title p{margin-top:7px;color:var(--text-2);font-size:var(--ui-meta-size)}.library-inspector-progress{margin:20px 0 13px;padding-top:16px;border-top:1px solid var(--border)}.library-inspector-progress>div{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:9px}.library-inspector-progress span,.library-inspector-progress small{color:var(--text-2);font-size:var(--ui-meta-size)}.library-inspector-progress strong{color:var(--app-text-strong);font-size:20px;font-weight:var(--ui-weight-semibold);font-variant-numeric:tabular-nums}.library-inspector-progress small{display:block;margin-top:7px}.library-inspector-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:7px}.library-inspector-actions .ghost-btn{min-width:0;min-height:34px;padding:0 6px;gap:5px;font-size:11px;font-weight:var(--ui-weight-medium)}.library-inspector-actions .active{color:var(--primary);background:var(--app-accent-soft)}.library-inspector-details{display:grid;gap:8px;margin:20px 0 0;padding-top:17px;border-top:1px solid var(--border)}.library-inspector-details>div{min-width:0;display:grid;grid-template-columns:74px minmax(0,1fr);gap:8px;font-size:var(--ui-meta-size)}.library-inspector-details dt{color:var(--text-2)}.library-inspector-details dd{min-width:0;margin:0;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.library-inspector-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:16px}.library-inspector-tags span{padding:3px 6px;color:var(--text-2);background:var(--app-surface-muted);border-radius:2px;font-size:11px;font-weight:var(--ui-weight-medium)}.library-inspector-description{margin-top:14px;color:var(--text-2);font-size:var(--ui-meta-size);line-height:1.65}.library-inspector-empty{height:100%;display:grid;place-items:center;align-content:center;gap:9px;padding:22px;color:var(--muted);text-align:center}.library-inspector-empty p{max-width:180px;font-size:.76rem;line-height:1.55}.library-inspector-backdrop{display:none}.segmented,.reader-mode-switch,.panel-tabs{display:inline-flex;gap:2px;padding:3px;background:var(--surface-2);border-radius:var(--radius-control)}.segmented.full{width:100%}.segmented button,.reader-mode-switch button,.panel-tabs button{min-height:32px;padding:0 10px;background:transparent;color:var(--text-2);font-size:.82rem}.segmented button.active,.reader-mode-switch button.active,.panel-tabs button.active{color:var(--text);background:var(--app-surface-strong);box-shadow:0 1px 3px #00000014}.library-batch-bar{position:fixed;z-index:var(--layer-floating);left:calc(var(--workspace-sidebar-width, 244px) + 20px);right:calc(var(--library-inspector-width) + 20px);bottom:14px;min-height:50px;display:flex;align-items:center;gap:7px;padding:7px 9px;overflow-x:auto;background:color-mix(in srgb,var(--app-surface-strong) 96%,transparent);border:1px solid var(--app-line-strong);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.library-batch-summary,.library-batch-utilities{display:flex;align-items:center;gap:6px}.library-batch-summary{flex:0 0 auto;padding-right:7px;border-right:1px solid var(--border)}.library-batch-summary>div{min-width:58px;display:grid;line-height:1.08}.library-batch-summary strong{color:var(--primary);font-size:.86rem}.library-batch-summary span,.library-batch-label{color:var(--muted);font-size:.66rem;font-weight:650}.library-batch-group{display:flex;align-items:center;gap:5px;padding-right:7px;border-right:1px solid var(--border)}.library-batch-label{padding-inline:2px;white-space:nowrap}.library-batch-utilities{margin-left:auto}.library-batch-group select{min-height:34px;max-width:130px}.batch-tag-input{min-width:126px;min-height:34px;display:flex;align-items:center;gap:5px;padding:0 8px;background:var(--app-surface-muted);border:1px solid var(--border);border-radius:var(--radius-control)}.batch-tag-input input{width:86px;min-width:0;padding:0;background:transparent;border:0}.library-management-dialog .metadata-editor{grid-template-columns:190px minmax(0,1fr);gap:24px;padding:20px}.library-management-dialog .metadata-cover-editor{position:sticky;top:0}.library-management-dialog .metadata-cover-preview{border-radius:var(--radius-panel);box-shadow:0 10px 24px color-mix(in srgb,#000 12%,transparent)}.library-management-dialog .metadata-cover-controls{gap:10px}.metadata-cover-help{color:var(--muted);font-size:.67rem;line-height:1.45}.library-management-dialog .metadata-fields{align-content:start;gap:22px}.metadata-section{display:grid;gap:12px;padding-bottom:22px;border-bottom:1px solid var(--border)}.metadata-section:last-child{padding-bottom:0;border-bottom:0}.metadata-section-heading{display:grid;gap:3px}.metadata-section-heading h2{color:var(--text);font-size:.88rem;font-weight:740}.metadata-section-heading p{color:var(--muted);font-size:.7rem}.book-enrichment-inbox{padding:12px 14px;background:var(--app-surface);border:1px solid var(--border);border-radius:var(--radius-panel)}.book-enrichment-inbox.is-expanded{background:color-mix(in srgb,var(--app-surface-strong) 72%,var(--app-surface))}.enrichment-heading-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.enrichment-heading-row h2,.enrichment-provider-runner,.enrichment-candidate-source,.enrichment-candidate-actions{display:flex;align-items:center;gap:7px}.enrichment-collapse-toggle{min-width:0;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;align-items:center;gap:10px;padding:2px 0;color:var(--text);background:transparent;border:0;text-align:left;cursor:pointer}.enrichment-collapse-toggle>span{display:inline-flex;align-items:center;gap:7px;font-size:.88rem;font-weight:740}.enrichment-collapse-toggle small{min-width:0;color:var(--muted);font-size:.66rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enrichment-collapse-toggle>svg,.enrichment-history-heading>svg{transition:transform .15s ease}.book-enrichment-inbox.is-expanded .enrichment-collapse-toggle>svg,.enrichment-history[open] .enrichment-history-heading>svg{transform:rotate(180deg)}.enrichment-content{display:grid;gap:10px;padding-top:12px}.enrichment-content[hidden]{display:none}.enrichment-provider-runner select{max-width:190px}.enrichment-empty{color:var(--muted);font-size:.72rem}.enrichment-candidate-list{display:grid;gap:10px}.enrichment-candidate-card{display:grid;gap:11px;padding:12px;background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-control)}.enrichment-candidate-card.is-stale{opacity:.72}.enrichment-candidate-card>p{color:var(--text-2);font-size:.7rem;line-height:1.55}.enrichment-candidate-source{flex-wrap:wrap;color:var(--muted);font-size:.66rem}.enrichment-candidate-source>:first-child{color:var(--text);font-weight:700}.enrichment-candidate-source a{display:inline-flex;align-items:center;gap:3px;color:var(--primary);text-decoration:none}.enrichment-candidate-source a:hover{text-decoration:underline}.enrichment-metadata-diff{display:grid;gap:6px}.enrichment-metadata-diff label{display:grid;grid-template-columns:auto 64px minmax(0,1fr) minmax(0,1fr);align-items:start;gap:7px;padding:8px;background:var(--app-surface-muted);border-radius:8px;font-size:.68rem}.enrichment-field-name{color:var(--text);font-weight:700}.enrichment-current-value{color:var(--muted);overflow-wrap:anywhere}.enrichment-proposed-value{color:var(--primary);overflow-wrap:anywhere}.enrichment-candidate-actions{justify-content:flex-end}.enrichment-cover-compare{display:grid;grid-template-columns:repeat(2,minmax(0,140px));justify-content:center;gap:16px}.enrichment-cover-compare figure{display:grid;gap:6px;margin:0;text-align:center}.enrichment-cover-compare .book-cover,.enrichment-cover-compare img{width:100%;aspect-ratio:2 / 3;border-radius:8px;background:var(--app-surface-muted)}.enrichment-cover-compare figcaption,.enrichment-cover-layout label{color:var(--muted);font-size:.66rem}.enrichment-cover-layout{display:grid;gap:8px}.enrichment-cover-layout label{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:8px}.enrichment-history{display:grid;gap:9px;padding-top:2px}.enrichment-history-heading,.enrichment-history-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.enrichment-history-heading{justify-content:flex-start;padding:8px 0;list-style:none;cursor:pointer}.enrichment-history-heading::-webkit-details-marker{display:none}.enrichment-history-heading>span{margin-left:auto}.enrichment-history-heading h3{color:var(--text);font-size:.78rem}.enrichment-history-heading>span,.enrichment-history-card>time,.enrichment-receipt-note{color:var(--muted);font-size:.66rem}.enrichment-history-list{display:grid;gap:8px}.enrichment-history-card{display:grid;gap:8px;padding:11px;background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-control)}.enrichment-history-card.is-undone,.enrichment-history-card.is-record-only{background:var(--app-surface-muted)}.enrichment-receipt-state{flex:none;padding:3px 7px;color:var(--muted);background:var(--app-surface-muted);border-radius:999px;font-size:.62rem;font-weight:700}.enrichment-history-card.is-available .enrichment-receipt-state{color:var(--primary);background:var(--app-accent-soft)}.enrichment-receipt-diff{display:grid;gap:5px}.enrichment-receipt-diff>div{display:grid;grid-template-columns:56px minmax(0,1fr) auto minmax(0,1fr);gap:7px;padding:7px 8px;color:var(--text-2);background:var(--app-surface-muted);border-radius:7px;font-size:.66rem}.enrichment-receipt-diff strong{color:var(--text)}.enrichment-receipt-diff span{overflow-wrap:anywhere}.metadata-basic-grid{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:12px}.library-management-dialog .metadata-basic-grid label{display:grid;gap:6px}.metadata-basic-grid label:nth-child(1),.metadata-basic-grid label:nth-child(2),.metadata-wide-field{grid-column:1 / -1}.metadata-tag-list{display:flex;flex-wrap:wrap;gap:7px}.metadata-tag-chip{min-height:30px;display:inline-flex;align-items:center;gap:5px;padding:0 9px;color:var(--primary);background:var(--app-accent-soft);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:999px;font-size:.72rem}.metadata-tag-chip:hover{border-color:color-mix(in srgb,var(--primary) 48%,var(--border))}.metadata-tag-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.metadata-tag-input-row input{width:100%}.metadata-shelf-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.metadata-shelf-options button{min-height:40px;min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 10px;color:var(--text-2);background:var(--app-surface-muted);border:1px solid var(--border);border-radius:var(--radius-control);text-align:left}.metadata-shelf-options button>span:nth-of-type(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metadata-shelf-options button.is-selected{color:var(--text);background:var(--app-accent-soft);border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.library-management-dialog .metadata-editor>.dialog-actions{position:sticky;bottom:-20px;z-index:2;margin:0 -20px -20px -214px;padding:12px 20px;background:color-mix(in srgb,var(--app-surface-strong) 96%,transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.empty-state{min-height:52vh;display:grid;place-items:center;align-content:center;gap:10px;padding:42px 20px;color:var(--text-2);background:var(--app-surface);border:1px dashed var(--app-line-strong);border-radius:var(--radius-panel);text-align:center}.empty-state h2{color:var(--text);font-size:1.05rem}.empty-state p{max-width:440px;font-size:.82rem}.empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:7px}.library-bootstrap-state{min-height:52vh;display:grid;place-items:center;align-content:center;gap:10px;padding:42px 20px;color:var(--text-2);text-align:center}.library-bootstrap-state h2{color:var(--text);font-size:1.05rem}.library-bootstrap-state p{max-width:460px;font-size:.82rem;line-height:1.6}.library-bootstrap-mark{width:26px;height:26px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:library-bootstrap-spin .8s linear infinite}.library-bootstrap-state.is-error svg{color:var(--danger)}@keyframes library-bootstrap-spin{to{transform:rotate(1turn)}}.library-drop-overlay{top:10px;right:10px;bottom:10px;left:10px}.library-screen button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.library-screen .book-card-open:focus-visible{outline-offset:-3px}.library-screen .search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}@media(max-width:1279px){.library-product-shell{grid-template-columns:minmax(0,1fr)}.library-product-shell>.library-sidebar{display:none}.library-topbar{grid-template-columns:minmax(260px,520px) minmax(340px,1fr)}.library-layout{grid-template-columns:minmax(0,1fr)}.library-inspector{position:absolute;z-index:var(--layer-drawer);inset:0 0 0 auto;width:min(var(--library-inspector-width),calc(100vw - 32px));transform:translate(100%);transition:transform .17s ease;box-shadow:-14px 0 36px color-mix(in srgb,#000 20%,transparent)}.library-inspector.is-open{transform:translate(0)}.library-inspector-close{display:inline-flex}.library-inspector-backdrop{position:absolute;z-index:calc(var(--layer-drawer) - 1);top:0;right:0;bottom:0;left:0;display:block;background:var(--app-menu-backdrop)}.library-batch-bar{left:18px;right:18px}}@media(max-width:699px){.library-workspace{grid-template-rows:auto minmax(0,1fr)}.library-topbar{display:none}.library-mobile-header{position:relative;z-index:var(--layer-chrome);display:block;background:var(--app-surface-strong);border-bottom:1px solid var(--border)}.library-layout{grid-template-columns:minmax(0,1fr)}.library-main{width:100%;padding:22px 14px calc(48px + env(safe-area-inset-bottom,0px))}.library-batch-bar{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));min-height:0;max-height:calc(100dvh - 78px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;padding:11px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-radius:var(--radius-overlay)}.library-batch-summary{justify-content:space-between;padding:0 0 9px;border-right:0;border-bottom:1px solid var(--border)}.library-batch-summary>div{display:flex;align-items:baseline;gap:5px}.library-batch-group{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;padding:0;border-right:0}.library-batch-label,.library-batch-group select,.library-batch-tags .batch-tag-input{grid-column:1 / -1}.library-batch-group select,.library-batch-group .ghost-btn,.library-batch-tags .batch-tag-input{width:100%;max-width:none}.library-batch-tags .batch-tag-input input{width:100%}.library-batch-utilities{display:grid;grid-template-columns:38px 38px 38px minmax(0,1fr);gap:7px;margin:0;padding-top:1px}.library-batch-utilities .icon-btn,.library-batch-utilities .ghost-btn{width:100%}.library-management-dialog .metadata-editor{grid-template-columns:minmax(0,1fr);gap:20px;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px))}.library-management-dialog .metadata-cover-editor{position:static;grid-template-columns:118px minmax(0,1fr);gap:14px}.library-management-dialog .metadata-cover-preview{width:118px}.library-management-dialog .metadata-fields{gap:20px}.metadata-basic-grid{grid-template-columns:minmax(0,1fr) 86px;gap:10px 8px}.metadata-basic-grid label:nth-child(2),.metadata-wide-field{grid-column:1 / -1}.metadata-shelf-options,.enrichment-heading-row{grid-template-columns:minmax(0,1fr)}.enrichment-provider-runner{justify-content:space-between}.enrichment-provider-runner .ghost-btn{margin-left:auto}.enrichment-metadata-diff label{grid-template-columns:auto 56px minmax(0,1fr)}.enrichment-proposed-value{grid-column:3}.enrichment-history-card>header{align-items:flex-start}.enrichment-receipt-diff>div{grid-template-columns:48px minmax(0,1fr) auto}.enrichment-receipt-diff>div>span:last-child{grid-column:2}.library-management-dialog .metadata-editor>.dialog-actions{bottom:calc(-16px - env(safe-area-inset-bottom,0px));margin:0 -16px calc(-16px - env(safe-area-inset-bottom,0px));padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px))}.library-toolbar{margin-inline:-14px;padding-inline:14px}.library-toolbar-heading h1{font-size:18px}.library-inspector,.library-inspector-backdrop{display:none}.library-mobile-bar{height:calc(54px + env(safe-area-inset-top,0px));display:flex;align-items:center;gap:2px;padding:env(safe-area-inset-top,0px) 7px 0}.library-mobile-icon,.library-mobile-shelf{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-2);background:transparent;border-radius:var(--radius-control)}.library-mobile-icon:hover,.library-mobile-shelf:hover{color:var(--text);background:var(--app-surface-hover)}.library-mobile-shelf{max-width:88px;gap:5px;padding:0 7px;font-size:.69rem}.library-mobile-shelf span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-mobile-spacer{min-width:32px;flex:1}.library-mobile-quick-shelves{display:flex;gap:6px;padding:8px 10px;overflow-x:auto;border-top:1px solid var(--border);scrollbar-width:none}.library-mobile-quick-shelves button{min-height:32px;padding:0 11px;color:var(--text-2);background:var(--app-surface-muted);border:1px solid transparent;border-radius:999px;font-size:.72rem;white-space:nowrap}.library-mobile-quick-shelves button.active{color:var(--text);background:var(--app-accent-soft);border-color:color-mix(in srgb,var(--primary) 38%,var(--border))}.library-mobile-search{min-height:52px;display:grid;grid-template-columns:20px minmax(0,1fr) 36px;align-items:center;gap:7px;padding:7px 12px;background:var(--app-surface-strong);border-top:1px solid var(--border)}.library-mobile-search input{min-width:0;height:36px;color:var(--text);padding:0 10px;background:var(--app-field, var(--app-surface));border:1px solid var(--border);border-radius:var(--radius-control);outline:0}.library-mobile-search:focus-within input{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.library-mobile-search button{width:36px;height:36px;display:grid;place-items:center;color:var(--text-2);background:transparent}.library-mobile-menu-backdrop{position:fixed;z-index:calc(var(--layer-drawer) - 1);top:0;right:0;bottom:0;left:0;background:var(--app-menu-backdrop, rgb(25 28 33 / 28%))}.library-mobile-popover{position:absolute;z-index:var(--layer-drawer);top:calc(100% + 7px);right:10px;width:min(250px,calc(100vw - 20px));display:grid;gap:3px;padding:8px;background:var(--app-panel-elevated, var(--app-surface-strong));border:1px solid var(--border);border-radius:var(--radius-overlay);box-shadow:var(--shadow-soft)}.library-mobile-popover>strong{padding:8px 9px 4px;color:var(--muted);font-size:.67rem}.library-mobile-popover button{min-height:42px;display:flex;align-items:center;gap:9px;padding:0 10px;color:var(--text-2);background:transparent;border-radius:var(--radius-control);text-align:left}.library-mobile-popover button.active,.library-mobile-popover button:hover{color:var(--text);background:var(--app-surface-hover)}.library-mobile-popover small{margin-left:auto;color:var(--muted)}.library-mobile-display>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.library-mobile-drawer{width:min(340px,calc(100vw - 36px));color:var(--text);background:var(--app-surface);outline:0}.library-mobile-drawer>.modal-drawer-header{min-height:calc(64px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 18px 0;border-bottom:1px solid var(--border)}.library-mobile-drawer>.modal-drawer-header img{width:112px;height:28px;object-fit:contain;object-position:left center}.library-mobile-drawer>.modal-drawer-header button{width:44px;height:44px;display:grid;place-items:center;color:var(--text-2);background:transparent}.library-mobile-drawer>.modal-drawer-content{padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.library-mobile-drawer-scroll{padding:20px 13px}.library-mobile-drawer-scroll h2{margin:0 9px 7px;color:var(--muted);font-size:var(--ui-label-size);font-weight:var(--ui-weight-semibold);letter-spacing:var(--ui-tracking-label)}.library-mobile-drawer-scroll h2:not(:first-child){margin-top:24px}.library-mobile-drawer>.modal-drawer-footer{display:grid;gap:2px;padding:10px 13px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border)}.library-mobile-drawer>.modal-drawer-footer button{min-height:44px;display:flex;align-items:center;gap:10px;padding:0 10px;color:var(--text-2);background:transparent;border-radius:var(--radius-control);text-align:left}.recent-band{display:none}.library-screen .books-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 8px}.library-screen .library-mobile-controls,.library-screen .library-sort-select,.library-screen .library-view-control,.library-screen .library-shelf-settings,.library-screen .book-list-head{display:none}.library-screen .books-list{grid-template-columns:minmax(0,1fr);min-width:0}.library-screen .book-list-row{width:100%;min-width:0;grid-template-columns:48px minmax(0,1fr) 40px 62px;gap:8px;overflow:hidden}.library-screen .book-list-main,.library-screen .book-list-progress{min-width:0}.library-screen .book-list-progress span,.library-screen .book-list-row .book-edit-action,.library-screen .book-list-row .book-remove-action{display:none}.library-screen .book-list-row>.card-actions{justify-content:flex-end}.library-screen .book-card{padding:2px;background:transparent;border-color:transparent;box-shadow:none}.library-screen .book-card:hover,.library-screen .book-card.is-focused{background:transparent;border-color:transparent;box-shadow:none;transform:none}.library-screen .book-cover{border-radius:5px;box-shadow:0 7px 18px #00000038}.library-screen .book-info{padding-top:7px}.library-screen .book-info h3{font-size:13px;font-weight:var(--ui-weight-semibold);letter-spacing:-.02em}.library-screen .book-info p,.library-screen .card-row>span{display:none}.library-screen .book-format-overlay{left:5px;top:5px;padding:3px 5px;font-size:9px}.library-screen .card-row{margin-top:5px}.library-screen .card-progress{margin-top:6px}.library-screen .book-direct-action{width:28px;min-height:28px;padding:0}.library-screen .book-direct-action span{display:none}}@media(max-width:320px){.library-screen .books-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap-inline:8px}}.chapters-screen{width:100%;height:100%;min-height:0;min-width:0;overflow-y:auto;background:radial-gradient(circle at 48% 0%,color-mix(in srgb,var(--primary) 7%,transparent),transparent 42%),var(--app-canvas)}.book-detail-main{width:min(1080px,100%);min-width:0;display:grid;gap:10px;margin:0 auto;padding:18px 22px 40px}.book-detail-hero,.book-management-disclosure,.chapter-panel{min-width:0;background:var(--app-surface);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow-soft)}.book-detail-hero{padding:10px 18px 0}.detail-back-button{min-height:32px;display:inline-flex;align-items:center;gap:6px;margin:0 0 5px -6px;padding:0 7px;color:var(--text-2);background:transparent;border-radius:var(--radius-control);font-size:.76rem}.detail-back-button:hover{color:var(--text);background:var(--app-surface-hover)}.detail-hero-body{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;align-items:start;padding:0 8px 10px}.detail-hero-cover,.detail-hero-cover>.book-cover{width:112px}.detail-hero-cover>.book-cover{min-height:168px;padding:10px;box-shadow:0 8px 22px color-mix(in srgb,#000 16%,transparent)}.detail-hero-copy{min-width:0;padding-top:1px}.detail-status{display:inline-flex;margin-bottom:4px;color:var(--primary);font-size:.7rem;font-weight:700}.detail-hero-copy h1{margin:0;color:var(--app-text-strong);font-size:1.55rem;font-weight:680;letter-spacing:-.04em}.detail-byline{margin-top:5px;color:var(--text-2);font-size:.78rem}.detail-description{max-width:720px;margin-top:10px;overflow:hidden;color:var(--text);font-size:.78rem;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.detail-tags{max-width:720px;display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:9px;color:var(--muted)}.detail-tags span{padding:3px 7px;color:var(--text-2);background:var(--app-surface-muted);border:1px solid var(--border);border-radius:999px;font-size:.66rem}.detail-reading-progress{max-width:720px;margin-top:12px}.detail-reading-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:7px;color:var(--text-2);font-size:.73rem}.detail-reading-progress strong{color:var(--text);font-variant-numeric:tabular-nums}.detail-reading-progress small{display:block;margin-top:5px;color:var(--muted);font-size:.68rem}.detail-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:12px}.detail-hero-actions .primary-btn{min-width:144px;min-height:38px}.detail-hero-actions>button:not(.primary-btn){min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;color:var(--text-2);background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-control);font-size:.73rem}.detail-hero-actions>button:not(.primary-btn):hover,.detail-hero-actions>button.is-active{color:var(--text);background:var(--app-surface-hover)}.detail-hero-actions>button.is-favorite{color:var(--danger)}.detail-hero-actions>.detail-add-chapter-button{justify-content:center;white-space:nowrap}.book-title-editor{max-width:620px}.book-title-editor button{width:38px;height:38px;display:grid;flex:0 0 auto;place-items:center;color:var(--text-2);background:transparent;border:1px solid var(--border);border-radius:var(--radius-control)}.detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-top:1px solid var(--border)}.detail-stats>div{min-width:0;padding:9px 14px 10px;border-right:1px solid var(--border)}.detail-stats>div:last-child{border-right:0}.detail-stats dt{margin-bottom:5px;color:var(--muted);font-size:.64rem}.detail-stats dd{margin:0;overflow:hidden;color:var(--text);font-size:.76rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.book-management-disclosure{overflow:hidden}.book-management-disclosure>summary{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;color:var(--text-2);cursor:pointer;list-style:none;font-size:.75rem;font-weight:650}.book-management-disclosure>summary::-webkit-details-marker{display:none}.book-management-disclosure>summary:after{content:"›";margin-left:4px;color:var(--muted);font-size:1rem;transform:rotate(90deg);transition:transform .14s ease}.book-management-disclosure[open]>summary:after{transform:rotate(-90deg)}.book-management-disclosure>summary small{margin-left:auto;color:var(--muted);font-size:.67rem;font-weight:500}.book-management-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.8fr);gap:16px;padding:14px 16px 16px;border-top:1px solid var(--border)}.book-management-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border:1px solid var(--border)}.book-management-facts div{min-width:0;display:grid;grid-template-columns:86px minmax(0,1fr);gap:8px;padding:8px 10px;border-bottom:1px solid var(--border)}.book-management-facts div:nth-child(odd){border-right:1px solid var(--border)}.book-management-facts dt,.book-management-facts dd{min-width:0;margin:0;overflow:hidden;font-size:.69rem;text-overflow:ellipsis;white-space:nowrap}.book-management-facts dt{color:var(--text-2)}.book-management-facts dd{color:var(--text);text-align:right}.book-management-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.book-management-actions button,.book-management-actions label{min-width:0;min-height:38px;display:flex;align-items:center;justify-content:flex-start;gap:7px;padding:0 10px;overflow:hidden;color:var(--text-2);background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-control);font-size:.69rem;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.book-management-actions button:hover,.book-management-actions label:hover,.book-management-actions .is-active{color:var(--text);background:var(--app-surface-hover)}.book-management-actions button:disabled{opacity:.45;cursor:not-allowed}.source-reselect-button{position:relative}.source-reselect-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.chapter-panel{overflow:hidden}.chapter-panel-heading{min-height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border)}.chapter-panel-heading>div{display:flex;align-items:center;gap:8px}.chapter-panel-heading h2{margin:0;color:var(--app-text-strong);font-size:.95rem;font-weight:650}.chapter-panel-heading h2:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.chapter-panel-heading span{min-width:22px;height:20px;display:grid;place-items:center;color:var(--text-2);background:var(--app-surface-muted);border-radius:var(--radius-control);font-size:.64rem}.chapter-toolbar{min-height:50px;display:grid;grid-template-columns:minmax(220px,1fr) auto 148px;align-items:center;gap:10px;padding:8px 12px;background:var(--app-surface-muted);border-bottom:1px solid var(--border)}.chapter-search{max-width:360px;height:34px;display:flex;align-items:center;gap:8px;padding:0 10px;color:var(--muted);background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-control)}.chapter-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.chapter-search input{min-width:0;flex:1;border:0;outline:0;color:var(--text);background:transparent;font-size:.76rem}.chapter-filter{display:inline-flex;padding:2px;background:var(--app-surface);border:1px solid var(--border);border-radius:var(--radius-control)}.chapter-filter button{min-width:54px;height:30px;color:var(--text-2);background:transparent;border-radius:2px;font-size:.7rem}.chapter-filter button:hover,.chapter-filter button.is-selected{color:var(--text);background:var(--app-surface-hover)}.chapter-order{position:relative;height:34px;display:flex;align-items:center;background:var(--app-surface-strong);border:1px solid var(--border);border-radius:var(--radius-control)}.chapter-order>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.chapter-order select{width:100%;height:100%;padding:0 9px;border:0;outline:0;color:var(--text);background:transparent;font-size:.7rem;cursor:pointer}.chapters-screen .chapter-list-head,.chapters-screen .chapter-row{display:grid;grid-template-columns:26px 62px minmax(240px,1fr) 92px 108px 74px 86px;align-items:center;gap:10px}.chapters-screen .chapter-list-head{min-height:34px;padding:0 18px;color:var(--muted);border-bottom:1px solid var(--border);font-size:.65rem}.chapters-screen .chapter-row{width:100%;min-height:56px;padding:0 18px;color:var(--text-2);background:transparent;border-bottom:1px solid var(--border);font-size:.76rem;text-align:left}.chapters-screen .chapter-row:hover,.chapters-screen .chapter-row:focus-visible{color:var(--text);background:var(--app-surface-hover)}.chapters-screen .chapter-row.is-read{color:var(--muted);background:color-mix(in srgb,var(--app-canvas) 46%,transparent)}.chapters-screen .chapter-row.is-current{color:var(--text);background:var(--app-accent-soft);box-shadow:inset 2px 0 var(--primary)}.chapter-marker{display:grid;place-items:center;color:var(--primary)}.chapter-marker i{width:6px;height:6px;border-radius:50%;background:var(--primary)}.is-read .chapter-marker i{background:var(--muted)}.chapter-index{font-variant-numeric:tabular-nums}.chapter-title-cell{min-width:0}.chapter-title-cell strong,.chapter-title-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-title-cell strong{color:var(--text);font-size:.82rem;font-weight:620}.is-read .chapter-title-cell strong{color:var(--text-2)}.chapter-title-cell small{margin-top:4px;color:var(--muted);font-size:.64rem}.chapter-tts-duration{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.chapters-screen .chapter-row em{justify-self:start;padding:4px 8px;color:inherit;background:var(--app-surface-strong);border:1px solid var(--border);border-radius:999px;font-size:.64rem;font-style:normal;white-space:nowrap}.chapters-screen .chapter-row.is-current em{color:var(--primary);background:color-mix(in srgb,var(--app-accent-soft) 72%,var(--app-surface));border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.chapter-row-action{justify-self:end;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);white-space:nowrap}.is-current .chapter-row-action{min-width:76px;min-height:32px;gap:5px;color:var(--app-accent-contrast);background:var(--primary);border-radius:var(--radius-control);font-size:.68rem;font-weight:700}.chapter-empty{min-height:280px}.chapter-panel-footer{min-height:44px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:0 14px;color:var(--muted);background:var(--app-surface-muted);border-top:1px solid var(--border);font-size:.65rem}.chapter-panel-footer>span:last-child{text-align:right}.chapter-pagination{display:flex;align-items:center;gap:3px}.chapter-pagination button{min-width:29px;height:29px;display:grid;place-items:center;padding:0 6px;color:var(--text-2);background:transparent;border-radius:var(--radius-control);font-size:.67rem}.chapter-pagination button:hover:not(:disabled){color:var(--text);background:var(--app-surface-hover)}.chapter-pagination button.is-current{color:var(--app-accent-contrast);background:var(--primary)}.chapter-pagination button:disabled{opacity:.3;cursor:default}.chapter-pagination span{min-width:20px;text-align:center}.chapters-screen button:focus-visible,.chapters-screen select:focus-visible,.chapters-screen input:focus-visible,.chapters-screen summary:focus-visible,.chapters-screen label.source-reselect-button:focus-within{outline:2px solid var(--primary);outline-offset:2px}.chapters-screen~.floating-import{display:none}@media(max-width:980px){.book-detail-main{padding:14px 16px 34px}.book-management-body{grid-template-columns:minmax(0,1fr)}.chapters-screen .chapter-list-head,.chapters-screen .chapter-row{grid-template-columns:24px 56px minmax(180px,1fr) 82px 100px 68px 34px}.chapter-row-action>span{display:none}.is-current .chapter-row-action{min-width:32px;width:32px}}@media(max-width:699px){.chapters-screen.chapters-screen{padding:0}.book-detail-main{gap:8px;padding:calc(8px + env(safe-area-inset-top,0px)) 8px calc(24px + env(safe-area-inset-bottom,0px))}.book-detail-hero{padding:7px 10px 0}.detail-back-button{min-width:44px;min-height:44px;margin-bottom:2px}.detail-hero-body{grid-template-columns:84px minmax(0,1fr);gap:13px;padding:0 2px 10px}.detail-hero-cover,.detail-hero-cover>.book-cover{width:84px}.detail-hero-cover>.book-cover{min-height:126px}.detail-hero-copy h1{font-size:1.12rem}.detail-byline{font-size:.7rem}.detail-description{margin-top:7px;font-size:.7rem;-webkit-line-clamp:2}.detail-tags{max-height:48px;margin-top:7px;overflow:hidden}.detail-tags span{font-size:.6rem}.detail-reading-progress{margin-top:9px}.detail-reading-progress small{display:none}.detail-hero-actions{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:7px;margin-top:9px}.detail-hero-actions .primary-btn{width:100%;min-width:0;min-height:42px}.detail-hero-actions>button:not(.primary-btn){min-width:0;min-height:42px;justify-content:center;padding:0 8px}.detail-hero-actions>button:not(.primary-btn):not(.detail-edit-button){display:none}.detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-stats>div:nth-child(2){border-right:0}.detail-stats>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.book-management-disclosure>summary{min-height:48px;padding:0 12px}.book-management-disclosure>summary small{display:none}.book-management-body{gap:10px;padding:10px}.book-management-facts{grid-template-columns:minmax(0,1fr)}.book-management-facts div:nth-child(odd){border-right:0}.book-management-actions{grid-template-columns:minmax(0,1fr)}.book-management-actions button,.book-management-actions label{min-height:44px;font-size:.75rem}.chapter-panel-heading{min-height:48px;padding:0 12px}.chapter-toolbar{grid-template-columns:minmax(0,1fr);gap:8px;padding:10px}.chapter-search{width:100%;max-width:none;height:40px}.chapter-filter{width:100%}.chapter-filter button{min-height:38px;flex:1}.chapter-order{height:40px}.chapters-screen .chapter-list-head{display:none}.chapters-screen .chapter-row{min-height:66px;grid-template-columns:16px 38px minmax(0,1fr) auto;grid-template-areas:"marker index title status" "marker meta meta action";gap:4px 7px;padding:9px 10px}.chapter-marker{grid-area:marker}.chapter-index{grid-area:index}.chapter-title-cell{grid-area:title}.chapter-character-count{grid-area:meta;align-self:end;color:var(--text-2);font-size:.65rem}.chapter-tts-duration{grid-area:meta;align-self:end;justify-self:start;margin-left:68px;font-size:.65rem}.chapter-title-cell small{display:none}.chapters-screen .chapter-row em{grid-area:status;justify-self:end}.chapter-row-action{grid-area:action;align-self:end}.is-current .chapter-row-action{width:36px;min-width:36px;height:36px;min-height:36px;border-radius:8px}.chapter-panel-footer{position:sticky;z-index:4;bottom:calc(-24px + env(safe-area-inset-bottom,0px));min-height:62px;grid-template-columns:1fr;padding:9px 8px calc(9px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--app-surface-muted) 98%,transparent);box-shadow:0 -10px 28px color-mix(in srgb,#000 18%,transparent)}.chapter-panel-footer>span{display:none}.chapter-pagination{justify-content:center;gap:5px}.chapter-pagination button{min-width:40px;height:40px;padding:0 8px;background:var(--app-surface-strong);border:1px solid var(--border)}}@media(max-width:360px){.detail-hero-body{grid-template-columns:72px minmax(0,1fr);gap:10px}.detail-hero-cover,.detail-hero-cover>.book-cover{width:72px}.detail-hero-cover>.book-cover{min-height:108px}.detail-description,.detail-tags{display:none}.detail-stats>div{padding-inline:9px}.chapter-tts-duration{margin-left:62px}.chapter-pagination{gap:2px}.chapter-pagination button{min-width:37px}}.reader-screen{--reader-layout-margin-x: var(--reading-margin-x);position:relative;height:100dvh;overflow:hidden;background:var(--reading-background, var(--reader-canvas))}.top-progress{position:fixed;top:0;left:0;right:0;z-index:var(--layer-chrome);height:2px;background:color-mix(in srgb,var(--border) 35%,transparent)}.reader-topbar,.reader-bottombar{position:fixed;left:0;right:0;z-index:var(--layer-chrome);justify-content:space-between;min-height:58px;padding:8px 14px;background:color-mix(in srgb,var(--reader-surface) 96%,transparent);border-radius:0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease}.reader-topbar{top:0;border-bottom:1px solid var(--border)}.reader-bottombar{bottom:0;gap:10px;padding-bottom:max(8px,env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);transform:translateY(8px)}.reader-position-bar,.reader-tool-row{min-width:0;display:flex;align-items:center;gap:8px}.reader-position-bar{flex:1}.reader-position-bar input[type=range]{min-width:80px;flex:1}.reader-tool-row{flex:0 0 auto}.reader-chapter-step,.reader-mobile-tool{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;color:var(--text-2);background:transparent;border:1px solid var(--border);border-radius:var(--radius-control);cursor:pointer;font-size:.76rem;font-weight:600}.reader-chapter-step:hover,.reader-mobile-tool:hover,.reader-mobile-tool.active{color:var(--text);background:var(--app-surface-hover)}.reader-chapter-step:disabled,.reader-mobile-tool:disabled{opacity:.38;cursor:default}.reader-mobile-tool{display:none}.reader-screen.chrome-visible .reader-topbar,.reader-screen.chrome-visible .reader-bottombar,.reader-topbar:focus-within,.reader-bottombar:focus-within,.reader-topbar.always-visible,.reader-bottombar.always-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.reader-title{min-width:0;flex:1;display:flex;align-items:baseline;gap:9px}.reader-title strong,.reader-title span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reader-title span{color:var(--text-2);font-size:.74rem}.reader-actions{display:flex;align-items:center;gap:8px}.reader-scroll{--reader-content-inset-top: max(var(--reading-margin-y), env(safe-area-inset-top, 0px));--reader-content-inset-bottom: max(var(--reading-margin-y), env(safe-area-inset-bottom, 0px));height:100dvh;overflow:auto;overflow-anchor:none;padding:var(--reader-content-inset-top) var(--reader-layout-margin-x) var(--reader-content-inset-bottom);background:var(--reading-background, var(--reader-canvas));filter:brightness(var(--reading-brightness, 1))}.reader-scroll:not(.reader-paginated-root){clip-path:inset(var(--reader-content-inset-top) 0 var(--reader-content-inset-bottom) 0)}.reader-scroll[data-reader-layer=scroll]{-ms-overflow-style:none;scrollbar-width:none;touch-action:pan-y;overscroll-behavior-y:contain}.reader-scroll[data-reader-layer=scroll].is-next-chapter-armed{touch-action:pan-up}.reader-scroll[data-reader-layer=scroll]::-webkit-scrollbar{display:none;width:0;height:0}.reader-viewport-stack{position:relative;height:100dvh;overflow:hidden}.reader-viewport-stack>.reader-viewport-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%}.reader-viewport-layer.is-active{z-index:1;visibility:visible}.reader-viewport-layer.is-inactive{z-index:0;visibility:hidden;pointer-events:none}.reader-screen.page-to-scroll-settling .reader-paginated-root.is-inactive{z-index:2;visibility:visible}.reader-screen.page-to-scroll-settling [data-reader-layer=scroll].is-active{z-index:1;visibility:hidden;pointer-events:none}.reader-screen.page-to-scroll-settling .reader-pagination-stage,.reader-screen.page-to-scroll-settling .reader-paginated-page.is-current{animation:none!important;transform:none!important}.reader-screen.page-to-scroll-settling .reader-paginated-page.is-outgoing{display:none}.reader-screen.addon-open .reader-scroll{padding-right:max(var(--reader-layout-margin-x),calc(var(--reader-panel-width) + 20px))}.reader-scroll.page-flow{overflow-y:hidden;scroll-snap-type:y mandatory}.reader-scroll.page-flow .reader-virtual-row{scroll-snap-align:start;scroll-snap-stop:always}.reader-scroll:focus{outline:none}.reader-scroll:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 72%,transparent);outline-offset:-3px}.reader-screen.addon-open .reader-topbar,.reader-screen.addon-open .reader-bottombar{right:var(--reader-panel-width)}.reader-screen.immersive .top-progress,.reader-screen.immersive .reader-mobile-search,.reader-screen.immersive .reader-search-results-layer,.reader-screen.immersive .selection-action-bar,.reader-screen.immersive .reader-footnote-backdrop,.reader-screen.immersive .reader-pagination-controls,.reader-screen.immersive .chapter-nav{display:none}.reader-screen.immersive .reader-topbar,.reader-screen.immersive .reader-bottombar,.reader-screen.immersive .reader-topbar:focus-within,.reader-screen.immersive .reader-bottombar:focus-within,.reader-screen.immersive .reader-topbar.always-visible,.reader-screen.immersive .reader-bottombar.always-visible{opacity:0;pointer-events:none;visibility:hidden}.reader-screen.immersive .reader-topbar{transform:translateY(-100%)}.reader-screen.immersive .reader-bottombar{transform:translateY(100%)}.reader-screen.immersive .reader-scroll,.reader-screen.immersive.addon-open .reader-scroll{--reader-content-inset-top: max(var(--reading-margin-y), env(safe-area-inset-top, 0px));--reader-content-inset-bottom: max(var(--reading-margin-y), env(safe-area-inset-bottom, 0px));padding-top:var(--reader-content-inset-top);padding-right:var(--reader-layout-margin-x);padding-bottom:var(--reader-content-inset-bottom);padding-left:var(--reader-layout-margin-x)}.reader-screen.immersive~.tts-compact-bar{display:none}.reader-mobile-search-toggle{display:none}.reader-mobile-search{position:fixed;top:58px;left:8px;right:8px;z-index:28;display:flex;align-items:center;gap:8px;padding:8px;background:color-mix(in srgb,var(--surface) 96%,transparent);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.reader-mobile-search .search-box{min-width:0;flex:1}.reader-search-results-layer{position:fixed;z-index:var(--layer-floating);top:66px;left:50%;width:min(460px,calc(100vw - 28px));transform:translate(-50%)}.reader-overflow{position:relative;display:inline-flex}.reader-overflow-menu{position:absolute;right:0;bottom:44px;z-index:var(--layer-floating);min-width:150px;display:grid;gap:2px;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow)}.reader-overflow-menu button{min-height:34px;display:flex;align-items:center;gap:8px;padding:0 10px;color:var(--text-2);background:transparent;border:0;border-radius:var(--radius-control);cursor:pointer;text-align:left;white-space:nowrap}.reader-overflow-menu button:hover,.reader-overflow-menu button:focus-visible{color:var(--text);background:var(--surface-2)}.reader-loading:after{content:"본문을 준비하는 중입니다.";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--text-2);font-size:.9rem}.reader-document{max-width:var(--reading-width);margin:0 auto;font-family:var(--reading-font-family, var(--font-serif));font-size:var(--reading-font-size);font-weight:var(--reading-font-weight, 400);line-height:var(--reading-line-height);letter-spacing:var(--reading-letter-spacing, 0);color:var(--reading-foreground, var(--text))}.reader-scroll.font-sans .reader-document{font-family:var(--reading-font-family, var(--font-sans))}.reader-scroll.font-mono .reader-document{font-family:var(--reading-font-family, var(--font-mono))}.chapter-kicker{margin-bottom:9px;color:var(--text-2);font-family:var(--font-ui);font-size:.72rem;letter-spacing:.05em;text-align:center}.reader-document h1{display:grid;justify-items:center;gap:22px;margin-bottom:48px;font-size:1.55em;line-height:1.35;text-align:center}.reader-document h1:after{content:"";width:34px;border-top:1px solid var(--reader-line)}.reader-paragraph{position:relative;border-radius:var(--radius)}.reader-virtual-list{position:relative;width:100%}.reader-virtual-row{position:absolute;top:0;left:0;width:100%;padding-bottom:var(--reading-paragraph-spacing);contain:layout paint style}.reader-paragraph p{margin:0;text-align:var(--reading-text-align, start);text-indent:var(--reading-first-line-indent, 0);word-break:keep-all;overflow-wrap:anywhere}.reader-paragraph.is-continuation p{text-indent:0}.reader-paragraph h2{margin:1.8em 0 .9em;font-size:1.28em;line-height:1.45;letter-spacing:0}.reader-paragraph blockquote{margin:.5em 0;padding-inline-start:1em;border-inline-start:3px solid var(--border);color:var(--text-2)}.reader-paragraph .reader-list-item:before{content:"•";display:inline-block;width:1.2em;color:var(--text-2)}.reader-paragraph hr{width:min(12rem,45%);margin:2.5em auto;border:0;border-top:1px solid var(--border)}.reader-epub-image,.reader-image-placeholder{display:block;width:auto;max-width:100%;max-height:min(70vh,56rem);margin:1.5em auto}.reader-epub-image{object-fit:contain}.reader-image-placeholder{min-height:9rem;padding:1rem;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);text-align:center}.reader-image-placeholder.is-loading{opacity:.5}.reader-virtual-row.is-static{position:relative;inset:auto}.reader-paginated-root{--reader-pagination-page-height: calc(100dvh - var(--reader-content-inset-top) - var(--reader-content-inset-bottom));--reader-pagination-image-max-height: max( 4rem, min(70vh, 56rem, calc(var(--reader-pagination-page-height) - 3em - var(--reading-paragraph-spacing) - 2px)) );--reader-pagination-heading-image-max-height: max( 4rem, min(70vh, 56rem, calc(var(--reader-pagination-page-height) - 10rem - 3em - var(--reading-paragraph-spacing) - 2px)) );position:relative;display:block;overflow:hidden;padding-bottom:var(--reader-content-inset-bottom);touch-action:none}.reader-pagination-stage{position:relative;height:100%;min-height:0;overflow:hidden}.reader-paginated-page{position:absolute;top:0;right:0;bottom:0;left:0;min-height:0;overflow:hidden}.reader-pagination-stage.turn-next .reader-paginated-page.is-current{animation:reader-page-in-next .18s ease-out both}.reader-pagination-stage.turn-next .reader-paginated-page.is-outgoing{animation:reader-page-out-next .18s ease-out both}.reader-pagination-stage.turn-previous .reader-paginated-page.is-current{animation:reader-page-in-previous .18s ease-out both}.reader-pagination-stage.turn-previous .reader-paginated-page.is-outgoing{animation:reader-page-out-previous .18s ease-out both}@keyframes reader-page-in-next{0%{transform:translateY(100%)}}@keyframes reader-page-out-next{to{transform:translateY(-100%)}}@keyframes reader-page-in-previous{0%{transform:translateY(-100%)}}@keyframes reader-page-out-previous{to{transform:translateY(100%)}}@media(prefers-reduced-motion:reduce){.reader-pagination-stage .reader-paginated-page{animation:none!important}}.reader-pagination-measure{position:fixed;z-index:-1;width:min(var(--reading-width),calc(100vw - 2 * var(--reader-layout-margin-x)));height:calc(100dvh - var(--reader-content-inset-top) - var(--reader-content-inset-bottom));overflow:hidden;visibility:hidden;pointer-events:none}.reader-pagination-measure .reader-virtual-row{contain:none;content-visibility:visible}.reader-pagination-image-measure{width:100%;height:var(--reader-pagination-image-max-height);margin:1.5em auto}.reader-pagination-measure.has-chapter-heading .reader-pagination-image-measure{height:var(--reader-pagination-heading-image-max-height)}.reader-paginated-page .reader-epub-image{width:auto;height:auto;max-width:100%;max-height:var(--reader-pagination-image-max-height);object-fit:contain}.reader-paginated-page .reader-image-placeholder{width:100%;height:var(--reader-pagination-image-max-height);max-height:var(--reader-pagination-image-max-height);object-fit:contain}.reader-paginated-page.has-chapter-heading .reader-epub-image{max-height:var(--reader-pagination-heading-image-max-height)}.reader-paginated-page.has-chapter-heading .reader-image-placeholder{height:var(--reader-pagination-heading-image-max-height);max-height:var(--reader-pagination-heading-image-max-height)}.reader-pagination-status{display:grid;min-height:12rem;place-items:center;color:var(--text-2);font-family:var(--font-ui)}.reader-paragraph.is-loading{min-height:82px;opacity:.42}.reader-paragraph.is-loading p{width:68%;height:.9em;border-radius:999px;background:color-mix(in srgb,var(--text-2) 18%,transparent)}.reader-paragraph.is-error{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:82px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--danger) 28%,transparent);color:var(--text-2);background:color-mix(in srgb,var(--danger) 8%,var(--surface));font-family:var(--font-ui);font-size:.92rem}.reader-paragraph.is-error p{margin:0}.reader-paragraph.with-meta{padding:8px 10px;border:1px solid transparent}.reader-paragraph.with-meta:hover{border-color:var(--border);background:color-mix(in srgb,var(--surface) 65%,transparent)}.reader-paragraph.has-highlight{padding:2px 4px;box-shadow:inset 3px 0 color-mix(in srgb,var(--accent) 75%,var(--primary))}.reader-paragraph.with-meta.has-highlight{padding:8px 10px}.reader-paragraph.highlight-yellow{background:color-mix(in srgb,#facc15 24%,transparent)}.reader-paragraph.highlight-green{background:color-mix(in srgb,#22c55e 20%,transparent)}.reader-paragraph.highlight-blue{background:color-mix(in srgb,#38bdf8 20%,transparent)}.reader-paragraph.highlight-pink{background:color-mix(in srgb,#f472b6 20%,transparent)}.reader-paragraph.is-speaking{background:color-mix(in srgb,var(--primary) 16%,transparent);box-shadow:inset 3px 0 0 var(--primary)}.reader-tts-active{border-radius:5px;background:color-mix(in srgb,var(--primary) 24%,transparent);box-shadow:0 1px color-mix(in srgb,var(--primary) 56%,transparent)}.reader-paragraph.low-confidence{box-shadow:inset 3px 0 0 var(--warning)}.segment-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:6px;font-family:var(--font-ui);font-size:.72rem;color:var(--text-2)}.segment-meta span,.segment-meta button{padding:2px 7px;background:var(--surface-2);border:1px solid transparent;border-radius:999px}.segment-meta button{color:var(--text-2);cursor:pointer}.segment-meta button.needs-review{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 45%,transparent)}.segment-meta button.active{color:var(--text);background:color-mix(in srgb,var(--primary) 16%,var(--surface-2));border-color:color-mix(in srgb,var(--primary) 55%,var(--border))}mark{color:inherit;background:color-mix(in srgb,var(--accent) 38%,transparent);border-radius:3px}.reader-inline-highlight{padding:1px 2px;border-radius:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.inline-highlight-yellow{background:color-mix(in srgb,#facc15 34%,transparent)}.inline-highlight-green{background:color-mix(in srgb,#22c55e 28%,transparent)}.inline-highlight-blue{background:color-mix(in srgb,#38bdf8 30%,transparent)}.inline-highlight-pink{background:color-mix(in srgb,#f472b6 30%,transparent)}mark.reader-inline-highlight{outline:1px solid color-mix(in srgb,var(--accent) 42%,transparent)}.search-result-strip{display:grid;gap:9px;max-height:min(440px,calc(100dvh - 150px));margin:0;padding:9px 12px;overflow-y:auto;font-family:var(--font-ui);font-size:.85rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel)}.search-result-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-2)}.search-result-summary strong{color:var(--text)}.search-limit-note{margin:0;color:var(--text-2);font-size:.79rem;line-height:1.45}.search-result-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px}.search-result-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.search-scope-toggle{display:inline-flex;gap:3px;width:max-content;padding:3px;background:var(--surface-2);border:1px solid var(--border)}.search-scope-toggle button{min-height:27px;padding:0 9px;color:var(--text-2);background:transparent;border:0;cursor:pointer;font-size:.78rem;font-weight:700}.search-scope-toggle button.active{color:var(--text);background:var(--surface);box-shadow:0 1px 3px #00000014}.search-result-controls button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);cursor:pointer}.search-result-controls span{color:var(--text-2);font-size:.78rem;font-weight:700}.search-result-current{min-width:0;display:grid;gap:3px;padding:9px 10px;color:var(--text);background:color-mix(in srgb,var(--primary) 8%,transparent);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:var(--radius-control);cursor:pointer;text-align:left}.search-result-current span{color:var(--primary-2);font-size:.75rem;font-weight:700}.search-result-current strong{overflow:hidden;font-size:.82rem;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.search-result-disclosure{border-top:1px solid var(--border)}.search-result-disclosure summary{padding:7px 0 0;color:var(--text-2);cursor:pointer;font-size:.76rem;font-weight:700}.search-result-disclosure[open] summary{margin-bottom:4px}.search-result-list{display:grid;gap:6px}.search-result-list button{display:grid;gap:3px;padding:8px 0;color:var(--text);background:transparent;border-top:1px solid var(--border);cursor:pointer;text-align:left}.search-result-list button.active{padding-inline:8px;background:color-mix(in srgb,var(--primary) 8%,transparent);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.search-result-list span{color:var(--primary-2);font-size:.78rem;font-weight:700}.search-result-list strong{color:var(--text-2);font-size:.84rem;font-weight:500;line-height:1.45;overflow-wrap:anywhere}.chapter-nav{display:flex;justify-content:space-between;gap:12px;margin-top:48px;margin-bottom:36px;padding-top:24px;border-top:1px solid var(--border);font-family:var(--font-ui)}.reader-next-chapter-boundary{display:grid;justify-items:center;gap:5px;min-height:88px;margin:0 auto 20px;padding:18px 12px 10px;color:var(--text-2);font-family:var(--font-ui);text-align:center}.reader-next-chapter-boundary>span,.reader-next-chapter-boundary>small{font-size:.72rem}.reader-next-chapter-boundary>strong{color:var(--text);font-size:.9rem;font-weight:650}.reader-next-chapter-boundary>small{min-height:1.2em;transition:color .12s ease}.reader-next-chapter-boundary.is-armed>small{color:var(--primary);font-weight:650}.reader-document.reader-boundary-motion{--reader-boundary-pull: 0px;transform:translate3d(0,calc(0px - var(--reader-boundary-pull, 0px)),0)}.reader-document.reader-boundary-motion.is-wheel-pull{transition:transform 70ms cubic-bezier(.2,.75,.25,1)}.reader-document.reader-boundary-motion.is-touch-pull{transition:none}.reader-document.reader-boundary-motion.is-boundary-release{transition:transform .16s cubic-bezier(.22,.8,.25,1)}.reader-document.reader-boundary-motion.is-boundary-commit{transition:transform .1s cubic-bezier(.2,.75,.25,1)}@media(prefers-reduced-motion:reduce){.reader-document.reader-boundary-motion{transition:none;transform:none}}.selection-action-bar{position:fixed;left:50%;bottom:76px;z-index:35;max-width:min(620px,calc(100vw - 32px));display:flex;align-items:center;gap:8px;padding:8px 10px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transform:translate(-50%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.reader-screen.addon-open .selection-action-bar{left:16px;right:calc(var(--reader-panel-width) + 32px);width:max-content;max-width:calc(100vw - var(--reader-panel-width) - 60px);transform:none}.selection-action-bar>span{min-width:68px;max-width:180px;overflow:hidden;color:var(--text-2);font-size:.78rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.selection-swatch-group{display:flex;align-items:center;gap:6px;padding:3px 6px;background:var(--surface-2);border:1px solid var(--border)}.selection-swatch{width:22px;height:22px;border:1px solid var(--border);border-radius:999px;cursor:pointer}.selection-swatch:hover{border-color:var(--primary)}.selection-swatch.yellow{background:#facc15}.selection-swatch.green{background:#22c55e}.selection-swatch.blue{background:#38bdf8}.selection-swatch.pink{background:#f472b6}.reader-bottombar input[type=range]{flex:1}.progress-label{width:44px;color:var(--text-2);font-variant-numeric:tabular-nums;text-align:center}.reader-flow-pill{min-width:54px;padding:0 5px;color:var(--text-2);font-size:.72rem;font-weight:700;text-align:center;white-space:nowrap}.paragraph-progress-label{min-width:104px;color:var(--text-2);font-size:.78rem;font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap}input[type=range]{accent-color:var(--primary-2)}.addon-panel,.settings-panel{position:fixed;top:0;right:0;z-index:var(--layer-drawer);width:min(var(--reader-panel-width),94vw);height:100dvh;overflow:hidden;padding:0;background:var(--app-surface-strong);border-left:1px solid var(--border);box-shadow:-10px 0 28px color-mix(in srgb,var(--app-text-strong) 10%,transparent)}.settings-panel{overflow-y:auto;padding:16px}.panel-header{min-height:58px;justify-content:space-between;padding:9px 12px 9px 16px;background:var(--app-surface);border-bottom:1px solid var(--border)}.panel-header>div{min-width:0;display:flex;align-items:baseline;gap:8px}.panel-header span{color:var(--text-2);font-size:.7rem}.panel-header strong{font-size:.9rem}.panel-tabs{width:100%;display:flex;gap:0;margin:0;padding:0 8px;overflow-x:auto;background:var(--app-surface);border-bottom:1px solid var(--border);border-radius:0}.panel-tabs button{min-width:58px;min-height:42px;flex:1 0 auto;gap:5px;padding:0 7px;border-bottom:2px solid transparent;border-radius:0;font-size:.72rem}.panel-tabs button.active{background:transparent;border-bottom-color:var(--primary);box-shadow:none}.addon-panel-content{height:calc(100dvh - 101px);padding:16px;overflow-y:auto}.panel-body{display:grid;gap:14px}.panel-body h3,.settings-panel h2{font-size:1.08rem}.panel-body h4{margin-top:8px;font-size:.92rem}.panel-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-section-title span{color:var(--text-2);font-size:.78rem;font-weight:700;white-space:nowrap}.panel-search{width:100%;min-width:0}.compact-list,.character-list{display:grid;gap:8px}.compact-list button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px;color:var(--text);text-align:left;background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius-panel)}.compact-list button.active{border-color:var(--primary)}.compact-list button.outline-row{grid-template-columns:minmax(0,1fr) auto auto}.compact-list button.outline-row>em{min-width:34px;color:var(--primary-2);font-size:.74rem;font-style:normal;font-weight:800;text-align:right}.outline-annotation-chips{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:5px;min-width:0}.outline-annotation-chips i{padding:2px 6px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;font-size:.7rem;font-style:normal;font-weight:700}.compact-list span,.compact-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-list small{color:var(--text-2)}.tts-controls{display:flex;flex-wrap:wrap;gap:10px}.tts-compact-bar{position:fixed;left:50%;bottom:70px;z-index:26;width:min(760px,calc(100vw - 24px));min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:7px 9px 7px 13px;background:color-mix(in srgb,var(--reader-surface) 97%,transparent);border:1px solid var(--app-line-strong);border-radius:var(--radius-panel);box-shadow:var(--shadow-soft);transform:translate(-50%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.reader-screen.addon-open~.tts-compact-bar{margin-left:calc(var(--reader-panel-width) / -2);width:min(760px,calc(100vw - var(--reader-panel-width) - 40px))}.tts-compact-identity,.tts-compact-controls,.tts-compact-value,.tts-compact-timer{display:flex;align-items:center}.tts-compact-identity{min-width:0;gap:10px}.tts-compact-identity>span{min-width:0}.tts-compact-identity strong,.tts-compact-identity small{display:block;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tts-compact-identity small{color:var(--text-2);font-size:.74rem}.tts-compact-controls{flex:0 0 auto;gap:5px}.tts-compact-controls .icon-btn{width:34px;height:34px}.tts-compact-controls .icon-btn.primary{color:var(--app-accent-contrast);background:var(--primary-2)}.tts-compact-value,.tts-compact-timer{min-height:34px;gap:5px;padding:0 8px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-control);font:inherit;font-size:.78rem}.tts-compact-timer select{width:1px;min-width:1px;opacity:0;position:absolute}.tts-panel-tabs{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tts-panel-tabs button{min-width:0}.tts-panel-section{min-width:0;display:grid;gap:14px}.tts-panel-section[hidden]{display:none}.tts-playback-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tts-playback-setting-grid label{min-width:0;display:grid;gap:5px;color:var(--text-2);font-size:.82rem}.tts-playback-setting-grid input[type=range]{width:100%}.tts-playback-setting-grid small{color:var(--warning)}.tts-skip-types{display:flex;flex-wrap:wrap;gap:8px 14px;padding:10px;border:1px solid var(--border)}.tts-skip-types legend{padding:0 4px;color:var(--text-2);font-size:.8rem}.tts-skip-types label,.tts-book-override label{display:inline-flex;align-items:center;gap:6px;font-size:.84rem}.tts-controls .primary-btn,.tts-controls .ghost-btn{flex:1 1 118px}.voice-profile-section{display:grid;gap:10px;padding-top:4px}.voice-profile-list{display:grid;gap:8px}.voice-profile-row{display:grid;grid-template-columns:minmax(88px,.55fr) minmax(0,1fr);align-items:center;gap:10px}.voice-profile-row>span{min-width:0;display:inline-flex;align-items:center;gap:8px;color:var(--text-2);font-size:.88rem}.voice-profile-row i{width:8px;height:22px;border-radius:999px;flex:0 0 auto}.voice-profile-row select,.voice-profile-row input{min-width:0}.hosted-voice-profile-item{display:grid;gap:7px;padding:8px;background:color-mix(in srgb,var(--surface) 72%,transparent);border:1px solid var(--border);border-radius:var(--radius)}.hosted-voice-profile-item .voice-profile-row{grid-template-columns:minmax(88px,.54fr) minmax(0,1fr)}.voice-profile-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.voice-profile-option-control{min-width:0;display:grid;gap:4px}.voice-profile-option-control>span{min-width:0}.voice-profile-option-control strong,.voice-profile-option-control small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-profile-option-control strong{color:var(--text);font-size:.75rem}.voice-profile-option-control small{color:var(--text-2);font-size:.68rem}.voice-profile-option-control input,.voice-profile-option-control select{min-width:0;min-height:34px}.hosted-voice-section{padding-top:8px;border-top:1px solid var(--border)}.voice-product-actions,.voice-approval-actions,.pronunciation-editor{display:flex;gap:8px;align-items:center}.voice-product-actions{flex-wrap:wrap}.voice-pool-section{padding-top:12px;border-top:1px solid var(--border)}.voice-pool-editor,.voice-pool-options{display:grid;gap:7px}.voice-pool-option{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:36px}.voice-pool-option label{min-width:0;display:flex;align-items:center;gap:8px;color:var(--text-2);font-size:.84rem}.voice-pool-option label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-approval-list,.pronunciation-list{display:grid;gap:8px}.voice-cost-summary{display:grid;gap:5px;padding:9px 0;color:var(--text-2);font-size:12px}.voice-cost-summary label{display:flex;align-items:center;justify-content:space-between;gap:8px}.voice-cost-summary input{width:64px}.voice-cost-summary small{color:var(--muted)}.tts-lifecycle-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;color:var(--text-2);font-size:12px}.tts-lifecycle-summary strong{color:var(--text)}.voice-approval-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px 0;border-bottom:1px solid var(--border)}.voice-approval-item>div:first-child{min-width:0}.voice-approval-item strong,.voice-approval-item small{display:block}.voice-approval-item small{margin-top:3px;color:var(--muted)}.voice-approval-item>span{font-size:12px;color:var(--muted)}.voice-approval-item>span.ready{color:var(--primary)}.voice-approval-item>span.warning{color:var(--warning)}.voice-approval-actions{grid-column:1 / -1}.ghost-btn.compact{min-height:32px;padding:0 9px}.pronunciation-editor{flex-wrap:wrap}.pronunciation-editor .text-input{flex:1 1 110px;min-width:0}.pronunciation-list>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.pronunciation-list span{min-width:0;overflow-wrap:anywhere}@media(max-width:480px){.voice-approval-item{grid-template-columns:1fr}.voice-approval-item>span{justify-self:start}}.ai-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ai-action-grid .primary-btn,.ai-action-grid .ghost-btn{min-width:0;min-height:42px;padding-inline:10px;line-height:1.2;white-space:normal}.tts-addon-body{gap:16px}.tts-addon-body .tts-panel-tabs{padding:0;background:transparent;border-bottom:1px solid var(--border);border-radius:0}.tts-addon-body .tts-panel-tabs button{min-height:40px;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0}.tts-addon-body .tts-panel-tabs button.active{color:var(--text);background:transparent;border-bottom-color:var(--primary);box-shadow:none}.tts-addon-body .tts-status{padding:10px 0;background:transparent;border-width:1px 0;border-radius:0}#tts-playback-panel{gap:16px}#tts-advanced-panel{gap:0}#tts-advanced-panel .voice-profile-section,#tts-advanced-panel .voice-pool-section,#tts-advanced-panel .hosted-voice-section{padding-block:16px;border-top:1px solid var(--border)}#tts-advanced-panel>:first-child{padding-top:0;border-top:0}#tts-advanced-panel .hosted-voice-profile-item,#tts-advanced-panel .provider-settings-card,#tts-advanced-panel .provider-job-card{background:transparent;border-radius:0}#tts-advanced-panel .voice-profile-list,#tts-advanced-panel .voice-approval-list,#tts-advanced-panel .pronunciation-list{gap:0}#tts-advanced-panel .voice-profile-row,#tts-advanced-panel .hosted-voice-profile-item{padding-block:9px;border-bottom:1px solid color-mix(in srgb,var(--border) 74%,transparent)}#tts-advanced-panel .voice-profile-row:last-child,#tts-advanced-panel .hosted-voice-profile-item:last-child{border-bottom:0}.spoken-preview-section>textarea{width:100%;resize:vertical;min-height:72px}.spoken-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:10px;border:1px solid var(--border)}.spoken-preview-grid>div{min-width:0;padding:12px}.spoken-preview-grid>div+div{border-left:1px solid var(--border);background:var(--surface-2)}.spoken-preview-grid span,.spoken-preview-section>small{color:var(--text-2);font-size:12px}.spoken-preview-grid p{margin:5px 0 0;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.spoken-preview-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.spoken-preview-actions>small{color:var(--text-2);text-align:right}.spoken-rule-impact{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.spoken-rule-impact .setting-line>div,.spoken-rule-impact-result{display:grid;gap:3px}.spoken-rule-impact small,.spoken-rule-impact-result span{color:var(--text-2);font-size:12px}.spoken-rule-impact-result{margin-top:10px}.spoken-rule-impact-result ul{display:grid;gap:8px;margin:8px 0 0;padding:0;list-style:none}.spoken-rule-impact-result li{padding-left:10px;border-left:2px solid var(--border)}.spoken-rule-impact-result p{margin:3px 0 0;line-height:1.45}.reader-footnote-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-dialog);display:grid;place-items:center;padding:24px;background:var(--app-menu-backdrop)}.reader-footnote-sheet{width:min(520px,100%);max-height:min(72vh,640px);overflow:auto;border:1px solid var(--app-line-strong);border-radius:var(--radius-overlay);background:var(--app-surface-strong);box-shadow:var(--shadow)}.reader-footnote-sheet>header,.reader-footnote-sheet>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px}.reader-footnote-sheet>header{border-bottom:1px solid var(--border)}.reader-footnote-sheet>header span{color:var(--text-2);font-size:11px;letter-spacing:.08em}.reader-footnote-sheet>header h2{margin:2px 0 0;font-size:17px}.reader-footnote-body{padding:18px;font-family:var(--font-serif);font-size:16px;line-height:1.75}.reader-footnote-body p{margin:0 0 12px}.reader-footnote-body p:last-child{margin-bottom:0}.reader-footnote-sheet>footer{justify-content:flex-end;border-top:1px solid var(--border)}@media(max-width:700px){.spoken-preview-grid{grid-template-columns:1fr}.spoken-preview-grid>div+div{border-top:1px solid var(--border);border-left:0}.spoken-preview-actions{align-items:flex-start;flex-direction:column}.spoken-preview-actions>small{text-align:left}.reader-footnote-backdrop{align-items:end;padding:0}.reader-footnote-sheet{width:100%;max-height:68dvh;border-right:0;border-bottom:0;border-left:0;border-radius:10px 10px 0 0;padding-bottom:env(safe-area-inset-bottom)}}.provider-settings-card,.provider-job-card{display:grid;gap:10px;padding:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.book-workflow-card{margin-bottom:10px}.workflow-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.workflow-metrics span,.workflow-status-row{min-width:0;display:grid;gap:2px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.workflow-metrics strong{color:var(--text);font-size:.92rem}.workflow-status-row span,.workflow-status-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-speaker-workflow{min-width:0;display:grid;gap:7px;padding-block:9px;border-block:1px solid color-mix(in srgb,var(--border) 78%,transparent)}.compact-speaker-workflow-heading{min-width:0;display:grid;gap:2px}.compact-speaker-workflow-heading strong,.compact-speaker-workflow-heading small{overflow-wrap:anywhere}.compact-speaker-workflow-facts,.compact-speaker-workflow-risks>div{display:flex;flex-wrap:wrap;gap:4px 10px}.compact-speaker-workflow-facts span,.compact-speaker-workflow-risks small{color:var(--text-2);font-size:.73rem}.compact-speaker-workflow-risks{min-width:0;display:grid;gap:3px}.compact-speaker-workflow-risks>span{color:var(--text);font-size:.73rem;font-weight:700}.workflow-next-action{min-width:0;display:grid;gap:8px;padding:9px;background:color-mix(in srgb,var(--surface) 92%,var(--primary) 8%);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border))}.workflow-next-action div{min-width:0;display:grid;gap:3px}.workflow-next-action strong,.workflow-next-action span{min-width:0;overflow:hidden;text-overflow:ellipsis}.workflow-next-action strong{color:var(--text);font-size:.8rem}.workflow-next-action span{color:var(--text-2);font-size:.76rem;line-height:1.4;white-space:normal}.workflow-next-action button{width:100%;min-height:36px;justify-content:center}.workflow-review-list{display:grid;gap:7px;padding:2px 0 0}.workflow-review-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.workflow-review-heading span,.workflow-review-heading small,.workflow-review-more{color:var(--text-2);font-size:.75rem;font-weight:700}.workflow-review-item{display:grid;gap:3px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 84%,transparent);border-left-width:3px;background:color-mix(in srgb,var(--surface) 92%,transparent)}.workflow-review-item[data-severity=error]{border-left-color:var(--danger)}.workflow-review-item[data-severity=warning]{border-left-color:var(--warning)}.workflow-review-item strong,.workflow-review-item p,.workflow-review-item small,.workflow-review-item button{display:block;min-width:0;overflow:visible;text-overflow:clip;white-space:normal}.workflow-review-item strong{color:var(--text);font-size:.8rem}.workflow-review-item p{margin:0;color:var(--text-2);font-size:.76rem;line-height:1.4}.workflow-review-item small,.workflow-review-item .text-action-btn{color:var(--primary-2);font-size:.73rem;font-weight:700}.analysis-review-workspace{min-width:0;display:grid;gap:9px;padding-top:10px;border-top:1px solid var(--border)}.analysis-review-header,.analysis-review-picker-row{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px}.analysis-review-header>div{min-width:0;display:grid;gap:2px}.analysis-review-header strong,.analysis-review-header span,.analysis-review-picker-row>span,.analysis-review-editor label>span,.analysis-review-reason>span{white-space:normal}.analysis-review-picker-row .select-input{min-width:0;flex:1}.analysis-review-picker-row>span{flex:none;color:var(--primary-2);font-size:.72rem;font-weight:700}.analysis-review-source,.analysis-review-halo{max-height:220px;overflow:auto;padding:8px 9px;background:var(--surface);border-left:3px solid color-mix(in srgb,var(--primary) 45%,var(--border))}.analysis-review-source p,.analysis-review-halo p{margin:0 0 7px;color:var(--text);font-size:.78rem;line-height:1.65;white-space:pre-wrap}.analysis-review-source p:last-child,.analysis-review-halo p:last-child{margin-bottom:0}.analysis-review-source>div+div{margin-top:9px;padding-top:9px;border-top:1px solid var(--border)}.analysis-review-source .text-action-btn{display:inline-flex;align-items:center;gap:4px;margin-top:5px;font-size:.7rem}.analysis-review-halo summary{margin-bottom:7px;color:var(--text-2);cursor:pointer;font-size:.75rem;font-weight:700}.analysis-review-segments{max-height:240px;overflow:auto;display:grid;gap:5px}.analysis-review-segments button{min-width:0;display:grid;gap:3px;padding:8px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:left}.analysis-review-segments button.selected{border-color:var(--primary);box-shadow:inset 3px 0 0 var(--primary)}.analysis-review-segments button span,.analysis-review-segments button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-review-editor{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.analysis-review-editor label,.analysis-review-reason{min-width:0;display:grid;gap:4px}.analysis-review-editor label>span,.analysis-review-reason>span{color:var(--text-2);font-size:.72rem;font-weight:700}.analysis-review-editor .select-input,.analysis-review-editor .text-input,.analysis-review-reason .text-input{min-width:0;width:100%}.analysis-review-wide-field{grid-column:1 / -1}.analysis-review-issues{display:grid;gap:5px}.analysis-review-issues>div{min-width:0;display:grid;gap:2px;padding-left:7px;border-left:2px solid var(--warning)}.analysis-review-issues>div[data-severity=error]{border-left-color:var(--danger)}.analysis-review-issues strong,.analysis-review-issues span{overflow:visible;white-space:normal}.analysis-review-issues strong{font-size:.72rem}.analysis-review-issues span{font-size:.73rem;line-height:1.4}.analysis-review-safety-note{margin:0;padding:7px 9px;color:var(--text-2);background:color-mix(in srgb,var(--warning) 8%,var(--surface));border-left:2px solid var(--warning);font-size:.72rem;line-height:1.45}.analysis-review-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.analysis-review-actions button{min-width:0;min-height:36px;padding-inline:8px;justify-content:center;white-space:normal}.analysis-review-actions .danger-btn{grid-column:1 / -1;color:var(--danger)}@media(max-width:600px){.analysis-review-editor,.analysis-review-actions{grid-template-columns:minmax(0,1fr)}.analysis-review-wide-field,.analysis-review-actions .danger-btn{grid-column:auto}}.text-action-btn{width:fit-content;max-width:100%;padding:0;color:var(--primary-2);background:transparent;border:0;box-shadow:none;font:inherit;line-height:1.4;text-align:left}.text-action-btn:hover:not(:disabled){text-decoration:underline}.text-action-btn:disabled{color:var(--text-2);cursor:not-allowed;opacity:.58}.provider-settings-card.muted-card{background:color-mix(in srgb,var(--surface-2) 58%,transparent)}.provider-grid{display:grid;gap:7px}.provider-row{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:8px;background:var(--surface);border:1px solid transparent;border-radius:var(--radius)}.provider-option-toggle{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:9px;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.provider-option-toggle input{margin-top:2px}.provider-option-toggle strong,.provider-option-toggle small{display:block}.provider-option-toggle strong{color:var(--text);font-size:.84rem}.provider-option-toggle small{color:var(--text-2);font-size:.76rem;line-height:1.4}.provider-option-controls{display:grid;gap:8px;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.provider-option-control{min-width:0;display:grid;grid-template-columns:minmax(92px,.62fr) minmax(0,1fr);align-items:center;gap:10px}.provider-option-control>span{min-width:0}.provider-option-control strong,.provider-option-control small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-option-control strong{color:var(--text);font-size:.82rem}.provider-option-control small{color:var(--text-2);font-size:.72rem}.provider-option-control input,.provider-option-control select{min-width:0}.provider-secret-control{display:grid;gap:8px;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.provider-capability-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 12px;color:var(--text-2);font-size:.78rem}.provider-capability-summary strong{color:var(--text);font-weight:650}.provider-capability-summary span{min-width:0;overflow-wrap:anywhere;text-align:right}.provider-secret-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;align-items:center}.provider-secret-row .text-input{min-width:0}.provider-secret-row .primary-btn,.provider-secret-row .ghost-btn{min-width:0;padding-inline:9px}.provider-row.disabled{opacity:.62}.provider-row>span,.provider-job-card{min-width:0}.provider-row strong,.provider-row small,.provider-job-card strong,.provider-job-card span,.provider-job-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-row strong,.provider-job-card strong{color:var(--text);font-size:.87rem}.provider-row small,.provider-job-card span,.provider-job-card small{color:var(--text-2);font-size:.76rem}.provider-options-textarea{min-height:78px;font-family:var(--font-mono);font-size:.82rem}.provider-settings-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.provider-settings-actions .primary-btn,.provider-settings-actions .ghost-btn{min-width:0;padding-inline:8px}.graph-review-panel{display:grid;gap:10px;padding:12px;background:color-mix(in srgb,var(--surface-2) 72%,transparent);border:1px solid var(--border);border-radius:var(--radius)}.graph-review-metrics{display:flex;flex-wrap:wrap;gap:6px}.graph-review-metrics span{padding:3px 7px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;font-size:.74rem;font-weight:700}.graph-review-list{max-height:320px;overflow:auto;padding-right:2px}.compact-list button.graph-review-row{grid-template-columns:minmax(0,1fr) auto}.compact-list button.graph-review-row>span{grid-column:1;grid-row:1}.compact-list button.graph-review-row small{grid-column:1 / -1;grid-row:2}.compact-list button.graph-review-row em{grid-column:2;grid-row:1;align-self:center;padding:3px 7px;color:var(--primary-2);background:color-mix(in srgb,var(--primary) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));border-radius:999px;font-size:.72rem;font-style:normal;font-weight:800}.compact-list button.graph-review-row.excluded{opacity:.62}.compact-list button.graph-review-row.excluded em{color:var(--text-2);background:var(--surface);border-color:var(--border)}.graph-knowledge-workspace{display:grid;gap:8px;padding-top:10px;border-top:1px solid var(--border)}.graph-knowledge-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;align-items:center;padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.graph-knowledge-row>span{min-width:0;overflow-wrap:anywhere;font-size:.82rem;font-weight:700}.graph-knowledge-row>small{grid-column:1;min-width:0;color:var(--text-2);overflow-wrap:anywhere}.graph-knowledge-row>button,.graph-knowledge-actions{grid-column:2;grid-row:1 / span 2}.graph-knowledge-row button{min-height:30px;padding:4px 8px}.graph-knowledge-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:156px}@media(max-width:520px){.graph-knowledge-row{grid-template-columns:minmax(0,1fr)}.graph-knowledge-row>button,.graph-knowledge-actions{grid-column:1;grid-row:auto;justify-content:flex-start;max-width:none}}.ai-addon-body{gap:0}.addon-intro{display:grid;gap:5px;padding-bottom:16px;border-bottom:1px solid var(--border)}.addon-intro h3,.addon-intro p{margin:0}.ai-workspace-section{min-width:0;display:grid;gap:14px;padding-block:18px;border-bottom:1px solid var(--border)}.ai-workspace-section:last-child{padding-bottom:0;border-bottom:0}.ai-addon-body .ai-workspace-section{padding-block:12px;border-bottom:0}.ai-managed-workflow-picker{display:grid;gap:6px}.ai-managed-workflow-picker label{color:var(--text-2);font-size:.76rem;font-weight:700}.ai-managed-workflow-picker select{width:100%;min-height:40px}.ai-managed-workflow-picker small{color:var(--text-2);line-height:1.5}.ai-managed-workflow-picker .field-warning{color:var(--warning, #a15c00)}.ai-workspace-primary .book-workflow-card{margin:0;padding:0;background:transparent;border:0}.ai-workspace-primary .panel-section-title{align-items:flex-start}.ai-workspace-primary .panel-section-title span{padding:3px 0 3px 9px;border-left:2px solid var(--primary)}.ai-workspace-primary .workflow-metrics{gap:0;border-block:1px solid var(--border)}.ai-workspace-primary .workflow-metrics span{padding:10px 8px;background:transparent;border:0;border-right:1px solid var(--border);border-radius:0}.ai-workspace-primary .workflow-metrics span:nth-child(2n){border-right:0}.ai-workspace-primary .workflow-metrics span:nth-child(n+3){border-top:1px solid var(--border)}.ai-workspace-primary .workflow-status-row{padding:9px 0;background:transparent;border:0;border-bottom:1px solid color-mix(in srgb,var(--border) 74%,transparent);border-radius:0}.ai-workspace-primary .workflow-next-action,.ai-workspace-primary .workflow-review-item{background:transparent}.ai-workflow-summary{margin:0;color:var(--text-2);font-size:.86rem;line-height:1.6}.ai-recommended-action{min-height:44px}.ai-advanced-disclosure{min-width:0;border-block:1px solid var(--border)}.ai-advanced-disclosure>summary{padding:11px 0;color:var(--text-2);cursor:pointer;font-size:.8rem;font-weight:700}.ai-advanced-disclosure[open]>summary{color:var(--text);border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.ai-advanced-content{display:grid;gap:12px;padding:12px 0}.ai-analysis-summary{min-height:48px;border:1px solid var(--border)}.ai-diagnostic-list{display:grid;gap:0;margin:0;border-block:1px solid var(--border)}.ai-diagnostic-list>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0}.ai-diagnostic-list>div+div{border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.ai-diagnostic-list dt{color:var(--text-2)}.ai-diagnostic-list dd{margin:0;text-align:right}.ai-workspace-operations>.provider-settings-card,.ai-workspace-operations .provider-job-card{background:transparent;border-radius:0}.graph-review-panel{padding:14px 0;background:transparent;border-width:1px 0 0;border-radius:0}.graph-review-metrics{gap:0 14px}.graph-review-metrics span{padding:0;background:transparent;border:0;border-radius:0}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.book-info-panel{display:grid;gap:8px}.book-info-panel>div{min-width:0;display:grid;gap:4px;padding:10px 11px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.book-info-panel span{color:var(--text-2);font-size:.76rem;font-weight:700}.book-info-panel strong{overflow:hidden;color:var(--text);font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}.panel-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.panel-action-grid .ghost-btn{min-width:0;padding-inline:8px}.stat-card{min-width:0;padding:11px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.stat-card span,.stat-card strong{display:block}.stat-card span{margin-bottom:4px;color:var(--text-2);font-size:.76rem;font-weight:700}.stat-card strong{overflow:hidden;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.compact-list .muted{padding:8px 2px}.empty-panel{padding:16px 0;color:var(--text-2);background:transparent;border-block:1px solid var(--border);border-radius:0;font-size:.86rem}.chapter-empty{display:grid;gap:8px}.chapter-empty strong{color:var(--text);font-size:.95rem}.chapter-empty .ghost-btn{justify-self:start}.field-label{display:block;margin-top:12px;color:var(--text-2);font-size:.83rem;font-weight:700}.field-help{margin:6px 0 0;color:var(--text-2);font-size:.8rem;line-height:1.45}select,input.text-input,textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}select,input.text-input{height:39px;padding:0 10px}textarea{min-height:92px;padding:10px;resize:vertical}.field-error{margin:0;padding-left:10px;color:var(--danger);border-left:3px solid var(--danger);font-size:.82rem;line-height:1.45}.addon-status{padding:10px;background:var(--surface-2);border-radius:var(--radius)}.tts-status{align-items:flex-start;border:1px solid var(--border)}.tts-status>div{display:grid;gap:4px}.tts-status strong{color:var(--text)}.tts-status span{font-size:.86rem;line-height:1.45}.tts-status.warning{border-color:color-mix(in srgb,var(--warning) 45%,var(--border))}.tts-status.danger{border-color:color-mix(in srgb,var(--danger) 52%,var(--border))}.tts-status .icon-btn{flex:0 0 auto}.reader-mode-switch.stacked{display:grid}.character-row{display:flex;align-items:center;gap:10px;padding:10px;background:var(--surface-2);border-radius:var(--radius)}.character-row>span{width:10px;height:34px;border-radius:999px}.character-row strong,.character-row small{display:block}.character-row small{color:var(--text-2)}.correction-box{display:grid;gap:8px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 40%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.correction-box label{display:grid;gap:5px;color:var(--text-2);font-size:.78rem;font-weight:700}.correction-box select{min-width:0;width:100%;padding:9px 10px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.correction-quick,.correction-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.correction-actions .primary-btn,.correction-actions .ghost-btn{min-width:0}.correction-box button:not(.primary-btn):not(.ghost-btn){min-height:34px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);cursor:pointer}.reading-activity-chart{display:grid;grid-template-columns:repeat(7,minmax(24px,1fr));align-items:end;gap:8px;height:132px;margin-top:16px;padding:12px 10px 6px;border:1px solid var(--border);border-radius:6px}.reading-activity-day{display:grid;grid-template-rows:1fr auto;align-items:end;gap:6px;height:100%;text-align:center}.reading-activity-day>span{display:block;min-height:0;border-radius:3px 3px 0 0;background:var(--primary)}.reading-activity-day small{color:var(--text-2);font-size:.7rem}.reading-stat-actions{margin-top:12px}.modal-backdrop,.settings-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-dialog);display:grid;place-items:center;padding:14px;background:var(--app-modal-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{width:min(480px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow-y:auto;overscroll-behavior:contain;padding:18px;background:var(--app-surface-strong);border:1px solid var(--app-line-strong);border-radius:var(--radius-overlay);box-shadow:var(--shadow)}.modal-drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-drawer);display:flex;align-items:stretch;justify-content:flex-start;background:var(--app-menu-backdrop)}.modal-drawer-layer[data-side=end]{justify-content:flex-end}.modal-drawer{width:min(360px,calc(100vw - 36px));min-height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;color:var(--app-text);background:var(--app-panel-elevated);border-inline-end:1px solid var(--app-line-strong);box-shadow:var(--shadow)}.modal-drawer-layer[data-side=end] .modal-drawer{border-inline-start:1px solid var(--app-line-strong);border-inline-end:0}.modal-drawer-header,.modal-drawer-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--app-surface-strong)}.modal-drawer-header{min-height:58px;border-bottom:1px solid var(--app-line)}.modal-drawer-header h2{margin:0;font-size:.95rem;font-weight:650}.modal-drawer-content{min-height:0;padding:14px;overflow-y:auto;overscroll-behavior:contain}.modal-drawer-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--app-line)}.modal header,.settings-panel header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-18px -18px 16px;padding:13px 18px;background:var(--app-surface);border-bottom:1px solid var(--border)}.modal header h2,.settings-panel header h2{font-size:1rem}.library-management-dialog{width:min(820px,calc(100vw - 28px));height:min(760px,calc(100dvh - 40px));display:flex;flex-direction:column;padding:0;overflow:hidden}.library-management-dialog>header{min-height:58px;margin:0;padding:12px 16px;border-bottom:1px solid var(--border)}.library-management-dialog h2{font-size:1.05rem}.library-management-body{min-height:0;flex:1;overflow-x:hidden;overflow-y:auto;padding:16px}.metadata-editor{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px}.metadata-cover-editor{min-width:0;display:grid;align-content:start;gap:12px}.metadata-cover-preview{width:100%;aspect-ratio:2 / 3;overflow:hidden;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.metadata-cover-preview>img,.metadata-cover-preview>.book-cover{width:100%;height:100%}.metadata-cover-controls,.metadata-fields,.metadata-fields label,.metadata-shelf-list,.shelf-editor-list{display:grid;gap:9px}.metadata-cover-controls>label:not(.cover-file-button),.metadata-fields label>span{color:var(--text-2);font-size:.8rem;font-weight:700}.metadata-cover-controls input[type=range]{width:100%}.cover-file-button{cursor:pointer}.cover-file-button input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.metadata-fields input,.metadata-fields textarea,.shelf-create-row input[type=text],.shelf-editor-row input{width:100%}.metadata-fields textarea{resize:vertical}.metadata-field-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:9px}.metadata-shelf-list{grid-column:1 / -1;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));padding-top:14px;border-top:1px solid var(--border)}.metadata-shelf-list>strong{grid-column:1 / -1}.metadata-shelf-list label{display:flex;align-items:center;gap:7px}.shelf-color{width:10px;height:10px;flex:0 0 auto;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001f}.dialog-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px;padding-top:14px;border-top:1px solid var(--border)}.shelf-create-row,.shelf-editor-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px}.shelf-create-row input[type=color]{width:42px;height:38px;padding:3px}.shelf-editor-row{grid-template-columns:auto minmax(0,1fr) repeat(4,auto);padding:9px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.dialog-status{margin:0;padding:10px 16px;border-top:1px solid var(--border)}.dialog-status.danger{color:var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.library-folder-dialog{width:min(1040px,calc(100vw - 28px));padding:0;overflow:hidden}.library-folder-dialog>header{min-height:58px;margin:0;padding:12px 16px}.library-folder-layout{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:min(690px,calc(100dvh - 88px));max-height:calc(100dvh - 88px)}.library-folder-sidebar{padding:14px 10px;overflow-y:auto;background:var(--app-surface);border-right:1px solid var(--border)}.library-folder-sidebar-title,.library-folder-toolbar,.library-folder-list-head,.library-folder-actions,.library-folder-sidebar nav>button,.library-folder-file-row{display:flex;align-items:center}.library-folder-sidebar-title{justify-content:space-between;gap:8px;padding:0 6px 10px;font-size:.82rem}.library-folder-sidebar nav{display:grid;gap:3px}.library-folder-sidebar nav>button{width:100%;gap:9px;padding:9px;text-align:left;background:transparent;border:1px solid transparent;border-radius:var(--radius)}.library-folder-sidebar nav>button:hover,.library-folder-sidebar nav>button.active{background:var(--surface-2);border-color:var(--border)}.library-folder-sidebar nav>button>span{min-width:0;display:grid;flex:1}.library-folder-sidebar nav strong,.library-folder-sidebar nav small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-folder-sidebar nav small,.library-folder-sidebar>p,.library-folder-toolbar span,.library-folder-file-name small,.library-folder-actions p,.library-folder-progress small{color:var(--muted);font-size:.74rem}.library-folder-sidebar>p{margin:10px 6px;line-height:1.55}.library-folder-main{min-width:0;display:flex;flex-direction:column;overflow:hidden}.library-folder-toolbar{min-height:60px;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border)}.library-folder-toolbar>div:first-child{min-width:0;display:grid}.library-folder-toolbar>div:last-child{display:flex;gap:7px}.library-folder-filters{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.8fr) auto;gap:14px;padding:12px 16px;background:var(--app-surface);border-bottom:1px solid var(--border)}.library-folder-filters fieldset{min-width:0;display:flex;flex-wrap:wrap;gap:5px 12px;padding:0;border:0}.library-folder-filters legend,.library-folder-size-filter>span{width:100%;margin-bottom:4px;color:var(--muted);font-size:.72rem;font-weight:700}.library-folder-filters label{display:flex;align-items:center;gap:6px;font-size:.76rem}.library-folder-size-filter{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px}.library-folder-size-filter>span{grid-column:1 / -1}.library-folder-size-filter label{display:grid;grid-template-columns:auto minmax(0,1fr)}.library-folder-size-filter input{min-width:0;width:100%;padding:6px 7px}.library-folder-switches{display:grid;align-content:center;gap:7px}.library-folder-error{margin:0;padding:9px 16px;color:var(--danger);font-size:.78rem;background:color-mix(in srgb,var(--danger) 7%,var(--surface));border-bottom:1px solid var(--border)}.library-folder-list-head{justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border)}.library-folder-list-head label{display:flex;align-items:center;gap:9px}.library-folder-list-head span{color:var(--muted);font-size:.78rem}.library-folder-file-list{min-height:180px;flex:1;overflow-y:auto}.library-folder-file-row{min-width:0;display:grid;grid-template-columns:auto 32px minmax(0,1fr) 82px 108px;gap:9px;min-height:58px;padding:8px 16px;border-bottom:1px solid var(--border)}.library-folder-file-row:hover{background:var(--surface-2)}.library-folder-file-icon{display:grid;place-items:center;width:30px;height:36px;color:var(--text-2);background:var(--app-surface);border:1px solid var(--border);border-radius:3px}.library-folder-file-name{min-width:0;display:grid}.library-folder-file-name strong,.library-folder-file-name small,.library-folder-file-name em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-folder-file-name strong{font-size:.83rem}.library-folder-file-name em{color:var(--accent);font-size:.7rem;font-style:normal}.library-folder-file-size{color:var(--muted);font-size:.75rem;text-align:right}.library-folder-status{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px 6px;color:var(--text-2);font-size:.71rem;background:var(--surface-2);border:1px solid var(--border);border-radius:3px}.library-folder-status.new,.library-folder-status.changed{color:var(--primary-2);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.library-folder-status.missing{color:var(--danger)}.library-folder-status.current{color:var(--accent)}.library-folder-list-empty,.library-folder-empty{display:grid;place-items:center;align-content:center;gap:10px;min-height:240px;padding:28px;color:var(--muted);text-align:center}.library-folder-empty{min-height:480px}.library-folder-empty h3,.library-folder-empty p{margin:0}.library-folder-empty h3{color:var(--text)}.library-folder-progress{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.7fr);gap:5px 14px;padding:9px 16px;background:var(--surface-2);border-top:1px solid var(--border)}.library-folder-progress span{overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.library-folder-progress progress{width:100%;align-self:center}.library-folder-progress small{grid-column:1 / -1}.library-folder-actions{min-height:58px;justify-content:space-between;gap:16px;padding:10px 16px;border-top:1px solid var(--border)}.library-folder-actions p{margin:0}@media(max-width:760px){.library-folder-dialog{width:100vw;max-height:100dvh;border-radius:0}.library-folder-layout{display:block;min-height:0;max-height:calc(100dvh - 58px);overflow-y:auto}.library-folder-sidebar{padding:8px 10px;border-right:0;border-bottom:1px solid var(--border)}.library-folder-sidebar nav{display:flex;overflow-x:auto}.library-folder-sidebar nav>button{width:auto;min-width:150px}.library-folder-main{overflow:visible}.library-folder-filters{grid-template-columns:1fr}.library-folder-file-list{overflow:visible}.library-folder-file-row{grid-template-columns:auto 30px minmax(0,1fr) auto;padding:9px 12px}.library-folder-file-size{display:none}.library-folder-status{grid-column:3 / -1;justify-self:start}.library-folder-actions{position:sticky;bottom:0;align-items:stretch;flex-direction:column;background:var(--app-surface-strong)}.library-folder-actions .primary-btn,.library-folder-actions .ghost-btn{width:100%;justify-content:center}}.import-duplicate-list{display:grid;gap:7px}.import-series-panel{display:grid;gap:9px;padding:11px;background:color-mix(in srgb,var(--primary) 6%,var(--surface-2));border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:var(--radius)}.import-series-heading,.import-series-heading>div,.import-series-target,.import-series-release-list{display:grid;gap:4px}.import-series-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}.import-series-heading span,.import-series-target>span,.import-series-target-locked,.import-series-conflict-note,.import-series-release-list small{color:var(--text-2);font-size:.76rem}.import-series-heading em{max-width:170px;overflow:hidden;color:var(--primary-2);font-size:.78rem;font-style:normal;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.import-series-target select{width:100%}.import-series-target-locked,.import-series-conflict-note{margin:0}.import-series-summary{display:flex;flex-wrap:wrap;gap:6px}.import-series-summary span{padding:3px 7px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;font-size:.72rem;font-weight:750}.import-series-summary .is-add{color:var(--primary-2);border-color:color-mix(in srgb,var(--primary) 34%,var(--border))}.import-series-summary .is-conflict,.import-series-error,.import-series-conflict-note{color:#b45309}.import-series-release-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;min-height:30px;padding:5px 7px;background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px)}.import-series-release-list>div>span{overflow:hidden;font-size:.78rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.import-series-release-list>div>em{color:var(--primary-2);font-size:.72rem;font-style:normal;font-weight:750}.import-series-release-list>div[data-state=duplicate]>em{color:var(--text-2)}.import-series-release-list>div[data-state=conflict]>em{color:#b45309}.import-series-release-list>p{margin:2px 0 0;color:var(--text-2);font-size:.75rem}.import-series-error{display:flex;gap:7px;align-items:flex-start;padding:8px 9px;background:color-mix(in srgb,#d97706 7%,var(--surface));border:1px solid color-mix(in srgb,#d97706 28%,var(--border));border-radius:var(--radius);font-size:.78rem}.import-duplicate-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(132px,auto);align-items:center;gap:9px;padding:9px 10px;background:color-mix(in srgb,#d97706 7%,var(--surface));border:1px solid color-mix(in srgb,#d97706 28%,var(--border));border-radius:var(--radius)}.import-duplicate-row>svg{color:#b45309}.import-duplicate-row strong,.import-duplicate-row span{display:block}.import-duplicate-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-duplicate-row span{margin-top:2px;color:var(--text-2);font-size:.76rem}@media(max-width:699px){.library-management-backdrop{padding:0}.library-management-dialog{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}.library-management-dialog>header{min-height:calc(58px + env(safe-area-inset-top));padding-top:calc(12px + env(safe-area-inset-top))}.metadata-editor{grid-template-columns:minmax(0,1fr);gap:14px;padding-bottom:calc(18px + env(safe-area-inset-bottom))}.metadata-cover-editor{grid-template-columns:112px minmax(0,1fr);align-items:start}.metadata-cover-preview{width:112px}.metadata-cover-controls .segmented{display:grid}.metadata-field-row{grid-template-columns:1fr}.metadata-shelf-list,.dialog-actions{grid-column:1 / -1}.dialog-actions{position:sticky;bottom:calc(-18px - env(safe-area-inset-bottom));margin:0 -16px -18px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--app-surface-strong);border-top:1px solid var(--app-line)}.shelf-create-row{grid-template-columns:minmax(0,1fr) auto}.shelf-create-row .primary-btn{grid-column:1 / -1}.import-duplicate-row{grid-template-columns:auto minmax(0,1fr)}.import-duplicate-row select{grid-column:2;width:100%}}@media(max-width:699px){.modal-backdrop,.settings-layer{place-items:end center;padding:8px 8px 0}.modal{width:100%;max-height:calc(100dvh - 8px);border-bottom:0;border-radius:var(--radius-overlay) var(--radius-overlay) 0 0}.modal header{position:sticky;z-index:1;top:-18px}.modal-backdrop.library-management-backdrop{padding:0}.modal.library-management-dialog{height:100dvh;max-height:100dvh;border:0;border-radius:0}.modal.library-management-dialog>header{top:0}}.backup-dialog{width:min(620px,calc(100vw - 28px))}.chapter-structure-dialog{width:min(1040px,calc(100vw - 28px));overflow:hidden}.chapter-structure-layout{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(440px,1.2fr);grid-template-rows:minmax(0,1fr);min-height:min(640px,calc(100dvh - 120px));max-height:calc(100dvh - 110px);border:1px solid var(--border)}.chapter-structure-list,.chapter-structure-editor{min-width:0;min-height:0}.chapter-structure-list{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:var(--surface-2);border-right:1px solid var(--border)}.chapter-structure-list>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;margin:0;border-bottom:1px solid var(--border)}.chapter-structure-dialog .chapter-structure-list>header,.chapter-structure-dialog .chapter-structure-selection-header,.chapter-structure-dialog .chapter-boundary-candidate-panel>header,.chapter-structure-dialog .chapter-structure-preview>header{position:static;z-index:auto;top:auto}.chapter-structure-dialog .chapter-structure-selection-header{margin:0 0 12px;padding:0;background:transparent;border:0}.chapter-structure-dialog .chapter-boundary-candidate-panel>header,.chapter-structure-dialog .chapter-structure-preview>header{margin:0;padding:0;background:transparent;border:0}.chapter-structure-list>header span{color:var(--text-2);font-size:.78rem}.chapter-structure-search{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:10px;padding:0 10px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:8px}.chapter-structure-search:focus-within{border-color:var(--accent)}.chapter-structure-search input{min-width:0;height:36px;padding:0;background:transparent;border:0;outline:0}.chapter-structure-search small{font-size:.74rem;font-variant-numeric:tabular-nums}.chapter-structure-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain}.chapter-structure-scroll .chapter-row{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:2px 8px;min-height:54px;padding:8px 12px;color:var(--text);text-align:left;background:transparent;border:0}.chapter-structure-scroll .chapter-row:hover,.chapter-structure-scroll .chapter-row.active{background:var(--surface)}.chapter-structure-scroll .chapter-row.active{box-shadow:inset 3px 0 0 var(--accent)}.chapter-structure-scroll .chapter-row>span{grid-row:1 / span 2;color:var(--text-2);font-variant-numeric:tabular-nums}.chapter-structure-scroll .chapter-row>strong,.chapter-structure-scroll .chapter-row>small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-structure-scroll .chapter-row>small{color:var(--text-2);font-size:.74rem;font-variant-numeric:tabular-nums}.chapter-boundary-toggle{width:100%;display:grid;grid-template-columns:minmax(12px,1fr) auto minmax(12px,1fr);align-items:center;gap:8px;min-height:22px;padding:0 12px;color:var(--text-2);background:transparent;border:0}.chapter-boundary-toggle>span{height:1px;background:var(--border)}.chapter-boundary-toggle small{font-size:.7rem;opacity:0;transition:opacity .12s ease}.chapter-boundary-toggle:hover small,.chapter-boundary-toggle:focus-visible small,.chapter-boundary-toggle.selected small{opacity:1}.chapter-boundary-toggle.selected{color:var(--danger)}.chapter-boundary-toggle.selected>span{background:currentColor}.chapter-structure-list-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-top:1px solid var(--border)}.chapter-structure-list-actions>span{color:var(--text-2);font-size:.78rem}.chapter-structure-editor{overflow-y:auto;padding:14px;overscroll-behavior:contain}.chapter-structure-mobile-back{display:none}.chapter-structure-selection-header{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:0;background:transparent;border:0}.chapter-structure-selection-header>span{flex:0 0 auto;padding:4px 7px;color:var(--accent);font-size:.76rem;font-weight:800;background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:999px}.chapter-structure-selection-header>div{min-width:0;display:grid;gap:3px}.chapter-structure-selection-header strong,.chapter-structure-selection-header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-structure-selection-header small{color:var(--text-2);font-size:.76rem}.chapter-source-preview{max-height:132px;overflow:auto;margin:0 0 12px;padding:10px 12px;color:var(--text-2);font-size:.84rem;line-height:1.6;white-space:pre-wrap;background:var(--surface-2);border:1px solid var(--border)}.chapter-boundary-candidate-panel{display:grid;gap:10px;padding:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.chapter-boundary-candidate-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0;padding:0;background:transparent;border:0}.chapter-boundary-candidate-panel>header>div{min-width:0;display:grid;gap:3px}.chapter-boundary-candidate-panel>header small,.chapter-boundary-empty,.chapter-boundary-family-action{color:var(--text-2);font-size:.76rem}.chapter-boundary-candidates{max-height:300px;display:grid;gap:6px;overflow-y:auto}.chapter-boundary-candidates>button{min-width:0;display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:9px;padding:9px 10px;color:var(--text);text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:8px}.chapter-boundary-candidates>button:hover,.chapter-boundary-candidates>button.selected{border-color:var(--accent)}.chapter-boundary-candidates>button.selected{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.candidate-check{width:20px;height:20px;display:grid;place-items:center;color:#fff;font-size:.76rem;font-weight:800;border:1px solid var(--border);border-radius:5px}.chapter-boundary-candidates>button.selected .candidate-check{background:var(--accent);border-color:var(--accent)}.chapter-boundary-candidates>button>span:last-child{min-width:0;display:grid;gap:3px}.chapter-boundary-candidates strong,.chapter-boundary-candidates small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-boundary-candidates small{color:var(--text-2);font-size:.72rem}.chapter-boundary-empty,.chapter-boundary-family-action{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;background:var(--surface);border-radius:8px}.chapter-structure-manual-tools{margin-top:12px;border-top:1px solid var(--border)}.chapter-structure-manual-tools summary{padding:12px 2px;color:var(--text-2);font-size:.8rem;font-weight:700;cursor:pointer}.structure-command-block{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:10px 0}.structure-command-block+.structure-command-block{border-top:1px solid var(--border)}.structure-command-block label{min-width:0;display:grid;gap:5px}.structure-command-block label>span{color:var(--text-2);font-size:.8rem;font-weight:700}.structure-command-block input,.structure-command-block select{width:100%;min-width:0}.chapter-structure-preview{display:grid;gap:14px}.chapter-structure-preview>header{justify-content:flex-start;margin:0;padding:0;background:transparent;border:0}.chapter-structure-preview>header>span{display:grid;gap:2px}.chapter-structure-preview>header small{color:var(--text-2)}.chapter-structure-preview dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.chapter-structure-preview dl>div{display:grid;gap:4px;padding:10px;background:var(--surface-2);border:1px solid var(--border)}.chapter-structure-preview dt{color:var(--text-2);font-size:.76rem}.chapter-structure-preview dd{margin:0;font-weight:800}.structure-preview-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.structure-preview-columns>div{min-width:0;display:grid;gap:6px}.structure-preview-columns>div>strong{font-size:.82rem}.structure-preview-titles{max-height:330px;display:grid;align-content:start;gap:5px;overflow-y:auto;padding:10px;background:var(--surface-2);border:1px solid var(--border)}.structure-preview-titles>span{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border-radius:6px}.structure-preview-titles>span.removed{background:color-mix(in srgb,var(--danger) 12%,transparent)}.structure-preview-titles>span.added{background:color-mix(in srgb,#42c88a 12%,transparent)}.structure-preview-titles>span>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.structure-preview-titles b,.structure-preview-titles small{color:var(--text-2);font-size:.72rem;font-variant-numeric:tabular-nums}.structure-preview-omission{margin:-4px 0;color:var(--text-2);font-size:.76rem}.chapter-structure-preview-actions{position:sticky;bottom:-14px;z-index:2;padding:12px 0 0;background:var(--surface)}.chapter-structure-dialog .chapter-structure-preview-actions{margin:0}.chapter-structure-footer{position:sticky;bottom:-14px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px -14px 0;padding:12px 14px;background:color-mix(in srgb,var(--surface) 94%,transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chapter-structure-footer>div{min-width:0;display:grid;gap:4px}.chapter-structure-footer>div>span,.chapter-structure-history>span{color:var(--text-2);font-size:.82rem}.chapter-structure-footer .text-btn{width:fit-content;display:inline-flex;align-items:center;gap:5px;padding:0;color:var(--text-2);font-size:.74rem;background:transparent;border:0}.chapter-structure-history{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px}@media(max-width:760px){.chapter-structure-dialog{padding:12px}.chapter-structure-layout{display:block;min-height:calc(100dvh - 100px);height:calc(100dvh - 100px);max-height:calc(100dvh - 100px)}.chapter-structure-layout.mobile-list .chapter-structure-editor,.chapter-structure-layout.mobile-editor .chapter-structure-list,.chapter-structure-layout.is-previewing .chapter-structure-list{display:none}.chapter-structure-layout.is-previewing .chapter-structure-editor{display:block}.chapter-structure-list,.chapter-structure-editor{height:100%}.chapter-structure-list{border-right:0}.chapter-structure-mobile-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:12px}.chapter-boundary-toggle small{opacity:.68}.structure-command-block{grid-template-columns:1fr;align-items:stretch}.structure-command-block>button{width:100%}.chapter-structure-preview dl,.structure-preview-columns{grid-template-columns:1fr}.structure-preview-titles{max-height:220px}.chapter-boundary-candidate-panel>header,.chapter-boundary-empty,.chapter-boundary-family-action{align-items:stretch;flex-direction:column}.chapter-boundary-candidate-panel>header>button,.chapter-boundary-empty>button,.chapter-boundary-family-action>button{width:100%}}.backup-action-block,.backup-inspection{display:grid;gap:12px;padding:16px 0;margin-top:12px;background:transparent;border:0;border-top:1px solid var(--border)}.backup-action-block>div,.backup-file-summary{min-width:0;display:flex;align-items:flex-start;gap:10px}.backup-action-block>div>span,.backup-file-summary>span{min-width:0;display:grid;gap:3px}.backup-action-block small,.backup-file-summary small{color:var(--text-2);line-height:1.45}.backup-action-block>button,.backup-restore-button{justify-self:end}.backup-conflicts{display:grid;gap:0;border-top:1px solid var(--border)}.backup-conflicts label{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,auto);align-items:center;gap:12px;padding-block:9px;border-bottom:1px solid var(--border)}.backup-conflicts label>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-conflicts select{min-width:0}.backup-unavailable{margin:0}@media(max-width:520px){.backup-conflicts label{grid-template-columns:1fr;gap:5px}.backup-action-block>button,.backup-restore-button{width:100%;justify-self:stretch}}.drop-zone{width:100%;display:grid;place-items:center;gap:8px;padding:34px 16px;margin-bottom:14px;text-align:center;font:inherit;color:var(--text-2);background:transparent;border:1px dashed var(--border);border-radius:var(--radius);cursor:pointer}.drop-zone .drop-zone-title{font-size:1.17em;color:var(--text)}.drop-zone .drop-zone-hint{margin-top:2px;font-size:.82rem}.drop-zone.is-disabled{cursor:wait;opacity:.68}.import-progress{display:grid;gap:10px;padding:14px;margin-bottom:14px;background:var(--surface-2);border:1px solid var(--border)}.import-selection-panel{display:grid;gap:10px;padding:12px;margin-bottom:14px;background:var(--surface);border:1px solid var(--border)}.import-file-list,.import-preview-list{display:grid;gap:6px}.import-file-row,.import-preview-row{min-width:0;display:grid;align-items:center;gap:8px;min-height:34px;padding:7px 9px;background:var(--surface-2);border:1px solid var(--border)}.import-file-row{grid-template-columns:18px minmax(0,1fr) auto}.import-file-row strong,.import-file-row span,.import-preview-row strong,.import-preview-row em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-archive-password{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:7px 10px;padding:9px;border:1px solid var(--border);background:var(--surface-2);font-size:.82rem}.import-archive-password input{min-width:0;height:34px;padding:0 9px;border:1px solid var(--border-strong);color:var(--text);background:var(--surface)}.import-archive-password small{grid-column:2;color:var(--text-2);font-size:.74rem;line-height:1.4}@media(max-width:560px){.import-archive-password{grid-template-columns:1fr}.import-archive-password small{grid-column:1}}.import-file-row span,.import-preview-row em{color:var(--text-2);font-size:.8rem;font-style:normal}.import-action-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.import-preview-card{display:grid;gap:8px;padding:10px;background:var(--surface-2);border:1px solid var(--border)}.import-preview-card.failed{border-color:color-mix(in srgb,var(--danger) 46%,var(--border))}.import-preview-card.loading{opacity:.78}.import-preview-row{grid-template-columns:34px minmax(0,1fr) auto}.import-preview-row span{color:var(--primary-2);font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums}.import-progress .progress-track{margin-top:0}.import-batch-summary{display:grid;gap:4px;min-width:0;padding:10px 12px;background:var(--surface);border:1px solid var(--border)}.import-batch-summary strong,.import-batch-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-batch-summary span{color:var(--text-2);font-size:.84rem}.import-progress-stats{display:flex;flex-wrap:wrap;gap:10px;color:var(--text-2);font-size:.86rem}.upload-session-panel{display:grid;gap:10px;padding:12px;margin-bottom:14px;background:var(--surface);border:1px solid var(--border)}.upload-session-list{display:grid;gap:8px}.upload-session-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:10px;min-height:52px;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border)}.upload-session-row div{display:grid;gap:3px;min-width:0}.upload-session-row strong,.upload-session-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-session-row span{color:var(--text-2);font-size:.82rem}.source-reselect-button{position:relative;cursor:pointer}.source-reselect-button input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.source-hub-screen{position:relative}.source-hub-topbar{min-width:0;min-height:var(--app-topbar-height);display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1fr) auto;align-items:center;gap:18px;padding:10px 22px;background:var(--app-surface-strong);border-bottom:1px solid var(--border)}.source-hub-topbar-title,.source-hub-topbar-title>span,.source-hub-topbar-actions,.source-hub-search,.source-hub-section-heading,.source-hub-items-heading>div,.source-hub-location,.source-hub-location>div,.source-hub-card-heading,.source-hub-card-controls,.source-hub-card-meta,.source-hub-hero-actions,.source-hub-connection,.source-hub-state,.source-hub-batch-bar,.source-hub-batch-bar>div{display:flex;align-items:center}.source-hub-topbar-title{min-width:0;gap:10px;color:var(--text-2)}.source-hub-topbar-title>span{min-width:0;align-items:flex-start;flex-direction:column;gap:2px}.source-hub-topbar-title strong,.source-hub-topbar-title small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-hub-topbar-title strong{color:var(--text);font-size:var(--ui-body-size)}.source-hub-topbar-title small{color:var(--muted);font-size:var(--ui-label-size)}.source-hub-search{min-width:0;height:38px;gap:9px;padding:0 5px 0 12px;color:var(--muted);background:var(--app-field);border:1px solid var(--border);border-radius:var(--radius-control)}.source-hub-detail-context{min-width:0;min-height:38px;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--text-2);background:var(--app-surface-muted);border:1px solid var(--border);border-radius:var(--radius-control);font-size:var(--ui-label-size)}.source-hub-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.source-hub-search input{min-width:0;flex:1;color:var(--text);background:transparent;border:0;outline:0}.source-hub-search .ghost-btn{min-height:28px;padding:0 10px}.source-hub-topbar-actions{gap:7px}.source-hub-scroll{min-width:0;min-height:0;padding:26px 28px 92px;overflow:auto;background:radial-gradient(circle at 56% -10%,color-mix(in srgb,var(--primary) 6%,transparent),transparent 34rem),var(--app-canvas)}.source-hub-scroll.is-work-detail{padding:18px 22px 92px}.source-hub-scroll.is-work-detail>*{width:min(1080px,100%);margin-right:auto;margin-left:auto}.source-hub-book-detail{margin-bottom:10px}.source-hub-book-detail .source-hub-remote-cover{min-height:168px;padding:0;overflow:hidden}.source-hub-book-detail .source-hub-remote-cover>img{width:100%;height:100%;display:block;object-fit:cover}.source-hub-book-detail .source-hub-local-release-add{width:auto;min-width:0}.source-hub-hero{min-height:130px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:22px 24px;background:linear-gradient(120deg,var(--app-surface-strong),color-mix(in srgb,var(--primary) 5%,var(--app-surface-strong)));border:1px solid var(--border);border-radius:12px;box-shadow:var(--app-card-shadow)}.source-hub-series-hero{justify-content:flex-start;align-items:stretch;min-height:228px}.source-hub-series-cover{position:relative;width:132px;min-width:132px;aspect-ratio:2 / 3;overflow:hidden;background:var(--app-surface-muted);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 28px #0000002e}.source-hub-series-cover>img,.source-hub-series-cover>.book-cover-fallback{width:100%;height:100%}.source-hub-series-cover>img{display:block;object-fit:cover}.source-hub-remote-cover{display:grid;place-items:center;color:var(--muted)}.source-hub-local-release-add{min-height:36px}.source-hub-hero-copy{min-width:0;flex:1}.source-hub-hero h1,.source-hub-hero p{margin:0}.source-hub-hero h1{margin-top:5px;color:var(--text);font-size:clamp(1.35rem,2.4vw,1.85rem);letter-spacing:-.035em}.source-hub-hero p{margin-top:9px;color:var(--text-2);font-size:var(--ui-body-size)}.source-hub-work-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.source-hub-work-meta span{padding:4px 7px;color:var(--text-2);background:var(--app-surface-muted);border:1px solid var(--border);border-radius:999px;font-size:.65rem}.source-hub-hero-actions{flex:0 0 auto;gap:9px}.source-hub-connection{flex:0 0 auto;gap:5px;padding:6px 10px;color:var(--app-success);background:color-mix(in srgb,var(--app-success) 10%,var(--app-surface));border:1px solid color-mix(in srgb,var(--app-success) 24%,var(--border));border-radius:999px;font-size:var(--ui-label-size);font-weight:var(--ui-weight-semibold)}.source-hub-connection.is-offline{color:var(--warning);background:color-mix(in srgb,var(--warning) 9%,var(--app-surface));border-color:color-mix(in srgb,var(--warning) 22%,var(--border))}.source-hub-location{min-height:42px;gap:8px;margin-bottom:18px;padding:5px 10px;color:var(--text-2);background:var(--app-surface);border:1px solid var(--border);border-radius:var(--radius-control)}.source-hub-location>div{min-width:0;flex:1;gap:4px;overflow-x:auto}.source-hub-location span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:var(--ui-label-size)}.source-hub-location em{flex:0 0 auto;color:var(--warning);font-size:var(--ui-label-size);font-style:normal}.source-hub-default-folder-btn{flex:0 0 auto;min-height:30px;gap:5px;padding:0 9px;font-size:var(--ui-label-size);white-space:nowrap}.source-hub-update-notice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-bottom:20px;padding:12px 14px;color:var(--warning);background:color-mix(in srgb,var(--warning) 8%,var(--app-surface));border:1px solid color-mix(in srgb,var(--warning) 24%,var(--border));border-radius:var(--radius-control)}.source-hub-update-notice span{display:grid;gap:3px;color:var(--text-2);font-size:var(--ui-label-size)}.source-hub-update-notice strong{color:var(--text)}.source-hub-bridge-notice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-bottom:20px;padding:12px 14px;color:var(--primary);background:color-mix(in srgb,var(--primary) 7%,var(--app-surface));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:var(--radius-control)}.source-hub-bridge-notice span{display:grid;gap:3px;color:var(--text-2);font-size:var(--ui-label-size)}.source-hub-bridge-notice strong{color:var(--text)}.source-hub-subscriptions{margin:22px 0 8px}.source-hub-subscription-heading>div{display:flex;align-items:baseline;gap:8px}.source-hub-subscription-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px}.source-hub-subscription-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 14px;padding:14px;background:var(--app-surface);border:1px solid var(--border);border-radius:var(--radius-control)}.source-hub-subscription-card>div{min-width:0;display:grid;gap:4px}.source-hub-subscription-card strong,.source-hub-subscription-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-hub-subscription-card strong{color:var(--text)}.source-hub-subscription-card small{color:var(--muted);font-size:var(--ui-label-size)}.source-hub-subscription-card>button{grid-column:2;grid-row:1;align-self:end}.source-hub-new-release-badge{grid-column:2;grid-row:1;align-self:start;justify-self:end;padding:4px 7px;color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,var(--app-surface));border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:999px;font-size:var(--ui-label-size);font-weight:var(--ui-weight-semibold)}.source-hub-subscription-note{margin:9px 2px 0;color:var(--muted);font-size:var(--ui-label-size)}.source-hub-new-release-actions{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--app-surface));border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:var(--radius-control)}.source-hub-new-release-actions>span{display:grid;gap:3px;color:var(--text-2);font-size:var(--ui-label-size)}.source-hub-new-release-actions strong{color:var(--text)}.source-hub-folder-section,.source-hub-items{margin-top:24px}.source-hub-section-heading{min-height:36px;justify-content:space-between;gap:12px;margin-bottom:10px}.source-hub-section-heading h2,.source-hub-section-heading span{margin:0}.source-hub-section-heading h2{color:var(--text);font-size:1rem;letter-spacing:-.02em}.source-hub-section-heading span{color:var(--muted);font-size:var(--ui-label-size)}.source-hub-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:9px}.source-hub-folder-grid button{min-width:0;min-height:54px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 14px;color:var(--text-2);background:var(--app-surface);border:1px solid var(--border);border-radius:9px;cursor:pointer;text-align:left}.source-hub-folder-grid button:hover:not(:disabled){color:var(--text);background:var(--app-surface-hover);border-color:color-mix(in srgb,var(--primary) 24%,var(--border))}.source-hub-folder-grid button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--ui-weight-medium)}.source-hub-items-heading>div{gap:7px}.source-hub-items-heading>label{display:inline-flex;align-items:center;gap:7px;color:var(--text-2);font-size:var(--ui-label-size);cursor:pointer}.source-hub-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:14px}.source-hub-card{position:relative;min-width:0;min-height:206px;display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;padding:14px;background:var(--app-surface);border:1px solid var(--border);border-radius:11px;box-shadow:var(--app-card-shadow);transition:border-color .14s ease,transform .14s ease}.source-hub-card-open{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:transparent;border:0;border-radius:inherit;cursor:pointer}.source-hub-card-open:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.source-hub-card-open:disabled{cursor:wait}.source-hub-card:hover{border-color:color-mix(in srgb,var(--primary) 24%,var(--border));transform:translateY(-1px)}.source-hub-card-cover{position:relative;height:136px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#fff;background:linear-gradient(145deg,rgb(255 255 255 / 17%),transparent 45%),linear-gradient(155deg,#4b6079,#263748);border-radius:7px;box-shadow:0 8px 18px #00000029;overflow:hidden}.source-hub-card-cover img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.source-hub-card-cover>svg{color:#ffffffc7}.source-hub-card[data-kind=work] .source-hub-card-cover{background:linear-gradient(145deg,rgb(255 255 255 / 15%),transparent 45%),linear-gradient(155deg,color-mix(in srgb,var(--primary) 78%,#4f405c),#3b3049)}.source-hub-browse-controls{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.source-hub-browse-tabs{display:inline-flex;align-items:center;gap:4px;padding:4px;background:var(--app-surface);border:1px solid var(--border);border-radius:var(--radius-control)}.source-hub-browse-tabs button,.source-hub-browse-tabs span{min-height:30px;display:inline-flex;align-items:center;padding:0 11px;color:var(--text-2);background:transparent;border:0;border-radius:calc(var(--radius-control) - 3px);font-size:var(--ui-label-size)}.source-hub-browse-tabs button{cursor:pointer}.source-hub-browse-tabs button.is-active{color:var(--text);background:var(--app-surface-hover);box-shadow:inset 0 0 0 1px var(--border);font-weight:var(--ui-weight-semibold)}.source-hub-filter-panel{position:relative;width:min(560px,100%);background:var(--app-surface);border:1px solid var(--border);border-radius:var(--radius-control)}.source-hub-filter-panel summary{min-height:38px;display:flex;align-items:center;gap:7px;padding:0 12px;color:var(--text-2);cursor:pointer;font-size:var(--ui-label-size);font-weight:var(--ui-weight-semibold);list-style:none}.source-hub-filter-panel summary::-webkit-details-marker{display:none}.source-hub-filter-grid{max-height:min(55vh,520px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:12px;overflow:auto;border-top:1px solid var(--border)}.source-hub-filter-header{grid-column:1 / -1;color:var(--text);font-size:var(--ui-label-size);line-height:1.45}.source-hub-filter-separator{grid-column:1 / -1;width:100%;margin:2px 0;border:0;border-top:1px solid var(--border)}.source-hub-filter-checkbox,.source-hub-filter-field,.source-hub-filter-sort label{min-width:0;display:grid;gap:5px;color:var(--text-2);font-size:var(--ui-label-size)}.source-hub-filter-checkbox{display:flex;align-items:center;gap:7px}.source-hub-filter-field input,.source-hub-filter-field select{min-width:0;width:100%;min-height:34px;padding:0 9px;color:var(--text);background:var(--app-field);border:1px solid var(--border);border-radius:7px}.source-hub-filter-sort{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px}.source-hub-filter-sort .ghost-btn{min-height:34px;padding:0 9px}.source-hub-filter-actions{display:flex;justify-content:flex-end;gap:7px;padding:10px 12px;border-top:1px solid var(--border)}.source-hub-card-copy{min-width:0;display:flex;flex-direction:column}.source-hub-card-heading{position:relative;z-index:2;justify-content:space-between;gap:8px;margin-bottom:9px}.source-hub-card-controls{min-width:0;justify-content:flex-end;gap:5px}.source-hub-card-select{min-width:18px;min-height:18px;display:grid;place-items:center}.source-hub-card-remove{width:26px;height:26px;min-height:26px;color:var(--muted)}.source-hub-state{gap:4px;padding:4px 7px;color:var(--text-2);background:var(--app-surface-muted);border-radius:999px;font-size:.65rem;font-weight:var(--ui-weight-semibold);white-space:nowrap}.source-hub-state.is-imported{color:var(--app-success);background:color-mix(in srgb,var(--app-success) 10%,var(--app-surface))}.source-hub-state.is-update_available{color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,var(--app-surface))}.source-hub-state.is-unsupported{color:var(--muted)}.source-hub-state.is-current{color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,var(--app-surface))}.source-hub-state.is-read{color:var(--app-success);background:color-mix(in srgb,var(--app-success) 10%,var(--app-surface))}.source-hub-state.is-unread{color:var(--text-2);background:var(--app-surface-muted)}.source-hub-card-copy>strong{display:-webkit-box;overflow:hidden;color:var(--text);font-size:.95rem;line-height:1.35;letter-spacing:-.02em;-webkit-box-orient:vertical;-webkit-line-clamp:2}.source-hub-card-copy>p{margin:6px 0 0;overflow:hidden;color:var(--text-2);font-size:var(--ui-label-size);text-overflow:ellipsis;white-space:nowrap}.source-hub-card-copy>p.source-hub-local-book{color:var(--primary)}.source-hub-card-meta{flex-wrap:wrap;gap:5px 9px;margin-top:8px;color:var(--muted);font-size:.66rem}.source-hub-card-action{width:100%;min-height:32px;justify-content:center;margin-top:auto;padding:0 9px;font-size:var(--ui-label-size)}.source-hub-card-actions{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr);gap:7px;margin-top:auto}.source-hub-card-actions .source-hub-card-action{margin-top:0}.source-hub-release-list{overflow:hidden;background:var(--app-surface);border:1px solid var(--border);border-radius:11px;box-shadow:var(--app-card-shadow)}.source-hub-release-panel{margin-top:10px;overflow:hidden}.source-hub-release-panel .source-hub-items-heading{min-height:44px;margin-bottom:0;padding:0 16px}.source-hub-release-panel .source-hub-release-list{border:0;border-top:1px solid var(--border);border-radius:0;box-shadow:none}.source-hub-release-list-head,.source-hub-release-row{min-width:0;display:grid;grid-template-columns:28px 62px minmax(220px,1fr) 92px 96px 42px;align-items:center;gap:12px}.source-hub-release-list-head{min-height:34px;padding:0 12px;color:var(--muted);background:var(--app-surface-muted);border-bottom:1px solid var(--border);font-size:.65rem}.source-hub-release-row{min-height:56px;padding:0 16px;border-bottom:1px solid var(--border)}.source-hub-release-row:last-child{border-bottom:0}.source-hub-release-row:hover{background:var(--app-surface-hover)}.source-hub-release-row.is-current{background:color-mix(in srgb,var(--primary) 9%,var(--app-surface));box-shadow:inset 3px 0 var(--primary)}.source-hub-release-row.is-current .source-hub-release-index,.source-hub-release-row.is-current .source-hub-release-copy>strong{color:var(--primary)}.source-hub-release-row.is-read .source-hub-release-copy>strong{color:var(--text-2)}.source-hub-release-select{min-width:18px;min-height:18px;display:grid;place-items:center}.source-hub-release-index,.source-hub-release-updated{color:var(--text-2);font-size:var(--ui-label-size);font-variant-numeric:tabular-nums;white-space:nowrap}.source-hub-release-updated{color:var(--muted)}.source-hub-release-copy{min-width:0;display:grid;gap:5px}.source-hub-release-copy>strong{overflow:hidden;color:var(--text);font-size:var(--ui-body-size);text-overflow:ellipsis;white-space:nowrap}.source-hub-release-copy>div{display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--muted);font-size:var(--ui-label-size)}.source-hub-release-action{width:34px;min-width:34px;height:34px;min-height:34px;justify-self:end;color:var(--primary);border:1px solid var(--border-strong)}.source-hub-empty{min-height:230px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:var(--muted);background:color-mix(in srgb,var(--app-surface) 74%,transparent);border:1px dashed var(--border);border-radius:11px;text-align:center}.source-hub-empty strong{color:var(--text-2)}.source-hub-empty span{font-size:var(--ui-label-size)}.source-hub-load-more{min-height:38px;display:flex;align-items:center;justify-content:center;gap:7px;margin:18px auto 0}.source-hub-batch-bar{position:fixed;z-index:var(--layer-floating);right:28px;bottom:22px;left:calc(var(--library-sidebar-width) + 28px);min-height:64px;justify-content:space-between;gap:18px;padding:11px 14px 11px 18px;background:color-mix(in srgb,var(--app-surface-strong) 94%,transparent);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 16px 44px #00000038;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.source-hub-batch-bar>div{min-width:0;flex:1;flex-wrap:wrap;gap:6px 12px}.source-hub-batch-bar strong{color:var(--text)}.source-hub-batch-bar span{color:var(--text-2);font-size:var(--ui-label-size)}.source-hub-batch-bar progress{width:min(280px,100%);height:5px}.library-mobile-shelf.is-static{cursor:default}@media(max-width:1279px){.source-hub-batch-bar{left:18px}}@media(max-width:899px){.source-hub-topbar{grid-template-columns:minmax(180px,.7fr) minmax(260px,1fr)}.source-hub-topbar-actions{display:none}.source-hub-card-grid{grid-template-columns:repeat(auto-fill,minmax(225px,1fr))}}@media(max-width:699px){.source-hub-topbar{display:none}.source-hub-scroll{padding:18px 14px 112px}.source-hub-scroll.is-work-detail{padding:8px 8px 112px}.source-hub-hero{min-height:0;align-items:flex-start;flex-direction:column;padding:17px}.source-hub-series-hero{display:grid;grid-template-columns:92px minmax(0,1fr)}.source-hub-series-cover{width:92px;min-width:92px}.source-hub-series-hero .source-hub-hero-actions{grid-column:1 / -1}.source-hub-hero-actions{width:100%;align-items:stretch;flex-direction:column-reverse}.source-hub-hero-actions>.primary-btn{justify-content:center}.source-hub-hero p{font-size:var(--ui-label-size);line-height:1.55}.source-hub-browse-controls{align-items:stretch;flex-direction:column}.source-hub-browse-tabs{align-self:flex-start}.source-hub-filter-panel{width:100%}.source-hub-filter-grid,.source-hub-subscription-grid{grid-template-columns:minmax(0,1fr)}.source-hub-new-release-actions{grid-template-columns:auto minmax(0,1fr)}.source-hub-new-release-actions>button{grid-column:1 / -1;justify-content:center}.source-hub-folder-grid,.source-hub-card-grid{grid-template-columns:minmax(0,1fr)}.source-hub-card{min-height:188px;grid-template-columns:82px minmax(0,1fr);gap:12px;padding:12px}.source-hub-card-actions{grid-template-columns:minmax(0,1fr)}.source-hub-card-cover{height:122px}.source-hub-release-list-head{display:none}.source-hub-release-row{min-height:62px;grid-template-columns:24px 44px minmax(0,1fr) auto auto;grid-template-areas:"select index copy state action";gap:8px;padding:8px 10px}.source-hub-release-select{grid-area:select}.source-hub-release-index{grid-area:index}.source-hub-release-copy{grid-area:copy}.source-hub-release-copy>div{display:none}.source-hub-release-updated{display:none}.source-hub-release-row>.source-hub-state{grid-area:state;justify-self:end}.source-hub-release-action{grid-area:action;width:34px;min-width:34px}.source-hub-book-detail .detail-hero-actions{display:flex}.source-hub-book-detail .detail-hero-actions>button:not(.primary-btn){display:inline-flex}.source-hub-book-detail .detail-hero-actions>.primary-btn{width:auto;flex:1}.source-hub-batch-bar{right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));left:8px;align-items:stretch;flex-direction:column;gap:10px}.source-hub-batch-bar>.primary-btn,.source-hub-batch-bar>.ghost-btn{justify-content:center}}@media(max-width:419px){.source-hub-connection{display:none}.source-hub-card{grid-template-columns:74px minmax(0,1fr)}.source-hub-card-cover{height:110px}}.panel-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent}.settings-panel{display:grid;align-content:start;gap:16px}.settings-panel section{display:grid;gap:10px}.sync-detail-card{display:grid;gap:5px;padding:12px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.sync-detail-card strong{color:var(--text)}.sync-detail-card span{line-height:1.45}.sync-detail-card.ready{border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.sync-detail-card.pending,.sync-detail-card.syncing,.sync-detail-card.warning{border-color:color-mix(in srgb,var(--warning) 45%,var(--border))}.sync-detail-card.danger{border-color:color-mix(in srgb,var(--danger) 52%,var(--border))}.remote-position-card{display:grid;gap:10px;padding:12px;background:color-mix(in srgb,var(--surface-2) 82%,transparent);border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:var(--radius)}.remote-position-card>div{display:grid;gap:4px;min-width:0}.remote-position-card strong,.remote-position-card span{overflow-wrap:anywhere}.remote-position-card span{color:var(--text-2);line-height:1.45}.server-attach-card{border-color:color-mix(in srgb,var(--text-2) 26%,var(--border))}.server-attach-actions,.server-attach-progress{display:grid;gap:8px}.auth-token-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.auth-token-row.sync-url-row{grid-template-columns:minmax(0,1fr) auto auto}.auth-token-row input{width:100%;min-width:0;min-height:38px;padding:0 12px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);outline:none}.auth-token-row input:focus{border-color:color-mix(in srgb,var(--primary) 50%,var(--border))}.connection-test-message{margin:0;padding:9px 10px;color:var(--text-2);background:color-mix(in srgb,var(--surface-2) 74%,transparent);border:1px solid var(--border);border-radius:var(--radius);overflow-wrap:anywhere}.connection-test-message.ok{border-color:color-mix(in srgb,var(--primary) 42%,var(--border))}.connection-test-message.failed{border-color:color-mix(in srgb,var(--danger) 50%,var(--border))}.sync-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.sync-detail-grid div{min-width:0;padding:10px;background:color-mix(in srgb,var(--surface-2) 72%,transparent);border:1px solid var(--border);border-radius:var(--radius)}.sync-detail-grid dt,.sync-event-row span,.sync-event-row small{color:var(--text-2)}.sync-detail-grid dd{margin:4px 0 0;color:var(--text);font-weight:700}.sync-error{padding:10px;color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));border-radius:var(--radius);overflow-wrap:anywhere}.sync-conflict-card{display:grid;gap:6px;padding:11px;color:var(--text);background:color-mix(in srgb,var(--danger) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--danger) 32%,var(--border));border-radius:var(--radius)}.sync-conflict-card strong,.sync-conflict-card span,.sync-conflict-card small{min-width:0;overflow-wrap:anywhere}.sync-conflict-card span,.sync-conflict-card small{color:var(--text-2);font-size:.86rem;line-height:1.45}.sync-ai-conflict-card{display:grid;gap:9px;padding:11px;color:var(--text);background:color-mix(in srgb,var(--primary) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:var(--radius)}.sync-ai-conflict-heading{display:flex;justify-content:space-between;gap:10px}.sync-ai-conflict-heading span{color:var(--primary-2);font-size:.78rem;font-weight:800}.sync-ai-conflict-card p,.sync-ai-conflict-card small,.sync-ai-merge-row span,.sync-ai-conflict-row span{margin:0;color:var(--text-2);font-size:.82rem;line-height:1.45;overflow-wrap:anywhere}.sync-ai-conflict-list{display:grid;gap:7px}.sync-ai-merge-list{display:grid;gap:8px}.sync-ai-merge-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:start;padding:9px;background:color-mix(in srgb,var(--surface) 78%,transparent);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:var(--radius)}.sync-ai-merge-row>div:first-child{min-width:0;display:grid;gap:4px}.sync-ai-merge-row strong{overflow-wrap:anywhere}.sync-ai-merge-row p{margin:0;color:var(--text-2);font-size:.82rem;line-height:1.45;overflow-wrap:anywhere}.sync-ai-field-choice{display:grid;grid-template-columns:16px minmax(0,1fr);gap:6px;align-items:start;color:var(--text-2);font-size:.82rem;line-height:1.45}.sync-ai-field-choice input{width:14px;height:14px;margin:3px 0 0;accent-color:var(--primary)}.sync-ai-field-choice span{overflow-wrap:anywhere}.sync-ai-conflict-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;padding:8px;background:color-mix(in srgb,var(--surface-2) 82%,transparent);border:1px solid var(--border);border-radius:var(--radius)}.sync-ai-conflict-row>div:first-child{min-width:0;display:grid;gap:3px}.sync-ai-conflict-row strong{font-size:.84rem;overflow-wrap:anywhere}.sync-event-list{display:grid;gap:8px}.sync-event-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.sync-event-row.failed{border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.sync-event-row.sending{border-color:color-mix(in srgb,var(--warning) 42%,var(--border))}.sync-event-row strong,.sync-event-row span,.sync-event-row small{display:block}.sync-event-row span,.sync-event-row small{margin-top:3px;font-size:.82rem}.sync-event-row small{overflow-wrap:anywhere}.sync-event-row em{color:var(--text-2);font-size:.78rem;font-style:normal;font-weight:700}.sync-event-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.sync-event-actions .mini-icon-btn{width:28px;height:28px}.sync-event-overflow{margin:0;padding:8px 10px;color:var(--text-2);background:color-mix(in srgb,var(--surface-2) 62%,transparent);border:1px dashed var(--border);border-radius:var(--radius);font-size:.84rem}.setting-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.setting-line span{color:var(--text-2);font-variant-numeric:tabular-nums}.sync-panel{gap:0}.sync-panel>header{position:sticky;top:-16px;z-index:1;margin:-16px -16px 0;padding:13px 12px 13px 16px;background:var(--app-surface-strong);border-bottom:1px solid var(--border)}.sync-panel>section{padding-block:16px;border-bottom:1px solid var(--border)}.sync-panel>section:last-child{border-bottom:0}.sync-server-settings{border-bottom:1px solid var(--border)}.sync-server-settings>summary{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;color:var(--text-2);cursor:pointer;list-style:none}.sync-server-settings>summary::-webkit-details-marker{display:none}.sync-server-settings>summary>span{display:inline-flex;align-items:center;gap:8px}.sync-server-settings>summary strong{color:var(--text);font-size:.86rem}.sync-server-settings>summary small{font-size:.72rem;font-weight:700}.sync-server-settings>summary:after{content:"+";color:var(--text-2);font-size:1rem}.sync-server-settings[open]>summary:after{content:"−"}.sync-server-settings-body{display:grid;gap:9px;padding:0 0 16px}.sync-server-field-label{color:var(--text-2);font-size:.74rem;font-weight:700}.sync-detail-card{padding:8px 0 8px 12px;background:transparent;border:0;border-left:3px solid var(--primary);border-radius:0}.sync-detail-card.ready{border-left-color:var(--primary)}.sync-detail-card.pending,.sync-detail-card.syncing,.sync-detail-card.warning{border-left-color:var(--warning)}.sync-detail-card.danger{border-left-color:var(--danger)}.sync-detail-grid{gap:0;border-block:1px solid var(--border)}.sync-detail-grid div{padding:10px 8px;background:transparent;border:0;border-right:1px solid var(--border);border-radius:0}.sync-detail-grid div:nth-child(2n){border-right:0}.sync-detail-grid div:nth-child(n+3){border-top:1px solid var(--border)}.sync-error,.sync-conflict-card,.sync-ai-conflict-card{background:transparent;border-width:0 0 0 3px;border-radius:0}.sync-error,.sync-conflict-card{border-left-color:var(--danger)}.sync-ai-conflict-card{border-left-color:var(--warning)}.sync-ai-merge-row,.sync-ai-conflict-row,.sync-event-row{padding-inline:0;background:transparent;border-width:0 0 1px;border-radius:0}.sync-event-row.failed{border-color:color-mix(in srgb,var(--danger) 44%,var(--border));box-shadow:inset 3px 0 color-mix(in srgb,var(--danger) 74%,transparent);padding-left:10px}.sync-event-row.sending{border-color:color-mix(in srgb,var(--warning) 44%,var(--border));box-shadow:inset 3px 0 color-mix(in srgb,var(--warning) 74%,transparent);padding-left:10px}.sync-event-overflow{background:transparent;border-width:1px 0 0;border-style:solid;border-radius:0}.cloud-vault-section{display:grid;gap:13px}.cloud-vault-heading,.cloud-vault-heading>div,.cloud-vault-passphrase>span,.cloud-vault-unlocked,.cloud-vault-provider-card,.cloud-vault-sync-row{display:flex;align-items:center}.cloud-vault-heading{justify-content:space-between;gap:12px}.cloud-vault-heading>div{min-width:0;gap:9px}.cloud-vault-heading-icon{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 38%,var(--border))}.cloud-vault-heading h3,.cloud-vault-heading p,.cloud-vault-privacy-note p,.cloud-vault-waiting span,.cloud-vault-waiting small{margin:0}.cloud-vault-heading p{margin-top:2px;color:var(--text-2);font-size:.78rem}.cloud-vault-state{flex:0 0 auto;padding:3px 7px;color:var(--text-2);border:1px solid var(--border);font-size:.72rem;font-weight:700}.cloud-vault-state.connected{color:var(--primary-2);border-color:color-mix(in srgb,var(--primary) 42%,var(--border))}.cloud-vault-privacy-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:10px 0;border-block:1px solid var(--border)}.cloud-vault-privacy-note>svg{margin-top:2px;color:var(--primary)}.cloud-vault-privacy-note p,.cloud-vault-passphrase,.cloud-vault-provider-card>div,.cloud-vault-sync-row>div,.cloud-vault-waiting{display:grid;gap:4px}.cloud-vault-privacy-note span,.cloud-vault-passphrase small,.cloud-vault-provider-options small,.cloud-vault-sync-row span,.cloud-vault-sync-row small,.cloud-vault-waiting span,.cloud-vault-waiting small{color:var(--text-2);font-size:.78rem;line-height:1.45}.cloud-vault-passphrase{gap:7px}.cloud-vault-passphrase>span{gap:6px;font-size:.84rem;font-weight:700}.cloud-vault-passphrase input{width:100%;min-height:40px;padding:0 11px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);outline:none}.cloud-vault-passphrase input:focus-visible{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 20%,transparent)}.cloud-vault-unlocked{min-height:40px;gap:7px;padding:0 11px;color:var(--primary-2);background:color-mix(in srgb,var(--primary) 8%,transparent);border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));font-size:.82rem;font-weight:700}.cloud-vault-provider-options{display:grid;gap:8px}.cloud-vault-dropbox-connect,.cloud-vault-provider-more .ghost-btn{width:100%;min-height:42px}.cloud-vault-provider-more{border-top:1px solid var(--border)}.cloud-vault-provider-more summary{padding:9px 0;color:var(--text-2);cursor:pointer;font-size:.78rem;font-weight:700;list-style-position:inside}.cloud-vault-provider-more .ghost-btn{margin-top:2px;justify-content:flex-start}.cloud-vault-provider-card{justify-content:space-between;gap:10px;padding:10px 0;border-block:1px solid var(--border)}.cloud-vault-provider-card>div{min-width:0}.cloud-vault-provider-card span{color:var(--text-2);font-size:.72rem}.cloud-vault-provider-card strong{overflow-wrap:anywhere}.cloud-vault-preferences{display:flex;flex-wrap:wrap;gap:8px 18px}.cloud-vault-preferences label{display:inline-flex;align-items:center;gap:7px;color:var(--text-2);font-size:.78rem;font-weight:700}.cloud-vault-preferences input{width:15px;height:15px;margin:0;accent-color:var(--primary)}.cloud-vault-scope-details{border-block:1px solid var(--border)}.cloud-vault-scope-details>summary{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text);cursor:pointer;font-size:.82rem;font-weight:700;list-style:none}.cloud-vault-scope-details>summary::-webkit-details-marker{display:none}.cloud-vault-scope-details>summary:after{content:"+";margin-left:auto;color:var(--text-2);font-size:1rem;font-weight:400}.cloud-vault-scope-details[open]>summary:after{content:"−"}.cloud-vault-scope-details>summary small{color:var(--text-2);font-size:.72rem;font-weight:600}.cloud-vault-scope-details .cloud-vault-scope{margin-bottom:10px}.cloud-vault-scope{display:grid;gap:0;margin:0;padding:0;border:1px solid var(--border)}.cloud-vault-scope legend{margin-left:8px;padding:0 5px;color:var(--text-2);font-size:.76rem;font-weight:700}.cloud-vault-scope>label,.cloud-vault-scope-disabled{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:47px;padding:7px 10px;border-bottom:1px solid var(--border)}.cloud-vault-scope>label:last-of-type{border-bottom:1px solid var(--border)}.cloud-vault-scope input{width:15px;height:15px;margin:0;accent-color:var(--primary)}.cloud-vault-scope label>span,.cloud-vault-scope-disabled p{display:grid;gap:2px;margin:0}.cloud-vault-scope strong{font-size:.82rem}.cloud-vault-scope small{color:var(--text-2);font-size:.72rem}.cloud-vault-scope-disabled{color:var(--text-2);border-bottom:0;opacity:.68}.cloud-vault-scope-disabled em{font-size:.7rem;font-style:normal;font-weight:700}.cloud-vault-notice,.cloud-vault-error{margin:0;padding:9px 10px;color:var(--text-2);border-left:3px solid var(--warning);font-size:.8rem;line-height:1.45}.cloud-vault-error{color:var(--danger);border-left-color:var(--danger)}.cloud-vault-waiting{padding:9px 0 9px 11px;border-left:3px solid var(--warning)}.cloud-vault-sync-row{justify-content:space-between;gap:12px}.cloud-vault-sync-row .primary-btn{flex:0 0 auto}.cloud-vault-sync-row>div{min-width:0;text-align:right}@media(max-width:620px){.cloud-vault-sync-row{align-items:stretch;flex-direction:column}.cloud-vault-sync-row .primary-btn{width:100%}.cloud-vault-sync-row>div{text-align:left}}.toast-region{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:var(--layer-toast);display:grid;gap:8px;max-width:calc(100vw - 36px);max-height:calc(100dvh - 36px);overflow:hidden;pointer-events:none}.toast-region[data-reader-active=true]{bottom:calc(96px + env(safe-area-inset-bottom,0px))}.toast-region[data-addon-open=true]{right:calc(var(--reader-panel-width) + 20px)}.toast{display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(360px,calc(100vw - 36px));max-width:100%;padding:11px 13px;overflow-wrap:anywhere;pointer-events:auto;color:var(--text);background:var(--app-surface-strong);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:0;box-shadow:0 8px 24px #14161329}.toast>span{min-width:0}.toast>button{flex:none;border:0;border-left:1px solid color-mix(in srgb,currentColor 22%,transparent);padding:2px 0 2px 12px;color:inherit;background:transparent;font:inherit;font-weight:700;cursor:pointer}.toast.success{border-left-color:var(--primary)}.toast.warning{border-left-color:var(--warning)}.toast.danger{border-left-color:var(--danger)}.floating-import{position:fixed;right:22px;bottom:22px;z-index:var(--layer-floating);width:54px;height:54px;display:grid;place-items:center;color:#fff;background:var(--primary-2);border-radius:50%;box-shadow:var(--shadow);cursor:pointer}.reader-screen .floating-import{display:none}@media(max-width:980px){body{overflow:auto}.app-header,.sub-header,.section-head{align-items:stretch;flex-direction:column}.chapter-layout{grid-template-columns:1fr}.reader-summary{position:static}.search-box,.search-box.compact{width:100%;min-width:0}.reader-screen.addon-open .reader-scroll,.reader-scroll{--reader-content-inset-top: max(var(--reading-margin-y), env(safe-area-inset-top, 0px));--reader-content-inset-bottom: max(var(--reading-margin-y), env(safe-area-inset-bottom, 0px));height:100dvh;padding:var(--reader-content-inset-top) var(--reader-layout-margin-x) var(--reader-content-inset-bottom)}.reader-screen{--reader-layout-margin-x: clamp(18px, var(--reading-margin-x), 32px)}.reader-screen.immersive .reader-scroll,.reader-screen.immersive.addon-open .reader-scroll{--reader-content-inset-top: max(var(--reading-margin-y), env(safe-area-inset-top, 0px));--reader-content-inset-bottom: max(var(--reading-margin-y), env(safe-area-inset-bottom, 0px));padding:var(--reader-content-inset-top) var(--reader-layout-margin-x) var(--reader-content-inset-bottom)}.reader-topbar,.reader-bottombar{left:0;right:0}.reader-topbar{gap:8px;min-height:calc(58px + env(safe-area-inset-top,0px));padding-top:calc(8px + env(safe-area-inset-top,0px))}.reader-topbar .reader-title{min-width:0;display:grid;align-items:center;gap:1px}.reader-topbar .reader-title strong{font-size:.8rem;font-weight:600}.reader-topbar .reader-title span{font-size:.65rem}.reader-topbar .reader-actions{min-width:max-content;flex:0 0 auto;justify-content:flex-end;gap:6px;overflow:hidden}.reader-topbar .icon-btn{width:34px;height:34px;flex:0 0 auto}.reader-topbar .reader-topbar-secondary{display:none}.reader-screen.addon-open .reader-topbar,.reader-screen.addon-open .reader-bottombar{right:0}.reader-screen.addon-open .selection-action-bar,.selection-action-bar{left:10px;right:10px;bottom:calc(134px + env(safe-area-inset-bottom,0px));width:auto;max-width:none;transform:none}.toast-region[data-addon-open=true]{right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px))}.toast-region[data-reader-active=true]{bottom:calc(174px + env(safe-area-inset-bottom,0px))}.toast-region[data-reader-active=true][data-addon-open=true]{bottom:calc(18px + env(safe-area-inset-bottom,0px))}.reader-actions .search-box{display:none}.reader-mobile-search-toggle,.reader-overflow{display:inline-flex}.reader-search-results-layer{top:calc(58px + env(safe-area-inset-top,0px));left:8px;right:8px;width:auto;transform:none}.reader-screen.mobile-search-open .reader-search-results-layer{top:112px}.search-result-strip{max-height:min(42dvh,330px)}.search-result-current strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.reader-desktop-action,.reader-mode-switch .reader-notes-action,.reader-quick-controls{display:none}.reader-position-controls{order:2}.reader-bottombar{min-height:0;display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:0 0 env(safe-area-inset-bottom,0px)}.reader-position-bar{min-height:52px;gap:7px;padding:4px 8px;border-bottom:1px solid var(--border)}.reader-tool-row{min-height:54px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:4px 7px}.reader-mobile-tool{width:100%;min-width:0;min-height:44px;display:inline-flex;padding:0;border-color:transparent}.reader-tool-row .reader-overflow-toggle{width:100%;min-width:0;min-height:44px;padding:0;border-color:transparent}.reader-bottombar .reader-mode-switch{display:none}.reader-bottombar .reader-overflow{min-width:0;display:block}.tts-compact-bar,.reader-screen.addon-open~.tts-compact-bar{left:8px;right:8px;bottom:calc(114px + env(safe-area-inset-bottom,0px));width:auto;min-height:52px;margin-left:0;padding:6px 8px;transform:none}.tts-compact-identity strong,.tts-compact-identity small{max-width:150px}.tts-compact-value,.tts-compact-timer span,.tts-compact-controls>button[aria-label="청취 설정 열기"]{display:none}}@media(max-width:699px){.addon-panel{width:100%;max-width:none;border-left:0;box-shadow:none}.addon-panel-content{height:calc(100dvh - 101px);padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}}@media(max-width:620px){.settings-panel{width:100%;max-width:none;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.reader-position-controls,.reader-flow-pill,.paragraph-progress-label{display:none}.reader-bottombar input[type=range]{min-width:54px;min-height:44px;flex:1 1 auto;margin:0}.reader-bottombar .progress-label{width:38px;display:block;flex:0 0 38px;font-size:.72rem}.reader-bottombar .reader-chapter-step{width:44px;height:44px;flex:0 0 44px;padding:0;border-color:transparent}.reader-bottombar .reader-chapter-step span{display:none}.reader-overflow-menu{right:0;bottom:48px;width:max-content;min-width:190px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 124px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain}.reader-overflow-menu button{min-height:44px}.auth-token-row,.auth-token-row.sync-url-row{grid-template-columns:1fr}}@media(max-height:620px)and (min-width:700px){.reader-topbar,.reader-bottombar{min-height:50px;padding-block:5px}.reader-scroll{--reader-content-inset-top: max(var(--reading-margin-y), env(safe-area-inset-top, 0px));--reader-content-inset-bottom: max(var(--reading-margin-y), env(safe-area-inset-bottom, 0px));padding-top:var(--reader-content-inset-top);padding-bottom:var(--reader-content-inset-bottom)}.panel-header{min-height:50px;padding-block:5px}.panel-tabs button{min-height:38px}.addon-panel-content{height:calc(100dvh - 89px);padding-block:12px}}.self-host-auth-screen{min-height:100dvh;display:grid;place-items:center;padding:clamp(20px,5vw,64px);color:var(--text);background:radial-gradient(circle at 20% 10%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 35%),var(--bg)}.self-host-auth-card{width:min(100%,460px);padding:clamp(24px,5vw,38px);border:1px solid var(--border);border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 24px 80px #00000047}.self-host-auth-card>header{display:flex;align-items:center;gap:14px;margin-bottom:24px}.self-host-auth-card header p,.self-host-auth-card header h1,.self-host-auth-description,.self-host-auth-loading p,.self-host-auth-error p,.self-host-auth-form-error{margin:0}.self-host-auth-card header p{color:var(--muted);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.self-host-auth-card header h1{margin-top:3px;font-size:clamp(1.45rem,5vw,1.9rem)}.self-host-auth-mark{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;color:#fff;background:var(--accent)}.self-host-auth-card form{display:grid;gap:15px}.self-host-auth-description{color:var(--text-2);line-height:1.65}.self-host-auth-card label{display:grid;gap:7px;font-size:.88rem;font-weight:700}.self-host-auth-card label span{display:flex;align-items:baseline;gap:6px}.self-host-auth-card label small{color:var(--muted);font-size:.76rem;font-weight:500;line-height:1.45}.self-host-auth-card input{width:100%;min-height:46px;padding:0 13px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--bg)}.self-host-auth-card input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.self-host-auth-submit{min-height:48px;justify-content:center;margin-top:4px}.self-host-auth-loading,.self-host-auth-error{min-height:170px;display:grid;place-items:center;align-content:center;gap:14px;text-align:center;color:var(--text-2)}.self-host-auth-error svg,.self-host-auth-form-error{color:var(--danger)}.self-host-auth-form-error{padding:10px 12px;border-radius:9px;font-size:.86rem;background:color-mix(in srgb,var(--danger) 10%,transparent)}@media(max-width:520px){.self-host-auth-screen{align-items:stretch;padding:0}.self-host-auth-card{width:100%;min-height:100dvh;padding:max(28px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none}}.desktop-window-shell{--desktop-titlebar-height: 34px;position:relative;height:100dvh;min-height:0;overflow:hidden;color:var(--app-text);background:var(--app-canvas)}.desktop-window-frame{position:fixed;inset:0 0 auto;z-index:140;height:var(--desktop-titlebar-height);display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none;color:var(--app-text-muted);background:var(--app-surface-strong);border-bottom:1px solid var(--app-line)}.desktop-window-title{padding-inline-start:13px;font-size:12px;font-weight:650;letter-spacing:-.01em}.desktop-window-controls{align-self:stretch;display:flex}.desktop-window-controls button{width:46px;height:100%;display:grid;place-items:center;padding:0;color:var(--app-text-muted);background:transparent;cursor:default}.desktop-window-controls button:hover{color:var(--app-text-strong);background:var(--app-surface-hover)}.desktop-window-controls .desktop-window-close:hover{color:#fff;background:#c42b1c}.desktop-window-content{position:absolute;inset:var(--desktop-titlebar-height) 0 0;min-height:0;overflow:hidden}.desktop-window-content>.app-shell{height:100%;min-height:0}.desktop-window-content :is(.library-screen,.chapters-screen,.reader-screen,.reader-scroll,.reader-viewport-stack){height:100%}.desktop-window-content .self-host-auth-screen{min-height:100%}.desktop-window-content .top-progress,.desktop-window-content .reader-topbar{top:var(--desktop-titlebar-height)}.desktop-window-content :is(.addon-panel,.settings-panel){top:var(--desktop-titlebar-height);height:calc(100dvh - var(--desktop-titlebar-height))}.desktop-window-content :is(.modal-backdrop,.settings-layer,.modal-drawer-layer){top:var(--desktop-titlebar-height)}.desktop-window-content .modal-drawer{min-height:100%}.desktop-window-content .fixed-doc-screen{top:var(--desktop-titlebar-height)}
