:root{--writer-size:18px;--writer-line:2;--writer-gap:.75em;--writer-width:1100px;--writer-indent:0;--writer-font:var(--serif);--writer-paper:var(--canvas);--writer-soft:#f7f3ea;--writer-active:#e0e5de;--writer-quote:#f8f4e9;--writer-warning:#f1e4bd;--writer-warning-ink:#66532e;--writer-error:#a04136;--writer-selection:#dce6e8;--writer-added:#e2efd7;--writer-removed:#f7d9cf}
:root[data-studio-theme=light]{--paper:#ffffff;--canvas:#f3f5f2;--side:#e9eee8;--ink:#28312d;--sub:#59655e;--line:#cbd6ce;--blue:#2c627b;--blue-wash:#e0ebef;--green:#3d6650;--accent:#8f5737;--writer-paper:#ffffff;--writer-soft:#eef2ee;--writer-active:#dce8e0;--writer-quote:#edf3ef;--writer-selection:#d0e3e7}
:root[data-studio-theme=green]{--paper:#f0f5eb;--canvas:#e0e9da;--side:#d7e2d0;--ink:#26372d;--sub:#53634f;--line:#b3c5ac;--blue:#305d6a;--blue-wash:#d6e5db;--green:#335c42;--accent:#7c5132;--writer-paper:#e8f0e2;--writer-soft:#dce7d5;--writer-active:#c4d7bc;--writer-quote:#d7e5cf;--writer-selection:#bdcfb5}
:root[data-studio-theme=night]{--paper:#233029;--canvas:#151e18;--side:#1c2820;--ink:#eee8db;--sub:#bac6b8;--line:#435549;--blue:#a7cbd4;--blue-wash:#283d3f;--green:#aecab5;--accent:#dfb489;--writer-paper:#19241d;--writer-soft:#1d2b22;--writer-active:#344b3b;--writer-quote:#293b2f;--writer-warning:#433924;--writer-warning-ink:#efd8ab;--writer-error:#ffb7a3;--writer-selection:#456352;--writer-added:#274536;--writer-removed:#4d302e}
.paper,.focus-mode .paper{width:var(--writer-column,94%);max-width:var(--writer-width);background:var(--writer-paper)}
.tiptap{font-family:var(--writer-font);font-size:var(--writer-size);line-height:var(--writer-line);color:var(--ink);caret-color:var(--blue)}
.tiptap h2{font-size:1.25em;line-height:1.6}
.tiptap p{margin-bottom:var(--writer-gap)}
.tiptap>p:not(.is-editor-empty){text-indent:var(--writer-indent)}
.tiptap blockquote{color:var(--sub);border-color:var(--accent)}
.tiptap p.is-editor-empty:first-child:before{color:var(--sub)}
.tiptap ::selection{background:var(--writer-selection);color:var(--ink)}
.chapter-title{font-family:var(--writer-font);font-size:clamp(27px,calc(var(--writer-size)*1.65),44px)}
.edit-meta{flex-wrap:wrap;min-width:0}
.editor-toolbar{position:sticky;top:0;z-index:25}
#writing-display-slot{flex:0 0 auto}
.writing-display{position:relative}
.writing-display>summary{list-style:none;display:flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:5px;cursor:pointer;font-size:12px;background:var(--paper);color:var(--ink)}
.writing-display>summary::-webkit-details-marker{display:none}
.writing-display>summary svg{width:17px;height:17px}
.writing-display[open]>summary{background:var(--writer-active)}
.writing-display-panel{position:absolute;z-index:55;top:calc(100% + 9px);right:0;width:350px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 200px);overflow:auto;overscroll-behavior:contain;padding:18px 20px;background:var(--paper);color:var(--ink);border-radius:10px;box-shadow:0 12px 36px #111a1640;font:14px/1.6 var(--sans);text-align:left}
.writing-display-panel header{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:17px;position:sticky;top:-18px;z-index:1;background:var(--paper);padding-block:4px 8px}
.writing-display-panel h2{font:500 21px/1.4 var(--serif);margin:0}
.writing-display-panel button{font:13px/1.4 var(--sans);min-height:36px;padding:7px 10px;color:var(--ink)}
.writing-display-panel :is(button,input,select,summary):focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.writing-display-panel [data-display-close]{border:1px solid var(--line);border-radius:5px;flex-shrink:0}
.display-field{display:grid;gap:7px;font-size:13px;color:var(--sub);margin-bottom:15px}
.display-field select{min-width:0;width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:5px;background:var(--writer-soft);color:var(--ink);font:14px var(--sans)}
.display-range{display:block;margin-bottom:17px;font-size:13px;color:var(--sub)}
.display-range>span{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}
.display-range output{font-variant-numeric:tabular-nums;color:var(--ink)}
.display-range input{display:block;width:100%;height:28px;margin:0;accent-color:var(--green);cursor:pointer}
.display-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.display-check{display:flex;align-items:center;gap:9px;font-size:13px;min-height:36px;margin-bottom:16px}
.display-check input{width:17px;height:17px;margin:0;accent-color:var(--green)}
.display-advanced{border:0;padding:0;margin:0}.display-advanced>summary{display:none}
.display-colors{border:0;padding:0;margin:0 0 15px;min-width:0}
.display-colors legend{font-size:13px;color:var(--sub);margin-bottom:9px;padding:0}
.display-colors>div{display:flex;flex-wrap:wrap;gap:6px}
.display-colors button{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:5px;background:transparent;min-height:40px}
.display-colors button[aria-pressed=true]{outline:2px solid var(--green);outline-offset:1px;background:var(--writer-active)}
.display-swatch{width:13px;height:13px;border-radius:50%;border:1px solid #7a857a;flex:none}
.swatch-light{background:#fff}.swatch-warm{background:#f6f1e6}.swatch-green{background:#d7e2d0}.swatch-night{background:#18241d}.swatch-system{background:linear-gradient(90deg,#f6f1e6 50%,#18241d 50%)}
.writing-display-panel footer{border-top:1px solid var(--line);padding-top:12px;display:flex;align-items:center;gap:12px}
.display-save-status{font-size:12px;color:var(--sub);line-height:1.6;margin:0;flex:1}
.writing-display-panel [data-display-reset]{flex-shrink:0;color:var(--blue);padding-inline:0}
/* Existing workspace surfaces follow the selected writing palette. The map keeps its own palette. */
[data-studio-theme] .editor-toolbar{background:var(--writer-soft)}
[data-studio-theme] .companion{background:var(--side)}
[data-studio-theme] .new-work,[data-studio-theme] .chapter-item.active{background:var(--writer-paper)}
[data-studio-theme] .primary-nav button.active,[data-studio-theme] .primary-nav button:hover,[data-studio-theme] .format-tools button:hover,[data-studio-theme] .format-tools button[aria-pressed=true]{background:var(--writer-active);color:var(--ink)}
[data-studio-theme] :is(.note-card,.inspiration-card,.file-drop,.panel-body textarea,.dialog-field input,.dialog-field textarea,.dialog-field select,.lab-start select,.name-candidates button){background:var(--paper);color:var(--ink);border-color:var(--line)}
[data-studio-theme] :is(.note-card p,.inspiration-card p,.dialog-copy,.chapter-overline,.transfer-side p,.focus-notice,.focus-segment details p,.file-drop span){color:var(--sub)}
[data-studio-theme] :is(.panel-body textarea,.dialog-field input,.dialog-field textarea,.transfer-main input,.focus-segment input,.focus-segment textarea)::placeholder{color:var(--sub)}
[data-studio-theme] :is(.quote-link,.review-knowledge,.scope-options button.selected,.filter-chip.active,.review-focus-picker button,.brand .brand-return){background:var(--writer-active);color:var(--ink);border-color:var(--line)}
[data-studio-theme] .quote-link:hover{background:var(--writer-quote)}
[data-studio-theme] .demo-note,[data-studio-theme] .quick-demo{color:var(--sub)!important}
[data-studio-theme] :is(.work-search-bar,.focus-segment,.focus-segment button,.focus-segment input,.focus-segment textarea,.transfer-main select,.transfer-main input:not([type=checkbox])){background:var(--paper);color:var(--ink);border-color:var(--line)}
[data-studio-theme] :is(.notice,.recovery-notice,.import-warning,.quick-stale){background:var(--writer-warning);color:var(--writer-warning-ink);border-color:var(--line)}
[data-studio-theme] :is(.error,.writing-status .failed,.feedback-type.question){color:var(--writer-error)}
[data-studio-theme] .quick-tool-entry:hover{background:var(--writer-active)}
[data-studio-theme] .quick-tools-heading a,[data-studio-theme] .quick-tool-entry b,[data-studio-theme] .quick-tool-entry b small,[data-studio-theme] .quick-confirm-heading strong{color:var(--blue)}
[data-studio-theme] .quick-demo{background:var(--writer-warning)}
[data-studio-theme] .review-pending{background:var(--writer-quote);color:var(--ink);border-color:var(--line)}
[data-studio-theme] .studio-quote-highlight{background:var(--writer-selection);color:var(--ink)}
[data-studio-theme] .revision-diff{background:var(--paper);color:var(--ink);border-color:var(--line)}
[data-studio-theme] .revision-diff ins{background:var(--writer-added);color:var(--ink)}
[data-studio-theme] .revision-diff del{background:var(--writer-removed);color:var(--ink)}
[data-studio-theme] progress,[data-studio-theme] progress::-webkit-progress-bar{background:var(--line)}
@media(max-width:650px){.writing-display>summary{min-height:42px}.writing-display-panel{position:fixed;top:auto;left:12px;right:12px;bottom:54px;width:auto;max-width:none;max-height:calc(100dvh - 140px);padding:17px 18px}.writing-display-panel header{position:sticky;top:-17px;background:var(--paper);padding-top:4px;padding-bottom:8px;z-index:1}.writing-display-panel button,.display-field select{min-height:44px}.display-range input{height:34px}}
@media(max-width:650px){.display-advanced{margin:0 0 14px}.display-advanced>summary{display:list-item;min-height:44px;padding:9px 0;color:var(--blue);cursor:pointer}.display-advanced[open]>summary{margin-bottom:8px}}
