/* Proposed Guardian palette, not an official KOC specification.
   Reference only: map semantic roles in the current application explicitly.
   Default to light; resolve a personal system preference to light/dark. */
html[data-workspace-profile] {
  --gk-canvas: #f4f7fb;
  --gk-surface: #ffffff;
  --gk-surface-soft: #edf4fb;
  --gk-sidebar: #082f59;
  --gk-sidebar-text: #ffffff;
  --gk-sidebar-muted: #bfd3e9;
  --gk-text: #14283f;
  --gk-muted: #52657b;
  --gk-border: #d8e2ee;
  --gk-control-border: #74869d;
  --gk-action: #005eb8;
  --gk-on-action: #ffffff;
  --gk-link: #005eb8;
  --gk-selected: #e5f0fc;
  --gk-focus: #005eb8;
  --gk-focus-on-dark: #ffffff;
  --gk-critical: #b42318;
  --gk-critical-bg: #fff0ee;
  --gk-caution: #8a4b00;
  --gk-caution-bg: #fff4dd;
  --gk-confirmed: #146c43;
  --gk-confirmed-bg: #e9f6ef;
  --gk-unknown: #5b6575;
  --gk-unknown-bg: #edf0f4;
  --gk-oil: #243b53;
  --gk-water: #087daf;
  --gk-power: #8a4b00;
  --gk-signal: #005eb8;
  --gk-fluid: #08786b;
}
html[data-workspace-profile][data-theme="dark"] {
  --gk-canvas: #0b1727;
  --gk-surface: #12243a;
  --gk-surface-soft: #192f48;
  --gk-text: #edf4fc;
  --gk-muted: #b3c4d7;
  --gk-border: #344b64;
  --gk-control-border: #7e97b2;
  --gk-action: #85c1ff;
  --gk-on-action: #082f59;
  --gk-link: #85c1ff;
  --gk-selected: #1e426a;
  --gk-focus: #85c1ff;
  --gk-critical: #ffaaa2;
  --gk-critical-bg: #48252a;
  --gk-caution: #f2c675;
  --gk-caution-bg: #3b3020;
  --gk-confirmed: #7dd9a7;
  --gk-confirmed-bg: #183d32;
  --gk-unknown: #c2cbd7;
  --gk-unknown-bg: #293649;
  --gk-oil: #c3cfdc;
  --gk-water: #65bdeb;
  --gk-power: #f2c675;
  --gk-signal: #85c1ff;
  --gk-fluid: #73d5bf;
}
@media print {
  html[data-workspace-profile],
  html[data-workspace-profile][data-theme] {
    --gk-canvas: #ffffff;
    --gk-surface: #ffffff;
    --gk-surface-soft: #f4f7fb;
    --gk-sidebar: #082f59;
    --gk-text: #14283f;
    --gk-muted: #52657b;
    --gk-border: #d8e2ee;
    --gk-control-border: #74869d;
    --gk-action: #005eb8;
    --gk-on-action: #ffffff;
    --gk-link: #005eb8;
    --gk-selected: #e5f0fc;
    --gk-focus: #005eb8;
    --gk-critical: #b42318;
    --gk-critical-bg: #fff0ee;
    --gk-caution: #8a4b00;
    --gk-caution-bg: #fff4dd;
    --gk-confirmed: #146c43;
    --gk-confirmed-bg: #e9f6ef;
    --gk-unknown: #5b6575;
    --gk-unknown-bg: #edf0f4;
    --gk-oil: #243b53;
    --gk-water: #087daf;
    --gk-power: #8a4b00;
    --gk-signal: #005eb8;
    --gk-fluid: #08786b;
  }
}
/* Guardian application mappings: branding, quality and signal semantics stay distinct. */
html[data-workspace-profile]{color-scheme:light;--bg:var(--gk-canvas);--panel:var(--gk-surface);--panel2:var(--gk-surface-soft);--text:var(--gk-text);--muted:var(--gk-muted);--line:var(--gk-border);--accent:var(--gk-action);--blue:var(--gk-link);--amber:var(--gk-caution);--red:var(--gk-critical);--gk-measurement:var(--gk-action);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif;font-size:15px}
html[data-theme=dark]{color-scheme:dark}
body{font-variant-numeric:tabular-nums}
html[data-workspace-profile] button{min-height:44px;border-color:var(--gk-control-border);font-size:14px;line-height:1.4}
html[data-workspace-profile] button:hover{background:var(--gk-selected);border-color:var(--gk-action)}
html[data-workspace-profile] button.primary{background:var(--gk-action);color:var(--gk-on-action);border-color:var(--gk-action)}
html[data-workspace-profile] button.primary:hover{filter:brightness(.94)}
html[data-workspace-profile] input,html[data-workspace-profile] select,html[data-workspace-profile] textarea{background:var(--gk-surface);color:var(--gk-text);border-color:var(--gk-control-border);min-height:44px;font-size:14px}
html[data-workspace-profile] label{font-size:14px;line-height:1.5}
html[data-workspace-profile] :focus-visible,.foundation .track-point:focus,.foundation .evidence-selected,.foundation .track-point.selected{outline:3px solid var(--gk-focus)!important;outline-offset:3px}
html[data-workspace-profile] .sidebar :focus-visible{outline-color:var(--gk-focus-on-dark)!important}
.foundation .sidebar{background:var(--gk-sidebar);border-color:var(--gk-sidebar);padding:28px 17px;gap:24px;color:var(--gk-sidebar-text);width:244px;overflow-y:auto}
.foundation .shell{grid-template-columns:244px minmax(0,1fr)}
.foundation .brand{padding:0;min-width:0;align-items:center}
.foundation .brand strong{font-size:20px;letter-spacing:1.8px;color:inherit}
.foundation .brand span{font-size:12px;letter-spacing:.5px;text-transform:none;line-height:1.4;color:inherit}
.foundation .brand img{width:42px;height:42px;flex-shrink:0}
.foundation .sidebar nav button{color:var(--gk-sidebar-muted);min-height:46px;border:0;font-size:14px;gap:12px}
.foundation .sidebar nav button:hover,.foundation .sidebar nav button.active{background:#174874;color:#fff}
.foundation .sidebar nav button.active{box-shadow:inset 3px 0 #fff}
.foundation .sidebar nav svg{width:20px;height:20px;flex-shrink:0}
.foundation .sidebar-foot{color:var(--gk-sidebar-muted);font-size:12px;gap:14px;padding:0}
.foundation .sidebar-foot a{color:var(--gk-sidebar-text)}
.foundation .sidebar-foot .mode-pill{border-color:var(--gk-sidebar-muted);color:var(--gk-sidebar-text);background:transparent}
.organization-lockup{display:grid;gap:3px;min-width:0;line-height:1.45;font-size:17px;font-weight:650;overflow-wrap:anywhere}
.organization-lockup span{font-size:15px;font-weight:400}
.organization-lockup bdi{unicode-bidi:isolate;overflow-wrap:anywhere}
.sidebar .organization-lockup{color:var(--gk-sidebar-text);font-size:16px}
.sidebar .organization-lockup span{color:var(--gk-sidebar-muted);font-size:14px}
.foundation .topbar{background:var(--gk-surface);padding:18px 30px;gap:16px}
.top-identity{max-width:420px;min-width:0;flex:1}
.top-identity .organization-lockup{font-size:15px}
.top-identity .organization-lockup span{font-size:13px}
.foundation .topbar .account{font-size:13px;gap:12px}
.foundation .mode-pill{font-size:12px;letter-spacing:0;text-transform:none;background:var(--gk-surface-soft);color:var(--gk-muted);border-color:var(--gk-control-border);line-height:1.4;max-width:100%;white-space:normal}
.foundation .replaybar{background:var(--gk-surface);padding:18px 30px;gap:12px}
.foundation .replaybar label{font-size:12px}
.foundation .replaybar input{font-size:13px;padding:9px;max-width:260px}
.foundation .replaybar button{font-size:13px;padding:10px 12px}
.foundation .replay-mode{font-size:12px;color:var(--gk-caution)}
.foundation .main{padding:30px;max-width:1700px}
.foundation .page-heading h1{font-weight:650;letter-spacing:-1px;font-size:clamp(29px,3vw,42px)}
.foundation .page-heading p{font-size:15px;max-width:900px}
.foundation .eyebrow{font-size:12px;letter-spacing:.7px;text-transform:none}
.foundation .panel-head h2{font-size:18px;line-height:1.45;font-weight:650}
.foundation h3{font-size:16px;line-height:1.5}
.foundation .stat-label,.foundation .stat-note{font-size:13px}
.foundation .stat-value{font-weight:650}
.foundation .card-note,.foundation .compact,.foundation .small,.foundation .login-note,.foundation .footer-note{font-size:13px;line-height:1.65}
.foundation .origin{color:var(--gk-muted);font-size:12px;letter-spacing:0;text-transform:none}
.foundation .chip{font-size:12px;border-color:var(--gk-control-border);color:var(--gk-muted)}
.foundation .list-button{padding:18px 20px;border-color:var(--gk-border)}
.foundation .list-button:hover{background:var(--gk-surface-soft)}
.foundation .list-button strong{font-size:16px;line-height:1.5}
.foundation .list-button .small{font-size:13px}
.foundation .notice{color:var(--gk-text);border-color:var(--gk-control-border);background:var(--gk-surface-soft);font-size:14px}
.foundation .notice.amber{background:var(--gk-caution-bg);border-color:var(--gk-caution);color:var(--gk-caution)}
.foundation .notice.amber strong{color:var(--gk-caution)}
.foundation .notice.error,.foundation .error-text{color:var(--gk-critical)}
.foundation .context-strip{background:var(--gk-surface-soft);border-color:var(--gk-control-border);padding:20px;margin-bottom:26px}
.foundation .indicator-row{font-size:13px;color:var(--gk-text);line-height:1.6}
.foundation .context-controls label{max-width:390px}
.foundation .selection-notice{font-size:13px}
.foundation .visual-caption strong{font-size:16px}
.foundation .visual-table{font-size:14px}
.foundation .visual-table th{color:var(--gk-text);background:var(--gk-surface-soft);font-size:12px;letter-spacing:0;text-transform:none}
.foundation .visual-table caption{color:var(--gk-text);background:var(--gk-surface-soft);font-size:14px}
.foundation .visual-table button{font-size:13px}
.foundation .well-schematic,.foundation .network-svg{background:var(--gk-surface-soft);border:1px solid var(--gk-border)}
.foundation .well-schematic text,.foundation .network-svg text{fill:var(--gk-text)}
.foundation .network-legend{font-size:14px;flex-wrap:wrap}
.foundation .chart-axis{fill:var(--gk-muted);font-size:12px}
.foundation .test-bar{background:var(--gk-unknown-bg);height:22px}
.foundation .oil-fill{background:var(--gk-oil)}
.foundation .water-fill{background:repeating-linear-gradient(135deg,transparent,transparent 7px,#ffffff40 7px,#ffffff40 9px),var(--gk-water);border-left:2px solid var(--gk-surface)}
.foundation .test-source p,.foundation .scenario-row{font-size:14px}
.foundation .status-chip{background:var(--gk-surface-soft);color:var(--gk-text);border-color:var(--gk-control-border);font-size:13px}
.foundation .status-chip.conflict{color:var(--gk-critical);background:var(--gk-critical-bg);border-color:var(--gk-critical)}
.foundation .status-chip.unknown,.foundation .status-chip.stale{color:var(--gk-unknown);background:var(--gk-unknown-bg);border-color:var(--gk-unknown)}
.foundation .missing-mark{color:var(--gk-caution)}
.foundation .track-line{background:linear-gradient(transparent 17px,var(--gk-control-border) 18px,transparent 19px)}
.foundation .track-point{background:var(--gk-surface-soft)!important;color:var(--gk-signal)!important;min-height:36px;font-size:14px}
.foundation .history-track>strong{font-size:14px}
.foundation .evidence-card button{font-size:13px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.foundation .hypothesis p,.foundation pre{font-size:13px}
.foundation .login{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.foundation .login-intro{background:var(--gk-sidebar);color:#fff;padding:7vw 6vw;gap:22px;border:0}
.foundation .login-intro .brand{margin-bottom:20px}
.foundation .login-intro .organization-lockup{font-size:clamp(22px,2.3vw,32px);font-weight:500}
.foundation .login-intro .organization-lockup span{font-size:22px;color:var(--gk-sidebar-muted)}
.foundation .login-intro .eyebrow{color:var(--gk-sidebar-muted);font-size:14px}
.foundation .login-intro h1{font-size:clamp(34px,3.1vw,48px);font-weight:600;letter-spacing:-1.7px;line-height:1.18}
.foundation .login-intro p{color:var(--gk-sidebar-muted);margin-top:0;font-size:16px}
.foundation .login-intro .mode-pill{color:#fff;border-color:var(--gk-sidebar-muted);background:transparent}
.foundation .login-intro .built-by{font-size:13px}
.foundation .login-form-area{background:var(--gk-surface);padding:50px}
.foundation .login-form{width:100%;max-width:400px;gap:22px}
.foundation .login-form h2{font-size:28px;font-weight:600}
.foundation .login-form>button{background:var(--gk-action);color:var(--gk-on-action)}
.foundation .settings-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.foundation .settings-nav button{color:var(--gk-link);background:var(--gk-surface);border:1px solid var(--gk-control-border);font-size:13px}
.settings-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;max-width:1200px}
.settings-section{scroll-margin-top:24px;min-width:0}.settings-section .grid-equal{gap:24px}
.workspace-footer{font-size:13px;color:var(--gk-muted);margin:28px 0;line-height:1.7}
html[data-workspace-profile] .modal{border-color:var(--gk-control-border);background:var(--gk-surface)}
html[data-workspace-profile] #toast{background:var(--gk-surface);color:var(--gk-text);border-color:var(--gk-control-border)}
html[data-workspace-profile] #toast.error{background:var(--gk-critical-bg);color:var(--gk-critical);border-color:var(--gk-critical)}
html[data-workspace-profile] .skip{background:var(--gk-action);color:var(--gk-on-action)}
@media(max-width:1150px){.foundation .shell{grid-template-columns:210px minmax(0,1fr)}.foundation .sidebar{width:210px;padding:24px 12px}.foundation .main{padding:24px}.foundation .topbar,.foundation .replaybar{padding:16px 24px}.foundation .brand strong{font-size:18px}.foundation .brand span{font-size:12px}}
@media(max-width:720px){.foundation .shell{display:block}.foundation .sidebar{position:sticky;top:0;width:100%;padding:6px;overflow:visible;gap:0}.foundation .sidebar>.organization-lockup{display:none}.foundation .sidebar nav{display:flex;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;gap:2px}.foundation .sidebar nav button{font-size:12px;gap:4px;min-width:76px;padding:8px 5px;min-height:58px}.foundation .sidebar nav button.active{box-shadow:inset 0 -3px #fff}.foundation .sidebar nav svg{width:19px;height:19px}.foundation .topbar{padding:14px 16px}.foundation .topbar .account{font-size:12px}.top-identity{flex-basis:100%;max-width:none}.foundation .replaybar{padding:14px 16px}.foundation .replaybar label{width:100%}.foundation .replaybar input{max-width:100%;width:100%}.foundation .main{padding:22px 16px}.foundation .context-controls{display:grid;grid-template-columns:1fr;width:100%}.foundation .context-controls label{min-width:0;width:100%;max-width:100%}.foundation .indicator-row{font-size:12px}.foundation .context-strip{padding:16px}.foundation .panel{scroll-margin-top:78px}.foundation .context-strip,.foundation .panel,.foundation .test-group{min-width:0}.foundation .table-scroll{max-width:100%}.foundation .login{display:block}.foundation .login-intro{padding:36px 24px;gap:18px}.foundation .login-intro .brand{margin-bottom:8px}.foundation .login-intro .organization-lockup{font-size:24px}.foundation .login-intro h1{font-size:34px}.foundation .login-form-area{padding:32px 24px}.foundation .settings-nav{flex-direction:column;display:flex}.foundation .settings-nav button{width:100%;min-width:0}.settings-section{scroll-margin-top:80px}.foundation .form-grid{grid-template-columns:minmax(0,1fr)}.foundation .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.foundation .stat{padding:15px}.foundation .stat-value{font-size:30px}.foundation .scenario-row{grid-template-columns:minmax(0,1fr)}.foundation .button-row>*{max-width:100%;overflow-wrap:anywhere}.foundation .visual-table td{min-width:145px}}
@media print{html[data-workspace-profile]{color-scheme:light}.foundation .sidebar,.foundation .replaybar,.foundation .account,.foundation .depth,.foundation form,.foundation button,.foundation .settings-nav{display:none!important}.foundation .shell{display:block}.foundation .content{display:block}.foundation .main,.foundation .topbar{padding:12px}.foundation .panel{break-inside:avoid}.foundation .topbar .mode-pill{display:block}.foundation .table-scroll{overflow:visible}.foundation .chart-axis{font-size:12px}body{background:#fff}.foundation .topbar{border-bottom:2px solid #005eb8}}

.mobile-brand{display:none}
@media(max-width:720px){.mobile-brand{display:block;margin-bottom:14px}.foundation .mobile-brand .brand{display:flex;color:var(--gk-text);gap:10px}.foundation .mobile-brand .brand img{width:32px;height:32px}.foundation .mobile-brand .brand strong{font-size:16px}.foundation .mobile-brand .brand span{font-size:12px}}

/* A saved present-day action never rewrites a historical replay. */
.saved-work-notice{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 26px 0;padding:14px;border:1px solid var(--gk-border);border-left:4px solid var(--gk-signal);border-radius:8px;background:var(--gk-surface);color:var(--gk-text)}
.saved-work-notice span{flex:1 1 340px}.saved-work-notice button{flex-shrink:0}
@media(max-width:600px){.saved-work-notice{margin:10px 14px 0}}

/* Existing KOC identity, with compact replay/context controls on narrow screens. */
.replay-controls{margin:0;background:var(--gk-surface);border-bottom:1px solid var(--gk-border)}
.foundation .replay-controls>summary{padding:10px 26px;font-weight:650;color:var(--gk-text);cursor:pointer}
.replay-summary{font-size:12px;font-weight:400;margin-left:10px;color:var(--gk-muted)}
.replay-controls .replaybar{border-bottom:0;padding-top:0}
.window-controls{margin:0!important;border:0!important;padding:0!important}.window-controls>div{display:flex;align-items:end;gap:8px}.window-controls>summary{font-size:12px;margin-bottom:6px}
.context-details{margin:6px 0 0!important;border:0!important;padding:0!important}.context-details>summary{font-size:12px;font-weight:600}.context-details .card-note{margin:5px 0 0}
.signal-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 6px}.signal-heading h3{margin:0}.signal-heading button{font-size:12px;flex-shrink:0}
@media(min-width:641px){.window-controls>summary{display:none}}
@media(max-width:640px){.foundation .replay-controls>summary{padding:12px 14px}.replay-summary{display:block;margin:4px 0 0 16px}.replay-controls .replaybar{padding:0 14px 12px}.context-strip{padding:12px!important}.context-controls{gap:8px!important}.context-controls>label{flex:1 1 100%!important}.window-controls{width:100%}.window-controls>div{flex-wrap:wrap}.context-details>summary{line-height:1.6}.signal-heading{align-items:start;flex-direction:column}.topbar .organization-lockup{display:block;font-size:12px;line-height:1.5;margin-top:5px}.topbar .organization-lockup span{display:inline;font-size:12px;margin-left:8px}.foundation .mobile-brand{margin-bottom:0}.foundation .topbar{gap:10px}.page-heading{margin-top:14px}.page-heading p{font-size:13px}}

/* Source review is mounted outside the Foundation shell. */
html[data-workspace-profile] .modal .button-row{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}
html[data-workspace-profile] .modal .visual-table caption,html[data-workspace-profile] .modal .visual-table th{background:var(--gk-surface-soft);color:var(--gk-text);border-color:var(--gk-border)}

/* Evidence readability: source values and exact authorized JSON stay distinct. */
.readable-evidence{min-width:0;color:var(--gk-text);overflow-wrap:anywhere}
.readable-evidence .evidence-kind{color:var(--gk-muted);font-size:13px;margin:0 0 6px}
.readable-evidence .evidence-title{font-size:24px;line-height:1.3;margin:0 0 12px}
.readable-evidence .evidence-origin{padding:10px 14px;background:var(--gk-surface-soft);border-left:3px solid var(--gk-control-border);font-weight:600}
.evidence-section{margin:22px 0;padding-top:16px;border-top:1px solid var(--gk-border)}
.evidence-section h3{font-size:17px;margin:0 0 12px}
.evidence-fields{margin:0;display:grid;gap:12px}
.evidence-fields>div{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr);gap:12px}
.evidence-fields dt{color:var(--gk-muted);font-size:13px}
.evidence-fields dd{margin:0;white-space:pre-wrap;font-size:14px;min-width:0}
.evidence-measurements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.evidence-measurements .evidence-fields>div{display:block}
.evidence-measurements dt{margin-bottom:3px}
.evidence-technical{padding:16px;border:1px solid var(--gk-control-border);border-radius:8px;margin-top:24px}
.evidence-technical summary{cursor:pointer;font-weight:600;min-height:28px}
.evidence-technical pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;font-size:12px}
@media(max-width:600px){.evidence-measurements{grid-template-columns:1fr;gap:0}.evidence-fields>div{grid-template-columns:1fr;gap:3px}.readable-evidence .evidence-title{font-size:20px}.evidence-technical{padding:12px}}
