:root,:root[data-theme=paper]{--theme: paper;color-scheme:light;--bg: #fbfaf8;--bg-chrome: #f4f2ee;--border-c: #e2ded6;--text: #1a1a18;--text-muted: #6b6862;--accent: #33507a;--on-accent: #fbfaf8}:root[data-theme=warm]{--theme: warm;color-scheme:light;--bg: #f6f1e7;--bg-chrome: #efe8da;--border-c: #ded3bf;--text: #2a2521;--text-muted: #6e6354;--accent: #33507a;--on-accent: #f6f1e7}:root[data-theme=slate]{--theme: slate;color-scheme:dark;--bg: #16181b;--bg-chrome: #1d2024;--border-c: #2a2e33;--text: #d8d6d1;--text-muted: #8e9198;--accent: #8fb3c7;--on-accent: #16181b}:root[data-theme=system]{--theme: system;color-scheme:light dark;--bg: #fbfaf8;--bg-chrome: #f4f2ee;--border-c: #e2ded6;--text: #1a1a18;--text-muted: #6b6862;--accent: #33507a;--on-accent: #fbfaf8}@media(prefers-color-scheme:dark){:root[data-theme=system]{--bg: #16181b;--bg-chrome: #1d2024;--border-c: #2a2e33;--text: #d8d6d1;--text-muted: #8e9198;--accent: #8fb3c7;--on-accent: #16181b}}:root{--font-prose: Charter, "Bitstream Charter", "Iowan Old Style", "Source Serif 4", Georgia, serif;--prose-size: 19px;--prose-leading: 1.62;--prose-measure: 66ch;--prose-para-space: 1.62em;--prose-weight: 400;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--ui-13: 13px;--ui-14: 14px;--ui-16: 16px;--ui-20: 20px;--ui-24: 24px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--rail-width: 240px;--panel-width: 380px;--radius: 4px;--border: 1px;--ease: cubic-bezier(.2, 0, 0, 1);--dur-fast: .12s;--dur: .14s;--dur-slow: .16s;--focus-ring: 2px solid var(--accent);--focus-ring-offset: 2px}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur: 0ms;--dur-slow: 0ms}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:var(--ui-14) / 1.5 var(--font-ui)}.shell{display:grid;grid-template-columns:var(--rail-width) 1fr var(--panel-width);height:100vh;position:relative}.resizer{position:absolute;top:0;bottom:0;width:9px;padding:0;border:0;background:none;cursor:col-resize;z-index:1;touch-action:none}.panel-resizer{right:var(--panel-width);transform:translate(4px)}.rail-resizer{left:var(--rail-width);transform:translate(-4px)}.resizer:hover,.resizer:focus-visible{background:var(--accent)}.resizer:focus-visible{outline:none}.rail.collapsed{padding:var(--space-2);overflow:hidden}.rail.collapsed>*:not(.rail-toggle){display:none}.rail-toggle{display:block;margin-left:auto;min-width:28px;min-height:28px;font:var(--ui-14) / 1 var(--font-ui);color:var(--text-muted);background:none;border:var(--border) solid transparent;border-radius:var(--radius);cursor:pointer}.rail-toggle:hover{background:var(--bg);color:var(--text)}.rail.collapsed .rail-toggle{margin:0 auto}.shell.no-panel{grid-template-columns:var(--rail-width) 1fr}.shell.panel-folded{grid-template-columns:var(--rail-width) 1fr 44px}.panel.collapsed{padding:var(--space-2);overflow:hidden}.panel.collapsed>*:not(.panel-toggle){display:none}.panel-toggle{margin-left:0;margin-right:auto}.panel.collapsed .panel-toggle{margin:0 auto}.shell.editor-folded{grid-template-columns:var(--rail-width) 44px 1fr}.manuscript{position:relative}.editor-toggle{position:absolute;top:8px;left:var(--space-2);z-index:2}.manuscript:has(>.editor-toggle)>.manuscript-bar{padding-left:calc(var(--space-2) + 36px)}.manuscript.collapsed{background:var(--bg-chrome)}.manuscript.collapsed>*:not(.editor-toggle){display:none}.rail,.panel{background:var(--bg-chrome);overflow-y:auto;padding:var(--space-4)}.rail{border-right:var(--border) solid var(--border-c)}.panel{border-left:var(--border) solid var(--border-c)}.rail h1{font:600 var(--ui-13) / 1.4 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0}.books-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin:0 0 var(--space-3)}.books-head .action{min-height:32px;padding:var(--space-1) var(--space-2);font-size:var(--ui-13)}.add-book{margin-bottom:var(--space-4)}.book-head{display:flex;align-items:flex-start;gap:var(--space-1)}.book-head h2{flex:1;min-width:0}.fold{flex:none;width:24px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);font-size:var(--ui-13);cursor:pointer}span.fold{cursor:default}.page-group{margin:var(--space-2) 0 0 var(--space-3)}.group-toggle{background:none;border:none;padding:var(--space-1) var(--space-3);min-height:28px;font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);cursor:pointer}.group-toggle .count,.group-label .count{font-weight:400}.group-label{padding:var(--space-1) var(--space-3);font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted)}.rail .meta,.panel .meta{font-size:var(--ui-13);line-height:1.4;color:var(--text-muted)}.book-list{list-style:none;margin:0;padding:0}.book-list>li+li{margin-top:var(--space-3)}.book-list h2{margin:0}.series-label{font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:var(--space-2) 0 var(--space-1)}.book.in-series{border-left:2px solid var(--border-c);padding-left:var(--space-2)}.book-archive{font:var(--ui-12, 12px) / 1.4 var(--font-ui);color:var(--text-muted);background:none;border:var(--border) solid transparent;border-radius:var(--radius);padding:2px var(--space-1);cursor:pointer;opacity:0;flex-shrink:0;align-self:center}.book-head:hover .book-archive,.book-archive:focus-visible,.archive-shelf .book-archive{opacity:1}.book-archive:hover{background:var(--bg);color:var(--text)}.archive-shelf{margin-top:var(--space-4);border-top:var(--border) solid var(--border-c);padding-top:var(--space-3)}.archive-shelf>summary{cursor:pointer;font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.archive-shelf .book-list{margin-top:var(--space-2)}.archive-shelf .book-title{color:var(--text-muted)}.book-title{width:100%;min-height:32px;text-align:left;font:600 var(--ui-16) / 1.4 var(--font-ui);color:var(--text);background:none;border:var(--border) solid transparent;border-radius:var(--radius);padding:var(--space-2) var(--space-3);cursor:pointer}.book-title:hover{background:var(--bg)}.book.open .book-title{box-shadow:inset 3px 0 0 var(--accent)}.rename{display:flex;flex-direction:column;gap:var(--space-2)}.rename .meta{font-size:var(--ui-13);color:var(--text-muted)}.rename input{width:100%;min-height:32px;font:600 var(--ui-16) / 1.4 var(--font-ui);padding:var(--space-2);border:var(--border) solid var(--accent);border-radius:var(--radius);background:var(--bg);color:var(--text)}.book .meta{padding:0 var(--space-3)}.book .chapter-list{margin-top:var(--space-2);padding-left:var(--space-3)}.chapter-list{list-style:none;margin:var(--space-6) 0 0;padding:0}.chapter-list button:not(.action):not(.move):not(.chapter-number):not(.listen){width:100%;min-height:32px;text-align:left;font:var(--ui-14) / 1.5 var(--font-ui);color:var(--text);background:none;border:var(--border) solid transparent;border-radius:var(--radius);padding:var(--space-2) var(--space-3);cursor:pointer}.chapter-list button:not(.action):not(.move):not(.chapter-number):not(.listen):hover{background:var(--bg)}.chapter-list button[aria-current=true]{background:var(--bg);border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.chapter-list li{display:flex;align-items:center;gap:var(--space-1)}.chapter-list li>*{flex:none}.chapter-list li>.chapter-entry{flex:1;min-width:0}.chapter-list .chapter-entry>*{width:100%}.chapter-list button.chapter-number,.chapter-list .chapter-number-input{width:28px;text-align:right;font:var(--ui-14) / 1.5 var(--font-ui);font-variant-numeric:tabular-nums;color:var(--text-muted);background:none;border:var(--border) solid transparent;border-radius:var(--radius);padding:var(--space-2) 0;cursor:pointer}.chapter-list button.chapter-number:hover:not(:disabled){color:var(--text);background:var(--bg)}.chapter-list .chapter-number-input{border-color:var(--accent);color:var(--text);cursor:text}.reorder{display:flex;flex-direction:column;flex:none}.chapter-list button.move{width:24px;min-height:20px;line-height:1;padding:2px 0;font-size:var(--ui-13);color:var(--text-muted);background:none;border:0;border-radius:var(--radius);cursor:pointer}.chapter-list button.move:hover:not(:disabled){color:var(--text);background:var(--bg)}.chapter-list button.move:disabled{opacity:.25;cursor:default}.chapter-list .n{color:var(--text-muted);font-variant-numeric:tabular-nums}.chapter-list .rename input{font:var(--ui-14) / 1.5 var(--font-ui);padding:var(--space-2) var(--space-3)}.add-chapter,.add-book{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.add-chapter input,.add-book input{font:var(--ui-14) / 1.5 var(--font-ui);min-height:32px;padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.manuscript{display:flex;flex-direction:column;overflow:hidden}.no-chapter{padding:var(--space-6);font:var(--ui-14) / 1.6 var(--font-ui);color:var(--text-muted)}.manuscript-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);border-bottom:var(--border) solid var(--border-c);font-size:var(--ui-13);color:var(--text-muted);min-height:44px}.chapter-title{font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text);background:none;border:var(--border) solid transparent;border-radius:var(--radius);padding:var(--space-1) var(--space-2);cursor:pointer}.chapter-title:hover{background:var(--bg)}.manuscript-bar .rename{flex-direction:row;align-items:center}.manuscript-bar .rename input{font:600 var(--ui-13) / 1.4 var(--font-ui);min-height:28px}.editor-wrap{flex:1;overflow-y:auto;display:flex;justify-content:center}textarea.prose{width:var(--prose-measure);max-width:100%;border:none;outline:none;resize:none;background:transparent;color:var(--text);font-family:var(--font-prose);font-size:var(--prose-size);line-height:var(--prose-leading);padding:var(--space-8) 0 40vh}button.action,summary.action{font:var(--ui-14) / 1.5 var(--font-ui);min-height:32px;padding:var(--space-2) var(--space-3);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);cursor:pointer}button.action:hover,summary.action:hover{border-color:var(--accent)}button.action.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}button.action.quiet{background:transparent;border-color:transparent;color:var(--accent)}button.action.quiet:hover{background:var(--bg-chrome)}button.action.chip[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 12%,var(--bg));border-color:var(--accent);font-weight:600}button.action.chip[aria-pressed=true]:before{content:"✓ "}button.action:disabled,button.action.primary:disabled,button.action.quiet:disabled{background:var(--bg-chrome);border:var(--border) dashed var(--border-c);color:var(--text-muted);cursor:not-allowed}button.action[aria-busy=true]:disabled{background:var(--bg);border-style:solid;border-color:var(--accent);color:var(--accent);cursor:progress}button.action:focus-visible,summary.action:focus-visible,.linkish:focus-visible,.book-tabs a:focus-visible,.panel-tabs a:focus-visible,.chapters-index button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pending-note{margin:var(--space-1) 0 0}.dot{font-variant-numeric:tabular-nums}.saved{color:var(--accent)}.not-saved{color:var(--text);font-weight:600}.save-failed{border:var(--border) solid var(--accent);border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin:var(--space-4) var(--space-6) 0;font-size:var(--ui-14);line-height:1.5;color:var(--text);background:var(--bg-chrome)}.panel h2{font-size:var(--ui-16);line-height:1.4;margin:0 0 var(--space-3)}.panel h3{font-size:var(--ui-13);line-height:1.4;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:var(--space-6) 0 var(--space-2);font-weight:600}.event{border:var(--border) solid var(--border-c);border-radius:var(--radius);padding:var(--space-3);margin-bottom:var(--space-2);background:var(--bg)}.event .type{font-weight:600}.event blockquote{margin:var(--space-2) 0;padding-left:var(--space-3);border-left:2px solid var(--border-c);font-family:var(--font-prose);font-size:16px}.hash{font-family:var(--font-mono);font-size:var(--ui-13);color:var(--text-muted)}.conflict{border:var(--border) solid var(--accent);border-radius:var(--radius);padding:var(--space-4);margin:var(--space-4) var(--space-6);background:var(--bg-chrome)}.conflict h2{font-size:var(--ui-16);margin:0 0 var(--space-2)}.conflict .versions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin:var(--space-3) 0}.conflict pre{font-family:var(--font-prose);font-size:16px;white-space:pre-wrap;margin:var(--space-2) 0 0;max-height:160px;overflow-y:auto}.conflict .choices{display:flex;gap:var(--space-6);margin-top:var(--space-4)}.conflict.kept .choices{margin-top:var(--space-3)}.announcer,.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.unstyled-note{font-size:var(--ui-13);color:var(--text-muted);border-top:var(--border) solid var(--border-c);margin-top:var(--space-4);padding-top:var(--space-2)}.panel-preview{margin-top:var(--space-3);max-width:46ch}.mark-form{display:flex;flex-direction:column;gap:var(--space-2)}.mark-form input{font:var(--ui-14) / 1.5 var(--font-ui);min-height:32px;padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.panel-tabs{margin:0 0 var(--space-4)}.panel-tabs ul{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0}.panel-tabs a{display:inline-block;min-height:32px;font-size:var(--ui-13);line-height:1.4;color:var(--text-muted);text-decoration:none;padding:var(--space-2) var(--space-3);border:var(--border) solid transparent;border-radius:var(--radius)}.panel-tabs a:hover{background:var(--bg);color:var(--text)}.panel-tabs a[aria-current=page]{background:color-mix(in srgb,var(--accent) 12%,var(--bg));box-shadow:inset 0 -2px 0 var(--accent);color:var(--text);font-weight:600}.signin{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.signin-form{display:flex;flex-direction:column;gap:var(--space-2);width:100%;max-width:34ch}.signin-form h1{font-size:var(--ui-16);line-height:1.4;margin:0}.signin-form .meta{font-size:var(--ui-13);line-height:1.4;color:var(--text-muted);margin:0 0 var(--space-2)}.signin-form label{font-size:var(--ui-13);line-height:1.4}.signin-form input{font:var(--ui-14) / 1.5 var(--font-ui);min-height:32px;padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.signin-form button{margin-top:var(--space-3)}.field-reveal{position:relative;display:flex}.field-reveal input{flex:1;padding-right:36px}.signin-form .field-reveal button.reveal{position:absolute;top:0;right:0;width:32px;height:100%;min-height:32px;margin-top:0;display:flex;align-items:center;justify-content:center;padding:0;border:0;background:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius)}.signin-form .field-reveal button.reveal:hover{color:var(--text)}.signin-form .field-reveal button.reveal:focus-visible{outline:var(--border) solid var(--accent);outline-offset:-2px}.signin-error:empty{display:none}.signin-error{margin:0;font-size:var(--ui-13);line-height:1.4;font-weight:600;color:var(--text);border-left:var(--space-1) solid var(--accent);padding:var(--space-2) var(--space-3);background:var(--bg-chrome);border-radius:var(--radius)}.account{margin-top:var(--space-6);padding-top:var(--space-3);border-top:var(--border) solid var(--border-c);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.account .meta{overflow-wrap:anywhere}.theme-choice{display:flex;flex-direction:column;gap:var(--space-1);width:100%;font-size:var(--ui-13);color:var(--text-muted)}.theme-choice select{width:100%;min-height:32px;padding:var(--space-1) var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);font:var(--ui-13) / 1.4 var(--font-ui)}.revision{border:var(--border) solid var(--accent);border-radius:var(--radius);padding:var(--space-3);margin-bottom:var(--space-4);background:var(--bg)}.revision blockquote{margin:var(--space-2) 0;padding-left:var(--space-3);border-left:2px solid var(--border-c);font-family:var(--font-prose);font-size:16px;white-space:pre-wrap;max-height:22em;overflow-y:auto}.revision-brief{display:block;font-size:var(--ui-13);color:var(--text-muted);margin-bottom:var(--space-2)}.revision-brief textarea{width:100%;margin-top:var(--space-2);font:var(--ui-13) / 1.5 var(--font-ui);padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical}.revision-reason{margin-top:var(--space-3)}.revision-reason label{display:block;font-size:var(--ui-13);color:var(--text-muted)}.revision-reason textarea{width:100%;margin-top:var(--space-2);font:var(--ui-13) / 1.5 var(--font-ui);padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical}.revision-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.avoiding{margin:var(--space-2) 0 var(--space-3);font:var(--ui-13) / 1.5 var(--font-ui);color:var(--text-muted)}.avoiding p{margin:0}.avoiding ul{margin:var(--space-1) 0 0;padding-left:var(--space-4)}.avoiding li{margin-top:var(--space-1)}.stated-prior{margin:var(--space-3) 0;padding-left:var(--space-3);border-left:var(--border) solid var(--border-c);font:var(--ui-13) / 1.5 var(--font-ui);color:var(--text-muted)}.stated-prior p{margin:0}.stated-prior strong{color:var(--text);font-weight:600}.stated-prior select{display:block;margin-top:var(--space-2);font:var(--ui-13) / 1.4 var(--font-ui);padding:var(--space-1) var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.muse-ask{width:100%;margin-bottom:var(--space-2);font:var(--ui-13) / 1.5 var(--font-ui);padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical}.muse-reply{font-family:var(--font-prose);font-size:16px;white-space:pre-wrap;margin-top:var(--space-2)}.muse-turn-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.muse-turn-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.muse-chip{flex:none;font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);border:var(--border) solid var(--border-c);border-radius:999px;padding:0 var(--space-2);white-space:nowrap}.muse-chip-done{color:var(--accent);border-color:var(--accent)}.muse-earlier{margin-top:var(--space-6)}.muse-earlier-title{font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-2)}.muse-folded{border-top:var(--border) solid var(--border-c);padding:var(--space-2) 0}.muse-folded>summary{cursor:pointer;display:flex;align-items:baseline;gap:var(--space-2)}.muse-folded-ask{flex:1;min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.muse-folded[open] .muse-folded-ask{display:block}.panel-feedback{margin-top:var(--space-6);padding-top:var(--space-3);border-top:var(--border) solid var(--border-c)}.panel-feedback fieldset{border:0;margin:0;padding:0}.panel-feedback legend{padding:0;font-size:var(--ui-13);color:var(--text-muted)}.panel-feedback fieldset:disabled{opacity:.6}.panel-feedback .stars{display:flex;gap:var(--space-1);margin-top:var(--space-2)}.panel-feedback .stars label{cursor:pointer;font-size:var(--ui-16);line-height:1;color:var(--border-c);padding:var(--space-2);min-width:32px;min-height:32px;text-align:center;border-radius:var(--radius)}.panel-feedback .stars label.on{color:var(--accent)}.panel-feedback .stars input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}.panel-feedback .stars input:focus-visible+span{outline:var(--border) solid var(--accent);outline-offset:2px}.panel-feedback textarea{width:100%;margin-top:var(--space-2);font:var(--ui-13) / 1.5 var(--font-ui);padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical}.keyboard-help{border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);padding:var(--space-6);max-width:420px}.keyboard-help::backdrop{background:#0006}.keyboard-help dl{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-4);margin:var(--space-4) 0}.keyboard-help dt{font-family:var(--font-mono);font-size:var(--ui-13);white-space:nowrap}.keyboard-help dd{margin:0}.first-run{display:flex;justify-content:center;min-height:100vh;padding:var(--space-12) var(--space-6);background:var(--bg);overflow-y:auto}.first-run.embedded{min-height:0;padding:var(--space-8) var(--space-6)}.first-run-card{width:100%;max-width:560px}.first-run h1,.first-run h2{font:600 var(--ui-24) / 1.3 var(--font-ui);margin:0 0 var(--space-3)}.first-run-lede{font-size:var(--ui-16);line-height:1.6;color:var(--text-muted);margin:0 0 var(--space-8)}.first-run-lede strong{color:var(--text);font-weight:600}.dropzone{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-6);border:var(--border) dashed var(--border-c);border-radius:var(--radius);background:var(--bg-chrome);transition:border-color var(--dur) var(--ease)}.dropzone.dragging{border-color:var(--accent);border-style:solid}.dropzone input[type=file]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.dropzone label.action{font:var(--ui-14) / 1.5 var(--font-ui);min-height:32px;padding:var(--space-2) var(--space-4);border:var(--border) solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);cursor:pointer}.dropzone:focus-within label.action{outline:var(--border) solid var(--accent);outline-offset:2px}.dropzone-hint{margin:0;font-size:var(--ui-13);color:var(--text-muted)}.first-run-fallback{margin:var(--space-6) 0 0;font-size:var(--ui-13);line-height:1.6;color:var(--text-muted)}.linkish{font:inherit;padding:0;border:0;background:none;color:var(--text);text-decoration:underline;cursor:pointer}.linkish:disabled{opacity:.5;cursor:default}.first-run-status,.first-run-error{margin:var(--space-4) 0 0;font-size:var(--ui-13);min-height:1.5em}.first-run-status{color:var(--text-muted)}.first-run-error{color:var(--text);font-weight:600}.first-run-note{margin:var(--space-8) 0 0;padding-top:var(--space-4);border-top:var(--border) solid var(--border-c);font-size:var(--ui-13);line-height:1.6;color:var(--text-muted)}.writing-habit{margin-top:var(--space-6);padding-top:var(--space-3);border-top:var(--border) solid var(--border-c);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.writing-habit h2{font:600 var(--ui-13) / 1.4 var(--font-ui);margin:0}.writing-habit p{margin:0}.writing-confirm{display:flex;flex-direction:column;gap:var(--space-2)}.writing-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2)}.writing-goal{display:flex;flex-direction:column;gap:var(--space-2)}.writing-goal input{font:var(--ui-14) / 1.5 var(--font-ui);width:6em;min-height:32px;padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.writing-live{display:inline-flex;align-items:center;gap:var(--space-2)}.console{max-width:1000px;margin:0 auto;padding:var(--space-6) var(--space-4);font:var(--ui-14) / 1.5 var(--font-ui);color:var(--text)}.console-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.console h1{font:600 var(--ui-16) / 1.4 var(--font-ui);margin:0}.console h2{font:600 var(--ui-14) / 1.4 var(--font-ui);margin:var(--space-6) 0 var(--space-2)}.console .meta{color:var(--text-muted);font-size:var(--ui-13);margin:var(--space-1) 0}.console .switch{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.console-table{overflow-x:auto}.console table{width:100%;border-collapse:collapse;margin-top:var(--space-2)}.console th,.console td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:var(--border) solid var(--border-c);vertical-align:top}.console th{font-size:var(--ui-13);color:var(--text-muted);font-weight:600}.console-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.console td.num,.console th:nth-child(n+7){text-align:right;font-variant-numeric:tabular-nums}.story-plan{display:flex;flex-direction:column;gap:var(--space-3);font:var(--ui-14) / 1.5 var(--font-ui)}.story-plan p{margin:0}.story-plan h3{font:600 var(--ui-14) / 1.4 var(--font-ui);margin:var(--space-2) 0}.story-plan h4{font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);margin:var(--space-2) 0 var(--space-1)}.plan-templates,.plan-rules{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.plan-template{width:100%;display:flex;flex-direction:column;gap:var(--space-1);text-align:left;padding:var(--space-3);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);font:inherit;cursor:pointer}.plan-template:hover{border-color:var(--accent)}.plan-rules>li{padding:var(--space-2) var(--space-3);border:var(--border) solid var(--border-c);border-radius:var(--radius)}.plan-buttons,.plan-options{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.plan-options{flex-direction:column}button.action.plan-option{text-align:left;white-space:normal;height:auto;padding:var(--space-2) var(--space-3)}.story-plan textarea{width:100%;min-height:64px;font:inherit;padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);margin:var(--space-1) 0}.plan-section ul{margin:0;padding-left:var(--space-4)}.rail-import{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2)}.verdicts h3{font:600 var(--ui-14) / 1.4 var(--font-ui);margin:var(--space-3) 0 var(--space-2)}.verdict.misses .type{color:var(--text);font-weight:600}.verdict.meets .type{color:var(--text-muted)}.plan-add-rule{display:flex;flex-direction:column;gap:var(--space-1)}.plan-add-rule select,.plan-rules input{font:inherit;padding:var(--space-1) var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.plan-rules input{width:100%}.plan-rework{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.plan-rework li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.plan-rework li>span{flex:1}.console.plot-grid{max-width:none}.grid-controls{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) 0}.grid-controls input{flex:1;min-width:220px;font:inherit;padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.plot-grid th[scope=row]{min-width:180px;font-weight:600}.plot-grid td{min-width:160px}.plot-grid td.quiet{background:var(--bg-chrome);box-shadow:inset 3px 0 0 var(--border-c)}.grid-cell{display:block;width:100%;min-height:32px;text-align:left;background:none;border:none;padding:0;font:inherit;color:inherit;cursor:text;white-space:normal}.plot-grid textarea{width:100%;min-height:64px;font:inherit;padding:var(--space-1);border:var(--border) solid var(--accent);border-radius:var(--radius);background:var(--bg);color:var(--text)}.reader p{margin:0 0 var(--prose-para-space, 1em);white-space:pre-wrap}@media(max-width:767px){.shell,.shell.no-panel{grid-template-columns:1fr;height:auto;min-height:100vh}.rail{border-right:none;border-bottom:var(--border) solid var(--border-c)}.panel{border-left:none;border-top:var(--border) solid var(--border-c)}.manuscript{overflow:visible}[role=separator],.rail-toggle,.add-chapter,.rail-import,.add-book,.books-head .action,.book-archive,.writing-habit,.writing-live{display:none}.reader{padding:var(--space-4)}}.credit-notice{position:sticky;top:0;z-index:2;margin:var(--space-2) 0;padding:var(--space-2) var(--space-3);border-left:3px solid var(--text);background:var(--bg-chrome);border-radius:var(--radius)}.working-banner{margin:var(--space-2) 0;padding:var(--space-3);border:var(--border) solid var(--accent);border-left-width:4px;border-radius:var(--radius);background:var(--bg);font:600 var(--ui-14) / 1.4 var(--font-ui);color:var(--text)}.working-live{position:sticky;top:var(--space-2);z-index:2;box-shadow:0 2px 8px #00000014}.working-live p{margin:0}.working-line{display:flex;align-items:center;gap:var(--space-2)}.working-sub{margin-top:var(--space-2)!important;font:var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted)}.working-bar{position:relative;height:6px;margin-top:var(--space-2);border-radius:3px;background:var(--bg-chrome);overflow:hidden}.working-bar>span{position:absolute;inset:0 auto 0 0;background:var(--accent);border-radius:3px;transition:width .4s ease}.working-bar:after{content:"";position:absolute;top:0;bottom:0;width:30%;background:var(--accent);opacity:.35;animation:working-sweep 1.6s ease-in-out infinite}.working-spinner{display:inline-block;flex:none;width:.9em;height:.9em;vertical-align:-.1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:working-spin .8s linear infinite}.flow-chapter.checking{border-color:var(--accent);border-left-color:var(--accent);background:var(--bg);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.flow-check.checking{color:var(--accent);display:inline-flex;align-items:center;gap:4px}@keyframes working-spin{to{transform:rotate(360deg)}}@keyframes working-sweep{0%{left:-30%}to{left:100%}}@media(prefers-reduced-motion:reduce){.working-spinner{animation:none;border-right-color:currentColor;opacity:.6}.working-bar:after{animation:none;display:none}}.revision-changes{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.revision-changes textarea{width:100%;font:var(--ui-14) / 1.5 var(--font-ui);padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}button.action.plan-option.suggested{border-color:var(--accent);border-width:2px}.suggested-tag{display:inline-block;margin-right:var(--space-2);padding:0 var(--space-2);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font:600 var(--ui-13) / 1.6 var(--font-ui)}.suggested-why{display:block;margin-top:var(--space-1)}.plan-scenes{margin-top:var(--space-2);padding-top:var(--space-2);border-top:var(--border) solid var(--border-c)}.plan-scenes ol{margin:0;padding-left:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.plan-scenes ol[hidden]{display:none}.plan-scenes input{margin-bottom:var(--space-1)}.scenes-toggle{display:block;width:100%;text-align:left;background:none;border:none;padding:0;min-height:28px;font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);cursor:pointer}.scenes-toggle:hover{color:var(--text)}.progress-mark{color:var(--text-muted);margin-right:2px}.progress-mark.done{color:var(--accent)}.progress-picker{font:var(--ui-13) / 1.4 var(--font-ui);padding:2px var(--space-1);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.entry-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.work-queue{margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:var(--border) solid var(--border-c)}.work-queue h2{font:600 var(--ui-16) / 1.4 var(--font-ui);margin:0 0 var(--space-2);text-transform:none;letter-spacing:0;color:var(--text)}.work-filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.work-list{list-style:none;margin:var(--space-2) 0 0;padding:0;max-height:180px;overflow-y:auto}.work-list .current{font-weight:600}.work-current{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.rhythm{margin:var(--space-4) 0 var(--space-6)}.rhythm h2{margin-top:0}.rhythm-bars{list-style:none;margin:var(--space-3) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.rhythm-bars li{display:grid;grid-template-columns:minmax(160px,260px) 1fr minmax(120px,200px);align-items:center;gap:var(--space-3)}.rhythm-label{font:var(--ui-13) / 1.3 var(--font-ui);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rhythm-track{position:relative;height:14px;background:var(--bg-chrome);border-radius:var(--radius)}.rhythm-band{position:absolute;top:0;bottom:0;background:var(--border-c);opacity:.6}.rhythm-bar{position:absolute;left:0;top:3px;bottom:3px;background:var(--accent);border-radius:var(--radius);opacity:.55}.rhythm-bar.set-piece{opacity:.9}.rhythm-bar.transition{opacity:.35}.rhythm-actual{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--text)}.rhythm-figure{font-variant-numeric:tabular-nums}.revision-copy{margin:var(--space-2) 0}.revision-done{margin:var(--space-2) 0;padding-left:var(--space-2);border-left:3px solid var(--accent)}.revision-conflict{margin:var(--space-2) 0;padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius)}.revision-conflict legend{font:600 var(--ui-13) / 1.4 var(--font-ui)}.revision-conflict label{display:block;margin:var(--space-1) 0;cursor:pointer}.revision-conflict blockquote{margin:var(--space-1) 0 0 var(--space-4)}.manuscript-bar>*{white-space:nowrap;flex-shrink:0}.manuscript-bar>.chapter-title,.manuscript-bar>.editable-title{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.export-outline{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-3)}.export-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.export-group{display:flex;flex-direction:column;gap:var(--space-2)}.export-outline+.export-buttons{margin-top:var(--space-1)}.blueprint{padding:var(--space-3);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);display:flex;flex-direction:column;gap:var(--space-2)}.blueprint h3{margin:0}.blueprint h4{font:600 var(--ui-13) / 1.4 var(--font-ui);margin:var(--space-3) 0 0}.blueprint-progress{font:var(--ui-14) / 1.6 var(--font-ui);font-variant-numeric:tabular-nums}.blueprint-fields{margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.blueprint-fields dt{font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted)}.blueprint-fields dd{margin:0}.blueprint-form{display:flex;flex-direction:column;gap:var(--space-2)}.blueprint-form label{display:flex;flex-direction:column;gap:2px}.blueprint-form input,.blueprint-parts input{font:inherit;padding:var(--space-1) var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.blueprint-parts{margin:0;padding-left:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.stevenson-parts table{width:100%;border-collapse:collapse;font:var(--ui-13) / 1.5 var(--font-ui)}.stevenson-parts td,.stevenson-parts th{text-align:left;padding:2px var(--space-2);border-bottom:var(--border) solid var(--border-c)}.stevenson-parts .num{text-align:right;font-variant-numeric:tabular-nums}.latitude-choice{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:var(--space-2) 0;font:var(--ui-14) / 1.4 var(--font-ui)}.latitude-choice label{font-weight:600}.latitude-choice select{font:inherit;min-height:32px;padding:0 var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.latitude-choice .meta{flex-basis:100%;margin:0}.plan-departures{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border) solid var(--border-c);border-left-width:4px;border-radius:var(--radius)}.plan-departures-title{font:600 var(--ui-13) / 1.4 var(--font-ui);margin:0}.plan-departures ul{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.plan-departures p{margin:0}.book-timeline{max-width:1000px;font:var(--ui-14) / 1.5 var(--font-ui)}@media(min-width:641px){.book-timeline:not(.book-cast):not(.book-voyage) table{table-layout:fixed;width:100%}.book-timeline:not(.book-cast):not(.book-voyage) th:nth-child(1){width:20%}.book-timeline:not(.book-cast):not(.book-voyage) th:nth-child(2){width:47%}.book-timeline:not(.book-cast):not(.book-voyage) th:nth-child(3){width:22%}.book-timeline:not(.book-cast):not(.book-voyage) th:nth-child(4){width:11%}}.book-timeline:not(.book-cast):not(.book-voyage) td:first-child{overflow-wrap:anywhere}.book-timeline .timeline-stack{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-1)}.book-timeline .timeline-stack>.action{margin-left:0;width:100%}.book-timeline .timeline-move{display:flex;gap:var(--space-1)}.book-timeline .timeline-move .action{flex:1;margin-left:0}.book-timeline .timeline-event{white-space:pre-line}.book-timeline .timeline-actions{white-space:nowrap;text-align:right}.book-timeline .timeline-actions .action{margin-left:var(--space-1)}.book-timeline input,.book-timeline textarea{width:100%;font:inherit;padding:var(--space-1) var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.book-timeline textarea{min-height:64px}.timeline-chip{display:inline-block;margin-left:var(--space-2);padding:0 var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);font:600 var(--ui-12, 12px) / 1.6 var(--font-ui);color:var(--text-muted);white-space:nowrap}.timeline-add{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-6);max-width:640px}.timeline-add label{display:flex;flex-direction:column;gap:2px}.timeline-add h3{font:600 var(--ui-14) / 1.4 var(--font-ui);margin:0}.picture-list{list-style:none;padding:0;margin:var(--space-4) 0 0;display:flex;flex-direction:column;gap:var(--space-3)}.picture-card{border:var(--border) solid var(--border-c);border-radius:8px;padding:var(--space-3)}.picture-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.picture-head h3{font:600 var(--ui-14) / 1.4 var(--font-ui);margin:0}.picture-facts{display:grid;grid-template-columns:max-content 1fr;gap:2px var(--space-3);margin:var(--space-2) 0}.picture-facts dt{color:var(--fg-muted, inherit);opacity:.8}.picture-facts dd{margin:0;overflow-wrap:anywhere}.picture-brief summary{cursor:pointer}.picture-brief p{white-space:pre-wrap;margin:var(--space-1) 0 0}.picture-form{display:flex;flex-direction:column;gap:var(--space-2)}.picture-field{display:flex;flex-direction:column;gap:2px}.picture-field textarea{min-height:4.5em}.picture-card .cast-remove{background:var(--bg-chrome);padding:var(--space-2);margin-top:var(--space-2);border-radius:6px}@media(max-width:600px){.picture-facts{grid-template-columns:1fr}}.picture-image{margin:var(--space-2) 0}.picture-image img{display:block;max-width:100%;max-height:420px;width:auto;height:auto;border-radius:6px;border:var(--border) solid var(--border-c)}.picture-image figcaption{margin-top:2px}.picture-upload{cursor:pointer;display:inline-flex;align-items:center}.picture-upload:focus-within{outline:2px solid currentColor;outline-offset:2px}@media(max-width:640px){.book-timeline table,.book-timeline tbody,.book-timeline tr,.book-timeline td{display:block}.book-timeline thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.book-timeline tr{padding:var(--space-2) 0;border-bottom:var(--border) solid var(--border-c)}.book-timeline td{padding:2px 0;border-bottom:0}.book-timeline td:first-child{font-weight:600;white-space:normal}.book-timeline td[data-label]:before{content:attr(data-label) ": ";color:var(--text-muted)}.book-timeline .timeline-actions{text-align:left;padding-top:var(--space-1)}.book-timeline .timeline-actions .action:first-child{margin-left:0}.book-timeline .timeline-stack{flex-direction:row;flex-wrap:wrap}.book-timeline .timeline-stack>.action{width:auto}}.book-flow{max-width:900px}.flow-list{list-style:none;margin:var(--space-4) 0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.flow-chapter{padding:var(--space-3);border:var(--border) solid var(--border-c);border-radius:var(--radius);border-left-width:4px}.flow-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3)}.flow-head h2{margin:0;font:600 var(--ui-16) / 1.4 var(--font-ui);flex:1;min-width:200px}.flow-summary{margin:var(--space-2) 0 0}.flow-check{font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);white-space:nowrap}.flow-check.edited{color:var(--text)}.flow-check.checked{color:var(--accent)}.flow-chapter.settled{background:var(--bg-chrome);border-left-color:var(--border-c)}.flow-chapter.needs{border-left-color:var(--accent)}.flow-note.gone{opacity:.72;border-left-color:var(--border-c)}.flow-gone{margin-top:var(--space-3)}.flow-gone>summary{cursor:pointer;font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted)}.flow-recheck{padding-left:var(--space-2);border-left:2px solid var(--text)}.flow-moved{margin:var(--space-1) 0;font-weight:600;color:var(--accent)}.flow-first-raised summary{cursor:pointer}.flow-first-raised p{margin-top:var(--space-1)}.flow-fixed{margin-top:var(--space-3)}.flow-fixed>summary{cursor:pointer;font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--accent)}.echoes{margin:var(--space-4) 0;padding:var(--space-3);border:var(--border) solid var(--border-c);border-left:4px solid var(--accent);border-radius:var(--radius)}.echoes h2{margin:0 0 var(--space-2);font:600 var(--ui-16) / 1.4 var(--font-ui)}.echoes-list{margin:var(--space-3) 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.echoes-list>li>p{margin:0 0 var(--space-1)}.echoes-list ul{margin:0;padding-left:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.echoes-where{display:block;font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted)}.echoes-list q{overflow-wrap:anywhere}.echoes-list>li>.action{margin-top:var(--space-2)}.flow-outdated{font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted)}.flow-fixed ul{margin:var(--space-2) 0 0;padding-left:var(--space-4)}.flow-fixed li p{margin:var(--space-1) 0}.flow-marked>summary{color:var(--text-muted)}.flow-note{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg-chrome);border-radius:var(--radius);border-left:3px solid var(--border-c)}.flow-note.error{border-left-color:var(--text)}.flow-note.deliberate{border-left-color:var(--accent)}.flow-note p{margin:var(--space-1) 0}.flow-note-head{display:flex;gap:var(--space-2);align-items:baseline}.flow-badge{font:600 var(--ui-13) / 1.4 var(--font-ui)}.flow-tick{display:inline-flex;gap:var(--space-1);align-items:center;font:600 var(--ui-13) / 1.4 var(--font-ui);cursor:pointer}.flow-tick input{width:18px;height:18px}.flow-direction{margin:var(--space-2) 0;padding:var(--space-2) var(--space-3);border-left:3px solid var(--accent);display:grid;gap:var(--space-2)}.flow-amount{display:flex;flex-wrap:wrap;gap:var(--space-3);font:var(--ui-13) / 1.4 var(--font-ui)}.flow-amount label{display:inline-flex;align-items:center;gap:var(--space-1);cursor:pointer}.flow-direction-text{display:grid;gap:var(--space-1);font:600 var(--ui-13) / 1.4 var(--font-ui)}.flow-direction-text textarea{font:var(--ui-14) / 1.5 var(--font-ui);padding:var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical}.story-bible summary{cursor:pointer}.story-bible summary h2{display:inline}.story-bible h3{font:600 var(--ui-14) / 1.4 var(--font-ui);margin:var(--space-3) 0 var(--space-1)}.console.book-page{max-width:1200px}.book-page-body .console{max-width:none;margin:0;padding:0}.book-page-body .book-flow,.book-page-body .book-timeline,.book-page-body .book-timeline.book-cast,.book-page-body .book-timeline.book-voyage{max-width:none}.book-page-body p{max-width:760px}.book-page-bar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin:var(--space-3) 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:var(--border) solid var(--border-c)}.book-tabs{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-6)}.book-tabs a{display:inline-block;min-height:32px;padding:var(--space-2) 0;border-bottom:2px solid transparent;color:var(--text-muted);text-decoration:none;font:var(--ui-14) / 1.4 var(--font-ui)}.book-tabs a:hover{color:var(--text)}.book-tabs a[aria-current=page]{border-bottom-color:var(--accent);color:var(--text);font-weight:600}.console-head-actions{display:flex;gap:var(--space-2);align-items:flex-start}.export-menu{position:relative}.export-menu>summary{list-style:none;display:inline-flex;align-items:center}.export-menu>summary::-webkit-details-marker{display:none}.export-menu>summary:after{content:" ▾";white-space:pre}.export-menu-body{position:absolute;right:0;top:calc(100% + var(--space-1));z-index:5;width:300px;max-width:calc(100vw - 2 * var(--space-4));display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);background:var(--bg);border:var(--border) solid var(--border-c);border-radius:var(--radius);box-shadow:0 4px 16px color-mix(in srgb,var(--text) 10%,transparent)}.book-page .export-outline{margin-top:0}.book-page-body .story-plan{max-width:760px}.book-page-link{width:100%;white-space:normal;text-align:left}.plan-rules .progress-picker{margin-right:var(--space-2)}.book-page h1{font:600 var(--ui-20) / 1.3 var(--font-ui)}.series-control{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:var(--space-2) 0 var(--space-3);font:var(--ui-14) / 1.4 var(--font-ui)}.series-control select,.series-new input{font:inherit;min-height:32px;padding:0 var(--space-2);border:var(--border) solid var(--border-c);border-radius:var(--radius);background:var(--bg);color:var(--text)}.series-new{display:flex;gap:var(--space-2)}.story-bible-earlier{margin-top:var(--space-3)}.story-bible-earlier>summary h3{display:inline}.story-bible-craft{margin-bottom:var(--space-3)}.story-bible-craft h4{font:500 var(--ui-14) / 1.4 var(--font-ui);margin:var(--space-2) 0 var(--space-1)}.series-source{display:inline-flex;align-items:center;gap:var(--space-1)}.series-source input{width:18px;height:18px}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cast-list{list-style:none;padding:0;margin:0 0 var(--space-3)}.cast-list>li{margin-bottom:var(--space-2)}.cast-person p{margin:var(--space-1) 0 0}.cast-edit{display:grid;gap:var(--space-1);margin-top:var(--space-1)}.cast-edit textarea{width:100%}.form-summary{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-1) var(--space-3);margin:var(--space-3) 0}.form-summary dt{font-weight:600}.form-summary dd{margin:0}.form-sections{width:100%;border-collapse:collapse;margin:var(--space-3) 0}.form-sections caption{text-align:left;font-weight:600;margin-bottom:var(--space-1)}.form-sections th,.form-sections td{text-align:left;padding:var(--space-1) var(--space-2) var(--space-1) 0;vertical-align:top;font-weight:400}.form-sections thead th{font-weight:600}.form-sections td:nth-child(2){width:50%}.form-bar{display:block;height:6px;background:var(--text);opacity:.35;border-radius:3px;margin-bottom:2px}.read-afresh{margin:var(--space-2) 0}.read-afresh label{display:inline-flex;align-items:center;gap:var(--space-2);font:600 var(--ui-13) / 1.4 var(--font-ui);cursor:pointer}.read-afresh .meta{margin:var(--space-1) 0 0}.plan-reword{display:flex;flex-direction:column;gap:var(--space-1)}.plan-reword label{font:600 var(--ui-13) / 1.4 var(--font-ui)}.plan-reword textarea{width:100%;box-sizing:border-box}.cast-group h3{font:600 var(--ui-14) / 1.4 var(--font-ui);margin:var(--space-4) 0 var(--space-2)}.cast-edit{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-2)}.cast-edit .cast-field:has(textarea),.cast-edit .plan-buttons{grid-column:1 / -1}.cast-field{display:flex;flex-direction:column;gap:2px}@media(min-width:641px){.book-cast table{table-layout:fixed;width:100%}.book-cast th:nth-child(1){width:20%}.book-cast th:nth-child(2){width:12%}.book-cast th:nth-child(3){width:8%}.book-cast th:nth-child(4){width:30%}.book-cast th:nth-child(5){width:9%}.book-cast th:nth-child(6){width:11%}.book-cast th:nth-child(7){width:10%}.book-cast .timeline-actions{white-space:normal}}.book-timeline.book-cast{max-width:1200px}.book-cast td:first-child{white-space:normal;overflow-wrap:anywhere}.book-cast .cast-name{display:block}.book-cast .cast-chip{margin:var(--space-1) 0 0}@media(max-width:640px){.book-cast td[data-label]:empty{display:none}.book-cast td[data-label]:before{content:attr(data-label) ": ";color:var(--text-muted);font-weight:600}}.book-timeline.book-voyage{max-width:1200px}@media(max-width:640px){.book-voyage td[data-label]:empty{display:none}}.book-page-body .story-plan:has(.chapters-split){max-width:none}.chapters-split{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,760px);gap:var(--space-4);align-items:start}.chapters-index{position:sticky;top:var(--space-3);max-height:calc(100vh - 2 * var(--space-3));overflow-y:auto;border-right:var(--border) solid var(--border-c);padding-right:var(--space-2)}.chapters-index ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.chapters-index button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;min-height:44px;padding:var(--space-1) var(--space-2);background:none;border:var(--border) solid transparent;border-radius:var(--radius);font:var(--ui-14) / 1.4 var(--font-ui);color:var(--text);cursor:pointer}.chapters-index button:hover{background:var(--bg-chrome)}.chapters-index button[aria-current]{background:var(--bg-chrome);border-color:var(--accent)}.chapters-index button[aria-current] .chapters-title{font-weight:600}.chapters-index .meta{font-size:var(--ui-13);color:var(--text-muted)}.chapters-part{margin:var(--space-3) 0 var(--space-1);padding:0 var(--space-2);font:600 var(--ui-13) / 1.4 var(--font-ui);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.chapters-index li:first-child .chapters-part{margin-top:0}@media(max-width:767px){.chapters-split{grid-template-columns:minmax(0,1fr)}.chapters-index{position:static;max-height:40vh;border-right:none;border-bottom:var(--border) solid var(--border-c);padding:0 0 var(--space-2)}}.cast-remove td{background:var(--bg-chrome)}.cast-remove ul{margin:var(--space-1) 0 var(--space-2);padding-left:var(--space-4)}.cast-remove p{margin:0}.manuscript-bar{position:relative}.manuscript-bar>.remove-chapter{position:absolute;top:100%;right:var(--space-6);z-index:20;width:min(34rem,calc(100vw - 2 * var(--space-4)));white-space:normal;color:var(--text);background:var(--bg-chrome);border:var(--border) solid var(--border-c);border-radius:var(--radius);padding:var(--space-3) var(--space-4);box-shadow:0 6px 18px #0000002e}.remove-chapter p{margin:0}.remove-chapter ul{margin:var(--space-1) 0 var(--space-2);padding-left:var(--space-4)}.remove-chapter-confirm{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-2)}.remove-chapter-confirm input{font:var(--ui-14) / 1.4 var(--font-ui);min-height:32px}button.listen{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;flex:none;color:var(--text-muted);background:none;border:0;border-radius:var(--radius);cursor:pointer;vertical-align:middle}button.listen:hover{color:var(--text);background:var(--bg)}button.listen.on{color:var(--accent)}.page-group>button.listen{margin-left:calc(-1 * var(--space-2))}.player{position:fixed;left:50%;bottom:var(--space-4);transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:var(--space-2);width:min(460px,calc(100vw - 32px));padding:var(--space-2) var(--space-3);background:var(--bg-chrome);color:var(--text);border:var(--border) solid var(--border-c);border-radius:calc(var(--radius) * 2);box-shadow:0 6px 24px #0000002e;font:var(--ui-13) / 1.4 var(--font-ui)}.player-what{flex:1;min-width:0}.player-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player .meta{color:var(--text-muted);font-weight:400;min-height:0}.player-bar{height:3px;margin:4px 0 2px;background:var(--border-c);border-radius:2px;overflow:hidden}.player-bar>span{display:block;height:100%;background:var(--accent);transition:width var(--dur) var(--ease)}.player-btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--space-1);flex:none;color:var(--text);background:none;border:0;border-radius:50%;cursor:pointer;font:600 var(--ui-13) / 1 var(--font-ui);font-variant-numeric:tabular-nums}.player-btn:hover:not(:disabled){background:var(--bg)}.player-btn:disabled{opacity:.4;cursor:default}.player-btn.rate{border-radius:var(--radius);color:var(--text-muted)}.player-voice{flex:none;max-width:132px;height:28px;padding:0 var(--space-1);font:var(--ui-13) / 1 var(--font-ui);color:var(--text);background:var(--bg);border:var(--border) solid var(--border-c);border-radius:var(--radius);cursor:pointer}
