/* Approved reading workspace and tool catalog; existing business controls remain. */
body[data-active-view="qa"] .main-content, body[data-active-view="toolbox"] .main-content { background:var(--visual-canvas)!important; }
#view-qa.qa-reading-upgrade #qa-messages { grid-column:1; grid-row:2; order:0; }
#view-qa.qa-reading-upgrade .qa-inline-reader { grid-column:2; grid-row:2; order:0; }
#view-qa.qa-reading-upgrade { --read-ink:var(--visual-ink); --read-muted:var(--visual-copy); --read-line:var(--visual-line-soft); }
#view-qa.qa-reading-upgrade .qa-stage-three-workbench { border:0; box-shadow:none; background:transparent; padding:0; }
#view-qa.qa-reading-upgrade .qa-layout, #view-qa.qa-reading-upgrade .qa-chat-col { display:block; width:100%; min-width:0; }
#view-qa.qa-reading-upgrade .qa-input-area { display:flex; gap:12px; background:transparent; padding:16px 0; border:0; }
#view-qa.qa-reading-upgrade #qa-input { min-height:48px; border:1px solid var(--read-line); background:var(--visual-surface); border-radius:7px; font-size:16px; padding:12px 16px; flex:1; min-width:0; }
#view-qa.qa-reading-upgrade #qa-send { min-width:96px; background:var(--visual-accent); color:var(--visual-on-accent); }
#view-qa.qa-reading-upgrade .qa-source-filter { padding:10px 0 16px; border:0; border-bottom:1px solid var(--read-line); background:transparent; flex-wrap:wrap; }
#view-qa.qa-reading-upgrade .qa-source-toggle { border:0; border-radius:0; padding:10px 12px; background:transparent; color:var(--read-muted); }
#view-qa.qa-reading-upgrade .qa-source-toggle.active { color:var(--visual-accent-deep); background:var(--visual-surface-soft); box-shadow:inset 0 -2px var(--visual-accent); }
#view-qa.qa-reading-upgrade .qa-chat-container { display:grid; grid-template-columns:minmax(280px,36%) minmax(0,1fr); gap:16px; height:auto; min-height:480px; max-height:none; border:0; background:transparent; overflow:visible; }
#view-qa.qa-reading-upgrade .qa-mode-bar { grid-column:1/-1; margin:0; background:transparent; border:0; padding:10px 0; }
#view-qa.qa-reading-upgrade #qa-messages { min-width:0; height:calc(100dvh - 330px); min-height:420px; max-height:900px; overflow:auto; padding:0; background:var(--visual-surface); border:1px solid var(--read-line); border-radius:8px; }
#view-qa.qa-reading-upgrade .qa-message { margin:0; padding:0; max-width:none; }
#view-qa.qa-reading-upgrade .qa-message .qa-msg-content { border:0; box-shadow:none; padding:16px; background:transparent; }
#view-qa.qa-reading-upgrade .qa-local-result-card { border:0; border-bottom:1px solid var(--read-line); border-radius:0; box-shadow:none; padding:18px 12px; margin:0; }
#view-qa.qa-reading-upgrade .qa-local-result-card.is-reading { background:var(--visual-surface-soft); box-shadow:inset 2px 0 var(--visual-accent); }
#view-qa.qa-reading-upgrade .qa-local-result-card header { display:block; }
#view-qa.qa-reading-upgrade .qa-local-result-card header strong { font-size:16px; line-height:1.6; }
#view-qa.qa-reading-upgrade .qa-project-result-actions { display:flex; gap:8px; flex-wrap:wrap; }
#view-qa.qa-reading-upgrade .qa-project-result-actions>span { width:100%; }
#view-qa.qa-reading-upgrade .qa-inline-reader { min-width:0; height:calc(100dvh - 330px); min-height:420px; max-height:900px; border:1px solid var(--read-line); border-radius:8px; background:var(--visual-surface); overflow:auto; }
#view-qa.qa-reading-upgrade .qa-reader-empty { display:grid; place-content:center; min-height:400px; padding:32px; color:var(--read-muted); line-height:1.8; }
#view-qa.qa-reading-upgrade .qa-reader-empty strong { font-size:22px; color:var(--read-ink); }
#view-qa.qa-reading-upgrade .is-inline-reader { position:static!important; display:block!important; padding:0!important; background:transparent!important; backdrop-filter:none!important; }
#view-qa.qa-reading-upgrade .is-inline-reader>section { width:100%!important; max-width:none!important; height:auto!important; max-height:none!important; border:0; border-radius:0; box-shadow:none; }
#view-qa.qa-reading-upgrade .is-inline-reader>section>header { padding:20px 24px; border-bottom:1px solid var(--read-line); }
#view-qa.qa-reading-upgrade .is-inline-reader .qa-document-preview-content { padding:24px; max-height:none; overflow:visible; }
#view-qa.qa-reading-upgrade .is-inline-reader pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:16px; line-height:1.9; font-family:inherit; }
#view-qa.qa-reading-upgrade .qa-library-browse-mode .qa-inline-reader { display:none; }

