.binder.svelte-n9abx8{height:100%;background:#16161e;color:#c8c8d4;overflow-y:auto;overflow-x:hidden;padding:.75rem 0 0;border-right:1px solid #2a2a3e;display:flex;flex-direction:column;position:relative;flex-shrink:0}@media(max-width:1023px){.binder.svelte-n9abx8{position:fixed;top:0;left:0;height:100%;width:min(80vw,320px)!important;min-width:unset!important;z-index:350;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom));box-shadow:4px 0 24px #00000059}}.binder.svelte-n9abx8::-webkit-scrollbar{width:4px}.binder.svelte-n9abx8::-webkit-scrollbar-track{background:transparent}.binder.svelte-n9abx8::-webkit-scrollbar-thumb{background:#2a2a3e;border-radius:2px}.doc-drag-handle.svelte-n9abx8{flex-shrink:0}.resize-handle.svelte-n9abx8{position:absolute;top:0;right:0;width:5px;height:100%;cursor:col-resize;z-index:10;background:transparent;transition:background .15s}.resize-handle.svelte-n9abx8:hover,.resize-handle.svelte-n9abx8:active{background:#6b78dd44}.book-switcher.svelte-n9abx8{position:relative;padding:.375rem .625rem .5rem;border-bottom:1px solid #1e1e2e;margin-bottom:.375rem}.switcher-row.svelte-n9abx8{display:flex;align-items:center;gap:.125rem}.switcher-trigger.svelte-n9abx8{flex:1;min-width:0;display:flex;align-items:center;gap:.4rem;background:#1e1e2e;border:1px solid #2a2a3e;border-radius:6px;color:#c8c8d4;font-size:.8125rem;font-weight:600;padding:.35rem .5rem;cursor:pointer;outline:none;transition:border-color .12s,background .12s;letter-spacing:.01em;text-align:left;font-family:inherit}.switcher-trigger.svelte-n9abx8:hover{border-color:#3a3a5a;background:#22223a}.switcher-trigger.open.svelte-n9abx8{border-color:#6b78dd;background:#1e1e35}.switcher-book-icon.svelte-n9abx8{flex-shrink:0;color:#5a5a7a}.switcher-name.svelte-n9abx8{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.switcher-chevron.svelte-n9abx8{flex-shrink:0;color:#5a5a7a;transition:transform .15s ease}.switcher-chevron.open.svelte-n9abx8{transform:rotate(180deg)}.switcher-actions.svelte-n9abx8{display:flex;align-items:center;gap:0;flex-shrink:0;margin-left:.125rem}.book-dropdown.svelte-n9abx8{position:absolute;top:calc(100% - 2px);left:.375rem;right:.375rem;background:#1c1c2e;border:1px solid #2e2e48;border-radius:8px;box-shadow:0 8px 24px #00000073;z-index:100;overflow:hidden;animation:svelte-n9abx8-dropdown-appear .1s ease}@keyframes svelte-n9abx8-dropdown-appear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.book-option.svelte-n9abx8{display:flex;align-items:center}.book-option.active.svelte-n9abx8 .book-option-name:where(.svelte-n9abx8){color:#9ba8ff;background:#252547}.book-option-name.svelte-n9abx8{flex:1;min-width:0;display:flex;align-items:center;gap:.5rem;text-align:left;background:none;border:none;color:#c8c8d4;font-size:.8125rem;font-weight:500;padding:.5rem .75rem;cursor:pointer;font-family:inherit;transition:background .1s,color .1s;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.book-option-name.svelte-n9abx8:hover{background:#22223a;color:#e0e0f0}.book-option-name.svelte-n9abx8 svg:where(.svelte-n9abx8){flex-shrink:0;opacity:.45}.dropdown-divider.svelte-n9abx8{height:1px;background:#2a2a3e;margin:.125rem 0}.dropdown-new-book.svelte-n9abx8{width:100%;display:flex;align-items:center;gap:.5rem;text-align:left;background:none;border:none;color:#6b6b8a;font-size:.8rem;font-weight:500;padding:.5rem .75rem;cursor:pointer;font-family:inherit;transition:color .1s,background .1s}.dropdown-new-book.svelte-n9abx8:hover{color:#c8c8d4;background:#22223a}.book-rename-input.svelte-n9abx8{flex:1;min-width:0;background:#1e1e2e;border:1px solid #6b78dd;border-radius:6px;color:#e0e0f0;font-size:.8125rem;font-weight:600;letter-spacing:.01em;padding:.35rem .5rem;outline:none;box-shadow:0 0 0 2px #6b78dd4d;font-family:inherit;animation:svelte-n9abx8-book-rename-appear .18s ease}@keyframes svelte-n9abx8-book-rename-appear{0%{box-shadow:0 0 0 5px #6b78dd80}to{box-shadow:0 0 0 2px #6b78dd4d}}.meta-btn.svelte-n9abx8{background:none;border:none;color:#4a4a6a;padding:.3rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s}.meta-btn.svelte-n9abx8:hover{color:#c8c8d4;background:#22223a}.meta-btn-del.svelte-n9abx8:hover,.meta-btn-del-active.svelte-n9abx8{color:#ff6b6b!important;background:#2e1e1e!important}.book-archive-confirm.svelte-n9abx8{display:flex;align-items:center;gap:.375rem;padding:.375rem .5rem;background:#1e1212;border:1px solid #5a2020;border-radius:6px;animation:svelte-n9abx8-confirm-appear .12s ease}@keyframes svelte-n9abx8-confirm-appear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.confirm-msg.svelte-n9abx8{font-size:.75rem;color:#c88;flex:1;-webkit-user-select:none;user-select:none}.confirm-btn.svelte-n9abx8{background:none;border:1px solid transparent;border-radius:4px;font-size:.72rem;font-weight:600;padding:.2rem .5rem;cursor:pointer;transition:color .1s,background .1s,border-color .1s;flex-shrink:0}.confirm-yes.svelte-n9abx8{color:#ff6b6b;border-color:#5a2020}.confirm-yes.svelte-n9abx8:hover{background:#3a1515;border-color:#ff6b6b;color:#f99}.confirm-no.svelte-n9abx8{color:#6b6b8a;border-color:#2a2a3e}.confirm-no.svelte-n9abx8:hover{background:#22223a;color:#c8c8d4}.book-actions.svelte-n9abx8{display:flex;align-items:center;gap:.375rem;padding:0 .75rem .625rem;border-bottom:1px solid #1e1e2e;margin-bottom:.5rem}.action-btn.svelte-n9abx8{display:flex;align-items:center;gap:.3rem;background:none;border:1px solid #2a2a3e;color:#6b6b8a;font-size:.75rem;padding:.3rem .6rem;border-radius:4px;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.action-btn.svelte-n9abx8:hover{color:#c8c8d4;border-color:#4a4a6a;background:#22223a}.chapter-list.svelte-n9abx8{list-style:none;flex:1;display:flex;flex-direction:column;gap:.1rem;padding:0 .5rem}.chapter-row.svelte-n9abx8{display:flex;align-items:center;border-radius:5px;transition:background .12s}.chapter-row.svelte-n9abx8:hover{background:#22223a}.drag-handle.svelte-n9abx8{flex-shrink:0;color:transparent;width:16px;display:flex;align-items:center;justify-content:center;cursor:grab;-webkit-user-select:none;user-select:none;transition:color .12s;padding:0 1px}.chapter-row.svelte-n9abx8:hover .drag-handle:where(.svelte-n9abx8),.doc-item-wrap.svelte-n9abx8:hover .drag-handle:where(.svelte-n9abx8){color:#4a4a6a}.drag-handle.svelte-n9abx8:active{cursor:grabbing}.chapter.drag-over-before.svelte-n9abx8,li.drag-over-before.svelte-n9abx8{box-shadow:inset 0 2px #6b78dd}.chapter.drag-over-after.svelte-n9abx8,li.drag-over-after.svelte-n9abx8{box-shadow:inset 0 -2px #6b78dd}.dragging.svelte-n9abx8{opacity:.4}.chapter-toggle.svelte-n9abx8{flex:1;min-width:0;text-align:left;background:none;border:none;color:#c8c8d4;font-size:.875rem;padding:.375rem .375rem .375rem .625rem;border-radius:5px;cursor:pointer;display:flex;align-items:center;gap:.375rem;font-weight:500;transition:background .12s}.chapter-name.svelte-n9abx8{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.chevron.svelte-n9abx8{display:flex;align-items:center;color:#6b6b8a;transition:transform .15s ease;flex-shrink:0}.chevron.open.svelte-n9abx8{transform:rotate(90deg)}.chapter-btns.svelte-n9abx8{display:flex;align-items:center;gap:0;flex-shrink:0;opacity:0;pointer-events:none;transition:opacity .12s;padding-right:.25rem}.chapter-row.svelte-n9abx8:hover .chapter-btns:where(.svelte-n9abx8){opacity:1;pointer-events:auto}.row-icon-btn.svelte-n9abx8{background:none;border:none;color:#6b6b8a;font-size:1rem;line-height:1;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:3px;cursor:pointer;transition:color .12s,background .12s;flex-shrink:0}.row-icon-btn.svelte-n9abx8:hover{color:#c8c8d4;background:#2e2e4a}.row-del-btn.svelte-n9abx8:hover{color:#ff6b6b!important;background:#2e1e1e!important}.doc-list.svelte-n9abx8{list-style:none;margin:.1rem 0 .25rem 1.375rem;display:flex;flex-direction:column;gap:.05rem}.doc-item-wrap.svelte-n9abx8{display:flex;align-items:center;border-radius:4px;overflow:hidden}.doc-item-wrap.svelte-n9abx8:hover{background:#22223a}.doc-item-wrap.active.svelte-n9abx8{background:#252547}.doc-item.svelte-n9abx8{flex:1;min-width:0;text-align:left;background:none;border:none;color:#8888a8;font-size:.8125rem;padding:.3125rem .25rem .3125rem .5rem;cursor:pointer;display:flex;align-items:center;gap:.375rem;transition:color .12s;overflow:hidden}.doc-item-wrap.svelte-n9abx8:hover .doc-item:where(.svelte-n9abx8){color:#c8c8d4}.doc-item-wrap.active.svelte-n9abx8 .doc-item:where(.svelte-n9abx8){color:#9da8ff}.doc-icon.svelte-n9abx8{flex-shrink:0;color:#4a4a6a}.doc-item-wrap.active.svelte-n9abx8 .doc-icon:where(.svelte-n9abx8){color:#6b78dd}.doc-del-btn.svelte-n9abx8{flex-shrink:0;background:none;border:none;color:transparent;font-size:.9rem;line-height:1;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .12s,background .12s;border-radius:3px}.doc-item-wrap.svelte-n9abx8:hover .doc-del-btn:where(.svelte-n9abx8){color:#7a3a3a}.doc-item-wrap.svelte-n9abx8:hover .doc-del-btn:where(.svelte-n9abx8):hover{color:#ff6b6b;background:#2e1e1e}.doc-editing-row.svelte-n9abx8{display:flex;align-items:center;gap:.375rem;padding:.25rem .375rem .25rem .5rem}.doc-new.svelte-n9abx8{width:100%;text-align:left;background:none;border:none;color:#4a4a6a;font-size:.75rem;padding:.25rem .5rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:.35rem;transition:color .12s,background .12s}.doc-new.svelte-n9abx8:hover{color:#8888a8;background:#1e1e2e}.rename-input.svelte-n9abx8{background:#1e1e2e;border:1px solid #4a4a7a;border-radius:3px;color:#e0e0f0;font-size:inherit;font-family:inherit;font-weight:inherit;padding:.1rem .3rem;outline:none;width:100%;min-width:0}.binder-footer.svelte-n9abx8{margin-top:auto;padding:.75rem 1rem 1rem;border-top:1px solid #2a2a3e}.footer-btn.svelte-n9abx8{width:100%;background:none;border:1px solid #2a2a3e;color:#6b6b8a;font-size:.8125rem;padding:.5rem;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.375rem;transition:color .12s,border-color .12s,background .12s}.footer-btn.svelte-n9abx8:hover{color:#c8c8d4;border-color:#4a4a6a;background:#22223a}.editor-area.svelte-nmz6rb{flex:1;height:100%;overflow-y:auto;background:#fafaf8;display:flex;flex-direction:column}.editor-area.svelte-nmz6rb::-webkit-scrollbar{width:6px}.editor-area.svelte-nmz6rb::-webkit-scrollbar-track{background:transparent}.editor-area.svelte-nmz6rb::-webkit-scrollbar-thumb{background:#ddddd8;border-radius:3px}.empty-state.svelte-nmz6rb{flex:1;display:flex;align-items:center;justify-content:center}.empty-inner.svelte-nmz6rb{display:flex;flex-direction:column;align-items:center;gap:1rem;color:#c0c0bc;font-size:.9375rem}.editor-wrapper.svelte-nmz6rb{flex:1;display:flex;flex-direction:column;max-width:720px;width:100%;margin:0 auto;padding:1.5rem 3rem 6rem}.status-bar.svelte-nmz6rb{display:flex;justify-content:space-between;align-items:center;min-height:1.75rem;margin-bottom:.5rem;gap:1rem}.status-wordcount.svelte-nmz6rb{font-size:.75rem;font-weight:500;color:#b0b0ab;font-variant-numeric:tabular-nums}.status.svelte-nmz6rb{font-size:.75rem;font-weight:500;letter-spacing:.025em;display:inline-flex;align-items:center;gap:.3125rem;transition:color .2s ease}.status-icon.svelte-nmz6rb{width:12px;height:12px;flex-shrink:0}.status-spinner.svelte-nmz6rb{display:inline-block;width:10px;height:10px;border:1.5px solid rgba(107,120,221,.25);border-top-color:var(--color-brand);border-radius:50%;flex-shrink:0;animation:svelte-nmz6rb-editor-spin .7s linear infinite}@keyframes svelte-nmz6rb-editor-spin{to{transform:rotate(360deg)}}.status.saved.svelte-nmz6rb{color:#3da87d}.status.saving.svelte-nmz6rb{color:var(--color-brand)}.status.unsaved.svelte-nmz6rb{color:#e8940a}.status.error.svelte-nmz6rb{color:#c0534e}.editor-paper.svelte-nmz6rb{display:flex;flex-direction:column}.title-input.svelte-nmz6rb{font-family:Georgia,Times New Roman,serif;font-size:2.5rem;font-weight:700;line-height:1.2;color:#1a1a1a;background:transparent;border:none;outline:none;resize:none;width:100%;overflow:hidden;padding:0;caret-color:#5a70ff}.title-input.svelte-nmz6rb::placeholder{color:#d4d4d0}.divider.svelte-nmz6rb{height:1px;background:var(--color-bg-hover);margin:1.25rem 0}.body-wrapper.svelte-nmz6rb{position:relative;width:100%}.highlight-overlay.svelte-nmz6rb{position:absolute;top:0;left:0;width:100%;pointer-events:none;font-family:Georgia,Times New Roman,serif;font-size:1.0625rem;line-height:1.85;color:transparent;white-space:pre-wrap;word-break:break-word;z-index:1;padding:0;border:none;margin:0}.body-input.svelte-nmz6rb{position:relative;z-index:2;font-family:Georgia,Times New Roman,serif;font-size:1.0625rem;line-height:1.85;color:#2c2c2c;background:transparent;border:none;outline:none;width:100%;min-height:60vh;padding:0;caret-color:#5a70ff;white-space:pre-wrap;word-break:break-word}.body-input.svelte-nmz6rb:empty:before{content:attr(data-placeholder);color:#d4d4d0;pointer-events:none}.hl-filler{background:#f5c8004d;border-radius:2px}.hl-repeated-word{background:#ff640040;border-radius:2px}.hl-repeated-phrase{background:#ff3c3c38;border-radius:2px}.hl-backend{background:#8b5cf62e;border-radius:2px;text-decoration:underline wavy rgba(139,92,246,.6)}.mention{display:inline-block;border-radius:3px;padding:0 4px 1px;font-size:.9375em;font-family:inherit;font-weight:500;line-height:inherit;cursor:default;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background .1s}.mention-character{background:#eceeff;color:#5a70ff;border:1px solid #d0d5ff}.mention-character:hover{background:#dfe3ff}.mention-location{background:#e8f5ee;color:#3a9a6a;border:1px solid #b8dfc8}.mention-location:hover{background:#d4eede}.mention-dropdown.svelte-nmz6rb{position:fixed;z-index:1000;background:#fff;border:1px solid #e0e0dc;border-radius:8px;box-shadow:0 4px 20px #0000001f,0 1px 4px #0000000f;padding:4px;min-width:220px;max-width:320px}.mention-item.svelte-nmz6rb{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:none;background:transparent;border-radius:5px;cursor:pointer;text-align:left;font-size:.875rem;color:#2c2c2c;transition:background .1s}.mention-item.svelte-nmz6rb:hover,.mention-item.selected.svelte-nmz6rb{background:#f0f0f8}.mention-item-icon.svelte-nmz6rb{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;flex-shrink:0}.mention-item-icon.icon-character.svelte-nmz6rb{background:#eceeff;color:#5a70ff}.mention-item-icon.icon-location.svelte-nmz6rb{background:#e8f5ee;color:#3a9a6a}.mention-item-name.svelte-nmz6rb{font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-item-sub.svelte-nmz6rb{font-size:.75rem;color:#888;flex-shrink:0;text-transform:capitalize}.mention-divider.svelte-nmz6rb{height:1px;background:#f0f0ec;margin:3px 4px}.mention-item-create.svelte-nmz6rb{color:#666}.mention-item-create.svelte-nmz6rb:hover,.mention-item-create.selected.svelte-nmz6rb{background:#f5f5f0}.icon-create.svelte-nmz6rb{background:#f5f5f0;color:#888}.mention-item-create-label.svelte-nmz6rb{font-size:.8125rem;color:#666;flex:1}.mention-item-create-label.svelte-nmz6rb strong{color:#2c2c2c;font-weight:600}.entity-popover.svelte-nmz6rb{position:fixed;z-index:1001;background:#fff;border:1px solid #e0e0dc;border-radius:8px;box-shadow:0 6px 24px #00000024,0 1px 4px #00000012;padding:12px 14px;min-width:200px;max-width:280px;pointer-events:none}.popover-header.svelte-nmz6rb{display:flex;align-items:center;gap:7px;margin-bottom:6px}.popover-type-icon.svelte-nmz6rb{display:flex;align-items:center;flex-shrink:0}.popover-type-icon.character.svelte-nmz6rb{color:#5a70ff}.popover-type-icon.location.svelte-nmz6rb{color:#3a9a6a}.popover-name.svelte-nmz6rb{font-size:.9375rem;font-weight:600;color:#1a1a1a;flex:1;min-width:0}.popover-status-badge.svelte-nmz6rb{font-size:.6875rem;font-weight:500;padding:1px 6px;border-radius:10px;text-transform:capitalize;background:#f0f0ec;color:#666;flex-shrink:0}.popover-meta.svelte-nmz6rb{font-size:.75rem;color:#888;text-transform:capitalize;margin-bottom:6px}.popover-bio.svelte-nmz6rb{font-size:.8125rem;color:#4a4a4a;line-height:1.5}@media(max-width:1023px){.editor-wrapper.svelte-nmz6rb{max-width:100%;padding:1rem 1.25rem 4rem}}@media(max-width:767px){.editor-wrapper.svelte-nmz6rb{padding:1.25rem 1rem 3rem}.title-input.svelte-nmz6rb{font-size:1.75rem;font-size:max(1.75rem,16px)}.body-input.svelte-nmz6rb,.highlight-overlay.svelte-nmz6rb{font-size:1rem;font-size:max(1rem,16px);line-height:1.75}.status-bar.svelte-nmz6rb{margin-bottom:.375rem}.status-wordcount.svelte-nmz6rb{font-size:.6875rem}}.archive-panel.svelte-c3grcm{flex:1;background:#12121a;color:#c8c8d4;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.archive-header.svelte-c3grcm{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2a2a3e;padding-bottom:.875rem}.archive-title.svelte-c3grcm{font-size:1rem;font-weight:600;color:#e0e0f0;margin:0}.close-btn.svelte-c3grcm{background:none;border:none;color:#6b6b8a;font-size:1rem;cursor:pointer;padding:.2rem .4rem;border-radius:4px;transition:color .12s,background .12s}.close-btn.svelte-c3grcm:hover{color:#c8c8d4;background:#22223a}.state-msg.svelte-c3grcm{color:#6b6b8a;font-size:.875rem;text-align:center;padding:2rem 0}.section-label.svelte-c3grcm{font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b6b8a;margin:0 0 .5rem}.item-list.svelte-c3grcm{list-style:none;display:flex;flex-direction:column;gap:.25rem}.item-row.svelte-c3grcm{display:flex;align-items:center;gap:.5rem;background:#1a1a28;border:1px solid #2a2a3e;border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.item-icon.svelte-c3grcm{font-size:.9rem;flex-shrink:0;opacity:.6}.item-title.svelte-c3grcm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c8c8d4}.item-date.svelte-c3grcm{font-size:.75rem;color:#4a4a6a;flex-shrink:0}.action-btn.svelte-c3grcm{background:none;border:1px solid transparent;border-radius:4px;font-size:.75rem;padding:.2rem .5rem;cursor:pointer;flex-shrink:0;transition:background .12s,border-color .12s,color .12s}.action-btn.restore.svelte-c3grcm{color:#7ab8f5;border-color:#2a3a5a}.action-btn.restore.svelte-c3grcm:hover{background:#1a2a40;border-color:#7ab8f5}.action-btn.delete.svelte-c3grcm{color:#7a3a3a;border-color:transparent}.action-btn.delete.svelte-c3grcm:hover{color:#ff6b6b;background:#2e1e1e;border-color:#7a3a3a}.dialog-backdrop.svelte-c3grcm{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.dialog.svelte-c3grcm{background:#1e1e30;border:1px solid #3a3a5a;border-radius:10px;padding:1.5rem;max-width:360px;width:90%}.dialog-msg.svelte-c3grcm{font-size:.9375rem;color:#c8c8d4;margin:0 0 1.25rem;line-height:1.5}.dialog-actions.svelte-c3grcm{display:flex;justify-content:flex-end;gap:.75rem}.dialog-btn.svelte-c3grcm{border-radius:5px;font-size:.875rem;padding:.45rem 1rem;cursor:pointer;transition:background .12s,border-color .12s}.dialog-btn.cancel.svelte-c3grcm{background:none;border:1px solid #3a3a5a;color:#8888a8}.dialog-btn.cancel.svelte-c3grcm:hover{background:#22223a;color:#c8c8d4}.dialog-btn.delete.svelte-c3grcm{background:#5a1a1a;border:1px solid #7a3a3a;color:#faa}.dialog-btn.delete.svelte-c3grcm:hover{background:#7a1a1a;border-color:#ff6b6b}@media(max-width:1023px){.archive-panel.svelte-c3grcm{padding:1.25rem}.close-btn.svelte-c3grcm{display:none}}@media(max-width:767px){.archive-panel.svelte-c3grcm{padding:1rem}.close-btn.svelte-c3grcm{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.action-btn.svelte-c3grcm{min-height:44px;padding:.5rem .75rem;font-size:.875rem}.dialog-btn.svelte-c3grcm{min-height:44px;font-size:.9375rem;padding:.5rem 1.25rem}.item-row.svelte-c3grcm{min-height:52px;gap:.5rem;flex-wrap:wrap}}.book-metadata.svelte-lt8o9g{flex:1;display:flex;flex-direction:column;overflow:hidden;color:#3a3a36}.meta-scroll.svelte-lt8o9g{flex:1;overflow-y:auto;scrollbar-gutter:stable}.meta-content.svelte-lt8o9g{max-width:680px;margin:0 auto;padding:2.5rem 2rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.meta-loading.svelte-lt8o9g,.meta-error.svelte-lt8o9g{padding:3rem 2rem;text-align:center;font-size:.875rem;color:#999}.meta-error.svelte-lt8o9g{color:#c44}.hero-section.svelte-lt8o9g{display:flex;gap:1.75rem;align-items:flex-start}.cover-area.svelte-lt8o9g{flex-shrink:0}.cover-placeholder.svelte-lt8o9g{width:140px;height:200px;border:2px dashed #d4d4d0;border-radius:8px;background:#f5f5f2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;color:#b0b0ab;font-size:.75rem;font-weight:500;transition:border-color .15s,color .15s,background .15s}.cover-placeholder.svelte-lt8o9g:hover{border-color:#a0a09a;color:#6a6a66;background:#eeeeeb}.cover-preview.svelte-lt8o9g{position:relative;width:140px;height:200px;border-radius:8px;overflow:hidden;box-shadow:0 2px 12px #0000001a}.cover-img.svelte-lt8o9g{width:100%;height:100%;object-fit:cover}.cover-overlay.svelte-lt8o9g{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;gap:.5rem;opacity:0;transition:opacity .15s}.cover-preview.svelte-lt8o9g:hover .cover-overlay:where(.svelte-lt8o9g){opacity:1}.cover-action.svelte-lt8o9g{background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:6px;color:#fff;padding:.4rem;cursor:pointer;display:flex;transition:background .12s}.cover-action.svelte-lt8o9g:hover{background:#ffffff40}.cover-action.danger.svelte-lt8o9g:hover{background:#dc323266}.hero-info.svelte-lt8o9g{flex:1;min-width:0;display:flex;flex-direction:column;gap:.5rem;padding-top:.25rem}.meta-title-wrap.svelte-lt8o9g{display:flex;align-items:center;gap:.5rem}.meta-title.svelte-lt8o9g{font-size:1.625rem;font-weight:700;color:#1a1a18;margin:0;letter-spacing:-.02em;line-height:1.25;cursor:default}.rename-btn.svelte-lt8o9g{background:none;border:none;color:#c0c0bb;padding:.3rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;flex-shrink:0;opacity:0;transition:color .12s,background .12s,opacity .12s}.meta-title-wrap.svelte-lt8o9g:hover .rename-btn:where(.svelte-lt8o9g){opacity:1}.rename-btn.svelte-lt8o9g:hover{color:#6a6a66;background:#eeeeeb}.title-input.svelte-lt8o9g{background:#fff;border:1px solid #6b78dd;border-radius:6px;color:#1a1a18;font-size:1.625rem;font-weight:700;letter-spacing:-.02em;padding:.15rem .5rem;outline:none;width:100%;box-shadow:0 0 0 2px #6b78dd40}.hero-sub.svelte-lt8o9g{display:flex;flex-direction:column;gap:.15rem}.subtitle-text.svelte-lt8o9g{font-size:.9375rem;color:#6a6a66;font-style:italic}.author-text.svelte-lt8o9g{font-size:.8125rem;color:#999}.status-row.svelte-lt8o9g{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.25rem}.status-badge.svelte-lt8o9g{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .6rem;border-radius:99px;border:1px solid}.genre-badge.svelte-lt8o9g{font-size:.6875rem;font-weight:500;color:#6a6a66;background:#f0f0ed;padding:.2rem .6rem;border-radius:99px;border:1px solid #e0e0dc}.date-text.svelte-lt8o9g{font-size:.75rem;color:#b0b0ab}.stats-bar.svelte-lt8o9g{display:flex;gap:.75rem;flex-wrap:wrap}.stat-card.svelte-lt8o9g{flex:1;min-width:100px;background:#f8f8f6;border:1px solid #e8e8e4;border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.15rem;transition:border-color .15s}.stat-card.words-card.svelte-lt8o9g{border-bottom:3px solid #6b78dd}.stat-value.svelte-lt8o9g{font-size:1.25rem;font-weight:700;color:#1a1a18;letter-spacing:-.01em}.stat-label.svelte-lt8o9g{font-size:.6875rem;color:#999;text-transform:uppercase;letter-spacing:.04em;font-weight:500}.progress-card.svelte-lt8o9g{min-width:160px}.progress-header.svelte-lt8o9g{display:flex;align-items:baseline;gap:.35rem}.progress-track.svelte-lt8o9g{width:100%;height:8px;background:#e8e8e4;border-radius:4px;overflow:hidden;margin-top:.5rem}.progress-fill.svelte-lt8o9g{height:100%;background:linear-gradient(90deg,#6b78dd,#7e8be3);border-radius:4px;transition:width .4s ease}.progress-fill.complete.svelte-lt8o9g{background:linear-gradient(90deg,#5bb878,#6fcf87)}.save-indicator.svelte-lt8o9g{font-size:.6875rem;color:#9998a0;text-align:right;font-style:italic;display:flex;align-items:center;justify-content:flex-end;gap:.35rem}.save-dot.svelte-lt8o9g{width:5px;height:5px;border-radius:50%;background:#9998a0;animation:svelte-lt8o9g-save-pulse 1.2s ease-in-out infinite}@keyframes svelte-lt8o9g-save-pulse{0%,to{opacity:.4}50%{opacity:1}}.meta-section.svelte-lt8o9g{border:1px solid #e8e8e4;border-radius:8px;overflow:hidden;background:#fff}.section-toggle.svelte-lt8o9g{width:100%;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:none;border:none;cursor:pointer;font-size:.8125rem;font-weight:600;color:#3a3a36;text-align:left;transition:background .1s}.section-toggle.svelte-lt8o9g:hover{background:#fafaf8}.chevron.svelte-lt8o9g{transition:transform .15s;flex-shrink:0;color:#b0b0ab}.chevron.open.svelte-lt8o9g{transform:rotate(90deg)}.section-count.svelte-lt8o9g{font-size:.6875rem;font-weight:500;color:#999;background:#f0f0ed;padding:.1rem .45rem;border-radius:99px;margin-left:auto}.section-body.svelte-lt8o9g{padding:0 1rem 1rem;display:flex;flex-direction:column;gap:.75rem}.field-grid.svelte-lt8o9g{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.field.svelte-lt8o9g{display:flex;flex-direction:column;gap:.25rem}.field-label.svelte-lt8o9g{font-size:.6875rem;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.04em}.field-input.svelte-lt8o9g{background:#fafaf8;border:1px solid #e0e0dc;border-radius:6px;padding:.45rem .6rem;font-size:.8125rem;color:#3a3a36;outline:none;transition:border-color .12s,box-shadow .12s;font-family:inherit}.field-input.svelte-lt8o9g:focus{border-color:#6b78dd;box-shadow:0 0 0 2px #6b78dd26}.field-input.svelte-lt8o9g::placeholder{color:#c0c0bb}select.field-input.svelte-lt8o9g{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem}.field-textarea.svelte-lt8o9g{background:#fafaf8;border:1px solid #e0e0dc;border-radius:6px;padding:.6rem .75rem;font-size:.8125rem;color:#3a3a36;outline:none;resize:vertical;font-family:inherit;line-height:1.6;transition:border-color .12s,box-shadow .12s}.field-textarea.svelte-lt8o9g:focus{border-color:#6b78dd;box-shadow:0 0 0 2px #6b78dd26}.field-textarea.svelte-lt8o9g::placeholder{color:#c0c0bb}.themes-list.svelte-lt8o9g{display:flex;flex-wrap:wrap;gap:.4rem}.theme-tag.svelte-lt8o9g{display:inline-flex;align-items:center;gap:.3rem;background:#f0f0ed;border:1px solid #e0e0dc;border-radius:99px;padding:.2rem .6rem .2rem .75rem;font-size:.75rem;color:#4a4a46;font-weight:500}.tag-remove.svelte-lt8o9g{background:none;border:none;color:#b0b0ab;cursor:pointer;font-size:.875rem;line-height:1;padding:0;display:flex;transition:color .1s}.tag-remove.svelte-lt8o9g:hover{color:#c44}.theme-add-row.svelte-lt8o9g{display:flex;gap:.5rem}.theme-input.svelte-lt8o9g{flex:1}.char-list.svelte-lt8o9g{display:flex;flex-direction:column;gap:.5rem}.char-card.svelte-lt8o9g{background:#fafaf8;border:1px solid #e8e8e4;border-radius:8px;padding:.75rem 1rem}.char-header.svelte-lt8o9g{display:flex;align-items:center;gap:.6rem}.char-avatar.svelte-lt8o9g{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#6b78dd,#8b6bdd);color:#fff;font-weight:700;font-size:.8125rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.char-info.svelte-lt8o9g{flex:1;min-width:0;display:flex;flex-direction:column}.char-name.svelte-lt8o9g{font-size:.8125rem;font-weight:600;color:#1a1a18}.char-role.svelte-lt8o9g{font-size:.6875rem;color:#999}.char-actions.svelte-lt8o9g{display:flex;gap:.25rem;opacity:0;transition:opacity .12s}.char-card.svelte-lt8o9g:hover .char-actions:where(.svelte-lt8o9g){opacity:1}.char-description.svelte-lt8o9g{font-size:.75rem;color:#6a6a66;line-height:1.5;margin-top:.5rem;padding-left:2.6rem}.char-form.svelte-lt8o9g{display:flex;flex-direction:column;gap:.5rem;background:#fafaf8;border:1px solid #e0e0dc;border-radius:8px;padding:.75rem 1rem}.char-desc.svelte-lt8o9g{min-height:60px}.char-form-actions.svelte-lt8o9g{display:flex;gap:.5rem;justify-content:flex-end}.btn-sm.svelte-lt8o9g{background:#3a3a36;color:#fff;border:none;border-radius:6px;padding:.35rem .8rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .12s}.btn-sm.svelte-lt8o9g:hover{background:#1a1a18}.btn-sm.svelte-lt8o9g:disabled{opacity:.4;cursor:default}.btn-sm.secondary.svelte-lt8o9g{background:transparent;color:#6a6a66;border:1px solid #e0e0dc}.btn-sm.secondary.svelte-lt8o9g:hover{background:#f0f0ed}.btn-add.svelte-lt8o9g{display:inline-flex;align-items:center;gap:.4rem;background:none;border:1px dashed #d4d4d0;border-radius:6px;padding:.5rem .8rem;font-size:.75rem;font-weight:500;color:#999;cursor:pointer;transition:border-color .12s,color .12s;align-self:flex-start}.btn-add.svelte-lt8o9g:hover{border-color:#999;color:#6a6a66}.icon-btn.svelte-lt8o9g{background:none;border:none;color:#b0b0ab;padding:.25rem;border-radius:4px;cursor:pointer;display:flex;transition:color .1s,background .1s}.icon-btn.svelte-lt8o9g:hover{color:#6a6a66;background:#eeeeeb}.icon-btn.danger.svelte-lt8o9g:hover{color:#c44;background:#fff0f0}.btn-danger-inline.svelte-lt8o9g{font-size:.7rem;padding:.2rem .5rem;background:#dc2626;color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-danger-inline.svelte-lt8o9g:hover{background:#b91c1c}.btn-ghost-inline.svelte-lt8o9g{font-size:.7rem;padding:.2rem .5rem;background:none;color:#6a6a66;border:1px solid #d0d0cb;border-radius:4px;cursor:pointer}.btn-ghost-inline.svelte-lt8o9g:hover{background:#eeeeeb}.char-add-row.svelte-lt8o9g{display:flex;gap:.5rem;flex-wrap:wrap}.char-link-picker.svelte-lt8o9g{background:#fafaf8;border:1px solid #e0e0dc;border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.5rem}.link-picker-header.svelte-lt8o9g{display:flex;align-items:center;justify-content:space-between}.link-picker-title.svelte-lt8o9g{font-size:.75rem;font-weight:600;color:#4a4a46;text-transform:uppercase;letter-spacing:.04em}.link-search-input.svelte-lt8o9g{width:100%;box-sizing:border-box}.link-picker-list.svelte-lt8o9g{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;max-height:200px;overflow-y:auto}.link-picker-item.svelte-lt8o9g{display:flex;align-items:center;gap:.6rem;width:100%;background:none;border:1px solid transparent;border-radius:6px;padding:.4rem .5rem;cursor:pointer;text-align:left;transition:background .1s,border-color .1s}.link-picker-item.svelte-lt8o9g:hover{background:#f0f0ed;border-color:#e0e0dc}.link-picker-item.svelte-lt8o9g:hover .link-check-icon:where(.svelte-lt8o9g){opacity:1}.link-avatar.svelte-lt8o9g{width:26px;height:26px;font-size:.6875rem}.link-item-info.svelte-lt8o9g{flex:1;min-width:0;display:flex;flex-direction:column}.link-check-icon.svelte-lt8o9g{color:#6b78dd;opacity:0;flex-shrink:0;transition:opacity .1s}.link-picker-empty.svelte-lt8o9g{font-size:.75rem;color:#b0b0ab;text-align:center;padding:.5rem 0;margin:0}.export-bar.svelte-lt8o9g{display:flex;justify-content:flex-end;padding:0 0 .25rem}.export-btn.svelte-lt8o9g{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.78rem;font-weight:500;color:#c8c8be;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s}.export-btn.svelte-lt8o9g:hover:not(:disabled){background:#ffffff14;border-color:#ffffff26}.export-btn.svelte-lt8o9g:disabled{opacity:.5;cursor:not-allowed}@keyframes svelte-lt8o9g-spin{to{transform:rotate(360deg)}}.export-btn.svelte-lt8o9g .spin{animation:svelte-lt8o9g-spin .8s linear infinite}@media(max-width:1023px){.meta-content.svelte-lt8o9g{padding:1.5rem 1.25rem 2rem}.field-grid.svelte-lt8o9g{grid-template-columns:1fr}}@media(max-width:767px){.meta-content.svelte-lt8o9g{padding:1.25rem 1rem 2rem}.hero-section.svelte-lt8o9g{flex-direction:column;gap:1rem}.cover-placeholder.svelte-lt8o9g,.cover-preview.svelte-lt8o9g{width:100%;height:160px}.cover-action.svelte-lt8o9g{min-width:44px;min-height:44px;justify-content:center}.field-input.svelte-lt8o9g,.field-textarea.svelte-lt8o9g,.title-input.svelte-lt8o9g{font-size:1rem}.section-toggle.svelte-lt8o9g{min-height:48px;padding:.875rem 1rem}.rename-btn.svelte-lt8o9g{opacity:1;min-width:44px;min-height:44px;justify-content:center}.btn-sm.svelte-lt8o9g{min-height:44px;font-size:.9375rem;padding:.5rem .875rem}.btn-add.svelte-lt8o9g{min-height:44px;font-size:.875rem}.icon-btn.svelte-lt8o9g{min-width:44px;min-height:44px;justify-content:center}.char-actions.svelte-lt8o9g{opacity:1}.export-btn.svelte-lt8o9g{min-height:44px;font-size:.875rem;padding:.5rem 1rem}.tag-remove.svelte-lt8o9g{min-width:24px;min-height:24px;font-size:1rem}}.metrics-panel.svelte-117r6mh{padding:1.5rem 2rem;overflow-y:auto;height:100%;max-width:900px;margin:0 auto}.metrics-header.svelte-117r6mh{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:.75rem}.metrics-header.svelte-117r6mh h2:where(.svelte-117r6mh){font-size:1.125rem;font-weight:600;color:#2c2c2c;margin:0}.header-controls.svelte-117r6mh{display:flex;align-items:center;gap:.75rem}.tab-group.svelte-117r6mh,.range-group.svelte-117r6mh{display:flex;border:1px solid #e0e0dc;border-radius:6px;overflow:hidden}.tab-btn.svelte-117r6mh,.range-btn.svelte-117r6mh{background:none;border:none;padding:.3rem .75rem;font-size:.75rem;color:#7a7a76;cursor:pointer;transition:all .12s}.tab-btn.active.svelte-117r6mh,.range-btn.active.svelte-117r6mh{background:#eef;color:#6b78dd;font-weight:600}.tab-btn.svelte-117r6mh:hover,.range-btn.svelte-117r6mh:hover{background:#f0f0ee}.close-btn.svelte-117r6mh{background:none;border:none;font-size:1.25rem;color:#b0b0ab;cursor:pointer;padding:0 .25rem;line-height:1}.close-btn.svelte-117r6mh:hover{color:#4a4a4a}.loading.svelte-117r6mh{text-align:center;color:#9a9a96;padding:3rem 0;font-size:.875rem}.stat-cards.svelte-117r6mh{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card.svelte-117r6mh{background:#fff;border:1px solid #e8e8e4;border-radius:8px;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-value.svelte-117r6mh{font-size:1.5rem;font-weight:700;color:#2c2c2c}.stat-label.svelte-117r6mh{font-size:.6875rem;color:#9a9a96;text-transform:uppercase;letter-spacing:.04em}.section.svelte-117r6mh{margin-bottom:1.75rem}.section.svelte-117r6mh h3:where(.svelte-117r6mh){font-size:.8125rem;font-weight:600;color:#5a5a56;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.04em}.bar-chart.svelte-117r6mh{display:flex;align-items:flex-end;gap:2px;height:120px;padding:.5rem 0;overflow-x:clip}.bar-col.svelte-117r6mh{display:flex;flex-direction:column;align-items:center;flex:1;min-width:24px;height:100%;justify-content:flex-end;position:relative}.bar.svelte-117r6mh{width:100%;max-width:32px;background:#6b78dd;border-radius:3px 3px 0 0;transition:height .3s ease}.bar-error.svelte-117r6mh{background:#e74c3c;position:absolute;bottom:1.25rem}.bar-label.svelte-117r6mh{font-size:.5625rem;color:#9a9a96;margin-top:.25rem;white-space:nowrap}.hourly-chart.svelte-117r6mh{height:80px}.table-wrap.svelte-117r6mh{overflow-x:auto}table.svelte-117r6mh{width:100%;border-collapse:collapse;font-size:.75rem}th.svelte-117r6mh{text-align:left;padding:.5rem .75rem;border-bottom:2px solid #e8e8e4;color:#7a7a76;font-weight:600;text-transform:uppercase;font-size:.625rem;letter-spacing:.04em}td.svelte-117r6mh{padding:.4rem .75rem;border-bottom:1px solid #f0f0ee;color:#4a4a4a}.path-cell.svelte-117r6mh{font-family:monospace;font-size:.6875rem;color:#5a5a56;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.method-badge.svelte-117r6mh{display:inline-block;padding:.125rem .4rem;border-radius:3px;font-size:.625rem;font-weight:700;background:#eef;color:#6b78dd;letter-spacing:.02em}.method-badge.small.svelte-117r6mh{font-size:.5625rem;padding:.0625rem .3rem}.action-grid.svelte-117r6mh{display:flex;flex-wrap:wrap;gap:.5rem}.action-chip.svelte-117r6mh{display:flex;align-items:center;gap:.375rem;background:#fff;border:1px solid #e8e8e4;border-radius:20px;padding:.375rem .75rem}.action-count.svelte-117r6mh{font-weight:700;font-size:.875rem;color:#6b78dd}.action-name.svelte-117r6mh{font-size:.75rem;color:#5a5a56}.activity-feed.svelte-117r6mh{display:flex;flex-direction:column;gap:.25rem;max-height:400px;overflow-y:auto;scrollbar-gutter:stable}.feed-item.svelte-117r6mh{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:4px;font-size:.6875rem;transition:background .1s}.feed-item.svelte-117r6mh:hover{background:#f5f5f3}.feed-time.svelte-117r6mh{color:#9a9a96;min-width:100px;font-size:.625rem}.feed-action.svelte-117r6mh{color:#4a4a4a;font-weight:500}.feed-resource.svelte-117r6mh{color:#7a7a76;font-family:monospace;font-size:.625rem}.feed-status.svelte-117r6mh{font-weight:700;font-size:.625rem;margin-left:auto}.feed-duration.svelte-117r6mh{color:#b0b0ab;font-size:.625rem;min-width:48px;text-align:right}.feed-user.svelte-117r6mh{font-family:monospace;font-size:.5625rem;color:#6b78dd;background:#eef;padding:.0625rem .3rem;border-radius:3px;white-space:nowrap}.user-cell.svelte-117r6mh{font-family:monospace;font-size:.6875rem;color:#6b78dd;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-page.svelte-108n9vk{display:flex;flex-direction:column;height:100%;width:100%;background:#fafaf8;overflow:hidden}.admin-page-header.svelte-108n9vk{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid #e8e8e4;flex-shrink:0}.admin-page-title.svelte-108n9vk{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;color:#3a3a36}.close-btn.svelte-108n9vk{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.375rem;border-radius:4px;display:flex;align-items:center;transition:color .12s,background .12s}.close-btn.svelte-108n9vk:hover{color:#4a4a4a;background:#ebebea}.tab-bar.svelte-108n9vk{display:flex;gap:0;border-bottom:1px solid #e8e8e4;padding:0 1.5rem;flex-shrink:0}.tab-btn.svelte-108n9vk{background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;color:#9a9a96;font-size:.8125rem;font-weight:500;padding:.75rem 1rem;transition:color .12s,border-color .12s}.tab-btn.svelte-108n9vk:hover{color:#3a3a36}.tab-btn.active.svelte-108n9vk{color:#6b78dd;border-bottom-color:#6b78dd}.tab-content.svelte-108n9vk{flex:1;overflow-y:auto;padding:1rem 1.5rem}.panel-toolbar.svelte-108n9vk{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.panel-count.svelte-108n9vk{font-size:.8125rem;color:#9a9a96}.refresh-btn.svelte-108n9vk{background:#f0f0ee;border:1px solid #e0e0dc;border-radius:5px;cursor:pointer;font-size:.75rem;color:#6a6a66;padding:.3rem .75rem}.refresh-btn.svelte-108n9vk:hover{background:#e8e8e6}.error-msg.svelte-108n9vk{background:#fef2f2;color:#b91c1c;padding:.5rem .75rem;border-radius:6px;font-size:.8125rem;margin-bottom:.75rem}.loading-msg.svelte-108n9vk,.empty-msg.svelte-108n9vk{text-align:center;color:#9a9a96;font-size:.8125rem;padding:2rem 0}.muted.svelte-108n9vk{color:#b0b0ab}.user-table-wrap.svelte-108n9vk{overflow-x:auto}.user-table.svelte-108n9vk{width:100%;border-collapse:collapse;font-size:.8125rem}.user-table.svelte-108n9vk th:where(.svelte-108n9vk){text-align:left;color:#9a9a96;font-weight:500;padding:.5rem;border-bottom:1px solid #e8e8e4}.user-table.svelte-108n9vk td:where(.svelte-108n9vk){padding:.5rem;border-bottom:1px solid #f0f0ee;vertical-align:middle}.self-row.svelte-108n9vk{background:#f8f8ff}.email-cell.svelte-108n9vk{display:flex;align-items:center;gap:.375rem}.you-badge.svelte-108n9vk{background:#eef;color:#6b78dd;font-size:.625rem;font-weight:600;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase}.badge.svelte-108n9vk{font-size:.6875rem;font-weight:500;padding:.125rem .5rem;border-radius:3px}.admin-badge.svelte-108n9vk{background:#eef;color:#6b78dd}.user-badge.svelte-108n9vk{background:#f0f0ee;color:#9a9a96}.date-cell.svelte-108n9vk{color:#9a9a96;white-space:nowrap}.actions-cell.svelte-108n9vk{display:flex;gap:.375rem;align-items:center;flex-wrap:wrap}.action-btn.svelte-108n9vk{background:none;border:1px solid #e0e0dc;border-radius:4px;cursor:pointer;font-size:.6875rem;padding:.25rem .5rem;color:#6a6a66;transition:background .12s,color .12s}.action-btn.svelte-108n9vk:hover{background:#f0f0ee}.promote-btn.svelte-108n9vk:hover{color:#6b78dd;border-color:#c0c4f5}.demote-btn.svelte-108n9vk:hover{color:#b45309;border-color:#fcd34d}.delete-btn.svelte-108n9vk:hover,.delete-confirm-btn.svelte-108n9vk:hover{color:#b91c1c;border-color:#fca5a5}.cancel-btn.svelte-108n9vk:hover{background:#f0f0ee}.confirm-row.svelte-108n9vk{display:flex;align-items:center;gap:.25rem}.confirm-label.svelte-108n9vk{font-size:.6875rem;color:#b91c1c;font-weight:500}.tool-card.svelte-108n9vk{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#fff;border:1px solid #e8e8e4;border-radius:8px}.tool-info.svelte-108n9vk{flex:1}.tool-title.svelte-108n9vk{font-size:.875rem;font-weight:600;color:#3a3a36;margin-bottom:.25rem}.tool-desc.svelte-108n9vk{font-size:.8125rem;color:#6a6a66;line-height:1.5}.tool-desc.svelte-108n9vk code:where(.svelte-108n9vk){background:#f0f0ee;padding:.125rem .375rem;border-radius:3px;font-size:.75rem}.archive-toggle.svelte-108n9vk{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#6a6a66;margin-top:.5rem;cursor:pointer}.reindex-btn.svelte-108n9vk{background:#6b78dd;color:#fff;border:none;border-radius:6px;padding:.5rem 1rem;cursor:pointer;font-weight:500;white-space:nowrap}.reindex-btn.svelte-108n9vk:disabled{opacity:.6;cursor:not-allowed}.reindex-result.svelte-108n9vk{margin-top:.75rem;padding:.75rem;background:#f8faf8;border:1px solid #d0e8d0;border-radius:6px}.result-header.svelte-108n9vk{display:flex;gap:1rem;margin-bottom:.5rem;font-size:.8125rem}.result-ok.svelte-108n9vk{color:#16a34a;font-weight:500}.result-fail.svelte-108n9vk{color:#b91c1c;font-weight:500}.result-table.svelte-108n9vk{width:100%;border-collapse:collapse;font-size:.75rem}.result-table.svelte-108n9vk th:where(.svelte-108n9vk){text-align:left;color:#9a9a96;font-weight:500;padding:.25rem .5rem;border-bottom:1px solid #e0e8e0}.result-table.svelte-108n9vk td:where(.svelte-108n9vk){padding:.25rem .5rem}.oidc-header.svelte-108n9vk{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.section-title.svelte-108n9vk{font-size:.875rem;font-weight:600;color:#3a3a36;margin:0}.oidc-empty.svelte-108n9vk{text-align:center;padding:2rem}.oidc-empty-title.svelte-108n9vk{font-size:.875rem;font-weight:500;color:#6a6a66;margin:.5rem 0 .25rem}.oidc-empty-sub.svelte-108n9vk{font-size:.75rem;color:#9a9a96;margin:0}.provider-list.svelte-108n9vk{display:flex;flex-direction:column;gap:.5rem}.provider-card.svelte-108n9vk{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#fff;border:1px solid #e8e8e4;border-radius:6px}.provider-info.svelte-108n9vk{display:flex;flex-direction:column;gap:.125rem}.provider-name.svelte-108n9vk{font-size:.8125rem;font-weight:500;color:#3a3a36}.provider-issuer.svelte-108n9vk{font-size:.6875rem;color:#9a9a96}.oidc-note.svelte-108n9vk{margin-top:1rem;padding:.75rem;background:#fafaf8;border:1px solid #e8e8e4;border-radius:6px}.note-title.svelte-108n9vk{font-size:.8125rem;font-weight:600;color:#3a3a36;margin:0 0 .25rem}.note-body.svelte-108n9vk{font-size:.75rem;color:#6a6a66;margin:0 0 .5rem;line-height:1.5}.env-vars.svelte-108n9vk{display:flex;flex-wrap:wrap;gap:.375rem;align-items:center}.env-label.svelte-108n9vk{font-size:.6875rem;color:#9a9a96}.env-var.svelte-108n9vk{background:#f0f0ee;padding:.125rem .375rem;border-radius:3px;font-size:.6875rem}.metrics-tab.svelte-108n9vk{height:100%}@media(max-width:1023px){.admin-page-header.svelte-108n9vk{padding:.875rem 1.25rem}.tab-bar.svelte-108n9vk{padding:0 1.25rem}.tab-content.svelte-108n9vk{padding:.875rem 1.25rem}.close-btn.svelte-108n9vk{display:none}}@media(max-width:767px){.admin-page-header.svelte-108n9vk{padding:.75rem 1rem}.tab-bar.svelte-108n9vk{padding:0 1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tab-bar.svelte-108n9vk::-webkit-scrollbar{display:none}.close-btn.svelte-108n9vk{min-width:44px;min-height:44px;justify-content:center}.tab-btn.svelte-108n9vk{min-height:44px;white-space:nowrap;flex-shrink:0}.tab-content.svelte-108n9vk{padding:.75rem 1rem}.user-table-wrap.svelte-108n9vk{overflow-x:auto;-webkit-overflow-scrolling:touch}}.book-settings.svelte-11ruig4{display:flex;flex-direction:column;width:100%;height:100%;background:#fafaf8;overflow:hidden}.settings-header.svelte-11ruig4{display:flex;align-items:center;justify-content:space-between;padding:0 1rem;height:48px;border-bottom:1px solid #e8e8e4;flex-shrink:0}.settings-title.svelte-11ruig4{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;color:#3a3a36}.close-btn.svelte-11ruig4{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.3125rem;border-radius:4px;display:flex;align-items:center;transition:color .12s,background .12s}.close-btn.svelte-11ruig4:hover{color:#4a4a4a;background:#ebebea}.tab-bar.svelte-11ruig4{display:flex;gap:0;border-bottom:1px solid #e8e8e4;padding:0 .75rem;flex-shrink:0}.tab-btn.svelte-11ruig4{background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;color:#9a9a96;font-size:.75rem;font-weight:500;padding:.5rem .75rem;transition:color .12s,border-color .12s}.tab-btn.svelte-11ruig4:hover{color:#3a3a36}.tab-btn.active.svelte-11ruig4{color:#6b78dd;border-bottom-color:#6b78dd}.tab-content.svelte-11ruig4{flex:1;overflow-y:auto;padding:.75rem}.invite-form.svelte-11ruig4{display:flex;gap:.375rem;margin-bottom:.75rem}.invite-input.svelte-11ruig4{flex:1;padding:.375rem .625rem;border:1px solid #e0e0dc;border-radius:5px;font-size:.8125rem;background:#fff;outline:none}.invite-input.svelte-11ruig4:focus{border-color:#6b78dd}.role-select.svelte-11ruig4{padding:.375rem .5rem;border:1px solid #e0e0dc;border-radius:5px;font-size:.75rem;background:#fff;cursor:pointer}.role-select.small.svelte-11ruig4{padding:.25rem .375rem;font-size:.6875rem}.invite-btn.svelte-11ruig4{background:#6b78dd;color:#fff;border:none;border-radius:5px;padding:.375rem .75rem;font-size:.75rem;font-weight:500;cursor:pointer;white-space:nowrap}.invite-btn.svelte-11ruig4:disabled{opacity:.6;cursor:not-allowed}.member-list.svelte-11ruig4{display:flex;flex-direction:column;gap:.375rem}.member-card.svelte-11ruig4{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;background:#fff;border:1px solid #f0f0ee;border-radius:6px}.member-info.svelte-11ruig4{flex:1;min-width:0}.member-name.svelte-11ruig4{display:block;font-size:.8125rem;font-weight:500;color:#3a3a36;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-email.svelte-11ruig4{display:block;font-size:.6875rem;color:#9a9a96;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.remove-btn.svelte-11ruig4{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.25rem;border-radius:3px;display:flex;align-items:center}.remove-btn.svelte-11ruig4:hover{color:#b91c1c;background:#fef2f2}.archive-toggle.svelte-11ruig4{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#6a6a66;margin-bottom:.75rem;cursor:pointer}.analysis-tools-grid.svelte-11ruig4{display:flex;flex-direction:column;gap:.5rem}.analysis-tool-card.svelte-11ruig4{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;background:#fff;border:1px solid #f0f0ee;border-radius:6px}.analysis-run-all.svelte-11ruig4{border-color:#d0d4f5;background:#fafaff}.atool-icon.svelte-11ruig4{font-size:1rem;flex-shrink:0;width:1.5rem;text-align:center}.atool-info.svelte-11ruig4{flex:1;min-width:0}.atool-title.svelte-11ruig4{font-size:.8125rem;font-weight:600;color:#3a3a36}.atool-desc.svelte-11ruig4{font-size:.6875rem;color:#9a9a96;line-height:1.4}.atool-btn.svelte-11ruig4{background:#f0f0ee;border:1px solid #e0e0dc;border-radius:5px;cursor:pointer;font-size:.6875rem;font-weight:500;padding:.3rem .625rem;color:#3a3a36;white-space:nowrap;flex-shrink:0}.atool-btn.svelte-11ruig4:hover{background:#e8e8e6}.atool-btn.svelte-11ruig4:disabled{opacity:.5;cursor:not-allowed}.run-all-btn.svelte-11ruig4{background:#6b78dd;color:#fff;border-color:#6b78dd}.run-all-btn.svelte-11ruig4:hover{background:#5a67cc}.jobs-section.svelte-11ruig4{margin-top:.75rem}.jobs-header.svelte-11ruig4{font-size:.75rem;font-weight:600;color:#3a3a36;margin-bottom:.375rem}.jobs-list.svelte-11ruig4{display:flex;flex-direction:column;gap:.25rem}.job-row.svelte-11ruig4{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:5px;font-size:.75rem;background:#f8f8f6}.job-done.svelte-11ruig4{background:#f0faf0}.job-error.svelte-11ruig4{background:#fef2f2}.job-running.svelte-11ruig4{background:#fafaff}.job-type.svelte-11ruig4{font-weight:500;color:#3a3a36;min-width:5rem}.job-status-badge.svelte-11ruig4{font-size:.625rem;font-weight:600;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase}.job-status-queued.svelte-11ruig4{background:#f0f0ee;color:#9a9a96}.job-status-running.svelte-11ruig4{background:#eef;color:#6b78dd}.job-status-done.svelte-11ruig4{background:#dcfce7;color:#16a34a}.job-status-error.svelte-11ruig4{background:#fef2f2;color:#b91c1c}.job-progress.svelte-11ruig4{color:#6a6a66;font-size:.6875rem}.job-bar-wrap.svelte-11ruig4{flex:1;height:4px;background:#e8e8e4;border-radius:2px;overflow:hidden}.job-bar.svelte-11ruig4{height:100%;background:#6b78dd;border-radius:2px;transition:width .3s}.job-errors.svelte-11ruig4{color:#b91c1c;font-size:.625rem}.error-msg.svelte-11ruig4{background:#fef2f2;color:#b91c1c;padding:.375rem .625rem;border-radius:5px;font-size:.75rem;margin-bottom:.5rem}.error-msg.small.svelte-11ruig4{font-size:.6875rem;padding:.25rem .5rem}.loading-msg.svelte-11ruig4{text-align:center;color:#9a9a96;font-size:.8125rem;padding:2rem 0}.action-btn.svelte-11ruig4{background:none;border:1px solid #e0e0dc;border-radius:4px;cursor:pointer;font-size:.6875rem;padding:.25rem .5rem;color:#6a6a66}.action-btn.svelte-11ruig4:hover{background:#f0f0ee}.delete-confirm-btn.svelte-11ruig4:hover{color:#b91c1c;border-color:#fca5a5}.cancel-btn.svelte-11ruig4:hover{background:#f0f0ee}.confirm-row.svelte-11ruig4{display:flex;align-items:center;gap:.25rem}@media(max-width:1023px){.close-btn.svelte-11ruig4{display:none}}@media(max-width:767px){.tab-btn.svelte-11ruig4{min-height:44px;font-size:.8125rem}.invite-form.svelte-11ruig4{flex-direction:column}.invite-input.svelte-11ruig4,.role-select.svelte-11ruig4{font-size:1rem}.invite-btn.svelte-11ruig4{min-height:44px;font-size:.9375rem}.action-btn.svelte-11ruig4{min-height:36px;font-size:.8125rem;padding:.375rem .625rem}.atool-btn.svelte-11ruig4{min-height:40px;font-size:.8125rem;padding:.4375rem .75rem}.remove-btn.svelte-11ruig4{min-width:44px;min-height:44px;justify-content:center}.member-card.svelte-11ruig4{flex-wrap:wrap}}.modal-backdrop.svelte-l99uia{position:fixed;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:500}.modal.svelte-l99uia{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;width:28rem;max-width:90vw;max-height:80vh;overflow-y:auto}.modal-header.svelte-l99uia{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e8e8e4}.modal-title.svelte-l99uia{font-size:1rem;font-weight:600;color:#3a3a36;margin:0}.close-btn.svelte-l99uia{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.3125rem;border-radius:4px;display:flex;align-items:center;transition:color .12s,background .12s}.close-btn.svelte-l99uia:hover{color:#4a4a4a;background:#ebebea}.modal-body.svelte-l99uia{padding:1.25rem}.field-group.svelte-l99uia{margin-bottom:.875rem}.field-label.svelte-l99uia{display:block;font-size:.75rem;font-weight:500;color:#6a6a66;margin-bottom:.25rem}.field-input.svelte-l99uia{width:100%;padding:.5rem .75rem;border:1px solid #e0e0dc;border-radius:6px;font-size:.875rem;background:#fafaf8;outline:none;box-sizing:border-box}.field-input.svelte-l99uia:focus{border-color:#6b78dd}.field-hint.svelte-l99uia{display:block;font-size:.6875rem;color:#b0b0ab;margin-top:.25rem}.actions-row.svelte-l99uia{display:flex;align-items:center;gap:.5rem}.save-btn.svelte-l99uia{background:#6b78dd;color:#fff;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;cursor:pointer}.save-btn.svelte-l99uia:disabled{opacity:.6;cursor:not-allowed}.save-msg.svelte-l99uia{font-size:.75rem;color:#16a34a;font-weight:500}.cancel-btn.svelte-l99uia{background:none;border:1px solid #e0e0dc;border-radius:6px;padding:.5rem .75rem;font-size:.8125rem;cursor:pointer;color:#6a6a66}.cancel-btn.svelte-l99uia:hover{background:#f0f0ee}.divider.svelte-l99uia{border:none;border-top:1px solid #e8e8e4;margin:1rem 0}.email-current.svelte-l99uia{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.email-value.svelte-l99uia{font-size:.875rem;color:#3a3a36}.change-email-btn.svelte-l99uia{background:none;border:1px solid #e0e0dc;border-radius:5px;padding:.375rem .75rem;font-size:.75rem;cursor:pointer;color:#6b78dd;font-weight:500}.change-email-btn.svelte-l99uia:hover{background:#f8f8ff}.email-form.svelte-l99uia{margin-top:.5rem;padding:.75rem;background:#fafaf8;border:1px solid #e8e8e4;border-radius:6px}.error-msg.svelte-l99uia{background:#fef2f2;color:#b91c1c;padding:.5rem .75rem;border-radius:6px;font-size:.8125rem;margin-bottom:.75rem}.error-msg.small.svelte-l99uia{font-size:.75rem;padding:.375rem .625rem}.success-msg.svelte-l99uia{background:#f0faf0;color:#16a34a;padding:.5rem .75rem;border-radius:6px;font-size:.8125rem;margin-bottom:.5rem}.loading-msg.svelte-l99uia{text-align:center;color:#9a9a96;font-size:.875rem;padding:2rem}@media(max-width:767px){.modal-backdrop.svelte-l99uia{align-items:flex-end}.modal.svelte-l99uia{width:100%;max-width:100%;max-height:92vh;border-bottom-left-radius:0;border-bottom-right-radius:0}.close-btn.svelte-l99uia{min-width:44px;min-height:44px;justify-content:center}.field-input.svelte-l99uia{font-size:1rem}.save-btn.svelte-l99uia{min-height:44px;font-size:.9375rem;padding:.5rem 1.25rem}.cancel-btn.svelte-l99uia{min-height:44px;font-size:.9375rem;padding:.5rem 1rem}.change-email-btn.svelte-l99uia{min-height:44px;font-size:.875rem;padding:.5rem 1rem}}.graph-container.svelte-qsyl7i{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.graph-svg.svelte-qsyl7i{flex:1;width:100%;min-height:0;cursor:default;-webkit-user-select:none;user-select:none}.node-group.svelte-qsyl7i{cursor:grab}.node-group.svelte-qsyl7i:active{cursor:grabbing}.node-label.svelte-qsyl7i{font-size:9px;font-weight:600;fill:#fff;pointer-events:none}.node-tooltip.svelte-qsyl7i{font-size:10px;fill:#fff;pointer-events:none}.edge-label.svelte-qsyl7i{font-size:9px;font-weight:500;pointer-events:none}.graph-legend.svelte-qsyl7i{display:flex;align-items:center;gap:.625rem;padding:.25rem .5rem;font-size:.6875rem;color:#6b6b66;flex-wrap:wrap}.legend-title.svelte-qsyl7i{font-weight:600;color:#3a3a36}.legend-item.svelte-qsyl7i{display:flex;align-items:center;gap:.25rem}.legend-dot.svelte-qsyl7i{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-line.svelte-qsyl7i{width:14px;height:3px;border-radius:2px;flex-shrink:0}.graph-hint.svelte-qsyl7i{font-size:.6875rem;color:#b0b0ab;text-align:center;padding:.25rem}.characters-panel.svelte-1dp89i4{display:flex;width:100%;height:100%;overflow:hidden;background:#fafaf8}.char-sidebar.svelte-1dp89i4{width:260px;min-width:220px;border-right:1px solid #e8e8e4;display:flex;flex-direction:column;background:#f5f5f2;overflow:hidden}.sidebar-header.svelte-1dp89i4{display:flex;align-items:center;justify-content:space-between;padding:.5rem .625rem;border-bottom:1px solid #e8e8e4;gap:.375rem;flex-shrink:0}.view-tabs.svelte-1dp89i4{display:flex;gap:2px}.view-tab.svelte-1dp89i4{background:none;border:none;cursor:pointer;font-size:.75rem;font-weight:500;color:#8b8b85;padding:.25rem .5rem;border-radius:4px;transition:all .12s}.view-tab.svelte-1dp89i4:hover{color:#4a4a4a;background:#ebebea}.view-tab.active.svelte-1dp89i4{color:#3a3a36;background:#e0e0dc;font-weight:600}.close-btn.svelte-1dp89i4{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.25rem;border-radius:4px;display:flex;align-items:center;transition:all .12s}.close-btn.svelte-1dp89i4:hover{color:#4a4a4a;background:#ebebea}.char-list.svelte-1dp89i4,.graph-sidebar-content.svelte-1dp89i4{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:.375rem}.add-char-btn.svelte-1dp89i4{display:flex;align-items:center;gap:.375rem;width:100%;padding:.4375rem .625rem;margin-bottom:.25rem;background:none;border:1px dashed #d0d0cc;border-radius:5px;cursor:pointer;font-size:.8125rem;color:#7a7a75;transition:all .12s}.add-char-btn.svelte-1dp89i4:hover{background:#ebebea;color:#3a3a36;border-color:#b0b0ab}.generate-btn.svelte-1dp89i4{border-color:#c4c8f0;color:#6b78dd;margin-bottom:.375rem}.generate-btn.svelte-1dp89i4:hover{background:#f0f1fc;color:#5a67c8;border-color:#6b78dd}.generate-form.svelte-1dp89i4{background:#f0f1fc;border:1px solid #c4c8f0;border-radius:6px;padding:.5rem;margin-bottom:.375rem;display:flex;flex-direction:column;gap:.375rem}.generate-textarea.svelte-1dp89i4{width:100%;box-sizing:border-box;padding:.4375rem .5rem;border:1px solid #c4c8f0;border-radius:5px;font-size:.8125rem;font-family:inherit;line-height:1.5;color:#1a1a16;background:#fff;resize:vertical;transition:border-color .12s}.generate-textarea.svelte-1dp89i4:focus{border-color:#6b78dd;outline:none}.generate-error.svelte-1dp89i4{font-size:.75rem;color:#b91c1c;margin:0;padding:.25rem 0}.char-item.svelte-1dp89i4{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4375rem .625rem;background:none;border:none;border-radius:5px;cursor:pointer;font-size:.8125rem;color:#3a3a36;text-align:left;transition:all .12s}.char-item.svelte-1dp89i4:hover{background:#ebebea}.char-item.selected.svelte-1dp89i4{background:#e0e0dc;font-weight:600}.char-role-dot.svelte-1dp89i4{width:8px;height:8px;border-radius:50%;flex-shrink:0}.char-name.svelte-1dp89i4{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-status-badge.svelte-1dp89i4{font-size:.6875rem;color:#9ca3af;flex-shrink:0}.empty-msg.svelte-1dp89i4{font-size:.8125rem;color:#9ca3af;text-align:center;padding:1.5rem .75rem;line-height:1.5}.char-detail.svelte-1dp89i4{flex:1;display:flex;flex-direction:column;overflow:hidden}.detail-header.svelte-1dp89i4{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;border-bottom:1px solid #e8e8e4;flex-shrink:0}.char-name-input.svelte-1dp89i4{flex:1;font-size:1.125rem;font-weight:600;color:#1a1a16;background:none;border:none;border-bottom:2px solid transparent;padding:.25rem 0;outline:none;transition:border-color .12s}.char-name-input.svelte-1dp89i4:focus{border-bottom-color:#6b78dd}.detail-header-actions.svelte-1dp89i4{display:flex;gap:.375rem;flex-shrink:0}.detail-tabs.svelte-1dp89i4{display:flex;padding:0 1rem;border-bottom:1px solid #e8e8e4;flex-shrink:0}.dtab.svelte-1dp89i4{background:none;border:none;cursor:pointer;font-size:.8125rem;font-weight:500;color:#8b8b85;padding:.5rem .75rem;border-bottom:2px solid transparent;transition:all .12s;margin-bottom:-1px}.dtab.svelte-1dp89i4:hover{color:#4a4a4a}.dtab.active.svelte-1dp89i4{color:#3a3a36;border-bottom-color:#6b78dd;font-weight:600}.detail-body.svelte-1dp89i4{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:1rem}.field-grid.svelte-1dp89i4{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem}.field-grid-compact.svelte-1dp89i4{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;margin-bottom:.5rem}.field-label.svelte-1dp89i4{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;font-weight:600;color:#6b6b66;text-transform:uppercase;letter-spacing:.03em}.field-label.full-width.svelte-1dp89i4{grid-column:1 / -1;margin-bottom:.75rem}.field-input.svelte-1dp89i4{padding:.4375rem .5rem;border:1px solid #e0e0dc;border-radius:5px;font-size:.875rem;color:#1a1a16;background:#fff;transition:border-color .12s}.field-input.svelte-1dp89i4:focus{border-color:#6b78dd;outline:none}.field-select.svelte-1dp89i4{padding:.4375rem .5rem;border:1px solid #e0e0dc;border-radius:5px;font-size:.875rem;color:#1a1a16;background:#fff;cursor:pointer}.field-select.svelte-1dp89i4:focus{border-color:#6b78dd;outline:none}.field-textarea.svelte-1dp89i4{padding:.5rem;border:1px solid #e0e0dc;border-radius:5px;font-size:.875rem;color:#1a1a16;background:#fff;resize:vertical;font-family:inherit;line-height:1.5;transition:border-color .12s}.field-textarea.svelte-1dp89i4:focus{border-color:#6b78dd;outline:none}.field-textarea.tall.svelte-1dp89i4{min-height:200px}.field-label-row.svelte-1dp89i4{display:flex;align-items:center;justify-content:space-between;gap:.25rem}.ai-field-btn.svelte-1dp89i4{background:none;border:none;cursor:pointer;color:#b0b4e8;padding:.125rem .25rem;border-radius:3px;display:flex;align-items:center;opacity:.7;flex-shrink:0;transition:all .12s}.ai-field-btn.svelte-1dp89i4:hover{opacity:1;color:#6b78dd;background:#f0f1fc}.ai-field-btn.active.svelte-1dp89i4{opacity:1;color:#6b78dd;background:#e8eafc}.field-ai-panel.svelte-1dp89i4{background:#f0f1fc;border:1px solid #c4c8f0;border-radius:5px;padding:.375rem;margin-bottom:.375rem;display:flex;flex-direction:column;gap:.25rem}.field-ai-hint.svelte-1dp89i4{width:100%;box-sizing:border-box;padding:.3125rem .4375rem;border:1px solid #c4c8f0;border-radius:4px;font-size:.8125rem;color:#1a1a16;background:#fff;font-family:inherit;transition:border-color .12s}.field-ai-hint.svelte-1dp89i4:focus{border-color:#6b78dd;outline:none}.field-ai-error.svelte-1dp89i4{font-size:.75rem;color:#b91c1c;margin:0}.ai-spin.svelte-1dp89i4{display:inline-block;width:10px;height:10px;border:1.5px solid #c4c8f0;border-top-color:#6b78dd;border-radius:50%;animation:svelte-1dp89i4-ai-spin .7s linear infinite}@keyframes svelte-1dp89i4-ai-spin{to{transform:rotate(360deg)}}.btn-sm.svelte-1dp89i4{padding:.3125rem .625rem;border:none;border-radius:4px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .12s}.btn-primary.svelte-1dp89i4{background:#6b78dd;color:#fff}.btn-primary.svelte-1dp89i4:hover{background:#5a67c8}.btn-primary.svelte-1dp89i4:disabled{opacity:.5;cursor:not-allowed}.btn-danger.svelte-1dp89i4{background:#fef2f2;color:#b91c1c}.btn-danger.svelte-1dp89i4:hover{background:#fee2e2}.btn-ghost.svelte-1dp89i4{background:none;color:#6b6b66}.btn-ghost.svelte-1dp89i4:hover{background:#ebebea}.icon-btn-sm.svelte-1dp89i4{background:none;border:none;cursor:pointer;color:#c0c0bb;padding:.1875rem;border-radius:3px;display:flex;align-items:center;transition:all .12s}.icon-btn-sm.svelte-1dp89i4:hover{color:#b91c1c;background:#fef2f2}.relations-section.svelte-1dp89i4,.locations-section.svelte-1dp89i4{display:flex;flex-direction:column;gap:.75rem}.section-title.svelte-1dp89i4{font-size:.875rem;font-weight:600;color:#3a3a36;margin:0}.form-subtitle.svelte-1dp89i4{font-size:.75rem;font-weight:600;color:#6b6b66;text-transform:uppercase;margin:.5rem 0 .25rem}.rel-list.svelte-1dp89i4,.loc-link-list.svelte-1dp89i4{display:flex;flex-direction:column;gap:.25rem}.rel-item.svelte-1dp89i4,.loc-link-item.svelte-1dp89i4{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:#f0f0ec;border-radius:5px;font-size:.8125rem;flex-wrap:wrap}.rel-type-badge.svelte-1dp89i4,.visit-type-badge.svelte-1dp89i4{font-size:.6875rem;font-weight:600;text-transform:uppercase;padding:.125rem .375rem;border-radius:3px;background:#e6e6ff;color:#6b78dd;white-space:nowrap}.visit-type-badge.svelte-1dp89i4{background:#e6f4ea;color:#059669}.rel-label.svelte-1dp89i4{flex:1}.loc-link-name.svelte-1dp89i4{flex:1;font-weight:500}.loc-date.svelte-1dp89i4{font-size:.75rem;color:#8b8b85}.loc-notes.svelte-1dp89i4{font-size:.75rem;color:#9ca3af;font-style:italic}.bidir-badge.svelte-1dp89i4{font-size:.75rem;color:#6b78dd;font-weight:600}.empty-msg-sm.svelte-1dp89i4{font-size:.8125rem;color:#9ca3af;padding:.5rem 0}.add-rel-form.svelte-1dp89i4,.add-loc-form.svelte-1dp89i4{border-top:1px solid #e8e8e4;padding-top:.75rem}.checkbox-label.svelte-1dp89i4{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:#3a3a36;cursor:pointer}.checkbox-label.svelte-1dp89i4 input[type=checkbox]:where(.svelte-1dp89i4){cursor:pointer}.form-actions-inline.svelte-1dp89i4{display:flex;gap:.25rem}.no-selection.svelte-1dp89i4{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#b0b0ab;gap:.75rem}.no-selection-icon.svelte-1dp89i4{opacity:.4}.no-selection.svelte-1dp89i4 p:where(.svelte-1dp89i4){font-size:.9375rem;text-align:center}.mobile-back-btn.svelte-1dp89i4{display:none;align-items:center;justify-content:center;min-width:40px;min-height:40px;background:none;border:none;cursor:pointer;color:#6b78dd;border-radius:6px;flex-shrink:0;transition:background .12s;padding:.25rem}.mobile-back-btn.svelte-1dp89i4:hover{background:#f0f1fc}@media(max-width:1023px){.char-sidebar.svelte-1dp89i4{min-width:200px;width:220px}.close-btn.svelte-1dp89i4{display:none}}@media(max-width:767px){.characters-panel.svelte-1dp89i4{flex-direction:column}.char-sidebar.svelte-1dp89i4{width:100%;min-width:0;border-right:none;border-bottom:1px solid #e8e8e4;flex:1}.characters-panel.mobile-detail-view.svelte-1dp89i4 .char-sidebar:where(.svelte-1dp89i4){display:none}.characters-panel.svelte-1dp89i4:not(.mobile-detail-view) .char-detail:where(.svelte-1dp89i4){display:none}.mobile-back-btn.svelte-1dp89i4{display:flex}.char-list.svelte-1dp89i4,.detail-body.svelte-1dp89i4,.graph-sidebar-content.svelte-1dp89i4{overscroll-behavior-y:contain}.field-input.svelte-1dp89i4,.field-select.svelte-1dp89i4,.field-textarea.svelte-1dp89i4,.generate-textarea.svelte-1dp89i4,.field-ai-hint.svelte-1dp89i4,.char-name-input.svelte-1dp89i4{font-size:1rem}.btn-sm.svelte-1dp89i4{min-height:44px;font-size:.9375rem;padding:.5rem .875rem}.add-char-btn.svelte-1dp89i4{min-height:44px;font-size:.875rem}.char-item.svelte-1dp89i4{min-height:52px}.close-btn.svelte-1dp89i4{min-width:44px;min-height:44px;justify-content:center}.detail-tabs.svelte-1dp89i4{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.detail-tabs.svelte-1dp89i4::-webkit-scrollbar{display:none}.dtab.svelte-1dp89i4{min-height:44px;white-space:nowrap;flex-shrink:0}.field-grid.svelte-1dp89i4,.field-grid-compact.svelte-1dp89i4{grid-template-columns:1fr}}.locations-panel.svelte-t5o8po{display:flex;width:100%;height:100%;overflow:hidden;background:#fafaf8}.loc-sidebar.svelte-t5o8po{width:240px;min-width:200px;border-right:1px solid #e8e8e4;display:flex;flex-direction:column;background:#f5f5f2;overflow:hidden}.sidebar-header.svelte-t5o8po{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid #e8e8e4;flex-shrink:0}.sidebar-title.svelte-t5o8po{font-size:.8125rem;font-weight:600;color:#3a3a36;letter-spacing:.01em}.close-btn.svelte-t5o8po{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.25rem;border-radius:4px;display:flex;align-items:center;transition:all .12s}.close-btn.svelte-t5o8po:hover{color:#4a4a4a;background:#ebebea}.loc-list.svelte-t5o8po{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:.375rem}.add-loc-btn.svelte-t5o8po{display:flex;align-items:center;gap:.375rem;width:100%;padding:.4375rem .625rem;margin-bottom:.25rem;background:none;border:1px dashed #d0d0cc;border-radius:5px;cursor:pointer;font-size:.8125rem;color:#7a7a75;transition:all .12s}.add-loc-btn.svelte-t5o8po:hover{background:#ebebea;color:#3a3a36;border-color:#b0b0ab}.generate-btn.svelte-t5o8po{border-color:#c4c8f0;color:#6b78dd;margin-bottom:.375rem}.generate-btn.svelte-t5o8po:hover{background:#f0f1fc;color:#5a67c8;border-color:#6b78dd}.generate-form.svelte-t5o8po{background:#f0f1fc;border:1px solid #c4c8f0;border-radius:6px;padding:.5rem;margin-bottom:.375rem;display:flex;flex-direction:column;gap:.375rem}.generate-textarea.svelte-t5o8po{width:100%;box-sizing:border-box;padding:.4375rem .5rem;border:1px solid #c4c8f0;border-radius:5px;font-size:.8125rem;font-family:inherit;line-height:1.5;color:#1a1a1a;background:#fff;resize:vertical;transition:border-color .12s}.generate-textarea.svelte-t5o8po:focus{border-color:#6b78dd;outline:none}.generate-error.svelte-t5o8po{font-size:.75rem;color:#b91c1c;margin:0;padding:.25rem 0}.new-loc-form.svelte-t5o8po{background:#efefec;border:1px solid #e0e0dc;border-radius:6px;padding:.5rem;margin-bottom:.375rem;display:flex;flex-direction:column;gap:.375rem}.loc-item.svelte-t5o8po{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4375rem .625rem;background:none;border:none;border-radius:5px;cursor:pointer;text-align:left;font-size:.8125rem;color:#3a3a36;transition:background .1s}.loc-item.svelte-t5o8po:hover{background:#ebebea}.loc-item.selected.svelte-t5o8po{background:#e0e0dc;font-weight:500}.loc-type-dot.svelte-t5o8po{width:8px;height:8px;border-radius:50%;flex-shrink:0}.loc-name.svelte-t5o8po{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loc-type-badge.svelte-t5o8po{font-size:.6875rem;color:#8b8b85;background:#e8e8e4;border-radius:3px;padding:1px 5px;flex-shrink:0}.empty-msg.svelte-t5o8po{font-size:.8125rem;color:#b0b0ab;padding:.75rem .5rem;text-align:center;line-height:1.5}.loc-detail.svelte-t5o8po{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.detail-header.svelte-t5o8po{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-bottom:1px solid #e8e8e4;flex-shrink:0}.loc-name-input.svelte-t5o8po{flex:1;font-size:1.125rem;font-weight:600;color:#1a1a1a;background:transparent;border:none;outline:none;padding:0;min-width:0}.detail-header-actions.svelte-t5o8po{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.detail-body.svelte-t5o8po{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.field-row.svelte-t5o8po{display:flex;gap:.75rem}.field-label.svelte-t5o8po{display:flex;flex-direction:column;gap:.3125rem;font-size:.75rem;font-weight:500;color:#6a6a65;letter-spacing:.03em;text-transform:uppercase}.field-label.full-width.svelte-t5o8po{width:100%}.field-input.svelte-t5o8po{padding:.375rem .5rem;background:#fff;border:1px solid #e0e0dc;border-radius:5px;font-size:.875rem;color:#1a1a1a;outline:none;transition:border-color .12s}.field-input.svelte-t5o8po:focus{border-color:#6b78dd}.field-select.svelte-t5o8po{padding:.375rem .5rem;background:#fff;border:1px solid #e0e0dc;border-radius:5px;font-size:.875rem;color:#1a1a1a;outline:none;cursor:pointer;transition:border-color .12s}.field-select.svelte-t5o8po:focus{border-color:#6b78dd}.field-textarea.svelte-t5o8po{padding:.5rem;background:#fff;border:1px solid #e0e0dc;border-radius:5px;font-size:.875rem;color:#1a1a1a;line-height:1.6;resize:vertical;outline:none;font-family:inherit;transition:border-color .12s}.field-textarea.svelte-t5o8po:focus{border-color:#6b78dd}.field-textarea.tall.svelte-t5o8po{min-height:140px}.linked-chars.svelte-t5o8po{display:flex;flex-direction:column;gap:.5rem}.section-title.svelte-t5o8po{font-size:.75rem;font-weight:600;color:#6a6a65;letter-spacing:.04em;text-transform:uppercase}.linked-char-list.svelte-t5o8po{display:flex;flex-direction:column;gap:.25rem}.linked-char-item.svelte-t5o8po{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:#f5f5f2;border-radius:5px;font-size:.8125rem}.linked-char-name.svelte-t5o8po{flex:1;color:#3a3a36;font-weight:500}.visit-type-badge.svelte-t5o8po{font-size:.6875rem;padding:1px 6px;border-radius:3px;background:#e0e0dc;color:#5a5a55;font-weight:500;flex-shrink:0}.loc-date.svelte-t5o8po{font-size:.75rem;color:#8b8b85}.no-selection.svelte-t5o8po{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#c0c0bc;font-size:.9375rem;text-align:center;padding:2rem}.no-selection.svelte-t5o8po p:where(.svelte-t5o8po){max-width:280px;line-height:1.6}.btn-sm.svelte-t5o8po{padding:.3125rem .625rem;border-radius:5px;border:none;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .12s}.btn-sm.svelte-t5o8po:disabled{opacity:.5;cursor:default}.btn-primary.svelte-t5o8po{background:#6b78dd;color:#fff}.btn-primary.svelte-t5o8po:hover:not(:disabled){background:#5366cc}.btn-danger.svelte-t5o8po{background:#fee2e2;color:#b91c1c}.btn-danger.svelte-t5o8po:hover:not(:disabled){background:#fecaca}.btn-ghost.svelte-t5o8po{background:#f0f0ec;color:#5a5a55}.btn-ghost.svelte-t5o8po:hover:not(:disabled){background:#e4e4e0}.form-actions-inline.svelte-t5o8po{display:flex;gap:.375rem}.mobile-back-btn.svelte-t5o8po{display:none;align-items:center;justify-content:center;min-width:40px;min-height:40px;background:none;border:none;cursor:pointer;color:#6b78dd;border-radius:6px;flex-shrink:0;transition:background .12s;padding:.25rem}.mobile-back-btn.svelte-t5o8po:hover{background:#f0f1fc}@media(max-width:1023px){.loc-sidebar.svelte-t5o8po{min-width:180px;width:200px}.close-btn.svelte-t5o8po{display:none}}@media(max-width:767px){.locations-panel.svelte-t5o8po{flex-direction:column}.loc-sidebar.svelte-t5o8po{width:100%;min-width:0;border-right:none;border-bottom:1px solid #e8e8e4;flex:1}.locations-panel.mobile-detail-view.svelte-t5o8po .loc-sidebar:where(.svelte-t5o8po){display:none}.locations-panel.svelte-t5o8po:not(.mobile-detail-view) .loc-detail:where(.svelte-t5o8po){display:none}.mobile-back-btn.svelte-t5o8po{display:flex}.loc-list.svelte-t5o8po,.detail-body.svelte-t5o8po{overscroll-behavior-y:contain}.field-input.svelte-t5o8po,.field-select.svelte-t5o8po,.field-textarea.svelte-t5o8po,.generate-textarea.svelte-t5o8po,.loc-name-input.svelte-t5o8po{font-size:1rem}.btn-sm.svelte-t5o8po{min-height:44px;font-size:.9375rem;padding:.5rem .875rem}.add-loc-btn.svelte-t5o8po{min-height:44px;font-size:.875rem}.loc-item.svelte-t5o8po{min-height:52px}.close-btn.svelte-t5o8po{min-width:44px;min-height:44px;justify-content:center}}.auth-page.svelte-h34f85{display:flex;align-items:center;justify-content:center;height:100vh;width:100vw;background:#fafaf8}.auth-card.svelte-h34f85{width:100%;max-width:380px;padding:2.25rem 2rem 2rem;background:#fff;border:1px solid #e8e8e4;border-radius:14px;box-shadow:0 4px 24px #0000000f,0 1px 4px #0000000a}.auth-brand.svelte-h34f85{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem}.auth-logo.svelte-h34f85{margin-bottom:.625rem;filter:drop-shadow(0 1px 3px rgba(0,0,0,.08))}.auth-title.svelte-h34f85{font-size:1.625rem;font-weight:800;text-align:center;color:#1a1a16;margin:0 0 .2rem;letter-spacing:-.03em}.auth-tagline.svelte-h34f85{text-align:center;color:#aaa;font-size:.8125rem;margin:0;font-style:italic;letter-spacing:.01em}.auth-subtitle.svelte-h34f85{text-align:center;color:#6a6a66;font-size:.875rem;margin:0 0 1.25rem;font-weight:500}.auth-error.svelte-h34f85{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;border-radius:7px;padding:.625rem .75rem;font-size:.8125rem;margin-bottom:1rem;line-height:1.4}.auth-label.svelte-h34f85{display:block;font-size:.8125rem;font-weight:600;color:#3a3a36;margin-bottom:.875rem;letter-spacing:.01em}.auth-input.svelte-h34f85{display:block;width:100%;margin-top:.3125rem;padding:.5625rem .75rem;font-size:.875rem;border:1px solid #d4d4d0;border-radius:7px;background:#fafaf8;outline:none;color:#1a1a1a;transition:border-color .12s,box-shadow .12s;box-sizing:border-box}.auth-input.svelte-h34f85:focus{border-color:#6b78dd;box-shadow:0 0 0 3px #6b78dd24;background:#fff}.auth-input.svelte-h34f85:disabled{opacity:.6;cursor:not-allowed}.auth-btn.svelte-h34f85{display:flex;align-items:center;justify-content:center;width:100%;min-height:2.375rem;padding:.625rem;margin-top:.375rem;font-size:.875rem;font-weight:600;color:#fff;background:#2a2a26;border:none;border-radius:7px;cursor:pointer;transition:background .12s,transform .1s;letter-spacing:.01em}.auth-btn.svelte-h34f85:hover:not(:disabled){background:#1a1a16}.auth-btn.svelte-h34f85:active:not(:disabled){transform:scale(.99)}.auth-btn.svelte-h34f85:disabled{opacity:.55;cursor:not-allowed}.loading-dots.svelte-h34f85{display:flex;gap:4px;align-items:center}.loading-dots.svelte-h34f85 span:where(.svelte-h34f85){width:5px;height:5px;border-radius:50%;background:#fffc;animation:svelte-h34f85-dot-bounce 1.2s ease-in-out infinite}.loading-dots.svelte-h34f85 span:where(.svelte-h34f85):nth-child(2){animation-delay:.2s}.loading-dots.svelte-h34f85 span:where(.svelte-h34f85):nth-child(3){animation-delay:.4s}@keyframes svelte-h34f85-dot-bounce{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}.auth-toggle.svelte-h34f85{display:block;width:100%;text-align:center;margin-top:.875rem;background:none;border:none;color:#6b78dd;font-size:.8125rem;cursor:pointer;padding:.25rem;transition:color .12s}.auth-toggle.svelte-h34f85:hover:not(:disabled){color:#4a58cc;text-decoration:underline}.auth-toggle.svelte-h34f85:disabled{opacity:.6;cursor:not-allowed}.auth-divider.svelte-h34f85{display:flex;align-items:center;margin:1rem 0 .75rem;color:#c4c4be;font-size:.75rem}.auth-divider.svelte-h34f85:before,.auth-divider.svelte-h34f85:after{content:"";flex:1;height:1px;background:#e8e8e4}.auth-divider.svelte-h34f85 span:where(.svelte-h34f85){padding:0 .5rem}.auth-sso-btn.svelte-h34f85{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.5625rem;font-size:.875rem;font-weight:500;color:#3a3a36;background:#fff;border:1px solid #d4d4d0;border-radius:7px;cursor:pointer;transition:background .12s,border-color .12s}.auth-sso-btn.svelte-h34f85:hover:not(:disabled){background:#fafaf8;border-color:#a4a4a0}.auth-sso-btn.svelte-h34f85:disabled{opacity:.6;cursor:not-allowed}@media(max-width:767px){.auth-page.svelte-h34f85{align-items:flex-start;padding-top:2rem}.auth-card.svelte-h34f85{max-width:100%;border-radius:0;border-left:none;border-right:none;box-shadow:none;padding:2rem 1.25rem 1.5rem}.auth-input.svelte-h34f85{font-size:1rem;padding:.75rem}.auth-btn.svelte-h34f85{min-height:48px;font-size:1rem}.auth-sso-btn.svelte-h34f85{min-height:44px}}.stats-panel.svelte-vojn1l{width:220px;min-width:220px;height:100%;border-left:1px solid rgba(0,0,0,.06);background:linear-gradient(180deg,#fafaf8,#f5f5f2);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.widgets-scroll.svelte-vojn1l{flex:1;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.375rem}.widgets-scroll.svelte-vojn1l::-webkit-scrollbar{width:3px}.widgets-scroll.svelte-vojn1l::-webkit-scrollbar-track{background:transparent}.widgets-scroll.svelte-vojn1l::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.panel-header.svelte-vojn1l{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0;background:#ffffff80}.panel-title.svelte-vojn1l{font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a8a86;display:flex;align-items:center;gap:.375rem}.header-btn.svelte-vojn1l{background:none;border:none;cursor:pointer;color:#c0c0bc;padding:.25rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.header-btn.svelte-vojn1l:hover{color:#5a5a56;background:#0000000d}.header-btn.active.svelte-vojn1l{color:#6b78dd;background:#6b78dd1a}.settings-tabs.svelte-vojn1l{display:flex;gap:.125rem;padding:.375rem .5rem;border-bottom:1px solid rgba(0,0,0,.05);background:#fff6;flex-shrink:0}.settings-tab.svelte-vojn1l{flex:1;background:none;border:none;cursor:pointer;font-size:.625rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#aaa;padding:.3125rem .25rem;border-radius:5px;transition:all .15s ease}.settings-tab.svelte-vojn1l:hover{color:#5a5a56;background:#00000008}.settings-tab.active.svelte-vojn1l{color:#6b78dd;background:#6b78dd1a}.settings-section.svelte-vojn1l{padding:.625rem .75rem;border-bottom:1px solid rgba(0,0,0,.05);background:#f5f5f2cc;flex-shrink:0}.settings-label.svelte-vojn1l{font-size:.5625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#b0b0ab;margin-bottom:.5rem}.settings-toggle.svelte-vojn1l{display:flex;align-items:center;gap:.5rem;font-size:.6875rem;font-weight:500;color:#5a5a56;cursor:pointer;padding:.25rem 0;-webkit-user-select:none;user-select:none}.settings-toggle.svelte-vojn1l input[type=checkbox]:where(.svelte-vojn1l){display:none}.toggle-track.svelte-vojn1l{width:26px;height:14px;background:#d8d8d4;border-radius:7px;position:relative;flex-shrink:0;transition:background .2s ease}.toggle-thumb.svelte-vojn1l{position:absolute;top:2px;left:2px;width:10px;height:10px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 2px #00000026}.settings-toggle.svelte-vojn1l input:where(.svelte-vojn1l):checked+.toggle-track:where(.svelte-vojn1l){background:#6b78dd}.settings-toggle.svelte-vojn1l input:where(.svelte-vojn1l):checked+.toggle-track:where(.svelte-vojn1l) .toggle-thumb:where(.svelte-vojn1l){transform:translate(12px)}.settings-hint.svelte-vojn1l{font-size:.625rem;color:#b0b0ab;line-height:1.4;margin-top:.25rem}.target-input-row.svelte-vojn1l{display:flex;align-items:center;gap:.375rem;margin-bottom:.3125rem}.target-input-label.svelte-vojn1l{font-size:.6875rem;font-weight:500;color:#777;width:52px;flex-shrink:0}.target-input.svelte-vojn1l{flex:1;font-size:.6875rem;padding:.25rem .375rem;border:1px solid rgba(0,0,0,.1);border-radius:6px;background:#fff;color:#3a3a36;min-width:0;outline:none;transition:all .15s ease}.target-input.svelte-vojn1l:focus{border-color:#6b78dd;box-shadow:0 0 0 2px #6b78dd1f}.target-input.svelte-vojn1l::placeholder{color:#c8c8c4}.empty-state.svelte-vojn1l{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;color:#c8c8c4;text-align:center;gap:.75rem}.empty-state.svelte-vojn1l p:where(.svelte-vojn1l){font-size:.6875rem;font-style:italic}.widget-card.svelte-vojn1l{background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:10px;padding:.625rem .75rem;display:flex;flex-direction:column;gap:.125rem;position:relative;transition:box-shadow .2s ease,border-color .2s ease;box-shadow:0 1px 3px #00000008}.widget-card.svelte-vojn1l:hover{box-shadow:0 2px 8px #0000000f;border-color:#00000014}.card-icon.svelte-vojn1l{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:.25rem}.words-icon.svelte-vojn1l{background:#6b78dd1a;color:#6b78dd}.session-icon.svelte-vojn1l{background:#f59e0b1a;color:#e8940a}.target-icon.svelte-vojn1l{background:#6b78dd1a;color:#6b78dd}.daily-icon.svelte-vojn1l{background:#52bd951a;color:#3da87d}.timer-icon.svelte-vojn1l{background:#a882dc1a;color:#8b6cc0}.timer-icon-done.svelte-vojn1l{background:#16a34a1a;color:#16a34a}.reading-icon.svelte-vojn1l{background:#8b5cf61a;color:#8b5cf6}.card-content.svelte-vojn1l{display:flex;flex-direction:column;gap:.0625rem}.card-label.svelte-vojn1l{font-size:.5625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#b0b0ab}.flex-label.svelte-vojn1l{flex:1}.card-value.svelte-vojn1l{font-size:1.375rem;font-weight:800;color:#2c2c2a;line-height:1.15;font-variant-numeric:tabular-nums}.session-value.svelte-vojn1l{color:#e8940a}.card-unit.svelte-vojn1l{font-size:.625rem;font-weight:600;color:#b8b8b4;margin-left:.1875rem;letter-spacing:.02em}.card-footer.svelte-vojn1l{display:flex;align-items:center;gap:.3125rem;font-size:.5625rem;color:#b0b0ab;margin-top:.125rem;font-weight:500}.footer-dot.svelte-vojn1l{width:4px;height:4px;border-radius:50%;background:#d8d8d4;flex-shrink:0}.card-hint.svelte-vojn1l{font-size:.625rem;color:#c0c0bc;line-height:1.5;margin-top:.25rem;font-style:italic}.card-header-row.svelte-vojn1l{display:flex;align-items:center;gap:.375rem;margin-bottom:.25rem}.card-header-row.svelte-vojn1l .card-icon:where(.svelte-vojn1l){width:22px;height:22px;border-radius:5px;margin-bottom:0}.card-header-row.svelte-vojn1l .card-icon:where(.svelte-vojn1l) svg:where(.svelte-vojn1l){width:12px;height:12px}.period-pill.svelte-vojn1l{background:#6b78dd14;border:none;border-radius:10px;cursor:pointer;font-size:.5rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6b78dd;padding:.1875rem .4375rem;display:flex;align-items:center;gap:.125rem;transition:all .15s ease}.period-pill.svelte-vojn1l:hover{background:#6b78dd26}.ring-row.svelte-vojn1l{display:flex;align-items:center;gap:.625rem;padding:.25rem 0}.progress-ring.svelte-vojn1l{flex-shrink:0}.ring-pct-text.svelte-vojn1l{font-size:.6875rem;font-weight:800;fill:#3a3a36;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.ring-detail.svelte-vojn1l{display:flex;flex-direction:column;align-items:flex-start;gap:0;font-size:.6875rem;color:#5a5a56}.ring-progress.svelte-vojn1l{font-weight:800;font-size:.875rem;color:#3a3a36;font-variant-numeric:tabular-nums}.ring-divider.svelte-vojn1l{font-size:.5625rem;color:#c0c0bc;display:none}.ring-goal.svelte-vojn1l{font-size:.625rem;color:#9a9a96;font-weight:500}.goal-row.svelte-vojn1l{display:flex;align-items:center;gap:.375rem}.goal-icon.svelte-vojn1l{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:#b0b0ab;flex-shrink:0}.goal-track.svelte-vojn1l{flex:1;height:6px;background:#f0f0ec;border-radius:3px;overflow:hidden}.goal-fill.svelte-vojn1l{height:100%;background:linear-gradient(90deg,#52bd95,#3da87d);border-radius:3px;transition:width .5s ease}.goal-fill.time-fill.svelte-vojn1l{background:linear-gradient(90deg,#8b6cc0,#6b78dd)}.goal-fill.goal-complete.svelte-vojn1l{background:linear-gradient(90deg,#16a34a,#22c55e)}.goal-pct.svelte-vojn1l{font-size:.5625rem;font-weight:800;color:#52bd95;width:28px;text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.goal-pct.goal-done.svelte-vojn1l{color:#16a34a}.goal-detail.svelte-vojn1l{font-size:.5625rem;color:#aaa;margin-top:.125rem;padding-left:1.625rem;font-weight:500}.timer-done-card.svelte-vojn1l{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#16a34a26}.timer-track.svelte-vojn1l{height:4px;background:#f0f0ec;border-radius:4px;overflow:hidden;margin-bottom:.25rem}.timer-fill.svelte-vojn1l{height:100%;background:linear-gradient(90deg,#f59e0b,#d97706);border-radius:4px;transition:width 1s linear}.timer-fill.timer-fill-done.svelte-vojn1l{background:linear-gradient(90deg,#16a34a,#22c55e)}.timer-row.svelte-vojn1l{display:flex;align-items:center;justify-content:space-between}.timer-display.svelte-vojn1l{font-size:1.375rem;font-weight:800;color:#2c2c2a;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.timer-done-text.svelte-vojn1l{color:#16a34a}.timer-btns.svelte-vojn1l{display:flex;gap:.25rem}.timer-btn.svelte-vojn1l{background:#f5f5f2;border:none;border-radius:6px;cursor:pointer;color:#7a7a76;padding:.3125rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.timer-btn.svelte-vojn1l:hover{background:#ebebea;color:#3a3a36}.timer-btn.running.svelte-vojn1l{background:#6b78dd1a;color:#6b78dd}.timer-reset.svelte-vojn1l:hover{background:#e0505014;color:#e05050}.timer-goal-label.svelte-vojn1l{font-size:.5625rem;color:#b0b0ab;margin-top:.125rem;font-weight:500}@media(max-width:1023px){.stats-panel.svelte-vojn1l{position:fixed;bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom));left:0;right:0;width:100%!important;min-width:unset!important;height:70vh;max-height:70vh;border-radius:20px 20px 0 0;border-left:none;border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -4px 32px #0000001f;z-index:200;animation:svelte-vojn1l-sheet-slide-up .28s cubic-bezier(.32,.72,0,1)}.stats-panel.svelte-vojn1l:before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:#d0d0cc;margin:8px auto 2px;flex-shrink:0}}@keyframes svelte-vojn1l-sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.smart-panel.svelte-1x23mpf{width:260px;min-width:260px;height:100%;border-left:1px solid rgba(0,0,0,.06);background:linear-gradient(180deg,#fafaf8,#f5f5f2);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.panel-header.svelte-1x23mpf{display:flex;align-items:center;justify-content:space-between;padding:.4375rem .5rem;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0;background:#ffffff80;gap:.25rem}.tab-bar.svelte-1x23mpf{display:flex;gap:.125rem;background:#00000008;border-radius:8px;padding:2px}.tab-pill.svelte-1x23mpf{background:none;border:none;cursor:pointer;font-size:.625rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#9a9a96;padding:.25rem .5rem;border-radius:6px;transition:all .15s ease;display:flex;align-items:center;gap:.25rem}.tab-pill.svelte-1x23mpf:hover{color:#5a5a56}.tab-pill.active.svelte-1x23mpf{color:#6b78dd;background:#fff;box-shadow:0 1px 3px #0000000f}.settings-btn.svelte-1x23mpf{background:none;border:none;cursor:pointer;color:#c0c0bc;padding:.25rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.settings-btn.svelte-1x23mpf:hover{color:#5a5a56;background:#0000000a}.settings-btn.active.svelte-1x23mpf{color:#6b78dd;background:#6b78dd1a}.settings-drawer.svelte-1x23mpf{padding:.5rem .625rem;border-bottom:1px solid rgba(0,0,0,.05);background:#f5f5f2cc;flex-shrink:0}.settings-grid.svelte-1x23mpf{display:flex;flex-wrap:wrap;gap:.25rem}.setting-chip.svelte-1x23mpf{display:flex;align-items:center;gap:.25rem;font-size:.5625rem;font-weight:600;color:#9a9a96;cursor:pointer;padding:.1875rem .4375rem;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:#fff;transition:all .15s ease;-webkit-user-select:none;user-select:none}.setting-chip.svelte-1x23mpf:hover{border-color:#00000026}.setting-chip.checked.svelte-1x23mpf{color:#6b78dd;background:#6b78dd14;border-color:#6b78dd33}.setting-chip.svelte-1x23mpf input:where(.svelte-1x23mpf){display:none}.panel-body.svelte-1x23mpf{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:.5rem;display:flex;flex-direction:column;gap:.375rem}.panel-body.svelte-1x23mpf::-webkit-scrollbar{width:3px}.panel-body.svelte-1x23mpf::-webkit-scrollbar-track{background:transparent}.panel-body.svelte-1x23mpf::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.empty-state.svelte-1x23mpf{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1rem;text-align:center;gap:.75rem}.empty-icon.svelte-1x23mpf{color:#d8d8d4}.empty-text.svelte-1x23mpf{font-size:.6875rem;color:#b0b0ab;font-style:italic;margin:0}.empty-sub.svelte-1x23mpf{font-size:.5625rem;color:#c8c8c4;margin:0}.loading-spinner.svelte-1x23mpf{width:20px;height:20px;border:2px solid rgba(107,120,221,.15);border-top-color:#6b78dd;border-radius:50%;animation:svelte-1x23mpf-spin .7s linear infinite}@keyframes svelte-1x23mpf-spin{to{transform:rotate(360deg)}}.analysis-card.svelte-1x23mpf{background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:10px;padding:.5625rem .6875rem;display:flex;flex-direction:column;gap:.375rem;transition:box-shadow .2s ease,border-color .2s ease;box-shadow:0 1px 3px #00000008}.analysis-card.svelte-1x23mpf:hover{box-shadow:0 2px 8px #0000000f;border-color:#00000014}.card-header.svelte-1x23mpf{display:flex;align-items:center;gap:.375rem}.card-icon-sm.svelte-1x23mpf{width:22px;height:22px;border-radius:5px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.readability-icon.svelte-1x23mpf{background:#6b78dd1a;color:#6b78dd}.sentence-icon.svelte-1x23mpf{background:#52bd951a;color:#3da87d}.pacing-icon.svelte-1x23mpf{background:#f59e0b1a;color:#e8940a}.repetition-icon.svelte-1x23mpf{background:#c0534e1a;color:#c0534e}.adverb-icon.svelte-1x23mpf{background:#8b5cf61a;color:#8b5cf6}.passive-icon.svelte-1x23mpf{background:#d4b87826;color:#a89050}.paragraph-icon.svelte-1x23mpf{background:#6b78dd1a;color:#6b78dd}.dialogue-icon.svelte-1x23mpf{background:#7b8ad01a;color:#7b8ad0}.summary-icon.svelte-1x23mpf{background:#6b78dd1a;color:#6b78dd}.sentiment-icon.svelte-1x23mpf{background:#52bd951a;color:#3da87d}.scene-icon.svelte-1x23mpf{background:#8b5cf61a;color:#8b5cf6}.characters-icon.svelte-1x23mpf{background:#f59e0b1a;color:#e8940a}.plothole-icon.svelte-1x23mpf{background:#c0534e1a;color:#c0534e}.filler-icon.svelte-1x23mpf{background:#f5b0001f;color:#c89a10}.phrase-icon.svelte-1x23mpf{background:#c0534e1a;color:#c0534e}.live-issues-icon.svelte-1x23mpf{background:#8b5cf61a;color:#8b5cf6}.card-label.svelte-1x23mpf{font-size:.6875rem;font-weight:700;color:#4a4a46;flex:1;letter-spacing:.01em}.card-stat.svelte-1x23mpf{font-size:.5625rem;font-weight:700;color:#b0b0ab;background:#00000008;padding:.125rem .375rem;border-radius:8px}.card-stat.stat-warn.svelte-1x23mpf,.stat-warn.svelte-1x23mpf{color:#c0534e;background:#c0534e14}.card-badge.svelte-1x23mpf{font-size:.5625rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.card-ok.svelte-1x23mpf{font-size:.6875rem;color:#3da87d;display:flex;align-items:center;gap:.3125rem;font-weight:500}.card-hint.svelte-1x23mpf{font-size:.5625rem;color:#b8b8b4;line-height:1.4}.card-warn-text.svelte-1x23mpf{font-size:.5625rem;color:#c0534e;font-style:italic;margin:0}.live-issues-card.svelte-1x23mpf{border-color:#8b5cf626;background:#8b5cf605}.live-badge.svelte-1x23mpf{font-size:.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#8b5cf6;background:#8b5cf61f;padding:.1rem .3rem;border-radius:6px}.live-section.svelte-1x23mpf{display:flex;flex-direction:column;gap:.25rem;padding-top:.25rem;border-top:1px solid rgba(0,0,0,.04)}.live-section-label.svelte-1x23mpf{font-size:.5625rem;font-weight:700;color:#8b8b87;text-transform:uppercase;letter-spacing:.05em}.filler-chip.svelte-1x23mpf{background:#f5c8001f;border-color:#c89a1040;color:#8a6a00}.phrase-chip.svelte-1x23mpf{background:#c0534e14;border-color:#c0534e33;color:#9a3d38}.live-phrase-chip.svelte-1x23mpf{background:#8b5cf614;border-color:#8b5cf633;color:#6d3fc4}.score-row.svelte-1x23mpf{display:flex;align-items:center;gap:.5rem}.score-bar.svelte-1x23mpf{flex:1;height:5px;background:#0000000a;border-radius:3px;overflow:hidden}.score-fill.svelte-1x23mpf{height:100%;border-radius:3px;transition:width .4s ease}.dialogue-fill.svelte-1x23mpf{background:linear-gradient(90deg,#7b8ad0,#6b78dd)}.score-num.svelte-1x23mpf{font-size:.625rem;font-weight:700;color:#5a5a56;min-width:2rem;text-align:right;font-variant-numeric:tabular-nums}.metric-grid.svelte-1x23mpf{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem}.metric-tile.svelte-1x23mpf{display:flex;flex-direction:column;align-items:center;padding:.3125rem .25rem;background:#00000005;border-radius:6px}.metric-num.svelte-1x23mpf{font-size:.875rem;font-weight:800;color:#3a3a36;font-variant-numeric:tabular-nums}.metric-num.metric-warn.svelte-1x23mpf{color:#c0534e}.metric-desc.svelte-1x23mpf{font-size:.5rem;color:#b0b0ab;text-align:center;font-weight:500;letter-spacing:.02em}.chip-wrap.svelte-1x23mpf{display:flex;flex-wrap:wrap;gap:.25rem}.word-chip.svelte-1x23mpf{font-size:.5625rem;font-weight:600;color:#5a5a56;background:#00000008;border:1px solid rgba(0,0,0,.06);border-radius:6px;padding:.125rem .375rem;display:flex;align-items:center;gap:.1875rem}.word-chip.adverb-chip.svelte-1x23mpf{background:#8b5cf60f;border-color:#8b5cf61f;color:#7c3aed}.chip-count.svelte-1x23mpf{font-size:.5rem;font-weight:800;color:#c0534e}.card-expand.svelte-1x23mpf summary:where(.svelte-1x23mpf){font-size:.5625rem;color:#9a9a96;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;padding:.125rem 0}.card-expand.svelte-1x23mpf summary:where(.svelte-1x23mpf):hover{color:#5a5a56}.snippet-list.svelte-1x23mpf{list-style:none;padding:.25rem 0 0;display:flex;flex-direction:column;gap:.25rem;margin:0}.snippet.svelte-1x23mpf{font-size:.5625rem;color:#6a6a66;line-height:1.45;padding:.25rem .4375rem;background:#00000005;border-radius:5px;border-left:2px solid rgba(0,0,0,.08)}.snippet.passive-snippet.svelte-1x23mpf{border-left-color:#d4b87899;background:#fdf8ee99}.stats-strip.svelte-1x23mpf{display:flex;align-items:center;gap:.375rem;padding:.3125rem .875rem;background:#00000005;border-bottom:1px solid rgba(0,0,0,.05);font-size:.5625rem;font-weight:600;color:#9a9a96;letter-spacing:.01em;flex-shrink:0}.strip-item.svelte-1x23mpf{white-space:nowrap}.strip-sep.svelte-1x23mpf{color:#d0d0cc}.insights-controls.svelte-1x23mpf{display:flex;flex-direction:column;gap:.5rem;padding:.75rem .875rem .5rem;flex-shrink:0}.analyze-row.svelte-1x23mpf{display:flex;gap:.375rem;align-items:center}.analyze-all-btn.svelte-1x23mpf{flex:1;display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.4375rem .875rem;background:#1a1a16;color:#fafaf8;border:none;border-radius:8px;font-size:.6875rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.analyze-all-btn.svelte-1x23mpf:hover:not(:disabled){background:#2a2a26}.analyze-all-btn.svelte-1x23mpf:disabled{opacity:.5;cursor:not-allowed}.analyze-expand-btn.svelte-1x23mpf{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:#0000000a;border:1px solid rgba(0,0,0,.08);border-radius:8px;cursor:pointer;color:#6a6a66;transition:background .15s;flex-shrink:0}.analyze-expand-btn.svelte-1x23mpf:hover{background:#00000014}.analyze-expand-btn.svelte-1x23mpf svg:where(.svelte-1x23mpf){transition:transform .2s}.analyze-expand-btn.expanded.svelte-1x23mpf svg:where(.svelte-1x23mpf){transform:rotate(180deg)}.individual-jobs.svelte-1x23mpf{display:flex;flex-wrap:wrap;gap:.3125rem}.job-chip-btn.svelte-1x23mpf{font-size:.5625rem;font-weight:600;padding:.25rem .625rem;background:#00000008;border:1px solid rgba(0,0,0,.08);border-radius:6px;color:#5a5a56;cursor:pointer;transition:background .12s}.job-chip-btn.svelte-1x23mpf:hover:not(:disabled){background:#00000012}.job-chip-btn.svelte-1x23mpf:disabled{opacity:.45;cursor:not-allowed}.job-error-msg.svelte-1x23mpf{font-size:.5625rem;color:#c0534e;margin:0}.jobs-mini-list.svelte-1x23mpf{display:flex;flex-direction:column;gap:.25rem}.job-mini-row.svelte-1x23mpf{display:flex;align-items:center;gap:.375rem;font-size:.5rem;font-weight:600;padding:.25rem .5rem;border-radius:6px;background:#00000005;border:1px solid rgba(0,0,0,.04)}.job-mini-type.svelte-1x23mpf{flex:1;color:#5a5a56;text-transform:capitalize}.job-mini-status.svelte-1x23mpf{font-size:.4375rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.125rem .3125rem;border-radius:4px}.job-running.svelte-1x23mpf .job-mini-status:where(.svelte-1x23mpf){background:#6b78dd1a;color:#6b78dd}.job-done.svelte-1x23mpf .job-mini-status:where(.svelte-1x23mpf){background:#3da87d1a;color:#3da87d}.job-error.svelte-1x23mpf .job-mini-status:where(.svelte-1x23mpf){background:#c0534e1a;color:#c0534e}.job-mini-bar.svelte-1x23mpf{width:40px;height:3px;background:#00000014;border-radius:2px;overflow:hidden}.job-mini-fill.svelte-1x23mpf{height:100%;background:#6b78dd;border-radius:2px;transition:width .3s ease}.insights-divider.svelte-1x23mpf{height:1px;background:#0000000d;flex-shrink:0}.ai-text.svelte-1x23mpf{font-size:.6875rem;color:#4a4a46;line-height:1.55;margin:0}.ai-chips.svelte-1x23mpf{display:flex;flex-wrap:wrap;gap:.25rem}.ai-chip.svelte-1x23mpf{font-size:.5625rem;font-weight:700;padding:.1875rem .5rem;border-radius:8px;white-space:nowrap}.chip-scene.svelte-1x23mpf{background:#6b78dd1a;color:#6b78dd}.chip-pov.svelte-1x23mpf{background:#f59e0b1a;color:#c87d1a}.chip-loc.svelte-1x23mpf{background:#52bd951a;color:#3da87d}.mention-list.svelte-1x23mpf{display:flex;flex-direction:column;gap:.375rem}.mention-row.svelte-1x23mpf{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem}.mention-name.svelte-1x23mpf{font-size:.6875rem;font-weight:700;color:#3a3a36}.mention-conf.svelte-1x23mpf{font-size:.5rem;font-weight:600;color:#9a9a96;background:#00000008;padding:.0625rem .3125rem;border-radius:6px}.mention-ctx.svelte-1x23mpf{font-size:.5625rem;color:#8a8a86;font-style:italic;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-timestamp.svelte-1x23mpf{font-size:.5rem;color:#c8c8c4;text-align:right;margin:.375rem 0 0;padding:0 .125rem;font-weight:500}.plothole-card.svelte-1x23mpf{margin-top:.25rem}.plothole-list.svelte-1x23mpf{display:flex;flex-direction:column}.plothole-item.svelte-1x23mpf{border-bottom:1px solid rgba(0,0,0,.04)}.plothole-item.svelte-1x23mpf:last-child{border-bottom:none}.plothole-resolved.svelte-1x23mpf{opacity:.45}.plothole-header.svelte-1x23mpf{display:flex;align-items:center;gap:.375rem;width:100%;padding:.375rem .125rem;background:none;border:none;cursor:pointer;text-align:left;font-size:.6875rem;color:#3a3a36;border-radius:4px;transition:background .12s}.plothole-header.svelte-1x23mpf:hover{background:#00000005}.sev-dot.svelte-1x23mpf{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sev-critical.svelte-1x23mpf{background:#dc2626}.sev-major.svelte-1x23mpf{background:#ea580c}.sev-moderate.svelte-1x23mpf{background:#d97706}.sev-minor.svelte-1x23mpf{background:#65a30d}.plothole-title.svelte-1x23mpf{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:.625rem}.plothole-cat.svelte-1x23mpf{font-size:.5rem;color:#b0b0ab;white-space:nowrap;flex-shrink:0;font-weight:500}.expand-chevron.svelte-1x23mpf{flex-shrink:0;color:#c8c8c4;transition:transform .15s ease}.expand-chevron.rotated.svelte-1x23mpf{transform:rotate(180deg)}.plothole-detail.svelte-1x23mpf{padding:.5rem .5rem .625rem;font-size:.6875rem;line-height:1.5;color:#3a3a36;background:#00000004;border-top:1px solid rgba(0,0,0,.04);border-radius:0 0 6px 6px}.ph-desc.svelte-1x23mpf{margin:0 0 .5rem}.ph-section.svelte-1x23mpf{margin-bottom:.5rem}.ph-label.svelte-1x23mpf{display:block;font-size:.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#b0b0ab;margin-bottom:.1875rem}.ph-evidence.svelte-1x23mpf{margin:0;padding-left:.875rem}.ph-evidence.svelte-1x23mpf li:where(.svelte-1x23mpf){font-style:italic;color:#6a6a66;margin-bottom:.125rem;font-size:.625rem}.ph-refs.svelte-1x23mpf{display:flex;flex-wrap:wrap;gap:.25rem}.ph-ref.svelte-1x23mpf{font-size:.5625rem;padding:.125rem .375rem;background:#0000000a;border-radius:5px;color:#6a6a66}.ph-suggestion.svelte-1x23mpf{margin:0;padding:.375rem .5rem;background:#52bd9514;border-radius:6px;border-left:2px solid #3da87d;color:#2d5e3e;font-size:.625rem}.ph-status-btn.svelte-1x23mpf{margin-top:.375rem;padding:.25rem .625rem;font-size:.625rem;font-weight:600;border:1px solid rgba(0,0,0,.12);border-radius:6px;cursor:pointer;background:#fff;color:#3a3a36;transition:all .15s ease}.ph-status-btn.svelte-1x23mpf:hover{background:#00000008}.ph-status-open.svelte-1x23mpf{border-color:#c0534e4d;color:#c0534e}.ph-status-acknowledged.svelte-1x23mpf{border-color:#8564044d;color:#856404}.ph-status-resolved.svelte-1x23mpf{border-color:#3da87d4d;color:#3da87d}.ref-section.svelte-1x23mpf{display:flex;flex-direction:column;gap:.1875rem}.ref-section.svelte-1x23mpf+.ref-section:where(.svelte-1x23mpf){margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(0,0,0,.05)}.ref-title.svelte-1x23mpf{font-size:.5625rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#b0b0ab;padding:0 .125rem .125rem}.ref-sub.svelte-1x23mpf{font-size:.5625rem;font-weight:700;color:#8a8a86;padding:.375rem .125rem .125rem;display:flex;align-items:center;gap:.375rem}.ref-count.svelte-1x23mpf{font-size:.5rem;font-weight:700;color:#b0b0ab;background:#0000000a;padding:.0625rem .3125rem;border-radius:6px}.ref-search-wrap.svelte-1x23mpf{position:relative}.ref-search-icon.svelte-1x23mpf{position:absolute;left:.4375rem;top:50%;transform:translateY(-50%);color:#c8c8c4;pointer-events:none}.ref-search.svelte-1x23mpf{width:100%;font-size:.6875rem;padding:.3125rem .5rem .3125rem 1.625rem;border:1px solid rgba(0,0,0,.08);border-radius:8px;background:#fff;color:#3a3a36;outline:none;transition:all .15s ease}.ref-search.svelte-1x23mpf:focus{border-color:#6b78dd;box-shadow:0 0 0 2px #6b78dd1a}.ref-search.svelte-1x23mpf::placeholder{color:#c8c8c4}.ref-item.svelte-1x23mpf{display:flex;align-items:center;gap:.375rem;width:100%;background:none;border:none;cursor:pointer;padding:.3125rem .375rem;border-radius:6px;text-align:left;transition:background .12s}.ref-item.svelte-1x23mpf:hover{background:#00000008}.ref-item.ref-expanded.svelte-1x23mpf{background:#6b78dd0f}.ref-icon.svelte-1x23mpf{font-size:.75rem;flex-shrink:0}.ref-name.svelte-1x23mpf{font-size:.6875rem;font-weight:600;color:#3a3a36;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-role.svelte-1x23mpf{font-size:.5rem;color:#b0b0ab;flex-shrink:0;font-weight:500}.ref-detail.svelte-1x23mpf{padding:.375rem .5rem .375rem 1.5rem;display:flex;flex-direction:column;gap:.25rem}.detail-row.svelte-1x23mpf{display:flex;gap:.375rem;align-items:baseline;font-size:.625rem}.detail-key.svelte-1x23mpf{font-weight:800;color:#9a9a96;font-size:.5rem;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.detail-val.svelte-1x23mpf{color:#4a4a46}.detail-block.svelte-1x23mpf{font-size:.625rem;color:#5a5a56;line-height:1.45}.detail-block.svelte-1x23mpf p:where(.svelte-1x23mpf){margin:.125rem 0 0}.detail-loading.svelte-1x23mpf{font-size:.625rem;color:#b0b0ab;font-style:italic;padding:.25rem 0}.rel-list.svelte-1x23mpf{list-style:none;padding:.125rem 0;display:flex;flex-direction:column;gap:.125rem;margin:0}.rel-list.svelte-1x23mpf li:where(.svelte-1x23mpf){font-size:.5625rem;color:#6a6a66}.ref-empty.svelte-1x23mpf{font-size:.6875rem;color:#b0b0ab;font-style:italic;padding:.5rem .125rem}@media(max-width:1023px){.smart-panel.svelte-1x23mpf{position:fixed;bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom));left:0;right:0;width:100%!important;min-width:unset!important;height:72vh;max-height:72vh;border-radius:20px 20px 0 0;border-left:none;border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -4px 32px #0000001f;z-index:200;animation:svelte-1x23mpf-sheet-slide-up .28s cubic-bezier(.32,.72,0,1)}.smart-panel.svelte-1x23mpf:before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:#d0d0cc;margin:8px auto 2px;flex-shrink:0}}@keyframes svelte-1x23mpf-sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.search-overlay.svelte-1wah7ro{position:fixed;inset:0;z-index:1000;background:#14141273;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.search-modal.svelte-1wah7ro{background:#fff;border:1px solid #e2e2de;border-radius:12px;box-shadow:0 8px 40px #0000002e;width:min(680px,calc(100vw - 2rem));max-height:72vh;display:flex;flex-direction:column;overflow:hidden}.search-input-row.svelte-1wah7ro{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid #e8e8e4;flex-shrink:0}.search-icon.svelte-1wah7ro{color:#a0a09c;flex-shrink:0}.search-input.svelte-1wah7ro{flex:1;border:none;outline:none;font-size:1rem;color:#2a2a26;background:transparent;font-family:inherit}.search-input.svelte-1wah7ro::placeholder{color:#b8b8b4}.search-input.svelte-1wah7ro::-webkit-search-cancel-button{display:none}.search-spinner.svelte-1wah7ro{width:16px;height:16px;border:2px solid #e0e0dc;border-top-color:#6b78dd;border-radius:50%;flex-shrink:0;animation:svelte-1wah7ro-spin .7s linear infinite}@keyframes svelte-1wah7ro-spin{to{transform:rotate(360deg)}}.search-esc.svelte-1wah7ro{font-size:.6875rem;color:#b0b0ab;background:#f2f2ee;border:1px solid #e0e0dc;border-radius:4px;padding:.1rem .375rem;font-family:inherit;flex-shrink:0;cursor:default}.search-results.svelte-1wah7ro{overflow-y:auto;padding:.5rem 0}.result-group.svelte-1wah7ro{padding:0 0 .25rem}.group-label.svelte-1wah7ro{margin:0;padding:.4rem 1rem .2rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#a0a09c;-webkit-user-select:none;user-select:none}.result-item.svelte-1wah7ro{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem 1rem;background:none;border:none;cursor:pointer;text-align:left;border-radius:0;transition:background .1s;gap:.5rem}.result-item.svelte-1wah7ro:hover{background:#f4f4f0}.result-item.svelte-1wah7ro:focus-visible{outline:2px solid #6b78dd;outline-offset:-2px}.result-left.svelte-1wah7ro{display:flex;align-items:flex-start;gap:.5rem;min-width:0;flex:1}.result-icon.svelte-1wah7ro{flex-shrink:0;margin-top:1px;color:#b0b0ab}.doc-icon.svelte-1wah7ro{color:#6b78dd}.char-icon.svelte-1wah7ro{color:#46a882}.loc-icon.svelte-1wah7ro{color:#c97a30}.book-icon.svelte-1wah7ro{color:#9068cc}.result-text.svelte-1wah7ro{display:flex;flex-direction:column;min-width:0}.result-title.svelte-1wah7ro{font-size:.875rem;font-weight:500;color:#2a2a26;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-sub.svelte-1wah7ro{font-size:.75rem;color:#9a9a96;margin-top:.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-snippet.svelte-1wah7ro{font-size:.75rem;color:#7a7a76;margin-top:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic}.match-badge.svelte-1wah7ro{flex-shrink:0;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .35rem;border-radius:4px;background:#f0f0ec;color:#9a9a96}.match-badge.semantic.svelte-1wah7ro{background:#eef;color:#6b78dd}.match-badge.content.svelte-1wah7ro{background:#fff7ed;color:#c97a30}.search-empty.svelte-1wah7ro,.search-hint.svelte-1wah7ro,.search-error.svelte-1wah7ro{margin:0;padding:1.5rem 1rem;font-size:.875rem;text-align:center;color:#a0a09c}.search-error.svelte-1wah7ro{color:#b91c1c}.search-hint.svelte-1wah7ro{line-height:1.5}@media(max-width:1023px){.search-overlay.svelte-1wah7ro{padding-top:0;align-items:stretch}.search-modal.svelte-1wah7ro{width:100%;max-width:100%;max-height:85vh;border-radius:20px 20px 0 0;margin-top:auto;border-left:none;border-right:none;border-bottom:none;box-shadow:0 -4px 32px #00000024}}@media(max-width:767px){.search-input.svelte-1wah7ro{font-size:1rem}.search-result-item{min-height:52px}}.todos-page.svelte-1hdqjyt{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto;background:#fafaf8;padding:0 0 2rem}.todos-header.svelte-1hdqjyt{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem .75rem;border-bottom:1px solid #ebebea;flex-shrink:0}.todos-header-left.svelte-1hdqjyt{display:flex;align-items:baseline;gap:.75rem}.todos-title.svelte-1hdqjyt{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0}.todos-counts.svelte-1hdqjyt{display:flex;gap:.4rem}.count-badge.svelte-1hdqjyt{font-size:.7rem;font-weight:500;padding:.15rem .5rem;border-radius:20px}.count-badge.active.svelte-1hdqjyt{background:#e8f0fe;color:#3a5ccc}.count-badge.done.svelte-1hdqjyt{background:#e8f5e9;color:#2e7d32}.todos-header-right.svelte-1hdqjyt{display:flex;align-items:center;gap:.5rem}.add-btn.svelte-1hdqjyt{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;background:#4a5568;color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .15s}.add-btn.svelte-1hdqjyt:hover{background:#2d3748}.close-btn.svelte-1hdqjyt{padding:.25rem .5rem;background:none;border:none;color:#888;font-size:.9rem;cursor:pointer;border-radius:4px;line-height:1}.close-btn.svelte-1hdqjyt:hover{color:#333;background:#f0f0ef}.filter-bar.svelte-1hdqjyt{display:flex;align-items:center;gap:1rem;padding:.6rem 2rem;border-bottom:1px solid #f0f0ef;flex-shrink:0;flex-wrap:wrap}.filter-group.svelte-1hdqjyt{display:flex;align-items:center;gap:.25rem}.filter-btn.svelte-1hdqjyt{padding:.25rem .65rem;border:1px solid transparent;border-radius:20px;font-size:.75rem;color:#666;background:none;cursor:pointer;transition:all .12s}.filter-btn.svelte-1hdqjyt:hover{background:#f0f0ef;color:#333}.filter-btn.active.svelte-1hdqjyt{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.filter-selects.svelte-1hdqjyt{gap:.5rem}.filter-select.svelte-1hdqjyt{padding:.25rem .5rem;border:1px solid #e0e0de;border-radius:6px;font-size:.75rem;color:#444;background:#fff;cursor:pointer}.new-todo-form.svelte-1hdqjyt,.edit-form.svelte-1hdqjyt{margin:.75rem 2rem;padding:1rem;background:#fff;border:1px solid #e5e5e3;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.input-title.svelte-1hdqjyt{width:100%;padding:.45rem .6rem;border:1px solid #e0e0de;border-radius:6px;font-size:.875rem;color:#1a1a1a;background:#fafaf8;outline:none;box-sizing:border-box}.input-title.svelte-1hdqjyt:focus{border-color:#4a5568;background:#fff}.input-description.svelte-1hdqjyt{width:100%;padding:.35rem .6rem;border:1px solid #e0e0de;border-radius:6px;font-size:.8rem;color:#555;background:#fafaf8;outline:none;box-sizing:border-box}.input-description.svelte-1hdqjyt:focus{border-color:#4a5568;background:#fff}.form-row.svelte-1hdqjyt{display:flex;gap:.5rem;flex-wrap:wrap}.input-select.svelte-1hdqjyt{padding:.3rem .5rem;border:1px solid #e0e0de;border-radius:6px;font-size:.78rem;color:#555;background:#fafaf8;cursor:pointer}.input-date.svelte-1hdqjyt{padding:.3rem .5rem;border:1px solid #e0e0de;border-radius:6px;font-size:.78rem;color:#555;background:#fafaf8}.form-actions.svelte-1hdqjyt{display:flex;gap:.5rem;align-items:center}.btn-primary.svelte-1hdqjyt{padding:.3rem .75rem;background:#4a5568;color:#fff;border:none;border-radius:6px;font-size:.78rem;font-weight:500;cursor:pointer;transition:background .12s}.btn-primary.svelte-1hdqjyt:hover:not(:disabled){background:#2d3748}.btn-primary.svelte-1hdqjyt:disabled{opacity:.45;cursor:not-allowed}.btn-ghost.svelte-1hdqjyt{padding:.3rem .65rem;background:none;border:1px solid #ddd;border-radius:6px;font-size:.78rem;color:#666;cursor:pointer}.btn-ghost.svelte-1hdqjyt:hover{background:#f0f0ef}.btn-danger.svelte-1hdqjyt{padding:.3rem .65rem;background:none;border:1px solid #fca5a5;border-radius:6px;font-size:.78rem;color:#dc2626;cursor:pointer;margin-left:auto}.btn-danger.svelte-1hdqjyt:hover{background:#fee2e2}.todo-list.svelte-1hdqjyt{flex:1;padding:.5rem 2rem;display:flex;flex-direction:column;gap:0}.state-msg.svelte-1hdqjyt{text-align:center;color:#999;font-size:.85rem;margin:2rem 0}.state-msg.error.svelte-1hdqjyt{color:#dc2626}.todo-item.svelte-1hdqjyt{display:flex;align-items:flex-start;gap:.6rem;padding:.6rem .5rem;border-bottom:1px solid #f5f5f4;transition:background .1s}.todo-item.svelte-1hdqjyt:hover{background:#f8f8f7;border-radius:6px}.todo-item.editing.svelte-1hdqjyt{padding:0;border:none;background:none}.todo-item.editing.svelte-1hdqjyt:hover{background:none}.todo-item.completed.svelte-1hdqjyt .todo-title:where(.svelte-1hdqjyt){text-decoration:line-through;color:#aaa}.todo-check.svelte-1hdqjyt{width:18px;height:18px;min-width:18px;border:1.5px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-top:2px;transition:all .12s;padding:0;color:#fff}.todo-check.svelte-1hdqjyt:hover{border-color:#4a5568}.todo-check.checked.svelte-1hdqjyt{background:#4a5568;border-color:#4a5568;color:#fff}.todo-body.svelte-1hdqjyt{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:.3rem}.todo-title.svelte-1hdqjyt{font-size:.875rem;color:#1a1a1a;line-height:1.4;word-break:break-word}.todo-meta.svelte-1hdqjyt{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}.priority-badge.svelte-1hdqjyt{font-size:.68rem;font-weight:600;padding:.1rem .4rem;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}.priority-high.svelte-1hdqjyt{background:#fee2e2;color:#dc2626}.priority-medium.svelte-1hdqjyt{background:#fef3c7;color:#d97706}.priority-low.svelte-1hdqjyt{background:#dbeafe;color:#2563eb}.due-date.svelte-1hdqjyt{display:flex;align-items:center;gap:.2rem;font-size:.72rem;color:#666}.due-date.overdue.svelte-1hdqjyt{color:#dc2626;font-weight:500}.book-tag.svelte-1hdqjyt{display:flex;align-items:center;gap:.2rem;font-size:.72rem;color:#7c6a9e;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.description-preview.svelte-1hdqjyt{font-size:.72rem;color:#888;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:250px}.tag.svelte-1hdqjyt{font-size:.68rem;padding:.08rem .35rem;background:#f0f0ef;color:#555;border-radius:4px}.integration-section.svelte-1hdqjyt{margin:1.5rem 2rem .5rem;padding:1rem 1.25rem;background:#fff;border:1px solid #e5e5e3;border-radius:8px;flex-shrink:0}.integration-header.svelte-1hdqjyt{display:flex;align-items:center;gap:.6rem;margin-bottom:.35rem}.integration-title.svelte-1hdqjyt{font-size:.8rem;font-weight:600;color:#333}.integration-badge.svelte-1hdqjyt{font-size:.65rem;font-weight:600;padding:.1rem .45rem;background:#f0f0ef;color:#777;border-radius:4px;text-transform:uppercase;letter-spacing:.04em}.integration-desc.svelte-1hdqjyt{font-size:.78rem;color:#666;margin:0 0 .75rem;line-height:1.5}.integration-row.svelte-1hdqjyt{display:flex;gap:.5rem;align-items:center}.integration-key-input.svelte-1hdqjyt{flex:1;padding:.35rem .6rem;border:1px solid #e0e0de;border-radius:6px;font-size:.8rem;color:#333;background:#fafaf8;outline:none}.integration-key-input.svelte-1hdqjyt:focus{border-color:#4a5568;background:#fff}.btn-sync.svelte-1hdqjyt{padding:.35rem .85rem;background:#f0f0ef;border:1px solid #ddd;border-radius:6px;font-size:.78rem;color:#555;cursor:not-allowed;opacity:.6;white-space:nowrap}.btn-sync.svelte-1hdqjyt:not(:disabled){cursor:pointer;opacity:1}.sync-status.svelte-1hdqjyt{font-size:.75rem;color:#666;margin:.5rem 0 0;font-style:italic}@media(max-width:1023px){.todos-header.svelte-1hdqjyt{padding:1rem 1.25rem .75rem}.filter-bar.svelte-1hdqjyt{padding:.5rem 1.25rem}.new-todo-form.svelte-1hdqjyt,.edit-form.svelte-1hdqjyt{margin:.625rem 1.25rem}.integration-section.svelte-1hdqjyt{margin:1rem 1.25rem .5rem}.close-btn.svelte-1hdqjyt{display:none}}@media(max-width:767px){.todos-header.svelte-1hdqjyt{padding:.875rem 1rem .625rem}.todos-title.svelte-1hdqjyt{font-size:1.125rem}.add-btn.svelte-1hdqjyt{min-height:44px;font-size:.875rem;padding:.5rem .875rem}.close-btn.svelte-1hdqjyt{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;font-size:1.125rem}.filter-bar.svelte-1hdqjyt{padding:.5rem 1rem;gap:.625rem}.filter-btn.svelte-1hdqjyt{min-height:36px;padding:.25rem .75rem}.new-todo-form.svelte-1hdqjyt,.edit-form.svelte-1hdqjyt{margin:.5rem 1rem}.input-title.svelte-1hdqjyt,.input-description.svelte-1hdqjyt,.input-select.svelte-1hdqjyt,.input-date.svelte-1hdqjyt,.filter-select.svelte-1hdqjyt,.integration-key-input.svelte-1hdqjyt{font-size:1rem}.integration-section.svelte-1hdqjyt{margin:.875rem 1rem .5rem}.todo-check.svelte-1hdqjyt{padding:13px;width:18px;height:18px;box-sizing:content-box;margin-top:-11px;margin-bottom:-11px}}.quick-add-backdrop.svelte-18g4gty{position:fixed;inset:0;background:#00000059;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;z-index:1000}.quick-add-modal.svelte-18g4gty{background:#fff;border-radius:10px;box-shadow:0 8px 40px #0000002e;width:100%;max-width:480px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.qa-header.svelte-18g4gty{display:flex;align-items:center;gap:.5rem}.qa-title.svelte-18g4gty{font-size:.875rem;font-weight:600;color:#1a1a1a;flex:1}.qa-hint.svelte-18g4gty{font-size:.65rem;padding:.12rem .4rem;background:#f0f0ef;color:#888;border-radius:4px;font-family:monospace;border:1px solid #ddd}.qa-close.svelte-18g4gty{padding:.15rem .4rem;background:none;border:none;color:#aaa;font-size:.9rem;cursor:pointer;border-radius:4px;line-height:1}.qa-close.svelte-18g4gty:hover{color:#333;background:#f0f0ef}.qa-input.svelte-18g4gty{width:100%;padding:.55rem .75rem;border:1.5px solid #e0e0de;border-radius:7px;font-size:.9rem;color:#1a1a1a;background:#fafaf8;outline:none;box-sizing:border-box;transition:border-color .12s}.qa-input.svelte-18g4gty:focus{border-color:#4a5568;background:#fff}.qa-row.svelte-18g4gty{display:flex;gap:.6rem;flex-wrap:wrap}.qa-field.svelte-18g4gty{display:flex;flex-direction:column;gap:.2rem}.qa-field-book.svelte-18g4gty{flex:1}.qa-label.svelte-18g4gty{font-size:.7rem;font-weight:500;color:#888;text-transform:uppercase;letter-spacing:.04em}.qa-select.svelte-18g4gty{padding:.3rem .5rem;border:1px solid #e0e0de;border-radius:6px;font-size:.8rem;color:#444;background:#fafaf8;cursor:pointer}.qa-date.svelte-18g4gty{padding:.3rem .5rem;border:1px solid #e0e0de;border-radius:6px;font-size:.8rem;color:#444;background:#fafaf8}.qa-error.svelte-18g4gty{font-size:.78rem;color:#dc2626;margin:0}.qa-actions.svelte-18g4gty{display:flex;gap:.5rem;justify-content:flex-end}.qa-submit.svelte-18g4gty{padding:.4rem 1rem;background:#4a5568;color:#fff;border:none;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer;transition:background .12s}.qa-submit.svelte-18g4gty:hover:not(:disabled){background:#2d3748}.qa-submit.svelte-18g4gty:disabled{opacity:.45;cursor:not-allowed}.qa-cancel.svelte-18g4gty{padding:.4rem .75rem;background:none;border:1px solid #ddd;border-radius:6px;font-size:.82rem;color:#666;cursor:pointer}.qa-cancel.svelte-18g4gty:hover{background:#f0f0ef}.skeleton.svelte-tl058d{background:linear-gradient(90deg,#f0f0ec 25%,#e6e6e2,#f0f0ec 75%);background-size:200% 100%;animation:svelte-tl058d-skeleton-shimmer 1.4s ease-in-out infinite;display:block;flex-shrink:0}@keyframes svelte-tl058d-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dashboard.svelte-1y1a8hs{flex:1;overflow-y:auto;background:#fafaf8;padding:2.25rem clamp(1.25rem,5vw,4rem);display:flex;flex-direction:column;gap:2rem;min-height:0}.dash-header.svelte-1y1a8hs,.stats-row.svelte-1y1a8hs,.books-section.svelte-1y1a8hs,.empty-state.svelte-1y1a8hs,.import-error.svelte-1y1a8hs{max-width:1200px;width:100%}.dashboard.svelte-1y1a8hs::-webkit-scrollbar{width:6px}.dashboard.svelte-1y1a8hs::-webkit-scrollbar-track{background:transparent}.dashboard.svelte-1y1a8hs::-webkit-scrollbar-thumb{background:#d8d8d4;border-radius:3px}.dash-header.svelte-1y1a8hs{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem}.date-line.svelte-1y1a8hs{font-size:.8125rem;font-weight:500;color:#9a9a96;margin-bottom:.3rem;letter-spacing:.02em}.greeting.svelte-1y1a8hs{font-size:clamp(1.6rem,3vw,2.25rem);font-weight:700;color:#1a1a16;letter-spacing:-.04em;margin-bottom:.25rem;line-height:1.15}.tagline.svelte-1y1a8hs{font-size:.9375rem;color:#7a7a76;font-weight:400}.stats-row.svelte-1y1a8hs{display:flex;gap:.875rem;flex-wrap:wrap}.stat-card.svelte-1y1a8hs{flex:1;min-width:110px;max-width:180px;background:#fff;border:1px solid #ebebea;border-radius:12px;padding:1.125rem 1.25rem;display:flex;flex-direction:column;gap:.3rem}.stat-accent.svelte-1y1a8hs{border-color:#e0e2f8;background:#f6f7ff}.stat-today.svelte-1y1a8hs{border-color:#d4f3e8;background:#f0fdf8}.stat-value.svelte-1y1a8hs{font-size:1.875rem;font-weight:700;color:#1a1a16;letter-spacing:-.04em;line-height:1}.stat-label.svelte-1y1a8hs{font-size:.7rem;color:#9a9a96;font-weight:600;text-transform:uppercase;letter-spacing:.09em}.header-actions.svelte-1y1a8hs{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.import-btn.svelte-1y1a8hs{display:inline-flex;align-items:center;gap:.5rem;padding:.5625rem 1.125rem;background:#fff;color:#1a1a16;border:1px solid #d0d0cc;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;flex-shrink:0;transition:background .12s,border-color .12s;white-space:nowrap;font-family:inherit}.import-btn.svelte-1y1a8hs:hover:not(:disabled){background:#f5f5f3;border-color:#b0b0ac}.import-btn.svelte-1y1a8hs:disabled{opacity:.5;cursor:not-allowed}@keyframes svelte-1y1a8hs-spin{to{transform:rotate(360deg)}}.import-btn.svelte-1y1a8hs .spin{animation:svelte-1y1a8hs-spin .8s linear infinite}.import-error.svelte-1y1a8hs{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:.8rem;color:#b91c1c}.dismiss-btn.svelte-1y1a8hs{background:none;border:none;color:#b91c1c;font-size:1rem;cursor:pointer;padding:0 .25rem;line-height:1}.new-book-btn.svelte-1y1a8hs{display:inline-flex;align-items:center;gap:.5rem;padding:.5625rem 1.125rem;background:#1a1a16;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;flex-shrink:0;transition:background .12s;white-space:nowrap;font-family:inherit}.new-book-btn.svelte-1y1a8hs:hover{background:#2e2e2a}.section-title.svelte-1y1a8hs{font-size:.6875rem;font-weight:700;color:#8a8a86;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.continue-card.svelte-1y1a8hs{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.125rem;background:#fff;border:1px solid #ebebea;border-radius:12px;max-width:1200px;width:100%}.continue-icon.svelte-1y1a8hs{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#6b78dd1a;border-radius:8px;color:#6b78dd;flex-shrink:0}.continue-info.svelte-1y1a8hs{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.continue-label.svelte-1y1a8hs{font-size:.6875rem;font-weight:600;color:#9a9a96;text-transform:uppercase;letter-spacing:.06em}.continue-path.svelte-1y1a8hs{font-size:.875rem;font-weight:600;color:#2a2a26;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.continue-book.svelte-1y1a8hs{color:#6b78dd}.continue-btn.svelte-1y1a8hs{display:flex;align-items:center;gap:.3125rem;padding:.4375rem .875rem;background:#1a1a16;color:#fafaf8;border:none;border-radius:8px;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s}.continue-btn.svelte-1y1a8hs:hover{background:#2a2a26}.books-section.svelte-1y1a8hs{display:flex;flex-direction:column}.books-grid.svelte-1y1a8hs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.book-card.svelte-1y1a8hs{background:#fff;border:1px solid #ebebea;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;cursor:pointer;text-align:left;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .1s}.book-card.svelte-1y1a8hs:hover{border-color:#c8c8c4;box-shadow:0 4px 16px #00000012;transform:translateY(-1px)}.book-card.svelte-1y1a8hs:active{transform:translateY(0);box-shadow:0 1px 6px #0000000f}.book-card-top.svelte-1y1a8hs{display:flex;align-items:center;justify-content:space-between}.book-cover-icon.svelte-1y1a8hs{display:flex;align-items:center}.status-badge.svelte-1y1a8hs{font-size:.6875rem;font-weight:600;padding:.2rem .5rem;border-radius:100px;border:1px solid;text-transform:capitalize;letter-spacing:.04em}.book-card-body.svelte-1y1a8hs{display:flex;flex-direction:column;gap:.375rem;flex:1}.book-title.svelte-1y1a8hs{font-size:1rem;font-weight:650;color:#1a1a16;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.015em}.book-subtitle.svelte-1y1a8hs{font-size:.8125rem;color:#8a8a86;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-chips.svelte-1y1a8hs{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;margin-top:.125rem}.book-chip.svelte-1y1a8hs{font-size:.775rem;color:#8a8a86}.book-chip-words.svelte-1y1a8hs{color:var(--color-brand);font-weight:600}.chip-sep.svelte-1y1a8hs{color:#d0d0cc;font-size:.8rem}.progress-bar-wrap.svelte-1y1a8hs{display:flex;align-items:center;gap:.4rem;margin-top:.25rem}.progress-bar-track.svelte-1y1a8hs{flex:1;height:4px;background:#f0f0ec;border-radius:2px;overflow:hidden}.progress-bar-fill.svelte-1y1a8hs{height:100%;background:var(--color-brand, #6b78dd);border-radius:2px;transition:width .4s ease;min-width:2px}.progress-pct.svelte-1y1a8hs{font-size:.6875rem;font-weight:600;color:#9a9a96;white-space:nowrap;min-width:2.5ch;text-align:right}.book-card-footer.svelte-1y1a8hs{border-top:1px solid #f0f0ec;padding-top:.75rem}.open-label.svelte-1y1a8hs{display:flex;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:600;color:#6a6a66;transition:color .12s}.book-card.svelte-1y1a8hs:hover .open-label:where(.svelte-1y1a8hs){color:#1a1a16}@keyframes svelte-1y1a8hs-empty-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.empty-state.svelte-1y1a8hs{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:5rem 2rem;text-align:center;animation:svelte-1y1a8hs-empty-fade-in .4s ease both}.empty-icon.svelte-1y1a8hs{opacity:.6;margin-bottom:.25rem}.empty-title.svelte-1y1a8hs{font-size:1.125rem;font-weight:600;color:#1a1a16;letter-spacing:-.02em}.empty-body.svelte-1y1a8hs{font-size:.9375rem;color:#7a7a76;max-width:28rem;line-height:1.5}@media(max-width:1023px){.dashboard.svelte-1y1a8hs{padding:1.5rem 1.25rem 2rem;gap:1.75rem}.dash-header.svelte-1y1a8hs{flex-direction:column;gap:.875rem}.header-actions.svelte-1y1a8hs{align-self:flex-start}.books-grid.svelte-1y1a8hs{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media(max-width:767px){.dashboard.svelte-1y1a8hs{padding:1.25rem 1rem 1.5rem;gap:1.5rem}.greeting.svelte-1y1a8hs{font-size:1.6rem}.stats-row.svelte-1y1a8hs{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.stat-card.svelte-1y1a8hs{max-width:100%;min-width:unset;padding:.875rem 1rem}.books-grid.svelte-1y1a8hs{grid-template-columns:1fr;gap:.75rem}.book-card.svelte-1y1a8hs{padding:1rem 1.125rem}.import-btn.svelte-1y1a8hs,.new-book-btn.svelte-1y1a8hs{padding:.5rem .875rem;font-size:.875rem;min-height:48px}.open-label.svelte-1y1a8hs{color:var(--color-brand, #6b78dd)}}@media(hover:none){.book-card.svelte-1y1a8hs:hover{transform:none;box-shadow:var(--shadow-card, 0 1px 3px rgba(0,0,0,.07));border-color:#ebebea}.book-card.svelte-1y1a8hs:active{transform:scale(.98);box-shadow:0 1px 4px #00000014}}.mobile-nav.svelte-v4r81b{position:fixed;bottom:0;left:0;right:0;z-index:400;display:flex;align-items:flex-start;justify-content:space-around;overflow:visible;background:#fafaf8f5;border-top:1px solid #e8e8e4;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);height:calc(var(--bottom-nav-height) + var(--safe-area-bottom));padding-top:8px;padding-bottom:var(--safe-area-bottom);padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}.nav-tab.svelte-v4r81b{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:none;cursor:pointer;padding:4px 0 2px;color:#9a9a96;min-height:48px;transition:color .12s;-webkit-tap-highlight-color:transparent}.nav-tab.svelte-v4r81b span:where(.svelte-v4r81b){font-size:.6rem;font-weight:500;letter-spacing:.01em;line-height:1}.nav-tab.active.svelte-v4r81b{color:#6b78dd}.nav-tab.active.svelte-v4r81b span:where(.svelte-v4r81b){font-weight:700}.write-tab.svelte-v4r81b{position:relative;top:-12px}.write-icon-bg.svelte-v4r81b{width:48px;height:48px;background:#1a1a26;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 14px #6b78dd59;transition:transform .1s,box-shadow .1s}.write-tab.active.svelte-v4r81b .write-icon-bg:where(.svelte-v4r81b){background:#6b78dd;box-shadow:0 4px 18px #6b78dd80}.write-tab.svelte-v4r81b:active .write-icon-bg:where(.svelte-v4r81b){transform:scale(.94)}.sheet-backdrop.svelte-phd9v0{position:fixed;inset:0;z-index:450;background:#0006;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.more-sheet.svelte-phd9v0{position:fixed;bottom:0;left:0;right:0;z-index:460;background:#fafaf8;border-radius:20px 20px 0 0;box-shadow:0 -4px 32px #00000024;padding-bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom));max-height:82vh;display:flex;flex-direction:column;animation:svelte-phd9v0-sheet-slide-up .28s cubic-bezier(.32,.72,0,1)}@keyframes svelte-phd9v0-sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.drag-handle.svelte-phd9v0{width:36px;height:4px;border-radius:2px;background:#d0d0cc;margin:10px auto 4px;flex-shrink:0}.sheet-scroll.svelte-phd9v0{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 0 .5rem;flex:1}.sheet-section.svelte-phd9v0{padding:.5rem 0;border-bottom:1px solid #f0f0ec}.sheet-section.svelte-phd9v0:last-child{border-bottom:none}.sheet-section-label.svelte-phd9v0{font-size:.6875rem;font-weight:600;color:#aaa;letter-spacing:.07em;text-transform:uppercase;padding:.5rem 1.25rem .25rem;-webkit-user-select:none;user-select:none}.sheet-item.svelte-phd9v0{display:flex;align-items:center;gap:.875rem;width:100%;background:none;border:none;cursor:pointer;padding:.875rem 1.25rem;color:#2a2a26;text-align:left;transition:background .1s;min-height:52px}.sheet-item.svelte-phd9v0:active{background:#f0f0ec}.sheet-item.active.svelte-phd9v0 .sheet-item-icon:where(.svelte-phd9v0){color:#6b78dd}.sheet-item.active.svelte-phd9v0 .sheet-item-label:where(.svelte-phd9v0){color:#6b78dd;font-weight:600}.sheet-item-icon.svelte-phd9v0{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f0f0ec;border-radius:8px;color:#5a5a56;flex-shrink:0}.sheet-item-label.svelte-phd9v0{font-size:.9375rem;font-weight:500;flex:1}.sheet-item-badge.svelte-phd9v0{font-size:.6875rem;font-weight:600;color:#6b78dd;background:#eef;border-radius:4px;padding:.125rem .375rem}.signout-item.svelte-phd9v0{color:#b91c1c}.signout-item.svelte-phd9v0 .sheet-item-icon:where(.svelte-phd9v0){color:#b91c1c;background:#fef2f2}.signout-item.svelte-phd9v0 .sheet-item-label:where(.svelte-phd9v0){color:#b91c1c}.toast-container.svelte-1ig2a9j{position:fixed;z-index:2000;display:flex;flex-direction:column;gap:.5rem;pointer-events:none;bottom:1.5rem;right:1.5rem;left:auto;align-items:flex-end;max-width:340px;width:max-content}@media(max-width:1023px){.toast-container.svelte-1ig2a9j{right:.75rem;left:.75rem;bottom:calc(var(--bottom-nav-height, 64px) + var(--safe-area-bottom, 0px) + .75rem);align-items:stretch;width:auto;max-width:none}}.toast.svelte-1ig2a9j{display:flex;align-items:center;gap:.625rem;padding:.625rem .875rem .625rem .75rem;border-radius:10px;border:1px solid transparent;box-shadow:0 4px 16px #0000001f,0 1px 4px #0000000f;font-size:.875rem;font-weight:500;line-height:1.4;pointer-events:all;animation:svelte-1ig2a9j-toast-slide-in .22s cubic-bezier(.22,1,.36,1) both;min-height:44px}@keyframes svelte-1ig2a9j-toast-slide-in{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-success.svelte-1ig2a9j{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.toast-error.svelte-1ig2a9j{background:#fef2f2;border-color:#fecaca;color:#991b1b}.toast-warning.svelte-1ig2a9j{background:#fffbeb;border-color:#fed7aa;color:#92400e}.toast-info.svelte-1ig2a9j{background:var(--color-brand-light, #eeeeff);border-color:#6b78dd4d;color:#3730a3}.toast-icon.svelte-1ig2a9j{display:flex;align-items:center;flex-shrink:0}.toast-message.svelte-1ig2a9j{flex:1;min-width:0}.toast-dismiss.svelte-1ig2a9j{background:none;border:none;cursor:pointer;padding:.25rem;border-radius:4px;color:inherit;opacity:.5;flex-shrink:0;display:flex;align-items:center;transition:opacity .12s;min-width:24px;min-height:24px;justify-content:center}.toast-dismiss.svelte-1ig2a9j:hover{opacity:.85}.toast-dismiss.svelte-1ig2a9j:focus-visible{outline:2px solid currentColor;outline-offset:1px;opacity:1}.sheet-backdrop.svelte-1v8btbv{position:fixed;inset:0;z-index:355;background:#00000059;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px)}.sheet-panel.svelte-1v8btbv{position:fixed;bottom:0;left:0;right:0;z-index:360;max-height:90dvh;background:#fafaf8;border-radius:20px 20px 0 0;box-shadow:0 -4px 32px #00000024;display:flex;flex-direction:column;overflow:hidden;animation:svelte-1v8btbv-sheet-slide-up .28s cubic-bezier(.32,.72,0,1);transition:transform .28s cubic-bezier(.32,.72,0,1)}@keyframes svelte-1v8btbv-sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-drag-handle-area.svelte-1v8btbv{padding:10px 0 4px;display:flex;justify-content:center;flex-shrink:0;cursor:grab}.sheet-drag-handle.svelte-1v8btbv{width:36px;height:4px;border-radius:2px;background:#d0d0cc}.sheet-header.svelte-1v8btbv{display:flex;align-items:center;padding:.375rem .75rem .375rem 1.25rem;border-bottom:1px solid #f0f0ec;flex-shrink:0;gap:.5rem;cursor:default}.sheet-title.svelte-1v8btbv{flex:1;font-size:1rem;font-weight:600;color:#3a3a36;margin:0;-webkit-user-select:none;user-select:none}.sheet-close-btn.svelte-1v8btbv{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.375rem;border-radius:8px;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;transition:color .12s,background .12s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.sheet-close-btn.svelte-1v8btbv:hover{color:#3a3a36;background:#ebebea}.sheet-content.svelte-1v8btbv{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:calc(var(--bottom-nav-height, 64px) + var(--safe-area-bottom, 0px))}@media(min-width:1024px){.sheet-backdrop.svelte-1v8btbv{background:#0003}.sheet-panel.svelte-1v8btbv{inset:0 0 0 auto;width:420px;max-height:none;border-radius:0;border-left:1px solid #e8e8e4;box-shadow:-4px 0 32px #0000001a;animation:svelte-1v8btbv-sheet-slide-right .28s cubic-bezier(.32,.72,0,1)}@keyframes svelte-1v8btbv-sheet-slide-right{0%{transform:translate(100%)}to{transform:translate(0)}}.sheet-drag-handle-area.svelte-1v8btbv{display:none}.sheet-content.svelte-1v8btbv{padding-bottom:0}}.app-shell.svelte-1n46o8q{display:flex;height:100vh;width:100%;max-width:100vw;overflow:hidden;background:#fafaf8}@supports (height: 100dvh){.app-shell.svelte-1n46o8q{height:100dvh}}.main-pane.svelte-1n46o8q{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.content-area.svelte-1n46o8q{flex:1;display:flex;min-height:0;overflow:hidden}.header-bar.svelte-1n46o8q{display:flex;align-items:center;padding:0 .75rem;background:#fafaf8;border-bottom:1px solid #e8e8e4;height:40px;flex-shrink:0;gap:.5rem}.header-right.svelte-1n46o8q{margin-left:auto;display:flex;align-items:center;gap:.25rem}.sub-bar.svelte-1n46o8q{display:flex;align-items:center;padding:0 .75rem;background:#f5f5f2;border-bottom:1px solid #e8e8e4;height:36px;flex-shrink:0;gap:.5rem}.sub-bar-left.svelte-1n46o8q{display:flex;align-items:center;gap:.125rem;flex:1}.sub-bar-center.svelte-1n46o8q{display:flex;align-items:center;justify-content:center;flex-shrink:0;max-width:38%}.sub-bar-right.svelte-1n46o8q{display:flex;align-items:center;justify-content:flex-end;gap:.125rem;flex:1}.book-title-btn.svelte-1n46o8q{background:none;border:none;cursor:pointer;font-size:.9375rem;font-weight:600;color:#3a3a36;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.25rem .625rem;border-radius:5px;transition:color .12s,background .12s;-webkit-user-select:none;user-select:none;letter-spacing:-.01em;max-width:100%}.book-title-btn.svelte-1n46o8q:hover{color:#1a1a16;background:#ebebea}.book-title-placeholder.svelte-1n46o8q{font-size:.8125rem;color:#c8c8c4;font-style:italic;-webkit-user-select:none;user-select:none}.back-btn.svelte-1n46o8q{color:#6b78dd;font-weight:600}.back-btn.svelte-1n46o8q:hover{color:#5a67c8;background:#eef}.sub-bar-sep.svelte-1n46o8q{width:1px;height:14px;background:#ddddd8;flex-shrink:0}.sub-btn.svelte-1n46o8q{background:none;border:none;cursor:pointer;color:#9a9a96;padding:.25rem .5rem;border-radius:5px;display:flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:500;transition:color .12s,background .12s;flex-shrink:0;white-space:nowrap}.sub-btn.svelte-1n46o8q:hover{color:#3a3a36;background:#ebebea}.sub-btn.active.svelte-1n46o8q{color:#6b78dd;background:#eef}.toolbar-btn.svelte-1n46o8q{background:none;border:none;cursor:pointer;color:#b0b0ab;padding:.3125rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s;flex-shrink:0}.toolbar-btn.svelte-1n46o8q:hover{color:#4a4a4a;background:#ebebea}.toolbar-btn.active.svelte-1n46o8q{color:#6b78dd;background:#eef}.toolbar-divider.svelte-1n46o8q{width:1px;height:18px;background:#e8e8e4;margin:0 .125rem;flex-shrink:0}.signout-btn.svelte-1n46o8q:hover{color:#b91c1c;background:#fef2f2}.home-btn.active.svelte-1n46o8q{color:#6b78dd;background:#eef}.app-shell.focus-mode.svelte-1n46o8q .main-pane:where(.svelte-1n46o8q){position:fixed;inset:0;z-index:100}.focus-exit-btn.svelte-1n46o8q{position:fixed;bottom:1.5rem;right:1.5rem;z-index:200;background:#fff;border:1px solid #e8e8e4;border-radius:8px;box-shadow:0 2px 12px #0000001a;cursor:pointer;color:#767672;font-size:.75rem;font-weight:500;padding:.5rem .75rem;display:flex;align-items:center;gap:.375rem;transition:background .12s,color .12s,box-shadow .12s}.focus-exit-btn.svelte-1n46o8q:hover{background:#f5f5f2;color:#1a1a1a;box-shadow:0 4px 16px #00000024}.binder-backdrop.svelte-1n46o8q{display:none}@media(max-width:1023px){.binder-backdrop.svelte-1n46o8q{display:block;position:fixed;inset:0;z-index:340;background:#00000073;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px)}}@media(max-width:1023px){.header-bar.svelte-1n46o8q,.sub-bar.svelte-1n46o8q{display:none}.main-pane.svelte-1n46o8q{padding-top:var(--safe-area-top)}.content-area.svelte-1n46o8q{padding-bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom))}.app-shell.svelte-1n46o8q{height:100dvh}}@media(max-width:767px){.focus-exit-btn.svelte-1n46o8q{bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom) + 1rem)}}.mobile-screen-header.svelte-1n46o8q{display:none}@media(max-width:1023px){.mobile-screen-header.svelte-1n46o8q{display:flex;align-items:center;height:52px;padding:0 .75rem;background:#fafaf8;border-bottom:1px solid #e8e8e4;flex-shrink:0;gap:.5rem}.mobile-screen-back.svelte-1n46o8q{display:flex;align-items:center;gap:.125rem;background:none;border:none;cursor:pointer;color:#6b78dd;font-size:1rem;font-weight:600;padding:.375rem .5rem .375rem .25rem;border-radius:8px;min-height:44px;min-width:64px;flex-shrink:0;transition:background .12s;-webkit-tap-highlight-color:transparent}.mobile-screen-back.svelte-1n46o8q:active{background:#eef}.mobile-screen-title.svelte-1n46o8q{flex:1;text-align:center;font-size:.9375rem;font-weight:600;color:#3a3a36;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.mobile-screen-end.svelte-1n46o8q{min-width:64px;flex-shrink:0}}:root{--bottom-nav-height: 64px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--color-brand: #6b78dd;--color-brand-light: #eeeeff;--color-brand-dim: rgba(107, 120, 221, .14);--color-text-primary: #1a1a1a;--color-text-secondary: #7a7a76;--color-text-muted: #9a9a96;--color-text-inverse: #ffffff;--color-bg-primary: #fafaf8;--color-bg-secondary: #f5f5f2;--color-bg-surface: #ffffff;--color-bg-hover: #f0f0ec;--color-border: #e8e8e4;--color-border-light: #ebebea;--color-border-strong: #d0d0cc;--color-success: #22c55e;--color-success-dim: rgba(34, 197, 94, .12);--color-warning: #f59e0b;--color-warning-dim: rgba(245, 158, 11, .12);--color-error: #b91c1c;--color-error-bg: #fef2f2;--color-error-border: #fecaca;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--shadow-card: 0 1px 3px rgba(0, 0, 0, .07), 0 1px 2px rgba(0, 0, 0, .04);--shadow-elevated: 0 4px 16px rgba(0, 0, 0, .1), 0 1px 4px rgba(0, 0, 0, .06);--shadow-overlay: 0 -4px 32px rgba(0, 0, 0, .14);--transition-fast: .1s ease;--transition-base: .2s ease;--transition-slow: .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%;width:100%;overflow:hidden}@supports (height: 100dvh){html,body,#app{height:100dvh}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:#fafaf8;color:#1a1a1a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation}*{-webkit-tap-highlight-color:transparent}@media(max-width:767px){button,a,[role=button]{touch-action:manipulation}}[data-scrollable]{-webkit-overflow-scrolling:touch}*:focus{outline:none}*:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px;border-radius:3px}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.pf-card{background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
