
.ck { font-family: var(--font-anthropic-sans); color: var(--color-fg); display: grid; gap: var(--cds-gap-lg); }
.ck-head h1 { font-family: var(--font-anthropic-serif); font-weight: 400; font-size: var(--cds-font-size-title); margin: 0; }
.ck-lede { margin: var(--cds-gap-xs) 0 0; color: var(--color-fg-muted); font-size: var(--cds-font-size-body); max-width: 72ch; line-height: 1.5; }
.ck-lede .ck-v { color: var(--color-fg); font-variant-numeric: tabular-nums; }
.ck-filters { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--cds-gap-sm) var(--cds-gap-md); padding: var(--cds-pad-md); background: var(--color-panel); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); }
.ck-field { display: grid; gap: var(--cds-gap-xs); font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-field input, .ck-field select, .ck-range input { font: inherit; font-size: var(--cds-font-size-body); color: var(--color-fg); background: var(--color-bg); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-xs) var(--cds-pad-sm); min-height: 2.25rem; box-sizing: border-box; }
.ck-grow { flex: 1 1 14rem; }
.ck-filters { flex-direction: column; flex-wrap: nowrap; align-items: stretch; }
.ck-frow { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--cds-gap-sm) var(--cds-gap-md); }
.ck-wide select { min-width: 15rem; max-width: 100%; }
.ck-range { border: 0; margin: 0; padding: 0; min-width: 0; }
.ck-range legend { padding: 0; margin-bottom: var(--cds-gap-xs); }
.ck-range > div { display: flex; align-items: center; gap: 6px; }
.ck-range input { width: 6.5rem; }
.ck-presets button { min-height: 2.25rem; }
.ck-active { margin: 0; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-active:empty { display: none; }
.ck-active b { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.ck-grow input { width: 100%; }
.ck-btn { font: inherit; font-size: var(--cds-font-size-body); color: var(--color-fg); background: var(--color-bg); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-xs) var(--cds-pad-md); min-height: 2.25rem; cursor: pointer; }
.ck-btn:disabled { opacity: .45; cursor: default; }
.ck-tabs { display: flex; gap: var(--cds-gap-xs); border-bottom: 1px solid var(--color-border-line); overflow-x: auto; }
.ck-tab { appearance: none; background: none; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; padding: var(--cds-pad-sm) var(--cds-pad-md); font: inherit; font-size: var(--cds-font-size-body); color: var(--color-fg-muted); cursor: pointer; white-space: nowrap; }
.ck-tab[aria-selected="true"] { color: var(--color-fg); border-bottom-color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.ck-page { display: grid; gap: var(--cds-gap-lg); }
.ck-page[hidden] { display: none; }
.ck-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: var(--cds-gap-md); }
.ck-card { background: var(--color-panel); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-lg); min-width: 0; display: flex; flex-direction: column; gap: var(--cds-gap-sm); }
.ck-card h2, .ck-card h3 { margin: 0; font-size: var(--cds-font-size-heading); font-weight: var(--cds-font-weight-medium); }
.ck-note { margin: 0; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); }
.ck-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr)); gap: var(--cds-gap-md); }
.ck-kpi { justify-content: space-between; }
.ck-kpi-label { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-big { font-family: var(--font-anthropic-serif); font-weight: 400; font-size: var(--cds-font-size-title); font-variant-numeric: tabular-nums; line-height: 1.15; }
.ck-sub { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.ck-types { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); gap: var(--cds-gap-md); }
.ck-type-head { display: flex; align-items: center; gap: var(--cds-gap-sm); }
.ck-swatch { width: .75rem; height: .75rem; border-radius: 3px; flex: none; }
.ck-dl { display: grid; grid-template-columns: 1fr auto; gap: var(--cds-gap-xs) var(--cds-gap-md); margin: 0; font-size: var(--cds-font-size-caption); }
.ck-dl dt { color: var(--color-fg-muted); }
.ck-dl dd { margin: 0; text-align: right; font-variant-numeric: tabular-nums; }
.ck-link { align-self: flex-start; margin-top: auto; background: none; border: 0; padding: 0; font: inherit; font-size: var(--cds-font-size-caption); color: var(--color-fg); text-decoration: underline; cursor: pointer; }
.ck-legend { display: flex; flex-wrap: wrap; gap: var(--cds-gap-xs) var(--cds-gap-md); font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-legend span { display: inline-flex; align-items: center; gap: 6px; }
.ck-legend i { width: .625rem; height: .625rem; border-radius: 2px; display: inline-block; }
.ck-chart { position: relative; min-height: 260px; }
.ck-chart.ck-tall { min-height: 300px; }
.ck-chart.ck-auto { min-height: 160px; }
.ck-svg { display: block; overflow: visible; }
.ck-svg text { fill: var(--color-fg-muted); font-size: var(--cds-font-size-caption); font-family: var(--font-anthropic-sans); }
.ck-svg .ck-axis-title { fill: var(--color-fg-muted); }
.ck-grid-line { stroke: var(--cds-chart-grid); stroke-width: 1; }
.ck-axis-line { stroke: var(--cds-chart-axis); stroke-width: 1; }
.ck-ref { stroke: var(--cds-chart-reference); stroke-width: 1; stroke-dasharray: 4 4; }
.ck-dot { stroke: var(--color-panel); stroke-width: 1; }
.ck-dot.is-hot { stroke: var(--color-fg); stroke-width: 2; }
.ck-tip { position: absolute; z-index: 5; pointer-events: none; background: var(--cds-surface-popover); border: 1px solid var(--cds-border); border-radius: var(--cds-radius); box-shadow: var(--cds-shadow-popover); padding: var(--cds-pad-xs) var(--cds-pad-sm); font-size: var(--cds-font-size-caption); max-width: 18rem; color: var(--color-fg); }
.ck-tip[hidden] { display: none; }
.ck-tip-h { color: var(--cds-text-secondary); margin-bottom: 2px; }
.ck-tip-l { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.ck-tip-l span:nth-child(2), .ck-tip-l span:first-child:not(.ck-tip-sw) { flex: 1; }
.ck-tip-note { white-space: normal; color: var(--cds-text-secondary); margin-top: 4px; line-height: 1.35; }
.ck-tip-sw { width: .5rem; height: .5rem; border-radius: 2px; flex: none; }
.ck .ck-tip-l b { font-weight: var(--cds-font-weight-medium); font-variant-numeric: tabular-nums; margin-left: var(--cds-gap-sm); }
.ck-hb { display: grid; gap: 6px; }
.ck-hb-row { display: grid; grid-template-columns: minmax(5rem, 36%) 1fr minmax(3.5rem, auto); align-items: center; gap: var(--cds-gap-sm); font-size: var(--cds-font-size-caption); border-radius: 4px; }
.ck-hb-row.is-click { cursor: pointer; }
.ck-hb-row.is-click:hover .ck-hb-label, .ck-hb-row.is-click:focus-visible .ck-hb-label { text-decoration: underline; }
.ck-hb-row.is-active .ck-hb-label { font-weight: var(--cds-font-weight-medium); }
.ck-hb-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--color-fg); }
.ck-hb-track { display: flex; height: 14px; min-width: 0; }
.ck-hb-bar { height: 100%; flex: none; }
.ck-hb-bar:last-child { border-radius: 0 4px 4px 0; }
.ck-hb-val { font-variant-numeric: tabular-nums; color: var(--color-fg-muted); text-align: right; white-space: nowrap; }
.ck-empty { display: flex; align-items: center; justify-content: center; min-height: inherit; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); text-align: center; }
.ck-fail { display: flex; align-items: center; justify-content: center; gap: .5rem; min-height: inherit; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); }
.ck-fail::before { content: ""; width: .375rem; height: .375rem; border-radius: 50%; background: var(--color-bad); }
.ck-table-tools { display: flex; flex-wrap: wrap; align-items: center; gap: var(--cds-gap-sm) var(--cds-gap-md); }
.ck-table-tools input { font: inherit; font-size: var(--cds-font-size-body); color: var(--color-fg); background: var(--color-bg); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-xs) var(--cds-pad-sm); min-height: 2.25rem; flex: 1 1 14rem; box-sizing: border-box; }
.ck-count { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.ck-table-wrap { max-height: 34rem; overflow: auto; border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); }
.ck-table { border-collapse: collapse; width: 100%; font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; }
.ck-table thead th { position: sticky; top: 0; z-index: 1; background: var(--color-panel); text-align: left; font-weight: var(--cds-font-weight-medium); border-bottom: 1px solid var(--color-border-line); padding: 0; white-space: nowrap; }
.ck-table th button { all: unset; display: block; padding: var(--cds-pad-xs) var(--cds-pad-sm); cursor: pointer; color: var(--color-fg); }
.ck-table th button:focus-visible { outline: 2px solid var(--color-fg); outline-offset: -2px; }
.ck-table th[aria-sort="ascending"] button:not(.ck-colx)::after { content: " \2191"; color: var(--color-fg-muted); }
.ck-table th[aria-sort="descending"] button:not(.ck-colx)::after { content: " \2193"; color: var(--color-fg-muted); }
.ck-table.eq-collapsed .ck-eqdetail { display: none; }
.ck-table .ck-thx { display: flex; align-items: stretch; }
.ck-table th .ck-colx { all: unset; cursor: pointer; display: flex; align-items: center; padding: 0 var(--cds-pad-sm); color: var(--color-fg-muted); border-left: 1px solid var(--color-border-line); }
.ck-table th .ck-colx:hover { color: var(--color-fg); }
.ck-table th .ck-colx:focus-visible { outline: 2px solid var(--color-fg); outline-offset: -2px; }
.ck-table td.ck-eqdetail, .ck-table th.ck-eqdetail { background: var(--color-panel); }
.ck-table td { padding: var(--cds-pad-xs) var(--cds-pad-sm); border-top: 1px solid var(--color-border-line); white-space: nowrap; }
.ck-table tbody tr:first-child td { border-top: 0; }
.ck-table .num { text-align: right; }
.ck-table th.num button { text-align: right; }
.ck-table td.wrap { white-space: normal; min-width: 14rem; color: var(--color-fg-muted); }
.ck-table tbody tr:hover td { background: var(--cds-chart-grid); }
.ck .ck-pos { color: var(--color-ok); }
.ck .ck-neg { color: var(--color-bad); }
.ck-card-head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: var(--cds-gap-sm) var(--cds-gap-md); }
.ck-card-head > div:first-child { display: grid; gap: var(--cds-gap-xs); flex: 1 1 18rem; }
.ck-toggle { display: inline-flex; border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); overflow: hidden; flex: none; }
.ck-toggle button { font: inherit; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); background: var(--color-bg); border: 0; padding: var(--cds-pad-xs) var(--cds-pad-sm); cursor: pointer; }
.ck-toggle button + button { border-left: 1px solid var(--color-border-line); }
.ck-toggle button[aria-pressed="true"] { color: var(--color-fg); background: var(--color-panel); font-weight: var(--cds-font-weight-medium); }
.ck-hb-row.is-head { margin-top: var(--cds-gap-sm); }
.ck-hb-row.is-head:first-child { margin-top: 0; }
.ck-hb-row.is-head .ck-hb-label { font-weight: var(--cds-font-weight-medium); }
.ck-hb-row.is-head .ck-hb-val { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.ck-hb-row.is-sub .ck-hb-label { padding-left: var(--cds-pad-md); color: var(--color-fg-muted); }
.ck-hb-row.is-des .ck-hb-label { padding-left: calc(var(--cds-pad-md) * 2 + .75rem); }
.ck-hb-label .ck-tw { font-style: normal; display: inline-block; width: .75rem; margin-right: 4px; color: var(--color-fg-muted); }
.ck-free { max-height: none; }
.ck-tree thead th { position: static; }
.ck-tree .ck-first { position: sticky; left: 0; z-index: 2; background: var(--color-panel); }
.ck-tree th.ck-grp { text-align: center; padding: var(--cds-pad-xs) var(--cds-pad-sm); color: var(--color-fg-muted); font-weight: var(--cds-font-weight-medium); border-bottom-width: 2px; border-bottom-style: solid; }
.ck-tree .ck-gs { border-left: 1px solid var(--color-border-line); }
.ck-tree tr.is-seg td { font-weight: var(--cds-font-weight-medium); background: var(--color-bg); }
.ck-tree tr.is-seg td.ck-first { background: var(--color-bg); }
.ck-tree tr.is-sub td.ck-first { padding-left: calc(var(--cds-pad-sm) + 1.25rem); }
.ck-tree tr.is-des td { color: var(--color-fg-muted); }
.ck-tree tr.is-des td.ck-first { padding-left: calc(var(--cds-pad-sm) + 2.5rem); }
.ck-tree tr.is-generic td.ck-first { font-style: italic; }
.ck-tree th.ck-grp-size { border-bottom-color: var(--color-border-line); }
.ck-tree .ck-leaf { display: inline-flex; align-items: center; gap: 6px; }
.ck-tree .ck-leaf i { font-style: normal; width: .75rem; display: inline-block; }
.ck-tree .ck-fold { all: unset; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; }
.ck-tree .ck-fold:focus-visible { outline: 2px solid var(--color-fg); outline-offset: 2px; }
.ck-tree .ck-fold i { font-style: normal; width: .75rem; display: inline-block; color: var(--color-fg-muted); }
.ck-tree .ck-fold b { width: .625rem; height: .625rem; border-radius: 2px; display: inline-block; }
.ck-tree td.ck-zero { color: var(--color-fg-muted); opacity: .6; }
.ck-qv-deal-line { stroke: var(--color-fg-muted, #888); stroke-width: 1.5; stroke-dasharray: 2 4; fill: none; pointer-events: none; }
.ck-reg-line { stroke: var(--color-fg); stroke-width: 2.5; stroke-dasharray: 0.5 5; stroke-linecap: round; fill: none; pointer-events: none; }
.ck-cross, .ck-cross * { pointer-events: none; }
.ck-cross-rule { stroke: var(--color-fg-muted); stroke-width: 1; stroke-dasharray: 2 3; }
.ck-cross-band { stroke-width: 4; stroke-opacity: .45; stroke-linecap: round; }
.ck-cross-tick { stroke-width: 2; stroke-linecap: round; }
.ck-cross-dot { fill: var(--color-fg); stroke: var(--color-panel); stroke-width: 1.5; }
.ck-band { fill-opacity: .14; stroke: none; pointer-events: none; }
.ck-band-edge { fill: none; stroke-width: 1; stroke-opacity: .45; pointer-events: none; }
.ck-svg .ck-reg-label { fill: var(--color-fg); paint-order: stroke; stroke: var(--color-panel); stroke-width: 3px; stroke-linejoin: round; pointer-events: none; }
.ck-reg { display: grid; gap: 4px; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; min-height: 1.25rem; }
.ck-reg-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.ck-reg-row i { width: 1.25rem; height: 0; border-top: 3px dotted var(--color-fg); display: inline-block; }
.ck-reg-row strong { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.ck-drawer { position: fixed; top: 0; right: 0; bottom: 0; width: min(38rem, 100vw); z-index: 30; box-sizing: border-box; overflow-y: auto; background: var(--color-bg); border-left: 1px solid var(--color-border-line); box-shadow: var(--cds-shadow-popover); padding: var(--cds-pad-lg); display: grid; align-content: start; gap: var(--cds-gap-lg); }
.ck-drawer[hidden] { display: none; }
.ck-drawer[popover] { inset: 0 0 0 auto; left: auto; height: auto; margin: 0; border: 0; border-left: 1px solid var(--color-border-line); color: var(--color-fg); }
@media (min-width: 1100px) { .ck-drawer { width: min(72rem, 62vw); } .apx-dialog.tx-dialog.da-dialog, .apx-dialog.tx-dialog:not(.ts-dialog):not(.ck-cl-dialog) { width: min(84rem, 92vw); max-height: 92vh; } }
.ck-drawer-head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--cds-gap-md); }
.ck-drawer-head h2 { margin: var(--cds-gap-xs) 0; font-family: var(--font-anthropic-serif); font-weight: 400; font-size: var(--cds-font-size-title); }
.ck-eq-missing { margin: 0; padding: var(--cds-pad-md); background: var(--color-panel); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); color: var(--color-fg-muted); font-size: var(--cds-font-size-body); }
.ck-eq-missing[hidden], .ck-eq-body[hidden] { display: none; }
.ck-eq-body { display: grid; gap: var(--cds-gap-lg); }
.ck-eq-group { margin: 0; padding-top: var(--cds-pad-md); border-top: 1px solid var(--color-border-line); font-size: var(--cds-font-size-heading); font-weight: var(--cds-font-weight-medium); }
.ck-table td.ck-empty-cell { color: var(--color-fg-muted); white-space: normal; }
.ck-eq-sec { display: grid; gap: var(--cds-gap-sm); min-width: 0; }
.ck-eq-sec h3 { margin: 0; font-size: var(--cds-font-size-heading); font-weight: var(--cds-font-weight-medium); }
.ck-eq-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr)); gap: var(--cds-gap-sm); }
.ck-eq-kpi { background: var(--color-panel); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-sm) var(--cds-pad-md); }
.ck-eq-big { font-family: var(--font-anthropic-serif); font-size: var(--cds-font-size-heading); font-variant-numeric: tabular-nums; }
.ck-eq-big.is-bad { color: var(--color-bad); }
.ck-drawer .ck-dl { font-size: var(--cds-font-size-body); }
.ck-drawer .ck-table-wrap { max-height: 20rem; }
.ck-drawer .ck-table-wrap.ck-free { max-height: none; }
.ck-table tbody tr.is-click { cursor: pointer; }
.ck-table tbody tr.is-click:focus-visible { outline: 2px solid var(--color-fg); outline-offset: -2px; }
.ck-table tbody tr.is-selected td { background: var(--cds-chart-grid); font-weight: var(--cds-font-weight-medium); }
.ck-table td.ck-det { color: var(--color-bad); font-weight: var(--cds-font-weight-medium); }
.ck-table th.ck-eqcol button { white-space: normal; max-width: 8rem; }
.ck-table .ck-dev { all: unset; cursor: pointer; display: inline-block; margin-left: 4px; padding: 0 4px; line-height: 1.3; border-radius: 3px; font-size: .85em; color: var(--color-fg); background: var(--cds-chart-grid); border: 1px solid var(--color-border-line); }
.ck-table .ck-dev:focus-visible, .ck-table .ck-srcbtn:focus-visible { outline: 2px solid var(--color-fg); outline-offset: 1px; }
.ck-table .ck-srcbtn { all: unset; cursor: pointer; white-space: nowrap; color: var(--color-fg); }
.ck-table .ck-srcbtn i { font-style: normal; display: inline-block; width: .9rem; color: var(--color-fg-muted); }
.ck-table .ck-srcbtn u { text-decoration: underline dotted; }
.ck-table .ck-devcount { color: var(--color-fg-muted); margin-left: 6px; white-space: nowrap; }
.ck-table tr.ck-subrow td { background: var(--color-bg); white-space: normal; padding: var(--cds-pad-sm) var(--cds-pad-md) var(--cds-pad-md) calc(var(--cds-pad-md) + 1rem); border-top: 0; }
.ck-table tr.ck-subrow:hover td { background: var(--color-bg); }
.ck-subwrap { display: grid; gap: var(--cds-gap-xs); max-width: 100%; overflow-x: auto; }
.ck-subcap { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-subtable { border-collapse: collapse; font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; width: max-content; }
.ck-subtable th { text-align: left; font-weight: var(--cds-font-weight-medium); color: var(--color-fg-muted); padding: 2px 10px 2px 0; border-bottom: 1px solid var(--color-border-line); position: static; background: none; }
.ck-subtable td { padding: 3px 10px 3px 0; border-top: 0; border-bottom: 1px solid var(--color-border-line); white-space: nowrap; }
.ck-subtable td.wrap { white-space: normal; min-width: 12rem; max-width: 24rem; color: var(--color-fg-muted); }
.ck-subtable td.ck-diff { font-weight: var(--cds-font-weight-medium); background: var(--cds-chart-grid); padding-left: 4px; }
.ck-filters[hidden] { display: none; }
.ck-qv { display: grid; grid-template-columns: minmax(16rem, 22rem) 1fr; gap: var(--cds-gap-md); align-items: start; }
@media (max-width: 760px) { .ck-qv { grid-template-columns: 1fr; } }
.ck-qv-form .ck-field input, .ck-qv-form .ck-field select, .ck-qv-form .ck-field textarea { width: 100%; box-sizing: border-box; }
.ck-qv-form textarea { font: inherit; font-size: var(--cds-font-size-body); color: var(--color-fg); background: var(--color-bg); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-xs) var(--cds-pad-sm); resize: vertical; }
.ck-qv-pair { display: grid; grid-template-columns: 1fr 1fr; gap: var(--cds-gap-sm); }
.ck-qv-actions { display: flex; align-items: center; flex-wrap: wrap; gap: var(--cds-gap-sm); }
.ck-btn-primary { background: var(--color-fg); color: var(--color-bg); border-color: var(--color-fg); }
.ck-qv-value { font-family: var(--font-anthropic-serif); font-size: calc(var(--cds-font-size-title) * 1.6); line-height: 1.1; font-variant-numeric: tabular-nums; }
.ck-qv-band { margin: 0; font-size: var(--cds-font-size-body); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.ck-qv-band b { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.ck-qv-sep { margin: 0 6px; }
.ck-qv-withtc { display: grid; gap: 4px; margin-top: var(--cds-gap-sm); padding-top: var(--cds-gap-sm); border-top: 1px solid var(--color-border-line); }
.ck-qv-withtc[hidden] { display: none; }
.ck-qv-value2 { font-family: var(--font-anthropic-serif); font-size: calc(var(--cds-font-size-title) * 1.25); line-height: 1.1; font-variant-numeric: tabular-nums; }
.ck-qv-withtc .ck-note { margin: 0; }
.ck-qv-withtc .ck-note b { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.qv-warn { margin: 0; padding-left: 1.1rem; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.qv-warn:empty { display: none; }
.ck-qv-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); gap: var(--cds-gap-sm); margin-top: var(--cds-gap-sm); }
.ck-qv-band-1 { fill-opacity: .24; }
.ck-qv-band-2 { fill-opacity: .11; }
.ck-qv-dot { fill-opacity: .7; stroke: var(--color-panel); stroke-width: 1; }
.ck-qv-dot.is-top { fill-opacity: .95; stroke: var(--color-fg); stroke-width: 1.5; }
.ck-qv-dot.is-hot { stroke: var(--color-fg); stroke-width: 2.5; }
.ck-qv-target { fill: var(--color-fg); stroke: var(--color-panel); stroke-width: 2; }
.ck-svg .ck-qv-target-label { fill: var(--color-fg); font-weight: var(--cds-font-weight-medium); paint-order: stroke; stroke: var(--color-panel); stroke-width: 3px; stroke-linejoin: round; }
.ck-qv-actbtn { font: inherit; font-size: var(--cds-font-size-caption); background: none; border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); color: var(--color-fg); padding: 2px 8px; cursor: pointer; margin-right: 4px; }
.ck-qv-actbtn.is-danger { color: var(--color-bad); }
.ck-qv-sec { border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); margin: 0; padding: var(--cds-pad-sm) var(--cds-pad-md) var(--cds-pad-md); display: grid; gap: var(--cds-gap-sm); min-width: 0; }
.ck-qv-sec legend { padding: 0 4px; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-check { display: flex; align-items: center; gap: 8px; font-size: var(--cds-font-size-body); cursor: pointer; }
.ck-check input { width: 1rem; height: 1rem; margin: 0; }
.qv-tc-fields { display: grid; gap: var(--cds-gap-sm); }
.qv-tc-fields[hidden], .qv-price-body[hidden], .ck-qv-sec [hidden] { display: none; }
.qv-disc-presets button { min-height: 1.9rem; }
.ck-qv-form input::placeholder { font-size: .92em; }
.qv-mkt-suggest { margin: 0; }
.qv-mkt-suggest button { font: inherit; font-size: var(--cds-font-size-caption); background: none; border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); color: var(--color-fg); padding: 1px 8px; margin-left: 6px; cursor: pointer; }
.qv-verdict { margin: 0; font-size: var(--cds-font-size-body); }
.qv-verdict:empty { display: none; }
.ck-qv-details summary { cursor: pointer; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); margin-bottom: var(--cds-gap-xs); }
.ck-scale-band-2 { fill-opacity: .12; }
.ck-scale-band-1 { fill-opacity: .26; }
.ck-scale-tick { stroke: var(--color-fg); stroke-width: 2; }
.ck-scale-tick.is-muted { stroke: var(--color-fg-muted); stroke-dasharray: 3 3; }
.ck-scale-ask { fill: var(--color-fg); stroke: var(--color-panel); stroke-width: 2; }
.ck-svg .ck-scale-label { fill: var(--color-fg); paint-order: stroke; stroke: var(--color-panel); stroke-width: 3px; stroke-linejoin: round; }
.ck-svg .ck-scale-label.is-muted { fill: var(--color-fg-muted); }
.ck-cf-nom { fill-opacity: .28; }
.ck-cf-pv { fill-opacity: .9; }
.ck-table tr.is-loaded td { background: var(--cds-chart-grid); }
.ck-ap-bar { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--cds-gap-sm) var(--cds-gap-lg); }
.ck-ap-run { display: flex; flex-wrap: wrap; align-items: center; gap: var(--cds-gap-sm); }
.ck-ap-bar .ap-status { flex-basis: 100%; margin: 0; }
.ck-ap-bar .ap-status:empty { display: none; }
.ck-table .ck-apv { all: unset; cursor: pointer; display: inline-flex; flex-direction: column; align-items: flex-end; line-height: 1.2; padding: 2px 4px; border-radius: 4px; }
.ck-table .ck-apv:hover, .ck-table .ck-apv:focus-visible { background: var(--cds-chart-grid); }
.ck-table .ck-apv:focus-visible { outline: 2px solid var(--color-fg); outline-offset: 0; }
.ck-table .ck-apv.is-sel { background: var(--color-fg); color: var(--color-bg); }
.ck-table .ck-apv.is-sel .ck-apch { color: inherit; }
.ck-table .ck-apv.is-x .ck-apval { font-style: italic; color: var(--color-fg-muted); }
.ck-table .ck-apv.is-sm .ck-apval { text-decoration: underline dotted; text-underline-offset: 3px; }
.ck-table .ck-apch { font-size: .82em; color: var(--color-fg-muted); }
.ck-table .ck-apch.is-up { color: var(--color-ok); }
.ck-table .ck-apch.is-down { color: var(--color-bad); }
.ck-table .ck-apna { color: var(--color-fg-muted); }
.ck-tree .ck-apname { all: unset; cursor: pointer; margin-left: 4px; }
.ck-tree .ck-leaf .ck-apname { margin-left: 0; }
.ck-tree .ck-apname:hover { text-decoration: underline; }
.ck-ap-line { fill: none; stroke-width: 2; }
.ck-ap-pt { stroke: var(--color-panel); stroke-width: 1.5; }
.ck-chart-tools { display: flex; justify-content: flex-end; align-items: center; gap: 6px; margin: 0 0 2px; min-height: 1.6rem; }
.ck-tool { font: inherit; font-size: var(--cds-font-size-caption); line-height: 1.4; background: none; border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); color: var(--color-fg-muted); padding: 1px 9px; cursor: pointer; }
.ck-tool:hover { color: var(--color-fg); border-color: var(--color-fg-muted); }
.ck-tool:focus-visible { outline: 2px solid var(--color-fg); outline-offset: 1px; }
.ck-tool[hidden], .ck-tool-hint[hidden] { display: none; }
.ck-tool-hint { margin-right: auto; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
@media (hover: none) { .ck-tool-hint { display: none; } }
.ck-chart svg { -webkit-user-select: none; user-select: none; touch-action: pan-y; }
.ck-brush { fill: var(--color-fg); fill-opacity: .07; stroke: var(--color-fg); stroke-width: 1; stroke-dasharray: 3 3; pointer-events: none; }
dialog.ck-dialog { position: fixed; inset: 0; margin: auto; padding: 0; border: 0; background: transparent; color: inherit; overflow: visible;
  width: calc(100vw - 32px); height: calc(100vh - 32px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)); max-width: none; max-height: none; }
