@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:400;src:url(./pt-serif-cyrillic-ext-400-normal-DU92duxl.woff2) format("woff2"),url(./pt-serif-cyrillic-ext-400-normal-DWZRXqV9.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:400;src:url(./pt-serif-cyrillic-400-normal-B-euljER.woff2) format("woff2"),url(./pt-serif-cyrillic-400-normal-D8jOFnDU.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:400;src:url(./pt-serif-latin-ext-400-normal-B7STXmTm.woff2) format("woff2"),url(./pt-serif-latin-ext-400-normal-tfSDtiqN.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:400;src:url(./pt-serif-latin-400-normal-Cx0mQj7e.woff2) format("woff2"),url(./pt-serif-latin-400-normal-DIu_lRW0.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"PT Serif";font-style:italic;font-display:swap;font-weight:400;src:url(./pt-serif-cyrillic-ext-400-italic-3ud5gcxD.woff2) format("woff2"),url(./pt-serif-cyrillic-ext-400-italic-BBGP3z3x.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"PT Serif";font-style:italic;font-display:swap;font-weight:400;src:url(./pt-serif-cyrillic-400-italic-Bicg0I0x.woff2) format("woff2"),url(./pt-serif-cyrillic-400-italic-CGr2MaNX.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"PT Serif";font-style:italic;font-display:swap;font-weight:400;src:url(./pt-serif-latin-ext-400-italic-CBoOQ8LN.woff2) format("woff2"),url(./pt-serif-latin-ext-400-italic-C59QcYwb.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"PT Serif";font-style:italic;font-display:swap;font-weight:400;src:url(./pt-serif-latin-400-italic-zg5EJ2cW.woff2) format("woff2"),url(./pt-serif-latin-400-italic-Hdd9Jed5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:700;src:url(./pt-serif-cyrillic-ext-700-normal-CpXZPNZI.woff2) format("woff2"),url(./pt-serif-cyrillic-ext-700-normal-C7FyUQsB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:700;src:url(./pt-serif-cyrillic-700-normal-DvVvs_4R.woff2) format("woff2"),url(./pt-serif-cyrillic-700-normal-BeN6CUoB.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:700;src:url(./pt-serif-latin-ext-700-normal-B7jTzfC-.woff2) format("woff2"),url(./pt-serif-latin-ext-700-normal-BQOBW4N0.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:700;src:url(./pt-serif-latin-700-normal-Bsuo9jes.woff2) format("woff2"),url(./pt-serif-latin-700-normal-BnJLcJ8K.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-cyrillic-ext-400-normal-DrEt_GuY.woff2) format("woff2"),url(./pt-sans-cyrillic-ext-400-normal-BWlWxBBJ.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-cyrillic-400-normal-BgFH0IXl.woff2) format("woff2"),url(./pt-sans-cyrillic-400-normal-DR9of8nb.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-latin-ext-400-normal-DA27ETQX.woff2) format("woff2"),url(./pt-sans-latin-ext-400-normal-Dgusqyff.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./pt-sans-latin-400-normal-Cwy9XeGQ.woff2) format("woff2"),url(./pt-sans-latin-400-normal-v0jdzXSm.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-cyrillic-ext-700-normal-XWuytqPM.woff2) format("woff2"),url(./pt-sans-cyrillic-ext-700-normal-DtKE9zI9.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-cyrillic-700-normal-TNhnPAH_.woff2) format("woff2"),url(./pt-sans-cyrillic-700-normal-DzVkanQm.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-latin-ext-700-normal-B72N01jW.woff2) format("woff2"),url(./pt-sans-latin-ext-700-normal-B4THBQu1.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./pt-sans-latin-700-normal-DmHhLLdt.woff2) format("woff2"),url(./pt-sans-latin-700-normal-CyjbL83V.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--book-frame: #3a2a1d;--page-bg: #f5efe0;--sidebar-bg: #efe6d3;--sidebar-border: #dccdb0;--accent: #a8874e;--ink: #4a3a2a;--ink-heading: #5a3f20;--ink-nav: #6b573c;--rule: #e3d6bd;--muted: #9c855f;--danger: #9e3b2e;--page-edge: linear-gradient( var(--edge-dir, to left), #e9dfc8 0 1px, #d3c2a0 1px 2px, #ece2cd 2px 3px, #d3c2a0 3px 4px, #ece2cd 4px 5px, #d3c2a0 5px 6px, #e4d9bf 6px 8px );--font-serif: "PT Serif", "Lora", "Noto Serif", Georgia, serif;--font-sans: "PT Sans", system-ui, sans-serif}html,body,#root{height:100%;margin:0}body{font-family:var(--font-serif);color:var(--ink);background:var(--book-frame)}.book-frame{background:var(--book-frame);border-radius:12px;padding:20px;min-height:100%;box-sizing:border-box}.book-grid{display:grid;grid-template-columns:190px 1fr;border-radius:6px;position:relative;min-height:calc(100dvh - 40px);color:var(--ink)}.book-grid.sidebar-collapsed{grid-template-columns:44px 1fr}.sidebar{background:var(--sidebar-bg);border-radius:6px 0 0 6px;border-right:1px solid var(--sidebar-border);padding:16px 0;position:relative}.sidebar:before{content:"";position:absolute;top:3px;left:-8px;bottom:3px;width:8px;--edge-dir: to left;background:var(--page-edge);border-radius:4px 0 0 4px}.sidebar-collapsed .sidebar{display:none}.sidebar-expand{align-self:start;justify-self:start;margin:14px 0 0 5px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:var(--sidebar-bg);color:var(--accent);border:1px solid var(--sidebar-border);border-radius:5px;cursor:pointer}.sidebar-expand:hover{background:#e2d3b3}.sidebar-header{display:flex;align-items:center;gap:8px;padding:0 12px 14px;border-bottom:1px solid var(--sidebar-border)}.sidebar-title{font-size:16px;font-weight:500;color:var(--ink-heading);flex:1}.sidebar-icon{color:var(--accent)}.sidebar-collapse{color:var(--muted);cursor:pointer}.sidebar-section{padding:14px 16px 6px;font-size:11px;letter-spacing:.08em;color:var(--muted);font-family:var(--font-sans)}.sidebar-nav{font-family:var(--font-sans);font-size:14px}.nav-item{display:flex;align-items:center;gap:9px;padding:8px 16px;color:var(--ink-nav);cursor:pointer;border-left:3px solid transparent}.nav-item.active{background:#e2d3b3;color:var(--ink-heading);border-left-color:var(--accent)}.nav-badge{margin-left:auto;background:var(--accent);color:#fbf6ea;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:500}.page{background:var(--page-bg);position:relative;margin-right:8px;border-radius:0 6px 6px 0;min-width:0;display:flex;flex-direction:column}.page:before{content:"";position:absolute;top:3px;right:-8px;bottom:3px;width:8px;--edge-dir: to right;background:var(--page-edge);border-radius:0 4px 4px 0}.sidebar-collapsed .page:after,.focus-mode .page:after{content:"";position:absolute;top:3px;left:-8px;bottom:3px;width:8px;--edge-dir: to left;background:var(--page-edge);border-radius:4px 0 0 4px}.page--editor{height:calc(100dvh - 40px);overflow-x:visible;overflow-y:clip}.toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--rule);font-family:var(--font-sans);color:#7a6446}.toolbar-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:inherit;cursor:pointer;border-radius:4px;padding:0}.toolbar-btn:hover{background:#eaddc2}.toolbar-btn.active{color:var(--accent)}.toolbar-btn.italic{font-style:italic;font-family:serif;font-size:16px}.toolbar-btn.bold{font-weight:600}.toolbar-btn.strike{text-decoration:line-through}.toolbar-btn.text{width:auto;padding:0 7px;font-size:13px}.toolbar-sep{width:1px;height:20px;background:var(--rule);margin:0 3px}.chapter-head{display:flex;align-items:center;gap:10px;padding:20px 34px 4px}.chapter-title-input{border:none;background:transparent;font-family:var(--font-serif);font-size:22px;font-weight:500;color:var(--ink-heading);flex:1;padding:0}.chapter-title-input:focus{outline:none}.chapter-switcher{font-family:var(--font-sans);font-size:13px;color:var(--ink-nav)}.editor-scroll-host{display:flex;flex-direction:column;flex:1;min-height:0}.editor-surface{padding:8px 34px 22px;line-height:1.85;color:var(--ink);flex:1;overflow-y:auto;min-height:0;font-family:var(--editor-font-family, var(--font-serif));font-size:var(--editor-font-size, 16.5px)}.editor-surface:focus{outline:none}.editor-empty{padding:34px;line-height:1.7;font-family:var(--font-sans);color:var(--muted)}.editor-empty p{margin:0 0 8px}.editor-surface p{margin:0 0 12px}.editor-surface.indent-on p{text-indent:2em}.editor-surface p[style*="text-align: center"]{text-indent:0}.scene-divider{text-align:center;color:var(--accent);letter-spacing:8px;margin:20px 0;font-weight:500;text-indent:0}.wand-old{color:var(--muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--muted) 70%,transparent)}.wand-new{color:var(--accent);font-weight:500;background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:3px;padding:0 1px}.wand-empty-note{margin-left:6px;font-family:var(--font-sans);font-size:12.5px;color:var(--muted);align-self:center}:root{--touch-target: 44px}.action-bar{display:flex;align-items:center;gap:12px;padding:9px 34px;border-top:1px solid var(--rule);background:color-mix(in srgb,var(--accent) 8%,var(--page-bg));font-family:var(--font-sans);font-size:13px;color:var(--ink-nav)}.action-bar-count{color:var(--ink-heading);font-weight:500}.action-bar-spacer{flex:1}.action-bar-btn{font-family:var(--font-sans);font-size:13px;padding:6px 14px;border-radius:5px;cursor:pointer}.action-bar-btn.primary{background:var(--accent);color:#fbf6ea;border:none}.action-bar-btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}.action-bar-btn.ghost:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.action-bar-btn.ghost.active{background:color-mix(in srgb,var(--accent) 20%,transparent)}.find-match{background:color-mix(in srgb,var(--accent) 22%,transparent);border-radius:2px}.find-match-active{background:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 0 1px var(--accent)}.find-input{font-family:var(--font-sans);font-size:13px;padding:4px 8px;border:1px solid var(--rule);border-radius:4px;background:var(--page-bg);color:var(--ink);min-width:140px}.action-bar-count--muted{color:var(--muted)}.footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 34px 9px 16px;border-top:1px solid var(--rule);font-family:var(--font-sans);font-size:12.5px;color:var(--muted)}.footer-left{display:flex;align-items:center;gap:14px}.footer-item{display:flex;align-items:center;gap:5px}.save-btn{display:flex;align-items:center;gap:6px;background:var(--accent);color:#fbf6ea;border:none;border-radius:5px;padding:7px 16px;font-family:var(--font-sans);font-size:13.5px;font-weight:500;cursor:pointer;margin-left:auto}.retry-btn{margin-left:6px;padding:1px 8px;font:inherit;font-size:12px;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:4px;cursor:pointer}.retry-btn:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.save-warning{margin-left:6px;color:var(--muted);cursor:help}.focus-mode .sidebar,.focus-mode .toolbar,.focus-mode .footer{display:none}.focus-mode .book-grid{grid-template-columns:1fr}.focus-exit{position:fixed;top:26px;right:30px;z-index:10;background:var(--accent);color:#fbf6ea;border:none;border-radius:5px;padding:6px 10px;font-family:var(--font-sans);font-size:12px;cursor:pointer}.history-view{display:flex;flex-direction:column;height:100%;padding:24px 28px;color:var(--ink)}.history-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.history-title{display:inline-flex;align-items:center;gap:6px;font-weight:600}.history-body{display:grid;grid-template-columns:300px 1fr;gap:20px;flex:1;min-height:0}.history-list{list-style:none;margin:0;padding:0;overflow-y:auto;border-right:1px solid color-mix(in srgb,var(--ink) 12%,transparent)}.history-list li{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;cursor:pointer}.history-list li.active{background:color-mix(in srgb,var(--accent) 14%,transparent)}.history-words{margin-left:auto;opacity:.7;font-size:12px}.history-empty,.history-list li.history-empty{cursor:default;opacity:.6}.history-preview{overflow-y:auto}.linkish{display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:12px;color:var(--accent);background:transparent;border:none;cursor:pointer}.linkish:disabled{opacity:.5;cursor:default}.modal-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#00000059;z-index:100}.modal{max-width:480px;width:calc(100% - 64px);padding:22px 24px;background:var(--page-bg);color:var(--ink);border-radius:10px;box-shadow:0 12px 40px #00000059}.modal-title{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:18px}.recovery-list{list-style:none;margin:12px 0;padding:0}.recovery-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0}.recovery-lost{opacity:.6;font-size:12px}.recovery-failed{color:#a13b2d;font-size:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.modal-danger{background:var(--danger);color:#fbf6ea;border:none;border-radius:5px;padding:7px 16px;font-family:var(--font-sans);font-size:13.5px;font-weight:500;cursor:pointer}.modal-danger:hover{background:color-mix(in srgb,var(--danger) 85%,black)}.import-modes{display:flex;flex-direction:column;gap:8px;margin:4px 0 12px}.import-mode{display:flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:13.5px;color:var(--ink);cursor:pointer}.import-mode input{width:auto}.import-preview{font-family:var(--font-sans);font-size:13px;color:var(--ink)}.import-preview-count{font-weight:600;margin-bottom:4px}.import-preview-list{margin:0;padding-left:18px;max-height:180px;overflow-y:auto;color:var(--muted)}.import-warn{margin-top:10px;font-family:var(--font-sans);font-size:12.5px;color:var(--muted)}.import-warn--error{color:var(--danger)}.export-menu{position:relative;display:inline-flex}.export-menu-trigger{display:inline-flex;align-items:center;justify-content:center;padding:0;color:var(--ink);background:transparent;border:none;cursor:pointer}.export-menu-trigger:hover,.export-menu-trigger:focus-visible{color:var(--accent)}.export-menu-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:80;min-width:180px;padding:6px;display:flex;flex-direction:column;font-family:var(--font-sans);background:var(--page-bg);color:var(--ink);border:1px solid var(--rule);border-radius:10px;box-shadow:0 12px 40px #00000059}.export-menu-popover--compact{min-width:120px}.export-menu-caption{padding:6px 8px 2px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.export-menu-item{display:block;width:100%;padding:6px 8px;font:inherit;font-size:13px;text-align:left;color:var(--ink);background:transparent;border:none;border-radius:6px;cursor:pointer}.export-menu-item:hover:not(:disabled),.export-menu-item:focus-visible{color:var(--accent);outline:none}.export-menu-item:disabled{opacity:.5;cursor:default}.export-menu-error{padding:6px 8px 2px;font-size:12px;color:var(--danger)}.export-menu-note{padding:6px 8px 2px;font-size:12px;color:var(--muted)}.update-notice{position:fixed;right:26px;bottom:22px;z-index:90;display:flex;align-items:center;gap:12px;max-width:min(560px,calc(100vw - 52px));padding:10px 14px;background:var(--page-bg);color:var(--ink);border:1px solid var(--sidebar-border);border-radius:8px;box-shadow:0 8px 24px #00000047;font-family:var(--font-sans);font-size:13px}.update-notice-icon{color:var(--accent);flex-shrink:0}.update-notice-text{flex:1;min-width:0;color:var(--ink-nav)}.update-notice-btn{font-family:var(--font-sans);font-size:13px;padding:6px 12px;border-radius:5px;cursor:pointer;white-space:nowrap}.update-notice-btn.primary{background:var(--accent);color:#fbf6ea;border:none}.update-notice-btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}.update-notice-btn.ghost:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.update-notice-error{font-size:12px;color:var(--danger)}.footnote{position:relative;display:inline;text-indent:0}.footnote-marker{color:var(--accent);cursor:pointer;font-size:.8em;vertical-align:super;line-height:0;-webkit-user-select:none;user-select:none}.footnote-popover{position:absolute;left:0;top:1.4em;z-index:20;width:18rem;padding:.5rem .7rem;background:var(--page-bg);color:var(--ink);border:1px solid var(--rule);border-radius:6px;box-shadow:0 6px 18px #0000002e;font-size:.9rem;line-height:1.45;white-space:normal}.footnote-empty{color:var(--muted);font-style:italic}.footnote-editor{position:absolute;left:0;top:1.4em;z-index:21;display:flex;align-items:flex-start;gap:.3rem;padding:.4rem;background:var(--page-bg);border:1px solid var(--accent);border-radius:6px;box-shadow:0 6px 18px #0000002e}.footnote-input{width:18rem;min-height:3.2rem;resize:vertical;border:1px solid var(--rule);border-radius:4px;background:var(--page-bg);color:var(--ink);font-family:var(--font-serif);font-size:.9rem;padding:.3rem .4rem}.footnote-close{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:0 .2rem}.footnote-close:hover{color:var(--ink)}.library-view{display:flex;flex-direction:column;height:100%;padding:24px 28px;color:var(--ink)}.library-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}.library-title{display:inline-flex;align-items:center;gap:6px;font-weight:600}.library-create{display:flex;align-items:center;gap:8px}.library-create input{font:inherit;font-size:13px;padding:6px 9px;border:1px solid var(--rule);border-radius:5px;background:var(--page-bg);color:var(--ink)}.library-create input::placeholder{color:color-mix(in srgb,var(--ink) 75%,var(--page-bg));opacity:1}.library-create .linkish{background:var(--accent);color:#fbf6ea;padding:5px 10px;border-radius:5px;font-size:13px}.library-create .linkish:disabled{opacity:.45}.library-list{list-style:none;margin:0;padding:0;overflow-y:auto}.library-card{display:grid;grid-template-columns:minmax(0,1fr) 92px 140px 90px 28px;align-items:center;gap:14px;padding:10px 6px;border-bottom:1px solid var(--rule);cursor:pointer}.library-card:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.library-card-title{font-weight:500;color:var(--ink-heading);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-card .chip{justify-self:start}.library-meta{color:var(--muted);font-family:var(--font-sans);font-size:12.5px;white-space:nowrap;justify-self:end;text-align:right}.library-card>.linkish{justify-self:center}.library-confirm{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-sans);font-size:12.5px;color:var(--muted);white-space:nowrap}.library-empty{cursor:default;color:var(--muted);padding:10px 6px}.chip{display:inline-block;font-family:var(--font-sans);font-size:11.5px;padding:2px 9px;border-radius:10px;white-space:nowrap;background:var(--sidebar-border);color:var(--ink-heading)}.chip-draft{background:var(--sidebar-border);color:var(--ink-nav)}.chip-in_progress{background:color-mix(in srgb,var(--accent) 25%,var(--sidebar-border));color:var(--ink-heading)}.chip-done{background:var(--accent);color:#fbf6ea}.chapters-view{display:flex;flex-direction:column;height:100%;padding:24px 28px;color:var(--ink)}.chapters-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px 12px;margin-bottom:14px}.chapters-title{font-weight:600}.chapters-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.chapters-list{list-style:none;margin:0;padding:0;overflow-y:auto}.chapters-row{display:grid;grid-template-columns:20px minmax(0,1fr) 64px 32px 64px 32px;column-gap:14px;align-items:center;padding:8px 6px;border-bottom:1px solid var(--rule)}.chapters-row:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.chapters-grip{color:var(--muted);cursor:grab;flex-shrink:0}.chapters-title-input{min-width:0;font:inherit;font-size:14px;color:var(--ink);background:transparent;border:none;padding:2px 4px}.chapters-title-input:focus{outline:none;background:var(--page-bg);border-radius:4px}.chapters-title-missing{grid-column:2 / 6;min-width:0;font-size:14px;font-style:italic;color:var(--muted);padding:2px 4px}.chapters-open{white-space:nowrap;justify-self:start}.chapters-row .export-menu{justify-self:center}.chapters-export{opacity:0;background:transparent;border:none;padding:0;display:inline-flex;align-items:center;color:var(--muted);cursor:pointer;transition:opacity .12s ease,color .12s ease}.chapters-row:hover .chapters-export,.chapters-export:focus-visible{opacity:1}.chapters-export:hover{color:var(--accent)}@media(hover:none),(pointer:coarse){.chapters-export{opacity:1}}.chapters-words{color:var(--muted);font-family:var(--font-sans);font-size:12.5px;white-space:nowrap;justify-self:end;text-align:right}.chapters-confirm{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-sans);font-size:12.5px;color:var(--muted);white-space:nowrap}.chapters-row>.linkish:last-child{justify-self:center}.storyinfo-view{display:flex;flex-direction:column;gap:16px;padding:24px 28px;max-width:560px;color:var(--ink)}.storyinfo-h{margin:0;font-size:18px;font-weight:600;color:var(--ink-heading)}.storyinfo-field{display:flex;flex-direction:column;gap:6px;font-family:var(--font-sans);font-size:12px;color:var(--muted)}.storyinfo-field input,.storyinfo-field textarea,.storyinfo-field select{font-family:var(--font-serif);font-size:14px;color:var(--ink);background:var(--page-bg);border:1px solid var(--rule);border-radius:5px;padding:7px 9px;width:100%;box-sizing:border-box}.storyinfo-field textarea{resize:vertical;font-family:var(--font-serif)}.storyinfo-field input:focus,.storyinfo-field textarea:focus,.storyinfo-field select:focus{outline:none;border-color:var(--accent)}.notes-view{display:flex;flex-direction:column;gap:22px;padding:24px 28px;max-width:640px;color:var(--ink)}.notes-section{display:flex;flex-direction:column;gap:10px}.notes-section h3{margin:0;font-size:15px;font-weight:600;color:var(--ink-heading)}.notes-section-head{display:flex;align-items:center;justify-content:space-between}.notes-entry{display:flex;align-items:flex-start;gap:8px;padding:10px 0;border-top:1px solid var(--rule)}.notes-entry input,.notes-entry textarea{font-family:var(--font-serif);font-size:14px;color:var(--ink);background:var(--page-bg);border:1px solid var(--rule);border-radius:5px;padding:7px 9px;box-sizing:border-box}.notes-entry input{flex:0 0 160px}.notes-entry textarea{flex:1;min-width:0;resize:vertical}.notes-entry input:focus,.notes-entry textarea:focus{outline:none;border-color:var(--accent)}.notes-scratch{width:100%;box-sizing:border-box;font-family:var(--font-serif);font-size:14px;color:var(--ink);background:var(--page-bg);border:1px solid var(--rule);border-radius:5px;padding:9px 11px;resize:vertical}.notes-scratch:focus{outline:none;border-color:var(--accent)}.stats-view{display:flex;flex-direction:column;gap:16px;padding:24px 28px;color:var(--ink)}.stats-h{margin:0;font-size:18px;font-weight:600;color:var(--ink-heading)}.stats-h3{margin:6px 0 0;font-size:14px;font-weight:600;color:var(--ink-heading)}.stats-cards{display:flex;gap:14px;flex-wrap:wrap}.stats-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:120px;padding:14px 18px;background:var(--sidebar-bg);border:1px solid var(--sidebar-border);border-radius:8px;font-family:var(--font-sans);font-size:12.5px;color:var(--muted)}.stats-num{font-family:var(--font-serif);font-size:26px;font-weight:600;color:var(--ink-heading)}.stats-list{list-style:none;margin:0;padding:0}.stats-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px;border-bottom:1px solid var(--rule)}.stats-words{color:var(--muted);font-family:var(--font-sans);font-size:12.5px;white-space:nowrap}.settings-view{display:flex;flex-direction:column;gap:16px;padding:24px 28px;max-width:480px;color:var(--ink)}.settings-h{margin:0;font-size:18px;font-weight:600;color:var(--ink-heading)}.settings-field{display:flex;flex-direction:column;gap:6px;font-family:var(--font-sans);font-size:12px;color:var(--muted);border:none;padding:0;margin:0}fieldset.settings-field{border:1px solid var(--rule);border-radius:6px;padding:10px 12px 12px}.settings-field legend{padding:0 4px;font-family:var(--font-sans);font-size:12px;color:var(--muted)}.settings-field input,.settings-field select{font-family:var(--font-serif);font-size:14px;color:var(--ink);background:var(--page-bg);border:1px solid var(--rule);border-radius:5px;padding:7px 9px;width:100%;box-sizing:border-box}.settings-field input:focus,.settings-field select:focus{outline:none;border-color:var(--accent)}.settings-check{display:flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:13px;color:var(--ink);padding:4px 0}.settings-check input{width:auto}.settings-path{display:flex;align-items:center;gap:10px;font-family:var(--font-sans);font-size:13px;color:var(--ink);background:var(--page-bg);border:1px solid var(--rule);border-radius:5px;padding:7px 9px}.settings-path code,.settings-path .settings-location{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-sans)}.settings-note{margin-top:8px;font-family:var(--font-sans);font-size:12.5px;color:var(--muted);word-break:break-all}.settings-note code{font-family:var(--font-sans);color:var(--ink)}.settings-note--error{color:var(--danger)}.search-view{padding:28px 34px;overflow-y:auto}.search-head{display:flex;align-items:center;gap:8px;margin-bottom:18px}.search-input{flex:1;padding:7px 10px;font:inherit;color:var(--ink);background:var(--page-bg);border:1px solid var(--book-frame);border-radius:6px}.search-note{color:var(--ink);opacity:.7;margin:10px 0}.search-results{list-style:none;margin:0;padding:0}.search-result{padding:10px 12px;border-radius:6px;cursor:pointer;border-bottom:1px solid var(--book-frame)}.search-result:hover{background:var(--sidebar-bg)}.search-result-head{display:flex;justify-content:space-between;gap:12px}.search-result-label{font-weight:600;color:var(--accent)}.search-result-count{opacity:.6}.search-snippet{margin-top:4px;opacity:.85}.search-snippet mark{background:var(--accent);color:var(--page-bg);padding:0 2px;border-radius:2px}.storage-gate{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;background:var(--book-frame)}.storage-gate-card{max-width:520px;padding:26px 28px;background:var(--page-bg);color:var(--ink);border-radius:10px;box-shadow:0 12px 40px #00000059}.storage-gate-title{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:20px;color:var(--ink-heading)}.storage-gate-body{margin:0 0 12px;font-family:var(--font-sans);font-size:14px;line-height:1.5}.storage-gate-btn{min-height:44px;padding:10px 22px;font-family:var(--font-sans);font-size:15px;font-weight:500;color:var(--page-bg);background:var(--accent);border:none;border-radius:5px;cursor:pointer}.storage-gate-btn:disabled{opacity:.6;cursor:default}.storage-gate-actions{display:flex;margin:16px 0 12px}.storage-gate-manual{margin:16px 0 12px;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--danger)}.storage-gate-hint{margin:0;font-family:var(--font-sans);font-size:12.5px;color:var(--muted)}@media(pointer:coarse){.toolbar-btn,.export-menu-trigger,.action-bar-btn,.sidebar-expand,.nav-item,.chapters-open,.chapters-export,.chapters-row .linkish,.library-card>.linkish,.notes-section-head .linkish,.notes-entry .linkish{position:relative}.toolbar-btn:after,.export-menu-trigger:after,.action-bar-btn:after,.sidebar-expand:after,.nav-item:after,.chapters-open:after,.chapters-export:after,.chapters-row .linkish:after,.library-card>.linkish:after,.notes-section-head .linkish:after,.notes-entry .linkish:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;min-width:var(--touch-target);min-height:var(--touch-target);transform:translate(-50%,-50%)}.chapter-head>svg{padding:13px;margin:-13px}}