#view-toolbox .toolbox-page { --tb2-blue:var(--visual-accent); --tb2-blue-soft:var(--visual-surface-soft); --tb2-ink:var(--visual-ink); --tb2-muted:var(--visual-copy); }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-shell { display:block; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-category-nav { width:100%; min-height:0; border:0; background:transparent; box-shadow:none; padding:0 0 16px; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-nav-groups { display:flex; gap:12px; }
#view-toolbox .toolbox-nav-group { flex:1; }
#view-toolbox .toolbox-nav-group-head { border:1px solid var(--visual-line-soft); border-radius:8px; min-height:44px; }
#view-toolbox .toolbox-category-detail { width:100%; min-width:0; background:transparent; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-category-nav { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:24px; padding:14px 24px; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-nav-title { display:flex; align-items:center; gap:14px; padding:0; }
#view-toolbox .toolbox-nav-title>span { display:none; }
#view-toolbox .toolbox-nav-heading-row { display:flex; align-items:center; gap:14px; }
#view-toolbox .toolbox-nav-title h2 { margin:0; font-size:18px; }
#view-toolbox .toolbox-directory-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,30%); align-items:center; gap:12px 24px; padding:18px 24px; }
#view-toolbox .toolbox-directory-toolbar { grid-column:1/-1; }
#view-toolbox .toolbox-directory-lead h1 { font-size:24px; margin:0 0 8px; }
#view-toolbox .toolbox-directory-lead p { font-size:14px; margin:0; line-height:1.6; }
#view-toolbox .toolbox-direct-section { padding:16px 24px 24px; }
#view-toolbox .toolbox-direct-section-head { min-height:0; margin:0; }
#view-toolbox .toolbox-direct-section-head h2 { font-size:16px; margin:0; }
#view-toolbox .toolbox-direct-section-head>div>span { display:none; }
#view-toolbox .toolbox-direct-grid { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:18px!important; }
#view-toolbox .toolbox-direct-card { display:flex!important; flex-direction:column!important; align-items:flex-start!important; padding:24px!important; border:1px solid var(--visual-line-soft)!important; border-radius:12px!important; background:var(--visual-surface)!important; box-shadow:none!important; gap:16px; min-height:270px; }
#view-toolbox .toolbox-direct-card[hidden] { display:none!important; }
#view-toolbox .toolbox-direct-copy { flex:1; }
#view-toolbox .toolbox-direct-title strong { font-size:19px!important; color:var(--visual-ink); }
#view-toolbox .toolbox-direct-copy>small { font-size:14px!important; line-height:1.7!important; color:var(--visual-copy)!important; }
#view-toolbox .toolbox-direct-icon { width:42px!important; height:42px!important; background:var(--visual-surface-soft)!important; color:var(--visual-accent)!important; border:0!important; border-radius:9px!important; }
#view-toolbox .toolbox-card-io { display:grid; gap:10px; width:100%; font-size:13px; color:var(--visual-copy); border-top:1px solid var(--visual-surface-soft); padding-top:15px; }
#view-toolbox .toolbox-card-io span { display:block; line-height:1.6; }
#view-toolbox .toolbox-card-io b { display:block; color:var(--visual-ink); font-weight:600; }
#view-toolbox .toolbox-direct-action { align-self:flex-end; color:var(--visual-accent); }
#view-toolbox .toolbox-catalog-search { display:flex; align-items:center; gap:16px; margin:18px 0 8px; color:var(--visual-copy); }
#view-toolbox .toolbox-catalog-search input { flex:1; min-width:0; padding:12px 16px; border:1px solid var(--visual-line-soft); border-radius:8px; background:var(--visual-surface); font-size:16px; }
#view-toolbox [data-toolbox-search-status]:empty { display:none; }
#view-toolbox .tb-source-comparison { margin:16px 0 24px; }
#view-toolbox .tb-source-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
#view-toolbox .tb-source-pair>section { min-width:0; border:1px solid var(--visual-line-soft); border-radius:8px; overflow:hidden; background:var(--visual-surface); }
#view-toolbox .tb-source-pair header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; padding:16px; color:var(--visual-ink); }
#view-toolbox .tb-source-pair header span { font-size:13px; color:var(--visual-copy); }
#view-toolbox .tb-source-table-scroll { overflow:auto; max-height:370px; }
#view-toolbox .tb-source-pair table { width:100%; border-collapse:collapse; }
#view-toolbox .tb-source-pair th, #view-toolbox .tb-source-pair td { padding:12px; border-bottom:1px solid var(--visual-surface-soft); text-align:left; white-space:nowrap; font-size:14px; font-variant-numeric:tabular-nums; }
#view-toolbox .tb-source-pair thead { background:var(--visual-surface); }
#view-toolbox .tb-source-pair .is-source-match { background:#faf0cc; color:#654714; }
#view-toolbox .tb-source-caption { margin:0; padding:14px; border:1px solid var(--visual-line-soft); background:var(--visual-surface); font-size:14px; }
#view-toolbox .tb-source-key-list { display:flex; gap:10px; overflow:auto; padding:16px 0; }
#view-toolbox .tb-source-key-list button { flex:0 0 auto; min-width:145px; padding:12px; border:1px solid var(--visual-line-soft); border-radius:8px; background:var(--visual-surface); color:var(--visual-ink); text-align:left; }
#view-toolbox .tb-source-key-list button[aria-pressed=true] { border-color:#a57b36; background:#fcf6e5; }
#view-toolbox .tb-source-key-list small { display:block; margin-top:7px; color:var(--visual-copy); }
@media(max-width:1100px) { #view-toolbox .toolbox-direct-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; } }
@media(max-width:900px) {
  #view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-category-nav, #view-toolbox .toolbox-directory-head { grid-template-columns:minmax(0,1fr); }
  #view-qa.qa-reading-upgrade .qa-inline-reader { grid-column:1; grid-row:3; }
  #view-qa.qa-reading-upgrade .qa-chat-container { grid-template-columns:minmax(0,1fr); }
  #view-qa.qa-reading-upgrade #qa-messages, #view-qa.qa-reading-upgrade .qa-inline-reader { height:auto; max-height:620px; min-height:240px; }
  #view-qa.qa-reading-upgrade .qa-inline-reader:has(.qa-reader-empty) { display:none; }
  #view-toolbox .tb-source-pair { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:600px) {
  #view-toolbox .toolbox-direct-grid { grid-template-columns:minmax(0,1fr)!important; }
  #view-toolbox .toolbox-catalog-search { display:block; }
  #view-toolbox .toolbox-catalog-search input { width:100%; box-sizing:border-box; margin-top:8px; }
  #view-qa.qa-reading-upgrade .qa-source-filter { gap:6px; }
  #view-qa.qa-reading-upgrade .qa-input-area { gap:8px; }
  #view-qa.qa-reading-upgrade #qa-send { min-width:64px; }
}

/* Contain inherited modal/table sizing inside the migrated reading surfaces. */
#view-qa.qa-reading-upgrade .is-inline-reader>section { display:block!important; overflow:visible!important; }
#view-qa.qa-reading-upgrade .is-inline-reader .qa-document-preview-content { display:block; height:auto; min-height:0; overflow:visible; }
#view-qa.qa-reading-upgrade .is-inline-reader .qa-document-preview-content>.qa-document-render { height:auto; max-height:none; overflow:visible; }
#view-qa.qa-reading-upgrade .is-inline-reader dl { height:auto; max-height:none; overflow:visible; margin:0; }
#view-qa.qa-reading-upgrade .is-inline-reader dd { white-space:normal; overflow-wrap:anywhere; }
#view-toolbox .toolbox-project-compact { grid-template-columns:32px minmax(0,1fr)!important; gap:6px 12px; }
#view-toolbox .toolbox-project-compact p { grid-column:1/-1; white-space:normal; font-size:12px; }
#view-toolbox .toolbox-project-compact small { font-size:12px; letter-spacing:0; }
#view-toolbox .toolbox-project-compact strong { font-size:14px; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-nav-title { margin:0!important; padding:0!important; border:0!important; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-nav-heading-row { flex-direction:row!important; align-items:center; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-category-nav { padding:10px 24px!important; gap:16px; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-nav-heading-row>strong { font-size:18px!important; }
#view-toolbox .toolbox-directory-head { padding:12px 24px!important; gap:8px 20px; }
#view-toolbox .toolbox-directory-lead { padding:0!important; }
#view-toolbox .toolbox-directory-lead h1 { font-size:22px!important; margin:0 0 6px!important; }
#view-toolbox .toolbox-direct-section-head h2 { font-size:16px!important; }
#view-toolbox .toolbox-catalog-search { margin:12px 0; }
#view-toolbox .toolbox-workbench,
#view-toolbox .toolbox-workbench>*,
#view-toolbox .tb-reconciliation-panel,
#view-toolbox .tb-reconciliation-panel>*,
#view-toolbox .tb-result-reconciliation-workbench,
#view-toolbox [data-tb-source-comparison],
#view-toolbox .tb-source-comparison { min-width:0; max-width:100%; box-sizing:border-box; }
#view-toolbox .tb-source-key-list, #view-toolbox .tb-source-pair { min-width:0; max-width:100%; }
#view-toolbox .tb-recon-result-table>div { max-width:100%; overflow-x:auto; }
@media(max-width:900px) {
  #view-qa.qa-reading-upgrade .qa-inline-reader { max-height:none; overflow:visible; }
  #view-qa.qa-reading-upgrade .is-inline-reader dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
}
@media(max-width:600px) {
  #view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-category-nav { gap:10px; padding:12px!important; }
}

#view-qa.qa-reading-upgrade .is-inline-reader .qa-document-preview-content>.qa-document-render { display:block; }
#view-qa.qa-reading-upgrade .is-inline-reader .qa-document-text { overflow:visible; max-height:none; }

#view-toolbox .tb-reconciliation-panel { grid-template-columns:minmax(0,1fr); }
#view-toolbox .tb-reconciliation-panel #tb-output { min-width:0; max-width:100%; }

#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-nav-heading-row>strong { display:none; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-ai-mode-status { padding:8px; min-height:0; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-ai-mode-status>span { display:flex; align-items:center; gap:8px; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-ai-mode-status small { margin:0; }
#view-toolbox .toolbox-direct-section-head { display:none; }
#view-toolbox .toolbox-page:not(.is-tool-open) .toolbox-nav-group-head { min-height:44px!important; padding:10px 14px!important; }
#view-toolbox .toolbox-direct-section { padding-top:4px!important; }

@media(min-width:901px) {
  #view-qa.qa-reading-upgrade .is-inline-reader>section>header { position:sticky; top:0; z-index:2; background:var(--visual-surface); }
}

/* User review: clear text actions and a single aligned knowledge workspace. */
#view-toolbox .toolbox-direct-action { display:inline-flex!important; width:auto!important; min-height:36px; gap:0; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; color:var(--visual-accent)!important; font-size:14px!important; font-weight:600; }
#view-toolbox .toolbox-direct-action svg { display:none; }
#view-toolbox .toolbox-direct-card:hover .toolbox-direct-action { text-decoration:underline; text-underline-offset:4px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-chat-col { box-sizing:border-box; min-width:0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-query-panel { padding:20px 24px 0; background:var(--visual-surface); border:1px solid var(--visual-line-soft); border-radius:10px; margin-bottom:20px; }
html[data-visual-style] #view-qa.qa-reading-upgrade :is(.qa-input-area,.qa-source-filter,.qa-mode-bar) { background:var(--visual-surface)!important; background-image:none!important; box-shadow:none!important; width:100%; min-width:0; box-sizing:border-box; margin:0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-input-area { padding:0 0 16px; align-items:stretch; }
html[data-visual-style] #view-qa.qa-reading-upgrade #qa-input { margin:0; box-sizing:border-box; height:50px; border-radius:7px; }
html[data-visual-style] #view-qa.qa-reading-upgrade #qa-send { height:50px; padding:0 24px; border-radius:7px!important; box-sizing:border-box; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-filter { padding:0 0 14px; gap:8px; border:0; align-items:center; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-toggle { min-height:36px; padding:8px 12px; font-size:13px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-toggle.active { color:var(--visual-accent)!important; background:var(--visual-surface-soft)!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-reference-types { display:flex; gap:12px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-reference-types label { border:0; padding:4px; background:transparent; box-shadow:none; font-size:13px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-bar { display:flex; flex-wrap:wrap; gap:12px; padding:12px 0; border-top:1px solid var(--visual-surface-soft); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-switch { flex-wrap:wrap; gap:4px; max-width:100%; box-sizing:border-box; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-switch button { min-height:36px; box-shadow:none!important; color:var(--visual-accent)!important; background:transparent!important; border:1px solid transparent!important; padding:6px 10px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-switch button.is-active { background:var(--visual-surface)!important; border-color:var(--visual-copy)!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-bar button:focus-visible { outline:2px solid var(--visual-accent); outline-offset:2px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-desc { flex:1; min-width:220px; font-size:12px; color:var(--visual-copy); line-height:1.7; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-chat-container { grid-template-rows:minmax(0,1fr); min-height:0; padding:0!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade :is(#qa-messages,.qa-inline-reader) { grid-row:1; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-chat-container:has(.qa-reader-empty) .qa-msg-content { padding:24px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-card p { max-width:85ch; }
#view-qa.qa-reading-upgrade.qa-library-browse-mode .qa-query-panel { display:none; }
@media(max-width:900px) {
  html[data-visual-style] #view-qa.qa-reading-upgrade .qa-inline-reader { grid-row:2; }
  html[data-visual-style] #view-qa.qa-reading-upgrade .qa-query-panel { padding:16px 16px 0; }
}
@media(max-width:600px) {
  html[data-visual-style] #view-qa.qa-reading-upgrade .qa-query-panel { padding:12px 12px 0; }
  html[data-visual-style] #view-qa.qa-reading-upgrade .qa-context-chip { margin-left:0; }
  html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-desc { min-width:0; flex-basis:100%; }
  html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-bar button { min-height:44px; }
}

html[data-visual-style] #view-qa.qa-reading-upgrade .qa-stage-three-workbench { width:100%; max-width:none; box-sizing:border-box; }

#view-qa.qa-reading-upgrade #qa-messages { display:block!important; }
#view-qa.qa-reading-upgrade .qa-intro-message { display:none; }
#view-qa.qa-reading-upgrade #qa-messages:has(.qa-local-search-message) .qa-message:has([data-qa-mode-ready]) { display:none; }
#view-qa.qa-reading-upgrade .qa-chat-container:has(.qa-reader-empty) .qa-user .qa-msg-content { padding:12px 24px; color:var(--visual-copy)!important; font-size:14px; background:transparent!important; }

#view-qa.qa-reading-upgrade #qa-messages:has(.qa-local-search-message) .qa-message:has([data-qa-scope-ready]) { display:none; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-user { padding:0; margin:0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-user .qa-msg-content { min-height:0; padding:12px 24px!important; margin:0; color:var(--visual-copy)!important; font-size:14px; background:transparent!important; }

/* Knowledge retrieval: compact controls, a readable reference directory and paging. */
#view-qa .qa-result-pagination { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:16px; border-top:1px solid var(--visual-line-soft); }
#view-qa .qa-result-pagination span { flex:1; color:var(--visual-copy); font-size:14px; }
#view-qa .qa-result-pagination button, #view-qa [data-qa-ai-settings] { padding:8px 12px; border:1px solid var(--visual-line-soft); border-radius:6px; background:var(--visual-surface); color:var(--visual-accent-deep); cursor:pointer; }
#view-qa .qa-result-pagination button:disabled { opacity:.45; cursor:default; }
#view-qa .qa-reference-directory { padding:20px; }
#view-qa .qa-reference-directory h3 { margin:0 0 8px; font-size:20px; color:var(--visual-ink); }
#view-qa .qa-reference-directory p { line-height:1.7; overflow-wrap:anywhere; }
#view-qa .qa-reference-directory label { display:grid; gap:8px; margin:20px 0; }
#view-qa .qa-reference-directory input { width:100%; box-sizing:border-box; padding:12px; font-size:16px; border:1px solid var(--visual-line-soft); border-radius:6px; background:var(--visual-surface); }
#view-qa .qa-reference-case { border-top:1px solid var(--visual-line-soft); padding:16px 0; }
#view-qa .qa-reference-case summary { cursor:pointer; font-weight:600; line-height:1.7; overflow-wrap:anywhere; }
#view-qa .qa-reference-case small { display:block; font-size:14px; font-weight:400; color:var(--visual-copy); }
#view-qa .qa-reference-case section { margin-top:20px; }
#view-qa .qa-reference-case section p { margin:8px 0; }
#view-qa .qa-reference-directory button:hover:not(:disabled), #view-qa [data-qa-ai-settings]:hover { background:var(--visual-surface-soft); }
#view-qa :is(button,input,summary):focus-visible { outline:2px solid var(--visual-accent); outline-offset:3px; }
#view-qa.qa-reading-upgrade .qa-mode-desc { font-size:14px; color:var(--visual-copy); line-height:1.6; }

/* Keep original text and amounts readable in knowledge answers and source links. */
#view-qa .qa-external-source-link { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; color:var(--visual-accent-deep); text-decoration:underline; text-underline-offset:3px; }
#view-qa .qa-external-source-link span { font-size:12px; color:var(--visual-copy); text-decoration:none; }
#view-qa .qa-source-card[href] { text-decoration:none; color:inherit; }
#view-qa .qa-answer-table-scroll { max-width:100%; overflow:auto; margin:18px 0; border:1px solid var(--visual-line-soft); border-radius:6px; }
#view-qa .qa-answer-table-scroll table { width:100%; border-collapse:collapse; font-variant-numeric:tabular-nums; }
#view-qa .qa-answer-table-scroll th, #view-qa .qa-answer-table-scroll td { padding:12px 16px; border-bottom:1px solid var(--visual-line-soft); text-align:left; vertical-align:top; min-width:100px; line-height:1.65; }
#view-qa .qa-answer-table-scroll th { background:var(--visual-surface-soft); font-weight:600; }
#view-qa .qa-ai-answer-formatted h3 { margin:24px 0 10px; font-size:18px; line-height:1.5; }
#view-qa .qa-ai-answer-formatted p { margin:10px 0; line-height:1.8; overflow-wrap:anywhere; }
#view-qa a:focus-visible, #view-qa .qa-answer-table-scroll:focus-visible { outline:2px solid var(--visual-accent); outline-offset:3px; }
#view-qa .qa-library-heading-actions { display:flex; flex-wrap:wrap; gap:8px; }
#view-qa .qa-source-open-options { font-size:13px; color:var(--visual-copy); }
#view-qa .qa-source-open-options summary { cursor:pointer; padding:8px; }
#view-qa .qa-source-open-options a { display:block; padding:10px; color:var(--visual-accent-deep); overflow-wrap:anywhere; }

/* Restored approved knowledge-one reading composition, scoped to knowledge only. */
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-stage-three-hero { background:transparent!important; border:0!important; box-shadow:none!important; padding:8px 0 20px!important; margin:0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-stage-three-hero h2 { font-size:30px; line-height:1.35; color:var(--visual-ink); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-library-heading-actions { background:transparent; border:0; box-shadow:none; padding:0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-library-heading-actions button { background:transparent!important; border:0!important; box-shadow:none!important; color:var(--visual-copy)!important; padding:8px 12px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-query-panel { background:transparent; border:0; border-radius:0; padding:0; margin:0 0 20px; }
html[data-visual-style] #view-qa.qa-reading-upgrade :is(.qa-input-area,.qa-source-filter,.qa-mode-bar) { background:transparent!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-input-area { padding:0 0 12px; }
html[data-visual-style] #view-qa.qa-reading-upgrade #qa-input { height:48px; border-color:var(--visual-line-soft); background:var(--visual-surface)!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-filter { padding:0 0 8px; gap:4px 12px; border-bottom:1px solid var(--visual-line-soft); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-toggle { padding:12px 10px; font-size:14px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-toggle.active { background:transparent!important; box-shadow:inset 0 -2px var(--visual-accent); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-bar { padding:8px 0 0; border:0; gap:8px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-desc { font-size:12px; min-width:160px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-context-chip { background:transparent; border:0; color:var(--visual-copy); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-chat-container { grid-template-columns:minmax(280px,35%) minmax(0,1fr); gap:12px; min-height:480px; }
html[data-visual-style] #view-qa.qa-reading-upgrade :is(#qa-messages,.qa-inline-reader) { height:calc(100dvh - 330px); min-height:460px; max-height:1000px; border:1px solid var(--visual-line-soft); border-radius:6px; background:var(--visual-surface); overflow:auto; scrollbar-width:thin; scrollbar-color:var(--visual-line) transparent; }
html[data-visual-style] #view-qa.qa-reading-upgrade #qa-messages { background:transparent; border:0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-search-message>.qa-msg-content { padding:0!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-search-summary { padding:8px 4px 14px; border:0; background:transparent; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-search-summary>span { font-size:12px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-group>header { padding:8px 4px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-list { display:block; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-card { padding:20px; background:var(--visual-surface); border:0; border-bottom:1px solid var(--visual-line-soft); border-radius:0; box-shadow:none; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-card.is-reading { background:var(--visual-surface-soft); box-shadow:inset 2px 0 var(--visual-accent); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-card header strong { font-size:17px; line-height:1.65; color:var(--visual-ink); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-match { border:0; background:transparent; padding:12px 0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-match p { font-size:14px; line-height:1.85; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-project-result-actions button { background:transparent!important; color:var(--visual-accent)!important; border:1px solid var(--visual-line-soft)!important; box-shadow:none!important; font-size:12px; padding:6px 10px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-reader-empty { min-height:440px; padding:48px; text-align:left; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-reader-empty p { max-width:36ch; font-size:15px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader>section>header { padding:28px 32px 20px; background:var(--visual-surface); }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader>section>header strong { font-size:28px; line-height:1.5; color:var(--visual-ink); }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader dl { display:flex; flex-wrap:wrap; gap:16px 24px; padding:16px 32px; background:var(--visual-surface); border-top:1px solid var(--visual-surface-soft); border-bottom:1px solid var(--visual-surface-soft); font-size:12px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader dl>div { min-width:100px; flex:1; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-preview-content { padding:24px 32px 40px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-text p { font-size:18px; line-height:1.95; color:var(--visual-ink); }
html[data-visual-style] #view-qa.qa-reading-upgrade mark { color:inherit; background:#f8e6b5; }
html[data-visual-style] #view-qa.qa-reading-upgrade :focus-visible { outline:2px solid var(--visual-accent); outline-offset:3px; }
@media(max-width:900px) {
 html[data-visual-style] #view-qa.qa-reading-upgrade .qa-chat-container { grid-template-columns:minmax(0,1fr); }
 html[data-visual-style] #view-qa.qa-reading-upgrade :is(#qa-messages,.qa-inline-reader) { height:auto; min-height:240px; max-height:620px; }
 html[data-visual-style] #view-qa.qa-reading-upgrade .qa-inline-reader { grid-column:1; grid-row:2; }
 html[data-visual-style] #view-qa.qa-reading-upgrade .qa-inline-reader:has(.qa-reader-empty) { display:none; }
 html[data-visual-style] #view-qa.qa-reading-upgrade .qa-stage-three-hero h2 { font-size:26px; }
 html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader>section>header { padding:20px; }
 html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-preview-content { padding:20px; }
 html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader dl { padding:16px 20px; }
}
/* Keep original text dominant over renderer metadata and legacy blue accents. */
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-chat-container { box-shadow:none!important; border-radius:0!important; background:transparent!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-card header>span { display:block; width:fit-content; background:transparent!important; border:0; color:var(--visual-copy); font-size:12px; padding:4px 0; white-space:normal; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-project-result-actions { justify-content:flex-start; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-switch { background:transparent!important; box-shadow:none!important; border:0!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-document-preview-location { background:var(--visual-surface-soft)!important; border-color:var(--visual-line-soft)!important; color:var(--visual-copy)!important; padding:16px 32px; }
html[data-visual-style] #view-qa.qa-reading-upgrade :is(.qa-document-preview-location span,.qa-local-result-match>span,.is-inline-reader>section>header span) { color:var(--visual-copy)!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-render.is-document { background:transparent; border:0; border-radius:0; box-shadow:none; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .is-document>.qa-document-render-summary { display:none; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-page { background:transparent; border:0; padding:20px 0; box-shadow:none; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-page p { font-size:18px; line-height:1.95; color:var(--visual-ink); }

/* One bounded reading workspace: compact command area, index rail and document. */
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-query-panel { padding:16px 20px 10px; margin:0; background:var(--visual-surface); border:1px solid var(--read-line); border-bottom:0; border-radius:8px 8px 0 0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-stage-three-hero { padding:4px 0 16px!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-filter { gap:4px 8px; padding:0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-source-toggle { padding:8px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-context-chip { margin-left:0; font-size:11px; padding:4px 0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-mode-bar { padding:6px 0 0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-chat-container { gap:0; border:1px solid var(--read-line)!important; border-radius:0 0 8px 8px!important; overflow:hidden; background:var(--visual-surface)!important; }
html[data-visual-style] #view-qa.qa-reading-upgrade :is(#qa-messages,.qa-inline-reader) { border:0; border-radius:0; margin:0; min-height:420px; height:calc(100dvh - 350px); }
html[data-visual-style] #view-qa.qa-reading-upgrade #qa-messages { background:var(--visual-surface); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-inline-reader { border-left:1px solid var(--read-line); }
html[data-visual-style] #view-qa.qa-reading-upgrade #qa-messages:has(.qa-local-search-message) .qa-user { display:none; }
html[data-visual-style] #view-qa.qa-reading-upgrade #qa-messages:has(.qa-ai-answer-formatted) .qa-user { display:block; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-search-summary { padding:12px 16px; border-bottom:1px solid var(--read-line); }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-search-summary>span { display:none; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-group>header { padding:8px 16px; background:var(--visual-surface); font-size:12px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-card { padding:14px 16px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-card header strong { font-size:15px; line-height:1.6; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-meta { margin:4px 0; font-size:12px; line-height:1.6; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-match { padding:8px 0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-local-result-match p { margin:6px 0; line-height:1.7; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-project-result-actions { gap:6px; margin-top:8px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-project-result-actions>span { width:auto; flex-basis:100%; font-size:11px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-project-result-actions :is(button,a) { margin:0; font-size:12px; padding:5px 8px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader>section>header { padding:20px 24px 16px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader>section>header strong { font-size:24px; }
#view-qa .qa-reader-provenance { border-bottom:1px solid var(--read-line,var(--visual-line-soft)); }
#view-qa .qa-reader-provenance summary { cursor:pointer; padding:12px 24px; font-size:13px; color:var(--visual-copy); }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader dl { border:0; padding:0 24px 16px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-document-preview-location { padding:12px 24px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-preview-content { padding:20px 24px 28px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-page { padding:12px 0; }
html[data-visual-style] #view-qa.qa-reading-upgrade .is-inline-reader .qa-document-page p { font-size:17px; line-height:1.85; }
@media(max-width:900px) {
 html[data-visual-style] #view-qa.qa-reading-upgrade .qa-query-panel { padding:12px; }
 html[data-visual-style] #view-qa.qa-reading-upgrade :is(#qa-messages,.qa-inline-reader) { height:auto; min-height:240px; max-height:620px; }
 html[data-visual-style] #view-qa.qa-reading-upgrade .qa-inline-reader { border-left:0; border-top:1px solid var(--read-line); }
}

/* Public-source cards: concise attribution with explicit, separated source actions. */
#view-qa .qa-professional-source { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 16px; color:var(--visual-copy); font-size:12px; margin:6px 0; }
#view-qa .qa-source-details { flex:1; min-width:100px; }
#view-qa .qa-source-details summary { cursor:pointer; padding:4px 0; color:var(--visual-copy); }
#view-qa .qa-source-details dl { padding:12px; margin:6px 0; background:var(--visual-surface); border:1px solid var(--visual-line-soft); line-height:1.7; }
#view-qa .qa-source-details dt { font-weight:600; }
#view-qa .qa-source-details dd { margin:2px 0 10px; overflow-wrap:anywhere; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-project-result-actions .qa-external-source-link { display:inline-flex; border:1px solid var(--visual-line-soft); border-radius:5px; padding:7px 12px; color:var(--visual-accent-deep); background:var(--visual-surface); text-decoration:none; font-size:13px; }
html[data-visual-style] #view-qa.qa-reading-upgrade .qa-project-result-actions .qa-external-source-link:hover { background:var(--visual-surface-soft); border-color:var(--visual-copy); }
#view-qa .qa-source-open-options { flex-basis:100%; order:5; margin-top:2px; }
#view-qa .qa-source-open-options summary { padding:6px 0; color:var(--visual-copy); font-size:12px; }
#view-qa .qa-source-open-options a { font-size:13px; padding:8px 0; }

/* A separate management window, retaining the existing manager and its handlers. */
#view-qa .qa-management-window:not([open]) { display:none!important; }
#view-qa .qa-management-window[open] { display:block; position:fixed; inset:5vh 3vw; margin:0; width:94vw; max-width:none; height:90vh; max-height:none; box-sizing:border-box; padding:0; border:1px solid var(--visual-line); border-radius:12px; background:var(--visual-surface); color:var(--visual-ink); box-shadow:0 24px 80px #203d3433; z-index:900; overflow:auto; }
#view-qa .qa-management-window .qa-knowledge-library-drawer { margin:0; border:0; padding:0; background:transparent; box-shadow:none; }
#view-qa .qa-management-window .qa-knowledge-library-drawer>summary { display:none; }
#view-qa .qa-management-window .qa-kb-card { padding:20px; border:0; margin:0; }
#view-qa .qa-management-window .qa-library-manager-head { position:sticky; top:0; z-index:3; background:var(--visual-surface); padding:8px 0 16px; }
#view-qa .qa-management-window .qa-library-return-search { display:none!important; }
#view-qa .qa-management-window .qa-library-workspace { min-height:60vh; }
@media(max-width:700px) { #view-qa .qa-management-window[open] { inset:2vh 2vw; width:96vw; height:96vh; } #view-qa .qa-management-window .qa-kb-card { padding:12px; } }

/* AI uses the primary reading column; sources remain in the index rail. */
#view-qa .qa-ai-reader-heading { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; padding:20px 24px; border-bottom:1px solid var(--visual-line-soft); }
#view-qa .qa-ai-reader-heading strong { font-size:22px; color:var(--visual-ink); }
#view-qa .qa-ai-reader-heading span { font-size:13px; color:var(--visual-copy); }
html[data-visual-style] #view-qa .is-ai-answer-reader>.qa-message>.qa-msg-content { padding:20px 28px; }
#view-qa .is-ai-answer-reader .qa-ai-answer-formatted { font-size:16px; line-height:1.85; }
#view-qa .qa-ai-source-rail .qa-source-cards { display:flex; flex-direction:column; gap:0; }
#view-qa .qa-ai-source-rail .qa-source-card { width:100%; box-sizing:border-box; text-align:left; padding:16px; border:0; border-bottom:1px solid var(--visual-line-soft); border-radius:0; background:transparent; }
#view-qa .qa-ai-source-rail .qa-source-cards-drawer>summary { padding:12px 0; }
#view-qa .qa-ai-source-rail .qa-source-cards-drawer>summary small { display:block; }

/* Shared knowledge typography and controls across reading and management. */
html[data-visual-style] #view-qa { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; }
#view-qa .qa-answer-document-control { display:flex; align-items:center; flex-basis:100%; gap:12px; padding:8px 0 0; color:var(--visual-copy); font-size:13px; }
#view-qa .qa-answer-document-control select { min-width:0; max-width:100%; flex:1; height:36px; border:1px solid var(--visual-line-soft); border-radius:5px; background:var(--visual-surface); color:var(--visual-ink); padding:4px 10px; }
html[data-visual-style] #view-qa .qa-ai-source-rail :is(.qa-source-text,.qa-source-main) { white-space:normal!important; overflow:visible!important; text-overflow:clip!important; min-width:0; }
html[data-visual-style] #view-qa .qa-ai-source-rail .qa-source-card q { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; font-size:13px; line-height:1.7; }
html[data-visual-style] #view-qa :is(.qa-source-text,.qa-source-location,.qa-source-cards-drawer>summary,.qa-ai-reader-heading span) { color:var(--visual-copy)!important; }
html[data-visual-style] #view-qa .qa-management-window :is(button,.qa-library-file-icon) { color:var(--visual-copy)!important; }
html[data-visual-style] #view-qa .qa-management-window button.active { background:var(--visual-surface-soft)!important; border-color:var(--visual-line-soft)!important; }
html[data-visual-style] #view-qa .qa-management-window .qa-library-document-row .qa-library-file-copy strong { white-space:normal; overflow:visible; text-overflow:clip; }
#view-qa .qa-management-window[open] { height:min(90vh,920px); bottom:auto; }
html[data-visual-style] #view-qa .qa-source-cards-drawer>summary>span,
html[data-visual-style] #view-qa .qa-mode-switch button.is-active,
html[data-visual-style] #view-qa .qa-management-window :is(button span,button strong,button svg,.qa-library-kicker) { color:var(--visual-copy)!important; }
html[data-visual-style] #view-qa .qa-management-window button.is-active { background:var(--visual-surface-soft)!important; border-color:var(--visual-line-soft)!important; }
html[data-visual-style] #view-qa .qa-ai-source-rail .qa-source-card { display:flex; flex-direction:column; align-items:stretch; gap:8px; }
html[data-visual-style] #view-qa .qa-management-window .qa-library-workspace { min-height:420px; height:min(68vh,700px); grid-template-columns:176px minmax(320px,1.1fr) minmax(280px,1fr); }
#view-qa .qa-management-window[open] { height:auto; max-height:90vh; }
@media(max-width:800px) { html[data-visual-style] #view-qa .qa-management-window .qa-library-workspace { height:auto; grid-template-columns:1fr; } }
