@charset "UTF-8";:root{--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Source Serif 4", Georgia, serif;--transition-theme: background-color .25s ease, color .25s ease, box-shadow .25s ease}:root[data-theme=dark]{--surface: #241f38;--surface-elevated: #2c2645;--surface-recessed: #1c1830;--shadow-light: rgba(255, 255, 255, .045);--shadow-dark: rgba(0, 0, 0, .6);--accent: #8b5cf6;--accent-strong: #a78bfa;--accent-soft: rgba(139, 92, 246, .18);--text-primary: #ece9f7;--text-secondary: #b3adc9;--text-muted: #7d7796;--border-subtle: rgba(255, 255, 255, .06);--danger: #f87171;--star: #fbbf24}:root[data-theme=white]{--surface: #e9e6f2;--surface-elevated: #f3f1fa;--surface-recessed: #ddd9ec;--shadow-light: rgba(255, 255, 255, .95);--shadow-dark: rgba(159, 150, 189, .45);--accent: #7c3aed;--accent-strong: #6d28d9;--accent-soft: rgba(124, 58, 237, .12);--text-primary: #2e2a3d;--text-secondary: #5c5570;--text-muted: #8b849e;--border-subtle: rgba(46, 42, 61, .06);--danger: #dc2626;--star: #d97706}:root[data-theme=sepia]{--surface: #e8ddc9;--surface-elevated: #f1e8d8;--surface-recessed: #ddd0b6;--shadow-light: rgba(255, 250, 235, .8);--shadow-dark: rgba(120, 98, 70, .4);--accent: #8e5cd9;--accent-strong: #7748b8;--accent-soft: rgba(142, 92, 217, .14);--text-primary: #3a3226;--text-secondary: #6b5f4a;--text-muted: #948764;--border-subtle: rgba(58, 50, 38, .08);--danger: #b91c1c;--star: #b45309}:root[data-theme=glass]{--surface: #1c1830;--surface-elevated: #262041;--surface-recessed: #14111f;--shadow-light: rgba(255, 255, 255, .12);--shadow-dark: rgba(20, 14, 40, .45);--accent: #a78bfa;--accent-strong: #c4b5fd;--accent-soft: rgba(167, 139, 250, .28);--text-primary: #f5f3ff;--text-secondary: #d8d2f0;--text-muted: #ac9fd6;--border-subtle: rgba(255, 255, 255, .18);--danger: #fca5a5;--star: #fcd34d;--glass-bg: rgba(255, 255, 255, .08);--glass-bg-elevated: rgba(255, 255, 255, .12);--glass-border: rgba(255, 255, 255, .22)}:root[data-theme=glass-luka]{--surface: #0f1b2e;--surface-elevated: #16243b;--surface-recessed: #080f1c;--shadow-light: rgba(125, 211, 252, .12);--shadow-dark: rgba(2, 6, 15, .5);--accent: #38bdf8;--accent-strong: #7dd3fc;--accent-soft: rgba(56, 189, 248, .28);--text-primary: #eaf6ff;--text-secondary: #b9d7ea;--text-muted: #71a0bc;--border-subtle: rgba(186, 230, 253, .18);--danger: #fca5a5;--star: #fcd34d;--glass-bg: rgba(186, 230, 253, .07);--glass-bg-elevated: rgba(186, 230, 253, .1);--glass-border: rgba(186, 230, 253, .22)}body{background:var(--surface);color:var(--text-primary);font-family:var(--font-sans);transition:var(--transition-theme)}body[data-theme=glass]{background-color:#0e0c1a;background-image:radial-gradient(circle at 12% 15%,rgba(147,51,234,.35) 0%,transparent 45%),radial-gradient(circle at 88% 55%,rgba(56,130,246,.28) 0%,transparent 45%),linear-gradient(160deg,#14111f,#0e0c1a 60%,#0a0812);background-attachment:fixed;background-size:cover}body[data-theme=glass-luka]{background-color:#050b16;background-image:radial-gradient(circle at 18% 20%,rgba(56,189,248,.32) 0%,transparent 45%),radial-gradient(circle at 82% 30%,rgba(103,232,249,.22) 0%,transparent 42%),radial-gradient(circle at 60% 82%,rgba(99,102,241,.18) 0%,transparent 45%),linear-gradient(160deg,#0b1626,#070f1c 55%,#030710);background-attachment:fixed;background-size:cover}.neu-panel{background:var(--surface);border-radius:var(--radius-lg);box-shadow:8px 8px 16px var(--shadow-dark),-8px -8px 16px var(--shadow-light);transition:var(--transition-theme)}.neu-panel--elevated{background:var(--surface-elevated);box-shadow:6px 6px 14px var(--shadow-dark),-6px -6px 14px var(--shadow-light)}.neu-inset{background:var(--surface-recessed);border-radius:var(--radius-md);box-shadow:inset 4px 4px 8px var(--shadow-dark),inset -4px -4px 8px var(--shadow-light)}.neu-button{background:var(--surface);border:none;border-radius:var(--radius-md);color:var(--text-primary);box-shadow:5px 5px 10px var(--shadow-dark),-5px -5px 10px var(--shadow-light);transition:var(--transition-theme),transform .1s ease;cursor:pointer}.neu-button:hover{color:var(--accent-strong)}.neu-button:active,.neu-button--active{box-shadow:inset 3px 3px 6px var(--shadow-dark),inset -3px -3px 6px var(--shadow-light);transform:translateY(1px)}.neu-button--accent{background:var(--accent);color:#fff;box-shadow:5px 5px 10px var(--shadow-dark),-3px -3px 8px var(--accent-soft)}.neu-button--danger{background:var(--danger);color:#fff;box-shadow:5px 5px 10px var(--shadow-dark),-3px -3px 8px var(--danger)}.neu-button:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}:is([data-theme=glass],[data-theme=glass-luka]) .neu-panel,:is([data-theme=glass],[data-theme=glass-luka]) .neu-panel--elevated{background:var(--glass-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--glass-border);box-shadow:0 8px 32px #140e2d47}:is([data-theme=glass],[data-theme=glass-luka]) .neu-panel--elevated{background:var(--glass-bg-elevated)}:is([data-theme=glass],[data-theme=glass-luka]) .neu-inset{background:#0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 2px 8px #0000004d}:is([data-theme=glass],[data-theme=glass-luka]) .neu-button{background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 14px #140e2d38}:is([data-theme=glass],[data-theme=glass-luka]) .neu-button:active,:is([data-theme=glass],[data-theme=glass-luka]) .neu-button--active{background:#fff3;box-shadow:0 2px 6px #140e2d4d}:is([data-theme=glass],[data-theme=glass-luka]) .neu-button--accent{background:linear-gradient(135deg,var(--accent-soft),var(--accent));border:1px solid rgba(255,255,255,.32);box-shadow:0 4px 18px var(--accent-soft)}:is([data-theme=glass],[data-theme=glass-luka]) .neu-button--danger{background:linear-gradient(135deg,var(--danger),var(--danger));border:1px solid rgba(255,255,255,.32);box-shadow:0 4px 18px var(--danger)}.star-indicator{color:var(--text-muted);transition:color .15s ease}.star-indicator--active{color:var(--star)}.neu-button i:not(:only-child){margin-right:6px}.neu-scroll{scrollbar-width:thin;scrollbar-color:var(--shadow-dark) transparent}.neu-scroll::-webkit-scrollbar{width:8px}.neu-scroll::-webkit-scrollbar-track{background:transparent}.neu-scroll::-webkit-scrollbar-thumb{background:var(--shadow-dark);border-radius:8px}.neu-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:is([data-theme=glass],[data-theme=glass-luka]) .neu-scroll{scrollbar-color:var(--glass-border) transparent}:is([data-theme=glass],[data-theme=glass-luka]) .neu-scroll::-webkit-scrollbar-thumb{background:#ffffff38;border:1px solid var(--glass-border);background-clip:padding-box}:is([data-theme=glass],[data-theme=glass-luka]) .neu-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff57}html,body{margin:0;padding:0;height:100%}*{box-sizing:border-box}button,input,textarea{font-family:inherit}.editor-host .ProseMirror{min-height:100%;font-style:normal}.editor-host .ProseMirror p.is-editor-empty:first-child:before{font-style:normal;color:var(--text-muted)}.editor-host p,.reader-host p{margin:0 0 .4em}.editor-host .bw-page-link,.reader-host .bw-page-link{color:var(--accent-strong);text-decoration:underline;cursor:pointer}.editor-host .bw-note-ref,.reader-host .bw-note-ref{cursor:pointer;color:var(--accent-strong);font-weight:700;font-size:.7em;margin-left:3px;white-space:nowrap;-webkit-user-select:none;user-select:none}.editor-host .bw-note-ref+.bw-note-ref,.reader-host .bw-note-ref+.bw-note-ref{margin-left:6px}.editor-host .bw-note-ref:hover,.reader-host .bw-note-ref:hover{text-decoration:underline}.editor-host mark,.reader-host mark{border-radius:3px;padding:0 2px}.read-book-fullscreen .bw-note-ref,.page-preview-panel .bw-note-ref{display:none}.read-book-fullscreen mark,.page-preview-panel mark{background-color:transparent!important;color:inherit!important}.editor-host img,.reader-host img{max-width:100%;border-radius:var(--radius-sm)}.print-only{display:none}@media print{body *{visibility:hidden}.print-only,.print-only *{visibility:visible}.print-only{display:block;position:fixed;top:0;left:0;width:100%}}.print-only{font-family:Georgia,Times New Roman,serif;font-size:12pt;line-height:1.5;color:#1a1a1a}.print-only img{max-width:100%}.print-only mark{background:transparent!important;color:inherit!important;padding:0!important}.print-only .bw-note-ref{display:none!important}.print-only .bw-page-link{color:inherit;text-decoration:none}.print-only .print-book-title{font-family:var(--font-serif);font-size:2em;text-align:center;margin:0 0 .3em}.print-only .print-book-subtitle{font-family:var(--font-serif);font-size:1.1em;font-style:italic;color:#4a4a4a;text-align:center;margin:0 0 1.5em}.print-only .print-chapter{break-before:page;page-break-before:always}.print-only .print-chapter:first-child{break-before:avoid;page-break-before:avoid}.print-only .print-chapter-title{font-family:var(--font-serif);font-size:1.6em;text-align:center;margin:0 0 1em}.print-only .print-page-title{font-family:var(--font-serif);font-size:1.15em;font-weight:600;text-align:center;margin:1.5em 0 .75em}.bw-tooltip{position:fixed;z-index:500;max-width:240px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-primary);font-family:var(--font-sans);font-size:.75rem;line-height:1.35;text-align:center;box-shadow:4px 4px 10px var(--shadow-dark),-4px -4px 10px var(--shadow-light);pointer-events:none;transition:opacity .1s ease}.bw-tooltip:after{content:"";position:absolute;left:var(--bw-tooltip-arrow-left, 50%);width:8px;height:8px;margin-left:-4px;background:inherit}.bw-tooltip--top:after{bottom:-4px;clip-path:polygon(0 0,100% 0,50% 100%)}.bw-tooltip--bottom:after{top:-4px;clip-path:polygon(50% 0,100% 100%,0 100%)}:is([data-theme=glass],[data-theme=glass-luka]) .bw-tooltip{background:var(--glass-bg-elevated);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-border);box-shadow:0 4px 18px #140e2d47}
