:root {
  font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  color: #18201d;
  background: #f4f6f5;
  font-synthesis: none;
  --ink: #18201d;
  --muted: #66706c;
  --line: #d9dfdc;
  --soft: #eef2f0;
  --surface: #ffffff;
  --green: #146b45;
  --green-soft: #e8f3ed;
  --blue: #2f61a8;
  --danger: #a13d35;
  --shell-canvas: #f6f7f9;
  --shell-border: #e2e5ea;
  --shell-sidebar: #111827;
  --shell-sidebar-border: #263244;
  --shell-accent: #4f46e5;
  --sidebar-width: 240px;
}

.login-page { min-width: 320px; min-height: 100vh; margin: 0; background: #f3f5f4; color: var(--ink); }
.login-shell { min-height: 100vh; display: grid; place-items: center; padding: 32px 20px; box-sizing: border-box; }
.login-panel { width: min(100%, 400px); border: 1px solid #cfd6d2; border-radius: 6px; background: var(--surface); box-shadow: 0 18px 48px rgb(27 43 35 / 10%); }
.login-heading { display: flex; align-items: center; gap: 14px; padding: 26px 28px 22px; border-bottom: 1px solid var(--line); }
.login-brand-mark { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 42px; border-radius: 5px; background: var(--green); color: #fff; font-size: 13px; font-weight: 800; }
.login-heading > div > span { display: block; color: var(--green); font-size: 10px; font-weight: 750; }
.login-heading h1 { margin: 4px 0 0; font-size: 21px; line-height: 1.3; letter-spacing: 0; }
.login-form { display: grid; padding: 24px 28px 28px; }
.login-form label { margin: 0 0 7px; color: #3e4a44; font-size: 11px; font-weight: 700; }
.login-form input:not([type="hidden"]) { width: 100%; min-height: 44px; box-sizing: border-box; margin: 0 0 18px; border: 1px solid #bcc7c1; border-radius: 4px; padding: 0 12px; background: #fff; color: var(--ink); font-family: inherit; font-size: 14px; line-height: 1.4; }
.login-form input:not([type="hidden"]):focus-visible { outline: 2px solid #34765a; outline-offset: 2px; border-color: var(--green); }
.login-error { margin: 0 0 18px; border-left: 3px solid var(--danger); padding: 9px 11px; background: #fff5f3; color: #81473d; font-size: 11px; line-height: 1.5; }
.login-submit { min-height: 44px; margin-top: 4px; border: 1px solid var(--green); border-radius: 4px; background: var(--green); color: #fff; font-family: inherit; font-size: 12px; font-weight: 700; line-height: 1; cursor: pointer; }
.login-submit:hover { background: #164d32; }
.login-submit:focus-visible { outline: 2px solid #34765a; outline-offset: 2px; }
.login-submit[aria-disabled="true"] { cursor: wait; opacity: .72; }
.login-panel > footer { border-top: 1px solid var(--line); padding: 14px 28px 16px; color: var(--muted); font-size: 10px; }
.topbar-actions { display: flex; align-items: center; justify-content: flex-end; gap: 16px; }
.topbar-actions form { margin: 0; }
.logout-button { min-height: 34px; border: 1px solid #c8d0cc; border-radius: 4px; padding: 0 11px; background: transparent; color: #53605a; font-family: inherit; font-size: 10px; font-weight: 650; line-height: 1; cursor: pointer; }
.logout-button:hover { border-color: #9eaaa4; background: #f5f7f6; color: var(--ink); }
.logout-button:focus-visible { outline: 2px solid #34765a; outline-offset: 2px; }

* { box-sizing: border-box; }
[hidden] { display: none !important; }
body { margin: 0; min-width: 320px; background: var(--shell-canvas); }
button, input { font: inherit; }
button, label { -webkit-tap-highlight-color: transparent; }
code { font-family: "SFMono-Regular", Consolas, monospace; letter-spacing: 0; }
a { color: inherit; }

.workspace-shell { min-height: 100vh; }
.sidebar { position: fixed; z-index: 10; inset: 0 auto 0 0; width: var(--sidebar-width); display: flex; flex-direction: column; border-right: 1px solid var(--shell-sidebar-border); background: var(--shell-sidebar); color: #cbd5e1; }
.brand { display: flex; align-items: center; gap: 11px; min-height: 56px; padding: 0 16px; border-bottom: 1px solid var(--shell-sidebar-border); color: #fff; text-decoration: none; }
.brand-mark { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 5px; background: var(--shell-accent); color: #fff; font-size: 10px; font-weight: 750; }
.brand strong { font-size: 14px; letter-spacing: 0; }
.main-nav { display: flex; flex: 1; flex-direction: column; gap: 18px; overflow-y: auto; padding: 15px 8px 18px; scrollbar-color: #334155 transparent; scrollbar-width: thin; }
.nav-section { display: grid; gap: 3px; }
.governance-nav { margin-top: 0; }
.nav-section-label { padding: 0 10px 6px; color: #748197; font-size: 10px; font-weight: 700; }
.nav-item { display: flex; align-items: center; min-height: 36px; padding: 0 10px; border-radius: 5px; color: #cbd5e1; font-size: 13px; font-weight: 600; text-decoration: none; }
.nav-item:hover { background: #1e293b; color: #fff; }
.nav-item.is-active { background: var(--shell-accent); color: #fff; }
.workspace-main { min-width: 0; min-height: 100vh; margin-left: var(--sidebar-width); }

.app-shell { width: min(1440px, calc(100% - 48px)); margin: 0 auto; padding: 24px 0 96px; }
.topbar { position: sticky; z-index: 9; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 56px; border-bottom: 1px solid var(--shell-border); padding: 0 24px; background: #fff; }
.topbar > div:first-child { display: flex; min-width: 0; align-items: baseline; gap: 10px; }
.page-section { display: block; color: #7b8491; font-size: 10px; font-weight: 700; white-space: nowrap; }
.topbar h1 { margin: 0; overflow: hidden; color: var(--ink); font-size: 15px; line-height: 1.2; letter-spacing: 0; text-overflow: ellipsis; white-space: nowrap; }
.sync-time { color: var(--muted); font-size: 11px; }

.unconnected-view { display: grid; justify-items: start; min-height: 280px; margin-top: 34px; padding: 34px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); }
.unconnected-view > span { color: var(--green); font-size: 11px; font-weight: 700; }
.unconnected-view > strong { margin-top: 12px; color: var(--ink); font-size: 19px; }
.unconnected-view > p { margin: 8px 0 0; color: var(--muted); font-size: 13px; }

.overview-view { padding: 28px 0 70px; }
.eyebrow { color: var(--green); font-size: 10px; font-weight: 700; }
.overview-controls { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; padding: 18px 0 14px; }
.overview-periods { display: flex; gap: 4px; }
.overview-periods button { min-height: 34px; border: 1px solid #c5cfca; border-radius: 4px; padding: 0 12px; background: var(--surface); color: #53605a; font-size: 11px; cursor: pointer; }
.overview-periods button:hover { border-color: #8fa99a; color: var(--green); }
.overview-periods button[aria-pressed="true"] { border-color: var(--green); background: var(--green-soft); color: var(--green); font-weight: 700; }
.overview-platform-filter { display: grid; grid-template-columns: auto 145px; align-items: center; gap: 9px; color: var(--muted); font-size: 10px; font-weight: 700; }
.overview-platform-filter select { min-height: 34px; border: 1px solid #bfc9c4; border-radius: 4px; padding: 0 28px 0 10px; background: var(--surface); color: var(--ink); font-size: 11px; cursor: pointer; }
.overview-platform-filter select:focus-visible, .overview-periods button:focus-visible { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.overview-metrics-section { border-top: 2px solid #9eaaa4; background: var(--surface); }
.overview-metrics-section > header, .overview-context-section > header { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 16px 18px 13px; border-bottom: 1px solid var(--line); }
.overview-metrics-section h3, .overview-context-section h3 { margin: 0; color: var(--ink); font-size: 14px; }
.overview-metrics-section header span, .overview-context-section header span { color: var(--muted); font-size: 10px; }
.overview-metrics-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.overview-metric { min-width: 0; min-height: 118px; padding: 16px 18px 17px; border-right: 1px solid #e3e8e5; }
.overview-metric:last-child { border-right: 0; }
.overview-metric-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 10px; }
.overview-metric-label b { color: #6c7b72; font-size: 9px; font-weight: 600; }
.overview-metric > strong { display: block; margin-top: 13px; color: var(--ink); font-size: 22px; font-weight: 650; font-variant-numeric: tabular-nums; }
.overview-money { white-space: nowrap; }
.overview-no-data { padding: 30px 18px; color: var(--muted); font-size: 12px; }
.overview-context-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 20px; }
.overview-context-section { min-width: 0; border-top: 1px solid var(--line); background: var(--surface); }
.overview-freshness-list { padding: 0 18px; }
.overview-freshness-row { display: grid; grid-template-columns: minmax(90px, .5fr) minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 48px; border-bottom: 1px solid #e7ebe9; color: #3f4944; font-size: 11px; }
.overview-freshness-row:last-child { border-bottom: 0; }
.overview-freshness-row strong { color: var(--ink); font-size: 11px; }
.overview-freshness-row span { color: var(--muted); font-size: 10px; }
.overview-freshness-row b, .overview-coverage-status b { border-radius: 3px; padding: 4px 6px; background: #e8efeb; color: #255a42; font-size: 9px; font-weight: 700; white-space: nowrap; }
.overview-freshness-row b[data-status="stale"], .overview-coverage-status b[data-status="partial"] { background: #f3ead8; color: #75551b; }
.overview-freshness-row b[data-status="unknown"], .overview-coverage-status b[data-status="unknown"] { background: #eef0ef; color: #68736e; }
.overview-coverage { display: grid; gap: 12px; padding: 18px; }
.overview-coverage-status { display: flex; align-items: center; gap: 10px; }
.overview-coverage-status span { color: #3f4944; font-size: 12px; }
.overview-coverage > code { color: #68736e; font-size: 10px; overflow-wrap: anywhere; }
.overview-warning-list { margin: 0; padding: 0 18px 18px 34px; color: #75551b; font-size: 10px; line-height: 1.6; }
.overview-footer { display: flex; flex-wrap: wrap; gap: 14px 22px; margin-top: 16px; color: var(--muted); font-size: 10px; }
.overview-footer span:last-child { color: #86664a; }

.operating-objects-view { padding-top: 28px; }
.object-tabs { display: flex; gap: 22px; overflow-x: auto; border-bottom: 1px solid var(--line); }
.object-tabs button { position: relative; flex: 0 0 auto; min-height: 46px; border: 0; padding: 0 1px; background: transparent; color: var(--muted); font-size: 13px; font-weight: 650; cursor: pointer; }
.object-tabs button span { margin-left: 5px; color: #8a938f; font-size: 11px; font-variant-numeric: tabular-nums; }
.object-tabs button[aria-selected="true"] { color: var(--green); }
.object-tabs button[aria-selected="true"]::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: var(--green); }
.object-workspace { display: grid; grid-template-columns: minmax(500px, 1.08fr) minmax(380px, .92fr); min-height: 560px; border: 1px solid var(--line); border-top: 0; background: var(--surface); }
.object-list { min-width: 0; border-right: 1px solid var(--line); }
.object-table-wrap { overflow-x: auto; }
.object-table { width: 100%; min-width: 500px; border-collapse: collapse; table-layout: fixed; background: var(--surface); }
.object-table th { height: 43px; border-bottom: 1px solid var(--line); padding: 0 14px; color: #75807b; font-size: 11px; font-weight: 700; text-align: left; }
.object-table td { min-width: 0; height: 68px; border-bottom: 1px solid #e7ebe9; padding: 11px 14px; color: #3b4541; font-size: 12px; vertical-align: middle; overflow-wrap: anywhere; }
.object-table tbody tr:last-child td { border-bottom: 0; }
.object-table td strong { display: block; color: var(--ink); font-size: 13px; line-height: 1.4; }
.object-table td code { display: block; margin-top: 4px; color: #65706b; font-size: 10px; overflow-wrap: anywhere; }
.object-table td small, .object-table td > span { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; }
.object-table th:nth-child(1), .object-table td:nth-child(1) { width: 45%; }
.object-table th:nth-child(2), .object-table td:nth-child(2) { width: 22%; }
.object-table th:nth-child(3), .object-table td:nth-child(3) { width: 33%; }
.ip-table th:nth-child(1), .ip-table td:nth-child(1) { width: 55%; }
.ip-table th:nth-child(2), .ip-table td:nth-child(2) { width: 45%; }
.object-select { width: 100%; border: 0; border-radius: 4px; padding: 7px 8px; background: transparent; text-align: left; cursor: pointer; }
.object-select:hover { background: var(--soft); }
.object-select.is-selected { background: var(--green-soft); }
.object-select:focus-visible { outline: 2px solid var(--green); outline-offset: 1px; }
.object-detail { min-width: 0; padding: 22px 24px 34px; overflow-wrap: anywhere; }
.detail-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.detail-heading > div { min-width: 0; }
.detail-heading span { display: block; margin-bottom: 5px; color: var(--green); font-size: 10px; font-weight: 700; }
.detail-heading h2 { font-size: 17px; line-height: 1.4; overflow-wrap: anywhere; }
.detail-heading > code { flex: 0 0 auto; color: var(--muted); font-size: 10px; }
.detail-section { padding-top: 22px; }
.detail-section + .detail-section { margin-top: 22px; border-top: 1px solid var(--line); }
.detail-section h3 { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 13px; color: var(--ink); font-size: 13px; }
.detail-section h3 > span { color: var(--muted); font-size: 11px; font-weight: 500; }
.detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; border-top: 1px solid #e7ebe9; }
.detail-grid > div { min-width: 0; padding: 10px 12px 10px 0; border-bottom: 1px solid #e7ebe9; }
.detail-grid > div:nth-child(even) { padding-left: 12px; border-left: 1px solid #e7ebe9; }
.detail-grid dt { color: #77817d; font: 600 10px/1.45 "SFMono-Regular", Consolas, monospace; overflow-wrap: anywhere; }
.detail-grid dd { min-width: 0; margin: 5px 0 0; color: #35403b; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.detail-grid dd code { color: #44504b; font-size: 10px; }
.detail-description { margin: 14px 0 0; color: #3b4541; font-size: 12px; line-height: 1.75; }
.detail-subsection { margin-top: 16px; }
.detail-subsection h4 { margin: 0 0 9px; color: #77817d; font: 600 10px/1.45 "SFMono-Regular", Consolas, monospace; }
.detail-list { display: grid; gap: 7px; margin: 0; padding-left: 18px; color: #3b4541; font-size: 12px; line-height: 1.55; }
.data-missing { color: #9a5b43; font-size: 11px; }
.money-value { color: var(--ink); font-size: 13px; font-weight: 650; font-variant-numeric: tabular-nums; }
.asset-id-list { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.asset-id-list li { padding: 8px 10px; border-left: 2px solid #b6c4bd; background: #f7f9f8; }
.asset-id-list code { color: #44504b; font-size: 10px; overflow-wrap: anywhere; }
.sku-mapping-list { border-top: 1px solid #e7ebe9; }
.sku-mapping-row { display: grid; gap: 5px; padding: 10px 0; border-bottom: 1px solid #e7ebe9; }
.sku-mapping-row strong { color: var(--ink); font-size: 12px; font-weight: 600; line-height: 1.5; }
.sku-mapping-row code { color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.voice-row + .voice-row { margin-top: 18px; }
.asset-row { display: grid; grid-template-columns: minmax(160px, .42fr) minmax(0, .58fr); border-top: 1px solid #e7ebe9; }
.asset-row + .asset-row { margin-top: 4px; }
.asset-row > div { min-width: 0; padding: 12px 14px 12px 0; }
.asset-preview { display: block; width: min(100%, 240px); max-height: 180px; margin: 0 0 10px; border: 1px solid #dfe6e2; object-fit: contain; background: #f7f9f8; }
.asset-row strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.5; }
.asset-row > div code { display: block; margin-top: 5px; color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.asset-row > dl { min-width: 0; margin: 0; padding: 7px 0 7px 14px; border-left: 1px solid #e7ebe9; }
.asset-row > dl > div { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 8px; padding: 4px 0; }
.asset-row dt { color: #77817d; font: 600 9px/1.45 "SFMono-Regular", Consolas, monospace; }
.asset-row dd { min-width: 0; margin: 0; color: #44504b; font-size: 10px; overflow-wrap: anywhere; }
.asset-row dd code { font-size: 9px; }
.asset-link { color: var(--green); font-size: 10px; font-weight: 650; text-decoration: none; }
.asset-link:hover { text-decoration: underline; }
.preference-json { margin: 0; padding: 12px; border: 1px solid #e3e8e5; background: #f7f9f8; color: #44504b; font: 10px/1.6 "SFMono-Regular", Consolas, monospace; overflow-x: auto; }
.detail-loading { display: grid; place-items: center; min-height: 280px; color: var(--muted); font-size: 12px; }
.detail-error { display: grid; gap: 7px; padding: 18px; border: 1px solid #e1c9c5; border-radius: 5px; background: #fbf5f4; color: var(--danger); font-size: 12px; }
.source-error { display: grid; gap: 7px; padding: 28px 18px; color: var(--muted); font-size: 13px; }
.source-error strong { color: var(--ink); }
.table-empty { height: 120px !important; color: var(--muted) !important; text-align: center; }

.platform-resources-view { padding-top: 28px; }
.platform-resource-header { display: flex; align-items: end; justify-content: space-between; gap: 16px; }
.platform-resource-header .platform-tabs { flex: 1 1 auto; }
.platform-resource-header > .button { flex: 0 0 auto; min-height: 36px; }
.platform-tabs { display: flex; min-height: 48px; border-bottom: 1px solid var(--line); }
.platform-tabs button { position: relative; min-width: 112px; border: 0; padding: 0 18px; background: transparent; color: var(--muted); font-size: 13px; font-weight: 700; text-align: left; }
.platform-tabs button[aria-selected="true"] { color: var(--green); }
.platform-tabs button[aria-selected="true"]::after { content: ""; position: absolute; right: 18px; bottom: -1px; left: 18px; height: 2px; background: var(--green); }
.platform-inventory-summary { display: grid; grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr); border-top: 2px solid #9eaaa4; border-bottom: 1px solid var(--line); background: var(--surface); }
.platform-source-identity { min-width: 0; padding: 20px 24px 18px 0; border-right: 1px solid var(--line); }
.platform-source-identity > span, .platform-shop-heading span, .platform-advertiser-identity > span, .platform-aweme-identity span { display: block; margin-bottom: 5px; color: var(--green); font-size: 10px; font-weight: 700; }
.platform-source-identity > strong { display: block; color: var(--ink); font-size: 19px; }
.platform-source-identity > small { display: block; margin-top: 11px; color: #45504b; font-size: 12px; }
.platform-source-identity code, .platform-snapshot-meta code { display: block; margin-top: 4px; color: #69736e; font-size: 9px; overflow-wrap: anywhere; }
.platform-counts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); min-width: 0; margin: 0; }
.platform-counts > div { display: grid; align-content: center; min-width: 0; padding: 18px; border-right: 1px solid #e3e8e5; }
.platform-counts > div:last-child { border-right: 0; }
.platform-counts dt { color: var(--muted); font-size: 11px; }
.platform-counts dd { margin: 7px 0 0; color: var(--ink); font-size: 22px; font-weight: 650; font-variant-numeric: tabular-nums; }
.platform-snapshot-meta { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 10px 24px; padding: 10px 0; border-top: 1px solid #e3e8e5; color: var(--muted); font-size: 10px; }
.platform-snapshot-meta span { display: inline-flex; align-items: baseline; gap: 6px; min-width: 0; }
.platform-snapshot-meta code { display: inline; margin: 0; }
.platform-source-warning { display: flex; align-items: baseline; gap: 16px; margin-top: 14px; padding: 11px 13px; border-left: 3px solid var(--danger); background: #fbf5f4; color: #755044; font-size: 12px; }
.platform-source-warning strong { color: var(--danger); }
.platform-resource-tabs { margin-top: 24px; }
.platform-resource-content { overflow-x: auto; border: 1px solid var(--line); border-top: 0; background: var(--surface); }
.resource-table { width: 100%; min-width: 720px; border-collapse: collapse; table-layout: fixed; }
.resource-table th { height: 42px; padding: 0 16px; border-bottom: 1px solid var(--line); color: #75807b; font-size: 11px; text-align: left; }
.resource-table td { min-width: 0; height: 72px; padding: 12px 16px; border-bottom: 1px solid #e7ebe9; color: #3b4541; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; vertical-align: middle; }
.resource-table tbody tr:last-child td { border-bottom: 0; }
.resource-table td code { color: #5d6863; font-size: 10px; }
.resource-table td small { color: var(--muted); font-size: 10px; }
.resource-identity { display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 12px; }
.resource-identity strong { min-width: 0; color: var(--ink); font-size: 13px; overflow-wrap: anywhere; }
.platform-shop-band + .platform-shop-band { border-top: 8px solid var(--soft); }
.platform-shop-heading { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 13px; min-height: 74px; padding: 12px 18px; border-bottom: 1px solid var(--line); background: #f7f9f8; }
.shop-avatar, .platform-avatar, .aweme-avatar { width: 38px; height: 38px; border: 1px solid #d8dfdb; border-radius: 4px; object-fit: cover; background: #eef2f0; color: #69736e; }
.shop-avatar.is-empty, .platform-avatar.is-empty, .aweme-avatar.is-empty { display: grid; place-items: center; font-size: 13px; font-weight: 700; }
.aweme-avatar { border-radius: 50%; }
.aweme-avatar.large { width: 46px; height: 46px; }
.platform-shop-heading > div { min-width: 0; }
.platform-shop-heading span { margin-bottom: 3px; }
.platform-shop-heading strong { display: block; color: var(--ink); font-size: 14px; }
.platform-shop-heading code { display: block; margin-top: 4px; color: #68736e; font-size: 10px; }
.platform-shop-heading > b { color: var(--muted); font-size: 11px; font-weight: 600; }
.platform-advertiser-row { display: grid; grid-template-columns: minmax(210px, .34fr) minmax(0, .66fr); border-bottom: 1px solid var(--line); }
.platform-advertiser-row:last-child { border-bottom: 0; }
.platform-advertiser-identity { min-width: 0; padding: 18px; border-right: 1px solid #e3e8e5; }
.platform-advertiser-identity > strong { display: block; color: var(--ink); font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.platform-advertiser-identity > code, .platform-aweme-identity code { display: block; margin-top: 5px; color: #606c66; font-size: 9px; overflow-wrap: anywhere; }
.platform-advertiser-identity > small, .platform-aweme-identity small { display: block; margin-top: 8px; color: var(--muted); font-size: 9px; }
.platform-authorization-list { min-width: 0; }
.platform-auth-row { display: grid; grid-template-columns: 38px minmax(150px, 1fr) minmax(230px, .9fr); align-items: center; gap: 12px; min-height: 78px; padding: 11px 16px; border-bottom: 1px solid #e7ebe9; }
.platform-auth-row:last-child { border-bottom: 0; }
.platform-auth-identity { min-width: 0; }
.platform-auth-identity > strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.platform-auth-identity > code { display: block; margin-top: 3px; color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.platform-auth-identity > span { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; }
.platform-auth-facts { display: grid; justify-items: start; gap: 4px; min-width: 0; color: var(--muted); font-size: 9px; }
.platform-auth-facts > div { display: flex; flex-wrap: wrap; gap: 5px; min-width: 0; }
.platform-auth-facts time { color: #56615c; overflow-wrap: anywhere; }
.platform-auth-facts i { color: #9aa39f; font-style: normal; }
.platform-status { border-radius: 3px; padding: 2px 5px; background: #edf0ee; color: #59645f; font-size: 9px; font-weight: 700; }
.platform-status.is-effective { background: #e1f0e8; color: #12603d; }
.platform-status.is-expired { background: #f2e8e5; color: #874b39; }
.cancellation-state { color: var(--danger); font-size: 9px; }
.platform-auth-empty { min-height: 74px; padding: 26px 18px; color: var(--muted); font-size: 12px; }
.platform-aweme-row { display: grid; grid-template-columns: minmax(220px, .34fr) minmax(0, .66fr); border-bottom: 1px solid var(--line); }
.platform-aweme-row:last-child { border-bottom: 0; }
.platform-aweme-identity { display: grid; grid-template-columns: 46px minmax(0, 1fr); align-content: start; gap: 13px; min-width: 0; padding: 18px; border-right: 1px solid #e3e8e5; }
.platform-aweme-identity > div { min-width: 0; }
.platform-aweme-identity strong { display: block; color: var(--ink); font-size: 13px; line-height: 1.45; }

.section-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.section-heading > div:first-child { display: flex; align-items: baseline; gap: 12px; }
.section-index { color: var(--green); font: 700 11px/1 "SFMono-Regular", monospace; }
h2 { margin: 0; font-size: 19px; letter-spacing: 0; }
.limits-section, .resources-section, .history-section { padding-top: 34px; }

.governance-status-panel { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 28px; border-top: 2px solid var(--green); border-bottom: 1px solid var(--line); padding: 20px 2px; }
.governance-status-panel.is-unpublished { border-top-color: #8c9892; }
.governance-status-panel > div { min-width: 0; }
.governance-status-panel span, .governance-edit-heading span { display: block; margin-bottom: 5px; color: var(--muted); font-size: 10px; font-weight: 700; }
.governance-status-panel strong, .governance-edit-heading strong { display: block; color: var(--ink); font-size: 18px; letter-spacing: 0; }
.governance-status-panel small { display: block; margin-top: 7px; color: var(--muted); font-size: 11px; overflow-wrap: anywhere; }
.governance-edit-heading { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-top: 28px; border-top: 2px solid var(--green); border-bottom: 1px solid var(--line); padding: 18px 2px; }
.governance-edit-heading p { max-width: 440px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; text-align: right; }
.current-limit-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); overflow: hidden; }
.current-limit-values > div { min-height: 84px; padding: 18px 22px; }
.current-limit-values > div + div { border-left: 1px solid var(--line); }
.current-limit-values dt { color: var(--muted); font-size: 11px; }
.current-limit-values dd { margin: 9px 0 0; color: var(--ink); font-size: 22px; font-weight: 700; }
.authorization-state { display: inline-flex; align-items: center; min-height: 25px; border: 1px solid #d4dad7; border-radius: 4px; padding: 0 8px; background: #f4f6f5; color: #6d7772; font-size: 10px; font-weight: 650; white-space: nowrap; }
.authorization-state.is-enabled { border-color: #b6d2c2; background: var(--green-soft); color: var(--green); }
.current-authorization-states { justify-content: flex-end; gap: 8px; }
.current-governance-aweme-row .governance-aweme-identity .authorization-state { margin-top: 13px; }
.current-product-authorization { min-height: 58px; padding: 13px 16px; border-bottom: 1px solid #e7ebe9; }
.current-product-authorization:last-child { border-bottom: 0; }
.current-product-authorization strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.45; }
.current-product-authorization code { display: block; margin-top: 4px; color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.governance-unpublished-state { margin-top: 34px; }

.limit-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--line); background: var(--surface); border-radius: 6px; overflow: hidden; }
.limit-fields > label { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 84px; padding: 20px 24px; color: #39433f; font-size: 14px; }
.limit-fields > label + label { border-left: 1px solid var(--line); }
.money-input { display: flex; align-items: baseline; gap: 6px; }
.money-input b { color: var(--muted); font-size: 16px; font-weight: 500; }
.money-input input { width: 150px; border: 0; border-bottom: 1px solid #9aa7a1; outline: none; padding: 5px 0; background: transparent; color: var(--ink); font-size: 24px; font-weight: 650; text-align: right; }
.money-input input:focus { border-bottom-color: var(--green); box-shadow: 0 1px 0 var(--green); }

.platform-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 0 14px; border-bottom: 2px solid #aeb9b4; }
.resource-kicker { display: block; margin-bottom: 4px; color: var(--muted); font-size: 11px; }
.platform-heading h3 { margin: 0; font-size: 17px; letter-spacing: 0; }
.platform-heading > span { color: var(--muted); font-size: 11px; }
.platform-heading > span code { margin-left: 5px; color: #56615c; font-size: 10px; }
.permission-group { padding: 26px 0 2px; }
.permission-group + .permission-group { margin-top: 10px; }
.permission-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; padding-bottom: 10px; border-bottom: 1px solid var(--line); }
.permission-heading h3, .permission-heading h4 { margin: 0; font-size: 14px; letter-spacing: 0; }
.permission-heading > span { color: var(--muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.permission-heading.compact { padding-bottom: 9px; }
.authorization-platform-tabs { margin-top: 2px; }
.authorization-shop-list { display: grid; gap: 34px; padding-top: 28px; }
.authorization-shop { min-width: 0; }
.authorization-shop-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding: 0 2px 13px; border-bottom: 2px solid #9eaaa4; }
.authorization-shop-heading > div { min-width: 0; }
.authorization-shop-heading > div > span { display: block; margin-bottom: 5px; color: var(--green); font-size: 10px; font-weight: 700; }
.authorization-shop-heading h3 { margin: 0; color: var(--ink); font-size: 17px; letter-spacing: 0; }
.authorization-shop-heading code { display: block; margin-top: 5px; color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.authorization-shop-heading > span { color: var(--muted); font-size: 11px; white-space: nowrap; }
.authorization-shop-permissions { padding-top: 18px; }
.authorization-shop-permissions + .authorization-shop-permissions { padding-top: 24px; }
.authorization-account-list { border: 1px solid var(--line); border-top: 0; background: var(--surface); }
.authorization-account-row { display: grid; grid-template-columns: minmax(260px, 1fr) auto; align-items: center; gap: 24px; min-height: 78px; padding: 14px 18px; border-bottom: 1px solid #e7ebe9; }
.authorization-account-row:last-child { border-bottom: 0; }
.authorization-identity { min-width: 0; }
.authorization-identity strong { display: block; color: var(--ink); font-size: 13px; line-height: 1.5; }
.authorization-identity code { display: block; margin-top: 4px; color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.authorization-identity small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; }
.authorization-switches { display: flex; align-items: center; gap: 24px; }
.permission-toggle { display: inline-grid; grid-template-columns: 34px auto; align-items: center; gap: 8px; color: #45504b; font-size: 11px; cursor: pointer; }
.permission-toggle input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.permission-switch { position: relative; width: 34px; height: 19px; border: 1px solid #aab5b0; border-radius: 10px; background: #e5e9e7; transition: background 120ms ease, border-color 120ms ease; }
.permission-switch::after { content: ""; position: absolute; top: 2px; left: 2px; width: 13px; height: 13px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgb(0 0 0 / 18%); transition: transform 120ms ease; }
.permission-toggle input:checked + .permission-switch { border-color: var(--green); background: var(--green); }
.permission-toggle input:checked + .permission-switch::after { transform: translateX(15px); }
.permission-toggle input:focus-visible + .permission-switch { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.permission-toggle b { margin: 0; color: inherit; font-size: inherit; font-weight: 650; white-space: nowrap; }
.governance-aweme-list { border-right: 1px solid var(--line); border-left: 1px solid var(--line); background: var(--surface); }
.governance-aweme-row { display: grid; grid-template-columns: minmax(210px, .32fr) minmax(0, .68fr); border-bottom: 1px solid var(--line); }
.governance-aweme-identity { min-width: 0; padding: 20px; border-right: 1px solid #e3e8e5; }
.governance-aweme-identity > span { display: block; margin-bottom: 5px; color: var(--green); font-size: 10px; font-weight: 700; }
.governance-aweme-identity strong { display: block; color: var(--ink); font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.governance-aweme-identity code { display: block; margin-top: 5px; color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.governance-aweme-identity b { display: block; margin-top: 13px; color: var(--muted); font-size: 11px; font-weight: 600; }
.governance-aweme-identity .permission-toggle { margin-top: 15px; }
.governance-aweme-identity .permission-toggle b { display: inline; margin: 0; color: #45504b; font-size: 11px; }
.governance-product-list { min-width: 0; }
.governance-product-option { position: relative; display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 72px; padding: 12px 16px; border-bottom: 1px solid #e7ebe9; cursor: pointer; }
.governance-product-option:last-child { border-bottom: 0; }
.governance-product-option:hover { background: #f7f9f8; }
.governance-product-option input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.governance-checkbox { position: relative; width: 18px; height: 18px; border: 1px solid #9aa7a1; border-radius: 3px; background: #fff; }
.governance-product-option input:checked + .governance-checkbox { border-color: var(--green); background: var(--green); }
.governance-product-option input:checked + .governance-checkbox::after { content: ""; position: absolute; top: 3px; left: 6px; width: 4px; height: 8px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); }
.governance-product-option input:focus-visible + .governance-checkbox { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.governance-product-name { min-width: 0; }
.governance-product-name strong { display: block; color: var(--ink); font-size: 13px; line-height: 1.45; overflow-wrap: anywhere; }
.governance-product-name code { display: block; margin-top: 5px; color: #65706b; font-size: 9px; overflow-wrap: anywhere; }
.governance-product-status { color: #53605a; font-size: 9px; }
.governance-product-option.is-unavailable { background: #fbf5f4; }
.formation-product-list { max-width: 760px; border: 1px solid var(--line); border-radius: 6px; overflow: hidden; }
.formation-product-list .governance-product-option:not(.formation-product-option) { grid-template-columns: minmax(0, 1fr) auto; cursor: default; }
.formation-product-list .governance-product-option:not(.formation-product-option):hover { background: transparent; }
.unavailable-badge { color: var(--danger); font-size: 10px; white-space: nowrap; }
.unavailable-authorizations { margin-top: 18px; border: 1px solid #dfc8c2; background: #fffafa; }
.unavailable-authorizations > header { display: flex; justify-content: space-between; gap: 16px; padding: 12px 14px; border-bottom: 1px solid #ead9d5; color: #755044; font-size: 11px; }
.unavailable-authorizations > header strong { color: var(--danger); }
.unavailable-authorization-row { display: grid; grid-template-columns: minmax(180px, .8fr) minmax(0, 1.2fr) auto; align-items: center; gap: 16px; padding: 13px 14px; }
.unavailable-authorization-row + .unavailable-authorization-row { border-top: 1px solid #ead9d5; }
.unavailable-authorization-row > div { min-width: 0; }
.unavailable-authorization-row strong { display: block; color: var(--ink); font-size: 12px; }
.unavailable-authorization-row code { display: block; margin-top: 4px; color: #755044; font-size: 9px; overflow-wrap: anywhere; }
.unavailable-authorization-row > span { min-width: 0; color: #755044; font-size: 11px; overflow-wrap: anywhere; }
.unavailable-authorization-row .button { min-height: 34px; padding: 0 12px; font-size: 11px; }

.relationships-view { padding-top: 28px; }
.relationship-workspace-tabs { display: flex; gap: 22px; margin-bottom: 22px; overflow-x: auto; border-bottom: 1px solid var(--line); }
.relationship-workspace-tabs a { position: relative; flex: 0 0 auto; min-height: 43px; padding: 13px 1px 11px; color: var(--muted); font-size: 12px; font-weight: 650; text-decoration: none; }
.relationship-workspace-tabs a:hover, .relationship-workspace-tabs a[aria-current="page"] { color: var(--green); }
.relationship-workspace-tabs a[aria-current="page"]::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: var(--green); }
.relationship-workspace-tabs + .relationship-back-link { margin-top: -4px; }
.relationship-productivity { display: grid; grid-template-columns: repeat(5, minmax(110px, .7fr)) minmax(190px, 1.2fr); margin-bottom: 18px; border-top: 2px solid #99a69f; border-bottom: 1px solid var(--line); background: var(--surface); }
.relationship-productivity > div { min-width: 0; padding: 14px 17px; border-right: 1px solid #e2e7e4; }
.relationship-productivity > div:last-child { border-right: 0; }
.relationship-productivity span { display: block; color: var(--muted); font-size: 9px; }
.relationship-productivity strong { display: block; margin-top: 6px; color: var(--ink); font-size: 18px; font-weight: 700; font-variant-numeric: tabular-nums; }
.relationship-productivity small { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; line-height: 1.35; }
.relationship-productivity .relationship-productivity-verification strong { font-size: 15px; }
.relationship-productivity .relationship-productivity-time strong { font-size: 12px; line-height: 1.45; }
.relationship-filter-bar { display: grid; grid-template-columns: minmax(280px, 1fr) 190px 190px; align-items: end; gap: 12px; margin-bottom: 12px; }
.relationship-search, .relationship-filter { display: grid; gap: 6px; min-width: 0; }
.relationship-search > span, .relationship-filter > span { color: var(--muted); font-size: 10px; font-weight: 700; }
.relationship-search input, .relationship-filter select { width: 100%; min-height: 38px; border: 1px solid #bfc9c4; border-radius: 4px; padding: 0 11px; background: var(--surface); color: var(--ink); font: inherit; font-size: 12px; }
.relationship-filter select { padding-right: 30px; cursor: pointer; }
.relationship-search input:focus-visible, .relationship-filter select:focus-visible { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.relationship-table-wrap { overflow-x: auto; border: 1px solid var(--line); background: var(--surface); }
.relationship-table { width: 100%; min-width: 940px; border-collapse: collapse; table-layout: fixed; }
.relationship-table th { height: 42px; padding: 0 14px; border-bottom: 1px solid #cbd3cf; background: #f2f5f3; color: #68736e; font-size: 10px; font-weight: 700; text-align: left; }
.relationship-table td { min-width: 0; min-height: 88px; padding: 15px 14px; border-bottom: 1px solid #e3e8e5; color: #3f4944; font-size: 12px; vertical-align: top; overflow-wrap: anywhere; }
.relationship-table tbody tr:last-child td { border-bottom: 0; }
.relationship-table tbody tr:hover { background: #f8faf9; }
.relationship-table th:nth-child(1), .relationship-table td:nth-child(1) { width: 39%; }
.relationship-table th:nth-child(2), .relationship-table td:nth-child(2) { width: 15%; }
.relationship-table th:nth-child(3), .relationship-table td:nth-child(3) { width: 18%; }
.relationship-table th:nth-child(4), .relationship-table td:nth-child(4) { width: 28%; }
.relationship-title-link { display: grid; gap: 8px; color: inherit; text-decoration: none; }
.relationship-title-link strong { color: var(--ink); font-size: 13px; line-height: 1.5; text-decoration: underline dotted #93b8a6; text-underline-offset: 4px; }
.relationship-title-link strong::after { content: "↗"; margin-left: 6px; color: var(--green); font-size: 11px; text-decoration: none; }
.relationship-title-link:hover strong { color: var(--green); text-decoration-color: var(--green); }
.relationship-proposition { display: -webkit-box; margin: 9px 0 0; color: #3b4641; font-size: 11px; line-height: 1.7; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.relationship-domain { display: inline-block; margin-top: 8px; color: #42514a; font-size: 10px; font-weight: 700; }
.relationship-decision-use { margin: 0; color: #29362f; font-size: 11px; line-height: 1.72; }
.assessment-level { display: inline-block; border-radius: 3px; padding: 4px 7px; background: #e8efeb; color: #255a42; font-size: 9px; font-weight: 700; line-height: 1.4; }
.assessment-level[data-level="mixed"] { background: #f3ead8; color: #75551b; }
.assessment-level[data-level="speculative"] { background: #e8edf5; color: #405b80; }
.assessment-level[data-level="weakened"], .assessment-level[data-level="rejected"] { background: #f4e4e1; color: #8b3e35; }
.assessment-level[data-level="none"] { background: #eef0ef; color: #68736e; }
.relationship-strategy-links { display: grid; gap: 7px; }
.relationship-strategy-links a { color: #315f4a; font: 10px/1.55 "SFMono-Regular", Consolas, monospace; overflow-wrap: anywhere; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.relationship-strategy-links a:hover { color: var(--green); text-decoration-color: var(--green); }
.relationship-strategy-usage { display: grid; gap: 7px; }
.relationship-strategy-usage strong { color: var(--ink); font-size: 13px; }
.relationship-strategy-usage span { color: var(--muted); font-size: 10px; }
.relationship-basis-summary { display: grid; justify-items: start; gap: 7px; }
.relationship-basis-summary > strong { color: var(--ink); font-size: 11px; }
.relationship-basis-summary small { color: var(--muted); font-size: 9px; line-height: 1.45; }
.relationship-activity { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; }
.relationship-activity div { min-width: 0; }
.relationship-activity dt { color: var(--muted); font-size: 8px; font-weight: 700; }
.relationship-activity dd { margin: 5px 0 0; color: #3e4a44; font-size: 9px; line-height: 1.45; font-variant-numeric: tabular-nums; }
.relationship-activity a { color: #315f4a; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.relationship-activity a:hover { color: var(--green); text-decoration-color: var(--green); }
.relationship-filter-empty { margin-top: 14px; }

.relationship-detail-view { padding: 24px 0 80px; }
.relationship-detail-actions { display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.relationship-back-link { display: inline-flex; align-items: center; min-height: 32px; color: #52605a; font-size: 12px; text-decoration: none; }
.relationship-back-link::before { content: "←"; margin-right: 7px; }
.relationship-back-link:hover { color: var(--green); }
.relationship-detail-heading { display: flex; gap: 20px; align-items: center; justify-content: space-between; padding: 22px 0 28px; border-bottom: 1px solid #bfc8c3; }
.relationship-detail-heading h2 { max-width: 780px; margin: 0; font-size: 27px; line-height: 1.35; }
.relationship-statement { padding: 30px 0 32px; border-bottom: 1px solid #ccd4d0; }
.relationship-statement span { display: block; margin-bottom: 10px; color: var(--green); font-size: 10px; font-weight: 700; }
.relationship-statement p { max-width: 980px; margin: 0; color: #202b26; font-size: 18px; line-height: 1.75; }
.relationship-detail-section { padding: 32px 0; border-bottom: 1px solid #ccd4d0; }
.relationship-decision-grid, .relationship-value-grid, .relationship-update-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; }
.relationship-decision-grid > div, .relationship-value-grid > div, .relationship-update-grid > div { min-width: 0; padding: 29px 30px 31px 0; }
.relationship-decision-grid > div + div, .relationship-value-grid > div + div, .relationship-update-grid > div + div { padding-right: 0; padding-left: 30px; border-left: 1px solid #d8dfdb; }
.relationship-decision-grid > div > span, .relationship-value-grid > div > span { display: block; margin-bottom: 7px; color: var(--green); font-size: 9px; font-weight: 700; }
.relationship-detail-section h2 { margin: 0 0 13px; font-size: 17px; line-height: 1.4; }
.relationship-detail-section p { margin: 0; color: #3d4842; font-size: 12px; line-height: 1.75; }
.relationship-core-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0; }
.relationship-core-grid > div { min-width: 0; padding: 27px 27px 29px; border-left: 1px solid #d8dfdb; }
.relationship-core-grid > div:first-child { padding-left: 0; border-left: 0; }
.relationship-core-grid > div:last-child { padding-right: 0; }
.relationship-core-grid > div > span { display: block; margin-bottom: 9px; color: var(--green); font-size: 9px; font-weight: 700; }
.relationship-core-grid ul { margin: 0; }
.relationship-section-heading { display: flex; align-items: baseline; gap: 12px; margin-bottom: 21px; }
.relationship-section-heading > span { color: var(--green); font-size: 10px; font-weight: 700; }
.relationship-section-heading h2 { margin: 0; }
.relationship-text-list { display: grid; gap: 7px; margin: 0; padding-left: 18px; color: #3d4842; font-size: 12px; line-height: 1.65; }
.relationship-update-quality-warning { margin-top: 18px; padding: 12px 14px; border-left: 3px solid #b47a31; background: #fbf6eb; }
.relationship-update-quality-warning h3 { margin: 0 0 8px; color: #74541f; font-size: 10px; }
.relationship-update-quality-warning .relationship-text-list { color: #665536; font-size: 10px; }
.relationship-assessment-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.relationship-assessment-grid > div { min-width: 0; padding: 19px 24px 21px 0; border-bottom: 1px solid var(--line); }
.relationship-assessment-grid > div:nth-child(even) { padding-right: 0; padding-left: 24px; border-left: 1px solid #e1e6e3; }
.relationship-assessment-grid h3, .relationship-history-grid h3 { margin: 0 0 10px; color: #68736e; font-size: 10px; font-weight: 700; }
.relationship-source-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); margin: 0 0 18px; border: 1px solid var(--line); background: #f8faf9; }
.relationship-source-summary > div { min-width: 0; padding: 12px 14px; border-right: 1px solid #e1e6e3; }
.relationship-source-summary > div:last-child { border-right: 0; }
.relationship-source-summary > div[data-source-kind="reasoning"] { background: #f4f5f4; }
.relationship-source-summary dt { color: #59665f; font-size: 10px; font-weight: 700; }
.relationship-source-summary dd { margin: 5px 0 0; color: var(--ink); font-size: 12px; }
.relationship-provenance-empty { padding: 17px 18px; border-left: 3px solid #b9874b; background: #fbf7f0; }
.relationship-provenance-empty strong { color: #775b39; font-size: 11px; }
.relationship-provenance-empty p { margin-top: 5px; color: #665d50; font-size: 10px; }
.relationship-provenance-list { border-top: 1px solid var(--line); }
.relationship-provenance-run { padding: 20px 0 22px; border-bottom: 1px solid var(--line); }
.relationship-provenance-run > header { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
.relationship-provenance-run > header div { display: flex; align-items: baseline; gap: 11px; min-width: 0; }
.relationship-provenance-run > header span { flex: 0 0 auto; color: #3f6753; font-size: 9px; font-weight: 700; }
.relationship-provenance-run > header a { color: var(--ink); font-size: 12px; font-weight: 700; line-height: 1.5; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.relationship-provenance-run > header time { flex: 0 0 auto; color: var(--muted); font-size: 9px; }
.relationship-provenance-flow { display: grid; grid-template-columns: 1.05fr 1.3fr 1fr; border-top: 1px solid #e0e5e2; border-bottom: 1px solid #e0e5e2; }
.relationship-provenance-flow section { min-width: 0; padding: 14px 16px; border-right: 1px solid #e0e5e2; }
.relationship-provenance-flow section:last-child { border-right: 0; }
.relationship-provenance-flow section > b { display: block; margin-bottom: 8px; color: #66736c; font-size: 9px; }
.relationship-provenance-flow p { margin: 0 0 8px; font-size: 10px; line-height: 1.55; }
.relationship-provenance-flow p:last-child { margin-bottom: 0; }
.relationship-provenance-flow p > span { display: block; margin-bottom: 2px; color: #315e48; font-size: 9px; font-weight: 700; }
.relationship-provenance-flow p small { display: block; margin-top: 3px; color: var(--muted); font-size: 8px; }
.relationship-evidence-list { border-top: 1px solid var(--line); }
.relationship-evidence-item { padding: 20px 0 22px; border-bottom: 1px solid var(--line); }
.relationship-evidence-item header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; margin-bottom: 12px; }
.relationship-evidence-item header span { display: inline-block; justify-self: start; border-radius: 3px; padding: 4px 7px; background: #e5f0e9; color: #255a42; font-size: 9px; font-weight: 700; }
.relationship-evidence-item[data-role="counter"] header span { background: #f4e4e1; color: #8b3e35; }
.relationship-evidence-item[data-role="context"] header span { background: #e8edf5; color: #405b80; }
.relationship-evidence-item[data-role="unlinked"] header span { background: #eef0ef; color: #68736e; }
.relationship-evidence-item header b { color: #4e5b54; font-size: 10px; }
.relationship-evidence-item time { color: var(--muted); font-size: 10px; }
.relationship-evidence-item > strong { display: block; max-width: 960px; color: var(--ink); font-size: 13px; line-height: 1.7; }
.relationship-evidence-item > p { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 12px; margin-top: 10px; }
.relationship-evidence-item > p b, .relationship-evidence-item > div > b { color: #68736e; font-size: 10px; }
.relationship-evidence-item > div { margin-top: 15px; }
.relationship-evidence-item > div > b { display: block; margin-bottom: 8px; }
.relationship-evidence-item footer { display: grid; grid-template-columns: 90px minmax(0, 1fr) auto; gap: 14px; margin-top: 15px; padding-top: 12px; border-top: 1px solid #e5e9e7; }
.relationship-evidence-item footer span { color: var(--muted); font-size: 9px; }
.relationship-evidence-item footer p, .relationship-evidence-item footer code { margin: 0; color: #59645f; font-size: 10px; overflow-wrap: anywhere; }
.relationship-strategy-groups { display: grid; gap: 24px; }
.relationship-strategy-group { border-top: 1px solid #aebbb4; }
.relationship-strategy-group > header { display: flex; align-items: center; justify-content: space-between; min-height: 43px; border-bottom: 1px solid var(--line); }
.relationship-strategy-group > header h3 { margin: 0; color: var(--ink); font-size: 13px; }
.relationship-strategy-group > header span { color: var(--muted); font-size: 10px; }
.relationship-group-empty { padding: 18px 0; color: var(--muted); font-size: 11px; }
.relationship-strategy-use { padding: 21px 0 24px; border-bottom: 1px solid var(--line); }
.relationship-strategy-use > header { display: flex; gap: 18px; align-items: center; justify-content: space-between; }
.relationship-strategy-use > header > div { display: flex; gap: 12px; align-items: baseline; min-width: 0; }
.relationship-strategy-use > header span, .relationship-strategy-compact > span { color: var(--green); font-size: 10px; font-weight: 700; }
.relationship-strategy-use > header a, .relationship-strategy-compact > a { color: var(--ink); font-size: 12px; font-weight: 700; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.relationship-strategy-use > header > strong { flex: 0 0 auto; border-radius: 3px; padding: 5px 7px; background: #eef1ef; color: #59645f; font-size: 9px; }
.relationship-strategy-use > header > strong[data-state="review"] { background: #e6efe9; color: #315e48; }
.relationship-strategy-use > header > strong[data-state="unavailable"] { background: #f4ece5; color: #855a30; }
.relationship-strategy-use-body { display: grid; grid-template-columns: minmax(320px, 1fr) minmax(390px, .9fr); gap: 34px; align-items: start; margin-top: 18px; }
.relationship-strategy-application { display: grid; align-content: start; gap: 18px; }
.relationship-strategy-use h3 { margin: 0; color: #68736e; font-size: 10px; }
.relationship-strategy-use p { margin: 0; color: #344139; font-size: 11px; line-height: 1.75; }
.relationship-strategy-application section > h3 { margin-bottom: 7px; }
.relationship-learning-targets > h3 { margin-bottom: 8px; }
.relationship-learning-targets > section > p { margin-bottom: 9px; }
.relationship-learning-targets details, .relationship-strategy-comparison details { border-top: 1px solid #e2e7e4; }
.relationship-learning-targets summary, .relationship-strategy-comparison summary { padding: 9px 0; color: #52605a; cursor: pointer; font-size: 9px; }
.relationship-learning-targets dl { margin: 0; }
.relationship-learning-targets dl > div { display: grid; grid-template-columns: 118px minmax(0, 1fr); gap: 12px; padding: 8px 0; border-bottom: 1px solid #e2e7e4; }
.relationship-learning-targets dt { color: var(--muted); font-size: 9px; }
.relationship-learning-targets dd { margin: 0; color: #3d4842; font-size: 10px; line-height: 1.6; }
.relationship-strategy-comparison > div { display: flex; flex-wrap: wrap; gap: 6px 12px; }
.relationship-strategy-comparison > div a { color: var(--green); font-size: 10px; font-weight: 700; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.relationship-strategy-comparison > p { margin-top: 8px; }
.relationship-strategy-comparison details { margin-top: 9px; }
.relationship-strategy-comparison details h4 { margin: 10px 0 7px; color: var(--muted); font-size: 9px; }
.relationship-strategy-comparison details .relationship-text-list { font-size: 10px; }
.relationship-strategy-result { min-width: 0; border: 1px solid #d4dcd8; background: #f8faf9; }
.relationship-strategy-result > header { display: flex; align-items: center; justify-content: space-between; padding: 9px 12px; border-bottom: 1px solid #dce3df; }
.relationship-strategy-result > header span, .relationship-strategy-result > header small { color: var(--muted); font-size: 9px; }
.relationship-result-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.relationship-result-metrics > div { min-width: 0; padding: 11px 12px; border-right: 1px solid #e0e6e3; }
.relationship-result-metrics > div:nth-child(4n) { border-right: 0; }
.relationship-result-metrics span { display: block; color: var(--muted); font-size: 8px; }
.relationship-result-metrics strong { display: block; margin-top: 6px; color: var(--ink); font-size: 11px; line-height: 1.4; }
.relationship-result-metrics strong .overview-money { color: inherit; font-size: inherit; }
.relationship-result-empty { display: flex; align-items: center; min-height: 72px; padding: 14px 16px; border: 1px solid #dce2df; background: #fafbfa; color: var(--muted); font-size: 11px; }
.relationship-result-empty[data-state="unavailable"] { background: #fbf8f4; color: #855a30; }
.relationship-strategy-compact-list { border-top: 1px solid var(--line); }
.relationship-strategy-compact { display: grid; grid-template-columns: 54px minmax(180px, .7fr) minmax(280px, 1.3fr) minmax(180px, .55fr); gap: 14px; align-items: center; min-height: 58px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.relationship-strategy-compact > p { margin: 0; color: #52605a; font-size: 10px; line-height: 1.55; }
.relationship-strategy-compact > div { display: grid; gap: 4px; justify-items: end; text-align: right; }
.relationship-strategy-compact > div strong { color: #59645f; font-size: 9px; }
.relationship-strategy-compact > div[data-state="review"] strong { color: #315e48; }
.relationship-strategy-compact > div[data-state="unavailable"] strong { color: #855a30; }
.relationship-strategy-compact > div small { color: var(--muted); font-size: 9px; }
.relationship-strategy-compact > div .overview-money { color: inherit; font-size: inherit; }
.relationship-detail-disclosures { border-bottom: 1px solid #ccd4d0; }
.relationship-detail-disclosure { border-top: 1px solid #ccd4d0; }
.relationship-detail-disclosure > summary { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; align-items: baseline; padding: 20px 0; color: var(--ink); cursor: pointer; list-style: none; }
.relationship-detail-disclosure > summary::-webkit-details-marker { display: none; }
.relationship-detail-disclosure > summary::before { content: ">"; grid-row: 1; color: var(--muted); font: 10px/1 "SFMono-Regular", Consolas, monospace; transform: rotate(0deg); transition: transform 120ms ease; }
.relationship-detail-disclosure[open] > summary::before { transform: rotate(90deg); }
.relationship-detail-disclosure > summary strong { grid-column: 2; font-size: 13px; }
.relationship-detail-disclosure > summary span { grid-column: 2; color: var(--muted); font-size: 10px; }
.relationship-disclosure-body { display: grid; gap: 30px; padding: 4px 0 32px 22px; }
.relationship-disclosure-body > section + section { padding-top: 27px; border-top: 1px solid var(--line); }
.relationship-disclosure-body h3 { margin: 0 0 11px; font-size: 12px; }
.relationship-disclosure-body p { margin: 0; color: #3d4842; font-size: 11px; line-height: 1.75; }
.relationship-record-metadata dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; }
.relationship-record-metadata dl > div { min-width: 0; padding-right: 18px; }
.relationship-record-metadata dt { margin-bottom: 6px; color: var(--muted); font-size: 9px; }
.relationship-record-metadata dd { margin: 0; color: #3d4842; font-size: 10px; overflow-wrap: anywhere; }
.relationship-connection-list { border-top: 1px solid var(--line); }
.relationship-connection-list article { display: grid; grid-template-columns: 70px 130px minmax(220px, .7fr) minmax(0, 1.3fr); gap: 16px; align-items: baseline; padding: 15px 0; border-bottom: 1px solid var(--line); }
.relationship-connection-list span { color: var(--muted); font-size: 9px; }
.relationship-connection-list strong { color: #33413a; font-size: 11px; }
.relationship-connection-list a { color: var(--green); font: 10px/1.55 "SFMono-Regular", Consolas, monospace; overflow-wrap: anywhere; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.relationship-connection-list p { font-size: 10px; }
.relationship-history-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px; }
.relationship-history-row { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(0, 1fr) auto; gap: 12px; align-items: baseline; padding: 11px 0; border-top: 1px solid var(--line); }
.relationship-history-row strong { color: var(--ink); font-size: 11px; }
.relationship-history-row span, .relationship-history-row time { color: var(--muted); font-size: 9px; }

.information-access-view, .maintenance-runs-view, .maintenance-run-detail-view { padding: 28px 0 70px; }
.maintenance-page-heading { display: flex; justify-content: space-between; gap: 24px; align-items: end; padding: 26px 0 20px; }
.maintenance-page-heading span { color: var(--green); font-size: 10px; font-weight: 700; }
.maintenance-page-heading h2 { margin: 5px 0 0; font-size: 22px; }
.research-direction-action { flex: 0 0 auto; }
.research-directions { margin-bottom: 22px; border: 1px solid #cbd6d0; background: #f8faf9; }
.research-directions > header { display: flex; justify-content: space-between; gap: 18px; align-items: end; padding: 14px 17px; border-bottom: 1px solid #d9e0dc; }
.research-directions > header span { color: #52675d; font-size: 9px; font-weight: 700; }
.research-directions > header h2 { margin: 4px 0 0; font-size: 15px; }
.research-directions > header > strong { color: var(--green); font-size: 11px; }
.research-direction-list article { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 30px; padding: 17px; border-bottom: 1px solid #e0e6e3; }
.research-direction-list article:last-child { border-bottom: 0; }
.research-direction-list article > div > span { color: #4e705f; font-size: 9px; font-weight: 700; }
.research-direction-list article > div > span[data-status="failed"], .research-direction-list article > div > span[data-status="rejected"] { color: var(--danger); }
.research-direction-list h3 { margin: 6px 0 7px; font-size: 13px; line-height: 1.5; }
.research-direction-list p { margin: 0; color: #4a5750; font-size: 11px; line-height: 1.65; }
.research-direction-list small { display: block; margin-top: 8px; color: var(--danger); font-size: 10px; }
.research-direction-list dl { margin: 0; }
.research-direction-list dl > div { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 10px; padding: 5px 0; }
.research-direction-list dt { color: var(--muted); font-size: 9px; }
.research-direction-list dd { margin: 0; color: #3e4b44; font-size: 10px; line-height: 1.55; overflow-wrap: anywhere; }
.research-direction-list a { color: var(--green); text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.maintenance-page-summary { border-top: 2px solid #99a69f; border-bottom: 1px solid var(--line); background: var(--surface); }
.maintenance-page-summary dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; }
.maintenance-page-summary dl > div { min-width: 0; padding: 14px 17px; border-right: 1px solid #e2e7e4; }
.maintenance-page-summary dl > div:last-child { border-right: 0; }
.maintenance-page-summary dt { color: var(--muted); font-size: 9px; }
.maintenance-page-summary dd { margin: 6px 0 0; color: var(--ink); font-size: 18px; font-weight: 700; font-variant-numeric: tabular-nums; }
.maintenance-table-wrap { margin-top: 20px; overflow-x: auto; border: 1px solid var(--line); background: var(--surface); }
.maintenance-table { width: 100%; min-width: 920px; border-collapse: collapse; table-layout: fixed; }
.maintenance-table th { height: 40px; padding: 0 14px; border-bottom: 1px solid #cbd3cf; background: #f2f5f3; color: #68736e; font-size: 9px; text-align: left; }
.maintenance-table td { min-width: 0; padding: 15px 14px; border-bottom: 1px solid #e3e8e5; color: #3f4944; font-size: 11px; line-height: 1.55; vertical-align: top; overflow-wrap: anywhere; }
.maintenance-table tbody tr:last-child td { border-bottom: 0; }
.maintenance-table tbody tr:hover { background: #f8faf9; }
.maintenance-table td > strong, .maintenance-table td > a > strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.5; }
.maintenance-table td > a { color: inherit; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.maintenance-table td > code, .maintenance-table td > a + code { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.maintenance-table td > span { display: inline-block; margin-top: 7px; color: #4c5c54; font-size: 9px; font-weight: 700; }
.maintenance-table td > p { margin: 8px 0 0; color: #52605a; font-size: 10px; }
.information-access-table th:nth-child(1), .information-access-table td:nth-child(1) { width: 28%; }
.information-access-table th:nth-child(2), .information-access-table td:nth-child(2) { width: 31%; }
.information-access-table th:nth-child(3), .information-access-table td:nth-child(3) { width: 17%; }
.information-access-table th:nth-child(4), .information-access-table td:nth-child(4) { width: 24%; }
.information-access-table .relationship-text-list { font-size: 10px; }
.access-state { border: 1px solid #b9d3c4; border-radius: 3px; padding: 3px 6px; background: #eff7f2; color: #236344 !important; }
.access-state[data-enabled="false"] { border-color: #d4cbc0; background: #f5f3ef; color: #766a5b !important; }
.information-access-table td:last-child p { display: grid; gap: 3px; }
.information-access-table td:last-child a { color: var(--green); font-size: 10px; font-weight: 700; }
.information-access-table td:last-child small { color: var(--muted); font-size: 9px; }
.maintenance-run-table th:nth-child(1), .maintenance-run-table td:nth-child(1) { width: 30%; }
.maintenance-run-table th:nth-child(2), .maintenance-run-table td:nth-child(2) { width: 27%; }
.maintenance-run-table th:nth-child(3), .maintenance-run-table td:nth-child(3) { width: 30%; }
.maintenance-run-table th:nth-child(4), .maintenance-run-table td:nth-child(4) { width: 13%; }
.run-mode { border-radius: 3px; padding: 3px 6px; background: #e7eef6; color: #3e5e7d !important; }
.run-mode[data-mode="live"] { background: #e5f1e9; color: #245e41 !important; }
.maintenance-run-table td:nth-child(2) small, .run-read-summary span { display: block; margin-top: 6px; color: var(--muted); font-size: 9px; }
.run-read-summary strong { color: var(--ink); font-size: 11px; }
.run-result { display: grid !important; grid-template-columns: 62px minmax(0, 1fr); gap: 7px; margin: 0 0 6px !important; font-size: 9px !important; font-weight: 500 !important; }
.run-result b { color: #3b694f; font-size: 9px; }
.maintenance-run-table time { color: var(--muted); font-size: 9px; }
.maintenance-run-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .35fr); gap: 44px; align-items: end; padding: 20px 0 27px; border-bottom: 1px solid #bcc7c1; }
.maintenance-run-heading > div > span { color: var(--green); font-size: 10px; font-weight: 700; }
.maintenance-run-heading h2 { max-width: 850px; margin: 8px 0 10px; color: var(--ink); font-size: 24px; line-height: 1.4; }
.maintenance-run-heading code { color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.maintenance-run-heading dl { margin: 0; }
.maintenance-run-heading dl > div { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; padding: 7px 0; border-bottom: 1px solid #e0e5e2; }
.maintenance-run-heading dt { color: var(--muted); font-size: 9px; }
.maintenance-run-heading dd { margin: 0; color: #3f4a44; font-size: 10px; }
.maintenance-detail-section { padding: 30px 0; border-bottom: 1px solid #cbd3cf; }
.maintenance-detail-section > header { display: flex; align-items: baseline; gap: 12px; margin-bottom: 18px; }
.maintenance-goal-chain, .maintenance-cycle-outcomes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.maintenance-goal-chain article, .maintenance-cycle-outcomes article { border-left: 3px solid #55756a; padding: 10px 13px; background: #f6f8f7; }
.maintenance-goal-chain span, .maintenance-cycle-outcomes span { color: var(--muted); font-size: 11px; }
.maintenance-goal-chain h3, .maintenance-cycle-outcomes h3, .maintenance-line-review h3 { margin: 5px 0 8px; font-size: 14px; }
.maintenance-goal-chain p, .maintenance-cycle-outcomes p { margin: 0 0 7px; }
.maintenance-goal-chain strong, .maintenance-cycle-outcomes strong { display: block; font-size: 12px; }
.maintenance-goal-chain .is-relationship-goal { border-left-color: #b06d2f; }
.maintenance-line-review { margin-top: 22px; }
.maintenance-line-review > article { display: grid; grid-template-columns: minmax(170px, .35fr) minmax(0, 1fr) minmax(180px, .5fr); gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.maintenance-line-review article header { display: flex; flex-direction: column; gap: 4px; }
.maintenance-line-review article span, .maintenance-line-review article small { color: var(--muted); }
.maintenance-line-review article p { margin: 0; }
.maintenance-cycle-outcomes { margin-top: 22px; }
@media (max-width: 720px) { .maintenance-goal-chain, .maintenance-cycle-outcomes { grid-template-columns: 1fr; } .maintenance-line-review > article { grid-template-columns: 1fr; gap: 6px; } }
.maintenance-detail-section > header span { color: var(--green); font-size: 9px; font-weight: 700; }
.maintenance-detail-section > header h2, .maintenance-open-questions h2 { margin: 0; color: var(--ink); font-size: 17px; }
.access-decision-list { border-top: 1px solid var(--line); }
.access-decision-list > div { display: grid; grid-template-columns: 70px minmax(180px, .6fr) minmax(0, 1.4fr); gap: 15px; align-items: baseline; padding: 13px 0; border-bottom: 1px solid var(--line); }
.access-decision-list span { color: #4c685a; font-size: 9px; font-weight: 700; }
.access-decision-list div[data-decision="not_selected"] span, .access-decision-list div[data-decision="unavailable"] span { color: #90623b; }
.access-decision-list strong { color: var(--ink); font-size: 11px; }
.access-decision-list p { margin: 0; color: #505d56; font-size: 10px; line-height: 1.6; }
.maintenance-source-read-list, .maintenance-interpretation-list, .maintenance-result-list { border-top: 1px solid var(--line); }
.maintenance-source-read, .maintenance-interpretation-list > article, .maintenance-result-list > article { padding: 19px 0 21px; border-bottom: 1px solid var(--line); }
.maintenance-source-read > header, .maintenance-result-list > article > header { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.maintenance-source-read > header div { min-width: 0; }
.maintenance-source-read > header span { display: block; margin-bottom: 5px; color: #4b6959; font-size: 9px; font-weight: 700; }
.maintenance-source-read > header strong { color: var(--ink); font-size: 12px; line-height: 1.5; }
.maintenance-source-read > header > b { flex: 0 0 auto; color: #28704b; font-size: 9px; }
.maintenance-source-read > header > b[data-status="failed"] { color: var(--danger); }
.source-read-items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 14px; background: #dfe5e2; }
.source-read-items > div { min-width: 0; padding: 12px 13px; background: #f8faf9; }
.source-read-items strong { display: block; color: #35423b; font-size: 10px; }
.source-read-items code, .source-read-items a { display: block; margin-top: 5px; color: #53635b; font-size: 9px; line-height: 1.45; overflow-wrap: anywhere; }
.source-read-items a { color: var(--green); }
.source-read-items span { display: block; margin-top: 5px; color: var(--muted); font-size: 8px; }
.source-read-limitations { margin-top: 14px; }
.source-read-limitations > b { display: block; margin-bottom: 7px; color: #7b5b38; font-size: 9px; }
.source-read-limitations .relationship-text-list { color: #665846; font-size: 10px; }
.source-read-unrecorded { margin: 13px 0 0; padding: 9px 11px; border-left: 3px solid #b9874b; background: #fbf7f0; color: #665846; font-size: 9px; line-height: 1.55; }
.maintenance-source-read > footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 9px; margin-top: 14px; padding-top: 11px; border-top: 1px solid #e5e9e7; color: var(--muted); font-size: 9px; }
.maintenance-source-read > footer code { color: #59665f; font-size: 8px; }
.maintenance-interpretation-list > article > strong { display: block; max-width: 940px; color: var(--ink); font-size: 12px; line-height: 1.65; }
.maintenance-interpretation-list > article > div { margin-top: 14px; }
.maintenance-interpretation-list > article b, .maintenance-result-evidence > b { display: block; margin-bottom: 7px; color: #66736c; font-size: 9px; }
.maintenance-interpretation-list > article p { margin: 12px 0 0; color: #535f59; font-size: 10px; line-height: 1.6; }
.maintenance-interpretation-list > article p b { display: inline; margin-right: 8px; }
.maintenance-interpretation-list > article footer { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 13px; }
.maintenance-interpretation-list > article footer code { padding: 3px 5px; background: #eef1ef; color: #59665f; font-size: 8px; }
.maintenance-result-list > article > header { justify-content: flex-start; }
.maintenance-result-list > article > header span { color: var(--green); font-size: 9px; font-weight: 700; }
.maintenance-result-list > article > header a { color: var(--ink); font-size: 12px; font-weight: 700; text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.maintenance-result-list > article > p { max-width: 980px; margin: 12px 0 0; color: #435048; font-size: 11px; line-height: 1.65; }
.maintenance-result-evidence { margin-top: 15px; }
.maintenance-result-evidence p { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 12px; margin: 0; padding: 9px 0; border-top: 1px solid #e4e8e6; color: #4b5751; font-size: 10px; }
.maintenance-result-evidence code { color: #5c6962; font-size: 8px; overflow-wrap: anywhere; }
.maintenance-open-questions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px; }
.maintenance-open-questions > div + div { padding-left: 34px; border-left: 1px solid var(--line); }
.maintenance-open-questions h2 { margin-bottom: 13px; }

.strategies-view { padding-top: 28px; }
.strategy-governance-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.strategy-governance-header p { margin: 7px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.strategy-governance-header > .button { flex: 0 0 auto; }
.strategy-process-tabs { display: flex; gap: 22px; margin-bottom: 20px; border-bottom: 1px solid var(--line); }
.strategy-process-tab { display: inline-flex; min-height: 36px; align-items: center; border-bottom: 2px solid transparent; color: var(--muted); font-size: 12px; font-weight: 700; text-decoration: none; }
.strategy-process-tab:hover, .strategy-process-tab.is-active { border-bottom-color: var(--green); color: var(--green); }
.strategy-productivity { display: grid; grid-template-columns: repeat(3, minmax(125px, 1fr)); margin-bottom: 18px; border-top: 2px solid #99a69f; border-bottom: 1px solid var(--line); background: var(--surface); }
.strategy-productivity > div { min-width: 0; padding: 13px 17px; border-right: 1px solid #e2e7e4; }
.strategy-productivity > div:last-child { border-right: 0; }
.strategy-productivity span { display: block; color: var(--muted); font-size: 9px; }
.strategy-productivity strong { display: block; margin-top: 6px; color: var(--ink); font-size: 18px; font-weight: 700; font-variant-numeric: tabular-nums; }
.strategy-filter-bar { display: flex; align-items: end; gap: 12px; margin-bottom: 16px; }
.strategy-filter { display: grid; gap: 6px; min-width: 210px; }
.strategy-filter > span { color: var(--muted); font-size: 10px; font-weight: 700; }
.strategy-filter select { min-height: 38px; border: 1px solid #bfc9c4; border-radius: 4px; padding: 0 30px 0 11px; background: var(--surface); color: var(--ink); font: inherit; font-size: 12px; cursor: pointer; }
.strategy-filter select:focus-visible { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.strategy-filter-empty { margin-top: 0; }
.strategy-lifecycle-tabs { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 17px; }
.strategy-lifecycle-tabs button { min-height: 32px; border: 1px solid #c5cfca; border-radius: 4px; padding: 0 13px; background: var(--surface); color: #53605a; font-size: 11px; font-weight: 700; cursor: pointer; }
.strategy-lifecycle-tabs button:hover, .strategy-lifecycle-tabs button[aria-selected="true"] { border-color: var(--green); background: var(--green-soft); color: var(--green); }
.strategy-lifecycle-tabs button:focus-visible { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.strategy-lifecycle-badge { display: inline-flex; min-height: 22px; align-items: center; width: fit-content; border: 1px solid #c8d1cd; border-radius: 4px; padding: 0 8px; background: #f4f6f5; color: #5d6963; font-size: 9px; font-weight: 750; }
.strategy-lifecycle-badge.is-active { border-color: #9dbdad; background: #edf7f1; color: #176b47; }
.strategy-lifecycle-badge.is-retired { border-color: #d4bd94; background: #fbf6ec; color: #7b5b38; }
.strategy-lifecycle-badge.is-superseded { border-color: #a9bfd8; background: #f0f5fa; color: #2f61a8; }
.strategy-retirement-reason { display: block; max-width: 180px; margin-top: 7px; color: #7b5b38; font-size: 10px; line-height: 1.45; overflow-wrap: anywhere; }
.strategy-table-wrap { overflow-x: auto; border: 1px solid var(--line); background: var(--surface); }
.strategy-table { width: 100%; min-width: 900px; border-collapse: collapse; table-layout: fixed; }
.strategy-table th { height: 42px; padding: 0 14px; border-bottom: 1px solid #cbd3cf; background: #f2f5f3; color: #68736e; font-size: 10px; font-weight: 700; text-align: left; }
.strategy-table td { height: 100px; padding: 14px; border-bottom: 1px solid #e3e8e5; color: #3f4944; font-size: 12px; vertical-align: top; }
.strategy-table tbody tr:last-child td { border-bottom: 0; }
.strategy-table tbody tr:hover { background: #f8faf9; }
.strategy-table th:nth-child(1), .strategy-table td:nth-child(1) { width: 240px; }
.strategy-table th:nth-child(2), .strategy-table td:nth-child(2) { width: 180px; }
.strategy-table th:nth-child(3), .strategy-table td:nth-child(3) { width: 145px; }
.strategy-table th:nth-child(4), .strategy-table td:nth-child(4) { width: 105px; }
.strategy-table th:nth-child(5), .strategy-table td:nth-child(5) { width: 110px; }
.strategy-table th:nth-child(6), .strategy-table td:nth-child(6) { width: 115px; }
.strategy-table th:nth-child(3), .strategy-table td:nth-child(3) { width: 112px; }
.strategy-table th:nth-child(4), .strategy-table td:nth-child(4) { width: 145px; }
.strategy-table th:nth-child(5), .strategy-table td:nth-child(5) { width: 105px; }
.strategy-table th:nth-child(6), .strategy-table td:nth-child(6) { width: 110px; }
.strategy-title-link, .strategy-object-link { color: inherit; text-decoration: none; cursor: pointer; }
.strategy-title-link { display: grid; gap: 8px; }
.strategy-title-link strong, .strategy-object-link strong { text-decoration: underline; text-decoration-color: #93b8a6; text-decoration-style: dotted; text-underline-offset: 4px; }
.strategy-title-link span { color: var(--muted); font-size: 10px; }
.strategy-title-link strong { color: var(--ink); font-size: 13px; line-height: 1.5; }
.strategy-title-link code, .strategy-object-link code, .strategy-channel code { color: #6b7671; font-size: 9px; overflow-wrap: anywhere; }
.strategy-title-link strong::after, .strategy-object-link strong::after { content: "↗"; margin-left: 6px; color: var(--green); font-size: 11px; text-decoration: none; }
.strategy-title-link:hover strong, .strategy-object-link:hover strong { color: var(--green); text-decoration-color: var(--green); }
.strategy-object-link { display: grid; gap: 6px; }
.strategy-object-link strong, .strategy-channel strong { color: var(--ink); font-size: 12px; line-height: 1.45; }
.strategy-channel { display: grid; gap: 6px; }
.strategy-operating-objects { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 11px; }
.strategy-compact-object { display: inline-flex; align-items: baseline; gap: 4px; min-width: 0; color: inherit; text-decoration: none; }
.strategy-compact-object > span { color: var(--muted); font-size: 9px; font-weight: 700; }
.strategy-compact-object strong { max-width: 150px; overflow: hidden; color: var(--ink); font-size: 11px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.strategy-compact-object:not(.strategy-compact-channel) strong { text-decoration: underline; text-decoration-color: #93b8a6; text-decoration-style: dotted; text-underline-offset: 3px; }
.strategy-compact-object:not(.strategy-compact-channel):hover strong { color: var(--green); text-decoration-color: var(--green); }
.strategy-money { color: var(--ink); font-size: 13px; font-variant-numeric: tabular-nums; }
.strategy-table time { color: var(--muted); font-size: 11px; line-height: 1.5; }
.strategy-verification { display: flex; flex-wrap: wrap; gap: 5px 8px; }
.strategy-verification span { font-size: 10px; font-weight: 700; white-space: nowrap; }
.strategy-verification .is-test { color: var(--green); }
.strategy-verification .is-challenge { color: #89602d; }
.strategy-verification .is-adopt { color: var(--muted); }
.strategy-verification .is-context { color: #8b9690; }
.strategy-count { color: var(--ink); font-size: 13px; font-variant-numeric: tabular-nums; }
.formation-runs-toolbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.formation-runs-toolbar .strategy-process-tabs { flex: 1; margin-bottom: 0; }
.formation-runs-toolbar > .button { flex: 0 0 auto; min-height: 36px; }
.formation-run-table-wrap { overflow-x: auto; border: 1px solid var(--line); background: var(--surface); }
.formation-run-table { width: 100%; min-width: 900px; border-collapse: collapse; table-layout: fixed; }
.formation-run-table th { height: 42px; padding: 0 14px; border-bottom: 1px solid #cbd3cf; background: #f2f5f3; color: #68736e; font-size: 10px; font-weight: 700; text-align: left; }
.formation-run-table td { min-width: 0; height: 92px; padding: 14px; border-bottom: 1px solid #e3e8e5; color: #3f4944; font-size: 12px; vertical-align: top; overflow-wrap: anywhere; }
.formation-run-table tbody tr:last-child td { border-bottom: 0; }
.formation-run-table tbody tr:hover { background: #f8faf9; }
.formation-run-table th:nth-child(1), .formation-run-table td:nth-child(1) { width: 150px; }
.formation-run-table th:nth-child(2), .formation-run-table td:nth-child(2) { width: 280px; }
.formation-run-table th:nth-child(3), .formation-run-table td:nth-child(3) { width: 150px; }
.formation-run-table th:nth-child(4), .formation-run-table td:nth-child(4) { width: 110px; }
.formation-run-table th:nth-child(5), .formation-run-table td:nth-child(5) { width: 280px; }
.formation-run-table td:nth-child(1) { display: grid; align-content: start; gap: 6px; }
.formation-run-table td:nth-child(1) time { color: var(--ink); font-size: 11px; }
.formation-run-table td:nth-child(1) small { color: var(--muted); font-size: 9px; }
.formation-trigger-badge, .formation-status { display: inline-flex; min-height: 23px; align-items: center; width: fit-content; padding: 0 8px; border: 1px solid #c7d0cc; border-radius: 4px; background: #f3f6f4; color: #5c6862; font-size: 9px; font-weight: 750; }
.formation-trigger-badge.is-human { border-color: #9dbdad; background: #edf7f1; color: #176b47; }
.formation-trigger-badge.is-system { border-color: #a9bfd8; background: #f0f5fa; color: #2f61a8; }
.formation-trigger-badge.is-history { border-color: #d4bd94; background: #fbf6ec; color: #7b5b38; }
.formation-trigger-badge.is-recorded { max-width: 250px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.formation-triggered-by { display: block; margin-top: 8px; color: var(--muted); font-size: 10px; }
.formation-status.is-running { border-color: #a9bfd8; background: #f0f5fa; color: #2f61a8; }
.formation-status.is-formed { border-color: #9dbdad; background: #edf7f1; color: #176b47; }
.formation-result-pending { color: #6d7772; font-size: 11px; }
.formation-result-failed { color: #a24a3b; font-size: 11px; font-weight: 700; }
.formation-detail-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-top: 1px solid var(--line); }
.formation-detail-facts > div { min-width: 0; padding: 16px 18px 16px 0; border-bottom: 1px solid #e0e5e2; }
.formation-detail-facts > div + div { padding-left: 18px; border-left: 1px solid #e0e5e2; }
.formation-detail-facts dt { color: var(--muted); font-size: 10px; }
.formation-detail-facts dd { margin: 7px 0 0; color: #3e4843; font-size: 12px; overflow-wrap: anywhere; }
.formation-run-process-summary { margin-top: 0; }
.formation-detail-origin { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
.formation-final-result { min-height: 58px; padding: 18px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.formation-history-notice { margin-top: 18px; padding: 14px 16px; border-left: 3px solid #c89b45; background: #fffaf0; color: #645238; }
.formation-history-notice strong { display: block; color: #7d5e25; font-size: 11px; }
.formation-history-notice p { margin: 6px 0 0; font-size: 11px; line-height: 1.6; }
.formation-pagination { display: flex; align-items: center; justify-content: center; gap: 16px; padding: 18px 0 4px; color: var(--muted); font-size: 11px; }
.formation-pagination .button { min-height: 32px; padding: 0 12px; }

.strategy-detail-view { padding: 24px 0 80px; }
.strategy-back-link { display: inline-flex; align-items: center; min-height: 32px; color: #52605a; font-size: 12px; text-decoration: none; }
.strategy-back-link::before { content: "←"; margin-right: 7px; }
.strategy-back-link:hover { color: var(--green); }
.strategy-detail-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .42fr); gap: 50px; align-items: end; padding: 22px 0 28px; border-bottom: 1px solid #bfc8c3; }
.strategy-detail-heading h2 { max-width: 760px; font-size: 27px; line-height: 1.3; }
.strategy-detail-heading > div > code { display: block; margin-top: 10px; color: #67726d; font-size: 10px; overflow-wrap: anywhere; }
.strategy-detail-heading dl { margin: 0; }
.strategy-detail-heading dl > div { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 15px; padding: 7px 0; border-bottom: 1px solid #e0e5e2; }
.strategy-detail-heading dt { color: var(--muted); font-size: 10px; }
.strategy-detail-heading dd { margin: 0; color: #3e4843; font-size: 11px; overflow-wrap: anywhere; }
.strategy-detail-heading dd code { font-size: 9px; }
.strategy-detail-title-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.strategy-detail-title-row > div { min-width: 0; }
.strategy-governance-actions { display: flex; flex: 0 0 auto; gap: 8px; padding-top: 3px; }
.strategy-governance-actions .button { min-height: 34px; padding: 0 12px; font-size: 11px; }
.button.danger { border-color: #b86a5d; background: #a84d3d; color: #fff; }
.button.danger:hover { border-color: #8f3e31; background: #8f3e31; }
.strategy-readonly-badge { display: inline-flex; min-height: 30px; align-items: center; border: 1px solid #c8d1cd; border-radius: 4px; padding: 0 10px; color: var(--muted); font-size: 10px; font-weight: 700; white-space: nowrap; }
.strategy-detail-heading > div > .strategy-lifecycle-badge { margin-top: 13px; }
.strategy-retirement-notice { margin-top: 22px; border-left: 3px solid #c89b45; padding: 14px 16px; background: #fffaf0; color: #645238; }
.strategy-retirement-notice strong { color: #7d5e25; font-size: 12px; }
.strategy-retirement-notice p { margin: 6px 0 12px; font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }
.strategy-retirement-notice dl { display: flex; flex-wrap: wrap; gap: 18px 32px; margin: 0; }
.strategy-retirement-notice dl > div { display: flex; gap: 8px; }
.strategy-retirement-notice dt { color: #876f49; font-size: 9px; }
.strategy-retirement-notice dd { margin: 0; font-size: 10px; }
.strategy-history-section { padding-bottom: 10px; }
.strategy-revision-list { border-top: 1px solid var(--line); }
.strategy-revision-item { border-bottom: 1px solid var(--line); }
.strategy-revision-item > summary { display: grid; grid-template-columns: 110px minmax(150px, 1fr) auto; gap: 14px; align-items: center; min-height: 48px; padding: 0 2px; color: var(--ink); font-size: 11px; cursor: pointer; list-style-position: inside; }
.strategy-revision-item > summary::marker { color: var(--green); }
.strategy-revision-item > summary time, .strategy-revision-item > summary small { color: var(--muted); font-size: 10px; }
.strategy-revision-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-top: 1px solid #e4e8e6; }
.strategy-revision-facts > div { min-width: 0; padding: 13px 14px 13px 0; }
.strategy-revision-facts > div + div { padding-left: 14px; border-left: 1px solid #e4e8e6; }
.strategy-revision-facts dt { color: var(--muted); font-size: 9px; }
.strategy-revision-facts dd { margin: 6px 0 0; color: #44514a; font-size: 10px; overflow-wrap: anywhere; }
.strategy-revision-facts code { color: #5d6963; font-size: 9px; }
.strategy-revision-json { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; padding: 14px 0 18px; }
.strategy-revision-json h4 { margin: 0 0 8px; color: #66716c; font-size: 10px; }
.strategy-revision-json pre { max-height: 360px; overflow: auto; margin: 0; border: 1px solid #dce3df; padding: 12px; background: #f7f9f8; color: #44514a; font: 10px/1.55 "SFMono-Regular", Consolas, monospace; }
.strategy-editor-view { padding: 24px 0 80px; }
.strategy-editor-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding: 22px 0 24px; border-bottom: 1px solid #bfc8c3; }
.strategy-editor-heading h2 { margin-top: 8px; font-size: 24px; }
.strategy-readonly-note { color: var(--muted); font-size: 10px; }
.strategy-editor-form { display: grid; gap: 18px; padding-top: 24px; }
.strategy-editor-form > label { display: grid; gap: 8px; }
.strategy-editor-form > label > span { color: var(--ink); font-size: 11px; font-weight: 700; }
.strategy-editor-form > label > span b, .strategy-dialog label span b { color: #a84d3d; font-size: 9px; }
.strategy-editor-form textarea, .strategy-dialog textarea { width: 100%; box-sizing: border-box; resize: vertical; border: 1px solid #bfc9c4; border-radius: 4px; padding: 13px; background: #fbfcfb; color: #26312c; font: 11px/1.6 "SFMono-Regular", Consolas, monospace; tab-size: 2; }
.strategy-editor-form textarea:focus-visible, .strategy-dialog textarea:focus-visible { outline: 2px solid #1c5f9e; outline-offset: 2px; border-color: #7e9ebc; }
.strategy-editor-hint { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.6; }
.strategy-editor-form footer { display: flex; justify-content: flex-end; gap: 9px; padding-top: 5px; }
.strategy-dialog-backdrop { position: fixed; z-index: 20; inset: 0; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgb(20 28 24 / 42%); }
.strategy-dialog { width: min(100%, 520px); border: 1px solid #bfc9c4; border-radius: 5px; background: var(--surface); box-shadow: 0 16px 44px rgb(19 34 26 / 22%); }
.strategy-dialog > header { padding: 22px 24px 18px; border-bottom: 1px solid var(--line); }
.strategy-dialog > header h2 { margin-top: 7px; font-size: 20px; }
.strategy-dialog > header p { margin: 7px 0 0; color: var(--muted); font-size: 11px; overflow-wrap: anywhere; }
.strategy-dialog form { padding: 18px 24px 22px; }
.strategy-dialog form > label { display: grid; gap: 8px; }
.strategy-dialog form > label > span { color: var(--ink); font-size: 11px; font-weight: 700; }
.strategy-dialog footer { display: flex; justify-content: flex-end; gap: 9px; margin-top: 16px; }
.strategy-detail-section { padding: 34px 0; border-bottom: 1px solid #ccd4d0; }
.strategy-business-section { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; }
.strategy-business-section > div { padding: 28px 30px 30px 0; }
.strategy-business-section > div + div { padding-right: 0; padding-left: 30px; border-left: 1px solid #d8dfdb; }
.strategy-business-section span, .strategy-reference-grid > div > span { display: block; margin-bottom: 9px; color: var(--green); font-size: 10px; font-weight: 700; }
.strategy-business-section p { margin: 0; color: #26312c; font-size: 14px; line-height: 1.75; white-space: pre-line; }
.formation-run-summary { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.formation-run-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; padding: 16px 0; border-bottom: 1px solid #e0e5e2; }
.formation-run-heading strong { color: var(--green); font-size: 13px; }
.formation-run-heading code { color: #65716b; font-size: 9px; overflow-wrap: anywhere; }
.formation-run-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.formation-run-facts > div { min-width: 0; padding: 15px 18px 15px 0; border-bottom: 1px solid #e0e5e2; }
.formation-run-facts > div:nth-child(even) { padding-right: 0; padding-left: 18px; border-left: 1px solid #e0e5e2; }
.formation-run-facts dt, .formation-run-sources h3 { color: var(--muted); font-size: 10px; font-weight: 700; }
.formation-run-facts dd { margin: 7px 0 0; color: #3e4843; font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
.formation-run-sources { padding-top: 18px; }
.formation-run-sources h3 { margin: 0 0 10px; }
.formation-source-list { border-top: 1px solid #e0e5e2; }
.formation-source-list article { display: grid; grid-template-columns: minmax(130px, .3fr) minmax(0, 1fr) minmax(90px, .18fr); gap: 14px; padding: 12px 0; border-bottom: 1px solid #e0e5e2; align-items: baseline; }
.formation-source-list strong { color: var(--ink); font-size: 11px; }
.formation-source-list code, .formation-source-list span { color: #59655f; font-size: 10px; overflow-wrap: anywhere; }
.formation-empty { display: grid; gap: 7px; padding: 18px 0; color: var(--muted); }
.formation-empty strong { color: var(--ink); font-size: 12px; }
.formation-empty code { color: #65716b; font-size: 9px; overflow-wrap: anywhere; }
.strategy-section-heading { display: flex; align-items: baseline; gap: 12px; margin-bottom: 22px; }
.strategy-section-heading > span { color: var(--green); font: 700 10px/1 "SFMono-Regular", monospace; }
.strategy-section-heading h2 { font-size: 18px; }
.strategy-reference-grid { display: grid; grid-template-columns: 1.35fr 1fr .7fr .8fr; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.strategy-reference-grid > div { min-width: 0; min-height: 88px; padding: 17px 20px; }
.strategy-reference-grid > div + div { border-left: 1px solid #e0e5e2; }
.strategy-reference-money { color: var(--ink); font-size: 18px; font-variant-numeric: tabular-nums; }

.strategy-decision-list { border-top: 1px solid var(--line); }
.strategy-decision-section { display: grid; grid-template-columns: minmax(210px, .29fr) minmax(0, .71fr); border-bottom: 1px solid var(--line); }
.strategy-decision-section > header { padding: 22px 24px 24px 0; }
.strategy-decision-section > header span { color: var(--green); font-size: 10px; font-weight: 700; }
.strategy-decision-section > header h3 { margin: 8px 0 0; color: var(--ink); font-size: 14px; line-height: 1.6; }
.strategy-decision-body { padding: 22px 0 24px 26px; border-left: 1px solid #e0e5e2; }
.strategy-decision-body h4, .strategy-evaluation h4, .strategy-comparison h4, .strategy-hypothesis-list h4 { margin: 0 0 9px; color: #66716c; font-size: 10px; font-weight: 700; }
.strategy-rationale p, .strategy-decision-body p { margin: 0; color: #35403b; font-size: 12px; line-height: 1.7; }
.strategy-basis-list { margin: 22px 0 0; padding: 0; list-style: none; }
.strategy-basis-list > li { padding: 14px 0; border-top: 1px solid #e2e7e4; }
.strategy-basis-list dl { margin: 9px 0 0; }
.strategy-basis-list dl > div { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 10px; margin-top: 5px; }
.strategy-basis-list dt { color: var(--muted); font-size: 9px; }
.strategy-basis-list dd { margin: 0; color: #59655f; font-size: 10px; line-height: 1.6; }
.strategy-decision-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 20px; padding-top: 18px; border-top: 1px solid #e2e7e4; }
.strategy-text-list { display: grid; gap: 6px; margin: 0; padding-left: 17px; color: #4d5953; font-size: 11px; line-height: 1.6; }

.strategy-relationship-list { border-top: 1px solid var(--line); }
.strategy-relationship-row { display: grid; grid-template-columns: minmax(190px, .26fr) minmax(0, .49fr) minmax(180px, .25fr); border-bottom: 1px solid var(--line); }
.strategy-relationship-row > div { min-width: 0; padding: 17px 18px; }
.strategy-relationship-row > div:first-child { padding-left: 0; }
.strategy-relationship-row > div + div { border-left: 1px solid #e3e8e5; }
.strategy-relationship-id { display: grid; align-content: start; gap: 7px; }
.strategy-relationship-id > span { color: var(--green); font-size: 10px; font-weight: 700; }
.strategy-relationship-id > span code { margin-left: 4px; color: #68736e; font-size: 8px; }
.strategy-relationship-id > code, .strategy-relationship-id > a { color: #49564f; font: 9px/1.5 "SFMono-Regular", Consolas, monospace; overflow-wrap: anywhere; }
.strategy-relationship-id > a { text-decoration: underline dotted #93b8a6; text-underline-offset: 3px; }
.strategy-relationship-id > a:hover { color: var(--green); text-decoration-color: var(--green); }
.strategy-relationship-id small { color: var(--muted); font-size: 9px; }
.strategy-relationship-row strong { color: var(--ink); font-size: 12px; line-height: 1.6; }
.strategy-relationship-row p { margin: 7px 0 0; color: #59645f; font-size: 11px; line-height: 1.65; }
.strategy-assessment span { display: inline-block; padding: 3px 6px; background: #e8efeb; color: #255a42; font-size: 9px; font-weight: 700; }

.strategy-hypothesis-list, .strategy-learning-list { border-top: 1px solid var(--line); }
.strategy-hypothesis-list > article { padding: 18px 0; border-bottom: 1px solid var(--line); }
.strategy-hypothesis-list header { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 10px; }
.strategy-hypothesis-list header code { color: #405048; font-size: 10px; }
.strategy-hypothesis-list header span { color: var(--green); font-size: 10px; font-weight: 700; }
.strategy-hypothesis-list > article > strong { color: var(--ink); font-size: 13px; line-height: 1.6; }
.strategy-hypothesis-list > article > p { margin: 9px 0 16px; color: #4d5953; font-size: 12px; line-height: 1.7; }

.strategy-meaning-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.strategy-meaning-grid > div { padding: 18px 20px; }
.strategy-meaning-grid > div:first-child { padding-left: 0; }
.strategy-meaning-grid > div + div { border-left: 1px solid #e0e5e2; }
.strategy-meaning-grid p, .strategy-allocation-case p, .strategy-final-result p, .strategy-question-list p, .strategy-comparison p { margin: 0; color: #414c46; font-size: 11px; line-height: 1.7; }
.strategy-allocation-case { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 24px; border-top: 1px solid #e0e5e2; }
.strategy-allocation-case > div { padding: 16px 20px 16px 0; border-bottom: 1px solid #e0e5e2; }
.strategy-allocation-case > div:nth-child(even) { padding-right: 0; padding-left: 20px; border-left: 1px solid #e0e5e2; }
.strategy-evaluation > section { margin-top: 26px; }
.strategy-evaluation > section:first-child { margin-top: 0; }
.strategy-result-list { border-top: 1px solid #e0e5e2; }
.strategy-result-list article { display: grid; grid-template-columns: 90px minmax(210px, .8fr) minmax(260px, 1.2fr) minmax(180px, .7fr); gap: 16px; padding: 14px 0; border-bottom: 1px solid #e0e5e2; }
.strategy-result-list span { color: var(--green); font-size: 9px; font-weight: 700; }
.strategy-result-list strong { color: var(--ink); font-size: 11px; line-height: 1.55; }
.strategy-result-list p, .strategy-result-list small { margin: 0; color: #59645f; font-size: 10px; line-height: 1.6; }
.strategy-final-result { padding: 18px 20px; border-left: 3px solid var(--green); background: #f3f7f5; }
.strategy-question-list { border-top: 1px solid #e0e5e2; }
.strategy-question-list > div { display: grid; grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr); gap: 24px; padding: 13px 0; border-bottom: 1px solid #e0e5e2; }
.strategy-question-list strong { color: var(--ink); font-size: 11px; line-height: 1.6; }

.strategy-learning-list > article { display: grid; grid-template-columns: minmax(190px, .28fr) minmax(0, .72fr); gap: 22px; padding: 17px 0; border-bottom: 1px solid var(--line); }
.strategy-learning-list header { grid-row: 1 / span 2; }
.strategy-learning-list header code { color: #405048; font-size: 9px; overflow-wrap: anywhere; }
.strategy-learning-list > article > p { margin: 0; color: var(--ink); font-size: 12px; line-height: 1.65; }
.strategy-learning-list dl { display: grid; gap: 7px; margin: 0; }
.strategy-learning-list dl > div { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 12px; }
.strategy-learning-list dt { color: var(--muted); font-size: 9px; }
.strategy-learning-list dd { margin: 0; color: #59645f; font-size: 10px; line-height: 1.6; }
.strategy-comparison dl { margin: 0; border-top: 1px solid var(--line); }
.strategy-comparison dl > div { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 22px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.strategy-comparison dt { color: var(--muted); font-size: 10px; }
.strategy-comparison dd { margin: 0; color: var(--ink); font-size: 12px; line-height: 1.65; }
.strategy-comparison dd code { font-size: 9px; }
.strategy-comparison section { margin-top: 22px; }
.strategy-contract-section pre { max-height: 720px; overflow: auto; margin: 0; border: 1px solid #27332d; border-radius: 4px; padding: 20px; background: #18201c; color: #dce7e1; font: 11px/1.65 "SFMono-Regular", Consolas, monospace; tab-size: 2; }
.strategy-contract-section code { font: inherit; }

.history-section { max-width: 620px; }
.revision-list { border-top: 1px solid var(--line); }
.revision-row { display: grid; grid-template-columns: 1fr auto; gap: 20px; padding: 13px 2px; border-bottom: 1px solid var(--line); font-size: 13px; }
.revision-row span, .revision-empty { color: var(--muted); }
.revision-meta { display: inline-flex; align-items: center; gap: 10px; }
.current-badge { border-radius: 3px; padding: 2px 6px; background: var(--green-soft); color: var(--green); font-size: 11px; }
.revision-empty { padding: 16px 2px; border-bottom: 1px solid var(--line); font-size: 13px; }

.action-bar { position: fixed; z-index: 5; left: var(--sidebar-width); right: 0; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 76px; padding: 14px max(24px, calc((100vw - var(--sidebar-width) - 1180px) / 2)); border-top: 1px solid #cbd3cf; background: rgb(255 255 255 / 94%); backdrop-filter: blur(12px); }
.actions { display: flex; gap: 10px; margin-left: auto; }
.form-status { color: var(--muted); font-size: 13px; }
.button { min-height: 40px; border: 1px solid #aab5b0; border-radius: 5px; padding: 0 18px; background: #fff; color: var(--ink); font-weight: 650; cursor: pointer; }
a.button { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; text-decoration: none; }
.resource-editor [hidden] { display: none; }
.resource-editor { max-width: 760px; }
.resource-editor input:not([type=checkbox]), .resource-editor select { box-sizing: border-box; width: 100%; min-height: 40px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 4px; background: var(--surface); color: var(--ink); font: inherit; }
.resource-fields dd { font-size: 14px; font-weight: 500; overflow-wrap: anywhere; }
.resource-editor fieldset { border: 1px solid var(--line); background: var(--surface); }
.resource-editor fieldset label { display: flex; align-items: center; gap: 8px; padding: 6px; }
.button:hover { border-color: #69756f; }
.button.primary { border-color: var(--green); background: var(--green); color: #fff; }
.button.primary:hover { background: #0f5838; }
.button:disabled { opacity: .55; cursor: not-allowed; }

.research-direction-drawer-backdrop { position: fixed; z-index: 40; inset: 0; display: flex; justify-content: flex-end; background: rgb(14 22 18 / 48%); }
.research-direction-drawer { width: min(520px, 100%); height: 100%; overflow-y: auto; border-left: 1px solid #cdd5d1; background: var(--surface); box-shadow: -18px 0 50px rgb(14 22 18 / 20%); }
.research-direction-drawer > header { display: flex; justify-content: space-between; gap: 20px; align-items: start; padding: 24px 26px 20px; border-bottom: 1px solid var(--line); }
.research-direction-drawer > header span { color: var(--green); font-size: 10px; font-weight: 750; }
.research-direction-drawer > header h2 { margin: 6px 0 0; font-size: 20px; }
.research-direction-close { display: grid; flex: 0 0 36px; width: 36px; height: 36px; place-items: center; border: 1px solid #c6d0cb; border-radius: 4px; background: #fff; color: #445149; font-size: 22px; line-height: 1; cursor: pointer; }
.research-direction-close:hover { border-color: #75857d; color: var(--green); }
.research-direction-context { display: grid; gap: 5px; margin: 20px 26px 0; border-left: 3px solid #7ca18e; padding: 11px 13px; background: #f3f7f5; }
.research-direction-context span { color: var(--muted); font-size: 9px; }
.research-direction-context strong { color: var(--ink); font-size: 11px; }
.research-direction-context code { color: #66736c; font-size: 9px; overflow-wrap: anywhere; }
.research-direction-drawer form { display: grid; gap: 19px; padding: 24px 26px; }
.research-direction-drawer label { display: grid; gap: 8px; }
.research-direction-drawer label > span { color: #35423b; font-size: 11px; font-weight: 700; }
.research-direction-drawer label b { margin-left: 5px; color: #8b443b; font-size: 8px; }
.research-direction-drawer label small { margin-left: 5px; color: var(--muted); font-size: 8px; font-weight: 500; }
.research-direction-drawer input, .research-direction-drawer textarea { width: 100%; border: 1px solid #b9c5bf; border-radius: 4px; padding: 10px 11px; background: #fff; color: var(--ink); font: inherit; font-size: 12px; line-height: 1.6; resize: vertical; }
.research-direction-drawer input { min-height: 42px; }
.research-direction-drawer input:focus-visible, .research-direction-drawer textarea:focus-visible, .research-direction-close:focus-visible { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.research-direction-drawer form > footer { display: flex; justify-content: space-between; gap: 18px; align-items: center; margin-top: 5px; padding-top: 18px; border-top: 1px solid var(--line); }
.research-direction-drawer form > footer > span { color: var(--muted); font-size: 9px; }
.research-direction-form-error:empty { display: none; }
.research-direction-form-error { margin: -5px 0 0; color: var(--danger); font-size: 11px; }

.publish-dialog-backdrop { position: fixed; z-index: 30; inset: 0; display: grid; place-items: center; padding: 24px; background: rgb(14 22 18 / 48%); }
.publish-dialog { width: min(620px, 100%); max-height: min(760px, calc(100vh - 48px)); overflow-y: auto; border: 1px solid #cdd5d1; border-radius: 7px; background: var(--surface); box-shadow: 0 20px 60px rgb(14 22 18 / 24%); }
.publish-dialog > header { padding: 24px 26px 20px; border-bottom: 1px solid var(--line); }
.publish-dialog > header > span { display: block; margin-bottom: 6px; color: var(--green); font-size: 10px; font-weight: 750; }
.publish-dialog > header h2 { font-size: 20px; }
.publish-dialog > header p { margin: 10px 0 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.publish-change-list { margin: 0; }
.publish-change-list > div { display: grid; grid-template-columns: minmax(130px, .45fr) minmax(0, .55fr); align-items: center; gap: 20px; min-height: 58px; padding: 11px 26px; border-bottom: 1px solid #e7ebe9; }
.publish-change-list > div.is-changed { background: #f6faf7; }
.publish-change-list dt { color: var(--muted); font-size: 11px; }
.publish-change-list dd { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 10px; margin: 0; font-size: 12px; text-align: right; }
.publish-change-list dd span { color: #7b8580; overflow-wrap: anywhere; }
.publish-change-list dd b { color: #9aa39f; font-weight: 500; }
.publish-change-list dd strong { color: var(--ink); overflow-wrap: anywhere; }
.publish-change-list .is-changed dd strong { color: var(--green); }
.publish-acknowledgment { position: relative; display: grid; grid-template-columns: 18px minmax(0, 1fr); align-items: start; gap: 11px; margin: 20px 26px; cursor: pointer; }
.publish-acknowledgment input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.publish-acknowledgment input:checked + .governance-checkbox { border-color: var(--green); background: var(--green); }
.publish-acknowledgment input:checked + .governance-checkbox::after { content: ""; position: absolute; top: 3px; left: 6px; width: 4px; height: 8px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); }
.publish-acknowledgment input:focus-visible + .governance-checkbox { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.publish-acknowledgment b { color: #39433f; font-size: 12px; line-height: 1.5; }
.publish-dialog > footer { display: flex; justify-content: flex-end; gap: 10px; padding: 16px 26px 20px; border-top: 1px solid var(--line); }

.loading-state { padding-top: 42px; }
.loading-line, .loading-panel { border-radius: 4px; background: #e1e6e3; animation: pulse 1.4s ease-in-out infinite; }
.loading-line { width: 42%; height: 18px; margin-bottom: 12px; }
.loading-line-short { width: 18%; height: 11px; }
.loading-panel { height: 260px; margin-top: 30px; }
@keyframes pulse { 50% { opacity: .48; } }

.error-state, .empty-state { display: grid; justify-items: start; gap: 10px; padding: 34px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); color: var(--muted); }
.error-state { margin-top: 34px; }
.error-state strong, .empty-state strong { color: var(--ink); }
.inline-empty { padding: 16px 22px; color: var(--muted); font-size: 13px; }
.toast { position: fixed; z-index: 20; left: 50%; bottom: 92px; max-width: min(620px, calc(100% - 32px)); transform: translate(-50%, 14px); border-radius: 5px; padding: 11px 16px; background: #1f2925; color: #fff; font-size: 13px; opacity: 0; pointer-events: none; transition: opacity 150ms ease, transform 150ms ease; }
.toast[data-tone="error"] { background: var(--danger); }
.toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

.control-plane-view, .control-plane-detail-view { padding-top: 28px; padding-bottom: 40px; }
.eyebrow { display: block; color: var(--green); font-size: 10px; font-weight: 700; letter-spacing: 0; }
.control-plane-tab-summary > header { display: flex; align-items: end; justify-content: space-between; gap: 20px; min-height: 62px; padding: 15px 18px 13px; border-bottom: 1px solid #e4e9e6; }
.control-plane-tab-summary h2, .control-plane-handoff-progress h2 { margin: 4px 0 0; color: var(--ink); font-size: 17px; }
.control-plane-tab-summary > dl { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin: 0; }
.control-plane-tab-summary.is-revenue > dl { grid-template-columns: repeat(7, minmax(0, 1fr)); }
.control-plane-tab-summary.is-probe > dl { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.control-plane-tab-summary > dl > div { min-width: 0; min-height: 78px; padding: 13px 15px; border-right: 1px solid #e4e9e6; }
.control-plane-tab-summary > dl > div:last-child { border-right: 0; }
.control-plane-tab-summary dt { color: var(--muted); font-size: 9px; font-weight: 650; }
.control-plane-tab-summary dd { min-width: 0; margin: 8px 0 0; color: var(--ink); font-size: 18px; font-weight: 700; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.control-plane-tab-summary dd small { margin-left: 5px; color: var(--muted); font-size: 8px; font-weight: 500; }
.control-plane-tab-summary dd .control-plane-money { color: inherit; font-size: inherit; }
.control-plane-tab-summary { margin-top: 22px; border-top: 2px solid #899790; border-bottom: 1px solid var(--line); background: var(--surface); }
.control-plane-tab-summary.is-probe { border-top-color: #6f969e; }
.control-plane-tab-summary.is-probe .eyebrow { color: #266b78; }
.control-plane-tab-summary > header > span { color: var(--muted); font-size: 10px; text-align: right; }
.control-plane-state-alert { margin: 0; padding: 10px 15px; border-top: 1px solid #d7c5a6; background: #fbf7ef; color: #745f39; font-size: 10px; }
.control-plane-handoff-progress { margin-top: 22px; border-top: 2px solid #9f8f78; border-bottom: 1px solid var(--line); background: var(--surface); }
.control-plane-handoff-progress > header { padding: 15px 18px 13px; border-bottom: 1px solid #e4e9e6; }
.control-plane-handoff-progress .eyebrow { color: #80633b; }
.control-plane-handoff-progress ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.control-plane-handoff-progress li { position: relative; display: grid; gap: 7px; min-height: 76px; padding: 13px 18px; border-right: 1px solid #e4e9e6; }
.control-plane-handoff-progress li:last-child { border-right: 0; }
.control-plane-handoff-progress li:not(:last-child)::after { position: absolute; z-index: 1; top: 27px; right: -6px; width: 11px; height: 11px; background: var(--surface); color: #9a8b75; content: "›"; font-size: 14px; line-height: 10px; text-align: center; }
.control-plane-handoff-progress li span { color: var(--muted); font-size: 9px; }
.control-plane-handoff-progress li strong { color: var(--ink); font-size: 18px; font-variant-numeric: tabular-nums; }
.control-plane-pool-summary { display: grid; grid-template-columns: 1fr .78fr 1fr; border-top: 2px solid #899790; border-bottom: 1px solid var(--line); background: var(--surface); }
.control-plane-pool-block { min-width: 0; border-right: 1px solid var(--line); }
.control-plane-pool-block:nth-child(3) { border-right: 0; }
.control-plane-pool-block > header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; min-height: 54px; padding: 14px 16px 11px; border-bottom: 1px solid #e5e9e7; }
.control-plane-pool-block > header strong { color: var(--ink); font-size: 14px; font-variant-numeric: tabular-nums; }
.control-plane-pool-block.is-probe .eyebrow { color: #266b78; }
.control-plane-pool-block.is-handoff .eyebrow { color: #8a6536; }
.control-plane-pool-block.is-revenue .eyebrow { color: var(--green); }
.control-plane-pool-block.has-alert { background: #fff7f4; }
.control-plane-pool-block dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; }
.control-plane-pool-block.is-probe dl, .control-plane-pool-block.is-handoff dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.control-plane-pool-block dl > div { min-width: 0; padding: 12px 13px 14px; border-right: 1px solid #edf0ee; }
.control-plane-pool-block dl > div:last-child { border-right: 0; }
.control-plane-pool-block dt { color: var(--muted); font-size: 9px; white-space: nowrap; }
.control-plane-pool-block dd { min-width: 0; margin: 6px 0 0; color: var(--ink); font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.control-plane-pool-block dd small { display: block; margin-top: 3px; color: var(--muted); font-size: 8px; font-weight: 500; }
.control-plane-pool-block dd .control-plane-money { color: inherit; }
.control-plane-pool-block dd.is-alert { color: var(--danger); }
.control-plane-pool-result-note { margin: 0; padding: 9px 13px 11px; border-top: 1px solid #edf0ee; color: var(--muted); font-size: 9px; line-height: 1.45; }
.control-plane-pool-switch { display: flex; gap: 22px; border-bottom: 1px solid var(--line); }
.control-plane-pool-switch button { min-height: 38px; border: 0; border-bottom: 2px solid transparent; padding: 0 2px; background: transparent; color: var(--muted); font-size: 12px; cursor: pointer; }
.control-plane-pool-switch button:hover, .control-plane-pool-switch button[aria-pressed="true"] { border-bottom-color: var(--green); color: var(--green); }
.control-plane-pool-switch button[aria-pressed="true"] { font-weight: 700; }
.control-plane-pool-switch b { margin-left: 5px; font-size: 10px; font-variant-numeric: tabular-nums; }
.control-plane-pool-switch b.is-active { color: #a34b1f; }
.control-plane-overview-summary { border-top: 2px solid #9eaaa4; background: var(--surface); }
.control-plane-overview-summary > header { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 18px 20px 15px; border-bottom: 1px solid var(--line); }
.control-plane-overview-summary h2 { margin: 4px 0 3px; color: var(--ink); font-size: 16px; }
.control-plane-overview-summary header p { margin: 0; color: var(--muted); font-size: 10px; }
.control-plane-overview-summary header a { color: var(--green); font-size: 11px; font-weight: 650; text-decoration: none; }
.control-plane-overview-summary header a:hover { text-decoration: underline; }
.control-plane-overview-links { display: grid; gap: 7px; justify-items: end; min-width: 0; }
.control-plane-overview-links > span { max-width: 420px; color: var(--muted); font-size: 9px; text-align: right; overflow-wrap: anywhere; }
.control-plane-overview-links code { margin-left: 4px; color: #5c6862; font-size: 9px; }
.control-plane-overview-summary > dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-bottom: 1px solid var(--line); }
.control-plane-overview-summary > dl > div { min-width: 0; padding: 15px 18px; border-right: 1px solid #e3e8e5; }
.control-plane-overview-summary > dl > div:last-child { border-right: 0; }
.control-plane-overview-summary dt { color: var(--muted); font-size: 10px; }
.control-plane-overview-summary dd { margin: 7px 0 0; color: var(--ink); font-size: 19px; font-weight: 650; font-variant-numeric: tabular-nums; }
.control-plane-overview-summary dd .control-plane-money { font-size: 19px; }
.control-plane-overview-summary dd small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; font-weight: 500; }
.control-plane-overview-summary dd small .control-plane-money { font-size: 9px; }
.control-plane-overview-reason { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; padding: 11px 16px; color: #5e5543; font-size: 10px; }
.control-plane-overview-reason strong { color: #776341; }
.control-plane-overview-reason small { color: var(--muted); }
.control-plane-decision-summary { margin-top: 22px; border-top: 1px solid var(--line); background: var(--surface); }
.control-plane-summary-heading { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 20px 22px 17px; border-bottom: 1px solid var(--line); }
.control-plane-summary-heading h2 { margin: 5px 0 3px; color: var(--ink); font-size: 16px; overflow-wrap: anywhere; }
.control-plane-summary-heading p { margin: 0; color: var(--muted); font: 10px/1.4 "SFMono-Regular", Consolas, monospace; overflow-wrap: anywhere; }
.control-plane-summary-time { display: grid; gap: 5px; justify-items: end; color: var(--muted); font-size: 10px; text-align: right; }
.control-plane-summary-time strong { color: var(--ink); font-size: 12px; font-weight: 600; }
.control-plane-summary-grid, .control-plane-allocation-meta { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; border-bottom: 1px solid var(--line); }
.control-plane-allocation-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.control-plane-summary-grid > div, .control-plane-allocation-meta > div { min-width: 0; padding: 13px 16px; border-right: 1px solid #e3e8e5; }
.control-plane-summary-grid > div:nth-child(4n), .control-plane-allocation-meta > div:nth-child(4n) { border-right: 0; }
.control-plane-allocation-meta > div:last-child { border-right: 0; }
.control-plane-summary-grid dt, .control-plane-allocation-meta dt, .control-plane-metric dt { color: var(--muted); font: 600 10px/1.4 "SFMono-Regular", Consolas, monospace; overflow-wrap: anywhere; }
.control-plane-summary-grid dd, .control-plane-allocation-meta dd { min-width: 0; margin: 6px 0 0; color: var(--ink); font-size: 12px; overflow-wrap: anywhere; }
.control-plane-summary-grid dd code, .control-plane-allocation-meta dd code { color: #44504b; font-size: 10px; }
.control-plane-metric { min-width: 0; }
.control-plane-metric dd { margin: 5px 0 0; }
.control-plane-metric small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; }
.control-plane-money { color: var(--ink); font-variant-numeric: tabular-nums; }
.control-plane-reasons { padding: 13px 16px 16px; color: #6b4d43; font-size: 11px; }
.control-plane-reasons strong { display: block; margin-bottom: 5px; color: var(--danger); }
.control-plane-reasons .strategy-text-list { margin: 0; }
.control-plane-allocation { margin-top: 24px; border-top: 2px solid #9eaaa4; background: var(--surface); }
.control-plane-allocation header { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 18px 22px 15px; border-bottom: 1px solid var(--line); }
.control-plane-allocation h2 { margin: 4px 0 3px; color: var(--ink); font-size: 15px; overflow-wrap: anywhere; }
.control-plane-allocation header p { margin: 0; color: var(--muted); font-size: 10px; }
.allocation-state { flex: 0 0 auto; border: 1px solid #d4c1bb; border-radius: 3px; padding: 4px 7px; color: #805143; font-size: 10px; font-weight: 700; }
.allocation-state.is-published { border-color: #bad8c5; background: #eff8f2; color: var(--green); }
.control-plane-allocation-empty { border-top-color: #c4aaa2; }
.control-plane-allocation-empty > p { margin: 0; padding: 0 22px 18px; color: var(--muted); font-size: 12px; }
.control-plane-strategy-section { margin-top: 30px; }
.control-plane-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.control-plane-section-heading h2 { margin: 4px 0 0; color: var(--ink); font-size: 18px; }
.control-plane-section-heading > span { color: var(--muted); font-size: 11px; }
.control-plane-strategy-tabs { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 12px; border-bottom: 1px solid var(--line); }
.control-plane-strategy-tabs button { min-height: 31px; border: 0; border-bottom: 2px solid transparent; padding: 0 8px 8px; background: transparent; color: var(--muted); font-size: 11px; cursor: pointer; }
.control-plane-strategy-tabs button:hover, .control-plane-strategy-tabs button[aria-pressed="true"] { border-bottom-color: var(--green); color: var(--green); }
.control-plane-strategy-tabs button[aria-pressed="true"] { font-weight: 700; }
.control-plane-strategy-tabs b { margin-left: 3px; font-size: 10px; font-variant-numeric: tabular-nums; }
.control-plane-strategy-list { border-top: 2px solid #9eaaa4; background: var(--surface); }
.control-plane-strategy-empty { display: grid; place-items: center; min-height: 120px; border-top: 2px solid #9eaaa4; background: var(--surface); color: var(--muted); font-size: 12px; }
.control-plane-strategy-row { display: grid; grid-template-columns: minmax(190px, 1.1fr) minmax(160px, .9fr) minmax(360px, 2.4fr) minmax(96px, .55fr); gap: 0; min-width: 0; border-bottom: 1px solid var(--line); }
.control-plane-strategy-row:last-child { border-bottom: 0; }
.control-plane-strategy-row > div { min-width: 0; padding: 16px 14px; border-right: 1px solid #e3e8e5; }
.control-plane-strategy-row > div:last-child { border-right: 0; }
.control-plane-strategy-main { display: grid; align-content: start; gap: 9px; }
.control-plane-allocation-status { justify-self: start; border: 1px solid #cbd4cf; border-radius: 3px; padding: 3px 6px; color: var(--muted); font-size: 9px; font-weight: 700; }
.control-plane-allocation-status.is-assigned { border-color: #bad8c5; background: #eff8f2; color: var(--green); }
.control-plane-allocation-status.is-explicitly_unallocated { border-color: #d8c7b7; background: #fbf6ef; color: #856a48; }
.control-plane-allocation-status.is-not_rejudged { border-color: #cbd4cf; background: #f5f7f6; color: #66716c; }
.control-plane-strategy-link { min-width: 0; color: var(--ink); text-decoration: none; }
.control-plane-strategy-link:hover strong { color: var(--green); }
.control-plane-strategy-link strong { display: block; font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.control-plane-strategy-link code { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.control-plane-object-tags { display: flex; flex-wrap: wrap; gap: 4px; }
.control-plane-object-tags span, .control-plane-object-tags a { border-radius: 3px; padding: 3px 5px; background: var(--soft); color: #56635d; font-size: 9px; overflow-wrap: anywhere; text-decoration: none; }
.control-plane-object-tags a:hover { background: var(--green-soft); color: var(--green); }
.control-plane-value-column, .control-plane-allocation-column, .control-plane-runtime-column { display: grid; align-content: start; gap: 8px; color: #4a5751; font-size: 10px; }
.control-plane-value-column > div { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.control-plane-value-column > div > span { color: var(--muted); }
.control-plane-review-value-note { color: #856a48; font-size: 9px; line-height: 1.45; overflow-wrap: anywhere; }
.column-label { color: var(--muted); font: 600 10px/1.4 "SFMono-Regular", Consolas, monospace; }
.control-plane-allocation-column > div { display: flex; align-items: baseline; justify-content: space-between; gap: 7px; }
.control-plane-allocation-column > div > span { color: var(--muted); }
.control-plane-budget-change strong { color: var(--ink); font-size: 14px; font-variant-numeric: tabular-nums; }
.control-plane-budget-change del { color: var(--muted); text-decoration-color: #b58373; }
.control-plane-budget-change b { color: var(--muted); font-weight: 500; }
.control-plane-allocation-column > small { color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.control-plane-resource-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; margin-top: 3px; }
.control-plane-allocation-column > .control-plane-resource-fields { display: grid; align-items: stretch; justify-content: initial; }
.control-plane-resource-field { display: block; min-width: 0; }
.control-plane-resource-field span { display: block; color: var(--muted); font-size: 9px; white-space: nowrap; }
.control-plane-resource-field code { display: block; min-width: 0; margin-top: 2px; color: #65716b; font-size: 9px; overflow-wrap: anywhere; }
.control-plane-runtime-column strong { color: var(--ink); font-size: 12px; }
.control-plane-runtime-column > span:not(.column-label) { color: #4a5751; }
.control-plane-runtime-column small { color: var(--muted); font-size: 9px; line-height: 1.4; }

/* Control Plane is organized by effective Allocation, evaluation, adoption, and published changes. */
.control-plane-overview-summary > header > span { color: var(--muted); font-size: 10px; white-space: nowrap; }
.control-plane-overview-summary > dl { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.control-plane-overview-summary dd { display: flex; align-items: baseline; gap: 5px; }
.control-plane-overview-summary dd small { display: inline; margin-top: 0; }
.control-plane-overview-summary > dl > div:nth-child(4) dd { display: grid; gap: 4px; }
.control-plane-overview-summary > dl > div:nth-child(4) dd small { display: block; }
.control-plane-latest-decision { margin-top: 22px; border-top: 2px solid #9eaaa4; background: var(--surface); }
.control-plane-rules { margin-top: 22px; border-top: 2px solid #769781; background: var(--surface); }
.control-plane-rules > header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 20px; border-bottom: 1px solid var(--line); }
.control-plane-rules h2 { margin: 4px 0 0; color: var(--ink); font-size: 16px; }
.control-plane-rules-actions { display: flex; align-items: center; gap: 10px; }
.control-plane-rules-actions time { color: var(--muted); font-size: 10px; }
.control-plane-rules-active { border: 1px solid #a9cfb8; border-radius: 3px; padding: 4px 7px; background: #eff8f2; color: #186b45; font-size: 9px; font-weight: 700; }
.control-plane-rules-actions .button, .control-plane-rules > header > .button { min-height: 32px; padding-inline: 11px; font-size: 10px; }
.control-plane-rules-content > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 20px; color: #46544d; font-size: 11px; font-weight: 700; cursor: pointer; list-style: none; }
.control-plane-rules-content > summary::-webkit-details-marker { display: none; }
.control-plane-rules-content > summary::after { margin-left: 2px; color: var(--muted); content: "+"; font-size: 16px; font-weight: 400; }
.control-plane-rules-content[open] > summary::after { content: "−"; }
.control-plane-rules-content > summary b { margin-left: auto; color: var(--muted); font-size: 9px; font-weight: 600; }
.control-plane-rules-content > div { padding: 17px 20px 21px; border-top: 1px solid #e7ebe9; color: #35423c; font-size: 11px; line-height: 1.75; white-space: pre-wrap; }
.control-plane-rules-state { padding: 20px; color: var(--muted); font-size: 11px; }
.control-plane-rules-state.is-error { color: var(--danger); }
.control-plane-rules-draft { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 10px 20px; border-top: 1px solid #e7ddc9; background: #fbf8f1; color: #725f3c; font-size: 10px; }
.control-plane-rules-draft time { color: #8b7b5c; font-size: 9px; }
.control-plane-operating-context { margin-top: 12px; border-top: 2px solid #8b939d; background: var(--surface); }
.control-plane-operating-context > header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 20px; border-bottom: 1px solid var(--line); }
.control-plane-operating-context h2 { margin: 4px 0 0; color: var(--ink); font-size: 16px; }
.control-plane-operating-context > header .button { min-height: 32px; padding-inline: 11px; font-size: 10px; }
.control-plane-context-readonly { border: 1px solid #c8ced4; border-radius: 3px; padding: 4px 7px; background: #f4f6f8; color: #53606c; font-size: 9px; font-weight: 700; }
.control-plane-context-content > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 13px 20px; color: #46515a; font-size: 11px; font-weight: 650; cursor: pointer; list-style: none; }
.control-plane-context-content > summary::-webkit-details-marker { display: none; }
.control-plane-context-content > summary::after { color: var(--muted); content: "+"; font-size: 16px; font-weight: 400; }
.control-plane-context-content[open] > summary::after { content: "−"; }
.control-plane-context-content > summary b { margin-left: auto; color: var(--muted); font-size: 9px; white-space: nowrap; }
.control-plane-context-content > div { border-top: 1px solid #e7ebe9; }
.control-plane-context-group { padding: 17px 20px 20px; }
.control-plane-context-group + .control-plane-context-group { border-top: 1px solid #edf0ee; }
.control-plane-context-group > header { display: grid; grid-template-columns: minmax(120px, .32fr) minmax(0, 1fr); gap: 18px; align-items: baseline; }
.control-plane-context-group h3 { margin: 0; color: var(--ink); font-size: 12px; }
.control-plane-context-group p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.control-plane-context-group dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; margin: 14px 0 0; }
.control-plane-context-group dl > div { min-width: 0; padding: 11px 0; border-top: 1px solid #edf0ee; }
.control-plane-context-group dt { color: var(--ink); font-size: 10px; font-weight: 700; }
.control-plane-context-group dd { margin: 5px 0 0; color: #53605a; font-size: 10px; line-height: 1.55; }
.control-plane-context-group code { display: block; margin-top: 6px; color: #7a8580; font-size: 8px; line-height: 1.45; overflow-wrap: anywhere; }
.revenue-rules-dialog-backdrop { position: fixed; z-index: 40; inset: 0; display: grid; place-items: center; padding: 24px; background: rgb(14 22 18 / 48%); }
.revenue-rules-dialog, .revenue-rules-confirm { width: min(780px, 100%); max-height: calc(100vh - 48px); overflow-y: auto; border: 1px solid #cdd5d1; border-radius: 7px; background: var(--surface); box-shadow: 0 20px 60px rgb(14 22 18 / 24%); }
.revenue-rules-dialog > header { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 20px 22px 16px; border-bottom: 1px solid var(--line); }
.revenue-rules-dialog > header span, .revenue-rules-confirm > header > span { display: block; margin-bottom: 5px; color: var(--green); font-size: 9px; font-weight: 750; }
.revenue-rules-dialog h2, .revenue-rules-confirm h2 { margin: 0; color: var(--ink); font-size: 18px; }
.revenue-rules-dialog > header .icon-button { width: 34px; height: 34px; border: 1px solid #c6cfca; border-radius: 4px; background: #fff; color: #58645e; font-size: 20px; cursor: pointer; }
.revenue-rules-editor-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 22px; color: var(--muted); font-size: 9px; }
.revenue-rules-editor-meta b { color: #80683f; }
.revenue-rules-dialog textarea { display: block; width: calc(100% - 44px); min-height: min(500px, calc(100vh - 260px)); margin: 0 22px; border: 1px solid #b9c5bf; border-radius: 4px; padding: 14px; background: #fbfcfb; color: var(--ink); font: 11px/1.75 "SFMono-Regular", Consolas, monospace; resize: vertical; }
.revenue-rules-dialog textarea:focus { border-color: var(--green); outline: 2px solid rgb(31 112 73 / 15%); }
.revenue-rules-editor-status { min-height: 31px; padding: 8px 22px 0; color: var(--muted); font-size: 10px; }
.revenue-rules-dialog > footer, .revenue-rules-confirm > footer { display: flex; justify-content: flex-end; gap: 9px; padding: 14px 22px 18px; border-top: 1px solid var(--line); }
.revenue-rules-dialog > footer .button, .revenue-rules-confirm > footer .button { min-height: 36px; font-size: 11px; }
.revenue-rules-confirm { width: min(560px, 100%); }
.revenue-rules-confirm > header { padding: 22px 24px 18px; border-bottom: 1px solid var(--line); }
.revenue-rules-confirm > header p { margin: 10px 0 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.revenue-rules-acknowledgment { display: grid; grid-template-columns: 18px minmax(0, 1fr); align-items: center; gap: 10px; margin: 20px 24px; color: var(--ink); font-size: 11px; cursor: pointer; }
.revenue-rules-acknowledgment input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.revenue-rules-acknowledgment input:focus-visible + .governance-checkbox { outline: 2px solid var(--green); outline-offset: 2px; }
.revenue-rules-acknowledgment input:checked + .governance-checkbox::after { opacity: 1; }
.control-plane-latest-decision > header { display: flex; align-items: start; justify-content: space-between; gap: 20px; padding: 17px 20px 14px; border-bottom: 1px solid var(--line); }
.control-plane-latest-decision h2 { margin: 4px 0 0; color: var(--ink); font-size: 16px; }
.control-plane-latest-decision time { color: var(--muted); font-size: 10px; white-space: nowrap; }
.control-plane-decision-body { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 13px 20px; }
.control-plane-decision-body p { margin: 0; color: #4e5a55; font-size: 11px; line-height: 1.55; }
.control-plane-decision-body > a { color: var(--green); font-size: 11px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.control-plane-decision-body > a:hover { text-decoration: underline; }
.control-plane-action-counts { display: flex; flex-wrap: wrap; gap: 5px; }
.control-plane-action-count, .control-plane-action { display: inline-flex; align-items: center; width: fit-content; min-height: 25px; border: 1px solid #c5ceca; border-radius: 3px; padding: 0 7px; background: #f6f8f7; color: #54615b; font-size: 10px; font-weight: 700; }
.control-plane-action-count b { margin-left: 5px; color: inherit; font-variant-numeric: tabular-nums; }
.control-plane-action-count.is-add, .control-plane-action-count.is-increase, .control-plane-action.is-add, .control-plane-action.is-increase { border-color: #a9cfb8; background: #eff8f2; color: #186b45; }
.control-plane-action-count.is-decrease, .control-plane-action-count.is-remove, .control-plane-action.is-decrease, .control-plane-action.is-remove { border-color: #ddb9ae; background: #fff5f2; color: #954b3a; }
.control-plane-action-count.is-wait, .control-plane-action.is-wait { border-color: #d7c5a6; background: #fbf7ef; color: #7c653c; }
.control-plane-record-meta { border-top: 1px solid var(--line); }
.control-plane-record-meta summary { padding: 10px 20px; color: var(--muted); font-size: 10px; cursor: pointer; }
.control-plane-record-meta dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-top: 1px solid #edf0ee; }
.control-plane-record-meta dl > div { min-width: 0; padding: 12px 16px; border-right: 1px solid #e3e8e5; }
.control-plane-record-meta dl > div:nth-child(3n) { border-right: 0; }
.control-plane-record-meta dt { color: var(--muted); font-size: 9px; }
.control-plane-record-meta dd { margin: 5px 0 0; color: var(--ink); font-size: 10px; overflow-wrap: anywhere; }
.control-plane-decision-rules, .control-plane-decision-rules-unrecorded { border-top: 1px solid var(--line); }
.control-plane-decision-rules > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 13px 20px; cursor: pointer; list-style: none; }
.control-plane-decision-rules > summary::-webkit-details-marker { display: none; }
.control-plane-decision-rules > summary span { display: grid; gap: 3px; }
.control-plane-decision-rules > summary small { color: var(--muted); font-size: 9px; font-weight: 500; }
.control-plane-decision-rules > summary strong { color: var(--ink); font-size: 12px; }
.control-plane-decision-rules > summary b { color: var(--green); font-size: 10px; }
.control-plane-decision-rules > summary b::after { margin-left: 7px; color: var(--muted); content: "+"; font-size: 14px; font-weight: 400; }
.control-plane-decision-rules[open] > summary b::after { content: "−"; }
.control-plane-decision-rules > dl { display: grid; grid-template-columns: 1.25fr 1.25fr .7fr; margin: 0; border-top: 1px solid #edf0ee; }
.control-plane-decision-rules > dl > div { min-width: 0; padding: 12px 16px; border-right: 1px solid #e3e8e5; }
.control-plane-decision-rules > dl > div:last-child { border-right: 0; }
.control-plane-decision-rules dt { color: var(--muted); font-size: 9px; }
.control-plane-decision-rules dd { margin: 5px 0 0; color: var(--ink); font-size: 10px; overflow-wrap: anywhere; }
.control-plane-decision-rules-content { padding: 16px 20px 19px; border-top: 1px solid #edf0ee; color: #37443e; font: 11px/1.72 "SFMono-Regular", Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.control-plane-decision-rules-state { padding: 16px 20px; border-top: 1px solid #edf0ee; color: var(--muted); font-size: 10px; }
.control-plane-decision-rules-unrecorded { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 13px 20px; color: var(--muted); font-size: 10px; }
.control-plane-decision-rules-unrecorded strong { color: var(--muted); }
.control-plane-filters { display: grid; grid-template-columns: repeat(3, minmax(150px, 220px)); gap: 10px; margin-bottom: 12px; }
.control-plane-filters.is-allocation-view { grid-template-columns: minmax(150px, 220px); }
.control-plane-filters label { display: grid; gap: 5px; }
.control-plane-filters label > span { color: var(--muted); font-size: 9px; font-weight: 700; }
.control-plane-filters select { width: 100%; height: 32px; border: 1px solid #c5ceca; border-radius: 3px; padding: 0 9px; background: var(--surface); color: var(--ink); font-size: 11px; }
.control-plane-strategy-head, .control-plane-strategy-row { display: grid; }
.control-plane-strategy-head.has-results, .control-plane-strategy-row.has-results { grid-template-columns: minmax(200px, 1.1fr) minmax(185px, .9fr) 105px 175px minmax(150px, .75fr); }
.control-plane-strategy-head.is-revenue-pool, .control-plane-strategy-row.is-revenue-pool { grid-template-columns: minmax(200px, 1fr) minmax(145px, .65fr) minmax(230px, 1fr) minmax(145px, .65fr); }
.control-plane-strategy-head.is-decision-detail, .control-plane-strategy-row.is-decision-detail { grid-template-columns: minmax(220px, 1.2fr) 120px 180px minmax(165px, .8fr); }
.control-plane-strategy-head { min-height: 37px; border-top: 2px solid #9eaaa4; border-bottom: 1px solid var(--line); padding: 0 14px; background: #f7f9f8; }
.control-plane-strategy-head span { align-self: center; color: var(--muted); font-size: 9px; font-weight: 700; }
.control-plane-strategy-head span small { display: block; margin-top: 2px; color: #7b8781; font-size: 8px; font-weight: 500; }
.control-plane-strategy-list { border-top: 0; }
.control-plane-strategy-row > div { display: grid; align-content: start; gap: 7px; padding: 14px; }
.control-plane-strategy-link code { display: block; margin-top: 4px; color: var(--muted); font-size: 8px; font-weight: 500; }
.control-plane-action-column small { color: var(--muted); font-size: 9px; }
.control-plane-result-column { align-content: center !important; }
.control-plane-result-column > div { display: flex; align-items: baseline; justify-content: space-between; gap: 9px; }
.control-plane-result-column > div > span { color: var(--muted); font-size: 9px; }
.control-plane-result-column > div > strong { font-size: 11px; font-weight: 700; }
.control-plane-result-column > small { color: #53615b; font-size: 9px; font-weight: 650; }
.control-plane-result-column strong small { margin-left: 4px; color: var(--muted); font-size: 8px; font-weight: 600; }
.control-plane-result-column.is-today { background: #f8fbf9; }
.control-plane-result-column .control-plane-money.is-positive { color: var(--green); }
.control-plane-result-column .control-plane-money.is-negative { color: var(--danger); }
.control-plane-resource-column, .control-plane-marginal-column { display: grid; min-width: 0; align-content: start; gap: 7px; padding: 14px; border-right: 1px solid #e3e8e5; }
.control-plane-resource-column .control-plane-resource-fields { grid-template-columns: 1fr; gap: 7px; margin: 0; }
.control-plane-resource-column > strong .control-plane-money { color: var(--ink); font-size: 15px; font-weight: 760; }
.control-plane-resource-column > small { color: var(--muted); font-size: 8px; }
.control-plane-target-change { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 8px; }
.control-plane-target-change .control-plane-money { color: #53615b; font-size: 9px; }
.control-plane-marginal-column { align-content: center; }
.control-plane-allocation-column { align-content: center !important; }
.control-plane-budget-change { display: grid !important; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 7px; align-items: center !important; }
.control-plane-budget-change > span, .control-plane-budget-change > strong { min-width: 0; }
.control-plane-budget-change b { color: var(--muted); font-size: 10px; }
.control-plane-budget-change .control-plane-money { font-size: 12px; white-space: nowrap; }
.control-plane-budget-change > strong .control-plane-money { color: var(--ink); font-size: 13px; }
.control-plane-runtime-column { align-content: center !important; }
.control-plane-runtime-column > strong { color: #46524d; font-size: 11px; }
.control-plane-runtime-column > strong.is-adopted { color: var(--green); }
.control-plane-runtime-column > strong.is-rejected, .control-plane-runtime-column > strong.is-stale { color: var(--danger); }
.control-plane-action.is-pending { border-color: #d7c5a6; background: #fbf7ef; color: #7c653c; }
.control-plane-action.is-unavailable { border-color: #cbd2ce; background: #f5f7f6; color: #68736e; }
.control-plane-action.is-probing { border-color: #a9cad0; background: #f0f8fa; color: #266b78; }
.control-plane-action.is-signal_found { border-color: #a9cfb8; background: #eff8f2; color: #186b45; }
.control-plane-action.is-no_signal, .control-plane-action.is-blocked { border-color: #ddb9ae; background: #fff5f2; color: #954b3a; }
.control-plane-action.is-accepted { border-color: #a9cfb8; background: #eff8f2; color: #186b45; }
.control-plane-action.is-rejected, .control-plane-action.is-retired { border-color: #cbd2ce; background: #f5f7f6; color: #68736e; }
.control-plane-probe-head, .control-plane-probe-row { display: grid; grid-template-columns: minmax(220px, 1.15fr) minmax(165px, .8fr) minmax(210px, 1fr) minmax(155px, .75fr); }
.control-plane-probe-head { min-height: 37px; border-top: 2px solid #8aa5aa; border-bottom: 1px solid var(--line); padding: 0 14px; background: #f6f9f9; }
.control-plane-probe-head span { align-self: center; color: var(--muted); font-size: 9px; font-weight: 700; }
.control-plane-probe-head span small { display: block; margin-top: 2px; font-size: 8px; font-weight: 500; }
.control-plane-probe-group > header { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; min-height: 38px; padding: 11px 14px 9px; border-bottom: 1px solid var(--line); background: #f8faf9; }
.control-plane-probe-group > header strong { color: var(--ink); font-size: 11px; }
.control-plane-probe-group > header span { color: var(--muted); font-size: 9px; }
.control-plane-probe-group + .control-plane-probe-group { margin-top: 18px; border-top: 1px solid #cbd4d0; }
.control-plane-probe-list { background: var(--surface); }
.control-plane-probe-row { border-bottom: 1px solid var(--line); }
.control-plane-probe-row.is-pending { background: #fbfaf8; }
.control-plane-probe-row > div { display: grid; min-width: 0; align-content: start; gap: 7px; padding: 14px; border-right: 1px solid #e3e8e5; }
.control-plane-probe-row > div:last-child { border-right: 0; }
.control-plane-probe-state time, .control-plane-probe-state small { color: var(--muted); font-size: 9px; line-height: 1.4; }
.control-plane-probe-state strong { color: var(--ink); font-size: 12px; font-variant-numeric: tabular-nums; }
.control-plane-probe-state small { overflow-wrap: anywhere; }
.control-plane-result-source { display: block; margin-top: 3px; color: #315f91 !important; font-size: 8px !important; font-weight: 650 !important; }
.control-plane-runtime-column > strong.is-blocked { color: var(--danger); }
.control-plane-runtime-column > strong.is-pending { color: #80652f; }
.control-plane-probe-history { margin-top: 30px; }
.control-plane-probe-exit-list { border-top: 2px solid #9eaaa4; background: var(--surface); }
.control-plane-probe-exit-list article { display: grid; grid-template-columns: 140px minmax(0, 1fr) 110px 80px minmax(230px, .75fr); align-items: center; gap: 16px; min-height: 58px; padding: 8px 14px; border-bottom: 1px solid var(--line); }
.control-plane-probe-exit-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.control-plane-probe-exit-metrics > span { display: grid; gap: 3px; color: var(--ink); font-size: 10px; font-variant-numeric: tabular-nums; }
.control-plane-probe-exit-metrics small { color: var(--muted); font-size: 8px; }
.control-plane-probe-exit-list time { color: var(--muted); font-size: 10px; }
.control-plane-probe-exit-list .control-plane-strategy-link strong { font-size: 11px; }
.control-plane-probe-exit-list .control-plane-strategy-link code { font-size: 8px; }
.control-plane-probe-exit-list article > strong { color: var(--ink); font-size: 10px; font-variant-numeric: tabular-nums; }
.control-plane-other-states { margin-top: 30px; }
.control-plane-state-counts { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px 12px; color: var(--muted); font-size: 9px; }
.control-plane-state-counts b { margin-left: 3px; color: var(--ink); font-variant-numeric: tabular-nums; }
.control-plane-other-state-list { border-top: 2px solid #9eaaa4; background: var(--surface); }
.control-plane-other-state-list article { display: grid; grid-template-columns: minmax(220px, 1fr) 150px 160px; align-items: center; gap: 16px; min-height: 54px; padding: 8px 14px; border-bottom: 1px solid var(--line); }
.control-plane-other-state-list time { color: var(--muted); font-size: 9px; text-align: right; }
.control-plane-transition-head, .control-plane-transition-row { display: grid; grid-template-columns: minmax(220px, 1.15fr) 150px 130px 155px minmax(170px, .8fr); gap: 16px; align-items: center; padding: 0 14px; }
.control-plane-transition-head { min-height: 37px; border-top: 2px solid #9f8f78; border-bottom: 1px solid var(--line); background: #faf8f4; color: var(--muted); font-size: 9px; font-weight: 700; }
.control-plane-transition-list { background: var(--surface); }
.control-plane-transition-row { min-height: 62px; border-bottom: 1px solid var(--line); }
.control-plane-transition-row > div { display: grid; min-width: 0; gap: 5px; }
.control-plane-transition-row time { color: var(--muted); font-size: 9px; }
.control-plane-transition-row strong { color: var(--ink); font-size: 10px; }
.control-plane-transition-row code { color: var(--muted); font-size: 8px; overflow-wrap: anywhere; }
.control-plane-origin-label, .runtime-origin-label { display: inline-flex; width: fit-content; align-items: center; border: 1px solid #b8cce4; border-radius: 3px; padding: 3px 7px; background: #eef4fb; color: #315f91; font-size: 8px; font-weight: 760; line-height: 1; }
.control-plane-strategy-main > .control-plane-origin-label { margin-top: 7px; }
.control-plane-transition-section { margin-top: 20px; }
.control-plane-transition-records { border-top: 2px solid #9f8f78; background: var(--surface); }
.control-plane-transition-record { border-bottom: 1px solid var(--line); background: var(--surface); }
.control-plane-transition-record > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 15px 16px 12px; }
.control-plane-transition-record > header > div { display: grid; min-width: 0; gap: 7px; }
.control-plane-transition-timeline { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0 16px 17px; list-style: none; }
.control-plane-transition-timeline li { position: relative; display: grid; grid-template-columns: 13px minmax(0, 1fr); gap: 8px; min-height: 60px; padding-right: 14px; }
.control-plane-transition-timeline li::before { position: absolute; top: 6px; left: 6px; right: -6px; height: 1px; background: #d8dfdb; content: ""; }
.control-plane-transition-timeline li:last-child::before { right: calc(100% - 6px); }
.control-plane-transition-timeline li > i { position: relative; z-index: 1; width: 13px; height: 13px; border: 2px solid #c4cdc8; border-radius: 50%; background: var(--surface); }
.control-plane-transition-timeline li.is-complete > i { border-color: #2f7b55; background: #2f7b55; }
.control-plane-transition-timeline li.is-current > i { border-color: #b97030; background: #fff4e9; }
.control-plane-transition-timeline li.is-complete::before { background: #88b49d; }
.control-plane-transition-timeline li > div { display: grid; align-content: start; gap: 5px; min-width: 0; }
.control-plane-transition-timeline span { color: var(--muted); font-size: 9px; }
.control-plane-transition-timeline strong { color: var(--ink); font-size: 10px; font-weight: 680; }
.control-plane-transition-timeline small { color: #66716b; font-size: 9px; line-height: 1.45; overflow-wrap: anywhere; }
.control-plane-transition-timeline small .control-plane-money { font-size: inherit; }
.control-plane-resource-disclosure { margin-top: 3px; }
.control-plane-resource-disclosure summary { color: var(--green); font-size: 9px; cursor: pointer; }
.control-plane-resource-disclosure .control-plane-resource-fields { grid-template-columns: 1fr; margin-top: 9px; }
.control-plane-raw-reason { grid-column: 1 / -1; border-top: 1px solid #edf0ee; padding: 9px 14px 12px; }
.control-plane-raw-reason summary { color: var(--muted); font-size: 9px; cursor: pointer; }
.control-plane-raw-reason p { margin: 8px 0 0; color: #52605a; font-size: 10px; line-height: 1.55; }
.control-plane-history { margin-top: 30px; }
.control-plane-history-table { border-top: 2px solid #9eaaa4; background: var(--surface); }
.control-plane-history-head, .control-plane-history-row { display: grid; grid-template-columns: minmax(145px, 1fr) 68px 112px minmax(150px, 1.15fr) 118px 72px; gap: 16px; align-items: center; padding: 0 16px; }
.control-plane-history-head { min-height: 37px; border-bottom: 1px solid var(--line); background: #f7f9f8; color: var(--muted); font-size: 9px; font-weight: 700; }
.control-plane-history-row { min-height: 54px; border-bottom: 1px solid var(--line); color: #4a5751; font-size: 10px; }
.control-plane-history-row:last-child { border-bottom: 0; }
.control-plane-history-row time, .control-plane-history-row .control-plane-money { font-variant-numeric: tabular-nums; }
.control-plane-history-rules { color: var(--muted); }
.control-plane-history-rules.is-recorded { color: #416151; font-weight: 700; }
.control-plane-history-row > a { color: var(--green); font-weight: 700; text-align: right; text-decoration: none; }
.control-plane-history-row > a:hover { text-decoration: underline; }
@media (max-width: 820px) {
  .sidebar { position: static; width: 100%; border-right: 0; border-bottom: 1px solid #d4dad7; }
  .brand { min-height: 58px; padding: 0 14px; }
  .brand-mark { width: 27px; height: 27px; }
  .main-nav { display: flex; flex-direction: row; gap: 5px; overflow-x: auto; padding: 8px 10px; scrollbar-width: none; }
  .main-nav::-webkit-scrollbar { display: none; }
  .nav-section { display: contents; }
  .nav-section-label { display: none; }
  .nav-item { flex: 0 0 auto; min-height: 36px; padding: 0 11px; white-space: nowrap; }
  .workspace-main { margin-left: 0; }
  .action-bar { left: 0; }
  .object-workspace { grid-template-columns: 1fr; }
  .object-list { border-right: 0; border-bottom: 1px solid var(--line); }
  .platform-advertiser-row, .platform-aweme-row { grid-template-columns: minmax(190px, .34fr) minmax(0, .66fr); }
  .platform-auth-row { grid-template-columns: 36px minmax(130px, 1fr); }
  .platform-auth-facts { grid-column: 2; padding-bottom: 3px; }
  .relationship-detail-heading { align-items: flex-start; }
  .relationship-connection-list article { grid-template-columns: 70px 120px minmax(0, 1fr); }
  .relationship-connection-list p { grid-column: 3; }
  .strategy-detail-heading { grid-template-columns: 1fr; gap: 20px; align-items: start; }
  .strategy-detail-heading dl { max-width: 520px; }
  .strategy-detail-title-row { display: grid; gap: 13px; }
  .strategy-governance-actions { justify-content: flex-start; }
  .strategy-editor-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
  .strategy-reference-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategy-reference-grid > div:nth-child(3) { border-left: 0; border-top: 1px solid #e0e5e2; }
  .strategy-reference-grid > div:nth-child(4) { border-top: 1px solid #e0e5e2; }
  .strategy-decision-columns { grid-template-columns: 1fr; gap: 18px; }
  .strategy-result-list article { grid-template-columns: 90px minmax(0, 1fr); }
  .strategy-result-list article > :nth-child(n + 3) { grid-column: 2; }
}

@media (max-width: 720px) {
  .platform-resource-header { align-items: stretch; flex-direction: column; gap: 10px; }
  .platform-resource-header > .button { align-self: flex-start; }
  .app-shell { width: min(100% - 28px, 1180px); padding-top: 22px; }
  .topbar { align-items: flex-start; padding-bottom: 20px; }
  .topbar-actions { gap: 8px; }
  .logout-button { min-height: 44px; }
  h1 { font-size: 23px; }
  .sync-time { max-width: 130px; text-align: right; line-height: 1.5; }
  .overview-view { padding-top: 20px; }
  .overview-controls { display: grid; gap: 12px; align-items: stretch; }
  .overview-periods { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .overview-periods button { padding: 0 6px; }
  .overview-platform-filter { grid-template-columns: auto minmax(0, 1fr); }
  .overview-platform-filter select { width: 100%; }
  .overview-metrics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .overview-metric { min-height: 98px; padding: 13px 12px; border-bottom: 1px solid #e3e8e5; }
  .overview-metric:nth-child(2n) { border-right: 0; }
  .overview-metric > strong { margin-top: 10px; font-size: 17px; }
  .overview-context-grid { grid-template-columns: 1fr; gap: 14px; }
  .overview-freshness-row { grid-template-columns: minmax(80px, .45fr) minmax(0, 1fr) auto; gap: 7px; }
  .overview-footer { display: grid; gap: 7px; }
  .limits-section, .resources-section, .history-section { padding-top: 28px; }
  .governance-status-panel { align-items: stretch; gap: 18px; margin-top: 20px; }
  .governance-edit-heading { display: grid; gap: 10px; margin-top: 20px; }
  .governance-edit-heading p { text-align: left; }
  .current-limit-values { grid-template-columns: 1fr; }
  .current-limit-values > div { min-height: 70px; padding: 15px 16px; }
  .current-limit-values > div + div { border-top: 1px solid var(--line); border-left: 0; }
  .limit-fields { grid-template-columns: 1fr; }
  .limit-fields > label { min-height: 72px; padding: 16px; }
  .limit-fields > label + label { border-top: 1px solid var(--line); border-left: 0; }
  .money-input input { width: 118px; font-size: 21px; }
  .section-heading { align-items: flex-start; }
  .operating-objects-view { padding-top: 20px; }
  .platform-resources-view { padding-top: 20px; }
  .object-tabs { gap: 18px; }
  .object-workspace { min-height: 0; }
  .object-table { min-width: 0; }
  .object-table th, .object-table td { padding-right: 11px; padding-left: 11px; }
  .sku-content-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .sku-content-table tbody { display: block; }
  .sku-content-table tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid var(--line); }
  .sku-content-table tbody tr:last-child { border-bottom: 0; }
  .object-table.sku-content-table tbody td:nth-child(n) { display: block; width: auto; height: auto; min-width: 0; border-bottom: 0; padding-top: 9px; padding-bottom: 11px; }
  .sku-content-table tbody td:first-child { grid-column: 1 / -1; padding-bottom: 2px; }
  .sku-content-table tbody td:nth-child(2)::before, .sku-content-table tbody td:nth-child(3)::before { display: block; margin-bottom: 5px; color: #75807b; font-size: 9px; font-weight: 700; }
  .sku-content-table tbody td:nth-child(2)::before { content: "IP"; }
  .sku-content-table tbody td:nth-child(3)::before { content: "Offer"; }
  .object-detail { padding: 20px 16px 24px; }
  .detail-heading { display: grid; gap: 7px; }
  .detail-heading > code { justify-self: start; }
  .detail-grid { grid-template-columns: 1fr; }
  .detail-grid > div:nth-child(even) { padding-left: 0; border-left: 0; }
  .asset-row { grid-template-columns: 1fr; }
  .asset-row > div { padding-right: 0; }
  .asset-row > dl { padding: 7px 0; border-left: 0; }
  .platform-inventory-summary { grid-template-columns: 1fr; }
  .platform-source-identity { padding: 16px 2px; border-right: 0; }
  .platform-counts { grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); }
  .platform-counts > div { padding: 13px 2px; border-right: 0; border-bottom: 1px solid #e3e8e5; }
  .platform-counts > div:nth-child(even) { padding-left: 16px; border-left: 1px solid #e3e8e5; }
  .platform-snapshot-meta { display: grid; gap: 7px; }
  .platform-source-warning { display: grid; gap: 5px; }
  .platform-resource-tabs { margin-top: 18px; }
  .resource-table { display: block; min-width: 0; }
  .resource-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .resource-table tbody { display: block; }
  .resource-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid var(--line); }
  .resource-table tbody tr:last-child { border-bottom: 0; }
  .resource-table td { display: block; width: auto; height: auto; min-height: 66px; padding: 11px 13px; border-bottom: 0; }
  .resource-table td:first-child { grid-column: 1 / -1; min-height: 62px; border-bottom: 1px solid #edf0ee; }
  .resource-table td::before { content: attr(data-label); display: block; margin-bottom: 5px; color: #75807b; font-size: 9px; font-weight: 700; }
  .resource-table td:first-child::before { display: none; }
  .resource-table td:nth-child(even) { border-right: 1px solid #edf0ee; }
  .platform-shop-heading { grid-template-columns: 38px minmax(0, 1fr); padding: 11px 12px; }
  .platform-shop-heading > b { grid-column: 2; }
  .platform-advertiser-row, .platform-aweme-row { grid-template-columns: 1fr; }
  .platform-advertiser-identity, .platform-aweme-identity { padding: 14px 12px; border-right: 0; border-bottom: 1px solid #e3e8e5; }
  .platform-auth-row { grid-template-columns: 34px minmax(0, 1fr); padding: 11px 12px; }
  .platform-auth-facts { grid-column: 2; }
  .shop-avatar, .platform-avatar, .aweme-avatar { width: 34px; height: 34px; }
  .aweme-avatar.large { width: 42px; height: 42px; }
  .governance-aweme-row { grid-template-columns: 1fr; }
  .authorization-shop-list { gap: 30px; padding-top: 22px; }
  .authorization-shop-heading { display: grid; gap: 8px; }
  .authorization-shop-heading > span { white-space: normal; }
  .authorization-shop-permissions { padding-top: 15px; }
  .authorization-shop-permissions + .authorization-shop-permissions { padding-top: 20px; }
  .authorization-account-row { grid-template-columns: 1fr; gap: 13px; padding: 14px 13px; }
  .authorization-switches { justify-content: space-between; gap: 12px; }
  .current-authorization-states { justify-content: flex-start; }
  .governance-aweme-identity { padding: 15px 13px; border-right: 0; border-bottom: 1px solid #e3e8e5; }
  .governance-aweme-identity b { margin-top: 8px; }
  .governance-product-option { grid-template-columns: 20px minmax(0, 1fr); min-height: 66px; padding: 11px 13px; }
  .governance-product-status, .unavailable-badge { grid-column: 2; justify-self: start; }
  .unavailable-authorizations > header { display: grid; gap: 4px; }
  .unavailable-authorization-row { grid-template-columns: 1fr; gap: 9px; }
  .unavailable-authorization-row .button { justify-self: start; }
  .publish-dialog-backdrop { align-items: end; padding: 12px; }
  .publish-dialog { max-height: calc(100vh - 24px); }
  .publish-dialog > header { padding: 20px 18px 17px; }
  .publish-change-list > div { grid-template-columns: 1fr; gap: 7px; min-height: 0; padding: 12px 18px; }
  .publish-change-list dd { text-align: left; }
  .publish-acknowledgment { margin: 17px 18px; }
  .publish-dialog > footer { display: grid; grid-template-columns: 1fr 1fr; padding: 14px 18px 18px; }
  .relationships-view { padding-top: 20px; }
  .relationship-productivity { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .relationship-productivity > div { border-top: 1px solid #e2e7e4; }
  .relationship-productivity > div:first-child, .relationship-productivity > div:nth-child(2) { border-top: 0; }
  .relationship-productivity > div:nth-child(2n) { border-right: 0; }
  .relationship-productivity > div:last-child { grid-column: auto; border-right: 0; }
  .relationship-filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .relationship-search { grid-column: 1 / -1; }
  .relationship-table-wrap { overflow: hidden; }
  .relationship-table { display: block; min-width: 0; }
  .relationship-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .relationship-table tbody { display: block; }
  .relationship-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid #cfd7d3; }
  .relationship-table tbody tr:last-child { border-bottom: 0; }
  .relationship-table td:nth-child(n) { display: block; width: auto; height: auto; min-width: 0; padding: 12px 13px; border-bottom: 0; }
  .relationship-table td:nth-child(1) { grid-column: 1 / -1; }
  .relationship-table td:nth-child(1) { padding-top: 16px; padding-bottom: 10px; }
  .relationship-table td:nth-child(2), .relationship-table td:nth-child(3), .relationship-table td:nth-child(4) { border-top: 1px solid #edf0ee; }
  .relationship-table td:nth-child(2) { border-right: 1px solid #edf0ee; }
  .relationship-table td:nth-child(4) { grid-column: 1 / -1; }
  .relationship-table td::before { content: attr(data-label); display: block; margin-bottom: 6px; color: #75807b; font-size: 9px; font-weight: 700; }
  .relationship-table td:first-child::before { display: none; }
  .relationship-detail-view { padding-top: 16px; }
  .relationship-detail-heading { padding-top: 14px; }
  .relationship-detail-heading h2 { font-size: 23px; }
  .relationship-statement p { font-size: 16px; }
  .relationship-detail-section { padding: 27px 0; }
  .relationship-core-grid { grid-template-columns: 1fr; padding: 0; }
  .relationship-core-grid > div, .relationship-core-grid > div:first-child, .relationship-core-grid > div:last-child { padding: 20px 0; border-top: 1px solid #d8dfdb; border-left: 0; }
  .relationship-core-grid > div:first-child { border-top: 0; }
  .relationship-decision-grid, .relationship-value-grid, .relationship-update-grid { grid-template-columns: 1fr; }
  .relationship-decision-grid > div, .relationship-value-grid > div, .relationship-update-grid > div { padding: 22px 0; }
  .relationship-decision-grid > div + div, .relationship-value-grid > div + div, .relationship-update-grid > div + div { padding: 22px 0; border-top: 1px solid #d8dfdb; border-left: 0; }
  .relationship-assessment-grid { grid-template-columns: 1fr; }
  .relationship-assessment-grid > div, .relationship-assessment-grid > div:nth-child(even) { padding: 17px 0; border-left: 0; }
  .relationship-source-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .relationship-source-summary > div, .relationship-source-summary > div:last-child { border-right: 0; border-bottom: 0; }
  .relationship-source-summary > div:nth-child(odd) { border-right: 1px solid #e1e6e3; }
  .relationship-source-summary > div:nth-child(n + 3) { border-top: 1px solid #e1e6e3; }
  .relationship-evidence-item header { grid-template-columns: auto minmax(0, 1fr); }
  .relationship-evidence-item time { grid-column: 2; }
  .relationship-evidence-item footer { grid-template-columns: 1fr; gap: 6px; }
  .relationship-strategy-use > header { align-items: flex-start; }
  .relationship-strategy-use-body { grid-template-columns: 1fr; gap: 18px; }
  .relationship-strategy-compact { grid-template-columns: 48px minmax(0, 1fr); gap: 7px 12px; padding: 13px 0; }
  .relationship-strategy-compact > p, .relationship-strategy-compact > div { grid-column: 2; }
  .relationship-strategy-compact > div { justify-items: start; text-align: left; }
  .relationship-connection-list article { grid-template-columns: 70px minmax(0, 1fr); gap: 8px 14px; }
  .relationship-connection-list a, .relationship-connection-list p { grid-column: 2; }
  .relationship-history-grid { grid-template-columns: 1fr; gap: 28px; }
  .relationship-result-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .relationship-result-metrics > div:nth-child(4n) { border-right: 1px solid #e0e6e3; }
  .relationship-result-metrics > div:nth-child(2n) { border-right: 0; }
  .relationship-result-metrics > div:nth-child(n + 3) { border-top: 1px solid #e0e6e3; }
  .relationship-detail-disclosure > summary { padding: 17px 0; }
  .relationship-disclosure-body { padding-left: 0; }
  .relationship-record-metadata dl { grid-template-columns: 1fr; gap: 14px; }
  .strategies-view { padding-top: 20px; }
  .strategy-governance-header { align-items: stretch; flex-direction: column; gap: 12px; }
  .strategy-governance-header > .button { align-self: flex-start; }
  .strategy-process-tabs { gap: 18px; margin-bottom: 16px; }
  .strategy-lifecycle-tabs { gap: 6px; }
  .strategy-lifecycle-tabs button { flex: 1 1 auto; padding: 0 9px; }
  .strategy-productivity { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategy-productivity > div:nth-child(2n) { border-right: 0; }
  .strategy-productivity > div:nth-child(n + 3) { border-top: 1px solid #e2e7e4; }
  .formation-runs-toolbar { align-items: center; gap: 12px; margin-bottom: 16px; }
  .formation-runs-toolbar .strategy-process-tabs { min-width: 0; overflow-x: auto; }
  .formation-runs-toolbar > .button { min-height: 36px; padding: 0 13px; white-space: nowrap; }
  .strategy-filter-bar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .strategy-filter { min-width: 0; }
  .strategy-table-wrap { overflow: hidden; }
  .strategy-table { display: block; min-width: 0; }
  .strategy-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .strategy-table tbody { display: block; }
  .strategy-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid #cfd7d3; }
  .strategy-table tbody tr:last-child { border-bottom: 0; }
  .strategy-table td:nth-child(n) { display: block; width: auto; height: auto; min-width: 0; padding: 12px 13px; border-bottom: 0; }
  .strategy-table td:nth-child(1) { grid-column: 1 / -1; }
  .strategy-table td:nth-child(1) { padding-top: 16px; padding-bottom: 10px; }
  .strategy-table td:nth-child(2), .strategy-table td:nth-child(4) { border-right: 1px solid #edf0ee; }
  .strategy-table td:nth-child(6) { grid-column: 1 / -1; border-top: 1px solid #edf0ee; border-right: 0; }
  .strategy-table td::before { content: attr(data-label); display: block; margin-bottom: 6px; color: #75807b; font-size: 9px; font-weight: 700; }
  .strategy-table td:first-child::before { display: none; }
  .formation-run-table-wrap { overflow: hidden; }
  .formation-run-table { display: block; min-width: 0; }
  .formation-run-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .formation-run-table tbody { display: block; }
  .formation-run-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid #cfd7d3; }
  .formation-run-table tbody tr:last-child { border-bottom: 0; }
  .formation-run-table td { display: block; width: auto; height: auto; min-width: 0; min-height: 0; padding: 12px 13px; border-bottom: 0; }
  .formation-run-table td:first-child, .formation-run-table td:nth-child(4), .formation-run-table td:nth-child(5) { grid-column: 1 / -1; }
  .formation-run-table td + td { border-top: 1px solid #edf0ee; }
  .formation-run-table td::before { content: attr(data-label); display: block; margin-bottom: 6px; color: #75807b; font-size: 9px; font-weight: 700; }
  .formation-run-table td:first-child { padding-top: 16px; }
  .formation-detail-facts { grid-template-columns: 1fr; }
  .formation-detail-facts > div, .formation-detail-facts > div + div { padding: 14px 0; border-left: 0; }
  .formation-run-detail-view .strategy-process-tabs { margin-top: 18px; }
  .strategy-detail-view { padding-top: 16px; }
  .strategy-detail-heading { padding-top: 14px; }
  .strategy-detail-heading h2 { font-size: 23px; }
  .strategy-detail-heading dl > div { grid-template-columns: 78px minmax(0, 1fr); }
  .strategy-detail-section { padding: 28px 0; }
  .strategy-business-section { grid-template-columns: 1fr; }
  .strategy-business-section > div { padding: 22px 0; }
  .strategy-business-section > div + div { padding: 22px 0; border-top: 1px solid #d8dfdb; border-left: 0; }
  .formation-run-heading { display: grid; gap: 7px; }
  .formation-run-facts { grid-template-columns: 1fr; }
  .formation-run-facts > div, .formation-run-facts > div:nth-child(even) { padding: 14px 0; border-left: 0; }
  .formation-source-list article { grid-template-columns: 1fr; gap: 5px; }
  .strategy-reference-grid { grid-template-columns: 1fr; }
  .strategy-reference-grid > div { min-height: 0; padding: 15px 2px; }
  .strategy-reference-grid > div + div, .strategy-reference-grid > div:nth-child(3), .strategy-reference-grid > div:nth-child(4) { border-top: 1px solid #e0e5e2; border-left: 0; }
  .strategy-decision-section { grid-template-columns: 1fr; }
  .strategy-decision-section > header { padding: 18px 0 14px; }
  .strategy-decision-body { padding: 0 0 22px; border-left: 0; }
  .strategy-decision-columns { gap: 16px; }
  .strategy-revision-facts, .strategy-revision-json { grid-template-columns: 1fr; }
  .strategy-revision-facts > div, .strategy-revision-facts > div + div { padding: 12px 0; border-left: 0; border-top: 1px solid #e4e8e6; }
  .strategy-revision-facts > div:first-child { border-top: 0; }
  .strategy-revision-item > summary { grid-template-columns: 1fr auto; gap: 5px 10px; padding: 11px 2px; }
  .strategy-revision-item > summary small { grid-column: 2; grid-row: 1; }
  .strategy-revision-item > summary time { grid-column: 1 / -1; }
  .strategy-editor-view { padding-top: 16px; }
  .strategy-editor-form footer, .strategy-dialog footer { justify-content: stretch; }
  .strategy-editor-form footer .button, .strategy-dialog footer .button { flex: 1; }
  .strategy-dialog-backdrop { align-items: end; padding: 12px; }
  .strategy-dialog > header { padding: 19px 18px 16px; }
  .strategy-dialog form { padding: 16px 18px 18px; }
  .strategy-relationship-row { grid-template-columns: 1fr; }
  .strategy-relationship-row > div { padding: 14px 0; }
  .strategy-relationship-row > div + div { border-top: 1px solid #e3e8e5; border-left: 0; }
  .strategy-hypothesis-list header { align-items: flex-start; }
  .strategy-hypothesis-list header code { overflow-wrap: anywhere; }
  .strategy-meaning-grid { grid-template-columns: 1fr; }
  .strategy-meaning-grid > div { padding: 15px 2px; }
  .strategy-meaning-grid > div + div { border-top: 1px solid #e0e5e2; border-left: 0; }
  .strategy-allocation-case { grid-template-columns: 1fr; }
  .strategy-allocation-case > div, .strategy-allocation-case > div:nth-child(even) { padding: 15px 2px; border-left: 0; }
  .strategy-result-list article { grid-template-columns: 1fr; gap: 7px; }
  .strategy-result-list article > :nth-child(n) { grid-column: auto; }
  .strategy-question-list > div { grid-template-columns: 1fr; gap: 8px; }
  .strategy-learning-list > article { grid-template-columns: 1fr; gap: 10px; }
  .strategy-learning-list header { grid-row: auto; }
  .strategy-learning-list dl > div { grid-template-columns: 62px minmax(0, 1fr); }
  .strategy-comparison dl > div { grid-template-columns: 1fr; gap: 7px; }
  .strategy-contract-section pre { max-width: 100%; padding: 15px; font-size: 10px; }
  .control-plane-view, .control-plane-detail-view { padding-top: 20px; }
  .control-plane-overview-summary > header { display: grid; gap: 12px; padding: 15px 14px 13px; }
  .control-plane-overview-links { justify-items: start; }
  .control-plane-overview-links > span { text-align: left; }
  .control-plane-overview-summary > dl { grid-template-columns: 1fr; }
  .control-plane-overview-summary > dl > div { padding: 13px 12px; border-bottom: 1px solid #e3e8e5; }
  .control-plane-overview-summary > dl > div:nth-child(even) { border-right: 0; }
  .control-plane-overview-summary dd, .control-plane-overview-summary dd .control-plane-money { font-size: 17px; }
  .control-plane-overview-reason { grid-template-columns: 1fr; gap: 5px; padding: 11px 12px; }
  .control-plane-summary-heading, .control-plane-allocation header { display: grid; gap: 12px; padding: 16px 14px 13px; }
  .control-plane-summary-time { justify-items: start; text-align: left; }
  .control-plane-summary-grid, .control-plane-allocation-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-plane-allocation-meta { grid-template-columns: 1fr; }
  .control-plane-summary-grid > div, .control-plane-allocation-meta > div { padding: 11px 12px; border-bottom: 1px solid #e3e8e5; }
  .control-plane-summary-grid > div:nth-child(4n), .control-plane-allocation-meta > div:nth-child(4n) { border-right: 1px solid #e3e8e5; }
  .control-plane-summary-grid > div:nth-child(2n), .control-plane-allocation-meta > div:nth-child(2n) { border-right: 0; }
  .control-plane-allocation-meta > div:nth-child(n) { border-right: 0; }
  .control-plane-reasons { padding: 12px 13px 14px; }
  .control-plane-allocation-empty > p { padding: 0 14px 16px; }
  .control-plane-strategy-section { margin-top: 24px; }
  .control-plane-section-heading { align-items: start; }
  .control-plane-strategy-list { border-top-width: 1px; }
  .control-plane-strategy-row { display: block; }
  .control-plane-strategy-row > div { padding: 14px 13px; border-right: 0; border-bottom: 1px solid #edf0ee; }
  .control-plane-strategy-row > div:last-child { border-bottom: 0; }
  .control-plane-value-column { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-plane-value-column .column-label { grid-column: 1 / -1; }
  .control-plane-review-value-note { grid-column: 1 / -1; }
  .control-plane-allocation-column, .control-plane-runtime-column { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: baseline; }
  .control-plane-allocation-column .column-label, .control-plane-runtime-column .column-label { grid-column: 1 / -1; }
  .control-plane-allocation-column .control-plane-resource-fields, .control-plane-runtime-column small { grid-column: 1 / -1; }
  .control-plane-overview-summary > dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-plane-overview-summary > dl > div:last-child { grid-column: 1 / -1; }
  .control-plane-overview-summary dd { font-size: 16px; }
  .control-plane-decision-body { grid-template-columns: 1fr; gap: 9px; padding: 13px 14px; }
  .control-plane-record-meta dl { grid-template-columns: 1fr; }
  .control-plane-record-meta dl > div, .control-plane-record-meta dl > div:nth-child(3n) { border-right: 0; border-bottom: 1px solid #edf0ee; }
  .control-plane-decision-rules > dl { grid-template-columns: 1fr; }
  .control-plane-decision-rules > dl > div { border-right: 0; border-bottom: 1px solid #edf0ee; }
  .control-plane-filters { grid-template-columns: 1fr; }
  .control-plane-strategy-head { display: none; }
  .control-plane-strategy-row, .control-plane-strategy-row.has-results, .control-plane-strategy-row.is-decision-detail, .control-plane-strategy-row.is-revenue-pool { display: grid; grid-template-columns: 1fr 1fr; }
  .control-plane-strategy-row > div { border-right: 0; }
  .control-plane-strategy-main, .control-plane-result-column, .control-plane-raw-reason { grid-column: 1 / -1; }
  .control-plane-resource-column, .control-plane-marginal-column { border-right: 0; }
  .control-plane-result-column { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-plane-result-column > small { grid-column: 1 / -1; }
  .control-plane-allocation-column, .control-plane-runtime-column { display: grid; grid-template-columns: 1fr; }
  .control-plane-budget-change { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important; }
  .control-plane-history-head { display: none; }
  .control-plane-history-row { grid-template-columns: 1fr auto; gap: 7px 16px; padding: 12px 14px; }
  .control-plane-history-row > span:nth-child(3), .control-plane-history-row > span:nth-child(4), .control-plane-history-row > span:nth-child(5) { grid-column: 1 / -1; }
  .action-bar { padding: 12px 14px; }
  .form-status { display: none; }
  .actions { width: 100%; display: grid; grid-template-columns: 1fr 1fr 1.15fr; }
  .button { padding: 0 10px; font-size: 13px; }
}

/* Creative production */
.creative-view { padding: 26px 0 70px; }
.creative-page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; padding: 0 0 20px; }
.creative-page-heading > div:first-child { min-width: 0; }
.creative-page-heading > div:first-child > span { display: block; color: var(--green); font-size: 10px; font-weight: 700; }
.creative-page-heading h2 { margin: 5px 0 0; color: var(--ink); font-size: 22px; line-height: 1.35; overflow-wrap: anywhere; }
.creative-page-heading .button, .creative-row-actions .button, .creative-result-meta .button, .creative-heading-actions .button { display: inline-flex; align-items: center; justify-content: center; font-size: 11px; text-decoration: none; }
.button.text-button { min-height: 34px; border-color: transparent; padding: 0 8px; background: transparent; color: var(--green); font-size: 11px; }
.button.text-button:hover { border-color: #aac0b5; background: #f5f8f6; }
.icon-button { display: inline-grid; place-items: center; width: 40px; height: 40px; flex: 0 0 40px; border: 1px solid #bdc8c2; border-radius: 4px; background: #fff; color: #4f5d56; font-size: 18px; line-height: 1; cursor: pointer; }
.icon-button:hover { border-color: #7e9187; color: var(--green); }
.icon-button:focus-visible, .creative-view input:focus-visible, .creative-view textarea:focus-visible, .creative-view select:focus-visible, .creative-view button:focus-visible, .creative-view a:focus-visible { outline: 2px solid #2c7153; outline-offset: 2px; }
.creative-toolbar { display: grid; grid-template-columns: minmax(220px, 1fr) 190px 40px; gap: 12px; align-items: end; padding: 14px 16px; border: 1px solid var(--line); border-bottom: 0; background: #fff; }
.creative-toolbar label, .creative-form-grid label, .creative-sku-picker label { display: grid; gap: 7px; min-width: 0; color: #4d5953; font-size: 10px; font-weight: 700; }
.creative-toolbar input, .creative-toolbar select, .creative-form-grid input:not([type="checkbox"]), .creative-form-grid textarea, .creative-form-grid select, .creative-sku-picker input, .creative-sku-picker select, .creative-repeat-row input, .creative-repeat-row textarea, .creative-preference-row input, .creative-preference-row textarea { width: 100%; min-height: 42px; border: 1px solid #bdc8c2; border-radius: 4px; padding: 9px 11px; background: #fff; color: var(--ink); font: 12px/1.5 inherit; resize: vertical; }
.creative-batch-head, .creative-batch-row { display: grid; grid-template-columns: minmax(220px, 1.35fr) minmax(120px, .65fr) minmax(115px, .58fr) minmax(170px, .85fr) minmax(150px, .72fr); gap: 16px; align-items: center; padding: 0 16px; }
.creative-batch-head { min-height: 38px; border: 1px solid var(--line); background: #f6f8f7; color: var(--muted); font-size: 9px; font-weight: 700; }
.creative-batch-list { border: 1px solid var(--line); border-top: 0; background: #fff; }
.creative-batch-row { min-height: 86px; border-bottom: 1px solid #e3e8e5; color: #46524c; font-size: 11px; }
.creative-batch-row:last-child { border-bottom: 0; }
.creative-batch-row > div { min-width: 0; }
.creative-batch-row strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.creative-batch-row span, .creative-batch-row time, .creative-batch-row code { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.creative-batch-product > span { color: #4f6259; }
.creative-row-actions, .creative-heading-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.creative-row-actions .button { min-height: 34px; padding: 0 11px; }
.creative-status { display: inline-flex !important; width: fit-content; min-height: 25px; align-items: center; margin: 0 !important; border-radius: 3px; padding: 0 7px; font-size: 9px !important; font-weight: 750; white-space: nowrap; }
.creative-status.is-pending, .creative-status.is-muted { background: #edf0ef; color: #5d6863; }
.creative-status.is-active { background: #e8f0fa; color: #2d5f9c; }
.creative-status.is-success { background: #e8f4ed; color: #14734a; }
.creative-status.is-warning { background: #f7eedc; color: #79591c; }
.creative-status.is-danger { background: #faeae7; color: #943e35; }
.creative-empty { display: grid; justify-items: start; gap: 8px; min-height: 220px; align-content: center; border: 1px solid var(--line); border-top: 0; padding: 28px; background: #fff; }
.creative-empty strong { font-size: 14px; }
.creative-empty span { color: var(--muted); font-size: 11px; }
.creative-empty .button { display: inline-flex; align-items: center; margin-top: 6px; text-decoration: none; }

.creative-new-view { max-width: 980px; margin: 0 auto; }
#creative-production-form { display: grid; gap: 18px; }
.creative-form-section { border-top: 2px solid #8f9e96; background: #fff; }
.creative-form-section > header { display: flex; gap: 13px; align-items: flex-start; padding: 16px 18px 14px; border-bottom: 1px solid var(--line); }
.creative-form-section > header > span { display: grid; place-items: center; width: 27px; height: 27px; flex: 0 0 27px; border-radius: 3px; background: #edf2ef; color: var(--green); font-size: 9px; font-weight: 800; }
.creative-form-section h3 { margin: 0; font-size: 14px; }
.creative-form-section p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.creative-sku-picker, .creative-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 18px; padding: 18px; }
.creative-search-field { grid-column: 1 / -1; }
.creative-sku-picker label span b, .creative-form-grid label > span b, .creative-source-type legend b { color: var(--danger); }
.creative-selected-sku { grid-column: 1 / -1; display: grid; grid-template-columns: 1.1fr .7fr 1fr auto; gap: 18px; align-items: center; border: 1px solid #d5ddd9; padding: 14px; background: #f8faf9; }
.creative-selected-sku > div { min-width: 0; }
.creative-selected-sku span { display: block; color: var(--muted); font-size: 9px; }
.creative-selected-sku strong { display: block; margin-top: 5px; color: var(--ink); font-size: 12px; overflow-wrap: anywhere; }
.creative-selected-sku code, .creative-selected-sku small { display: block; margin-top: 4px; color: #66716c; font-size: 9px; overflow-wrap: anywhere; }
.creative-source-error { grid-column: 1 / -1; border-left: 3px solid var(--danger); padding: 11px 13px; background: #fff5f3; color: #82483f; font-size: 11px; }
.creative-full { grid-column: 1 / -1; }
.creative-layout-setting { display: grid; grid-template-columns: minmax(0, 1fr) 180px; gap: 18px; align-items: start; }
.creative-layout-setting > label { align-self: start; }
.creative-layout-preview { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 12px; align-items: center; margin: 0; }
.creative-layout-canvas { position: relative; width: 72px; aspect-ratio: 9 / 16; overflow: hidden; border: 1px solid #87958e; background: #111714; color: #fff; }
.creative-layout-headline, .creative-layout-subtitles { position: absolute; left: 8%; width: 84%; font-size: 7px; font-weight: 800; line-height: 1.2; text-align: center; }
.creative-layout-headline { color: #f1d45a; }
.creative-layout-video-band { position: absolute; left: 0; display: grid; width: 100%; place-items: center; background: #d6dfda; color: #31443a; font-size: 7px; font-weight: 700; }
.creative-layout-subtitles { border: 1px solid rgb(255 255 255 / 50%); padding: 2px; background: #222b27; }
.creative-layout-preview figcaption { display: grid; gap: 4px; min-width: 0; }
.creative-layout-preview figcaption strong { color: var(--ink); font-size: 10px; }
.creative-layout-preview figcaption code, .creative-layout-preview figcaption span { color: var(--muted); font-size: 8px; overflow-wrap: anywhere; }
.creative-layout-preview-empty { border: 1px dashed #cbd5d0; padding: 14px; color: var(--muted); font-size: 10px; }
.creative-source-type { grid-column: 1 / -1; min-width: 0; margin: 0; border: 0; padding: 0; }
.creative-source-type legend { margin-bottom: 8px; color: #4d5953; font-size: 10px; font-weight: 700; }
.segmented-control { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; padding: 4px; background: #edf1ef; }
.segmented-control label { position: relative; min-width: 0; cursor: pointer; }
.segmented-control input { position: absolute; opacity: 0; pointer-events: none; }
.segmented-control span { display: flex; min-height: 36px; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 3px; color: #5d6963; font-size: 10px; font-weight: 650; text-align: center; }
.segmented-control input:checked + span { border-color: #b9c7c0; background: #fff; color: var(--green); box-shadow: 0 1px 3px rgb(30 45 38 / 8%); }
.segmented-control input:focus-visible + span { outline: 2px solid #2c7153; outline-offset: 1px; }
.creative-repeat-list { display: grid; gap: 9px; }
.creative-repeat-list > span { color: #4d5953; font-size: 10px; font-weight: 700; }
.creative-repeat-row { display: grid; grid-template-columns: minmax(0, 1fr) 40px; gap: 8px; align-items: start; min-width: 0; }
.creative-tag-row { grid-template-columns: minmax(130px, .7fr) 14px minmax(160px, 1fr) 40px; align-items: center; }
.creative-tag-row > span { color: var(--muted); text-align: center; }
.creative-toggle { display: flex !important; min-height: 58px; flex-direction: row !important; align-items: center; gap: 12px !important; border: 1px solid #d5ddd9; padding: 10px 13px; cursor: pointer; }
.creative-toggle input { width: 18px; height: 18px; flex: 0 0 18px; accent-color: var(--green); }
.creative-toggle span { display: grid; gap: 3px; }
.creative-toggle b { color: var(--ink); font-size: 11px; }
.creative-toggle small { color: var(--muted); font-size: 9px; font-weight: 500; }
.creative-tag-list { display: grid; gap: 8px; padding: 18px 18px 8px; }
.creative-form-section > .button.text-button { margin: 0 10px 13px; }
.creative-inline-empty { color: var(--muted); font-size: 10px; }
.creative-form-footer { display: flex; align-items: center; justify-content: space-between; gap: 18px; border-top: 1px solid #cbd4cf; padding: 16px 18px; background: #fff; }
.creative-form-footer > span { color: var(--muted); font-size: 10px; line-height: 1.5; }

.creative-drawer-backdrop, .creative-dialog-backdrop { position: fixed; z-index: 40; inset: 0; display: flex; justify-content: flex-end; background: rgb(16 28 22 / 36%); }
.creative-drawer { width: min(520px, 100%); height: 100%; overflow-y: auto; border-left: 1px solid #cbd4cf; background: #fff; box-shadow: -12px 0 36px rgb(19 31 25 / 12%); }
.creative-drawer > header, .creative-confirm > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--line); padding: 22px 24px 18px; }
.creative-drawer header span, .creative-confirm header span { color: var(--green); font-size: 9px; font-weight: 700; }
.creative-drawer h3, .creative-confirm h3 { margin: 5px 0 0; font-size: 17px; line-height: 1.4; }
.creative-drawer-body { display: grid; gap: 14px; padding: 20px 24px; }
.creative-preference-note { border-left: 3px solid #b58a3d; padding: 10px 12px; background: #fffaf0; color: #6b5732; font-size: 10px; line-height: 1.6; }
.creative-preference-list { display: grid; gap: 9px; }
.creative-preference-row { display: grid; grid-template-columns: minmax(120px, .55fr) minmax(170px, 1fr) 40px; gap: 8px; align-items: start; }
.creative-drawer form > footer, .creative-confirm > footer { display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--line); padding: 16px 24px; }
.creative-dialog-backdrop { align-items: center; justify-content: center; padding: 20px; }
.creative-confirm { width: min(720px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; border: 1px solid #cbd4cf; border-radius: 6px; background: #fff; box-shadow: 0 22px 60px rgb(19 31 25 / 20%); }
.creative-confirm-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 6px 24px 18px; }
.creative-confirm-grid > div { min-width: 0; padding: 14px 12px 12px 0; border-bottom: 1px solid #e4e8e6; }
.creative-confirm-grid > div:nth-child(even) { padding-left: 12px; border-left: 1px solid #e4e8e6; }
.creative-confirm dt, .creative-snapshot dt, .creative-task dt { color: var(--muted); font-size: 9px; }
.creative-confirm dd, .creative-snapshot dd, .creative-task dd { margin: 5px 0 0; color: var(--ink); font-size: 11px; line-height: 1.55; overflow-wrap: anywhere; }
.creative-confirm dd code, .creative-confirm dd small, .creative-snapshot dd code, .creative-snapshot dd small { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; }
.creative-confirm > section { margin: 0 24px; border-top: 1px solid var(--line); padding: 14px 0; }
.creative-confirm h4 { margin: 0 0 9px; font-size: 11px; }
.creative-confirm pre, .creative-confirm p, .creative-snapshot pre { margin: 0; color: #46534d; font: 10px/1.65 "SFMono-Regular", Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.creative-confirm p + p { margin-top: 8px; }

.creative-detail-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) 40px; gap: 1px; border-top: 2px solid #8f9e96; background: #dfe5e2; }
.creative-detail-summary > div { min-width: 0; min-height: 76px; padding: 14px 16px; background: #fff; }
.creative-detail-summary > div > span { display: block; color: var(--muted); font-size: 9px; }
.creative-detail-summary > div > strong { display: block; margin-top: 10px; color: var(--ink); font-size: 13px; overflow-wrap: anywhere; }
.creative-detail-summary .creative-status { margin-top: 9px !important; }
.creative-detail-summary > .icon-button { align-self: center; margin-left: 7px; }
.creative-snapshot, .creative-task-section { margin-top: 20px; border-top: 1px solid var(--line); background: #fff; }
.creative-snapshot > header, .creative-task-section > header { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 14px 16px; border-bottom: 1px solid var(--line); }
.creative-snapshot h3, .creative-task-section h3 { margin: 0; font-size: 13px; }
.creative-snapshot header span, .creative-task-section header span { color: var(--muted); font-size: 9px; }
.creative-snapshot-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; }
.creative-snapshot-grid > div { min-width: 0; padding: 14px 16px; border-right: 1px solid #e4e8e6; border-bottom: 1px solid #e4e8e6; }
.creative-snapshot-grid > div:nth-child(4n) { border-right: 0; }
.creative-snapshot-grid .creative-snapshot-wide { grid-column: span 2; }
.creative-snapshot details { padding: 13px 16px; }
.creative-snapshot summary { color: var(--green); font-size: 10px; font-weight: 700; cursor: pointer; }
.creative-snapshot details pre { margin-top: 12px; border: 1px solid #e0e6e3; padding: 12px; background: #f7f9f8; }
.creative-task-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 16px; }
.creative-task { min-width: 0; border: 1px solid #d9dfdc; border-radius: 5px; padding: 13px; background: #fff; }
.creative-task.needs-review { border-color: #d8bd85; background: #fffdf8; }
.creative-task.awaiting-script { grid-column: span 2; border-color: #d8bd85; background: #fffdf8; }
.creative-task > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; min-height: 40px; }
.creative-task header span { display: block; color: var(--ink); font-size: 11px; font-weight: 700; }
.creative-task header code { display: block; margin-top: 4px; color: var(--muted); font-size: 8px; overflow-wrap: anywhere; }
.creative-video { display: block; width: 100%; aspect-ratio: 9 / 16; max-height: 360px; margin-top: 10px; background: #18201d; object-fit: contain; }
.creative-preview-empty { display: grid; place-items: center; aspect-ratio: 9 / 12; max-height: 250px; margin-top: 10px; border: 1px dashed #ccd5d1; padding: 20px; background: #f6f8f7; color: var(--muted); font-size: 10px; text-align: center; }
.creative-script-editor { display: grid; gap: 8px; margin-top: 10px; }
.creative-script-editor label { color: #5a4930; font-size: 10px; font-weight: 800; }
.creative-script-editor textarea { width: 100%; min-height: 190px; border: 1px solid #c9b782; border-radius: 4px; padding: 11px; background: #fff; color: var(--ink); font: 12px/1.7 inherit; resize: vertical; }
.creative-script-editor .button { justify-self: end; min-height: 40px; }
.creative-spoken-script { white-space: pre-wrap; overflow-wrap: anywhere; }
.creative-script-readonly { margin-top: 10px; border: 1px solid #e0e6e3; padding: 10px; background: #f7f9f8; }
.creative-script-readonly summary { color: var(--green); font-size: 10px; font-weight: 700; cursor: pointer; }
.creative-script-readonly p { margin: 9px 0 0; color: #46534d; font-size: 10px; line-height: 1.7; white-space: pre-wrap; }
.creative-result-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 8px; }
.creative-result-meta code { min-width: 0; color: var(--muted); font-size: 8px; overflow-wrap: anywhere; }
.creative-result-meta .button { min-height: 32px; padding: 0 10px; }
.creative-task dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 13px 0 0; border-top: 1px solid #e4e8e6; padding-top: 11px; }
.creative-task-error, .creative-review-warning { display: grid; gap: 4px; margin-top: 10px; border-left: 3px solid var(--danger); padding: 8px 9px; background: #fff5f3; color: #82483f; font-size: 9px; line-height: 1.5; overflow-wrap: anywhere; }
.creative-review-warning { border-left-color: #b58a3d; background: #fff8e9; color: #6f572a; }
.creative-task > .button { width: 100%; min-height: 44px; margin-top: 10px; font-size: 10px; }

@media (max-width: 980px) {
  .creative-batch-head, .creative-batch-row { grid-template-columns: minmax(190px, 1.2fr) minmax(105px, .55fr) minmax(105px, .55fr) minmax(145px, .75fr) minmax(115px, .6fr); gap: 10px; padding-inline: 12px; }
  .creative-task-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .creative-snapshot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .creative-snapshot-grid > div:nth-child(4n) { border-right: 1px solid #e4e8e6; }
  .creative-snapshot-grid > div:nth-child(2n) { border-right: 0; }
}

@media (max-width: 720px) {
  .creative-view { padding-top: 18px; }
  .creative-page-heading { align-items: flex-start; }
  .creative-page-heading h2 { font-size: 18px; }
  .creative-page-heading > .button { min-height: 44px; padding: 0 12px; }
  .creative-toolbar { grid-template-columns: 1fr 1fr 44px; padding: 12px; }
  .creative-toolbar input, .creative-toolbar select { min-height: 44px; }
  .creative-refresh { width: 44px; height: 44px; }
  .creative-batch-head { display: none; }
  .creative-batch-list { border-top: 1px solid var(--line); }
  .creative-batch-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; min-height: 0; padding: 14px 12px; }
  .creative-batch-product, .creative-row-actions { grid-column: 1 / -1; }
  .creative-batch-row > div:not(.creative-batch-product):not(.creative-row-actions)::before { content: attr(data-label); display: block; margin-bottom: 6px; color: var(--muted); font-size: 8px; font-weight: 700; }
  .creative-row-actions { justify-content: flex-start; border-top: 1px solid #edf0ee; padding-top: 10px; }
  .creative-row-actions .button { min-height: 44px; }
  .creative-sku-picker, .creative-form-grid { grid-template-columns: 1fr; padding: 14px 12px; }
  .creative-layout-setting { grid-template-columns: minmax(0, 1fr) 160px; }
  .creative-search-field, .creative-full, .creative-source-type, .creative-selected-sku { grid-column: 1; }
  .creative-selected-sku { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 12px; }
  .creative-selected-sku > div:first-child, .creative-selected-sku > .button { grid-column: 1 / -1; }
  .creative-selected-sku > .button { min-height: 44px; }
  .segmented-control { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .segmented-control span { min-height: 44px; }
  .creative-repeat-row { grid-template-columns: minmax(0, 1fr) 44px; }
  .creative-repeat-row .icon-button { width: 44px; height: 44px; }
  .creative-tag-row { grid-template-columns: minmax(0, 1fr) 12px minmax(0, 1fr) 44px; }
  .creative-tag-row input { min-width: 0; }
  .creative-form-footer { align-items: stretch; flex-direction: column; padding: 14px 12px; }
  .creative-form-footer .button { min-height: 44px; }
  .creative-drawer-backdrop { align-items: flex-end; }
  .creative-drawer { width: 100%; height: auto; max-height: calc(100vh - 16px); border-top: 1px solid #cbd4cf; border-left: 0; border-radius: 6px 6px 0 0; }
  .creative-drawer > header, .creative-confirm > header { padding: 18px 16px 15px; }
  .creative-drawer-body { padding: 16px; }
  .creative-preference-row { grid-template-columns: minmax(0, .75fr) minmax(0, 1fr) 44px; }
  .creative-drawer form > footer, .creative-confirm > footer { padding: 14px 16px; }
  .creative-drawer form > footer .button, .creative-confirm > footer .button { min-height: 44px; }
  .creative-dialog-backdrop { align-items: flex-end; padding: 0; }
  .creative-confirm { width: 100%; max-height: calc(100vh - 16px); border-right: 0; border-bottom: 0; border-left: 0; border-radius: 6px 6px 0 0; }
  .creative-confirm-grid { grid-template-columns: 1fr; padding-inline: 16px; }
  .creative-confirm-grid > div:nth-child(even) { padding-left: 0; border-left: 0; }
  .creative-confirm > section { margin-inline: 16px; }
  .creative-heading-actions { justify-content: flex-end; }
  .creative-heading-actions .button { min-height: 44px; }
  .creative-detail-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .creative-detail-summary > div { min-height: 68px; padding: 12px; }
  .creative-detail-summary > .icon-button { grid-column: 2; justify-self: end; margin: 7px; }
  .creative-snapshot-grid { grid-template-columns: 1fr; }
  .creative-snapshot-grid > div:nth-child(n) { grid-column: 1; border-right: 0; }
  .creative-task-grid { grid-template-columns: 1fr; padding: 12px; }
  .creative-task { padding: 12px; }
  .creative-task.awaiting-script { grid-column: 1; }
  .creative-video, .creative-preview-empty { max-height: none; }
}

@media (max-width: 430px) {
  .creative-page-heading { display: grid; }
  .creative-page-heading > .button, .creative-heading-actions { justify-self: stretch; }
  .creative-heading-actions { justify-content: stretch; }
  .creative-heading-actions .button { flex: 1; }
  .creative-toolbar { grid-template-columns: 1fr 44px; }
  .creative-toolbar label:first-child { grid-column: 1 / -1; }
  .creative-selected-sku { grid-template-columns: 1fr; }
  .creative-layout-setting { grid-template-columns: 1fr; }
  .creative-layout-preview { grid-template-columns: 64px minmax(0, 1fr); }
  .creative-layout-canvas { width: 64px; }
  .creative-selected-sku > div:nth-child(n) { grid-column: 1; }
  .creative-tag-row { grid-template-columns: minmax(0, 1fr) 10px; }
  .creative-tag-row > input:nth-of-type(2) { grid-column: 1; }
  .creative-tag-row > .icon-button { grid-column: 2; grid-row: 1 / span 2; }
  .creative-preference-row { grid-template-columns: minmax(0, 1fr) 44px; }
  .creative-preference-row textarea { grid-column: 1; }
  .creative-preference-row .icon-button { grid-column: 2; grid-row: 1 / span 2; }
}

.material-performance-view { padding: 28px 0 70px; }
.material-performance-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.material-performance-heading h2 { margin: 5px 0 7px; color: var(--ink); font-size: 23px; line-height: 1.25; }
.material-performance-heading p { max-width: 720px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.material-performance-filter-band { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(180px, 1fr) minmax(150px, .8fr) minmax(140px, .7fr); gap: 10px; align-items: end; padding: 14px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.material-performance-filter-band label { display: grid; gap: 6px; color: var(--muted); font-size: 10px; font-weight: 700; }
.material-performance-filter-band input, .material-performance-filter-band select { width: 100%; min-height: 36px; border: 1px solid #bfc9c4; border-radius: 4px; padding: 0 10px; background: var(--surface); color: var(--ink); font-size: 11px; }
.material-performance-filter-band input:focus-visible, .material-performance-filter-band select:focus-visible { outline: 2px solid var(--green); outline-offset: 1px; }
.material-performance-periods { display: flex; flex-wrap: wrap; gap: 4px; }
.material-performance-periods button { min-height: 36px; border: 1px solid #c5cfca; border-radius: 4px; padding: 0 10px; background: var(--surface); color: #53605a; font-size: 11px; cursor: pointer; }
.material-performance-periods button:hover, .material-performance-periods button[aria-pressed="true"] { border-color: var(--green); background: var(--green-soft); color: var(--green); font-weight: 700; }
.material-performance-custom-range { grid-column: 1 / -1; display: flex; gap: 10px; }
.material-performance-custom-range label { min-width: 180px; }
.material-performance-range { margin: 14px 0; color: var(--muted); font-size: 10px; }
.material-performance-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 2px solid #9eaaa4; border-bottom: 1px solid var(--line); background: var(--surface); }
.material-performance-summary > div { min-width: 0; padding: 16px 18px; border-right: 1px solid #e3e8e5; }
.material-performance-summary > div:last-child { border-right: 0; }
.material-performance-summary span { display: block; color: var(--muted); font-size: 10px; }
.material-performance-summary strong { display: block; margin-top: 8px; color: var(--ink); font-size: 20px; font-variant-numeric: tabular-nums; }
.material-performance-summary strong.is-warning { color: #956034; }
.material-performance-table-section { margin-top: 18px; border: 1px solid var(--line); background: var(--surface); }
.material-performance-table-scroll { overflow: auto; max-height: calc(100vh - 330px); }
.material-performance-table { width: max-content; min-width: 100%; border-collapse: separate; border-spacing: 0; table-layout: fixed; }
.material-performance-table th, .material-performance-table td { min-width: 130px; padding: 11px 12px; border-bottom: 1px solid #e7ebe9; border-right: 1px solid #edf0ee; color: #3b4541; font-size: 10px; line-height: 1.45; text-align: right; vertical-align: middle; font-variant-numeric: tabular-nums; }
.material-performance-table thead th { position: sticky; top: 0; z-index: 2; min-width: 122px; height: 48px; background: #f7f9f8; color: #66736c; font-size: 10px; font-weight: 700; text-align: right; }
.material-performance-table thead th:first-child, .material-performance-table tbody th { left: 0; z-index: 3; min-width: 250px; text-align: left; }
.material-performance-table thead th:first-child { z-index: 4; }
.material-performance-table thead th:nth-child(2), .material-performance-table tbody td:nth-child(2) { min-width: 105px; text-align: left; }
.material-performance-table thead th:nth-child(3), .material-performance-table tbody td:nth-child(3) { min-width: 230px; text-align: left; }
.material-performance-table tbody th, .material-performance-table tbody td { background: var(--surface); }
.material-performance-table tbody tr:hover th, .material-performance-table tbody tr:hover td { background: #f8fbf9; }
.material-performance-table tbody tr:last-child th, .material-performance-table tbody tr:last-child td { border-bottom: 0; }
.material-performance-table th:last-child, .material-performance-table td:last-child { border-right: 0; }
.material-performance-identity { position: sticky; left: 0; z-index: 1; }
.material-performance-identity strong { display: block; max-width: 230px; color: var(--ink); font-size: 11px; overflow-wrap: anywhere; }
.material-performance-identity code, .material-performance-identity small { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; font-weight: 400; overflow-wrap: anywhere; }
.material-performance-identity small { color: #8a6252; }
.material-business-id { color: var(--ink); font-weight: 600; overflow-wrap: anywhere; }
.material-performance-table td.is-missing { color: #9a5b43; }
.material-identity-status { display: inline-flex; border-radius: 3px; padding: 4px 6px; background: #e8efeb; color: #255a42; font-size: 9px; font-weight: 700; }
.material-identity-status.is-unmapped, .material-identity-status.is-unknown { background: #eef0ef; color: #68736e; }
.material-identity-status.is-provisional { background: #f3ead8; color: #75551b; }
.material-performance-footer { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 14px; color: var(--muted); font-size: 10px; }
.material-performance-loading { padding-top: 28px; }

@media (max-width: 900px) {
  .material-performance-filter-band { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .material-performance-periods { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
  .material-performance-view { padding-top: 18px; }
  .material-performance-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .material-performance-heading .button { min-height: 44px; }
  .material-performance-filter-band { grid-template-columns: 1fr; }
  .material-performance-periods { grid-column: auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .material-performance-periods button { min-height: 44px; padding-inline: 5px; }
  .material-performance-custom-range { grid-column: auto; display: grid; grid-template-columns: 1fr 1fr; }
  .material-performance-custom-range label { min-width: 0; }
  .material-performance-filter-band input, .material-performance-filter-band select { min-height: 44px; }
  .material-performance-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .material-performance-summary > div:nth-child(2n) { border-right: 0; }
  .material-performance-summary > div:nth-child(n + 3) { border-top: 1px solid #e3e8e5; }
  .material-performance-table-scroll { max-height: none; }
  .material-performance-footer { line-height: 1.6; }
}

.operations-monitoring-view { display: grid; gap: 16px; padding: 18px 0 70px; color: #172033; }
.operations-monitoring-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-bottom: 14px; border-bottom: 1px solid #d8dee8; }
.operations-window-summary { display: grid; gap: 3px; margin-left: auto; text-align: right; }
.operations-window-summary strong { font-size: 12px; }
.operations-window-summary span { color: #687386; font-size: 10px; }
.operations-date-filter { display: flex; align-items: center; gap: 7px; min-width: 0; }
.operations-date-filter label { color: #52605f; font-size: 11px; font-weight: 700; }
.operations-date-filter select, .operations-date-filter input { height: 32px; border: 1px solid #cbd3df; border-radius: 4px; padding: 0 28px 0 9px; background: #fff; color: #27324a; font: inherit; font-size: 11px; }
.operations-date-filter input { width: 132px; padding-right: 7px; }
.operations-filter-band { display: grid; grid-template-columns: repeat(3, minmax(160px, 1fr)); gap: 10px; padding: 12px 0 2px; }
.operations-filter { display: grid; gap: 5px; min-width: 0; }
.operations-filter > span { color: #52605f; font-size: 10px; font-weight: 700; }
.operations-filter select { width: 100%; height: 34px; border: 1px solid #cbd3df; border-radius: 4px; padding: 0 28px 0 9px; background: #fff; color: #27324a; font: inherit; font-size: 11px; cursor: pointer; }
.operations-filter select:focus-visible { outline: 2px solid #1c5f9e; outline-offset: 2px; }
.operations-strategy-attribution { margin-top: 18px; border: 1px solid #d8e0ea; border-radius: 8px; background: #fff; overflow: hidden; }
.operations-strategy-attribution-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 18px 20px 12px; }
.operations-strategy-attribution-header h2 { margin: 0; font-size: 18px; }
.operations-strategy-attribution-header p { margin: 5px 0 0; color: #64748b; font-size: 12px; }
.operations-strategy-attribution-summary { color: #475569; font-size: 12px; white-space: nowrap; }
.operations-strategy-attribution-note { margin: 0 20px 12px; color: #64748b; font-size: 11px; }
.operations-strategy-attribution-table-wrap { overflow-x: auto; border-top: 1px solid #e2e8f0; }
.operations-strategy-attribution-table { width: 100%; min-width: 1120px; border-collapse: collapse; font-size: 11px; }
.operations-strategy-attribution-table th, .operations-strategy-attribution-table td { padding: 11px 12px; border-bottom: 1px solid #eef2f7; text-align: right; white-space: nowrap; vertical-align: middle; }
.operations-strategy-attribution-table thead th { background: #f8fafc; color: #52605f; font-size: 10px; font-weight: 700; }
.operations-strategy-attribution-table thead th:first-child, .operations-strategy-attribution-table tbody th { text-align: left; }
.operations-strategy-attribution-table tbody tr:hover { background: #f8fbff; }
.operations-strategy-attribution-table tbody tr:last-child th, .operations-strategy-attribution-table tbody tr:last-child td { border-bottom: 0; }
.operations-strategy-name { display: block; max-width: 250px; overflow: hidden; text-overflow: ellipsis; color: #27324a; font-weight: 700; }
.operations-strategy-attribution-table code { display: block; margin-top: 3px; color: #94a3b8; font-size: 10px; font-weight: 400; }
.operations-strategy-attribution-table .is-contribution { font-weight: 700; }
.operations-strategy-current-value { display: block; }
.operations-strategy-previous-value { display: block; margin-top: 3px; color: #94a3b8; font-size: 10px; font-weight: 400; }
.operations-strategy-change { font-weight: 700; }
.operations-strategy-change.is-positive { color: #047857; }
.operations-strategy-change.is-negative { color: #e11d48; }
.operations-strategy-change.is-neutral { color: #64748b; }
.operations-data-status { display: inline-block; border-radius: 3px; padding: 3px 6px; font-size: 10px; font-weight: 700; }
.operations-data-status.is-complete { color: #047857; background: #ecfdf5; }
.operations-data-status.is-warning { color: #b45309; background: #fffbeb; }
.operations-data-status.is-muted { color: #64748b; background: #f1f5f9; }
.operations-strategy-detail-link { color: #4f46e5; font-weight: 700; text-decoration: none; }
.operations-strategy-detail-link:hover { text-decoration: underline; }
.operations-strategy-links { display: inline-flex; flex-direction: column; align-items: flex-end; gap: 5px; }
.operations-custom-range { display: flex; align-items: center; gap: 6px; color: #7b8494; font-size: 10px; }
.operations-custom-range .button { min-height: 32px; }
.operations-refresh { min-height: 32px; }
.operations-north-star { display: grid; gap: 10px; }
.operations-north-star > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.operations-north-star h2 { margin: 0; color: #27324a; font-size: 14px; }
.operations-comparison-window { border-radius: 4px; padding: 4px 7px; background: #f1f3f6; color: #647084; font-size: 10px; white-space: nowrap; }
.operations-comparison-window strong { color: #4338ca; }
.operations-core-grid, .operations-loading { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.operations-core-card { display: grid; grid-template-rows: auto 1fr auto; min-width: 0; min-height: 176px; border: 1px solid #d8dee8; border-radius: 8px; padding: 14px 15px 0; background: #fff; box-shadow: 0 2px 7px rgb(30 41 59 / 4%); }
.operations-core-card.is-contribution { border-color: #a5b4fc; background: #fafaff; box-shadow: 0 3px 11px rgb(79 70 229 / 8%); }
.operations-core-card-header, .operations-core-card-body, .operations-core-card footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; }
.operations-core-card-label { display: flex; align-items: center; gap: 7px; min-width: 0; color: #27324a; font-size: 11px; }
.operations-core-card-label > span { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #64748b; }
.operations-core-card-label strong { overflow-wrap: anywhere; }
.operations-core-card.is-contribution .operations-core-card-label > span { background: #4f46e5; }
.operations-core-card.is-scale .operations-core-card-label > span { background: #0284c7; }
.operations-core-card.is-unit .operations-core-card-label > span { background: #9333ea; }
.operations-core-badge { border-radius: 3px; padding: 3px 5px; background: #e7e9ff; color: #4338ca; font-size: 9px; font-weight: 700; white-space: nowrap; }
.operations-core-formula { color: #7b8494; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; white-space: nowrap; }
.operations-core-card-body { align-items: end; padding: 14px 0 12px; }
.operations-core-measure { min-width: 0; }
.operations-core-card-value { overflow-wrap: anywhere; color: #101827; font-variant-numeric: tabular-nums; font-size: 24px; font-weight: 760; line-height: 1; }
.operations-core-card-meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 6px; min-height: 18px; margin-top: 9px; font-variant-numeric: tabular-nums; font-size: 9px; }
.operations-card-comparison { font-weight: 700; }
.operations-card-comparison.is-positive { color: #047857; }
.operations-card-comparison.is-negative { color: #be123c; }
.operations-card-comparison.is-neutral, .operations-card-comparison.is-muted, .operations-card-previous { color: #7b8494; }
.operations-comparison-badge { border: 1px solid #c7d2fe; border-radius: 3px; padding: 1px 4px; background: #eef2ff; color: #4338ca; font-weight: 700; }
.operations-core-sparkline { display: grid; flex: 0 0 110px; justify-items: end; gap: 2px; color: #929aaa; font-size: 9px; }
.operations-core-sparkline svg { display: block; width: 110px; height: 28px; overflow: visible; }
.operations-sparkline-empty { display: flex; align-items: center; width: 110px; height: 28px; }
.operations-core-card footer { min-height: 39px; border-top: 1px solid #edf0f4; color: #616d80; font-size: 9px; }
.operations-core-card footer > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.operations-core-card footer a { flex: 0 0 auto; color: #4f46e5; font-weight: 700; text-decoration: none; white-space: nowrap; }
.operations-core-card footer a:hover { text-decoration: underline; }
.operations-time-series { margin-top: 0; overflow: hidden; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; box-shadow: 0 1px 2px rgb(0 0 0 / 5%); }
.operations-time-series-header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; width: 100%; gap: 12px; border: 0; border-bottom: 1px solid transparent; padding: 12px 16px; background: rgb(248 250 252 / 90%); color: #0f172a; text-align: left; cursor: pointer; }
.operations-time-series.is-open .operations-time-series-header { border-bottom-color: #e2e8f0; }
.operations-time-series-header:hover { background: rgb(241 245 249 / 80%); }
.operations-time-series-mark { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid #e0e7ff; border-radius: 8px; background: #eef2ff; color: #4338ca; }
.operations-time-series-mark svg, .operations-section-icon svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.operations-time-series-heading { display: grid; min-width: 0; gap: 2px; }
.operations-time-series-heading > span { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.operations-time-series-header strong { color: #0f172a; font-size: 12px; line-height: 16px; }
.operations-time-series-header small { color: #64748b; font-size: 11px; font-weight: 500; line-height: 16px; }
.operations-time-series-badge { border-radius: 4px; padding: 2px 6px; background: #e0e7ff; color: #3730a3; font-size: 10px; font-weight: 650; line-height: 14px; white-space: nowrap; }
.operations-time-series-toggle { display: flex; align-items: center; gap: 8px; color: #4338ca; font-size: 12px; font-weight: 600; white-space: nowrap; }
.operations-time-series-toggle > span { color: #64748b; font-size: 16px; line-height: 1; }
.operations-time-series-body { display: grid; gap: 16px; padding: 16px; }
.operations-time-series-controls { display: grid; justify-items: start; gap: 12px; border-bottom: 1px solid #f1f5f9; padding-bottom: 12px; }
.operations-time-series-metrics, .operations-time-series-display > div { display: flex; flex-wrap: wrap; gap: 6px; border-radius: 8px; padding: 4px; background: rgb(241 245 249 / 90%); }
.operations-time-series-metrics button, .operations-time-series-display button { min-height: 24px; border: 0; border-radius: 6px; padding: 4px 10px; background: transparent; color: #475569; font-size: 12px; font-weight: 500; line-height: 16px; cursor: pointer; }
.operations-time-series-metrics button:hover, .operations-time-series-display button:hover { color: #0f172a; }
.operations-time-series-metrics button[aria-pressed="true"], .operations-time-series-display button[aria-pressed="true"] { background: #fff; color: #312e81; font-weight: 700; box-shadow: 0 1px 2px rgb(0 0 0 / 5%); }
.operations-time-series-display { display: flex; flex-wrap: wrap; gap: 8px; }
.operations-time-series-display > div:last-child button[aria-pressed="true"] { background: #4f46e5; color: #fff; }
.operations-time-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; border: 1px solid rgb(226 232 240 / 70%); border-radius: 8px; padding: 12px; background: rgb(248 250 252 / 70%); }
.operations-time-summary > div { display: grid; min-width: 0; gap: 1px; }
.operations-time-summary span { color: #64748b; font-size: 12px; line-height: 16px; }
.operations-time-summary strong { overflow-wrap: anywhere; color: #0f172a; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 14px; font-variant-numeric: tabular-nums; line-height: 20px; }
.operations-time-summary .is-positive, .operations-time-table .is-positive { color: #047857; }
.operations-time-summary .is-negative, .operations-time-table .is-negative { color: #be123c; }
.operations-time-summary .is-unit { color: #7e22ce; }
.operations-time-chart-panel { overflow: hidden; border: 1px solid #e2e8f0; border-radius: 12px; padding: 12px; background: rgb(248 250 252 / 50%); }
.operations-time-chart-panel > header, .operations-time-table-section > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.operations-time-chart-panel > header { margin-bottom: 8px; }
.operations-time-chart-panel header strong, .operations-time-table-section header strong { display: flex; align-items: center; gap: 6px; color: #1e293b; font-size: 12px; line-height: 16px; }
.operations-time-chart-panel header > span, .operations-time-table-section header > span { color: #94a3b8; font-size: 11px; line-height: 16px; }
.operations-section-icon { display: inline-flex; color: #4f46e5; }
.operations-time-table-section .operations-section-icon { color: #475569; }
.operations-time-series-chart { width: 100%; height: 256px; }
.operations-time-series-chart.is-empty { display: grid; place-items: center; color: #64748b; font-size: 12px; }
.operations-time-table-section { display: grid; gap: 8px; min-width: 0; }
.operations-time-table-scroll { max-width: 100%; overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 8px; }
.operations-time-table { width: 100%; min-width: 1220px; border-collapse: collapse; color: #334155; font-size: 12px; font-variant-numeric: tabular-nums; line-height: 16px; }
.operations-time-table th, .operations-time-table td { border-bottom: 1px solid #f1f5f9; padding: 8px 12px; text-align: right; white-space: nowrap; }
.operations-time-table td { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.operations-time-table th { padding-top: 10px; padding-bottom: 10px; }
.operations-time-table th:first-child, .operations-time-table td:first-child { position: sticky; left: 0; z-index: 1; text-align: left; }
.operations-time-table th { background: #f8fafc; color: #475569; font-weight: 600; }
.operations-time-table td:first-child { background: #fff; color: #1e293b; font-weight: 500; }
.operations-time-table .is-spend, .operations-time-table .is-contribution { color: #0f172a; font-weight: 600; }
.operations-time-table .is-strategy-count { color: #4338ca; font-weight: 500; }
.operations-time-table .is-average-spend { color: #b45309; font-weight: 500; }
.operations-time-table .is-unit { color: #7e22ce; font-weight: 600; }
.operations-time-table .operations-not-applicable { color: #94a3b8; cursor: help; }
.operations-time-table tbody tr.is-alternate td, .operations-time-table tbody tr.is-alternate td:first-child { background: rgb(248 250 252 / 30%); }
.operations-time-table tbody tr:hover td { background: rgb(248 250 252 / 80%); }
.operations-time-table tfoot td { border-top: 1px solid #cbd5e1; border-bottom: 0; padding-top: 10px; padding-bottom: 10px; background: rgb(241 245 249 / 80%); color: #0f172a; font-weight: 700; }
.operations-time-table tfoot td:first-child { z-index: 2; background: #f1f5f9; }
.operations-system-diagnosis { display: grid; gap: 12px; border: 1px solid #cbd5e1; border-radius: 10px; padding: 16px; background: #fff; box-shadow: 0 2px 8px rgb(15 23 42 / 4%); }
.operations-system-diagnosis > summary { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: center; list-style: none; cursor: pointer; }
.operations-system-diagnosis > summary::-webkit-details-marker { display: none; }
.operations-diagnosis-summary-title { display: inline-flex; align-items: center; gap: 8px; color: #1e293b; font-size: 14px; white-space: nowrap; }
.operations-diagnosis-summary-title .operations-section-icon { flex: 0 0 auto; }
.operations-diagnosis-summary-latest { display: grid; min-width: 0; gap: 2px; }
.operations-diagnosis-summary-latest time { color: #94a3b8; font-size: 10px; line-height: 14px; }
.operations-diagnosis-summary-latest strong { overflow: hidden; color: #334155; font-size: 12px; line-height: 17px; text-overflow: ellipsis; white-space: nowrap; }
.operations-diagnosis-summary-toggle { color: #64748b; font-size: 10px; white-space: nowrap; }
.operations-diagnosis-summary-toggle span { display: inline-block; margin-left: 3px; transition: transform .15s ease; }
.operations-system-diagnosis[open] > summary .operations-diagnosis-summary-toggle span { transform: rotate(180deg); }
.operations-diagnosis-body { display: grid; gap: 0; border-top: 1px solid #e2e8f0; padding-top: 12px; }
.operations-diagnosis-record { display: grid; gap: 8px; padding: 0 0 14px; }
.operations-diagnosis-record + .operations-diagnosis-record { border-top: 1px solid #e2e8f0; padding-top: 14px; }
.operations-diagnosis-record > header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.operations-diagnosis-record > header strong { color: #334155; font-size: 12px; }
.operations-diagnosis-record > header time { color: #94a3b8; font-size: 10px; }
.operations-diagnosis-record-conclusion { margin: 0; color: #1e293b; font-size: 12px; font-weight: 700; line-height: 18px; }
.operations-diagnosis-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.operations-diagnosis-title { display: flex; align-items: flex-start; gap: 9px; min-width: 0; }
.operations-diagnosis-title h2 { margin: 0; color: #1e293b; font-size: 14px; line-height: 20px; }
.operations-diagnosis-title p { margin: 2px 0 0; color: #64748b; font-size: 10px; line-height: 15px; }
.operations-diagnosis-state { flex: 0 0 auto; border-radius: 4px; padding: 4px 8px; font-size: 10px; font-weight: 750; }
.operations-diagnosis-state.is-loss, .operations-diagnosis-state.is-decline { color: #be123c; background: #fff1f2; }
.operations-diagnosis-state.is-growth { color: #047857; background: #ecfdf5; }
.operations-diagnosis-state.is-stable { color: #475569; background: #f1f5f9; }
.operations-diagnosis-state.is-insufficient_data { color: #b45309; background: #fffbeb; }
.operations-diagnosis-state.is-warning { color: #b45309; background: #fffbeb; }
.operations-diagnosis-state.is-healthy { color: #047857; background: #ecfdf5; }
.operations-diagnosis-state.is-unavailable { color: #64748b; background: #f1f5f9; }
.operations-diagnosis-conclusion { display: grid; gap: 4px; border-left: 3px solid #6366f1; padding: 10px 13px; background: #f8fafc; }
.operations-diagnosis-conclusion strong { color: #1e293b; font-size: 13px; line-height: 19px; }
.operations-diagnosis-conclusion p { margin: 0; color: #64748b; font-size: 11px; line-height: 17px; }
.operations-diagnosis-findings { display: grid; gap: 0; border-top: 1px solid #e2e8f0; padding-top: 12px; }
.operations-diagnosis-findings > header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 4px; }
.operations-diagnosis-findings > header h3 { margin: 0; color: #334155; font-size: 12px; }
.operations-diagnosis-findings > header span { color: #94a3b8; font-size: 10px; }
.operations-diagnosis-finding { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 11px; padding: 12px 0; border-bottom: 1px solid #f1f5f9; }
.operations-diagnosis-finding:last-child { border-bottom: 0; }
.operations-diagnosis-finding-rank { display: grid; place-items: center; width: 30px; height: 22px; border: 1px solid #d9c9a8; border-radius: 4px; background: #fffaf0; color: #8a6a2e; font-size: 10px; font-weight: 750; }
.operations-diagnosis-finding-copy { min-width: 0; }
.operations-diagnosis-finding-copy header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.operations-diagnosis-finding-copy header strong { color: #1e293b; font-size: 12px; line-height: 17px; }
.operations-diagnosis-finding-copy header span { flex: 0 0 auto; color: #64748b; font-size: 10px; }
.operations-diagnosis-finding-copy p { margin: 4px 0 0; color: #52605a; font-size: 11px; line-height: 17px; }
.operations-diagnosis-evidence { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.operations-diagnosis-evidence > div { display: grid; gap: 3px; min-width: 0; border: 1px solid #e2e8f0; border-radius: 7px; padding: 9px 11px; background: #fff; }
.operations-diagnosis-evidence span, .operations-diagnosis-evidence small { color: #64748b; font-size: 10px; line-height: 14px; }
.operations-diagnosis-evidence strong { overflow-wrap: anywhere; color: #1e293b; font-size: 12px; line-height: 17px; }
.operations-diagnosis-focus { display: grid; gap: 7px; border-top: 1px solid #e2e8f0; padding-top: 11px; }
.operations-diagnosis-focus header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.operations-diagnosis-focus h3 { margin: 0; color: #334155; font-size: 12px; line-height: 17px; }
.operations-diagnosis-focus header p { margin: 0; color: #94a3b8; font-size: 10px; line-height: 15px; }
.operations-diagnosis-list { display: grid; gap: 0; overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 7px; }
.operations-diagnosis-row { display: grid; grid-template-columns: minmax(180px, 1.7fr) repeat(3, minmax(90px, .7fr)) 68px; align-items: center; gap: 10px; min-width: 680px; padding: 9px 11px; border-bottom: 1px solid #f1f5f9; font-size: 11px; }
.operations-diagnosis-row:last-child { border-bottom: 0; }
.operations-diagnosis-row:hover { background: #f8fafc; }
.operations-diagnosis-row > div:not(.operations-diagnosis-identity) { display: grid; gap: 2px; text-align: right; }
.operations-diagnosis-row > div span { color: #94a3b8; font-size: 9px; }
.operations-diagnosis-row > div strong { color: #334155; font-size: 11px; font-variant-numeric: tabular-nums; }
.operations-diagnosis-row .is-positive, .operations-diagnosis-plan-row .is-positive { color: #047857; }
.operations-diagnosis-row .is-negative, .operations-diagnosis-plan-row .is-negative { color: #be123c; }
.operations-diagnosis-identity, .operations-diagnosis-plan-row > div { display: grid; min-width: 0; gap: 2px; }
.operations-diagnosis-identity strong, .operations-diagnosis-plan-row strong { overflow: hidden; color: #334155; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.operations-diagnosis-identity code, .operations-diagnosis-plan-row code { overflow: hidden; color: #94a3b8; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.operations-diagnosis-row a { color: #4f46e5; font-size: 10px; font-weight: 700; text-align: right; text-decoration: none; white-space: nowrap; }
.operations-diagnosis-row a:hover { text-decoration: underline; }
.operations-diagnosis-plan-list { display: grid; gap: 0; overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 7px; }
.operations-diagnosis-plan-row { display: grid; grid-template-columns: minmax(200px, 1fr) 90px 90px 150px; align-items: center; gap: 10px; min-width: 560px; padding: 8px 11px; border-bottom: 1px solid #f1f5f9; font-size: 11px; }
.operations-diagnosis-plan-row:last-child { border-bottom: 0; }
.operations-diagnosis-plan-row > span, .operations-diagnosis-plan-row > strong { font-variant-numeric: tabular-nums; text-align: right; }
.operations-diagnosis-plan-row small { color: #64748b; font-size: 10px; text-align: right; }

.operations-diagnosis-funnel { display: flex; align-items: stretch; gap: 8px; margin: 18px 0; overflow-x: auto; }
.operations-diagnosis-funnel-step { position: relative; display: grid; gap: 4px; min-width: 132px; padding: 12px 14px; border: 1px solid #e2e8f0; background: #f8fafc; }
.operations-diagnosis-funnel-step span { color: #64748b; font-size: 11px; }
.operations-diagnosis-funnel-step strong { color: #1e293b; font-size: 20px; }
.operations-diagnosis-funnel-step i { position: absolute; top: 29px; right: -7px; z-index: 1; color: #94a3b8; font-style: normal; }
.operations-diagnosis-components { border-top: 1px solid #e2e8f0; padding-top: 12px; }
.operations-diagnosis-components > header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 7px; }
.operations-diagnosis-components > header h3 { margin: 0; color: #334155; font-size: 12px; }
.operations-diagnosis-components > header span { color: #94a3b8; font-size: 10px; }
.operations-diagnosis-component { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid #f1f5f9; }
.operations-diagnosis-component-rank { display: grid; place-items: center; width: 20px; height: 20px; border: 1px solid #d6dfda; border-radius: 50%; color: #68736e; font-size: 10px; font-weight: 750; }
.operations-diagnosis-component > div:nth-child(2) { display: grid; gap: 3px; }
.operations-diagnosis-component > div span { color: #64748b; font-size: 10px; line-height: 15px; }
.operations-diagnosis-component > b { display: grid; gap: 2px; min-width: 72px; color: #047857; font-size: 15px; text-align: right; }
.operations-diagnosis-component > b small { color: #047857; font-size: 9px; font-weight: 650; }
.operations-diagnosis-component.is-warning > b { color: #b45309; }
.operations-diagnosis-component.is-warning > b small { color: #b45309; }
.operations-diagnosis-component.is-unavailable > b { color: #94a3b8; }
.operations-diagnosis-component.is-unavailable > b small { color: #94a3b8; }
.operations-diagnosis-day-list { display: grid; gap: 0; overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 7px; }
.operations-diagnosis-day-row { display: grid; grid-template-columns: 150px 110px 110px 110px 80px; align-items: center; gap: 10px; min-width: 520px; padding: 8px 11px; border-bottom: 1px solid #f1f5f9; color: #475569; font-size: 11px; font-variant-numeric: tabular-nums; }
.operations-diagnosis-day-row:last-child { border-bottom: 0; }
.operations-diagnosis-day-row > span, .operations-diagnosis-day-row > strong:not(:first-child), .operations-diagnosis-day-row > small { text-align: right; }
.operations-diagnosis-day-row > strong:first-child { color: #334155; }
.operations-diagnosis-day-row .is-positive { color: #047857; }
.operations-diagnosis-day-row .is-negative { color: #be123c; }
.operations-diagnosis-day-row small { color: #64748b; font-size: 10px; }
.operations-diagnosis-empty { margin: 0; color: #94a3b8; font-size: 11px; }
.operations-diagnosis-next { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; border-radius: 6px; padding: 9px 11px; background: #eef2ff; color: #475569; font-size: 10px; line-height: 15px; }
.operations-diagnosis-next strong { color: #3730a3; }
.operations-diagnosis-next a { margin-left: auto; color: #4338ca; font-weight: 750; text-decoration: none; white-space: nowrap; }
.operations-diagnosis-next a:hover { text-decoration: underline; }
.operations-diagnosis-boundary { display: grid; gap: 4px; color: #64748b; font-size: 10px; line-height: 15px; }
.operations-diagnosis-boundary strong { color: #475569; }
.operations-diagnosis-boundary ul { display: grid; gap: 2px; margin: 0; padding-left: 16px; }
.operations-diagnosis-quality { margin: 0; color: #b45309; font-size: 10px; line-height: 15px; }
.operations-factor-diagnosis { display: grid; gap: 10px; margin-top: 0; }
.operations-factor-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.operations-factor-title { display: flex; align-items: center; gap: 8px; min-width: 0; }
.operations-factor-title h2 { margin: 0; color: #27324a; font-size: 14px; line-height: 20px; }
.operations-factor-title p { margin: 2px 0 0; color: #687386; font-size: 10px; line-height: 15px; }
.operations-factor-note { border: 1px solid #d8dee8; border-radius: 4px; padding: 4px 7px; background: #f8fafc; color: #647084; font-size: 10px; white-space: nowrap; }
.operations-factor-summary { display: flex; min-height: 44px; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #d8dee8; border-radius: 8px; padding: 9px 14px; background: #f8fafc; }
.operations-factor-summary > div { display: flex; align-items: baseline; gap: 10px; min-width: 0; }
.operations-factor-summary > div span { color: #64748b; font-size: 10px; font-weight: 650; }
.operations-factor-summary > div strong { color: #0f172a; font-size: 18px; font-variant-numeric: tabular-nums; line-height: 22px; white-space: nowrap; }
.operations-factor-summary p { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px 16px; margin: 0; font-size: 10px; font-weight: 700; }
.operations-factor-summary .is-positive, .operations-factor-impact.is-positive, .operations-factor-branch-measure .is-positive { color: #047857; }
.operations-factor-summary .is-negative, .operations-factor-impact.is-negative, .operations-factor-branch-measure .is-negative { color: #be123c; }
.operations-factor-summary .is-neutral, .operations-factor-summary .is-muted, .operations-factor-impact.is-neutral, .operations-factor-impact.is-muted, .operations-factor-branch-measure .is-neutral, .operations-factor-branch-measure .is-muted { color: #7b8494; }
.operations-factor-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: stretch; gap: 14px; }
.operations-factor-branch { display: grid; grid-template-rows: auto minmax(0, 1fr); min-width: 0; overflow: hidden; border: 1px solid #d8dee8; border-radius: 8px; padding: 16px; box-shadow: 0 2px 7px rgb(30 41 59 / 4%); }
.operations-factor-branch.is-scale { border-color: #7dd3fc; background: rgb(240 249 255 / 72%); }
.operations-factor-branch.is-efficiency { border-color: #c4b5fd; background: rgb(250 245 255 / 68%); }
.operations-factor-branch > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 43px; border-bottom: 1px solid #dbe3ec; padding: 0 0 10px; }
.operations-factor-branch > header div { min-width: 0; }
.operations-factor-branch > header span { color: #64748b; font-size: 9px; font-weight: 750; }
.operations-factor-branch > header h3 { margin: 4px 0 0; color: #1e293b; font-size: 11px; font-weight: 650; line-height: 16px; }
.operations-factor-branch-measure { display: grid; flex: 0 0 auto; justify-items: end; gap: 2px; font-variant-numeric: tabular-nums; text-align: right; }
.operations-factor-branch-measure strong { color: #0f172a; font-size: 18px; line-height: 22px; white-space: nowrap; }
.operations-factor-branch-measure em { font-size: 9px; font-style: normal; font-weight: 750; line-height: 13px; white-space: nowrap; }
.operations-factor-rows { display: grid; gap: 10px; margin-top: 12px; }
.operations-factor-branch.is-scale .operations-factor-rows { grid-template-rows: repeat(2, minmax(0, 1fr)); }
.operations-factor-branch.is-efficiency .operations-factor-rows { grid-template-rows: repeat(3, minmax(0, 1fr)); }
.operations-factor-row { display: grid; grid-template-columns: minmax(160px, 1fr) minmax(138px, auto) 92px auto; align-items: center; gap: 12px; min-height: 94px; border: 1px solid #dfe5ed; border-radius: 8px; padding: 12px; background: #fff; }
.operations-factor-row.is-emphasis { border-color: #c4b5fd; box-shadow: inset 3px 0 0 #7c3aed, 0 1px 3px rgb(76 29 149 / 5%); background: #fdfcff; }
.operations-factor-branch.is-scale .operations-factor-row { grid-template-columns: minmax(0, 1fr) auto; min-height: 132px; }
.operations-factor-branch.is-scale .operations-factor-trend { grid-column: 1; width: 110px; }
.operations-factor-branch.is-scale .operations-factor-trend svg, .operations-factor-branch.is-scale .operations-sparkline-empty { width: 110px; }
.operations-factor-branch.is-scale .operations-factor-row > button { grid-column: 2; justify-self: end; }
.operations-factor-copy { display: grid; min-width: 0; gap: 5px; }
.operations-factor-copy > div { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.operations-factor-copy strong { color: #27324a; font-size: 11px; line-height: 15px; }
.operations-factor-copy > span { color: #7b8494; font-size: 9px; line-height: 14px; }
.operations-factor-emphasis { border-radius: 3px; padding: 2px 5px; background: #ede9fe; color: #6d28d9; font-size: 8px; font-weight: 750; white-space: nowrap; }
.operations-factor-measure { display: grid; justify-items: end; min-width: 0; gap: 3px; text-align: right; font-variant-numeric: tabular-nums; }
.operations-factor-measure > strong { color: #101827; font-size: 16px; line-height: 20px; white-space: nowrap; }
.operations-factor-measure > span { font-size: 10px; font-weight: 700; line-height: 14px; white-space: nowrap; }
.operations-factor-measure > span.is-positive { color: #047857; }
.operations-factor-measure > span.is-negative { color: #be123c; }
.operations-factor-measure > span.is-neutral, .operations-factor-measure > span.is-muted, .operations-factor-measure small { color: #7b8494; }
.operations-factor-measure small { font-size: 8px; line-height: 12px; white-space: nowrap; }
.operations-factor-impact { border-radius: 3px; padding: 2px 5px; background: #f1f5f9; font-size: 9px; font-style: normal; font-weight: 750; line-height: 13px; white-space: nowrap; }
.operations-factor-trend { width: 92px; color: #94a3b8; }
.operations-factor-trend svg, .operations-factor-trend .operations-sparkline-empty { display: block; width: 92px; height: 28px; font-size: 9px; }
.operations-factor-row > button { border: 0; padding: 0; background: transparent; color: #4f46e5; font-size: 9px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.operations-factor-row > button:hover { text-decoration: underline; }
.operations-structure { display: grid; gap: 10px; }
.operations-structure-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.operations-structure-title { display: flex; align-items: center; gap: 8px; min-width: 0; }
.operations-structure-title h2 { margin: 0; color: #27324a; font-size: 14px; line-height: 20px; }
.operations-structure-header > p { display: flex; align-items: baseline; flex-wrap: wrap; justify-content: flex-end; gap: 4px; margin: 0; color: #7b8494; font-size: 10px; font-variant-numeric: tabular-nums; }
.operations-structure-header > p strong { color: #475569; font-size: 11px; }
.operations-structure-header > p span { margin: 0 3px; color: #c0c7d2; }
.operations-structure-body { display: grid; gap: 16px; border: 1px solid #d8dee8; border-radius: 8px; padding: 16px; background: #fff; box-shadow: 0 2px 7px rgb(30 41 59 / 4%); }
.operations-structure-share { display: grid; gap: 7px; }
.operations-structure-share > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #64748b; font-size: 10px; }
.operations-structure-share > div:first-child strong { color: #334155; font-size: 11px; }
.operations-structure-bar { display: flex; width: 100%; height: 24px; overflow: hidden; border: 1px solid #d8dee8; border-radius: 6px; background: #f1f5f9; box-shadow: inset 0 1px 2px rgb(15 23 42 / 8%); }
.operations-structure-segment { display: flex; height: 100%; align-items: center; justify-content: center; overflow: hidden; color: #fff; font-size: 9px; font-weight: 750; white-space: nowrap; }
.operations-structure-segment.is-positive { background: #10b981; }
.operations-structure-segment.is-negative { background: #f43f5e; }
.operations-structure-segment.is-zero { background: #94a3b8; }
.operations-structure-segment.is-empty { width: 100%; color: #7b8494; background: transparent; font-weight: 500; }
.operations-structure-groups { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.operations-structure-group { min-width: 0; border: 1px solid #d8dee8; border-radius: 8px; padding: 13px; background: #f8fafc; }
.operations-structure-group.is-positive { border-color: #a7f3d0; background: rgb(236 253 245 / 55%); }
.operations-structure-group.is-negative { border-color: #fecdd3; background: rgb(255 241 242 / 55%); }
.operations-structure-group > header { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.operations-structure-group > header strong { display: flex; align-items: center; gap: 7px; color: #27324a; font-size: 11px; }
.operations-structure-group > header strong span { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #94a3b8; }
.operations-structure-group.is-positive > header strong span { background: #10b981; }
.operations-structure-group.is-negative > header strong span { background: #f43f5e; }
.operations-structure-group > header em { color: #7b8494; font-size: 9px; font-style: normal; white-space: nowrap; }
.operations-structure-group dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; margin: 12px 0 0; }
.operations-structure-group dl > div { min-width: 0; }
.operations-structure-group dt { color: #929aaa; font-size: 9px; line-height: 13px; }
.operations-structure-group dd { margin: 3px 0 0; overflow-wrap: anywhere; color: #334155; font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; line-height: 18px; }
.operations-structure-group.is-negative dd.is-contribution { color: #be123c; }
.operations-structure-group.is-positive dd.is-contribution { color: #047857; }
.operations-structure-unavailable { border: 1px solid #d8dee8; border-radius: 8px; padding: 18px; background: #fff; color: #7b8494; font-size: 11px; text-align: center; }
.operations-loading { padding-top: 24px; }
.operations-loading div { height: 176px; border: 1px solid #e0e5ec; border-radius: 8px; background: linear-gradient(90deg, #f3f5f7, #fafbfc, #f3f5f7); background-size: 200% 100%; animation: pulse 1.4s ease infinite; }
.operations-drilldown-shell { display: grid; gap: 24px; padding-top: 24px; }
.operations-back-link { width: fit-content; color: #4f46e5; font-size: 12px; font-weight: 700; text-decoration: none; }
.operations-drilldown-shell > div { border-top: 1px solid #d8dee8; padding-top: 22px; }
.operations-drilldown-shell span { color: #687386; font-size: 11px; }
.operations-drilldown-shell h2 { margin: 6px 0 0; font-size: 20px; }
.operations-strategy-plan-drilldown { gap: 18px; }
.operations-drilldown-heading { display: grid; gap: 4px; }
.operations-drilldown-heading code { color: #94a3b8; font-size: 11px; }
.operations-drilldown-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.operations-drilldown-summary > div { display: grid; gap: 5px; border: 1px solid #d8e0ea; border-radius: 6px; padding: 12px 14px; background: #fff; }
.operations-drilldown-summary strong { color: #27324a; font-size: 16px; }
.operations-strategy-plan-table-wrap { overflow-x: auto; border: 1px solid #d8e0ea; border-radius: 8px; background: #fff; }
.operations-strategy-plan-table { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 12px; }
.operations-strategy-plan-table th, .operations-strategy-plan-table td { padding: 12px 14px; border-bottom: 1px solid #eef2f7; text-align: right; white-space: nowrap; }
.operations-strategy-plan-table thead th { background: #f8fafc; color: #52605f; font-size: 10px; }
.operations-strategy-plan-table thead th:first-child, .operations-strategy-plan-table tbody th { text-align: left; }
.operations-strategy-plan-table tbody tr:last-child th, .operations-strategy-plan-table tbody tr:last-child td { border-bottom: 0; }
.operations-strategy-plan-table .is-contribution { font-weight: 700; }
.operations-drilldown-loading, .operations-drilldown-empty { border: 1px solid #d8e0ea; border-radius: 8px; padding: 22px; background: #fff; color: #687386; font-size: 12px; text-align: center; }
.operations-drilldown-footnote { margin: 0; color: #94a3b8; font-size: 11px; }

@media (max-width: 960px) {
  .operations-monitoring-toolbar { flex-wrap: wrap; }
  .operations-filter-band { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .operations-window-summary { order: 3; width: 100%; margin-left: 0; text-align: left; }
  .operations-core-grid, .operations-loading { grid-template-columns: 1fr; }
  .operations-core-card { min-height: 160px; }
  .operations-time-series-controls, .operations-time-series-display { flex-wrap: wrap; }
  .operations-time-series-display { flex: 1 1 100%; }
  .operations-time-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .operations-factor-grid { grid-template-columns: 1fr; }
  .operations-factor-branch.is-scale .operations-factor-row { min-height: 112px; }
  .operations-structure-groups { grid-template-columns: 1fr; }
  .operations-diagnosis-evidence { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .operations-monitoring-view { padding-top: 14px; }
  .operations-monitoring-toolbar, .operations-north-star > header { align-items: flex-start; }
  .operations-date-filter { width: calc(100% - 64px); flex-wrap: wrap; }
  .operations-filter-band { grid-template-columns: 1fr; }
  .operations-strategy-attribution-header { display: block; }
  .operations-strategy-attribution-summary { display: block; margin-top: 8px; }
  .operations-strategy-links { align-items: flex-start; }
  .operations-drilldown-summary { grid-template-columns: 1fr; }
  .operations-custom-range { width: 100%; flex-wrap: wrap; padding-left: 38px; }
  .operations-custom-range input { flex: 1 1 120px; min-width: 0; }
  .operations-comparison-window { white-space: normal; }
  .operations-core-card { padding-right: 13px; padding-left: 13px; }
  .operations-core-card-body { align-items: center; }
  .operations-core-card-value { font-size: 22px; }
  .operations-core-sparkline { flex-basis: 92px; }
  .operations-core-sparkline svg, .operations-sparkline-empty { width: 92px; }
  .operations-core-card footer { align-items: flex-start; padding: 9px 0; }
  .operations-core-card footer > span { white-space: normal; }
  .operations-time-series-header { align-items: start; padding: 12px 16px; }
  .operations-time-series-heading > span { align-items: flex-start; }
  .operations-time-series-toggle { padding-top: 3px; }
  .operations-time-series-body { padding: 16px; }
  .operations-time-series-metrics { width: 100%; }
  .operations-time-series-display { width: 100%; }
  .operations-time-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .operations-time-chart-panel > header, .operations-time-table-section > header { align-items: flex-start; }
  .operations-time-series-chart { height: 256px; }
  .operations-system-diagnosis { padding: 13px; }
  .operations-system-diagnosis > summary { grid-template-columns: 1fr auto; gap: 9px 12px; align-items: start; }
  .operations-diagnosis-summary-title { grid-column: 1 / -1; }
  .operations-diagnosis-summary-latest strong { white-space: normal; }
  .operations-diagnosis-header { align-items: flex-start; }
  .operations-diagnosis-header, .operations-diagnosis-focus header, .operations-diagnosis-findings > header, .operations-diagnosis-finding-copy header { flex-direction: column; align-items: flex-start; }
  .operations-diagnosis-state { align-self: flex-start; }
  .operations-diagnosis-evidence { grid-template-columns: 1fr; }
  .operations-diagnosis-next { align-items: flex-start; }
  .operations-diagnosis-next a { margin-left: 0; width: 100%; }
  .operations-factor-header { align-items: flex-start; flex-direction: column; }
  .operations-factor-note { white-space: normal; }
  .operations-factor-summary { align-items: flex-start; flex-direction: column; gap: 6px; }
  .operations-factor-summary p { justify-content: flex-start; }
  .operations-factor-branch { padding: 12px; }
  .operations-factor-branch > header { align-items: flex-start; }
  .operations-factor-row { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; }
  .operations-factor-measure { align-self: start; }
  .operations-factor-trend { grid-column: 1; width: 110px; }
  .operations-factor-trend svg, .operations-factor-trend .operations-sparkline-empty { width: 110px; }
  .operations-factor-row > button { grid-column: 2; justify-self: end; }
  .operations-structure-header { align-items: flex-start; flex-direction: column; }
  .operations-structure-header > p { justify-content: flex-start; }
  .operations-structure-body { padding: 12px; }
  .operations-structure-share > div:first-child { align-items: flex-start; }
}

/* Portfolio overview v2: dense comparison surface for the Qianchuan-only first release. */
.overview-view { padding-top: 26px; }
.overview-filter-band { display: grid; grid-template-columns: minmax(250px, 1.55fr) repeat(4, minmax(125px, 1fr)); gap: 10px; align-items: end; padding: 14px 0; border-bottom: 1px solid var(--line); }
.overview-time-filter, .overview-filter, .overview-platform-badge { display: grid; gap: 5px; min-width: 0; }
.overview-time-filter > span, .overview-filter > span, .overview-platform-badge > span { color: var(--muted); font-size: 10px; font-weight: 750; }
.overview-time-filter .overview-periods { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px; }
.overview-periods button { min-height: 32px; padding: 0 8px; }
.overview-filter select { width: 100%; height: 32px; border: 1px solid #bfc9c4; border-radius: 4px; padding: 0 9px; background: var(--surface); color: var(--ink); font-size: 11px; }
.overview-filter select:disabled { opacity: 1; cursor: not-allowed; background: #f6f9f7; color: var(--green); }
.overview-platform-badge strong { display: flex; align-items: center; height: 32px; padding: 0 10px; border: 1px solid #bfc9c4; border-radius: 4px; background: #f6f9f7; color: var(--green); font-size: 11px; }
.overview-custom-range { display: flex; align-items: end; gap: 10px; padding: 10px 0 0; color: var(--muted); font-size: 10px; }
.overview-custom-range label { display: grid; gap: 4px; }
.overview-custom-range input { height: 31px; border: 1px solid #bfc9c4; border-radius: 4px; padding: 0 8px; color: var(--ink); background: var(--surface); font-size: 11px; }
.overview-range-summary { min-height: 29px; margin: 0; padding: 8px 0 0; color: var(--muted); font-size: 11px; }
.overview-results-section, .overview-trend-section, .overview-allocation-section, .overview-plan-section { margin-top: 18px; border-top: 2px solid #9eaaa4; background: var(--surface); }
.overview-results-section > header, .overview-trend-section > header, .overview-allocation-section > header, .overview-plan-section > header { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 15px 18px 12px; border-bottom: 1px solid var(--line); }
.overview-results-section h3, .overview-trend-section h3, .overview-allocation-section h3, .overview-plan-section h3 { margin: 0; color: var(--ink); font-size: 15px; }
.overview-results-section header span, .overview-trend-section header span, .overview-allocation-section header span, .overview-plan-section header span { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; }
.overview-results-section header > b { color: var(--muted); font-size: 10px; font-weight: 600; }
.overview-plan-section header > b { color: var(--muted); font-size: 10px; font-weight: 600; white-space: nowrap; }
.overview-results-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.overview-result-card { min-width: 0; min-height: 136px; padding: 14px 15px 13px; border-right: 1px solid #e3e8e5; }
.overview-result-card:last-child { border-right: 0; }
.overview-result-card.is-primary { box-shadow: inset 4px 0 0 var(--green); background: #fbfdfc; }
.overview-result-card-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 10px; }
.overview-result-card-head b { color: var(--green); font-size: 9px; font-weight: 700; white-space: nowrap; }
.overview-result-card strong { display: block; margin-top: 16px; color: var(--ink); font-size: 21px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.overview-result-card small { display: block; margin-top: 9px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.overview-comparison { display: inline-block; margin-top: 7px; color: #64736b; font-size: 9px; font-variant-numeric: tabular-nums; }
.overview-trend-tabs { display: flex; gap: 4px; }
.overview-trend-tabs button { min-height: 28px; border: 1px solid #cbd4cf; border-radius: 3px; padding: 0 8px; background: #fff; color: var(--muted); font-size: 10px; cursor: pointer; }
.overview-trend-tabs button[aria-pressed="true"] { border-color: var(--green); background: var(--green-soft); color: var(--green); font-weight: 700; }
.overview-trend-chart { min-height: 320px; padding: 4px 10px 10px; }
.overview-trend-control { width: 100%; height: 306px; }
.overview-empty { display: grid; place-items: center; min-height: 210px; margin: 0; color: var(--muted); font-size: 12px; }
.overview-allocation-legend { display: flex; align-items: center; gap: 14px; color: var(--muted); font-size: 10px; }
.overview-allocation-legend span { display: inline-flex !important; align-items: center; gap: 5px; margin: 0 !important; }
.overview-allocation-legend span::before { width: 13px; height: 5px; border-radius: 1px; background: #697a8c; content: ""; }
.overview-allocation-legend .is-positive::before { background: #168454; }
.overview-allocation-legend .is-negative::before { background: #b42318; }
.overview-allocation-table { overflow: hidden; }
.overview-allocation-head, .overview-allocation-row { display: grid; grid-template-columns: minmax(190px, .78fr) minmax(210px, 1fr) minmax(210px, 1fr) 104px; gap: 22px; align-items: center; }
.overview-allocation-head { min-height: 38px; padding: 0 18px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 10px; font-weight: 700; }
.overview-allocation-head span:last-child { text-align: right; }
.overview-allocation-row { min-height: 86px; padding: 11px 18px; border-bottom: 1px solid #e7ebe9; color: #3b4541; font-size: 12px; }
.overview-allocation-row:not(.is-total):hover { background: #fbfdfc; }
.overview-allocation-row:last-child { border-bottom: 0; }
.overview-allocation-identity { min-width: 0; padding-left: 9px; border-left: 3px solid #aab6b0; }
.overview-allocation-row strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.4; }
.overview-allocation-measure { min-width: 0; display: grid; gap: 5px; }
.overview-allocation-measure-meta { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.overview-allocation-measure-meta > span, .overview-allocation-measure > small { color: var(--muted); font-size: 9px; }
.overview-allocation-measure-meta strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.overview-allocation-measure.is-negative .overview-allocation-measure-meta strong { color: var(--danger); }
.overview-allocation-track { position: relative; height: 10px; overflow: hidden; border-radius: 2px; background: #edf1ef; }
.overview-allocation-zero, .overview-allocation-bar { position: absolute; top: 0; bottom: 0; }
.overview-allocation-zero { z-index: 2; width: 1px; background: #98a59f; }
.overview-allocation-bar { min-width: 0; background: #168454; border-radius: 0 2px 2px 0; }
.overview-allocation-bar.is-spend { background: #697a8c; }
.overview-allocation-measure.is-negative .overview-allocation-bar { background: #b42318; border-radius: 2px 0 0 2px; }
.overview-allocation-roi { min-width: 0; display: grid; justify-items: end; gap: 3px; font-variant-numeric: tabular-nums; }
.overview-allocation-roi strong { font-size: 16px; font-weight: 750; }
.overview-allocation-roi span { color: var(--muted); font-size: 9px; }
.overview-allocation-roi.is-positive strong { color: #147a4e; }
.overview-allocation-roi.is-negative strong { color: var(--danger); }
.overview-allocation-roi.is-zero strong, .overview-allocation-roi.is-missing strong { color: var(--muted); }
.overview-allocation-row.is-total { min-height: 72px; border-top: 2px solid #9eaaa4; background: #f5f8f6; font-weight: 700; }
.overview-allocation-row.is-total > div:nth-child(2), .overview-allocation-row.is-total > div:nth-child(3) { display: grid; gap: 4px; }
.overview-allocation-row.is-total > div:nth-child(2) > span, .overview-allocation-row.is-total > div:nth-child(3) > span { color: var(--muted); font-size: 9px; }
.overview-allocation-row.is-total > div:nth-child(2) > strong, .overview-allocation-row.is-total > div:nth-child(3) > strong { font-size: 13px; font-variant-numeric: tabular-nums; }
.overview-plan-table { overflow-x: auto; }
.overview-plan-head, .overview-plan-row { display: grid; grid-template-columns: minmax(220px, 1.25fr) minmax(210px, 1.15fr) minmax(190px, 1fr) repeat(4, minmax(125px, .72fr)); align-items: center; min-width: 1160px; }
.overview-plan-head { min-height: 38px; padding: 0 18px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 10px; font-weight: 700; }
.overview-plan-row { min-height: 72px; padding: 10px 18px; border-bottom: 1px solid #e7ebe9; color: #3b4541; font-size: 12px; font-variant-numeric: tabular-nums; }
.overview-plan-row:last-child { border-bottom: 0; }
.overview-plan-row > * { min-width: 0; }
.overview-plan-row strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.4; }
.overview-plan-row code, .overview-plan-row small { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; line-height: 1.35; overflow-wrap: anywhere; }
.allocation-bar { display: block; height: 5px; margin-top: 7px; border-radius: 3px; background: #edf1ef; overflow: hidden; }
.allocation-bar b { display: block; height: 100%; border-radius: inherit; background: #5d8f76; }
.allocation-bar.profit b { background: #2f61a8; }
.overview-context-grid { margin-top: 18px; }
@media (max-width: 920px) {
  .overview-filter-band { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .overview-time-filter { grid-column: 1 / -1; }
  .overview-results-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .overview-result-card:nth-child(4n) { border-right: 0; }
  .overview-result-card:nth-child(n + 5) { border-top: 1px solid #e3e8e5; }
}
@media (max-width: 720px) {
  .overview-filter-band { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .overview-time-filter { grid-column: 1 / -1; }
  .overview-results-section > header, .overview-trend-section > header, .overview-allocation-section > header, .overview-plan-section > header { display: grid; gap: 10px; align-items: start; padding: 14px 13px 12px; }
  .overview-results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .overview-result-card { min-height: 112px; padding: 12px; }
  .overview-result-card:nth-child(4n) { border-right: 1px solid #e3e8e5; }
  .overview-result-card:nth-child(2n) { border-right: 0; }
  .overview-result-card:nth-child(n + 3) { border-top: 1px solid #e3e8e5; }
  .overview-result-card strong { margin-top: 11px; font-size: 17px; }
  .overview-trend-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .overview-trend-tabs button { width: 100%; }
  .overview-trend-chart { min-height: 290px; padding: 4px 2px 8px; }
  .overview-trend-control { height: 278px; }
  .overview-allocation-legend { flex-wrap: wrap; gap: 7px 12px; }
  .overview-allocation-head { display: none; }
  .overview-allocation-row { grid-template-columns: minmax(0, 1fr) auto; gap: 11px 14px; min-height: 0; padding: 14px 13px; }
  .overview-allocation-measure { grid-column: 1 / -1; }
  .overview-allocation-roi { grid-column: 2; grid-row: 1; align-self: start; }
  .overview-allocation-row.is-total > div:nth-child(2), .overview-allocation-row.is-total > div:nth-child(3) { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: space-between; }
  .overview-allocation-row.is-total .overview-allocation-roi { grid-column: 2; grid-row: 1; }
  .overview-context-grid { grid-template-columns: 1fr; }
  .overview-custom-range { flex-wrap: wrap; }
}

/* Runtime: current Strategy Allocation and reported status. */
.runtime-view, .runtime-detail-view { padding-top: 26px; padding-bottom: 42px; }
.runtime-tabs { margin-top: 20px; }
.runtime-portfolio-summary { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-top: 2px solid #8f9c96; border-bottom: 1px solid var(--line); background: var(--surface); }
.runtime-portfolio-summary > div { min-width: 0; padding: 14px 16px; border-right: 1px solid #e2e7e4; }
.runtime-portfolio-summary > div:last-child { border-right: 0; }
.runtime-portfolio-summary strong { display: block; color: var(--ink); font-size: 18px; font-weight: 720; font-variant-numeric: tabular-nums; white-space: nowrap; }
.runtime-portfolio-summary strong .overview-money { font-size: inherit; }
.runtime-portfolio-summary span { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; }
.runtime-portfolio-summary .is-pending strong { color: #87612c; }
.runtime-portfolio-summary .runtime-summary-readback strong { font-size: 12px; white-space: normal; }
.runtime-list-section, .runtime-detail-section { margin-top: 20px; border-top: 2px solid #9eaaa4; background: var(--surface); }
.runtime-list-section > header, .runtime-detail-section > header { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; padding: 15px 18px 12px; border-bottom: 1px solid var(--line); }
.runtime-list-section h2, .runtime-detail-section h3 { margin: 0; color: var(--ink); font-size: 15px; }
.runtime-list-section header span, .runtime-detail-section header span { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; }
.runtime-list-section header > b, .runtime-detail-section header > b { color: #52635a; font-size: 9px; font-weight: 700; }
.runtime-list-head, .runtime-list-row { display: grid; grid-template-columns: minmax(250px, 1.35fr) minmax(120px, .62fr) minmax(200px, .9fr) minmax(190px, .86fr); gap: 18px; align-items: center; }
.runtime-list-head { min-height: 38px; padding: 0 18px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 9px; font-weight: 700; }
.runtime-list-row { min-height: 86px; padding: 12px 18px; border-bottom: 1px solid #e7ebe9; color: #3e4944; font-size: 11px; text-decoration: none; }
.runtime-list-row:last-child { border-bottom: 0; }
.runtime-list-row:hover { background: #f8fbf9; }
.runtime-list-row > div { min-width: 0; }
.runtime-list-row strong { display: block; color: var(--ink); font-size: 12px; font-weight: 650; line-height: 1.45; }
.runtime-list-row strong .overview-money { font-size: inherit; }
.runtime-list-row small, .runtime-list-strategy span { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.4; overflow-wrap: anywhere; }
.runtime-list-strategy > strong { margin-top: 7px; }
.runtime-pool-label { display: inline-flex !important; width: fit-content; margin-top: 0 !important; border: 1px solid; border-radius: 3px; padding: 3px 7px; font-size: 8px !important; font-weight: 780; }
.runtime-pool-label.is-revenue { border-color: #9fc6b1; background: #e8f3ed; color: #146b45 !important; }
.runtime-pool-label.is-probe { border-color: #adc1dc; background: #eaf1fa; color: #315f91 !important; }
.runtime-lineage-labels { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.runtime-lineage-labels .runtime-origin-label { display: inline-flex !important; margin-top: 0 !important; }
.runtime-pool-transition-notice { border-top: 2px solid #b97030; background: #fffbf5; }
.runtime-pool-transition-notice > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 13px 16px; border-bottom: 1px solid #eadfce; }
.runtime-pool-transition-notice > header div { display: grid; gap: 3px; }
.runtime-pool-transition-notice > header span { color: #8b633c; font-size: 9px; font-weight: 740; }
.runtime-pool-transition-notice > header strong { color: var(--ink); font-size: 12px; }
.runtime-pool-transition-notice > header a { color: var(--green); font-size: 10px; font-weight: 720; text-decoration: none; }
.runtime-pool-transition-notice > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.runtime-pool-transition-notice > div > span { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-width: 0; padding: 10px 16px; border-right: 1px solid #eadfce; border-bottom: 1px solid #eadfce; }
.runtime-pool-transition-notice > div strong { min-width: 0; overflow: hidden; color: #46514c; font-size: 10px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.runtime-pool-transition-notice > div small { flex: 0 0 auto; color: #8b633c; font-size: 9px; }
.runtime-list-status .runtime-execution-state { margin-bottom: 2px; }
.runtime-delivery-state { display: inline-flex; align-items: center; gap: 6px; width: fit-content; margin-top: 6px; border: 1px solid #d5dcd8; border-radius: 3px; padding: 3px 7px; background: #f3f5f4; color: #59645f; font-size: 9px; font-weight: 720; line-height: 1.35; }
.runtime-delivery-state i { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: #7d8882; }
.runtime-delivery-state.is-normal { border-color: #b8d5c5; background: #edf7f1; color: #146b45; }
.runtime-delivery-state.is-normal i { background: #168454; }
.runtime-delivery-state.is-attention { border-color: #e2c587; background: #fff5df; color: #805617; }
.runtime-delivery-state.is-attention i { background: #b7781f; }
.runtime-delivery-state.is-blocked { border-color: #e0b8b2; background: #fff0ed; color: #923b34; }
.runtime-delivery-state.is-blocked i { background: #b42318; }
.runtime-delivery-readback { margin-top: 6px !important; }
.runtime-pool-filter { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 9px; }
.runtime-pool-filter span { margin: 0 !important; }
.runtime-pool-filter select { min-width: 92px; height: 30px; border: 1px solid #ccd5d0; border-radius: 3px; padding: 0 28px 0 9px; background: var(--surface); color: var(--ink); font: inherit; }
.runtime-history-loading { display: flex; align-items: center; gap: 12px; min-height: 120px; padding: 20px 18px; color: var(--muted); font-size: 10px; }
.runtime-history-loading .loading-line { width: 120px; margin: 0; }
.runtime-history-pagination { padding: 16px 18px; }
.runtime-history-group + .runtime-history-group { border-top: 20px solid var(--canvas); }
.runtime-history-group > header { display: flex; align-items: center; justify-content: space-between; min-height: 38px; padding: 0 18px; border-bottom: 1px solid var(--line); background: #f7f9f8; }
.runtime-history-group > header h3 { margin: 0; color: #52605a; font-size: 10px; }
.runtime-history-group > header span { margin: 0; color: var(--muted); font-size: 10px; font-variant-numeric: tabular-nums; }
.runtime-history-plans { display: grid; gap: 7px; }
.runtime-history-plans > span { min-width: 0; }
.runtime-history-plans strong, .runtime-history-plans code { overflow-wrap: anywhere; }
.runtime-history-plans code { display: block; margin-top: 2px; color: var(--muted); font-size: 9px; }
.runtime-history-plans small { color: #87552f; }
.runtime-execution-state { display: inline-flex; align-items: center; gap: 6px; color: #365148; font-size: 9px; font-weight: 750; }
.runtime-execution-state i { width: 7px; height: 7px; border-radius: 50%; background: #168454; }
.runtime-execution-state.is-pending { color: #5b6680; }
.runtime-execution-state.is-pending i { background: #5c78a4; }
.runtime-execution-state.is-paused { color: #87612c; }
.runtime-execution-state.is-paused i { background: #ad6c28; }
.runtime-execution-state.is-deviation, .runtime-execution-state.is-failure, .runtime-execution-state.is-stopped { color: #923b34; }
.runtime-execution-state.is-deviation i, .runtime-execution-state.is-failure i, .runtime-execution-state.is-stopped i { background: #b42318; }
.runtime-portfolio-summary .is-alert strong { color: var(--danger); }
.runtime-operating-result { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; }
.runtime-operating-result > div { min-width: 0; }
.runtime-operating-result dt { color: var(--muted); font-size: 8px; }
.runtime-operating-result dd { margin: 4px 0 0; color: var(--ink); font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.runtime-operating-result dd .overview-money { font-size: inherit; }
.runtime-operating-result.is-negative > div:nth-child(n + 2) dd, .runtime-operating-result.is-negative > div:nth-child(n + 2) dd .overview-money { color: var(--danger); }
.runtime-operating-result.is-positive > div:nth-child(n + 2) dd, .runtime-operating-result.is-positive > div:nth-child(n + 2) dd .overview-money { color: #147a4e; }
.runtime-result-diagnostics { display: grid; gap: 6px; margin-top: 8px; color: #6f4930; overflow-wrap: anywhere; }
.runtime-result-plan { color: var(--muted); font-size: 8px; font-weight: 700; }
.runtime-result-issue { border-left: 2px solid #b8793f; padding-left: 7px; }
.runtime-result-issue.is-binding { border-left-color: #9b5f34; }
.runtime-result-issue.is-sku { border-left-color: #8a6b22; }
.runtime-result-issue.is-query { border-left-color: #a13f38; }
.runtime-result-issue strong { color: #74412d; font-size: 9px; line-height: 1.4; white-space: normal; }
.runtime-result-issue small { margin-top: 2px; color: #87552f; font-size: 8px; line-height: 1.4; }
.runtime-result-section > .runtime-result-diagnostics { margin: 0; padding: 11px 18px; border-bottom: 1px solid var(--line); background: #fffaf5; }
.runtime-blocking-code { display: block; margin-top: 6px; color: #9a3c34; font-size: 8px; overflow-wrap: anywhere; }
.runtime-state { display: inline-flex; align-items: center; gap: 6px; color: #405048; font-size: 10px; font-weight: 750; white-space: nowrap; }
.runtime-state i { width: 7px; height: 7px; border-radius: 50%; background: #168454; }
.runtime-state.is-starting i { background: #2f61a8; }
.runtime-state.is-paused i { background: #ad6c28; }
.runtime-state.is-blocked i, .runtime-state.is-stopped i { background: #a03a31; }
.runtime-mobile-label { display: none; }
.runtime-detail-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; padding: 18px 0 20px; }
.runtime-detail-heading h2 { max-width: 820px; margin: 10px 0 9px; color: var(--ink); font-size: 23px; line-height: 1.35; }
.runtime-heading-state { display: flex; align-items: center; gap: 10px; }
.runtime-heading-state > b { border: 1px solid #ccd5d0; border-radius: 3px; padding: 3px 6px; color: var(--muted); font-size: 8px; }
.runtime-object-links { display: flex; flex-wrap: wrap; gap: 7px; }
.runtime-object-links a, .runtime-object-links span { border: 1px solid #d5ddd9; border-radius: 3px; padding: 4px 7px; color: #53625b; font-size: 9px; text-decoration: none; }
.runtime-object-links a:hover { border-color: #87a795; color: var(--green); }
.runtime-blocking-issue { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px 10px; margin-top: 13px; padding: 9px 11px; border-left: 3px solid #a03a31; background: #fff6f5; color: #74413d; }
.runtime-blocking-issue strong { font-size: 9px; }
.runtime-blocking-issue code, .runtime-blocking-issue span { font-size: 9px; overflow-wrap: anywhere; }
.runtime-detail-metrics { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin: 0; border-top: 2px solid #8f9c96; border-bottom: 1px solid var(--line); background: var(--surface); }
.runtime-detail-metrics > div { min-width: 0; min-height: 104px; padding: 15px 16px; border-right: 1px solid #e2e7e4; }
.runtime-detail-metrics > div:last-child { border-right: 0; }
.runtime-detail-metrics dt { color: var(--muted); font-size: 9px; }
.runtime-detail-metrics dd { margin: 15px 0 0; color: var(--ink); font-size: 18px; font-weight: 720; font-variant-numeric: tabular-nums; white-space: nowrap; }
.runtime-detail-metrics dd .overview-money { font-size: inherit; }
.runtime-detail-metrics dd small { display: block; margin-top: 7px; color: #16744c; font-size: 10px; font-weight: 700; }
.runtime-detail-metrics .is-primary { background: #f5faf7; }
.runtime-resource-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; }
.runtime-resource-grid > div { min-width: 0; padding: 15px 18px; border-right: 1px solid #e2e7e4; }
.runtime-resource-grid > div:last-child { border-right: 0; }
.runtime-resource-grid dt { color: var(--muted); font-size: 9px; }
.runtime-resource-grid dd { display: grid; gap: 5px; margin: 7px 0 0; color: var(--ink); font-size: 11px; overflow-wrap: anywhere; }
.runtime-resource-grid code { color: #45534c; font-size: 9px; overflow-wrap: anywhere; }
.runtime-execution-section { margin-top: 0; border-top: 2px solid #8f9c96; background: var(--surface); }
.runtime-execution-section > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 18px 12px; border-bottom: 1px solid var(--line); }
.runtime-execution-section h3 { margin: 0; color: var(--ink); font-size: 15px; }
.runtime-execution-section header span:not(.runtime-execution-state) { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; }
.runtime-execution-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.runtime-execution-flow article { position: relative; min-width: 0; min-height: 108px; padding: 16px 20px; border-right: 1px solid #e2e7e4; }
.runtime-execution-flow article:last-child { border-right: 0; }
.runtime-execution-flow article > span { color: var(--muted); font-size: 9px; }
.runtime-execution-flow strong { display: block; margin-top: 14px; color: var(--ink); font-size: 16px; line-height: 1.35; }
.runtime-execution-flow strong .overview-money { font-size: inherit; }
.runtime-execution-flow small { display: block; margin-top: 7px; color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.runtime-execution-resources { border-top: 1px solid var(--line); background: #f9fbfa; }
.runtime-budget-mismatch { color: #923b34 !important; }
.runtime-result-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-bottom: 1px solid var(--line); }
.runtime-result-metrics > div { min-width: 0; padding: 15px 18px; border-right: 1px solid #e2e7e4; }
.runtime-result-metrics > div:last-child { border-right: 0; }
.runtime-result-metrics dt { color: var(--muted); font-size: 9px; }
.runtime-result-metrics dd { margin: 10px 0 0; color: var(--ink); font-size: 18px; font-weight: 720; font-variant-numeric: tabular-nums; }
.runtime-result-metrics dd .overview-money { font-size: inherit; }
.runtime-result-metrics .is-positive dd { color: #147a4e; }
.runtime-result-metrics .is-positive dd .overview-money { color: inherit; }
.runtime-result-metrics .is-negative dd { color: var(--danger); }
.runtime-result-metrics .is-negative dd .overview-money { color: inherit; }
.runtime-result-periods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid var(--line); }
.runtime-result-periods > section { min-width: 0; border-right: 1px solid var(--line); }
.runtime-result-periods > section:last-child { border-right: 0; }
.runtime-result-periods > section > header, .runtime-result-trend-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 12px 18px 8px; }
.runtime-result-periods h4, .runtime-result-trend-heading h4 { margin: 0; color: var(--ink); font-size: 11px; }
.runtime-result-periods header span, .runtime-result-trend-heading span { color: var(--muted); font-size: 9px; }
.runtime-result-periods .runtime-result-metrics { border-bottom: 0; }
.runtime-result-periods .runtime-result-metrics > div { padding-top: 10px; }
.runtime-result-trend-heading { border-bottom: 1px solid #e7ebe9; padding-top: 14px; padding-bottom: 12px; }
.runtime-result-chart { width: 100%; height: 310px; padding: 4px 8px 8px; }
.runtime-result-empty, .runtime-section-empty, .runtime-activity-clear { margin: 0; padding: 24px 18px; color: var(--muted); font-size: 11px; }
.runtime-binding-head, .runtime-binding-row { display: grid; grid-template-columns: minmax(230px, 1.15fr) minmax(160px, .85fr) minmax(170px, .85fr) minmax(110px, .55fr); gap: 18px; align-items: center; }
.runtime-binding-head { min-height: 38px; padding: 0 18px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 9px; font-weight: 700; }
.runtime-binding-row { min-height: 92px; padding: 13px 18px; border-bottom: 1px solid #e7ebe9; color: #3e4944; font-size: 11px; }
.runtime-binding-row:last-child { border-bottom: 0; }
.runtime-binding-row > div { min-width: 0; }
.runtime-binding-row strong { display: block; color: var(--ink); font-size: 12px; line-height: 1.4; }
.runtime-binding-row strong .overview-money { font-size: inherit; }
.runtime-binding-row code, .runtime-binding-row small, .runtime-readback time { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.4; overflow-wrap: anywhere; }
.runtime-readback span { display: inline-flex; padding: 3px 6px; border-radius: 3px; background: #eef2f0; color: #5c6963; font-size: 9px; font-weight: 700; }
.runtime-readback.is-confirmed span { background: #e9f5ef; color: #14764c; }
.runtime-program-row { display: grid; grid-template-columns: minmax(210px, 1fr) minmax(90px, .45fr) minmax(180px, .8fr) minmax(140px, .62fr); gap: 20px; align-items: center; min-height: 82px; padding: 13px 18px; border-bottom: 1px solid #e7ebe9; }
.runtime-program-row:last-child { border-bottom: 0; }
.runtime-program-row > div { min-width: 0; }
.runtime-program-row > div > span { display: block; color: var(--muted); font-size: 9px; }
.runtime-program-row strong { display: block; margin-top: 5px; color: var(--ink); font-size: 12px; line-height: 1.4; }
.runtime-program-row > div:first-child strong { margin-top: 0; }
.runtime-program-row small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; }
.runtime-exception-list, .runtime-activity-details ol { margin: 0; padding: 0; list-style: none; }
.runtime-exception-list li, .runtime-activity-details li { display: grid; grid-template-columns: 128px 88px minmax(190px, 1fr) minmax(150px, .72fr); gap: 16px; align-items: center; min-height: 48px; padding: 9px 18px; border-bottom: 1px solid #e7ebe9; color: #4b5751; font-size: 10px; }
.runtime-exception-list li.is-exception { background: #fff9f8; }
.runtime-exception-list time, .runtime-activity-details time { color: var(--muted); font-size: 9px; }
.runtime-exception-list strong, .runtime-activity-details strong { color: var(--ink); font-size: 10px; }
.runtime-exception-list p, .runtime-activity-details p { margin: 0; color: #8f3932; font-size: 10px; }
.runtime-activity-details { border-top: 1px solid var(--line); }
.runtime-activity-details > summary, .runtime-resource-section > summary, .runtime-technical-section > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 14px 18px; color: #46544d; font-size: 10px; font-weight: 700; cursor: pointer; list-style: none; }
.runtime-activity-details > summary::-webkit-details-marker, .runtime-resource-section > summary::-webkit-details-marker, .runtime-technical-section > summary::-webkit-details-marker { display: none; }
.runtime-activity-details > summary::after, .runtime-resource-section > summary::after, .runtime-technical-section > summary::after { color: var(--muted); content: "+"; font-size: 16px; font-weight: 400; }
.runtime-activity-details[open] > summary::after, .runtime-resource-section[open] > summary::after, .runtime-technical-section[open] > summary::after { content: "−"; }
.runtime-resource-section > summary small, .runtime-technical-section > summary small { margin-left: auto; color: var(--muted); font-size: 9px; font-weight: 400; overflow-wrap: anywhere; }
.runtime-technical-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-top: 1px solid var(--line); }
.runtime-technical-grid > div { min-width: 0; padding: 13px 18px; border-right: 1px solid #e2e7e4; border-bottom: 1px solid #e2e7e4; }
.runtime-technical-grid > div:nth-child(3n) { border-right: 0; }
.runtime-technical-grid dt { color: var(--muted); font-size: 9px; }
.runtime-technical-grid dd { margin: 7px 0 0; color: var(--ink); font-size: 11px; font-weight: 700; }
.runtime-historical-binding-row time { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; }

@media (max-width: 1040px) {
  .control-plane-tab-summary > dl { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .control-plane-tab-summary > dl > div:nth-child(3n) { border-right: 0; }
  .control-plane-tab-summary > dl > div:nth-child(n + 4) { border-top: 1px solid #e4e9e6; }
  .control-plane-tab-summary.is-revenue > dl, .control-plane-tab-summary.is-probe > dl { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .control-plane-pool-summary { grid-template-columns: 1fr; }
  .control-plane-pool-block { border-right: 0; border-bottom: 1px solid var(--line); }
  .control-plane-pool-block:nth-child(3) { border-bottom: 0; }
  .control-plane-probe-head, .control-plane-probe-row { grid-template-columns: minmax(200px, 1.1fr) minmax(145px, .8fr) minmax(190px, .9fr) minmax(135px, .7fr); }
  .runtime-portfolio-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .runtime-portfolio-summary > div:nth-child(3n) { border-right: 0; }
  .runtime-portfolio-summary > div:nth-child(n + 4) { border-top: 1px solid #e2e7e4; }
  .runtime-list-head, .runtime-list-row { grid-template-columns: minmax(220px, 1.25fr) minmax(115px, .62fr) minmax(170px, .82fr) minmax(165px, .8fr); gap: 14px; }
  .runtime-resource-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .runtime-resource-grid > div:nth-child(3) { border-right: 0; }
  .runtime-resource-grid > div:nth-child(n + 4) { border-top: 1px solid #e2e7e4; }
}

@media (max-width: 720px) {
  .control-plane-rules > header { align-items: flex-start; flex-direction: column; padding-inline: 13px; }
  .control-plane-rules-actions { width: 100%; flex-wrap: wrap; }
  .control-plane-rules-actions .button { margin-left: auto; }
  .control-plane-rules-content > summary, .control-plane-rules-content > div, .control-plane-rules-state, .control-plane-rules-draft { padding-inline: 13px; }
  .control-plane-operating-context > header { padding-inline: 13px; }
  .control-plane-context-content > summary { align-items: flex-start; padding-inline: 13px; }
  .control-plane-context-content > summary b { display: none; }
  .control-plane-context-group { padding-inline: 13px; }
  .control-plane-context-group > header, .control-plane-context-group dl { grid-template-columns: 1fr; }
  .revenue-rules-dialog-backdrop { align-items: end; padding: 0; }
  .revenue-rules-dialog, .revenue-rules-confirm { max-height: calc(100vh - 18px); border-radius: 7px 7px 0 0; }
  .revenue-rules-dialog textarea { width: calc(100% - 28px); min-height: calc(100vh - 290px); margin-inline: 14px; }
  .revenue-rules-dialog > header, .revenue-rules-editor-meta, .revenue-rules-editor-status, .revenue-rules-dialog > footer { padding-inline: 14px; }
  .revenue-rules-dialog > footer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .revenue-rules-dialog > footer .button { padding-inline: 8px; }
  .control-plane-tab-summary > header { align-items: start; flex-direction: column; gap: 8px; }
  .control-plane-tab-summary > header > span { text-align: left; }
  .control-plane-tab-summary > dl, .control-plane-tab-summary.is-revenue > dl, .control-plane-tab-summary.is-probe > dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-plane-tab-summary > dl > div:nth-child(n), .control-plane-tab-summary.is-probe > dl > div:nth-child(n) { border-top: 1px solid #e4e9e6; border-right: 0; }
  .control-plane-tab-summary > dl > div:nth-child(odd), .control-plane-tab-summary.is-probe > dl > div:nth-child(odd) { border-right: 1px solid #e4e9e6; }
  .control-plane-handoff-progress ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-plane-handoff-progress li:nth-child(2) { border-right: 0; }
  .control-plane-handoff-progress li:nth-child(n + 3) { border-top: 1px solid #e4e9e6; }
  .control-plane-handoff-progress li:nth-child(2)::after { display: none; }
  .control-plane-pool-block dl, .control-plane-pool-block.is-probe dl, .control-plane-pool-block.is-handoff dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-plane-pool-block > header { padding-inline: 13px; }
  .control-plane-pool-block dl > div { padding-inline: 10px; }
  .control-plane-pool-switch { margin-top: 18px; }
  .control-plane-pool-switch button { min-height: 44px; }
  .control-plane-probe-head { display: none; }
  .control-plane-probe-row { display: grid; grid-template-columns: 1fr 1fr; }
  .control-plane-probe-row > div { border-right: 0; border-bottom: 1px solid #edf0ee; }
  .control-plane-probe-row > div:last-child { border-bottom: 0; }
  .control-plane-probe-row .control-plane-strategy-main, .control-plane-probe-row .control-plane-result-column { grid-column: 1 / -1; }
  .control-plane-probe-exit-list article { grid-template-columns: 1fr auto; gap: 7px 12px; }
  .control-plane-probe-exit-list article > .control-plane-probe-exit-strategy { grid-column: 1 / -1; grid-row: 1; }
  .control-plane-probe-exit-list time { grid-column: 1; grid-row: 2; }
  .control-plane-probe-exit-list article > span { grid-column: 2; grid-row: 2; }
  .control-plane-probe-exit-list article > strong { grid-column: 2; grid-row: 3; text-align: right; }
  .control-plane-probe-exit-list article > .control-plane-probe-exit-metrics { grid-column: 1 / -1; grid-row: 4; }
  .control-plane-state-counts { justify-content: flex-start; }
  .control-plane-other-state-list article { grid-template-columns: 1fr auto; gap: 7px 12px; }
  .control-plane-other-state-list article > div { grid-column: 1 / -1; }
  .control-plane-other-state-list time { text-align: left; }
  .control-plane-transition-head { display: none; }
  .control-plane-transition-row { grid-template-columns: 1fr 1fr; gap: 12px; padding-block: 14px; }
  .control-plane-transition-row > div:first-child { grid-column: 1 / -1; }
  .control-plane-transition-record > header { padding-inline: 13px; }
  .control-plane-transition-timeline { grid-template-columns: 1fr; gap: 0; padding-inline: 13px; }
  .control-plane-transition-timeline li { min-height: 56px; padding-right: 0; }
  .control-plane-transition-timeline li::before { top: 6px; right: auto; bottom: -6px; left: 6px; width: 1px; height: auto; }
  .control-plane-transition-timeline li:last-child::before { display: none; }
  .runtime-pool-transition-notice > header { align-items: flex-start; padding-inline: 13px; }
  .runtime-pool-transition-notice > div { grid-template-columns: 1fr; }
  .runtime-pool-transition-notice > div > span { border-right: 0; padding-inline: 13px; }
  .runtime-view, .runtime-detail-view { padding-top: 18px; }
  .runtime-portfolio-summary, .runtime-detail-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .runtime-portfolio-summary > div:nth-child(3n), .runtime-detail-metrics > div:nth-child(3n) { border-right: 1px solid #e2e7e4; }
  .runtime-portfolio-summary > div:nth-child(2n), .runtime-detail-metrics > div:nth-child(2n) { border-right: 0; }
  .runtime-portfolio-summary > div:nth-child(n + 3), .runtime-detail-metrics > div:nth-child(n + 3) { border-top: 1px solid #e2e7e4; }
  .runtime-portfolio-summary strong { font-size: 15px; }
  .runtime-list-section > header, .runtime-detail-section > header { align-items: flex-start; padding: 14px 13px 12px; }
  .runtime-list-head { display: none; }
  .runtime-list-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 15px 13px; }
  .runtime-list-strategy { grid-column: 1 / -1; }
  .runtime-list-result { grid-column: 1 / -1; }
  .runtime-history-group > header { padding-inline: 13px; }
  .runtime-mobile-label { display: block; margin-bottom: 6px; color: var(--muted); font-size: 8px; font-weight: 700; }
  .runtime-detail-heading { display: grid; gap: 16px; padding: 14px 0 18px; }
  .runtime-detail-heading h2 { font-size: 20px; }
  .runtime-detail-metrics > div { min-height: 88px; padding: 13px; }
  .runtime-detail-metrics dd { margin-top: 11px; font-size: 15px; }
  .runtime-resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .runtime-resource-grid > div { padding: 13px; border-top: 1px solid #e2e7e4; }
  .runtime-resource-grid > div:first-child, .runtime-resource-grid > div:nth-child(2) { border-top: 0; }
  .runtime-resource-grid > div:nth-child(2n) { border-right: 0; }
  .runtime-resource-grid > div:nth-child(3) { border-right: 1px solid #e2e7e4; }
  .runtime-execution-section > header { align-items: flex-start; padding: 14px 13px 12px; }
  .runtime-execution-flow { grid-template-columns: 1fr; }
  .runtime-execution-flow article { min-height: 0; padding: 14px 13px; border-right: 0; border-bottom: 1px solid #e2e7e4; }
  .runtime-execution-flow article:last-child { border-bottom: 0; }
  .runtime-result-metrics { grid-template-columns: 1fr; }
  .runtime-result-metrics > div { border-right: 0; border-bottom: 1px solid #e2e7e4; }
  .runtime-result-metrics > div:last-child { border-bottom: 0; }
  .runtime-result-chart { height: 270px; padding-inline: 0; }
  .runtime-result-periods { grid-template-columns: 1fr; }
  .runtime-result-periods > section { border-right: 0; border-bottom: 1px solid var(--line); }
  .runtime-binding-head { display: none; }
  .runtime-binding-row, .runtime-program-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 14px 13px; }
  .runtime-binding-row > div:first-child, .runtime-program-row > div:first-child { grid-column: 1 / -1; }
  .runtime-exception-list li, .runtime-activity-details li { grid-template-columns: 1fr auto; gap: 5px 12px; padding: 11px 13px; }
  .runtime-exception-list li strong, .runtime-activity-details li strong, .runtime-exception-list li p, .runtime-activity-details li p { grid-column: 1 / -1; }
  .runtime-activity-details > summary, .runtime-resource-section > summary, .runtime-technical-section > summary { padding: 13px; }
  .runtime-resource-section > summary small, .runtime-technical-section > summary small { display: none; }
  .runtime-technical-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .runtime-technical-grid > div:nth-child(3n) { border-right: 1px solid #e2e7e4; }
  .runtime-technical-grid > div:nth-child(2n) { border-right: 0; }
}

@media (max-width: 900px) {
  .relationship-provenance-flow { grid-template-columns: 1fr; }
  .relationship-provenance-flow section { border-right: 0; border-bottom: 1px solid #e0e5e2; }
  .relationship-provenance-flow section:last-child { border-bottom: 0; }
  .maintenance-run-heading { grid-template-columns: 1fr; gap: 20px; }
  .maintenance-run-heading dl { max-width: 520px; }
}

@media (max-width: 720px) {
  .information-access-view, .maintenance-runs-view, .maintenance-run-detail-view { padding-top: 18px; }
  .relationship-detail-actions { align-items: stretch; }
  .relationship-detail-actions .research-direction-action { min-height: 36px; }
  .maintenance-page-heading { align-items: center; padding-top: 20px; }
  .maintenance-page-heading h2 { font-size: 19px; }
  .research-direction-list article { grid-template-columns: 1fr; gap: 14px; }
  .research-direction-drawer-backdrop { align-items: flex-end; }
  .research-direction-drawer { width: 100%; height: auto; max-height: calc(100vh - 18px); border-top: 1px solid #cdd5d1; border-left: 0; border-radius: 7px 7px 0 0; }
  .research-direction-drawer > header { padding: 20px 18px 17px; }
  .research-direction-context { margin: 16px 18px 0; }
  .research-direction-drawer form { gap: 16px; padding: 20px 18px; }
  .research-direction-drawer form > footer { align-items: stretch; }
  .maintenance-page-summary dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .maintenance-page-summary dl > div:nth-child(2n) { border-right: 0; }
  .maintenance-page-summary dl > div:nth-child(n + 3) { border-top: 1px solid #e2e7e4; }
  .maintenance-table-wrap { overflow: hidden; }
  .maintenance-table { display: block; min-width: 0; }
  .maintenance-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .maintenance-table tbody { display: block; }
  .maintenance-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid #cfd7d3; }
  .maintenance-table tbody tr:last-child { border-bottom: 0; }
  .maintenance-table td:nth-child(n) { display: block; width: auto; min-width: 0; padding: 12px 13px; border-bottom: 0; }
  .maintenance-table td::before { content: attr(data-label); display: block; margin-bottom: 6px; color: #75807b; font-size: 8px; font-weight: 700; }
  .maintenance-table td:first-child { grid-column: 1 / -1; padding-top: 15px; border-bottom: 1px solid #edf0ee; }
  .maintenance-table td:first-child::before { display: none; }
  .information-access-table td:nth-child(2) { border-right: 1px solid #edf0ee; }
  .information-access-table td:nth-child(4) { grid-column: 1 / -1; border-top: 1px solid #edf0ee; }
  .maintenance-run-table td:nth-child(4) { grid-column: 1 / -1; border-top: 1px solid #edf0ee; }
  .relationship-provenance-run > header { display: grid; gap: 7px; }
  .relationship-provenance-run > header div { display: grid; gap: 6px; }
  .relationship-provenance-run > header time { justify-self: start; }
  .maintenance-run-heading { padding-top: 13px; }
  .maintenance-run-heading h2 { font-size: 20px; }
  .access-decision-list > div { grid-template-columns: 70px minmax(0, 1fr); gap: 7px 12px; }
  .access-decision-list p { grid-column: 2; }
  .source-read-items { grid-template-columns: 1fr; }
  .maintenance-source-read > header { display: grid; gap: 8px; }
  .maintenance-source-read > header > b { justify-self: start; }
  .maintenance-result-evidence p { grid-template-columns: 1fr; gap: 5px; }
  .maintenance-open-questions { grid-template-columns: 1fr; gap: 24px; }
  .maintenance-open-questions > div + div { padding: 24px 0 0; border-top: 1px solid var(--line); border-left: 0; }
}

/* Creative production final responsive constraints. */
.creative-detail-summary > .icon-button { justify-self: center; margin-left: 0; }

@media (max-width: 720px) {
  .creative-view input:not([type="radio"]):not([type="checkbox"]), .creative-view select { min-height: 44px; }
  .creative-detail-summary > .icon-button { width: 44px; height: 44px; margin: 7px; }
  .creative-result-meta .button, .creative-task > .button { min-height: 44px; }
}

@media (max-width: 430px) {
  .creative-tag-row { grid-template-columns: minmax(0, 1fr) 44px; }
  .creative-tag-row > span { display: none; }
  .creative-tag-row > input:first-of-type { grid-column: 1; grid-row: 1; }
  .creative-tag-row > input:nth-of-type(2) { grid-column: 1; grid-row: 2; }
  .creative-tag-row > .icon-button { grid-column: 2; grid-row: 1 / span 2; }
}

/* Human-facing strategy review; isolated from the legacy workbench views. */
.om-management { max-width: 1060px; margin: 0 auto; font-size: 14px; line-height: 1.65; }
.om-strategy-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.om-strategy-heading h2 { margin: 0; font-size: 23px; }
.om-back-icon { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 5px; color: var(--ink); background: white; }
.om-back-icon:hover { background: var(--soft); }
.om-table-scroll { overflow-x: auto; }
.om-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 14px; }
.om-table th { color: var(--muted); font-size: 12px; font-weight: 600; white-space: nowrap; }
.om-table th, .om-table td { padding: 16px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
.om-table th:first-child, .om-table td:first-child { padding-left: 0; }
.om-table th:last-child, .om-table td:last-child { padding-right: 0; }
.om-table tbody tr:last-child td { border-bottom: 0; }
.om-table td:first-child { min-width: 170px; }
.om-table td:not(:first-child) { min-width: 65px; }
.om-table td:nth-child(2) { max-width: 380px; }
.om-table a { color: var(--green); font-weight: 600; }
.om-muted, .om-empty { color: var(--muted); font-size: 14px; }
.om-card { margin-bottom: 18px; padding: 24px 28px; background: white; border: 1px solid var(--line); border-radius: 8px; }
.om-fields { margin: 0; }
.om-fields > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 18px; padding: 15px 0; border-top: 1px solid #edf0ee; }
.om-fields > div:first-child { border-top: 0; padding-top: 0; }
.om-fields > div:last-child { padding-bottom: 0; }
.om-fields dt { color: var(--muted); }
.om-fields dd { margin: 0; overflow-wrap: anywhere; }
.om-multiline { white-space: pre-wrap; }
.om-badge { padding: 3px 10px; border-radius: 5px; background: var(--soft); color: var(--muted); font-size: 13px; white-space: nowrap; }
.om-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.om-toolbar { justify-content: flex-end; margin-bottom: 16px; }
.om-toolbar:empty { display: none; }
.om-table small { display: block; color: var(--muted); font-size: 12px; }
.om-row-actions { display: flex; align-items: center; gap: 14px; white-space: nowrap; }
.om-publish-action { border: 0; padding: 0; background: none; color: var(--accent); font: inherit; cursor: pointer; }
.om-publish-action:disabled { color: var(--muted); opacity: .45; cursor: default; }
.om-list-objective { min-width: 180px; max-width: 320px; white-space: normal; }
.om-editor { max-width: 760px; display: grid; gap: 20px; }
.om-editor > label { display: grid; gap: 7px; }
.om-editor input:not([type=checkbox]), .om-editor select, .om-editor textarea { box-sizing: border-box; width: 100%; padding: 9px 11px; border: 1px solid var(--line); border-radius: 5px; background: white; color: var(--ink); font: inherit; }
.om-editor textarea { resize: vertical; }
.om-editor fieldset { border: 1px solid var(--line); border-radius: 5px; max-height: 180px; overflow: auto; }
.om-choice { display: flex; align-items: center; gap: 8px; padding: 5px 0; }
.om-fixed-field { display: flex; gap: 25px; }
.om-form-error { color: #a52b26; margin: 0; }
.om-editor [hidden] { display: none; }
.om-record-nav { margin-bottom: 18px; }
.om-records h3 { margin-top: 0; }
.om-records .om-table { min-width: 680px; }
.om-records td { overflow-wrap: anywhere; }
.om-records summary { color: var(--green); cursor: pointer; margin-top: 8px; }
.om-work-preview video { display: block; width: 190px; max-width: 100%; max-height: 340px; margin-top: 10px; background: #111; }
@media (max-width: 760px) {
  .om-card { padding: 20px 18px; }
  .om-fields > div { grid-template-columns: 1fr; gap: 5px; }
}

.shipinhao-data-view { display: grid; gap: 16px; }
.shipinhao-data-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.shipinhao-data-heading h2 { margin: 4px 0 0; color: var(--ink); font-size: 20px; letter-spacing: 0; }
.shipinhao-data-boundary { display: flex; align-items: center; gap: 14px; min-height: 40px; border-top: 2px solid var(--blue); border-bottom: 1px solid var(--line); padding: 8px 12px; background: #f5f8fc; color: #41505d; font-size: 11px; }
.shipinhao-data-boundary strong { color: #244a7d; }
.shipinhao-data-boundary .is-muted { margin-left: auto; color: var(--muted); }
.shipinhao-data-controls { display: grid; grid-template-columns: auto auto minmax(160px, .75fr) minmax(220px, 1fr) minmax(140px, .65fr); gap: 10px; align-items: end; padding: 0 0 14px; border-bottom: 1px solid var(--line); }
.shipinhao-data-controls label, .shipinhao-custom-range label { display: grid; gap: 6px; color: var(--muted); font-size: 10px; font-weight: 700; }
.shipinhao-data-controls select, .shipinhao-data-controls input, .shipinhao-custom-range input { width: 100%; height: 38px; border: 1px solid #c4cdc9; border-radius: 4px; padding: 0 10px; background: var(--surface); color: var(--ink); font-size: 11px; }
.shipinhao-data-controls select:focus-visible, .shipinhao-data-controls input:focus-visible, .shipinhao-custom-range input:focus-visible { outline: 2px solid #2f61a8; outline-offset: 2px; }
.shipinhao-periods, .shipinhao-dimensions { display: inline-grid; grid-auto-flow: column; grid-auto-columns: minmax(64px, auto); height: 38px; border: 1px solid #c4cdc9; border-radius: 4px; overflow: hidden; background: var(--surface); }
.shipinhao-periods button, .shipinhao-dimensions button { min-width: 64px; border: 0; border-right: 1px solid #d8dfdc; padding: 0 10px; background: transparent; color: #59645f; font-size: 10px; font-weight: 700; cursor: pointer; }
.shipinhao-periods button:last-child, .shipinhao-dimensions button:last-child { border-right: 0; }
.shipinhao-periods button[aria-pressed="true"], .shipinhao-dimensions button[aria-selected="true"] { background: #2f61a8; color: #fff; }
.shipinhao-periods button:focus-visible, .shipinhao-dimensions button:focus-visible { outline: 2px solid #1c5f9e; outline-offset: -3px; }
.shipinhao-custom-range { display: flex; justify-content: flex-end; gap: 10px; margin-top: -8px; }
.shipinhao-custom-range label { grid-template-columns: auto 150px; align-items: center; }
.shipinhao-warnings { display: grid; gap: 5px; border-left: 3px solid #b27a2d; padding: 9px 11px; background: #fff9ef; color: #745827; font-size: 10px; }
.shipinhao-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 2px solid #9eaaa4; border-bottom: 1px solid var(--line); background: var(--surface); }
.shipinhao-summary > div { min-width: 0; min-height: 88px; border-right: 1px solid #e2e7e4; padding: 15px 16px; }
.shipinhao-summary > div:last-child { border-right: 0; }
.shipinhao-summary span { color: var(--muted); font-size: 10px; }
.shipinhao-summary strong { display: block; margin-top: 11px; color: var(--ink); font-size: 19px; font-weight: 650; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.shipinhao-range { color: var(--muted); font-size: 10px; }
.shipinhao-table-section { min-width: 0; background: var(--surface); }
.shipinhao-section-error { border-bottom: 1px solid #ead7d1; padding: 10px 12px; background: #fff5f3; color: #81473d; font-size: 10px; }
.shipinhao-table-scroll { overflow-x: auto; border: 1px solid var(--line); }
.shipinhao-table { width: 100%; min-width: 940px; border-collapse: collapse; table-layout: fixed; }
.shipinhao-table th { height: 42px; border-bottom: 1px solid #cbd3cf; padding: 0 13px; background: #f2f5f3; color: #68736e; font-size: 10px; font-weight: 700; text-align: left; }
.shipinhao-table td { min-width: 0; padding: 13px; border-bottom: 1px solid #e3e8e5; color: #3f4944; font-size: 11px; vertical-align: top; overflow-wrap: anywhere; }
.shipinhao-table tbody tr:last-child > * { border-bottom: 0; }
.shipinhao-table tbody tr:hover { background: #f8faf9; }
.shipinhao-table tbody th { height: auto; background: var(--surface); color: var(--ink); vertical-align: top; }
.shipinhao-table tbody th strong, .shipinhao-table tbody th small, .shipinhao-table td small, .shipinhao-table td code { display: block; }
.shipinhao-table tbody th strong { font-size: 11px; overflow-wrap: anywhere; }
.shipinhao-table tbody th small, .shipinhao-table td small { margin-top: 6px; color: var(--muted); font-size: 9px; font-weight: 500; }
.shipinhao-table td code { margin-bottom: 4px; color: #43524b; font-size: 9px; overflow-wrap: anywhere; }
.shipinhao-type { display: inline-block; color: #244a7d; font-weight: 700; }
.shipinhao-data-footer { display: flex; justify-content: space-between; gap: 18px; border-top: 1px solid var(--line); padding-top: 10px; color: var(--muted); font-size: 9px; }

@media (max-width: 980px) {
  .shipinhao-data-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .shipinhao-periods, .shipinhao-dimensions { width: 100%; grid-auto-columns: minmax(0, 1fr); }
  .shipinhao-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .shipinhao-summary > div:nth-child(2) { border-right: 0; }
  .shipinhao-summary > div:nth-child(-n+2) { border-bottom: 1px solid #e2e7e4; }
}

@media (max-width: 720px) {
  .shipinhao-data-heading { align-items: center; }
  .shipinhao-data-boundary { align-items: flex-start; flex-direction: column; gap: 5px; }
  .shipinhao-data-boundary .is-muted { margin-left: 0; }
  .shipinhao-data-controls { grid-template-columns: 1fr; }
  .shipinhao-data-controls select, .shipinhao-data-controls input, .shipinhao-custom-range input { height: 44px; }
  .shipinhao-periods, .shipinhao-dimensions { height: 46px; }
  .shipinhao-periods button, .shipinhao-dimensions button { min-height: 44px; }
  .shipinhao-custom-range { display: grid; grid-template-columns: 1fr; margin-top: 0; }
  .shipinhao-custom-range label { grid-template-columns: 48px minmax(0, 1fr); }
  .shipinhao-summary strong { font-size: 16px; }
  .shipinhao-table-scroll { overflow: hidden; }
  .shipinhao-table { display: block; min-width: 0; }
  .shipinhao-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .shipinhao-table tbody { display: block; }
  .shipinhao-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid #cfd7d3; }
  .shipinhao-table tbody tr:last-child { border-bottom: 0; }
  .shipinhao-table tbody th, .shipinhao-table tbody td { display: block; width: auto; min-width: 0; height: auto; border-bottom: 0; padding: 11px 12px; }
  .shipinhao-table tbody th { grid-column: 1 / -1; padding-top: 15px; border-bottom: 1px solid #edf0ee; }
  .shipinhao-table tbody td { border-right: 1px solid #edf0ee; border-bottom: 1px solid #edf0ee; }
  .shipinhao-table tbody td:nth-child(odd) { border-right: 0; }
  .shipinhao-table tbody td::before { content: attr(data-label); display: block; margin-bottom: 6px; color: #75807b; font-size: 9px; font-weight: 700; }
  .shipinhao-table .table-empty { grid-column: 1 / -1; border: 0; }
  .shipinhao-data-footer { flex-direction: column; gap: 5px; }
}
