/* Reading and writing bridges. Layout remains owned by the module stylesheets. */
.writing-shell .brand{font:500 var(--text-lg)/1.4 var(--font-display);white-space:nowrap;flex-shrink:0}
.writing-shell .brand-mark{border:0;width:34px;height:34px}
.writing-shell .topbar{gap:var(--space-xl)}
.writing-shell .topbar nav{gap:var(--space-lg)}
.writing-shell .topbar :is(button,a,select){font-size:var(--text-xs);min-height:44px}
.writing-shell .topbar .brand{font-size:var(--text-lg)}
.writing-shell :is(.document-meta,.save-status,.panel-heading,.progress-title,.sidebar-bottom p,.volume-heading,.chapter .name,.issue-card p,.issue-card h3,.issue-card details,.issue-footer,.document-footer){font-size:var(--text-xs)}
.writing-shell :is(.segmented button,.document-actions button,.panel-tabs button,.filter-row select,.issue-footer select,.issue-footer button,.reference-group button){min-height:44px;font-size:var(--text-xs)}
.writing-shell .document-header h1{font-family:var(--font-reading);line-height:1.5}
.writing-shell .reader{font-family:var(--font-reading)}
.writing-shell .review-panel{background:var(--color-paper)}
.writing-shell .chapter-search{background:var(--color-paper-2)}
.writing-shell .chapter{min-height:44px}
@media(max-width:1200px){
 .writing-shell .topbar{height:auto;min-height:116px;padding:var(--space-sm) var(--space-lg);flex-wrap:wrap;gap:var(--space-sm) var(--space-lg)}
 .writing-shell .topbar nav{margin-left:auto;height:44px}
 .writing-shell .header-actions{width:100%;margin:0;justify-content:end;gap:var(--space-sm);flex-wrap:wrap}
 .writing-shell .app-shell{height:calc(100svh - 116px)}
}
@media(max-width:760px){
 .writing-shell .topbar{display:block;padding:var(--space-md);min-height:0}
 .writing-shell .topbar nav{justify-content:space-between;margin:var(--space-sm) 0;gap:var(--space-sm);height:auto}
 .writing-shell .header-actions{justify-content:start;gap:var(--space-xs);margin:0}
 .writing-shell .book-picker{display:flex;max-width:100%}
 .writing-shell .header-actions .icon-button{padding-inline:10px}
 .writing-shell .app-shell{display:flex;flex-direction:column;height:auto;overflow:visible}
 .writing-shell .sidebar{max-height:none;min-height:0;border-right:0;border-bottom:1px solid var(--color-rule)}
 .writing-shell .sidebar-title{padding:var(--space-md)}
 .writing-shell .chapter-search{margin:0 var(--space-md) var(--space-sm)}
 .writing-shell .chapter-list{max-height:180px;flex:none;padding-inline:var(--space-md)}
 .writing-shell .chapter .name{font-size:var(--text-xs)}
 .writing-shell .volume-heading{padding:var(--space-sm) 0}
 .writing-shell .sidebar-bottom{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);align-items:center;padding:var(--space-sm) var(--space-md)}
 .writing-shell .sidebar-bottom .progress-track{display:none}
 .writing-shell .sidebar-bottom p{margin:0}.writing-shell .sidebar-bottom .progress-title{margin:0;gap:var(--space-sm)}
 .writing-shell main{height:80svh;min-height:560px;flex:none}
 .writing-shell .document-header{padding:var(--space-lg) var(--space-md)}
 .writing-shell .document-actions{flex-wrap:wrap;justify-content:start;gap:var(--space-sm)}
 .writing-shell .reader{padding:var(--space-lg) var(--space-md) var(--space-2xl)}
 .writing-shell .workspace-toolbar{gap:var(--space-sm);padding-inline:var(--space-md)}
 .writing-shell .segmented{flex-wrap:wrap}
 .writing-shell .review-panel{min-height:340px;border:0;border-top:1px solid var(--color-rule)}
 .writing-shell .issue-list{display:block;padding:var(--space-md)}
 .writing-shell .issue-card{margin-bottom:var(--space-md)}
 .writing-shell.focus-mode .app-shell,.writing-shell.focus-mode main{height:100svh;min-height:0}
}


/* Explicit writing preferences override the house clock; default follows it. */
body.writing-shell.dark{--color-paper:var(--color-night-paper);--color-paper-2:var(--color-night-paper-2);--color-surface:var(--color-night-surface);--color-ink:var(--color-night-ink);--color-ink-2:var(--color-night-ink-2);--color-rule:var(--color-night-rule);--color-accent:var(--color-night-accent);--color-accent-ink:var(--color-night-accent-ink);--color-focus:var(--color-night-focus);--color-water:var(--color-night-water);--color-water-deep:var(--color-night-water-deep);--color-error:var(--color-night-error);color-scheme:dark}
body.writing-shell.reading-light{--color-paper:var(--color-day-paper);--color-paper-2:var(--color-day-paper-2);--color-surface:var(--color-day-surface);--color-ink:var(--color-day-ink);--color-ink-2:var(--color-day-ink-2);--color-rule:var(--color-day-rule);--color-accent:var(--color-day-accent);--color-accent-ink:var(--color-day-accent-ink);--color-focus:var(--color-day-focus);--color-water:var(--color-day-water);--color-water-deep:var(--color-day-water-deep);--color-error:var(--color-day-error);color-scheme:light}

