/* Cool paper, cobalt actions, and explicit evidence states. */
:root {
  --ink:#202b3c; --body:#3d485b; --muted:#647084; --paper:#fff; --bg:#f7f8fa;
  --line:#e1e5eb; --accent:#415fe1; --accent-soft:#edf0ff; --lime:#edf5f1;
  --orange:#8d6a27; --orange-soft:#faf3e5; --blue-soft:#edf0ff;
  --shadow:0 4px 18px #202b3c08; --radius:12px;
  font-family:"Avenir Next","PingFang SC","Microsoft YaHei",sans-serif;
  color:var(--body); background:var(--bg);
}
body { background:var(--bg); }
::selection { color:var(--ink); background:#dfe5ff; }
.sidebar { background:var(--paper); color:var(--body); border-right:1px solid var(--line); }
.sidebar .brand,.sidebar .side-note strong { color:var(--ink); }
.sidebar .brand-caption { color:var(--muted); letter-spacing:.03em; }
.sidebar .brand-mark { transform:none; }
.sidebar .brand-mark i { background:var(--accent); }
.sidebar .workspace-label,.sidebar .side-label,.sidebar .study-button .small,
.sidebar .side-note,.sidebar .profile div span { color:var(--muted); }
.sidebar .workspace-label span { border-color:var(--line); border-radius:5px; }
.sidebar .nav-item { color:var(--muted); border-radius:9px; }
.sidebar .nav-item:hover { color:var(--ink); background:var(--bg); }
.sidebar .nav-item.active { color:var(--accent); background:var(--accent-soft); }
.sidebar .nav-dot { background:var(--accent); }
.sidebar .research-nav,.sidebar .profile { border-color:var(--line); }
.sidebar .study-button { color:var(--ink); background:var(--bg); border-color:var(--line); border-radius:10px; }
.sidebar .study-symbol,.sidebar .avatar { color:var(--accent); background:var(--accent-soft); }
.sidebar .note-spark,.sidebar .side-note .text-button { color:var(--accent); }
.sidebar .side-note { padding-top:25px; }
.sidebar .profile .local-dot { background:#32705b; }
.sidebar :is(a,button):focus-visible { outline-color:var(--accent); }
.topbar { background:#fffffff0; border-color:var(--line); }
.breadcrumb-slash,.source-number { color:#8d97a8; }
.page-footer,.tab-count,.reading-path,.preview-open,.expand-symbol { color:var(--muted); }
.heading-row h1,.section-page-heading h1,.decision-card h2,.brief-cover h2 { font-family:"Avenir Next","PingFang SC",sans-serif; font-weight:600; letter-spacing:-.65px; }
.heading-row h1 { line-height:1.4; }
.section-page-heading p { max-width:760px; line-height:1.85; }
.overview-band,.brief-paper,.rail-card,.comparison-wrap,.source-card,
.method-card,.check-card,.case-item,.about-main,.empty-state,
.decision-card,.insight-preview-list,.insight-preview,.business-insight,
.opportunity-card,.question-tree-panel,.evidence-sides article,
.coding-dimensions,.chain-card,.gap-list,.validation-plan,
.interview-questions,.experiment-panel,.observation-list article,
.process-source-list,.process-rules { background:var(--paper); box-shadow:none; }
.decision-card { border-color:var(--line); border-top-color:var(--accent); border-radius:12px; }
.overview-icon,.insight-ordinal,.question-number,.plan-order { color:var(--accent); background:var(--accent-soft); }
.decision-callout,.reasoning-cell.observation,.draft-hypothesis,.public-full-question p { background:var(--bg); }
.decision-callout { border-left-color:var(--accent); }
.report-footnote,.insight-preview:hover,.business-insight[open]>summary { background:var(--bg); }
.next-action,.about-aside,.method-note,.method-flow,.method-pitch { background:var(--accent-soft); border-color:var(--line); }
.evidence-unit { background:#ffffffc9; border-color:#d9dff4; }
.insight-preview+.insight-preview,.map-row,.source-mini,.chain-card>div:not(.source-links) { border-color:var(--line); }
.section-mark { background:var(--accent); }
.map-dot { background:#54866e; }
.map-row:nth-child(2) .map-dot { background:#6b7ddd; }
.map-row:nth-child(3) .map-dot { background:#b29555; }
.overview-number { font-weight:600; }
.claim { border-color:var(--line); border-radius:10px; }
.claim p,.source-card p,.decision-rationale,.decision-choices p,
.decision-callout p,.reasoning-cell p,.plan-grid p,.structured-list,
.about-main p,.about-main li { color:var(--body); }
.reasoning-label,.reasoning-cell .reasoning-label,.question-tree dt,
.coding-dimensions strong,.chain-card>div>span,.plan-grid h3,
.experiment-panel h3,.process-scope span,.process-run strong,
.draft-hypothesis>strong { color:var(--accent); }
.reasoning-cell.alternative .reasoning-label,.plan-grid strong { color:var(--muted); }
.records-empty { background:var(--paper); border-color:#cbd3e0; }
.records-empty span { color:var(--muted); }
.primary { background:var(--accent); border-color:var(--accent); color:#fff; border-radius:9px; }
.primary:hover { background:#3452d2; filter:none; }
.secondary,.quiet-button,.filter-pill { background:var(--paper); border-color:var(--line); color:var(--body); }
.secondary { border-radius:9px; }
.secondary:hover,.quiet-button:hover,.filter-pill:hover { background:var(--bg); filter:none; }
.filter-pill.active { background:var(--accent-soft); border-color:#cbd4ff; color:var(--accent); }
.heading-buttons .primary { box-shadow:none; }
button:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
input:focus,textarea:focus,select:focus { outline-color:var(--accent); }
.source-card:target,.source-card.highlight { box-shadow:0 0 0 2px var(--accent); }
input:not([type=checkbox]),textarea,select,dialog { color:var(--body); background:var(--paper); border-color:var(--line); }
input::placeholder,textarea::placeholder { color:#8791a3; }
dialog { box-shadow:0 18px 70px #202b3c24; }
dialog::backdrop { background:#202b3c66; }
.evaluation-summary { background:var(--accent-soft); color:var(--body); border:1px solid #d9dff4; }
.evaluation-summary h2 { color:var(--ink); }
.evaluation-summary p { color:var(--muted); }
.evaluation-summary .primary { color:#fff; background:var(--accent); border-color:var(--accent); }
.evaluation-summary :is(a,button):focus-visible { outline-color:var(--accent); }
.toast { color:#fff; background:var(--ink); box-shadow:var(--shadow); }
.review-progress { background:#e9edf3; }
.comparison th { color:var(--ink); background:var(--bg); }
.comparison th,.comparison td { border-color:var(--line); }
.citation { color:var(--accent); background:#f5f6fd; border-color:#dee3f6; }
.citation:hover { border-color:#98a8ed; }
.tag { border-radius:5px; }
.tag.fact { color:#32705b; background:#edf5f1; }
.tag.inference { color:#4159ab; background:#edf0ff; }
.tag.hypothesis,.tag.pending { color:#8d6a27; background:#faf3e5; }
.tag.reviewed { color:#32705b; background:#e7f2ec; }
.test-plan,.revision-label,.revision-panel p,.reasoning-gap,.conflict-log p,.conflict-log p strong { color:#776130; }
.revision-panel,.conflict-log article,.reasoning-gap { background:#faf7ef; border-color:#e8dfc9; }
.insight-level { color:var(--accent); background:var(--accent-soft); }
.source-icon,.source-icon.p { color:#32705b; background:#edf5f1; }
.source-icon.e { color:#7a5b96; background:#f2edf8; }
.source-icon.c { color:#4159ab; background:#edf0ff; }
.opportunity-card.recommended { border-color:#cbd4ff; box-shadow:inset 0 2px 0 var(--accent); }
.option-priority { background:var(--accent-soft); }
.opportunity-card dt,.method-flow b { color:var(--accent); }
.notice { color:var(--body); background:var(--bg); }
.notice.warning { color:#8d6a27; background:#faf3e5; border-color:#eadfc4; }
.generating-banner { background:var(--accent-soft); color:var(--accent); border-color:#cbd4ff; }
.spinner { border-color:#cbd4ff; border-top-color:var(--accent); }
.check-icon.pass { color:#32705b; background:#edf5f1; }
.check-icon.warn { color:#8d6a27; background:#faf3e5; }
.check-icon.fail { color:#a64e5b; background:#faedf0; }
.delete-link,.error-panel { color:#a64e5b; }
.error-panel { background:#faedf0; border-color:#efcfd6; }
/* These selectors override language.css, which currently follows this file. */
.topbar .language-switch { border-color:var(--line); background:var(--paper); border-radius:8px; }
.topbar .language-switch button { color:var(--muted); border-radius:5px; }
.topbar .language-switch button[aria-pressed=true] { color:var(--accent); background:var(--accent-soft); }
.topbar .language-switch button:hover:not([aria-pressed=true]) { background:var(--bg); }
.topbar .language-switch button:focus-visible { outline-color:var(--accent); }
/* Keep the five-step trial; reserve colour for selection and feedback. */
body .trial-entry { color:var(--body); background:var(--paper); border:1px solid var(--line); border-radius:12px; box-shadow:none; }
body .trial-entry-copy>span,body .trial-entry-copy>small { color:var(--accent); letter-spacing:0; }
body .trial-entry h2 { color:var(--ink); font-size:23px; font-weight:600; letter-spacing:-.5px; }
body .trial-entry p,body .trial-entry-actions>small { color:var(--muted); }
body .trial-entry-actions .trial-primary { color:#fff; background:var(--accent); border-color:var(--accent); }
body .trial-entry-actions .trial-primary:hover { color:#fff; background:#3452d2; }
body .trial-entry-actions .trial-secondary { color:var(--ink); background:var(--paper); border-color:var(--line); }
body .trial-entry-actions .trial-text-button { color:var(--accent); }
body .trial-mini-path { color:var(--muted); }
body .trial-mini-path b { color:var(--accent); }
body .trial-mini-path>:not(:last-child)::after { color:#a4aec0; }
body .trial-badge { color:var(--accent); background:var(--accent-soft); border-radius:6px; }
body .trial-intro h1,body .trial-brief h2 { font-family:"Avenir Next","PingFang SC",sans-serif; font-weight:600; letter-spacing:-.65px; }
body .trial-intro h1 { line-height:1.4; }
body .trial-intro p { color:var(--muted); }
body .trial-stepper { border-color:var(--line); border-radius:10px; overflow:hidden; }
body .trial-stepper li+li button { border-color:var(--line); }
body .trial-step-number { color:var(--muted); background:#e9edf3; }
body .trial-stepper button.is-current,body .trial-stepper .is-current>button { color:var(--accent); background:var(--accent-soft); }
body .trial-stepper .is-current .trial-step-number,body .trial-stepper button.is-current .trial-step-number { color:#fff; background:var(--accent); }
body .trial-stepper button.is-complete,body .trial-stepper .is-complete>button { color:#32705b; background:#edf5f1; }
body .trial-stepper .is-complete .trial-step-number,body .trial-stepper button.is-complete .trial-step-number { color:#fff; background:#32705b; }
body .trial-panel { background:var(--paper); border-color:var(--line); border-radius:12px; }
body .trial-rail { color:var(--muted); }
body .trial-task { border-left-color:var(--accent); background:var(--accent-soft); border-radius:0 8px 8px 0; }
body .trial-task strong { color:var(--accent); }
body .trial-rail .trial-task { background:var(--bg); border-left-color:#b5bece; }
body .trial-rail .trial-task strong { color:var(--ink); }
body .trial-scenario { background:var(--paper); border-color:var(--line); border-radius:10px; }
body .trial-scenario.is-selected { border-color:var(--accent); background:var(--accent-soft); box-shadow:none; }
body .trial-scenario.is-selected strong { color:var(--ink); }
body .trial-fields :is(input,select,textarea),body .trial-decision :is(textarea,select) { background:var(--paper); border-color:#ccd3df; border-radius:8px; }
body .trial-source { background:var(--paper); border-color:var(--line); border-radius:10px; }
body .trial-source.is-reviewed { background:#f5faf7; border-color:#b9d5c6; }
body .trial-source blockquote { border-left-color:#b9c4f7; }
body .trial-source-tag { color:#32705b; background:#edf5f1; border-radius:5px; }
body .trial-source-tag.warning,body .trial-source-tag.hypothesis { color:#8d6a27; background:#faf3e5; }
body .trial-source-tag.inference { color:#4159ab; background:#edf0ff; }
body .trial-check input,body .trial-validation input,body .trial-question input { accent-color:var(--accent); }
body .trial-question { border-color:var(--line); border-radius:10px; }
body .trial-question label+label { border-color:var(--line); }
body .trial-feedback,body .trial-feedback.success { color:#32705b; background:#edf5f1; border-color:#6fa58b; border-radius:0 8px 8px 0; }
body .trial-feedback.warning { color:#8d6a27; background:#faf3e5; border-color:#baa16a; }
body .trial-table-scroll { border-color:var(--line); border-radius:10px; scrollbar-color:#bac3d5 #f1f3f8; }
body .trial-comparison th { background:var(--bg); }
body .trial-comparison tbody th { background:var(--paper); }
body .trial-comparison tr.is-selected td,body .trial-comparison tr.is-selected th { background:var(--accent-soft); }
body .trial-comparison tr.is-selected th,body .trial-comparison tr.is-selected td:first-child { box-shadow:inset 3px 0 var(--accent); }
body .trial-product-choice { color:var(--ink); background:var(--paper); border-color:#ccd3df; border-radius:8px; }
body .trial-product-choice input { accent-color:var(--accent); }
body .trial-product-choice:has(input:checked) { color:#fff; background:var(--accent); border-color:var(--accent); }
body .trial-product-choice:has(input:checked) input { accent-color:#fff; }
body .trial-brief { background:var(--paper); border-color:var(--line); border-top:3px solid var(--accent); border-radius:10px; }
body .trial-footer { background:var(--paper); border-color:var(--line); box-shadow:none; }
body .trial-primary,body .trial-secondary { border-radius:9px; box-shadow:none; }
body .trial-primary { color:#fff; background:var(--accent); border-color:var(--accent); }
body .trial-primary:hover { color:#fff; background:#3452d2; }
body .trial-secondary { color:var(--ink); background:var(--paper); border-color:var(--line); }
body .trial-secondary:hover { background:var(--bg); }
body .trial-complete { color:#32705b; background:#edf5f1; border-left-color:#6fa58b; border-radius:0 10px 10px 0; }
body .trial-complete h2,body .trial-complete h3,body .trial-complete p { color:#32705b; }
body .trial-entry :is(button,a):focus-visible { outline-color:var(--accent); }
@media(min-width:1201px) {
  main { padding:36px 42px 48px; }
  .heading-row { margin-bottom:27px; }
  .decision-card { padding:29px 31px; }
}
@media(max-width:700px) {
  .sidebar { border-right:0; border-bottom:1px solid var(--line); }
  .sidebar .nav-item.active { color:var(--accent); background:transparent; border-bottom-color:var(--accent); }
  .sidebar .nav-item:hover { background:transparent; }
  .topbar .language-switch button { min-height:34px; }
  body .trial-entry h2 { font-size:21px; }
  body .trial-stepper { border-radius:9px; }
  body .trial-intro h1 { font-size:27px; }
  body .trial-comparison tr { border-radius:9px; border-color:var(--line); }
}
@media(max-width:380px) { body .trial-intro h1 { font-size:25px; } }
@media(prefers-reduced-motion:reduce) { .primary,.secondary,.nav-item { transition:none; } }