dialog.ck-dialog::backdrop { background: rgba(0, 0, 0, .5); }
dialog.ck-dialog.is-fallback { z-index: 2147483000; box-shadow: 0 0 0 100vmax rgba(0, 0, 0, .5); }
dialog.ck-dialog > .ck-card.is-expanded { height: 100%; width: 100%; max-width: none; margin: 0; box-sizing: border-box; overflow: auto; box-shadow: 0 16px 60px rgba(0, 0, 0, .35); }
.ck-expand-spacer { visibility: hidden; }
html.ck-noscroll, html.ck-noscroll body { overflow: hidden; }
.ck-tslider { margin-top: 8px; display: grid; gap: 2px; }
.ck-tslider[hidden] { display: none; }
.ck-tslider-inputs { position: relative; height: 22px; }
.ck-tslider-track { position: absolute; left: 8px; right: 8px; top: 9px; height: 4px; border-radius: 2px; background: var(--cds-chart-grid); }
.ck-tslider-fill { position: absolute; top: 0; bottom: 0; border-radius: 2px; background: var(--color-fg-muted); }
.ck-tslider input[type=range] { position: absolute; inset: 0; width: 100%; height: 22px; margin: 0; background: none; pointer-events: none; -webkit-appearance: none; appearance: none; }
.ck-tslider input[type=range]::-webkit-slider-runnable-track { background: none; border: 0; }
.ck-tslider input[type=range]::-moz-range-track { background: none; border: 0; }
.ck-tslider input[type=range]::-webkit-slider-thumb { pointer-events: auto; -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: var(--color-panel); border: 2px solid var(--color-fg); cursor: grab; }
.ck-tslider input[type=range]::-moz-range-thumb { pointer-events: auto; width: 13px; height: 13px; border-radius: 50%; background: var(--color-panel); border: 2px solid var(--color-fg); cursor: grab; }
.ck-tslider input[type=range]:focus-visible::-webkit-slider-thumb { outline: 2px solid var(--color-fg); outline-offset: 2px; }
.ck-tslider-labels { display: flex; justify-content: space-between; gap: 8px; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.ck-tslider-mid { text-align: center; flex: 1; }
html.ck-noscroll .dash-page { overflow: hidden; }
.ck-vl-filters { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--cds-gap-sm); }
.ck-vl-filters .ck-vl-q { flex: 1 1 16rem; }
.ck-vl-filters .ck-vl-q input { width: 100%; }
.ck-vl-sum { display: flex; flex-wrap: wrap; gap: var(--cds-gap-md); margin: 0; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); }
.ck-vl-sum b { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); font-variant-numeric: tabular-nums; }
.ck-vl-table td { white-space: nowrap; }
.ck-vl-table td:first-child { font-weight: var(--cds-font-weight-medium); }
.ck-vl-detail { display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: var(--cds-gap-md); padding: var(--cds-gap-sm) 0; white-space: normal; }
.ck-vl-group h4 { margin: 0 0 4px; font-size: var(--cds-font-size-caption); font-weight: var(--cds-font-weight-medium); color: var(--color-fg-muted); text-transform: uppercase; letter-spacing: .04em; }
.ck-vl-group dl { display: grid; grid-template-columns: auto 1fr; gap: 2px 12px; margin: 0; font-size: var(--cds-font-size-caption); }
.ck-vl-group dt { color: var(--color-fg-muted); }
.ck-vl-group dd { margin: 0; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.ck-vl-group .ck-note { margin: 0; }
.ck-exnames { margin: 2px 0 0; font-style: italic; }
.wh-insights { margin: 0; padding-left: 1.2rem; display: grid; gap: 6px; }
.wh-insights li { line-height: 1.45; }
.wh-search-results { display: flex; flex-wrap: wrap; gap: 6px; }
.wh-chip { display: inline-flex; align-items: center; gap: 6px; padding: 3px 8px; border: 1px solid var(--color-border-line); border-radius: 999px; font-size: var(--cds-font-size-caption); }
.wh-div { display: grid; gap: 3px; }
.wh-div-row { display: grid; grid-template-columns: minmax(7rem, 11rem) 1fr 4.2rem; gap: 8px; align-items: center; font-size: var(--cds-font-size-caption); }
.wh-div-track { position: relative; height: 14px; }
.wh-div-track::before { content: ""; position: absolute; left: 50%; top: -2px; bottom: -2px; border-left: 1px solid var(--color-border-strong); }
.wh-div-bar { position: absolute; top: 2px; height: 10px; border-radius: 2px; }
.wh-div-val { text-align: right; font-variant-numeric: tabular-nums; }
.wh-status { font-size: var(--cds-font-size-caption); padding: 1px 6px; border-radius: 999px; border: 1px solid var(--color-border-line); white-space: nowrap; }
.wh-status[data-s="excluded"], .wh-status[data-s="nationality"] { color: var(--color-fg-muted); }
.wh-status[data-s="included"] { border-color: var(--color-ok); }
tr.wh-dim td { color: var(--color-fg-muted); }
.wh-signal { font-weight: var(--cds-font-weight-medium); }
.wh-bt-card h4 { margin: var(--cds-gap-md) 0 var(--cds-gap-xs); }
.wh-bt-sets { display: grid; gap: 6px; }
.wh-bt-set { border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); }
.wh-bt-set > summary { cursor: pointer; padding: 8px 10px; border-left: 4px solid var(--color-border-strong); border-radius: var(--cds-radius); }
.wh-bt-set[open] > summary { border-bottom: 1px solid var(--color-border-line); border-radius: var(--cds-radius) var(--cds-radius) 0 0; }
.wh-bt-set > .ck-table-wrap { max-height: 24rem; overflow: auto; padding: 0 8px; }
.wh-bt-an { margin: 8px; padding: 10px 12px; border: 1px solid var(--color-border-strong); border-radius: var(--cds-radius); background: color-mix(in srgb, var(--color-fg) 3%, transparent); }
.wh-bt-an-head { display: flex; align-items: center; gap: 10px; }
.wh-bt-an-head h5 { margin: 0; margin-right: auto; font-size: var(--cds-font-size-body); }
.wh-bt-an h5 { margin: 10px 0 4px; }
.wh-bt-facts { display: grid; grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr)); gap: 6px 14px; margin: 6px 0; font-size: var(--cds-font-size-caption); }
.wh-bt-facts span { display: block; color: var(--color-fg-muted); }
.wh-dec-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr)); gap: var(--cds-gap-md); }
.wh-dec-col h4 { margin: 0 0 var(--cds-gap-xs); }
.wh-dec-list { display: grid; gap: 8px; }
.wh-dec-item { border: 1px solid var(--color-border-line); border-left-width: 4px; border-radius: var(--cds-radius); padding: 8px 10px; display: grid; gap: 4px; }
.wh-dec-item[data-act="buy"] { border-left-color: var(--color-ok); }
.wh-dec-item[data-act="avoid"] { border-left-color: var(--color-bad); }
.wh-dec-top { display: flex; justify-content: space-between; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.wh-dec-type { font-weight: var(--cds-font-weight-medium); }
.wh-dec-badges { display: flex; gap: 4px; flex-wrap: wrap; }
.wh-badge { font-size: var(--cds-font-size-caption); padding: 1px 7px; border-radius: 999px; border: 1px solid var(--color-border-line); white-space: nowrap; }
.wh-badge[data-k="buy"] { color: var(--color-ok); border-color: var(--color-ok); }
.wh-badge[data-k="avoid"] { color: var(--color-bad); border-color: var(--color-bad); }
.wh-badge[data-c="High"] { font-weight: var(--cds-font-weight-medium); }
.wh-dec-facts { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.wh-dec-why { margin: 0; padding-left: 1rem; font-size: var(--cds-font-size-caption); }
.wh-dec-rules { margin-top: 8px; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.wh-dec-empty { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.imp-drop { border: 2px dashed var(--color-border-strong); border-radius: var(--cds-radius); padding: 28px 16px; text-align: center; cursor: pointer; color: var(--color-fg-muted); }
.imp-drop.is-over, .imp-drop:hover, .imp-drop:focus-visible { border-color: var(--color-fg); color: var(--color-fg); outline: none; }
.imp-msg[data-kind="err"] { color: var(--color-bad); } .imp-msg[data-kind="ok"] { color: var(--color-ok); }
.imp-table { border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: 8px 10px; margin: 0 0 8px; }
.imp-thead { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-bottom: 6px; }
.imp-use { font-weight: var(--cds-font-weight-medium); margin-right: auto; }
.imp-thead select, .imp-col select { font: inherit; font-size: var(--cds-font-size-caption); }
.imp-cols { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 4px; }
.imp-col { display: grid; gap: 2px; min-width: 8.5rem; font-size: var(--cds-font-size-caption); }
.imp-col-h { font-weight: var(--cds-font-weight-medium); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.imp-col-x { color: var(--color-fg-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.imp-bar { display: flex; gap: 8px; align-items: center; margin: 4px 0 8px; }
.imp-bar .imp-count { margin-right: auto; color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); }
.imp-recs { border-collapse: collapse; font-size: var(--cds-font-size-caption); }
.imp-recs th { text-align: left; font-weight: var(--cds-font-weight-medium); padding: 3px 4px; position: sticky; top: 0; background: var(--color-panel); white-space: nowrap; }
.imp-recs td { padding: 1px 2px; border-top: 1px solid var(--color-border-line); }
.imp-recs input:not([type="checkbox"]) { font: inherit; font-size: var(--cds-font-size-caption); border: 1px solid transparent; background: transparent; color: var(--color-fg); padding: 2px 3px; border-radius: 3px; }
.imp-recs input:not([type="checkbox"]):hover, .imp-recs input:not([type="checkbox"]):focus { border-color: var(--color-border-line); background: var(--color-bg); }
.imp-recs input.imp-changed { background: color-mix(in srgb, var(--color-warn) 18%, transparent); }
.imp-recs tr.imp-off td { opacity: .45; }
.imp-ev { max-width: 22rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--color-fg-muted); }
.imp-files { margin: var(--cds-gap-xs) 0; }
.imp-files-table td, .imp-files-table th { padding: 3px 8px; }
.imp-files-table tr.is-selected td { background: color-mix(in srgb, var(--color-fg) 6%, transparent); font-weight: var(--cds-font-weight-medium); }
.imp-st-ready { color: var(--color-ok); } .imp-st-imported { color: var(--color-ok); font-weight: var(--cds-font-weight-medium); }
.imp-st-error, .imp-st-empty { color: var(--color-bad); } .imp-st-duplicate, .imp-st-queued { color: var(--color-fg-muted); }
.da-controls .ck-field { min-width: 8.5rem; }
.da-list-filters .ck-field { min-width: 7rem; }
.da-l-checks { display: flex; flex-wrap: wrap; gap: 4px 14px; align-items: center; }
.da-mx-ctl { display: flex; gap: 10px; flex-wrap: wrap; }
.da-mx td { min-width: 5.5rem; cursor: pointer; }
.da-mx td.da-mx-empty { cursor: default; background: transparent; }
.da-mx td.da-mx-all, .da-mx tr.da-mx-total td { font-weight: var(--cds-font-weight-medium); }
.da-mx tr.da-mx-total th, .da-mx tr.da-mx-total td { border-top: 2px solid var(--color-border-strong); }
.da-mx th.da-mx-type { text-align: left; white-space: nowrap; font-weight: 400; }
.da-mx .da-mx-v { display: inline-block; min-width: 3.2rem; }
.da-mx .da-mx-n { font-size: .8em; color: var(--color-fg-muted); margin-left: 6px; }
.da-mx td.is-click:hover { outline: 2px solid var(--color-fg-muted); outline-offset: -2px; }
.da-mx td.da-r-A { background: color-mix(in srgb, var(--color-ok) 40%, transparent); } .da-mx td.da-r-B { background: color-mix(in srgb, var(--color-ok) 20%, transparent); }
.da-mx td.da-r-C { background: color-mix(in srgb, var(--color-warn) 25%, transparent); } .da-mx td.da-r-D { background: color-mix(in srgb, var(--color-bad) 15%, transparent); }
.da-mx td.da-r-E { background: color-mix(in srgb, var(--color-bad) 32%, transparent); }
.da-dialog .da-verdict { padding: 8px 12px; border-radius: var(--cds-radius); margin: var(--cds-gap-xs) 0; }
.da-verdict.da-r-A { background: color-mix(in srgb, var(--color-ok) 30%, transparent); } .da-verdict.da-r-B { background: color-mix(in srgb, var(--color-ok) 16%, transparent); }
.da-verdict.da-r-C { background: color-mix(in srgb, var(--color-warn) 22%, transparent); } .da-verdict.da-r-D { background: color-mix(in srgb, var(--color-bad) 14%, transparent); }
.da-verdict.da-r-E { background: color-mix(in srgb, var(--color-bad) 26%, transparent); }
.da-dlg-kpis { grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); }
.da-dlg-chart { position: relative; }
.da-stand { display: grid; gap: 4px; }
.da-st-row { display: grid; grid-template-columns: minmax(10rem, 13rem) 1fr minmax(8rem, auto); gap: 8px; align-items: center; font-size: var(--cds-font-size-caption); }
.da-st-track { position: relative; height: 18px; background: linear-gradient(var(--color-border-line), var(--color-border-line)) center / 100% 1px no-repeat; }
.da-st-track i { position: absolute; top: 50%; border-radius: 50%; transform: translate(-50%, -50%); }
.da-st-all { width: 5px; height: 5px; background: var(--color-border-strong); opacity: .7; }
.da-st-type { width: 8px; height: 8px; background: var(--color-warn); }
.da-st-me { width: 12px; height: 12px; background: var(--color-fg); box-shadow: 0 0 0 2px var(--color-panel); }
.da-years td { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.qvl-box { border-top: 1px solid var(--color-border-line); margin-top: var(--cds-gap-md); padding-top: var(--cds-gap-xs); }
.qvl-box h4 { margin: var(--cds-gap-xs) 0; }
.qvl-ctl .ck-field { min-width: 9rem; }
.qvl-sens { margin-top: var(--cds-gap-md); }
.qvl-sens .ck-card-head h4 { margin: 0; }
.ck-footer { display: flex; justify-content: flex-end; align-items: center; gap: 10px; padding: var(--cds-gap-md) 0 var(--cds-gap-xs); margin-top: var(--cds-gap-md); border-top: 1px solid var(--color-border-line); font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-changelog-btn { font: inherit; background: none; border: 0; padding: 2px 0; color: var(--color-fg); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.ck-changelog-btn:hover, .ck-changelog-btn:focus-visible { color: var(--color-fg); text-decoration-thickness: 2px; outline: none; }
.ck-cl-dialog { width: min(64rem, 96vw); }
.ck-cl-table td:first-child { white-space: nowrap; }
.ck-cl-req { margin-top: 4px; }
.ck-cl-req summary { cursor: pointer; color: var(--color-fg-muted); font-size: .85em; }
.ck-cl-req[open] summary { color: var(--color-fg); }
.ck-cl-tldr { margin: 4px 0 2px; padding: 6px 10px; border-left: 3px solid var(--color-border-strong); background: color-mix(in srgb, var(--color-fg) 4%, transparent); white-space: normal; }
.ck-cl-change { white-space: normal; color: var(--color-fg); }
.ts-filters .ck-field { min-width: 8rem; }
.ts-status { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ts-series-wrap { max-height: 30rem; overflow: auto; }
#ts-series-table td.wrap { color: var(--color-fg); min-width: 14rem; }
.ts-range { display: flex; gap: 4px; flex-wrap: wrap; }
.ts-range .ck-tool.is-on { background: var(--color-fg); color: var(--color-bg); }
.ts-ctl { align-items: flex-end; }
.ts-legend { display: flex; flex-wrap: wrap; gap: 6px 12px; margin: 6px 0; }
.ts-chip { display: inline-flex; align-items: center; gap: 6px; font-size: var(--cds-font-size-caption); }
.ts-chip i { width: 14px; height: 4px; border-radius: 2px; }
.ts-chip-x { border: 0; background: none; color: var(--color-fg-muted); cursor: pointer; font: inherit; padding: 0 2px; }
.ts-chart { position: relative; }
.ts-grid-wrap { max-height: 28rem; overflow: auto; }
.ts-dialog { width: min(48rem, 96vw); }
.tsm-basis { display: flex; gap: 0; }
.tsm-basis .ck-tool { border-radius: 0; } .tsm-basis .ck-tool:first-child { border-radius: var(--cds-radius) 0 0 var(--cds-radius); } .tsm-basis .ck-tool:last-child { border-radius: 0 var(--cds-radius) var(--cds-radius) 0; }
.tsm-basis .ck-tool.is-on { background: var(--color-fg); color: var(--color-bg); }
.tsm-table td.tsm-v { cursor: pointer; white-space: nowrap; }
.tsm-table td.tsm-v:hover { outline: 2px solid var(--color-fg-muted); outline-offset: -2px; }
.tsm-table td .tsm-sub { display: block; font-size: .8em; color: var(--color-fg-muted); }
.tsm-table td.is-derived .tsm-main { font-style: italic; color: var(--color-fg-muted); }
.tsm-table tr.tsm-seg td { font-weight: var(--cds-font-weight-medium); background: color-mix(in srgb, var(--color-fg) 4%, transparent); }
.tsm-table tr.tsm-design td:first-child { padding-left: 2rem; }
.tsm-table tr.tsm-sub td:first-child { padding-left: 1rem; }
.tsm-up { color: var(--color-ok); } .tsm-down { color: var(--color-bad); }
.vb-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.vb-head h3 { margin-right: auto; }
.vb-switch { display: inline-flex; }
.vb-switch .ck-tool { border-radius: 0; } .vb-switch .ck-tool:first-child { border-radius: var(--cds-radius) 0 0 var(--cds-radius); } .vb-switch .ck-tool:last-child { border-radius: 0 var(--cds-radius) var(--cds-radius) 0; }
.vb-switch .ck-tool.is-on { background: var(--color-fg); color: var(--color-bg); }
.vb-note:empty { display: none; }
.qv-ts-rec-box { margin-top: 6px; }
.ck-ts-curve { fill: none; stroke-width: 2.2; stroke-dasharray: 7 4; opacity: .9; }
.ck-ts-label { font-weight: var(--cds-font-weight-medium); }
.ck-ts-band { opacity: .1; stroke: none; }
.ck-ts-edge { fill: none; stroke-width: 1; stroke-dasharray: 2 3; opacity: .55; }
.ck-vv-ts { fill: none; stroke-width: 2; stroke-dasharray: 7 4; }
.ck-vv-tsband { fill-opacity: .1; stroke: none; }
.ck-vv-tsedge { fill: none; stroke-width: 1; stroke-dasharray: 2 3; stroke-opacity: .55; }
.da-insights { margin: 0; padding-left: 1.1rem; display: grid; gap: 4px; }
.da-bars, .da-strips { display: grid; gap: 3px; }
.da-bar-row, .da-strip-row, .da-tor-row { display: grid; grid-template-columns: minmax(7rem, 11rem) 1fr minmax(5.5rem, auto); gap: 8px; align-items: center; font-size: var(--cds-font-size-caption); min-height: 20px; }
.da-bar-row.is-click { cursor: pointer; } .da-bar-row.is-click:hover .da-bar-label, .da-bar-row.is-active .da-bar-label { font-weight: var(--cds-font-weight-medium); }
.da-bar-row.is-active { background: color-mix(in srgb, var(--color-fg) 6%, transparent); border-radius: 3px; }
.da-bar-label { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.da-bar-val { text-align: right; font-variant-numeric: tabular-nums; color: var(--color-fg-muted); white-space: nowrap; }
.da-bar-track, .da-strip-track, .da-tor-track { position: relative; height: 14px; }
.da-bar { position: absolute; top: 2px; bottom: 2px; border-radius: 2px; }
.da-bar-zero { position: absolute; top: 0; bottom: 0; width: 1px; background: var(--color-border-strong); }
.da-bar-ref { position: absolute; top: -2px; bottom: -2px; border-left: 1px dashed var(--color-fg-muted); }
.da-strip-track { background: linear-gradient(var(--color-border-line), var(--color-border-line)) center / 100% 1px no-repeat; }
.da-strip-band { position: absolute; top: 4px; bottom: 4px; background: color-mix(in srgb, var(--color-ok) 30%, transparent); border-radius: 2px; }
.da-strip-band.is-bad { background: color-mix(in srgb, var(--color-bad) 30%, transparent); }
.da-dot, .da-key { display: inline-block; width: 10px; height: 10px; border-radius: 50%; }
.da-dot { position: absolute; top: 2px; margin-left: -5px; }
.da-dot-be, .da-key-be { background: var(--color-fg); border-radius: 2px; }
.da-dot-fc, .da-key-fc { background: var(--color-warn); }
.da-dot-fu, .da-key-fu { background: var(--color-ok); }
.da-tor-track { background: linear-gradient(var(--color-border-strong), var(--color-border-strong)) 50% 0 / 1px 100% no-repeat; }
.da-tor-bar { position: absolute; top: 2px; bottom: 2px; border-radius: 2px; }
.da-tor-bar.is-neg { background: var(--color-bad); } .da-tor-bar.is-pos { background: var(--color-ok); }
.da-tor-base { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); margin-bottom: 4px; }
.da-grid { border-collapse: collapse; font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; }
.da-grid th, .da-grid td { padding: 4px 8px; text-align: right; border: 1px solid var(--color-border-line); white-space: nowrap; }
.da-grid thead th:first-child { text-align: left; color: var(--color-fg-muted); font-weight: 400; }
.da-grid td.da-h-good { background: color-mix(in srgb, var(--color-ok) 28%, transparent); }
.da-grid td.da-h-mid { background: color-mix(in srgb, var(--color-warn) 25%, transparent); }
.da-grid td.da-h-low { background: color-mix(in srgb, var(--color-fg) 5%, transparent); }
.da-grid td.da-h-bad { background: color-mix(in srgb, var(--color-bad) 25%, transparent); }
.da-grid td.is-base { outline: 2px solid var(--color-fg); outline-offset: -2px; font-weight: var(--cds-font-weight-medium); }
.da-svg .da-axis text { fill: var(--color-fg-muted); font-size: 11px; } .da-svg .da-axis path, .da-svg .da-axis line { stroke: var(--color-border-line); }
.da-svg .da-axis-l { fill: var(--color-fg-muted); font-size: 11px; }
.da-svg .da-ref { stroke: var(--color-fg-muted); stroke-dasharray: 4 3; }
.da-svg .da-zone { fill: var(--color-fg-muted); font-size: 11px; font-style: italic; }
.da-svg circle.is-click { cursor: pointer; }
.wh-good { color: var(--color-ok); font-weight: var(--cds-font-weight-medium); }
.wh-bad { color: var(--color-bad); font-weight: var(--cds-font-weight-medium); }
.apx-tag { display: inline-block; font-size: var(--cds-font-size-caption); padding: 1px 6px; border-radius: 999px; border: 1px solid var(--color-bad); color: var(--color-bad); margin-right: 4px; }
.apx-btn { white-space: nowrap; }
.tx-open { all: unset; cursor: pointer; color: var(--color-fg); text-decoration: underline; text-decoration-style: dotted; text-underline-offset: 3px; }
.tx-open:hover, .tx-open:focus-visible { text-decoration-style: solid; outline: none; }
.apx-dialog.tx-dialog { width: min(64rem, 96vw); max-width: none; max-height: 90vh; overflow: auto; }
.tx-dialog .tx-head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--cds-gap-sm); }
.tx-dialog h4 { margin: var(--cds-gap-md) 0 var(--cds-gap-xs); }
.tx-dialog .tx-acts { justify-content: flex-start; }
.tx-dialog .ck-table-wrap { max-height: 22rem; }
.tx-fold { margin: var(--cds-gap-xs) 0; }
.tx-fold > summary { cursor: pointer; font-weight: var(--cds-font-weight-medium); }
.tx-excl-fold > summary { font-weight: 400; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.tx-excl-fold .tx-excl { margin-top: 4px; }
.tx-excl-fold .tx-excl textarea { min-height: 3rem; }
.tx-kv { width: 100%; }
.tx-kv th { text-align: left; font-weight: 400; color: var(--color-fg-muted); width: 34%; vertical-align: top; padding: 2px 8px 2px 0; }
.tx-kv td { padding: 2px 0; overflow-wrap: anywhere; }
.tx-kv-h { margin: 8px 0 2px; font-weight: var(--cds-font-weight-medium); font-size: var(--cds-font-size-caption); }
.tx-excl { margin: var(--cds-gap-sm) 0 0; padding: var(--cds-pad-sm) var(--cds-pad-md); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); }
.tx-excl-h { font-weight: var(--cds-font-weight-medium); }
.tx-head-btns { display: flex; gap: var(--cds-gap-xs); flex-wrap: wrap; justify-content: flex-end; }
.tx-excluded { margin: 0 0 var(--cds-gap-xs); padding: 6px 10px; border-left: 3px solid var(--color-bad); }
.tx-excl textarea { width: 100%; min-height: 4.5rem; box-sizing: border-box; font: inherit; padding: 8px; border: 1px solid var(--color-border-strong); border-radius: var(--cds-radius); background: var(--color-bg); color: var(--color-fg); }
.tx-excl .apx-msg[data-kind="err"] { color: var(--color-bad); }
.apx-dialog { max-width: min(36rem, 94vw); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); background: var(--color-bg); color: var(--color-fg); padding: var(--cds-pad-lg); }
.apx-dialog::backdrop { background: rgba(0, 0, 0, .35); }
.apx-dialog[open] { margin: auto; position: fixed; inset: 0; height: fit-content; }
.apx-dialog h3 { margin: 0 0 var(--cds-gap-sm); }
.apx-dialog textarea { width: 100%; min-height: 6rem; box-sizing: border-box; font: inherit; padding: 8px; border: 1px solid var(--color-border-strong); border-radius: var(--cds-radius); background: var(--color-bg); color: var(--color-fg); }
.apx-dialog .apx-row { display: flex; gap: var(--cds-gap-sm); justify-content: flex-end; align-items: center; margin-top: var(--cds-gap-sm); flex-wrap: wrap; }
.apx-dialog .apx-count { margin-right: auto; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.apx-dialog .apx-msg[data-kind="err"] { color: var(--color-bad); }
.ck-export-tools { display: flex; justify-content: flex-end; margin: 0 0 4px; }
.ck-table-tools .ck-export { margin-left: auto; display: inline-flex; gap: 4px; }
.ck-export-status { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); margin-left: 6px; }
.ck-export-status[data-kind="err"] { color: var(--color-bad); }
.ck-drawer-actions { display: flex; gap: var(--cds-gap-xs); align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.ck-pdf-render .ck-chart-tools, .ck-pdf-render .ck-tslider, .ck-pdf-render .ck-toggle, .ck-pdf-render .ck-table-tools, .ck-pdf-render .ck-export-tools,
.ck-pdf-render .ck-fl-actions, .ck-pdf-render .ck-drawer-actions, .ck-pdf-render .ck-btn, .ck-pdf-render .ck-tool, .ck-pdf-render .ck-vl-mapbtn,
.ck-pdf-render .ck-export-status, .ck-pdf-render .vv-controls, .ck-pdf-render .ck-fl-new, .ck-pdf-render .ck-fl-edit, .ck-pdf-render .ck-vmap-tools,
.ck-pdf-render .ck-map-btns, .ck-pdf-render .ck-tip, .ck-pdf-render .ck-search-hint { display: none !important; }
.ck-pdf-render .ck-table-wrap { max-height: none !important; overflow: visible !important; }
.ck-pdf-render .fd-view[hidden] { display: none !important; }
.ck-pdf-more { font-style: italic; color: var(--color-fg-muted); }
.ck-pdf-bar { display: flex; justify-content: flex-end; gap: var(--cds-gap-xs); margin: 0 0 var(--cds-gap-sm); }
.ck-pdf-render .ck-pdf-bar, .ck-pdf-render .qv-saved-actions, .ck-pdf-render .ck-qv-save { display: none !important; }
.ck-brand { display: flex; align-items: center; gap: var(--cds-gap-sm); }
.ck-logo { flex: none; height: 2.6rem; width: auto; aspect-ratio: 1082 / 1220; color: var(--color-fg); }
.fd-valtime-mode, .fd-type-mode { margin: 0 0 var(--cds-gap-xs); }
.ck-fd-subcard { padding: var(--cds-pad-sm) var(--cds-pad-md); margin: var(--cds-gap-sm) 0; }
.ck-fd-subcard.is-expanded { width: min(1200px, 94vw); }
.ck-tip.ck-tip-fixed { position: fixed; z-index: 1000; pointer-events: none; max-width: 300px; }
.ck-apspark-box { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--color-border-line); }
.ck-apspark-h { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); margin-bottom: 2px; }
.ck-apspark { display: block; }
.ck-apspark-all { fill: none; stroke: var(--cds-chart-1, #3b82c4); stroke-width: 1; stroke-opacity: .45; }
.ck-apspark-own { fill: none; stroke: var(--cds-chart-1, #3b82c4); stroke-width: 2; }
.ck-apspark-dot { fill: var(--cds-chart-2, #c4553b); stroke: var(--color-bg); stroke-width: 1; }
.ck-apspark-t { font-size: 9px; fill: var(--color-fg-muted); }
.ck-sg-wrap { position: relative; }
.ck-sg { position: absolute; left: 0; right: 0; top: 100%; z-index: 60; margin: 2px 0 0; padding: 4px 0; list-style: none; max-height: 18rem; overflow: auto;
  background: var(--color-bg); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); box-shadow: 0 6px 20px rgba(0, 0, 0, .14); font-weight: normal; min-width: 18rem; }
.ck-sg[hidden] { display: none; }
.ck-sg-item { display: grid; grid-template-columns: 5.2rem 1fr auto; gap: 8px; align-items: baseline; padding: 5px 10px; cursor: pointer; font-size: var(--cds-font-size-body); }
.ck-sg-item:hover, .ck-sg-item.is-active { background: color-mix(in srgb, var(--color-fg) 7%, transparent); }
.ck-sg-fld { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); text-transform: uppercase; letter-spacing: .03em; }
.ck-sg-val { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ck-sg-val b { font-weight: var(--cds-font-weight-medium); text-decoration: underline; text-underline-offset: 2px; }
.ck-sg-n { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); font-variant-numeric: tabular-nums; }
.ck-vf { display: grid; grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr)); gap: 6px 14px; margin: var(--cds-gap-sm) 0 0; }
.ck-vf:empty { display: none; }
.ck-vf > div { min-width: 0; }
.ck-vf dt { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-vf dd { margin: 0; font-size: var(--cds-font-size-body); line-height: 1.35; font-weight: var(--cds-font-weight-medium); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.ck-vf dt { line-height: 1.3; }
.ck-drawer-head > div:first-child { flex: 1 1 auto; min-width: 0; }
.ck-vv-chart { position: relative; width: 100%; }
.ck-vv-chart svg { display: block; width: 100%; }
.vv-chart-title { margin: 0; font-size: var(--cds-font-size-body); font-weight: var(--cds-font-weight-medium); }
.ck-vv-card { margin: var(--cds-gap-sm) 0 0; padding: var(--cds-pad-sm) var(--cds-pad-md); display: grid; gap: var(--cds-gap-xs); }
.ck-vv-card .ck-note { margin: 0; }
.vv-controls { display: flex; flex-wrap: wrap; gap: var(--cds-gap-xs) var(--cds-gap-sm); }
.ck-vv-card.is-expanded { width: min(1100px, 94vw); }
.ck-vv-band { fill: color-mix(in srgb, var(--cds-chart-1, #3b82c4) 18%, transparent); }
.ck-vv-line { fill: none; stroke-width: 2; }
.ck-vv-ref { fill: none; stroke-width: 1.2; stroke-dasharray: 5 4; }
.ck-vv-dot { stroke: var(--color-bg); stroke-width: 1.2; }
.ck-stale { display: flex; flex-wrap: wrap; align-items: center; gap: var(--cds-gap-sm); margin: var(--cds-gap-sm) 0; padding: var(--cds-pad-sm) var(--cds-pad-md); border: 1px solid var(--color-bad); border-radius: var(--cds-radius); }
.ck-stale[hidden] { display: none; }
.ck-exname { color: var(--color-fg-muted); font-weight: normal; font-style: italic; }
td.ck-strong { font-weight: var(--cds-font-weight-medium); }
.ck-vmap-head { display: flex; flex-wrap: wrap; align-items: center; gap: var(--cds-gap-sm); }
.ck-vmap-head h3 { margin-right: auto; }
.ck-vmap-box { position: relative; width: 100%; border-radius: var(--cds-radius); overflow: hidden; border: 1px solid var(--color-border-line); }
.ck-vmap-box svg { display: block; width: 100%; touch-action: none; cursor: grab; }
.ck-vmap-box svg:active { cursor: grabbing; }
.ck-map-sea { fill: color-mix(in srgb, #3b82c4 16%, var(--color-bg)); }
.ck-map-land { fill: color-mix(in srgb, var(--color-fg) 5%, var(--color-bg)); stroke: color-mix(in srgb, var(--color-fg) 28%, transparent); stroke-width: .6; vector-effect: non-scaling-stroke; }
.ck-map-grid { fill: none; stroke: color-mix(in srgb, var(--color-fg) 10%, transparent); stroke-width: .5; vector-effect: non-scaling-stroke; }
.ck-map-track { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.ck-map-dot { stroke: var(--color-bg); stroke-width: 1; vector-effect: non-scaling-stroke; }
.ck-map-ship { stroke: var(--color-bg); stroke-width: 1.2; vector-effect: non-scaling-stroke; }
.ck-map-scale path { fill: none; stroke: var(--color-fg); stroke-width: 1.5; }
.ck-map-scale text { font-size: 10px; fill: var(--color-fg); paint-order: stroke; stroke: var(--color-bg); stroke-width: 3px; }
.ck-map-label { font-size: 11px; fill: var(--color-fg); paint-order: stroke; stroke: var(--color-bg); stroke-width: 3px; stroke-linejoin: round; }
.ck-map-btns { position: absolute; right: 8px; top: 8px; display: grid; gap: 4px; }
.ck-map-btns button { width: 28px; height: 28px; font: inherit; font-size: 16px; line-height: 1; border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); background: var(--color-bg); color: var(--color-fg); cursor: pointer; }
.vmap-osm { font-size: var(--cds-font-size-caption); justify-self: start; }
.ck-vl-mapbtn { margin-left: 6px; font-size: var(--cds-font-size-caption); padding: 0 6px; min-height: 0; line-height: 1.6; }
dialog.ck-track-dialog > .ck-card { height: 100%; width: 100%; box-sizing: border-box; overflow: auto; margin: 0; display: grid; grid-template-rows: auto 1fr auto auto auto; gap: var(--cds-gap-sm); }
dialog.ck-track-dialog .ck-vmap-box { min-height: 0; }
dialog.ck-add-dialog { width: min(760px, 94vw); max-height: 92vh; padding: 0; border: 0; border-radius: var(--cds-radius); background: transparent; }
dialog.ck-add-dialog::backdrop { background: rgba(0, 0, 0, .45); }
dialog.ck-add-dialog > .ck-card { margin: 0; display: grid; gap: var(--cds-gap-sm); max-height: 92vh; overflow: auto; box-sizing: border-box; }
.ck-add-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: var(--cds-gap-sm); }
.ck-add-grid .ck-field input, .ck-add-grid .ck-field select, .ck-add-grid .ck-field textarea { width: 100%; box-sizing: border-box; font: inherit; }
.ck-add-wide { grid-column: 1 / -1; margin: 0; }
.vl-add-imo-state.is-bad, .vl-add-status.is-bad { color: var(--color-bad); }
.vl-add-imo-state.is-ok { color: var(--color-good, inherit); }
.ck-add-dialog.is-attach .vl-add-new { display: none; }
.ck-vl-ais { display: flex; flex-wrap: wrap; align-items: center; gap: var(--cds-gap-sm) var(--cds-gap-md); padding: var(--cds-pad-sm) var(--cds-pad-md); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); }
.ck-vl-ais-text { flex: 1 1 18rem; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-vl-ais-text b { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.ck-vl-ais .vl-ais-status { flex-basis: 100%; margin: 0; }
.ck-vl-ais .vl-ais-status:empty { display: none; }
.ck-fl-dash { display: grid; gap: var(--cds-gap-md); }
.ck-fl-sec { display: grid; gap: var(--cds-gap-xs); min-width: 0; }
.ck-fl-sec h4 { margin: 0; font-size: var(--cds-font-size-body); font-weight: var(--cds-font-weight-medium); }
.ck-fl-sec > .ck-note { margin: 0; }
.ck-fl-charts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 24rem), 1fr)); gap: var(--cds-gap-md) var(--cds-gap-lg); }
.ck-fl-map { position: relative; border-radius: var(--cds-radius); overflow: hidden; border: 1px solid var(--color-border-line); }
.ck-fl-map svg { display: block; width: 100%; touch-action: none; cursor: grab; }
.ck-map-fship { stroke: var(--color-bg); stroke-width: 1; vector-effect: non-scaling-stroke; cursor: pointer; }
.ck-fl-actions { display: flex; flex-wrap: wrap; gap: var(--cds-gap-xs); }
.ck-fl-new, .ck-fl-edit { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--cds-gap-sm); }
.ck-fl-results { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; max-height: 16rem; overflow: auto; }
.ck-fl-results:empty { display: none; }
.ck-fl-results li { display: flex; align-items: center; gap: var(--cds-gap-sm); padding: 4px 6px; border-bottom: 1px solid var(--color-border-line); }
.ck-fl-results li .ck-note { flex: 1; margin: 0; }
.ck-fl-res-name { font-weight: var(--cds-font-weight-medium); }
.fl-delete.is-armed { color: var(--color-bad); border-color: var(--color-bad); }
.ck-pager { display: flex; align-items: center; justify-content: space-between; gap: var(--cds-gap-sm); }
.ck-pager span { color: var(--color-fg-muted); font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; }
.ck-qv-sub { font-size: var(--cds-font-size-caption); font-weight: var(--cds-font-weight-medium); color: var(--color-fg-muted); margin-top: var(--cds-gap-xs); }
.qv-sens { display: grid; gap: var(--cds-gap-sm); margin-top: var(--cds-gap-md); padding-top: var(--cds-gap-md); border-top: 1px solid var(--color-border-line); }
.ck-sens-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--cds-gap-sm); }
.ck-sens-head h4 { margin: 0; font-size: var(--cds-font-size-heading); font-weight: var(--cds-font-weight-medium); }
.qv-sens > .ck-note { margin: 0; }
.ck-sens-grids { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: var(--cds-gap-md); }
.ck-sens-title { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); margin-bottom: 4px; }
table.ck-sens { border-collapse: separate; border-spacing: 2px; font-size: var(--cds-font-size-caption); font-variant-numeric: tabular-nums; width: 100%; }
table.ck-sens th { font-weight: var(--cds-font-weight-medium); color: var(--color-fg-muted); padding: 3px 6px; text-align: right; white-space: nowrap; }
table.ck-sens th small { display: block; font-weight: 400; }
table.ck-sens thead th:first-child { text-align: left; }
table.ck-sens tbody th { text-align: left; }
table.ck-sens td { padding: 5px 6px; text-align: right; border-radius: 3px; color: var(--color-fg); white-space: nowrap; }
table.ck-sens td.is-base { outline: 2px solid var(--color-fg); outline-offset: -2px; font-weight: var(--cds-font-weight-medium); }
table.ck-sens td.is-neg { color: var(--color-bad); }
.ck-ap-parity { stroke-width: 1.5; stroke-dasharray: 6 4; fill: none; }
.ck-ap-parity-label { font-size: var(--cds-font-size-caption); }
.ck-ap-pband { fill-opacity: .12; stroke: none; }
.ck-ap-pband-edge { fill: none; stroke-width: 1; stroke-opacity: .45; }
.ck-ap-pmean { fill: none; stroke-width: 1.5; stroke-dasharray: 1.5 3; stroke-linecap: round; }
.ck-torn-label { fill: var(--color-fg); }
.ck-torn-sub { fill: var(--color-fg-muted); }
.ck-torn-val { fill: var(--color-fg); font-variant-numeric: tabular-nums; }
.ck-torn-base { stroke: var(--color-fg); stroke-width: 1.5; }
.ck [data-dash-source-state=empty] { color: transparent; }
.ck [data-dash-source-state=refreshing] { opacity: .5; transition: opacity var(--cds-dur-slow); }

/* a list cut to its first rows, with a toggle to open it in full */
.ck-more { display: flex; align-items: center; justify-content: center; gap: var(--cds-pad-xs); width: 100%; margin-top: var(--cds-pad-sm); padding: var(--cds-pad-xs) var(--cds-pad-md); min-height: 2.25rem;
  font: inherit; font-size: var(--cds-font-size-caption); color: var(--color-fg); background: var(--color-bg); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); cursor: pointer; }
.ck-more:hover { background: var(--color-panel); }
.ck-more:focus-visible { outline: 2px solid var(--color-fg); outline-offset: 2px; }
.ck-more-caret { font-size: .9em; color: var(--color-fg-muted); }

/* charter rate development: rate lines over fixture bars */
.ck-rate-line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.ck-vol-bar { fill: var(--color-fg-muted); fill-opacity: .16; }
.ck-legend-vol i { opacity: .35; }
.ck-rate-band { fill-opacity: .16; stroke: none; }
.ck-rate-band-tick { stroke-width: 3; stroke-opacity: .3; stroke-linecap: round; }
.ck-rate-ref { stroke-dasharray: 5 4; stroke-width: 1.5; }
.ck-vol-dur { fill-opacity: .72; stroke: var(--color-bg); stroke-width: .6; }
.ck-dur-key { display: inline-flex; align-items: center; gap: 6px; }
.ck-dur-key .ck-dur-band { fill: var(--color-fg-muted); fill-opacity: .22; }
.ck-legend-bars { flex-basis: 100%; }
.ck-legend-bars i { opacity: .8; }
.ck-legend-cap { color: var(--color-fg-muted); }
.tc-rates-ctl { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: var(--cds-gap-xs); }
.tc-dur-key { font: inherit; font-size: var(--cds-font-size-caption); color: var(--color-fg); background: var(--color-bg); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-xs) var(--cds-pad-sm); max-width: 14rem; }

.ck-table .ck-aptc { cursor: default; display: inline-flex; flex-direction: column; align-items: flex-end; line-height: 1.2; padding: 2px 4px; border-radius: 4px; }
.ck-table .ck-aptc:hover, .ck-table .ck-aptc:focus-visible { background: var(--cds-chart-grid); }
.ck-table .ck-aptc:focus-visible { outline: 2px solid var(--color-fg); outline-offset: 0; }

/* access and settings (access.js): who is viewing, at the top left, with the settings menu */
.ck-topbar { display: flex; align-items: center; flex-wrap: wrap; gap: var(--cds-gap-sm); margin-bottom: var(--cds-gap-sm); }
.ck-acct { display: inline-flex; align-items: center; gap: var(--cds-gap-xs); min-width: 0; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-acct-av { --acct-color: var(--color-fg-muted); flex: none; width: 24px; height: 24px; border-radius: 50%; display: inline-grid; place-items: center; overflow: hidden; background: var(--acct-color); color: var(--color-bg); font-size: 11px; font-weight: var(--cds-font-weight-medium); }
.ck-acct-av img { width: 100%; height: 100%; object-fit: cover; }
.ck-acct-name { max-width: 24ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--color-fg); font-weight: var(--cds-font-weight-medium); }
.ck-acct-role { padding: 1px 8px; border: 1px solid var(--color-border-line); border-radius: 999px; white-space: nowrap; }
.ck-acct-role[data-role="owner"], .ck-acct-role[data-role="editor"] { color: var(--color-fg); border-color: var(--color-border-strong); }
.ck-set { position: relative; }
.ck-set-btn { padding: 2px 10px; font-size: var(--cds-font-size-caption); }
.ck-set-btn::after { content: " \25BE"; }
.ck-set-menu { position: absolute; left: 0; top: calc(100% + 4px); z-index: 50; width: min(340px, calc(100vw - 32px)); display: grid; gap: var(--cds-gap-xs); padding: var(--cds-pad-sm); background: var(--color-panel, var(--color-bg)); border: 1px solid var(--color-border-strong); border-radius: var(--cds-radius); box-shadow: 0 8px 24px rgba(0, 0, 0, .18); }
.ck-set-menu[hidden] { display: none; }
.ck-set-who { display: grid; gap: 2px; }
.ck-set-whoname { color: var(--color-fg); font-weight: var(--cds-font-weight-medium); overflow-wrap: anywhere; }
.ck-set-whorole, .ck-set-head { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-set-head { margin-bottom: 4px; }
.ck-set-note { margin: 4px 0 0; font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); line-height: 1.4; }
.ck-set-sep { height: 1px; margin: var(--cds-gap-xs) 0; background: var(--color-border-line); }
.ck-set-item { display: grid; gap: 1px; padding: 6px 8px; text-align: left; font: inherit; color: var(--color-fg); background: none; border: 0; border-radius: var(--cds-radius); cursor: pointer; }
.ck-set-item:hover, .ck-set-item:focus-visible { background: color-mix(in srgb, var(--color-fg) 8%, transparent); outline: none; }
.ck-set-label { font-size: var(--cds-font-size-body); }
.ck-set-hint { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
.ck-acc-steps { display: grid; gap: 6px; margin: var(--cds-gap-sm) 0; padding-left: 1.2em; font-size: var(--cds-font-size-body); line-height: 1.45; }
.ck-acc-row { display: flex; justify-content: flex-end; }
/* the admin functions: hidden for read-only viewers, and until the viewer's role is known */
html:not([data-role="owner"]):not([data-role="editor"]) :is(.ck-admin, #tab-import, #import, .ap-recalc, .vl-add-open, .vl-ais-run, .fl-save-party, .ck-fl-new, .fl-rename, .fl-delete, .fl-add-party) { display: none !important; }

/* Overview: values of the types and subtypes matrix that list their deals (ovdeals.js) */
#ov-subtype-table td.ck-ovpick { cursor: pointer; }
#ov-subtype-table td.ck-ovpick:hover { text-decoration: underline; text-underline-offset: 2px; background: color-mix(in srgb, var(--color-fg) 5%, transparent); }
#ov-subtype-table td.is-picked { background: color-mix(in srgb, var(--color-fg) 10%, transparent); font-weight: var(--cds-font-weight-medium); box-shadow: inset 0 -2px 0 var(--color-fg); }
#ov-deals-table tbody tr { cursor: pointer; }

/* vessel details: to Quick valuation and Deal Analysis (vesselto.js) */
.vx-btns { display: flex; flex-wrap: wrap; gap: var(--cds-gap-xs) var(--cds-gap-sm); margin-top: var(--cds-gap-sm); }
.vx-btns .ck-tool:disabled { opacity: .5; cursor: default; }
