@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/ibm-plex-sans-cyrillic-300-normal-RhT0Ayi3.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-300-normal-LoaTnByX.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/ibm-plex-sans-latin-300-normal-b4i7YzLG.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-300-normal-C9Of02-5.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-400-normal-CbVom6TB.woff2) format("woff2"),url(/assets/lora-cyrillic-400-normal-BedExNGj.woff) format("woff")}@font-face{font-family:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-400-italic-BZqWJcgY.woff2) format("woff2"),url(/assets/lora-cyrillic-400-italic-rXhP2Nh9.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pt-serif-cyrillic-400-normal-B-euljER.woff2) format("woff2"),url(/assets/pt-serif-cyrillic-400-normal-D8jOFnDU.woff) format("woff")}@font-face{font-family:"PT Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/pt-serif-cyrillic-400-italic-Bicg0I0x.woff2) format("woff2"),url(/assets/pt-serif-cyrillic-400-italic-CGr2MaNX.woff) format("woff")}@font-face{font-family:Spectral;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/spectral-cyrillic-400-normal-Bx9Tn3WZ.woff2) format("woff2"),url(/assets/spectral-cyrillic-400-normal-X3p2PSzL.woff) format("woff")}@font-face{font-family:Spectral;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/spectral-cyrillic-400-italic-C6o5RXh-.woff2) format("woff2"),url(/assets/spectral-cyrillic-400-italic-C95RxGpc.woff) format("woff")}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-wght-normal-cHuGMAiY.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-wght-normal-DwHjdM4S.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-wght-normal-ece1310W.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-wght-normal-D-yuW59g.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-wght-normal-CxNHBx-q.woff2) format("woff2-variations");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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-normal-D9elroTD.woff2) format("woff2-variations");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{--bg-void: oklch(.13 .012 50);--bg-deep: oklch(.165 .012 50);--bg: oklch(.205 .014 50);--surface: oklch(.245 .014 50);--surface-2: oklch(.295 .012 50);--surface-3: oklch(.345 .012 50);--border: oklch(.34 .012 50);--border-soft: oklch(.28 .01 50);--border-strong: oklch(.42 .012 50);--ink: oklch(.95 .008 80);--ink-2: oklch(.78 .012 80);--ink-3: oklch(.65 .012 70);--ink-4: oklch(.46 .012 60);--accent: oklch(.63 .16 30);--accent-soft: oklch(.63 .16 30 / .16);--accent-2: oklch(.78 .1 90);--accent-2-soft: oklch(.78 .1 90 / .18);--ok: oklch(.72 .14 145);--warn: oklch(.8 .14 80);--danger: oklch(.65 .18 25);--info: oklch(.72 .1 230);--note-idea: oklch(.82 .16 75);--note-idea-soft: oklch(.82 .16 75 / .14);--note-question: oklch(.72 .14 240);--note-question-soft: oklch(.72 .14 240 / .14);--note-todo: oklch(.72 .14 145);--note-todo-soft: oklch(.72 .14 145 / .14);--note-important: oklch(.65 .18 25);--note-important-soft: oklch(.65 .18 25 / .14);--paper: oklch(.965 .014 85);--paper-edge: oklch(.92 .018 80);--paper-ink: oklch(.22 .02 60);--paper-ink-2: oklch(.42 .02 60);--paper-rule: oklch(.86 .014 85);--tab-idea: oklch(.84 .13 90);--tab-question: oklch(.78 .1 230);--tab-todo: oklch(.78 .13 55);--tab-important: oklch(.7 .16 25);--r-1: 4px;--r-2: 8px;--r-3: 12px;--r-4: 16px;--font-ui: "IBM Plex Sans", system-ui, sans-serif;--font-serif: "Source Serif 4", Georgia, serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--font-editor: "Source Serif 4", Georgia, serif;--dur-instant: .1s;--dur-hover: .12s;--dur-spring: .13s;--dur-fast: .15s;--dur-exit: .09s;--dur-panel: .22s;--dur-page: .2s;--ease-spring: cubic-bezier(.22, .68, 0, 1.2);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--character-color-0: oklch(.63 .16 30);--character-color-1: oklch(.58 .12 220);--character-color-2: oklch(.58 .1 160);--character-color-3: oklch(.62 .1 280);--character-color-4: oklch(.65 .09 55);--bp-mobile: 768px;--bp-tablet: 1024px;--bp-large: 1440px;color-scheme:dark}[data-theme=light]{--bg-void: oklch(.8 .014 65);--bg-deep: oklch(.86 .014 65);--bg: oklch(.91 .01 68);--surface: oklch(.95 .01 65);--surface-2: oklch(.88 .012 60);--surface-3: oklch(.83 .012 55);--border: oklch(.79 .01 50);--border-soft: oklch(.87 .008 55);--border-strong: oklch(.69 .012 50);--ink: oklch(.18 .022 60);--ink-2: oklch(.36 .018 60);--ink-3: oklch(.43 .014 60);--ink-4: oklch(.5 .012 60);color-scheme:light}[data-theme=light] .bubble-btn{color:#dad7d2}[data-theme=light] .bubble-sep{background:#ffffff21}[data-theme=light] .skeleton:after{background:linear-gradient(90deg,transparent,oklch(.6 .008 60 / .09),transparent)}[data-theme=light]{--character-color-0: oklch(.45 .16 30);--character-color-1: oklch(.42 .12 220);--character-color-2: oklch(.42 .1 160);--character-color-3: oklch(.46 .1 280);--character-color-4: oklch(.48 .09 55)}html,body,#root{margin:0;height:100%;background:var(--bg);font-family:var(--font-ui);color:var(--ink);-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-1)}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide-down{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}@keyframes modal-in{0%{opacity:0;transform:scale(.97)}}@keyframes fade-in{0%{opacity:0}}@keyframes toast-out{to{opacity:0;transform:translateY(-4px) scale(.97)}}@keyframes panel-enter-right{0%{transform:translate(100%)}}@keyframes scale-flash{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(200%)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page-spinner{width:28px;height:28px;border-radius:50%;border:2.5px solid var(--border);border-top-color:var(--accent);animation:spin .75s linear infinite}.page-loading{flex:1;display:flex;align-items:center;justify-content:center}.mode-page .as.as-app,.mode-page .as.as-app--no-right{grid-template-columns:56px 1fr!important}.mode-page .sb,.mode-page .rp{display:none!important}.as{font-family:var(--font-ui);color:var(--ink);background:var(--bg);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}.as :where(*,*:before,*:after){box-sizing:border-box}.as :where(button){font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}.as :where(input,textarea){font:inherit;color:inherit}.as :where(svg){display:block}.as :where(h1,h2,h3,h4,p,ul,ol){margin:0;padding:0}.as :where(ul,ol){list-style:none}.as :where(a){color:inherit;text-decoration:none}.as-app{display:grid;grid-template-columns:260px 1fr 320px;height:100%;background:var(--bg)}.as-app--no-right{grid-template-columns:260px 1fr}.as-app--rail{grid-template-columns:56px 1fr 320px}@media (max-width: 1023px){.as-app{grid-template-columns:260px 1fr}.as-app--rail{grid-template-columns:56px 1fr}}@media (max-width: 767px){.as-app,.as-app--no-right,.as-app--rail{grid-template-columns:1fr}.as-app>.sb{display:none}}@media (max-width: 479px){.sb-head{padding:14px 16px 10px}.tb-btn{min-height:48px;min-width:48px}.btn{min-height:48px}}.sb{background:var(--bg-deep);border-right:1px solid var(--border-soft);display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;height:100%}.sb-head{padding:18px 20px 14px;border-bottom:1px solid var(--border-soft);display:flex;flex-direction:column;gap:2px}.sb-book-title{font-family:var(--font-ui);font-size:16px;font-weight:500;letter-spacing:-.005em;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}a.sb-book-title:hover{color:var(--accent);transition:color .15s}.sb-book-author{font-size:11px;color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-share-btn{font:500 11px var(--font-ui);background:var(--bg-deep);border:1px solid var(--border-soft);border-radius:5px;padding:4px 8px;cursor:pointer}.sb-tabs{display:flex;gap:2px;padding:12px 14px 8px}.sb-tab{flex:1;height:26px;border-radius:var(--r-1);font-size:11px;color:var(--ink-3);display:flex;align-items:center;justify-content:center;letter-spacing:.02em}.sb-tab--on{background:var(--surface);color:var(--ink)}.sb-section{padding:14px 14px 8px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--bg-deep);z-index:10}.sb-section-add{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--r-1);background:none;border:none;cursor:pointer;color:var(--ink-4);transition:color .12s,background .12s}.sb-section-add:hover{background:var(--surface);color:var(--ink-2)}.sb-section-title{font-size:10.5px;color:var(--ink-3);letter-spacing:.12em;text-transform:uppercase;font-weight:500}.sb-section-meta{font:500 10px var(--font-mono);color:var(--ink-3)}.sb-list{padding:0 8px 8px;display:flex;flex-direction:column;gap:1px}.sb-item{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--r-1);cursor:pointer;min-height:32px;transition:background var(--dur-hover)}.sb-item:hover,.sb-item--on{background:var(--surface)}.sb-item--on .sb-item-num{color:var(--accent)}.sb-item-num{font:500 11px var(--font-mono);color:var(--ink-3);text-align:right}.sb-item-title{font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-item-meta{font:400 10.5px var(--font-mono);color:var(--ink-3)}.sb-item-dot{width:6px;height:6px;border-radius:999px;background:var(--ink-4)}.sb-item-dot--draft{background:var(--ink-4)}.sb-item-dot--progress{background:var(--accent-2)}.sb-item-dot--done{background:var(--ok)}.sb-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--surface-3) transparent}.sb-foot{padding:12px 14px;border:none;border-top:1px solid var(--border-soft);background:none;width:100%;text-align:left;font:inherit;display:flex;align-items:center;gap:10px;cursor:pointer;transition:background .12s}.sb-foot:hover{background:var(--surface)}.sb-avatar{width:28px;height:28px;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:flex;align-items:center;justify-content:center;font:500 11px var(--font-ui);color:#f8f8f8}.sb-foot-name{font-size:12.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-foot-meta{font-size:11px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-dropdown-item{display:flex;align-items:center;gap:8px;padding:7px 10px;width:100%;border-radius:5px;background:transparent;cursor:pointer;font:400 12.5px/1.4 var(--font-ui);color:var(--ink);border:none;text-align:left;transition:background .1s}.sb-dropdown-item:hover{background:var(--surface-2)}.sb-dropdown-item--danger{color:var(--danger)}.sb-dropdown-item--danger:hover{background:color-mix(in oklch,var(--danger) 8%,transparent)}.tb{height:44px;flex-shrink:0;background:var(--bg);border-bottom:1px solid var(--border-soft);display:flex;align-items:center;padding:0 14px;gap:2px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.tb::-webkit-scrollbar{display:none}.tb--wrap{flex-wrap:nowrap}.tb>*{flex-shrink:0}.tb-grp{display:flex;align-items:center;gap:1px}.tb-sep{width:1px;height:18px;background:var(--border-soft);margin:0 2px;flex-shrink:0}.tb-btn{height:28px;min-width:28px;padding:0 5px;border-radius:var(--r-1);display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--ink-2);font-size:12px;background:transparent;border:none;cursor:pointer;overflow:hidden;transition:background var(--dur-hover),color var(--dur-hover)}.tb-btn:hover{background:var(--surface);color:var(--ink)}.tb-btn--on{background:var(--surface-2);color:var(--ink)}.tb-btn--accent{color:var(--accent)}.tb-spacer{flex:1}@media (max-width: 768px){.tb-btn{min-height:44px;min-width:44px}.btn{min-height:44px}}@keyframes bubble-in{0%{opacity:0;transform:translateY(5px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.bubble-menu{display:flex;align-items:center;gap:6px;padding:5px 8px;background:#080302f7;border:1px solid oklch(100% 0 0 / .1);border-radius:11px;box-shadow:0 12px 32px #00000080,0 1px #ffffff12 inset;animation:bubble-in var(--dur-spring) var(--ease-spring) both;transition:opacity .08s ease-in}.bubble-menu--leaving{opacity:0}.bubble-fmt{display:flex;align-items:center;gap:1px}.skeleton{background:var(--surface);border-radius:var(--r-1);overflow:hidden;position:relative}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,oklch(1 0 0 / .04),transparent);animation:shimmer 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.skeleton:after{animation:none}}.bubble-btn{width:28px;height:28px;padding:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-2);cursor:pointer;transition:background var(--dur-instant),color var(--dur-instant)}.bubble-btn:hover{background:#ffffff1a;color:var(--ink)}.bubble-btn--on{background:var(--accent);color:#f8f8f8}.bubble-sep{width:1px;height:18px;background:#ffffff21;flex-shrink:0}.bubble-colors{display:flex;align-items:center;gap:5px}.bubble-color{width:16px;height:16px;padding:0;border-radius:50%;cursor:pointer;position:relative;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-hover);box-shadow:0 1px 4px #00000059}.bubble-color:hover{transform:scale(1.25)}.bubble-color--on:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid oklch(.98 0 0);pointer-events:none}.bubble-color--clear{background:#ffffff1a!important;border:1px solid oklch(100% 0 0 / .22);box-shadow:none}.tb-sel{height:28px;padding:0 10px;border-radius:var(--r-1);display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-size:12px}.tb-sel:hover{background:var(--surface)}.sheet-wrap{flex:1;min-height:0;background:var(--bg);overflow-x:hidden;overflow-y:auto;position:relative;display:flex;flex-direction:column;align-items:center;padding:36px 48px 0;scrollbar-width:thin;scrollbar-color:var(--surface-3) transparent}.sheet-wrap::-webkit-scrollbar{width:5px}.sheet-wrap::-webkit-scrollbar-track{background:transparent}.sheet-wrap::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:999px;transition:background var(--dur-fast)}.sheet-wrap::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.sheet{width:720px;max-width:min(100%,760px);flex:1;background:var(--paper);color:var(--paper-ink);font-family:var(--font-editor);font-size:17px;line-height:1.78;padding:56px 72px 80px;border-radius:4px 4px 0 0;position:relative;letter-spacing:.005em}.sheet h1,.sheet .ch-num,.sheet .ch-title{font-family:var(--font-editor);color:var(--paper-ink)}.sheet .ch-num{font:500 11px/1 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--paper-ink-2);margin-bottom:14px}.sheet .ch-title{font-size:32px;font-weight:600;line-height:1.15;letter-spacing:-.012em;margin-bottom:28px}.sheet .ch-rule{width:36px;height:1px;background:var(--paper-ink);opacity:.3;margin-bottom:24px}.sheet p{margin:0 0 1em;text-indent:1.4em;text-align:justify;-webkit-hyphens:auto;hyphens:auto}.sheet p.no-indent{text-indent:0}.sheet p.scene-break{text-align:center;text-indent:0;letter-spacing:.4em;color:var(--paper-ink-2);margin:1.4em 0}.sheet em{font-style:italic}.sheet strong{font-weight:600}.mh{background:#ebc75e73;padding:1px 2px;border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.mh--question{background:#6ec3eb52}.mh--todo{background:#f7a0626b}.mh--important{background:#f2716a4d}.spell{text-decoration:underline wavy oklch(.65 .18 25);text-underline-offset:4px;text-decoration-thickness:1.5px}.spell-popup{position:fixed;z-index:1000;background:var(--bg-deep);border:1px solid var(--surface-2);border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:2px;box-shadow:0 6px 20px #0000004d;min-width:120px}.spell-popup__item{padding:5px 10px;border-radius:5px;text-align:left;font-size:14px;cursor:pointer;background:transparent;border:none;color:var(--ink);font-family:inherit}.spell-popup__item:hover{background:var(--surface-2)}.spell-popup__sep{height:1px;background:var(--surface-2);margin:2px 4px}.spell-popup__item--muted{color:var(--ink-3);font-size:12px}.spell-popup__item--muted:hover{color:var(--ink)}.lt-spell{text-decoration:underline wavy oklch(.65 .18 25);text-underline-offset:4px;text-decoration-thickness:1.5px;cursor:default}.lt-grammar{text-decoration:underline wavy oklch(.55 .16 250);text-underline-offset:4px;text-decoration-thickness:1.5px;cursor:default}.ins{background:#67bb6b33;color:#005813;color:oklch(.4 .18 145)}.del{background:#e858542e;color:#bb061e;text-decoration:line-through}.status{height:30px;flex-shrink:0;border-top:1px solid var(--border-soft);background:var(--bg-deep);display:flex;align-items:center;padding:0 14px;font:400 11px var(--font-mono);color:var(--ink-3);gap:14px}.status-dot{width:6px;height:6px;border-radius:999px;background:var(--ok)}.rp{background:var(--bg-deep);border-left:1px solid var(--border-soft);display:flex;flex-direction:column;min-width:0}.rp-head{height:44px;flex-shrink:0;display:flex;align-items:center;padding:0 14px;border-bottom:1px solid var(--border-soft);gap:14px}.rp-tab{font-size:12px;color:var(--ink-3);padding:4px 0;position:relative}.rp-tab--on{color:var(--ink)}.rp-tab--on:after{content:"";position:absolute;left:0;right:0;bottom:-13px;height:1.5px;background:var(--accent)}.rp-body{padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.mn{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-2);padding:10px 12px;display:flex;flex-direction:column;gap:6px;position:relative}.mn:before{content:"";position:absolute;left:-1px;top:12px;bottom:12px;width:2px;background:var(--note-idea);border-radius:2px}.mn--question:before{background:var(--note-question)}.mn--todo:before{background:var(--note-todo)}.mn--important:before{background:var(--note-important)}.mn-head{display:flex;align-items:center;justify-content:space-between}.mn-label{font:500 9.5px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.mn-time{font:400 10px var(--font-mono);color:var(--ink-3)}.mn-text{font-size:12.5px;color:var(--ink);line-height:1.55}.mn-quote{font-size:11.5px;color:var(--ink-3);font-style:italic;line-height:1.45;padding-left:8px;border-left:1.5px solid var(--border)}.chip{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:999px;border:1px solid var(--border);font-size:11px;color:var(--ink-2);background:transparent}.chip--accent{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.chip--ok{border-color:#67bb6b80;color:var(--ok);background:#67bb6b1f}.btn{height:30px;padding:0 12px;border-radius:var(--r-2);border:1px solid var(--border);font-size:12.5px;color:var(--ink);display:inline-flex;align-items:center;gap:6px;background:transparent;cursor:pointer;font-family:inherit}.btn:hover{background:var(--surface)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--accent);border-color:var(--accent);color:#f8f8f8}.btn--primary:hover{background:#ea6c5a}.btn--ghost{border-color:transparent;color:var(--ink-2)}.btn--lg{height:42px;padding:0 24px;font-size:14px}.btn-spinner{display:inline-block;width:13px;height:13px;border-radius:50%;border:1.5px solid oklch(1 0 0 / .35);border-top-color:#ffffffe6;animation:spin .65s linear infinite;flex-shrink:0}.btn--danger-ghost{border-color:transparent;color:var(--danger);background:none;opacity:.8}.btn--danger-ghost:hover{opacity:1;background:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.modal-panel{background:var(--bg-deep);border:1px solid var(--border);border-radius:14px;padding:24px 28px;display:flex;flex-direction:column;gap:18px;box-shadow:0 24px 60px #01000066;max-width:calc(100vw - 32px)}.modal-panel--lg{border-radius:16px;padding:32px 36px;gap:24px;box-shadow:0 24px 60px #01000080}.modal-panel--xl{border-radius:18px;padding:36px 40px;box-shadow:0 32px 80px #0000008c}.as ::-webkit-scrollbar{width:10px;height:10px}.as ::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.as ::-webkit-scrollbar-track{background:transparent}.imgp{background:repeating-linear-gradient(135deg,#4d4642,#4d4642 6px,#433b38 6px,#433b38 12px);display:flex;align-items:center;justify-content:center;color:var(--ink-3);font:400 10px var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.input{height:38px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);font-size:13.5px;font-family:inherit;width:100%;outline:none}.input:focus{border-color:var(--accent)}.input--err{border-color:var(--danger)}input[type=number].input::-webkit-inner-spin-button,input[type=number].input::-webkit-outer-spin-button{opacity:.4;height:24px;cursor:pointer}input[type=number].input:hover::-webkit-inner-spin-button,input[type=number].input:hover::-webkit-outer-spin-button{opacity:.8}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2373645A' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px;cursor:pointer}.label{font:500 11px var(--font-mono);color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:6px}.sheet .tiptap,.sheet .tiptap p,.sheet .tiptap li,.sheet .tiptap h1,.sheet .tiptap h2,.sheet .tiptap h3,.sheet .tiptap blockquote,.sheet .tiptap a,.sheet .tiptap u,.sheet .tiptap em,.sheet .tiptap strong{color:var(--paper-ink)}.tiptap p{margin:0 0 1em}.tiptap p:last-child{margin-bottom:0}.tiptap h1{font:600 30px var(--font-editor);letter-spacing:-.012em;margin:1.2em 0 .6em}.tiptap h2{font:600 22px var(--font-editor);letter-spacing:-.01em;margin:1.4em 0 .5em}.tiptap h3{font:600 17px var(--font-editor);margin:1.2em 0 .5em}.tiptap blockquote{margin:1em 0;padding-left:1em;border-left:3px solid var(--accent);font-style:italic}.tiptap ul,.tiptap ol{padding-left:1.4em;margin:0 0 1em;list-style:revert}.tiptap li{margin-bottom:.3em}.tiptap li>p{margin:0 0 .3em}.tiptap code{font:400 .9em var(--font-mono);background:var(--surface-2);padding:.1em .35em;border-radius:3px}.tiptap strong{font-weight:600}.tiptap em{font-style:italic}.tiptap u{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.tiptap s{text-decoration:line-through}.tiptap a{text-decoration:underline}.tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--paper-ink-2);opacity:.55;float:left;height:0;pointer-events:none}.tiptap a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.tiptap mark{background:#f2cd6480;padding:.05em .15em;border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.tiptap hr{border:none;border-top:1px solid var(--paper-ink-2);opacity:.35;margin:1.6em 0}.tiptap pre{background:var(--surface-2);padding:12px 16px;border-radius:6px;font:400 13px/1.55 var(--font-mono);overflow-x:auto;margin:1em 0}.tiptap pre code{background:transparent;padding:0;font-size:inherit}.tiptap [data-text-align=center]{text-align:center}.tiptap [data-text-align=right]{text-align:right}.tiptap [data-text-align=justify]{text-align:justify}.tiptap ul[data-type=taskList]{list-style:none;padding-left:.4em}.tiptap ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:8px;margin-bottom:.3em}.tiptap ul[data-type=taskList] li>label{flex-shrink:0;-webkit-user-select:none;user-select:none;margin-top:.3em}.tiptap ul[data-type=taskList] li>div{flex:1;min-width:0}.tiptap ul[data-type=taskList] input[type=checkbox]{width:14px;height:14px;cursor:pointer}.tiptap sub{vertical-align:sub;font-size:.75em}.tiptap sup{vertical-align:super;font-size:.75em}.tiptap:focus-visible{outline:none}.focus-mode .sheet .tiptap p,.focus-mode .sheet .tiptap li,.focus-mode .sheet .tiptap h1,.focus-mode .sheet .tiptap h2,.focus-mode .sheet .tiptap h3,.focus-mode .sheet .tiptap blockquote{opacity:.38;transition:opacity .2s ease}.focus-mode .sheet .tiptap .has-focus{opacity:1}.focus-mode .sheet .sheet-title{opacity:.38;transition:opacity .2s ease}.focus-mode .sheet .sheet-title:focus{opacity:1}.focus-mode .sheet .tiptap{caret-color:#f59900;caret-color:oklch(.76 .25 68)}.book-card{position:relative}.book-card__edit{display:none}.book-card:hover .book-card__edit{display:flex}@media (max-width: 639px){.hide-sm{display:none!important}}.note-card{transition:border-color .15s,box-shadow .15s}.note-card:hover{border-color:var(--border-strong)!important}.note-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.note-modal-panel{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:20px 24px;width:100%;max-width:480px;max-height:80vh;display:flex;flex-direction:column;gap:14px;overflow:hidden}@media (max-width: 639px){.note-modal-overlay{align-items:flex-end;padding:0}.note-modal-panel{max-width:100%;max-height:75vh;border-radius:16px 16px 0 0;border-bottom:none;padding:20px 20px 32px}}@media (min-width: 1440px){.sheet{font-size:18px}}@media (min-width: 1920px){.sheet{font-size:18.5px;line-height:1.82}}.char-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:10px;overflow:hidden;cursor:pointer;text-align:left;padding:0;display:flex;flex-direction:column;width:100%;transition:border-color var(--dur-hover),background var(--dur-hover)}.char-card:hover{border-color:var(--border);background:var(--surface-2)}.char-card__portrait{height:110px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;flex-shrink:0}.char-card__initials{font:600 34px var(--font-serif);color:#f2eee7b8;letter-spacing:-.02em;-webkit-user-select:none;user-select:none}.char-card__body{padding:10px 12px 11px}.char-card__name{font:500 13px var(--font-ui);color:var(--ink);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-card__role{font:500 10px var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.char-card-wrap{position:relative}.char-card-wrap .char-card{width:100%}.char-card__del{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:6px;background:color-mix(in oklch,var(--danger) 12%,transparent);color:var(--danger);border:1px solid color-mix(in oklch,var(--danger) 28%,transparent);font:500 15px var(--font-ui);line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--dur-hover),background var(--dur-hover);z-index:1}.char-card-wrap:hover .char-card__del{opacity:1}.char-card__del:hover{background:color-mix(in oklch,var(--danger) 22%,transparent)}.add-card{background:transparent;border:1px dashed var(--border-soft);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;align-self:stretch;min-height:120px;color:var(--ink-4);font:400 12px var(--font-ui);transition:border-color var(--dur-hover),color var(--dur-hover);width:100%}.add-card:hover{border-color:var(--border);color:var(--ink-3)}.rel-del-btn{background:transparent;border:none;color:var(--ink-4);cursor:pointer;padding:2px 6px;display:flex;align-items:flex-start;border-radius:4px;font:400 16px var(--font-ui);line-height:1;flex-shrink:0;transition:color var(--dur-hover)}.rel-del-btn:hover{color:var(--danger)}.chapter-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--surface);border:1px solid var(--border-soft);border-radius:8px;cursor:pointer;text-align:left;font:400 13px var(--font-ui);color:var(--ink);transition:border-color var(--dur-hover),background var(--dur-hover)}.chapter-row:hover{border-color:var(--border);background:var(--surface-2)}.alias-remove-btn{display:flex;align-items:center;background:transparent;border:none;color:var(--ink-4);cursor:pointer;padding:0 2px;font-size:14px;line-height:1;transition:color var(--dur-hover)}.alias-remove-btn:hover{color:var(--danger)}.input--sm{height:32px}.btn--sm{font-size:12px}.tb-btn:disabled{opacity:.35;cursor:not-allowed}.feature-item{display:flex;align-items:flex-start;gap:14px;padding:10px 12px;border-radius:10px;background:var(--surface)}.feature-item__icon{width:32px;height:32px;border-radius:8px;background:#d95c4b26;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent)}.feature-item__name{font:500 13px var(--font-ui);color:var(--ink);margin-bottom:2px}.feature-item__desc{font:400 12px var(--font-ui);color:var(--ink-3)}.upgrade-check{display:flex;align-items:center;gap:10px;font:400 13.5px var(--font-ui);color:var(--ink-2)}.upgrade-check__icon{width:18px;height:18px;border-radius:999px;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;color:#f8f8f8;font-weight:600}.error-banner{padding:10px 14px;border-radius:8px;background:#e858541a;color:var(--danger);font-size:13px}.tb-search{height:28px;padding:0 9px;border:1px solid var(--border-soft);border-radius:6px;display:flex;align-items:center;gap:5px;color:var(--ink-3);flex-shrink:0}.tb-search__input{background:transparent;border:none;outline:none;color:var(--ink);font:400 12px var(--font-ui);width:110px}@media (max-width: 767px){.tb-search__input{width:90px}}.char-tabs{display:flex;border-bottom:1px solid var(--border-soft);margin-bottom:28px}.char-tab{padding:8px 16px;font:500 12px var(--font-ui);color:var(--ink-3);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-1px}.char-tab--on{color:var(--ink);border-bottom-color:var(--accent)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);border-radius:10px;padding:10px 18px;display:flex;align-items:center;gap:10px;font:500 13px var(--font-ui);box-shadow:0 4px 24px #00000047;z-index:1000;animation:toast-in .2s cubic-bezier(.22,.68,0,1.2);max-width:360px;white-space:pre-wrap;text-align:center}.toast--error{background:#421c19;border:1px solid oklch(.45 .12 25);color:#fedbd7;cursor:pointer}.toast--info{background:var(--surface-2);border:1px solid var(--border);color:var(--ink);pointer-events:none}.toast--leaving{animation:toast-out .1s ease-in both}.input-hint{margin-top:5px;font-size:11.5px;color:var(--ink-3);line-height:1.5}.char-field-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:12px;padding:16px 18px}.char-field-card--warn{background:color-mix(in oklch,var(--accent) 8%,transparent);border-color:color-mix(in oklch,var(--accent) 40%,transparent)}.char-field-card__head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.char-field-card--warn .char-field-card__head{margin-bottom:4px}.char-field-card__dot{width:6px;height:6px;border-radius:999px;background:var(--accent);flex-shrink:0}.char-field-card__label{font:500 10.5px var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.char-field-card--warn .char-field-card__label{color:var(--accent)}.char-field-card__hint{font:400 11px var(--font-ui);color:var(--ink-4);margin-bottom:8px;line-height:1.45}.char-field-card__text{width:100%;font:400 13.5px/1.65 var(--font-serif);color:var(--ink);background:transparent;border:none;outline:none;resize:vertical;padding:0;min-height:80px}
