/* The operations interface uses native controls and no external font or UI runtime. */
:root { color-scheme: light; --body-bg: #fffefa; --body-fg: #252e2b; --body-quiet-color: #59645f; --link-fg: #17665b; --hairline-color: #dedfd7; --border-color: #bfc6bb; --darkened-bg: #f4f4ed; --selected-bg: #e0eee7; --button-bg: #206a5c; --button-hover-bg: #155145; --button-fg: #fff; --error-fg: #9b302b; }
* { box-sizing: border-box; }
body { margin: 0; font-family: "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif; font-size: 15px; line-height: 1.5; color: var(--body-fg); background: #f7f7f1; }
a { color: var(--link-fg); text-underline-offset: .2em; }
a:hover { text-decoration-thickness: 2px; }
button, input, select, textarea { font: inherit; }
button, input, select, textarea, a { -webkit-tap-highlight-color: transparent; }
input, select, textarea { max-width: 100%; }
input[type="checkbox"] { accent-color: var(--link-fg); min-width: 17px; min-height: 17px; }
button, a, input, select, textarea, summary { touch-action: manipulation; }
:focus-visible { outline: 3px solid var(--link-fg); outline-offset: 3px; }
::selection { color: #153c33; background: #cee3d8; }
.app-shell { display: grid; grid-template-columns: 218px minmax(0, 1fr); min-height: 100dvh; }
.app-sidebar { background: #eeefe6; border-right: 1px solid var(--hairline-color); display: flex; flex-direction: column; padding: 30px 18px 22px; gap: 30px; }
.app-brand { display: flex; gap: 11px; align-items: center; text-decoration: none; color: var(--body-fg); padding: 0 9px; }
.app-brand-mark { display: grid; place-items: center; width: 32px; height: 34px; border-radius: 8px 8px 8px 2px; background: #206a5c; color: white; font-size: 21px; font-weight: 700; }
.app-brand strong { display: block; font-size: 18px; letter-spacing: -.4px; line-height: 1.2; }
.app-brand span span { display: block; margin-top: 3px; font-size: 11px; color: var(--body-quiet-color); }
.app-menu { display: flex; flex-direction: column; gap: 5px; }
.app-menu a { padding: 11px 12px; color: #4a5750; text-decoration: none; font-size: 14px; font-weight: 600; border-radius: 5px; }
.app-menu a:hover { background: #e4e8dc; }
.app-menu a[aria-current="page"] { background: #dce8dc; color: #1f5749; box-shadow: inset 0 0 0 1px #c4d6c4; }
.app-sidebar-footer { margin-top: auto; padding: 10px; font-size: 12px; color: var(--body-quiet-color); }
.app-sidebar-footer p { max-width: 25ch; }
.app-sidebar-footer button { color: var(--link-fg); border: 0; padding: 0; background: none; text-decoration: underline; cursor: pointer; font-size: 12px; }
.app-main { min-width: 0; }
.app-topbar { display: flex; gap: 20px; flex-wrap: wrap; justify-content: space-between; align-items: center; min-height: 76px; padding: 18px 36px; border-bottom: 1px solid var(--hairline-color); color: var(--body-quiet-color); font-size: 12px; background: #fffefa; }
.app-topbar strong { color: var(--body-fg); font-weight: 600; }
.app-topbar .manual-status { display: inline-flex; align-items: center; gap: 8px; }
.manual-status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #43816b; }
.app-content { padding: 32px 36px 48px; }
.app-messages { padding: 0; margin: 0 0 24px; list-style: none; }
.app-messages li { padding: 12px 16px; border: 1px solid #c4d6c4; border-radius: 4px; background: #e8efe3; margin: 8px 0; }
.app-messages li.error { border-color: #e7bcb2; background: #fbebe5; }
.cr-heading h1 { letter-spacing: -.6px; font-weight: 650; }
.cr-workspace { max-width: 1700px; }
.cr-editor-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 430px); gap: 32px; align-items: start; }
.cr-form { margin-top: 16px; }
.cr-form .form-field { margin: 0 0 18px; }
.cr-form label { display: block; margin: 0 0 6px; font-weight: 600; font-size: 13px; }
.cr-form input:not([type="checkbox"]), .cr-form select, .cr-form textarea { width: 100%; color: var(--body-fg); background: var(--body-bg); border: 1px solid var(--border-color); border-radius: 4px; padding: 9px 10px; }
.cr-form select[multiple] { min-height: 110px; }
.cr-form textarea { resize: vertical; }
.cr-form .helptext { display: block; color: var(--body-quiet-color); font-size: 12px; margin-top: 6px; line-height: 1.6; }
.errorlist, .errornote { color: var(--error-fg); font-size: 13px; }
.errorlist { padding-left: 20px; margin: 6px 0; }
.cr-form-aside { background: #eeefe6; padding: 20px; border-radius: 5px; }
.cr-form-aside h2 { margin-top: 0; }
.cr-back-link { display: inline-block; margin-bottom: 18px; }
.cr-grid-detail { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(280px, 1fr); gap: 36px; }
.cr-profile-facts { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 10px 18px; font-size: 14px; }
.cr-profile-facts dt { color: var(--body-quiet-color); }
.cr-profile-facts dd { margin: 0; overflow-wrap: anywhere; }
.cr-evidence { border-top: 1px solid var(--hairline-color); padding: 16px 0; }
.cr-evidence p { max-width: 72ch; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; }
.cr-contact-review { border-top: 1px solid var(--hairline-color); padding: 18px 0; }
.cr-contact-review summary { font-weight: 600; cursor: pointer; }
.login-layout { min-height: 100dvh; display: grid; place-items: center; padding: 30px; background: #eeefe6; }
.login-panel { width: min(100%, 420px); }
.login-panel .app-brand { padding: 0; margin-bottom: 34px; }
.login-panel h1 { font-size: 27px; letter-spacing: -.5px; margin-bottom: 8px; }
.login-panel .cr-form { margin-top: 26px; }
@media (max-width: 1100px) { .app-shell { grid-template-columns: 185px minmax(0, 1fr); } .app-content { padding: 24px; } .app-topbar { padding: 18px 24px; } .cr-editor-grid, .cr-grid-detail { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .app-shell { display: block; } .app-sidebar { padding: 18px; border-right: 0; border-bottom: 1px solid var(--hairline-color); gap: 16px; } .app-menu { flex-direction: row; flex-wrap: wrap; gap: 4px; } .app-menu a { padding: 8px 10px; font-size: 12px; } .app-sidebar-footer { display: none; } .app-topbar { min-height: 56px; padding: 14px 18px; } .app-content { padding: 24px 18px 36px; } .cr-heading h1 { font-size: 1.45rem; } }
@media print { .app-sidebar, .app-topbar, .cr-filters, .cr-button { display: none!important; } .app-shell { display: block; } .app-content { padding: 0; } .cr-table-wrap { overflow: visible; } }

  .cr-workspace { --cr-accent: var(--link-fg); --cr-line: var(--hairline-color); --cr-muted: var(--body-quiet-color); max-width: 1600px; }
  .cr-workspace *, .cr-workspace *::before, .cr-workspace *::after { box-sizing: border-box; }
  .cr-workspace a { text-underline-offset: .2em; }
  .cr-workspace :focus-visible { outline: 3px solid var(--cr-accent); outline-offset: 3px; }
  .cr-workspace input { caret-color: var(--cr-accent); }
  .cr-workspace ::selection { background: var(--selected-bg, #e6f3fc); color: var(--body-fg, #172b3a); }
  .cr-heading { display: flex; align-items: start; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-bottom: 20px; }
  .cr-heading h1 { margin: 0 0 6px; font-size: 1.6rem; line-height: 1.3; }
  .cr-heading p, .cr-prose { max-width: 72ch; margin: 0; color: var(--cr-muted); line-height: 1.6; }
  .cr-nav { display: flex; flex-wrap: wrap; gap: 6px 20px; padding: 0 0 14px; margin-bottom: 24px; border-bottom: 1px solid var(--cr-line); }
  .cr-nav a { padding: 6px 0; font-weight: 600; }
  .cr-nav a[aria-current="page"] { color: var(--body-fg); text-decoration: underline; text-decoration-thickness: 2px; }
  .cr-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 14px; padding: 18px; margin: 0 0 20px; background: var(--darkened-bg, #f3f6f8); border: 1px solid var(--cr-line); border-radius: 6px; }
  .cr-field { display: flex; flex-direction: column; gap: 6px; min-width: 125px; max-width: 240px; flex: 1 1 140px; }
  .cr-field.cr-wide { max-width: 360px; flex-basis: 230px; }
  .cr-field label { font-weight: 600; font-size: .84rem; }
  .cr-field input, .cr-field select { width: 100%; min-height: 36px; padding: 7px 9px; border: 1px solid var(--border-color, #b8c6d1); border-radius: 4px; background: var(--body-bg); color: var(--body-fg); }
  .cr-field .helptext { color: var(--cr-muted); font-size: .8rem; }
  .cr-errors { color: var(--error-fg, #ba2121); }
  .cr-button, .cr-workspace input[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 8px 14px; border-radius: 4px; border: 1px solid var(--border-color, #b8c6d1); color: var(--body-fg); background: var(--body-bg); text-decoration: none; font: inherit; font-weight: 600; cursor: pointer; }
  .cr-button:hover { background: var(--darkened-bg); }
  .cr-button.cr-primary, .cr-workspace input[type="submit"].cr-primary { background: var(--button-bg, #076ba6); border-color: var(--button-bg, #076ba6); color: var(--button-fg, #fff); }
  .cr-button.cr-primary:hover { background: var(--button-hover-bg, #05557f); }
  .cr-button:disabled { cursor: default; opacity: .6; }
  .cr-toolbar { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; justify-content: space-between; margin: 16px 0; }
  .cr-toolbar p { margin: 0; color: var(--cr-muted); font-size: .86rem; }
  .cr-table-wrap { width: 100%; overflow-x: auto; border: 1px solid var(--cr-line); border-radius: 4px; }
  .cr-table { width: 100%; border-collapse: collapse; font-size: .87rem; }
  .cr-table caption { text-align: left; padding: 14px; font-weight: 600; background: var(--darkened-bg); }
  .cr-table th { white-space: nowrap; font-size: .8rem; text-align: left; padding: 12px; background: var(--darkened-bg); color: var(--body-fg); }
  .cr-table td { padding: 12px; border-top: 1px solid var(--cr-line); vertical-align: top; }
  .cr-table tr:hover td { background: var(--darkened-bg); }
  .cr-table td.cr-numeric, .cr-table th.cr-numeric { text-align: right; font-variant-numeric: tabular-nums; }
  .cr-table .cr-identity { min-width: 180px; }
  .cr-table .cr-identity strong { display: block; margin-bottom: 3px; }
  .cr-muted { color: var(--cr-muted); }
  .cr-small { font-size: .8rem; }
  .cr-block { display: block; margin-top: 4px; }
  .cr-status { display: inline-block; padding: 3px 7px; font-size: .76rem; font-weight: 600; border: 1px solid var(--cr-line); border-radius: 3px; white-space: nowrap; }
  .cr-notice { padding: 14px 16px; margin: 20px 0; border: 1px solid var(--cr-line); border-radius: 4px; background: var(--darkened-bg); max-width: 90ch; }
  .cr-notice p { margin: 0; }
  .cr-pagination { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 18px; }
  .cr-pagination p { color: var(--cr-muted); font-size: .8rem; }
  .cr-empty { padding: 36px 20px; }
  .cr-empty h2 { margin-top: 0; }
  .cr-section { margin-top: 32px; }
  .cr-section h2 { margin-bottom: 10px; font-size: 1.12rem; }
  .cr-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 20px 0; padding: 0; border-top: 1px solid var(--cr-line); }
  .cr-facts div { padding: 16px 18px 16px 0; border-bottom: 1px solid var(--cr-line); }
  .cr-facts dt { color: var(--cr-muted); font-size: .8rem; }
  .cr-facts dd { margin: 6px 0 0; font-weight: 600; font-size: 1.2rem; font-variant-numeric: tabular-nums; }
  .cr-message { white-space: pre-wrap; overflow-wrap: anywhere; max-width: 80ch; font-family: inherit; line-height: 1.6; background: var(--darkened-bg); border: 1px solid var(--cr-line); padding: 16px; }
  .cr-draft { border-top: 1px solid var(--cr-line); padding: 20px 0; }
  .cr-draft summary { cursor: pointer; font-weight: 600; padding: 5px 0; }
  .cr-draft dl { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 8px 16px; }
  .cr-draft dt { color: var(--cr-muted); }
  .cr-draft dd { margin: 0; overflow-wrap: anywhere; }
  .cr-confirm { margin-top: 24px; padding: 20px; background: var(--darkened-bg); border: 1px solid var(--cr-line); border-radius: 4px; max-width: 95ch; }
  .cr-confirm label { display: flex; gap: 10px; align-items: start; line-height: 1.6; }
  .cr-confirm input[type="checkbox"] { margin-top: 5px; flex: none; }
  .cr-confirm .cr-toolbar { justify-content: start; margin-bottom: 0; }
  .cr-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
  @media (max-width: 760px) { .cr-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cr-filters { padding: 12px; gap: 12px; } .cr-field, .cr-field.cr-wide { max-width: none; } .cr-table th, .cr-table td { padding: 10px; } .cr-draft dl { grid-template-columns: 1fr; gap: 3px; } .cr-draft dd { margin-bottom: 8px; } }
  @media (prefers-reduced-motion: reduce) { .cr-workspace *, .cr-workspace *::before, .cr-workspace *::after { scroll-behavior: auto; } }

.cr-search-row { display: flex; gap: 14px; align-items: end; flex-wrap: wrap; margin-bottom: 12px; }
.cr-search-row .cr-field { max-width: 500px; flex: 1; }
.cr-filter-disclosure { margin-bottom: 22px; }
.cr-filter-disclosure > summary { display: inline-flex; align-items: center; min-height: 44px; cursor: pointer; color: var(--link-fg); font-weight: 600; font-size: 13px; text-decoration: underline; text-underline-offset: .2em; }
.cr-filter-disclosure > .cr-filters { margin-top: 8px; }
.cr-selection-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 14px 16px; border: 1px solid var(--hairline-color); border-top: 0; background: #eeefe6; position: sticky; bottom: 0; z-index: 2; }
.cr-selection-actions input[type="number"], .cr-selection-actions select { width: 140px; padding: 9px; border: 1px solid var(--border-color); border-radius: 4px; }
.cr-action-buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.cr-button, .cr-workspace input[type="submit"], .cr-field input, .cr-field select { min-height: 44px; }
.cr-form .form-field > div:has(input[type="checkbox"]) label { display: flex; align-items: start; gap: 9px; font-weight: 400; min-height: 44px; }
.cr-form .form-field > div:has(input[type="checkbox"]) input { margin-top: 4px; flex: none; }
.cr-table summary { min-height: 38px; cursor: pointer; padding: 8px 0; color: var(--link-fg); }
.cr-table input[type="checkbox"] { margin: 10px; }
@media (max-width: 760px) {
  .cr-workspace input:not([type="checkbox"]), .cr-workspace select, .cr-workspace textarea { font-size: 16px; }
  .cr-search-row { align-items: stretch; } .cr-search-row .cr-field { flex-basis: 100%; }
  .cr-table-wrap { overflow: visible; border: 0; }
  .cr-table, .cr-table tbody { display: block; }
  .cr-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .cr-table tr { display: block; padding: 14px 0; border-top: 1px solid var(--hairline-color); }
  .cr-table td { display: grid; grid-template-columns: 105px minmax(0, 1fr); padding: 7px 0; border: 0; overflow-wrap: anywhere; font-size: 13px; }
  .cr-table td::before { content: attr(data-label); font-size: 11px; color: var(--body-quiet-color); font-weight: 600; padding-top: 3px; }
  .cr-table td.cr-numeric { text-align: left; }
  .cr-table td.cr-identity { display: block; font-size: 15px; }
  .cr-table td.cr-identity::before { display: none; }
  .cr-table td.cr-identity strong { font-size: 16px; }
  .cr-table td[colspan] { display: block; }
  .cr-table tr:hover td { background: transparent; }
  .cr-table td.cr-select-cell { float: right; padding: 0; display: block; }
  .cr-table td.cr-select-cell::before { display: none; }
  .cr-selection-actions { position: sticky; bottom: 0; padding: 12px; margin: 0 -8px; border-top: 1px solid var(--hairline-color); border-radius: 4px; }
  .cr-selection-actions .cr-action-buttons { width: 100%; } .cr-selection-actions .cr-button { flex: 1; }
  .cr-selection-actions p { display: none; }
  .cr-profile-facts { grid-template-columns: 105px minmax(0, 1fr); }
  .cr-facts dd { font-size: 1.15rem; }
}

.cr-bar-chart { margin: 22px 0; max-width: 900px; }
.cr-bar-row { display: grid; grid-template-columns: minmax(110px, 200px) minmax(0, 1fr) 50px; align-items: center; gap: 18px; margin: 14px 0; font-size: 13px; }
.cr-bar-track { height: 14px; background: #e5e9de; border-radius: 2px; overflow: hidden; }
.cr-bar-fill { height: 100%; background: #367b67; }
.cr-bar-row strong { text-align: right; font-variant-numeric: tabular-nums; }
.cr-cost-form { max-width: 500px; }
.cr-section details > summary { min-height: 44px; padding: 10px 0; cursor: pointer; font-weight: 600; color: var(--link-fg); }
@media (max-width: 760px) { .cr-table td { display: block; font-size: 15px; } .cr-table td::before { display: block; margin-bottom: 3px; } .cr-table td.cr-select-cell { display: block; } .cr-bar-row { grid-template-columns: minmax(80px, 110px) minmax(0, 1fr) 35px; gap: 12px; } }

.cr-skip-link { position: fixed; top: 12px; left: 12px; z-index: 100; padding: 12px 16px; color: var(--link-fg); background: var(--body-bg); border: 2px solid var(--link-fg); border-radius: 4px; transform: translateY(-180%); font-weight: 600; }
.cr-skip-link:focus { transform: none; }
.login-panel .cr-form input:not([type="checkbox"]), .login-panel .cr-form select, .login-panel .cr-form textarea { font-size: 16px; min-height: 44px; }
.cr-topic-options { max-height: 280px; overflow-y: auto; padding: 8px 10px; border: 1px solid var(--border-color); border-radius: 4px; background: var(--body-bg); }
.cr-topic-options label { display: flex; align-items: start; gap: 9px; font-weight: 400; min-height: 44px; }
.cr-topic-options input[type="checkbox"] { margin-top: 4px; flex: none; }
.cr-worker-runs { margin-top: 0; margin-bottom: 28px; }
