/* Cream working surfaces; forest actions; gold reserved for small accents. */
:root{
  --paper:#faf8f1;--cream:#eae7de;--sage:#f3f1e9;
  --forest:#1c372e;--deep:#172f27;--ink:#263e34;--muted:#60675e;
  --line:#d1d1c5;--row-line:#e8e5dc;--on-dark:#faf8ed;--muted-dark:#d7ded3;
  --gold:#896526;--gold-rule:#b39550;--surface:#f1eee5;--hover:#eeece2;
  background:var(--sage);
}
body,.screen-window{background:var(--sage)}

/* A slim forest navigation row above a separate cream command bar. */
.app-header{padding:0;gap:0 24px;min-height:0;border-bottom:1px solid var(--line);box-shadow:0 2px 9px #28372c0c;background:var(--forest)}
.app-brand{min-height:62px;margin-left:var(--workspace-gutter)}
.app-nav{margin:10px var(--workspace-gutter) 10px 0;min-width:0}
.app-nav button{color:var(--on-dark)}
.app-nav .nav-day,.app-nav #screenNote{background:#2b463b;border-color:#677c6d;color:var(--on-dark)}
.app-nav .quiet:hover,.app-nav .nav-day:hover,.app-nav #screenNote:hover{background:#365246;color:var(--on-dark)}
.workspace-command{background:var(--surface);padding:10px var(--workspace-gutter);border-top:1px solid #d2d3c6;min-width:0;color:var(--ink)}
.workspace-home{color:var(--ink)}
.workspace-home:hover{color:var(--deep)}
.command-controls{padding:0;background:transparent;border:0;box-shadow:none;gap:22px;min-width:0}
.clock-block{padding:0;min-height:48px;gap:14px;border:0;background:transparent;box-shadow:none}
.clock-label{color:var(--muted)}
.clock-block .workspace-clock{color:var(--gold)}
.workspace-command .quiet{color:var(--muted)}
.workspace-command .quiet:hover{color:var(--ink);background:var(--hover)}
.workspace-command #submitAttempt,.workspace-command #submitAttempt[hidden]+#showResults{min-height:48px;background:linear-gradient(#304f3f,#284638);color:var(--on-dark);border-color:#274435;box-shadow:inset 0 1px #ffffff14,0 2px 3px #203b2b1a}
.workspace-command #submitAttempt:hover,.workspace-command #submitAttempt[hidden]+#showResults:hover{background:linear-gradient(#3c5e4c,#31503f)}
.workspace-command #showResults{min-height:48px;min-width:0;background:transparent;color:var(--ink);border-color:var(--line);box-shadow:none}
.workspace-command #showResults:hover{background:var(--hover);color:var(--ink)}
.workspace-command #submitAttempt:active{box-shadow:inset 0 2px 4px #10271935}
.app-header .workspace-command :is(button,a):focus-visible{outline-color:var(--gold)}

/* Case context shares the paper palette of the homepage cards. */
.intro{background:var(--paper);border-color:var(--line);color:var(--ink);box-shadow:0 3px 12px #263e3206}
.intro h1{color:var(--forest)}
.intro .eyebrow{color:var(--gold)}
.intro .snapshot,.snapshot span,.snapshot strong{color:var(--muted)}
.snapshot{border-color:var(--line)}
.context{background:var(--cream);border-color:var(--line);border-top-color:#e6e3d9;box-shadow:0 2px 3px #263e3206,0 6px 14px #263e3205}
.context .progress{border-color:#c7c8bc}
.workspace-heading,.workspace-heading h2{color:var(--ink)}
.workspace-heading p,.workspace-heading small,#saveStatus{color:var(--muted)}
.step,.section-number{background:var(--paper);border:1px solid #aeb6a9;color:var(--forest);box-shadow:inset 0 1px #fffdf6}
.log-count{background:var(--cream);color:var(--ink)}

/* Keep the established table sizes, sticky headers and soft row dividers. */
.grids{background:var(--paper);border-color:var(--line);box-shadow:inset 0 1px #fffdf6,0 3px 10px #263e3208}
.grids .panel{background:var(--paper);border-color:var(--line)}
.panel-title,.panel:nth-child(2) .panel-title{background:var(--cream);border-bottom-color:var(--line);box-shadow:inset 0 1px #fffdf655}
.panel-title{border-top-color:#315444}
.panel:nth-child(2) .panel-title{border-top-color:var(--gold-rule)}
.count,.panel:nth-child(2) .count{background:#faf8f180;border-color:var(--line);color:var(--muted)}
select,.source-controls select,.evidence-picker select{background:#fffdf7;color:var(--ink);border-color:#b9bfb1}
.table-wrap,.grids .table-wrap{background:var(--paper);scrollbar-color:#b2b7aa var(--surface)}
th{background:var(--surface);border-bottom-color:var(--line);color:var(--muted)}
th button{color:var(--muted)}
td,.grids td{border-bottom-color:var(--row-line)}
.side{background:#f5f3eb;border-color:#c7cbbf;color:var(--ink)}
tbody tr:hover,.grids tr:not(.grouped):hover{background:var(--hover)}
tr.grouped,.grids tr.grouped{background:#f0efe7;color:var(--muted)}
.grids tr.grouped .idcell strong{color:#415549}
.grids tr.grouped{cursor:pointer;box-shadow:inset 3px 0 #b6b9aa}
.grids tr.grouped:hover,.grids tr.grouped:focus-within{background:#e8e7dc;box-shadow:inset 3px 0 var(--gold-rule)}
.filed-record-mark{color:var(--muted);font-size:20px}
.record-decision-link{display:block;min-height:32px;margin-top:4px;padding:4px 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--ink);font:500 14px/1.5 var(--font-body);text-align:left;text-transform:none;letter-spacing:0;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.record-decision-link:hover{background:transparent;color:var(--gold);box-shadow:none;transform:none}
.record-decision-link:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.log-row.decision-linked{border-color:var(--gold-rule);outline:2px solid var(--gold-rule);outline-offset:3px;box-shadow:inset 4px 0 var(--gold-rule);background:#f6f0df;scroll-margin-block:160px 24px}
.log-row.decision-linked .group-number{color:var(--gold)}
.is-linked-record{background:#e9dfc4;color:var(--deep);box-shadow:0 0 0 3px #e9dfc4;border-radius:1px;font-weight:600}
tr.selected,tbody tr.selected:hover,.grids tr.selected,.grids tr.selected:hover{background:#e7ece2;box-shadow:inset 3px 0 #43654f}
tr.selected td:first-child{box-shadow:inset 3px 0 #43654f}
.source-foot{background:var(--surface);color:var(--muted);border-top-color:var(--line)}
input[type=checkbox],input[type=radio],.decision-option input{accent-color:#3e614b}
.settlement-comparison{border-top-color:var(--line)}
.source-totals,.comparison-note,.settlement-comparison caption,.ledger-comparison caption{background:var(--cream);border-color:var(--line);color:var(--ink)}
.settlement-comparison tbody th{background:var(--surface);color:var(--ink)}
.ledger-comparison-line>span,.trade-strip-title span{color:var(--muted)}
.internal-source{color:#365b43}.broker-source{color:var(--gold)}

/* Primary actions remain forest, while Clear and navigation stay quiet. */
.primary,.selection-bar .primary:not(:disabled),.log-actions .primary{background:linear-gradient(#304f3f,#284638);color:var(--on-dark);border-color:#274435;box-shadow:inset 0 1px #ffffff14,0 2px 3px #203b2b1a}
.primary:hover:not(:disabled),.selection-bar .primary:hover:not(:disabled),.log-actions .primary:hover:not(:disabled){background:linear-gradient(#3c5e4c,#31503f);color:var(--on-dark);box-shadow:inset 0 1px #ffffff14,0 2px 5px #203b2b24}
.primary:disabled,.selection-bar .primary:disabled,.log-actions .primary:disabled{background:#e0dfd6;color:#73786e;border-color:#d2d3c7;box-shadow:none}
.quiet,.selection-bar .quiet{color:var(--muted)}
.quiet:hover:not(:disabled),.selection-bar .quiet:hover:not(:disabled){background:var(--hover);color:var(--ink)}
.quiet:disabled,.selection-bar .quiet:disabled{color:#777c71}
.selection-bar{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:inset 0 1px #fffdf6,0 3px 14px #263e3217}
.selection-bar strong,#selectionCount{color:var(--ink)}
.selection-bar span,#selectionHint{color:var(--muted)}
.selection-bar .primary span{color:inherit}
.selection-bar :is(button,a):focus-visible{outline-color:var(--gold)}
.selection-record,.selection-record[data-source=B]{background:var(--paper);border-color:#bec6b8;color:var(--ink)}
.selection-record[data-source=B]{border-color:#cbbd9c}
.selection-record b{color:var(--muted)}
.selection-bar:has(.selection-record){border-top-color:#839984}
.book-tabs button{background:var(--paper);border-color:#bec6b8;color:var(--ink);box-shadow:none}
.book-tabs button:hover{background:var(--hover)}
.book-tabs button[aria-pressed=true]{background:var(--forest);color:var(--on-dark);border-color:var(--forest);box-shadow:inset 0 -2px #839984}
.empty,.workspace-idle{border-color:var(--line);background:var(--paper)}
.log-row{border-color:var(--line);box-shadow:0 2px 5px #263e3208}
.app-nav .quiet:hover:not(:disabled){background:#365246;color:var(--on-dark)}
.workspace-command #submitAttempt:disabled,.workspace-command #showResults:disabled{background:#e0dfd6;color:#73786e;border-color:#d2d3c7;box-shadow:none}
.status-pill,.investigation-badge,.investigation-badge.saved,.investigation-badge.in-progress,.investigation-badge.not-started,.review-answers{background:var(--surface);border-color:var(--line);color:var(--muted)}

/* Investigation, briefing and report surfaces use the same neutral materials. */
dialog{border-color:#b7bfb0;box-shadow:0 2px 0 #9ba89533,0 24px 75px #152d2655;scrollbar-color:#aeb7a4 var(--paper)}
dialog::backdrop{background:#142d267a;backdrop-filter:blur(3px)}
.dialog-heading{border-bottom-color:var(--line)}
.dialog-actions,.investigation-end{background:var(--surface);border-top-color:var(--line)}
.comparison-decision{background:var(--surface);border-color:var(--line);border-left-color:#839984}
.comparison-decision>span{color:var(--muted)}
.investigation-trades{border-color:var(--line)}
.trade-strip-title{background:var(--cream);color:var(--muted)}
#investigationDialog:not(.library-only) .investigation-layout{border-top-color:var(--line)}
#investigationDialog:not(.library-only) .evidence-pane{border-color:var(--line)}
.evidence-document{background:#fdfbf5;border-color:var(--line);box-shadow:2px 3px 0 #e6e3d8}
.document-heading{background:var(--cream);border-color:var(--line)}
.evidence-fact{border-color:var(--row-line)}
.evidence-fact h4{color:var(--muted)}
.decision-option{background:#fffdf7;border-color:#c8ccbe}
.decision-option:hover{background:var(--surface);border-color:#96a58a}
.decision-option:has(input:checked){background:#e9eee3;border-color:#78906d;box-shadow:inset 3px 0 #527349}
.decision-option:focus-within{outline-color:var(--gold)}
.answer-review,.followup-request,.duplicate-example,.practice{background:var(--surface);border-color:var(--line)}
.followup-request,.practice{border-left-color:#839984}
.duplicate-methods>div{border-left-color:#839984}
.campaign-stats>div,.result-detail details{background:var(--surface);border-color:var(--line)}
.result-item{background:#fdfbf5;border-color:var(--line)}
.result-hero{background:var(--cream);border:1px solid var(--line)}
.result-hero,.result-hero p,.result-hero span,.result-hero strong{color:var(--ink)}
.result-hero p,.result-hero span{color:var(--muted)}
.campaign-complete-message,.campaign-finish{background:#ebefe5;border-color:#91a480;color:var(--ink)}
.campaign-finish>strong{color:var(--forest)}
.calendar-cell{background:var(--paper);border-color:#c6ccbd;color:var(--ink)}
.calendar-cell.is-complete{background:#e8eddf;color:#385536}
.calendar-cell.is-current{background:var(--paper);border-color:#537447;box-shadow:inset 0 0 0 1px #537447}
.calendar-cell.is-selected{background:#e8eddf;box-shadow:inset 0 -3px #537447}
.calendar-cell.is-locked{background:var(--surface);color:#697061}
.calendar-cell:hover{background:#e8eddf}
.demo-guide,.tutorial-offer{background:var(--surface);border-color:var(--line);border-left-color:#839984;color:var(--ink)}
.tutorial-guide{background:var(--paper);border-color:var(--line);box-shadow:0 3px 12px #243b340c}
.tutorial-guide,.tutorial-guide :is(h2,p,strong,.screen-kicker),.tutorial-copy h2,.tutorial-copy p,.tutorial-heading .screen-kicker{color:var(--ink)}
.tutorial-guide .quiet{color:var(--muted)}
.tutorial-guide .quiet:hover{background:var(--hover);color:var(--ink)}
.tutorial-steps li{color:var(--muted)}
.tutorial-steps li>span{border-color:#b6c1ac}
.tutorial-steps li[aria-current]{color:var(--gold)}
.tutorial-steps li[aria-current]>span{border-color:var(--gold-rule)}
.tutorial-steps .is-complete>span{background:#e1e9d8;color:#365430;border-color:#a4b693}
.tutorial-guide :is(button,a):focus-visible{outline-color:var(--gold)}
.screen-window tr.tutorial-target{background:#f5ecd4}
.screen-window tr.tutorial-target.selected{background:#e5ebdc}
/* Error, correction and success colours retain their meaning on cream. */
.field-difference{background:#f4e7bd;color:#71501d}
.review-feedback.review-updated{background:var(--surface);border-color:var(--line);color:var(--muted)}
.review-feedback.review-incorrect{background:#f5e8c7;border-color:#ccb982;color:#78571e}
.review-feedback.review-correct,.investigation-badge.complete,.result-badge.correct{background:#e4eddb;border-color:#a5bc8a;color:#385b2b}

@media(max-width:680px){
  .app-header{padding:0;gap:0 10px}
  .app-brand{margin-left:14px;min-height:60px}
  .app-nav{margin:8px 14px 8px 0}
  .workspace-command{padding:9px 14px}
  .clock-block{padding:0;min-height:44px}
  .command-controls{gap:12px}
}
@media(max-width:430px){
  .app-header{grid-template-columns:1fr}
  .app-brand{min-height:48px}
  .app-nav{margin:0 14px 10px}
  .workspace-command{display:flex;flex-wrap:wrap}
  .command-controls{margin:0;flex-wrap:wrap;gap:8px 12px}
}

/* Feedback spans the card below both the decision and its action buttons. */
.log-row{display:grid;grid-template-columns:max-content minmax(0,1fr) auto;row-gap:0}
.log-row>.group-number{grid-column:1;grid-row:1}
.log-row>.content{grid-column:2;grid-row:1}
.log-row>.log-actions{grid-column:3;grid-row:1}
.log-row>.log-feedback{grid-column:2/-1;grid-row:2;min-width:0}
@media(max-width:600px){
  .log-row{grid-template-columns:minmax(0,1fr)}
  .log-row>.content{grid-column:1;grid-row:1}
  .log-row>.log-actions{grid-column:1;grid-row:2;margin-top:12px;justify-content:flex-start}
  .log-row>.log-feedback{grid-column:1;grid-row:3}
}
