/* One reversible finish for the shared studio shell. Custom palette variables,
   reading typography, canvas transforms and glass opacity remain authoritative. */
:root[data-ui-finish="refined"] {
  --ui-radius: 14px;
  --ui-control-radius: 9px;
  --ui-shadow: 0 2px 5px #00000008, 0 12px 32px #00000012;
  --ui-popover-shadow: 0 12px 50px #00000026;
}
:root[data-ui-finish="refined"][data-theme="ink"]:not([data-theme-mode="custom"]) {
  --bg: #10171c;
  --surface: #182126;
  --surface-soft: #141d22;
  --surface-raised: #202c32;
  --paper: #172126;
  --text: #e7e6e1;
  --muted: #aab4b8;
  --faint: #8b999f;
  --line: #344046;
  --line-soft: #28343b;
  --accent: #d2b786;
  --accent-strong: #e6cba0;
  --accent-wash: #d2b78612;
}
:root[data-ui-finish="refined"][data-theme="paper"]:not([data-theme-mode="custom"]) {
  --bg: #f3f1ec;
  --surface: #fcfbf7;
  --surface-soft: #f7f5ef;
  --surface-raised: #eeece5;
  --paper: #fffefb;
  --text: #303b3b;
  --muted: #626e6d;
  --faint: #76807d;
  --line: #d9dcd5;
  --line-soft: #e7e7df;
  --accent: #856739;
  --accent-strong: #70542c;
  --accent-wash: #8567390e;
  --ui-shadow: 0 2px 5px #38382903, 0 12px 32px #38382908;
  --ui-popover-shadow: 0 12px 50px #3838291f;
}
/* Navigation is deliberately stable: no transforms on draggable ancestors. */
:root[data-ui-finish="refined"][data-readable] { --muted:#c0c8cf; --faint:#aebac4; }
:root[data-ui-finish="refined"][data-readable][data-theme="paper"] { --muted:#48565f; --faint:#5b6972; }
:root[data-ui-finish="refined"][data-glass]:not([data-theme-mode="custom"]) { --glass-tint:var(--surface); }
:root[data-ui-finish="refined"] .global-rail { border-color: var(--line-soft); padding-top: 22px; }
:root[data-ui-finish="refined"] .brand-mark { border-radius: 12px 4px 12px 4px; margin-bottom: 26px; }
:root[data-ui-finish="refined"] .rail-button { position: relative; border-radius: 12px; letter-spacing: .04em; gap: 7px; }
:root[data-ui-finish="refined"] .rail-button.active { border-color: transparent; color: var(--accent); background: var(--accent-wash); }
:root[data-ui-finish="refined"] .rail-button.active::before { content: ''; position: absolute; left: -8px; top: 22px; bottom: 22px; width: 3px; border-radius: 3px; background: var(--accent); }
:root[data-ui-finish="refined"] .topbar { border-color: var(--line-soft); gap: 24px; }
:root[data-ui-finish="refined"] .top-actions { gap: 7px; }
:root[data-ui-finish="refined"] .library-search { height: 40px; border-radius: 12px; border-color: var(--line-soft); }
:root[data-ui-finish="refined"] .library-search input { height: 36px; font-size: 13px; }
:root[data-ui-finish="refined"] .preview-footer { border-color: var(--line-soft); letter-spacing: .015em; }
:root[data-ui-finish="refined"] .button { border-radius: var(--ui-control-radius); }
:root[data-ui-finish="refined"] .button.primary { box-shadow: 0 2px 5px #00000010; }
:root[data-ui-finish="refined"] .button:active:not(:disabled) { box-shadow: inset 0 1px 3px #00000014; }
:root[data-ui-finish="refined"] .icon-button { border-radius: 9px; }
:root[data-ui-finish="refined"] :is(input, textarea, select):not([type="range"]):not([type="checkbox"]):not([type="radio"]):not(.studio-prose-editor) { border-radius: var(--ui-control-radius); }
:root[data-ui-finish="refined"] :is(input, textarea, select):focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
/* The composer border itself indicates focus; avoid drawing a second box. */
:root[data-ui-finish="refined"] .studio-manager .chat-compose textarea:focus-visible { outline: none; }
:root[data-ui-finish="refined"] .studio-manager .chat-compose:focus-within { border-color: var(--accent); }
:root[data-ui-finish="refined"] :is(.section-heading h1,.material-page-header h1,.ai-page-heading h1) { font: 500 clamp(27px,2.4vw,34px)/1.35 var(--serif); letter-spacing: .035em; }
:root[data-ui-finish="refined"] :is(.eyebrow,.sc-kicker) { letter-spacing: .12em; }
:root[data-ui-finish="refined"] :is(.panel-header,.dialog-header,.editor-toolbar,.workbench-top,.sc-top,.nw-toolbar) { border-color: var(--line-soft); }
/* Panels share edge and elevation; backgrounds are left to the glass system. */
:root[data-ui-finish="refined"] :is(.material-categories article,.material-list,.material-editor,.material-welcome,.material-web,.ai-editor-card,.ai-role-card,.ai-diagnostic-grid article,.library-action-dock,.outline-card,.chapter-plan-card) {
  border-color: var(--line-soft); border-radius: var(--ui-radius); box-shadow: var(--ui-shadow);
}
:root[data-ui-finish="refined"] :is(.preview-dialog,.glass-controls,.theme-editor,.advanced-menu,.nw-catalog,.sc-editor) { border-radius: 18px; box-shadow: var(--ui-popover-shadow); }
:root[data-ui-finish="refined"] .preview-dialog::backdrop { background: #09131885; backdrop-filter: blur(7px); }
:root[data-ui-finish="refined"] .dialog-header { padding: 26px 30px 22px; }
:root[data-ui-finish="refined"] .dialog-body { padding: 26px 30px; }
:root[data-ui-finish="refined"] .dialog-header h2 { line-height: 1.4; }
:root[data-ui-finish="refined"] .glass-controls { width: min(334px,calc(100vw - 28px)); }
:root[data-ui-finish="refined"] .glass-group { border-radius: 11px; border-color: var(--line-soft); }
:root[data-ui-finish="refined"] .glass-group summary { padding-block: 15px; }
:root[data-ui-finish="refined"] .glass-cover-hint { line-height: 1.85; }
:root[data-ui-finish="refined"] .menu-item { padding-block: 12px; border-radius: 8px; }
/* Library: quieter surrounds and independent action area below grid covers. */
:root[data-ui-finish="refined"] .library-overview { border-color: var(--line-soft); }
:root[data-ui-finish="refined"] .library-action-dock { padding: 20px; }
:root[data-ui-finish="refined"] .library-mode-button { border-radius: 11px; border-color: var(--line-soft); }
:root[data-ui-finish="refined"] .library-mode-button.is-primary { border-color: color-mix(in srgb,var(--accent) 30%,var(--line-soft)); }
:root[data-ui-finish="refined"] .library-mode-button small { font-size: 11px; letter-spacing: .02em; }
:root[data-ui-finish="refined"] .grid-mode .book-display { border-radius: 16px; border-color: var(--line-soft); box-shadow: var(--ui-shadow); }
:root[data-ui-finish="refined"] .book-actions { border-color: var(--line); }
:is(.shelf-carousel.is-moving,.shelf-carousel.is-dragging) .book-actions { visibility: hidden; pointer-events: none; }
:root[data-ui-finish="refined"] .book-caption { line-height: 1.6; }
/* Default bindings share a restrained, warm-grey palette. Uploaded cover
   images and their own bindings keep their existing treatment. */
:root[data-ui-finish="refined"] .book-cover:is(.cover-night,.cover-sand,.cover-forest,.cover-terracotta,.cover-slate,.cover-wine) {
  color: #e5dfce; border-color: #a69e8b80;
}
:root[data-ui-finish="refined"] .book-cover.cover-night { background: linear-gradient(135deg,#49534f,#323d3b); }
:root[data-ui-finish="refined"] .book-cover.cover-sand { background: linear-gradient(135deg,#827d6d,#69675b); }
:root[data-ui-finish="refined"] .book-cover.cover-forest { background: linear-gradient(135deg,#596358,#3e4a40); }
:root[data-ui-finish="refined"] .book-cover.cover-terracotta { background: linear-gradient(135deg,#6f6057,#51463f); }
:root[data-ui-finish="refined"] .book-cover.cover-slate { background: linear-gradient(135deg,#596369,#404b51); }
:root[data-ui-finish="refined"] .book-cover.cover-wine { background: linear-gradient(135deg,#695b60,#4b4146); }
:root[data-ui-finish="refined"] .book-cover:is(.cover-night,.cover-sand,.cover-forest,.cover-terracotta,.cover-slate,.cover-wine) .cover-frame { border-color:#e5dfce38; }
:root[data-ui-finish="refined"] .book-cover:is(.cover-night,.cover-sand,.cover-forest,.cover-terracotta,.cover-slate,.cover-wine) .cover-art { opacity:.25; }
:root[data-ui-finish="refined"] .book-volume:has(> .book-cover:not(.image-cover)) { --book-binding-ink:#e5dfce; }
:root[data-ui-finish="refined"] .book-volume[data-book-tone="night"]:has(> .book-cover:not(.image-cover)) { --book-binding:#38423e; }
:root[data-ui-finish="refined"] .book-volume[data-book-tone="sand"]:has(> .book-cover:not(.image-cover)) { --book-binding:#6d695b; }
:root[data-ui-finish="refined"] .book-volume[data-book-tone="forest"]:has(> .book-cover:not(.image-cover)) { --book-binding:#465046; }
:root[data-ui-finish="refined"] .book-volume[data-book-tone="terracotta"]:has(> .book-cover:not(.image-cover)) { --book-binding:#594b43; }
:root[data-ui-finish="refined"] .book-volume[data-book-tone="slate"]:has(> .book-cover:not(.image-cover)) { --book-binding:#465157; }
:root[data-ui-finish="refined"] .book-volume[data-book-tone="wine"]:has(> .book-cover:not(.image-cover)) { --book-binding:#55484d; }
:root[data-ui-finish="refined"] .segmented { border-radius: 11px; padding: 4px; }
:root[data-ui-finish="refined"] .segment { border-radius: 8px; }
/* Materials and AI use one reading width, page rhythm and selected treatment. */
:root[data-ui-finish="refined"] :is(.material-view,.ai-settings-view) { max-width: 1440px; padding: 36px clamp(22px,3.5vw,52px) 48px; }
:root[data-ui-finish="refined"] .material-page-header { align-items: start; }
:root[data-ui-finish="refined"] .material-page-header h1 { margin-top: 0; }
:root[data-ui-finish="refined"] .material-tabs { gap: 5px; padding: 12px 0 18px; border-color: var(--line-soft); }
:root[data-ui-finish="refined"] .material-tabs .active { box-shadow: none; border-color: color-mix(in srgb,var(--accent) 35%,transparent); }
:root[data-ui-finish="refined"] .material-categories article { padding: 24px 20px; }
:root[data-ui-finish="refined"] .material-kind-icon { border: 1px solid color-mix(in srgb,var(--accent) 14%,transparent); border-radius: 10px; }
:root[data-ui-finish="refined"] :is(.material-list-item,.ai-connection-card,.chapter-item) { border-radius: 10px; }
:root[data-ui-finish="refined"] .material-web { padding: 28px; }
:root[data-ui-finish="refined"] .ai-section-tabs { border-color: var(--line-soft); }
:root[data-ui-finish="refined"] .ai-editor-card { padding: 28px; }
:root[data-ui-finish="refined"] :is(.material-lab-ready,.material-lab-pending,.prototype-actors article,.prototype-collisions article,.prototype-research-review,.memory-record,.agent-connections > section,.agent-trial) { border-radius: var(--ui-radius); border-color:var(--line-soft); box-shadow:var(--ui-shadow); }
:root[data-ui-finish="refined"] .agent-engine-page { background:transparent; }
:root[data-ui-finish="refined"] .agent-engine-page main { padding:4px 0; max-width:none; }
:root[data-ui-finish="refined"] .agent-engine-page button { border-radius:var(--ui-control-radius); }
/* Author-controlled font sizes and free-canvas coordinates stay untouched. */
:root[data-ui-finish="refined"] .sc-node { border-radius: 12px; box-shadow: var(--ui-shadow); }
:root[data-ui-finish="refined"] :is(.sc-control,.nw-close,.nw-library summary) { border-radius: var(--ui-control-radius); }
:root[data-ui-finish="refined"] .sc-library { border-color: var(--line-soft); }
:root[data-ui-finish="refined"] .floating-manager { border-radius: 18px; box-shadow: var(--ui-popover-shadow); }
:root[data-ui-finish="refined"] .manager-orb { box-shadow: 0 4px 16px #0000001c; }
/* Static CSS light, no remote assets, extra render loop or overlay above text.
   Isolation prevents negative layers escaping their page. No effect in focus. */
:root[data-dappled] :is(.page-library,.page-resources) { position: relative; isolation: isolate; }
:root[data-dappled] :is(.page-library,.page-resources)::before {
  content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse at 91% 2%,#f6d69c3d,transparent 62%);
  opacity: calc(var(--daylight-strength,.35) * .65);
}
:root[data-dappled] :is(.page-library,.page-resources)::after {
  content: ''; position: absolute; top: 0; right: 0; width: min(100%,1400px); height: 850px;
  z-index: -1; pointer-events: none; opacity: calc(var(--daylight-strength,.35) * .7);
  background: url('./daylight-window.svg') right top / 100% auto no-repeat;
  mask-image: radial-gradient(ellipse at 82% 8%,#000 12%,transparent 76%);
}
:root[data-dappled][data-theme="paper"] :is(.page-library,.page-resources)::before { background: radial-gradient(ellipse at 91% 2%,#f6d69c56,transparent 62%); }
:root[data-dappled][data-theme="ink"] :is(.page-library,.page-resources)::after { opacity: calc(var(--daylight-strength,.35) * .12); }
:root[data-dappled][data-theme="ink"] :is(.page-library,.page-resources)::before { opacity: calc(var(--daylight-strength,.35) * .18); }
/* Same glass control also covers newer material / AI containers. */
:root[data-ui-finish="refined"][data-glass]:not([data-readable]) :is(.material-categories article,.material-list,.material-editor,.material-welcome,.material-web,.ai-editor-card,.ai-role-card,.ai-diagnostic-grid article,.nw-toolbar,.nw-catalog) {
  background: color-mix(in srgb,var(--glass-tint) var(--glass-opacity),transparent);
  backdrop-filter: blur(var(--glass-blur));
  border-color: var(--glass-edge);
}
:root[data-ui-finish="refined"][data-readable] :is(.material-categories article,.material-list,.material-editor,.material-welcome,.material-web,.ai-editor-card,.ai-role-card,.ai-diagnostic-grid article,.nw-toolbar,.nw-catalog) { background: color-mix(in srgb,var(--surface) 94%,transparent); }
@media (max-width:1100px) {
  :root[data-ui-finish="refined"] .topbar { gap: 16px; padding-inline: 22px; }
  :root[data-ui-finish="refined"] .top-actions .preview-badge { display: none; }
}
@media (max-width:700px) {
  :root[data-ui-finish="refined"] .topbar { padding-inline: 12px; gap: 10px; }
  :root[data-ui-finish="refined"] .dialog-header, :root[data-ui-finish="refined"] .dialog-body { padding: 20px; }
  :root[data-ui-finish="refined"] :is(.material-view,.ai-settings-view) { padding: 24px 16px; }
  :root[data-ui-finish="refined"] .material-page-header { flex-wrap: wrap; gap: 10px; }
  :root[data-ui-finish="refined"] .library-action-dock { padding: 12px; }
  :root[data-ui-finish="refined"] .library-mode-button small { font-size: 10px; }
  :root[data-ui-finish="refined"] :is(.material-web,.ai-editor-card) { padding: 20px; }
}
@media (prefers-reduced-motion:reduce) {
  :root[data-ui-finish="refined"] :is(.button,.icon-button,.rail-button) { transition: none; }
}