.house-interior .reading-account{display:flex;align-items:center;justify-content:end;gap:var(--space-md);padding:8px var(--space-xl);font-size:var(--text-xs);background:var(--color-paper-2);min-height:52px}
.house-interior .reading-account :is(a,button){min-height:44px;display:inline-flex;align-items:center;white-space:nowrap;font-size:var(--text-xs);text-decoration:none}
.house-interior .reading-area{background:var(--color-surface)}
.house-interior .notes-panel,.house-interior .sidebar{background:var(--color-paper)}
.house-interior .book-heading h1{font-family:var(--font-reading);font-size:clamp(1.8rem,3vw,2.4rem);letter-spacing:-.02em}
.house-interior :is(.reader-text,.manuscript h2){font-family:var(--font-reading);color:var(--color-ink)}
.house-interior .skip{background:var(--color-accent);color:var(--color-accent-ink)}
.house-interior :is(.notes-bottom,.note-top time,.note-top strong,.note-status,.reply strong,.quote-label,.selection-hint){color:var(--color-ink-2);font-size:var(--text-xs)}
.house-interior .selection-hint{background:var(--color-paper-2);border-color:var(--color-rule)}
.house-interior .comment-composer{border-color:var(--color-rule)}
.house-interior :is(.notes-heading .eyebrow,.sidebar-heading .eyebrow,.book-button small,.chapter-meta,.selection-hint,.notes-intro,.note-meta,.quote-label,.reading-footnote,.chapter-navigation>span){font-size:var(--text-xs);color:var(--color-ink-2)}
.house-interior .reading-toolbar :is(label,button,select),.house-interior :is(.chapter-navigation button,.composer-footer button,.chapter-button){font-size:var(--text-xs);min-height:44px}
.house-interior .note-card{background:var(--color-surface);border-color:var(--color-rule);border-radius:var(--radius-input)}
.house-interior .note-card :is(p,blockquote),.house-interior .book-heading p{font-size:var(--text-xs)}
.house-interior .comment-composer textarea{font-size:var(--text-md);line-height:1.8}
.house-interior .reader-text mark{background:var(--color-paper-2);color:var(--color-ink);border-color:var(--color-rule)}
.house-interior .reader-text::selection,.house-interior .reader-text *::selection{background:var(--color-accent);color:var(--color-accent-ink)}
.house-interior .comment-composer blockquote{background:var(--color-paper-2);color:var(--color-ink);border-color:var(--color-rule)}
.house-interior .note-card blockquote{color:var(--color-ink-2);border-color:var(--color-rule)}
.house-interior .note-avatar{background:var(--color-paper-2);color:var(--color-ink-2)}
.house-interior .note-actions button{color:var(--color-accent);min-height:44px}
.house-interior :is(dialog label,.dialog-description){color:var(--color-ink-2)}
.house-interior .form-error{color:var(--color-error)}
.writing-shell .document-header h1{font-family:var(--font-reading);line-height:1.5}
.writing-shell :is(.document-header,.workspace-toolbar,.review-jump-bar){background:var(--color-paper)}
.writing-shell .reader{font-family:var(--font-reading)}
.writing-shell .review-panel,.writing-shell .editor-gutter{background:var(--color-paper)}
.writing-shell .segmented,.writing-shell .chapter-search{background:var(--color-paper-2)}
.writing-shell :is(.help-text,.chapter .count,.sidebar-title span:last-child){color:var(--color-ink-2)}
.writing-shell .primary,.writing-shell .chapter.active{color:var(--color-accent-ink);background:var(--color-accent)}
.writing-shell .reading-line.has-issue{background:var(--color-warning-surface)}
.writing-shell .reading-line.must{background:var(--color-error-surface);border-color:var(--color-error)}
.writing-shell .reading-line.selected{background:var(--color-warning-surface);border-color:var(--color-warning)}
.writing-shell .diff-row.add{background:var(--color-positive-surface);color:var(--color-positive)}
.writing-shell .diff-row.remove{background:var(--color-error-surface);color:var(--color-error)}
.writing-shell .diff-view{font:var(--text-sm)/1.9 var(--font-reading)}
.writing-shell .toast{color:var(--color-accent-ink);background:var(--color-accent)}
.house-interior .note-card.resolved,.house-interior .reply-form textarea{background:var(--color-paper-2)}
@media(max-width:680px){.house-interior .reading-toolbar{align-items:start;gap:var(--space-sm);flex-wrap:wrap}.house-interior .reading-toolbar .tools{flex-wrap:wrap}}

body.writing-shell.dark{--color-positive:var(--color-night-positive);--color-positive-surface:var(--color-night-positive-surface);--color-warning:var(--color-night-warning);--color-warning-surface:var(--color-night-warning-surface);--color-error-surface:var(--color-night-error-surface);}
body.writing-shell.reading-light{--color-positive:var(--color-day-positive);--color-positive-surface:var(--color-day-positive-surface);--color-warning:var(--color-day-warning);--color-warning-surface:var(--color-day-warning-surface);--color-error-surface:var(--color-day-error-surface);}
