/* Смысл v2.0. This layer supersedes the stage-5 numeric design rules.
   Source of truth: outputs/design/Smysl_Codex_Handoff_v2/design/tokens.json.
   The previous adapter remains loaded only for unchanged functional components. */
/* Owner-approved Onest (23.09.2026); self-hosted faces in onest-fonts.css. */
:root {
  --sm-font: "Onest", Arial, sans-serif;
  --sm-control-height:36px;
  --sm-icon-hit:40px;
  --sm-field-size:14px;
  --sm-chart-1: #6B1F2D;
  --sm-chart-2: #9B5565;
  --sm-chart-3: #77675D;
  --sm-chart-4: #8D4352;
  --sm-chart-5: #77675D;
  --sm-chart-current:#6B1F2D;
  --sm-chart-previous:#9B5565;
  --sm-chart-benchmark:#77675D;
  --sm-chart-plan:#8D4352;
  --sm-chart-forecast:#8D4352;
  --sm-matrix-rk:#6B1F2D;
  --sm-matrix-nonrk:#D3AFB6;
  --sm-matrix-unknown:#6E645F;
  --sm-logo-light:#D9BCB6;
  --sm-logo-mid:#A15C66;
  --sm-radius-control: 6px;
  --sm-radius-card: 10px;
  --sm-radius-dialog: 10px;
  --sm-shadow-card: 0 2px 8px rgba(38,34,41,.04);
  --sm-shadow-popover: 0 12px 32px rgba(38,34,41,.12);
  --sm-shadow-modal: 0 24px 64px rgba(38,34,41,.18);
}
html { font-size:16px; }
body { font:400 14px/20px var(--sm-font); font-synthesis:none; font-variant-numeric:lining-nums tabular-nums; }
button,input,select,textarea { font:inherit; box-sizing:border-box; }
button { min-height:var(--sm-control-height); padding:7px 14px; border-radius:6px; font-size:14px; line-height:20px; font-weight:600; }
button.compact { min-height:var(--sm-control-height); padding:7px 14px; font-size:14px; line-height:20px; margin:0; }
button.compact::before { content:none; }
input,select,textarea { min-height:var(--sm-control-height); padding:7px 10px; border-radius:6px; font-size:var(--sm-field-size); line-height:20px; }
select:not([multiple]) { appearance:none; -webkit-appearance:none; height:var(--sm-control-height); background-image:url('/static/design/icons/chevron-down.svg'); background-position:right 8px center; background-size:16px; background-repeat:no-repeat; padding-right:30px; }
input[type=checkbox],input[type=radio] { width:16px; height:16px; min-height:16px; padding:0; flex:none; }
label:has(> input[type=checkbox]),label:has(> input[type=radio]) { min-height:var(--sm-control-height); }
summary { box-sizing:border-box; min-height:var(--sm-control-height); padding-block:7px; cursor:pointer; }
.icon-control { width:var(--sm-icon-hit); min-width:var(--sm-icon-hit); min-height:var(--sm-icon-hit); }
label,fieldset legend { font-size:12px; line-height:16px; font-weight:400; }
h1 { font-size:48px; line-height:56px; font-weight:700; }
h2 { font-size:18px; line-height:24px; font-weight:600; }
h3 { font-size:16px; line-height:22px; font-weight:600; }
p { margin:4px 0 8px; }
.small,.muted,.inline-note,.data-notes { font-size:12px; line-height:16px; }
.subheading { font-size:16px; line-height:24px; }
.eyebrow { font-size:13px; line-height:18px; font-weight:400; letter-spacing:0; text-transform:none; }
.source-badge { font-size:12px; line-height:16px; }
.notice { font-size:12px; line-height:16px; padding:8px 12px; }
.app-shell { min-height:100dvh; }
.rail.sm-sidebar { width:192px; padding:16px 12px 12px; border-right:1px solid var(--sm-border-subtle); }
.sidebar-brand { height:72px; min-height:72px; margin:0 0 8px; padding:0 0 0 12px; align-items:flex-start; }
.sidebar-brand .sm-logo-link { display:block; width:152px; max-width:152px; height:52px; }
.sidebar-brand .sm-logo--lockup { display:block; width:152px; max-width:152px; height:auto; margin:0; }
.rail nav.sm-nav { gap:8px; }
.nav-group-label { display:none; }
.nav-owner { margin:0; padding:0; border:0; gap:8px; }
.rail .nav-item.sm-nav-link { min-height:44px; height:auto; padding:10px 8px 10px 12px; gap:12px; font-size:14px; line-height:20px; border-radius:6px; overflow-wrap:anywhere; }
.rail .nav-item.sm-nav-link .sm-icon { width:24px; height:24px; }
.rail .nav-item .sm-nav-label { font:inherit; color:inherit; line-height:20px; overflow-wrap:normal; }
.rail .nav-item.sm-nav-link.active::before { width:4px; top:0; bottom:0; left:-12px; border-radius:0; }
.rail .nav-item.sm-nav-link.active:not(:hover) { background:var(--sm-surface-selected); }
.logout-form { padding-top:8px; border-color:var(--sm-border-subtle); }
.workarea.sm-workspace { margin-left:192px; }
.topbar.sm-topbar { position:relative; z-index:20; height:56px; min-height:56px; padding:10px 24px; border:0; background:var(--sm-bg); }
.topbar-left { position:relative; width:min(560px,60%); }
.topbar-search-label { position:relative; display:flex; align-items:center; width:100%; height:var(--sm-control-height); padding:0 10px; gap:8px; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:6px; color:var(--sm-text-secondary); }
.topbar-search-label .sm-icon { flex:0 0 20px; width:20px; height:20px; }
#topbar-search { width:100%; min-width:0; height:calc(var(--sm-control-height) - 2px); min-height:calc(var(--sm-control-height) - 2px); padding:4px 0; border:0; outline:0; background:transparent; font-size:var(--sm-field-size); line-height:20px; }
#topbar-search:focus-visible { outline:0; }
.topbar-search-label:focus-within { outline:2px solid var(--sm-wine); outline-offset:2px; }
.search-shortcut { flex:none; padding:2px 4px; background:var(--sm-surface-alt); border-radius:4px; font-size:12px; line-height:16px; }
.topbar-search-results:not([hidden]) { position:absolute; top:41px; left:0; z-index:40; display:block; width:100%; max-height:320px; overflow:auto; padding:4px; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:10px; box-shadow:var(--sm-shadow-popover); }
.topbar-search-results button { display:block; width:100%; text-align:left; border:0; background:transparent; }
.topbar-search-results button:hover,.topbar-search-results button:focus-visible { background:var(--sm-surface-hover); }
.topbar-context { display:none; }
.identity { gap:12px; }
.identity #identity { font-size:12px; line-height:16px; color:var(--sm-text-muted); }
.avatar { width:32px; height:32px; min-width:32px; font-size:12px; line-height:16px; font-weight:600; }
.tab-panel,.tab-panel:not(#tab-metrics) { max-width:none; margin:0; padding:0 24px 24px; }
#global-message { margin:0 24px 8px; max-width:none; }
.brand-heading { gap:0; margin:0 0 12px; }
.brand-heading .eyebrow { margin:6px 0 4px; }
.brand-title { margin:0; font-size:48px; line-height:56px; letter-spacing:-.02em; }
.brand-heading .subheading { margin:4px 0 0; }
.brand-heading .source-badge { margin:4px 0 0; }
.matrix-heading .brand-title,#tab-metrics .brand-title,#tab-access h1 { font-size:40px; line-height:48px; }
.filters,.wordstat-filters { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:12px; border-radius:10px; }
.filters label,.filters fieldset legend { font-size:12px; line-height:16px; font-weight:400; }
.filters input,.filters select { min-height:var(--sm-control-height); padding:7px 10px; font-size:var(--sm-field-size); line-height:20px; }
.filters select:not([multiple]) { padding-right:30px; background-image:url('/static/design/icons/chevron-down.svg'); background-position:right 8px center; background-size:16px; background-repeat:no-repeat; }
.filters .date-pair { gap:4px; }
.filter-toolbar { min-height:52px; padding:8px 12px; gap:12px; border-radius:10px; }
.filter-summary { gap:4px 10px; font-size:13px; line-height:18px; }
.filter-summary span { padding-right:10px; }
.filter-toggle { min-height:var(--sm-control-height); }
.filter-dirty { font-size:12px; line-height:16px; }
.section-label { margin:12px 0 8px; gap:12px; }
.section-label p { margin:2px 0 0; }
.summary-surface { gap:12px; margin:0; }
.kpi { min-height:114px; padding:12px; border-radius:10px; }
.kpi-name { font-size:14px; line-height:18px; font-weight:600; }
.kpi-value { margin-top:2px; font-size:30px; line-height:36px; font-weight:700; }
.kpi-change { margin-top:2px; font-size:12px; line-height:16px; }
.analytics-grid { gap:12px; margin-top:12px; }
.chart-surface,.goals-surface,.editor,.insight { padding:16px; border-radius:10px; }
.chart-surface h2,.goals-surface h2,.editor h2 { font-size:16px; line-height:22px; }
.chart-period { font-size:12px; line-height:16px; }
.chart-wrap text,.matrix-plot text { font:12px var(--sm-font); }
.legend,.matrix-legend { gap:6px 16px; margin:6px 0; font-size:12px; line-height:16px; }
.legend-key { width:24px; border-top:2.25px solid var(--sm-chart-1); }
.legend-key.previous { border-top:2px dashed var(--sm-chart-2); }
.legend-key.benchmark { border-top:1.75px dotted var(--sm-chart-3); }
.table-wrap { margin-top:8px; border-radius:6px; }
table { font-size:13px; line-height:18px; }
th { font-size:12px; line-height:16px; font-weight:400; }
th,td { padding:7px 12px; height:32px; }
td.numeric,th.numeric { text-align:right; white-space:nowrap; }
.query-drill { display:inline-flex; align-items:center; gap:4px; min-height:var(--sm-control-height); font-size:13px; line-height:18px; }
.query-drill > .small { flex:none; white-space:nowrap; }
.quality-section { padding:16px; border-radius:10px; }
.quality-grid p { font-size:12px; line-height:16px; }
.table-pagination,.table-pagination label { font-size:12px; line-height:16px; }
.matrix-summary { grid-template-columns:repeat(4,minmax(0,1fr)); }
.matrix-grid { grid-template-columns:minmax(0,999fr) minmax(0,422fr); gap:11px; }
#tab-matrix { position:relative; }
.matrix-heading { min-height:96px; margin-bottom:12px; }
.matrix-heading .eyebrow { margin:0 0 4px; }
.matrix-heading .brand-title { margin:0; }
.matrix-heading .subheading { margin:0; }
.matrix-heading .source-badge { display:none; }
.matrix-heading .filter-toolbar { position:absolute; top:0; right:24px; width:min(650px,48%); min-height:36px; height:36px; padding:0; border:0; background:transparent; }
.matrix-heading .filter-summary { min-width:0; overflow:hidden; white-space:nowrap; }
.matrix-heading .filter-summary span { white-space:nowrap; }
#matrix-workspace { display:grid; grid-template-columns:minmax(0,999fr) minmax(0,422fr); align-items:start; column-gap:11px; row-gap:13px; }
#matrix-workspace > .section-label { position:absolute; top:45px; right:24px; margin:0; }
#matrix-workspace > .section-label > div { display:none; }
#matrix-workspace > .matrix-summary { grid-column:1/-1; gap:12px; }
.matrix-summary .kpi { min-height:101px; }
#matrix-workspace > .matrix-grid { grid-column:1/-1; height:435px; margin:0; }
.matrix-grid > .chart-surface:first-child { min-height:435px; max-height:435px; overflow:hidden; }
.matrix-grid .matrix-plot { margin:0; }
.matrix-grid .matrix-plot svg { width:100%; max-height:340px; }
.matrix-grid > .matrix-detail { display:grid; grid-template-rows:269px 168px; align-content:start; gap:13px; padding:0; border:0; background:transparent; box-shadow:none; }
.matrix-detail > #matrix-detail-main,.matrix-detail > .matrix-quadrant-summary { min-width:0; padding:16px; border:1px solid var(--sm-border-subtle); border-radius:10px; background:var(--sm-surface); box-shadow:var(--sm-shadow-card); }
.matrix-detail > .matrix-quadrant-summary { margin:0; padding:10px 16px; }
.matrix-quadrant-summary h3 { margin:0 0 4px; font-size:16px; line-height:20px; }
.matrix-quadrant-summary .matrix-detail-list { margin:0 0 4px; gap:0 12px; font-size:12px; line-height:16px; }
.matrix-quadrant-summary .small { display:none; }
.matrix-quadrant-summary button { min-height:var(--sm-control-height); padding:7px 10px; }
#matrix-workspace > .goals-surface { min-width:0; margin:0; }
#matrix-workspace > .goals-surface:not(#matrix-exclusions) { grid-column:1; min-height:214px; }
#matrix-workspace > .goals-surface:not(#matrix-exclusions) .section-label > div p { display:none; }
#matrix-workspace > #matrix-exclusions { grid-column:2; min-height:193px; margin-top:13px; }
#matrix-workspace > .quality-section { grid-column:1/-1; }
.matrix-dot.non-rk { background:var(--sm-map-2); }
.matrix-short-label { font:700 11px/12px var(--sm-font)!important; paint-order:normal; stroke:none; }
.matrix-selection-ring { display:none; }
.matrix-selection-ring.is-selected { display:inline; }
.matrix-cluster { fill:var(--sm-surface-alt); stroke:var(--sm-wine); stroke-width:2; cursor:pointer; }
.matrix-cluster-leader { stroke:var(--sm-wine); stroke-width:1; pointer-events:none; }
.matrix-cluster-anchor { fill:var(--sm-wine); pointer-events:none; }
.matrix-cluster:focus-visible { stroke-width:3; }
.matrix-cluster.selected { stroke:var(--sm-text-primary); stroke-width:3; }
.matrix-cluster-count { fill:var(--sm-wine)!important; font:700 12px/16px var(--sm-font)!important; pointer-events:none; }
.matrix-cluster-options { display:grid; gap:4px; max-height:200px; overflow:auto; }
.matrix-cluster-options button { text-align:left; }
.matrix-label-rk { fill:var(--sm-text-inverse)!important; }
.matrix-label-non_rk { fill:var(--sm-wine)!important; }
.matrix-label-unknown { fill:var(--sm-text-primary)!important; }
.matrix-guide { stroke:var(--sm-border-subtle); stroke-width:1; }
.matrix-axis { stroke:var(--sm-text-muted); stroke-width:1; }
.matrix-plot circle[role=button].selected { stroke:var(--sm-wine); stroke-width:2; }
.matrix-detail-list { font-size:13px; line-height:18px; }
.auth-panel { border-radius:10px; }
.auth-panel h1 { font-size:40px; line-height:48px; }

/* Wordstat reference geometry, 1672×941, DPR 1. Real data may grow cards. */
#tab-wordstat { position:relative; }
.wordstat-heading { margin-bottom:12px; }
.wordstat-heading .source-badge { display:none; }
.wordstat-brand-strip { display:flex; align-items:center; gap:8px; width:100%; height:52px; min-height:52px; margin-top:10px; padding:6px 12px; overflow:hidden; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:10px; }
.brand-choice { flex:1 1 auto; min-width:0; min-height:var(--sm-control-height); height:var(--sm-control-height); padding:7px 8px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--sm-gold-text); border:1px solid var(--sm-border-subtle); background:var(--sm-surface); font-size:14px; line-height:20px; font-weight:600; }
.brand-choice.active { flex:1.2 1 auto; background:var(--sm-surface-selected); border-color:var(--sm-wine); color:var(--sm-gold-text); }
.brand-choice.active span { color:var(--sm-wine); margin-right:5px; }
.brand-choice-more { flex:0 0 auto; color:var(--sm-wine); }
.wordstat-heading .filter-toolbar { width:100%; min-height:68px; height:68px; margin-top:12px; }
#wordstat-filters:not([hidden]) { margin-top:12px; }
#wordstat-workspace > .section-label { position:absolute; top:34px; right:24px; z-index:1; margin:0; }
#wordstat-workspace > .section-label h2 { display:none; }
#wordstat-workspace > .selected-coverage { display:none; }
#wordstat-workspace > .notice.warning { margin:0 0 12px; }
.wordstat-summary { grid-template-columns:repeat(6,minmax(0,1fr)); }
.wordstat-summary .kpi { min-height:131px; }
.wordstat-summary .kpi:first-child { border-top:1px solid var(--sm-border-subtle); }
.wordstat-summary .kpi-value { white-space:normal; overflow-wrap:anywhere; }
.matched-comparison { margin-top:8px; padding-top:8px; border-top:1px solid var(--sm-border-subtle); font:400 12px/16px var(--sm-font); overflow-wrap:anywhere; }
.matched-comparison strong { display:block; margin:4px 0; font-weight:600; }
.matched-comparison .query-drill { font:inherit; min-height:32px; }
.wordstat-summary { align-items:start; }
.wordstat-summary .card-aggregation-note { margin:4px 0; font:400 12px/16px var(--sm-font); color:var(--sm-text-muted); }
.card-query-list { list-style:none; padding:0; margin:0; }
.card-query-list > li { padding:6px 0; border-bottom:1px solid var(--sm-border-subtle); min-width:0; }
.card-query-heading { display:flex; align-items:baseline; flex-wrap:wrap; gap:0 8px; font:600 13px/18px var(--sm-font); }
.card-query-name { flex:1 1 140px; min-width:0; overflow-wrap:anywhere; }
.wordstat-summary .card-query-name { padding:0; min-height:24px; font:600 13px/18px var(--sm-font); text-decoration:underline; text-underline-offset:3px; }
.union-method-note { font:400 12px/16px var(--sm-font); color:var(--sm-warning); margin:4px 0; }
.wordstat-query-dialog { width:min(1100px,calc(100vw - 32px)); max-height:90dvh; padding:20px; border:1px solid var(--sm-border-subtle); border-radius:10px; background:var(--sm-surface); color:var(--sm-text-primary); overflow:auto; }
.wordstat-query-dialog::backdrop { background:rgba(38,34,41,.4); }
.wordstat-query-dialog header { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
.wordstat-query-dialog h2 { font:600 24px/30px var(--sm-font); overflow-wrap:anywhere; }
.query-detail-context { font:400 14px/20px var(--sm-font); }
.query-detail-summary { display:grid; gap:4px; font:400 12px/16px var(--sm-font); }
.query-detail-summary > strong { font:700 30px/36px var(--sm-font); }
.query-month-table { min-width:960px; }
.wordstat-query-dialog .table-wrap { max-width:100%; }
.wordstat-summary>.kpi>[data-card-category] { display:block; margin-top:8px; }
@media(max-width:767px) {
  .wordstat-query-dialog { width:100vw; max-width:100vw; height:100dvh; max-height:100dvh; margin:0; padding:16px; border-radius:0; }
  .wordstat-summary .card-query-name { min-height:44px; }
}
.card-query-value { flex:0 0 auto; font:600 14px/20px var(--sm-font); font-variant-numeric:tabular-nums; }
.card-query-coverage,.card-comparison-off { color:var(--sm-text-muted); font:400 12px/16px var(--sm-font); }
.card-dynamics { margin-top:4px; font:400 12px/16px var(--sm-font); }
.card-dynamics > summary { cursor:pointer; list-style:none; display:flex; align-items:baseline; flex-wrap:wrap; gap:0 6px; padding:0; min-height:24px; }
.card-dynamics > summary::-webkit-details-marker { display:none; }
.card-dynamics > summary:hover .card-change-label { text-decoration:underline; }
.card-dynamics > summary:focus-visible { outline:2px solid var(--sm-wine); outline-offset:2px; }
.card-dynamics .delta-indicator { font-weight:600; }
.card-dynamics .card-change-label { overflow-wrap:anywhere; color:var(--sm-text-muted); }
.card-dynamics.is-primary { margin-top:8px; padding-top:8px; border-top:1px solid var(--sm-border-subtle); }
.card-dynamics.is-primary .delta-indicator { font:700 24px/30px var(--sm-font); }
.card-dynamics.is-primary .card-change-label { flex-basis:100%; }
.card-comparison-details p,.card-aggregation-details p { margin:6px 0; }
.card-incomplete { margin-top:4px; font:600 12px/16px var(--sm-font); color:var(--sm-warning); }
.card-query-actions { display:flex; flex-wrap:wrap; align-items:baseline; gap:0 12px; margin-top:4px; }
.wordstat-summary .query-drill { min-height:32px; font:400 12px/16px var(--sm-font); white-space:normal; text-align:left; }
.card-aggregation-details { font:400 12px/16px var(--sm-font); }
.card-aggregation-details > summary { cursor:pointer; color:var(--sm-wine); }
.card-aggregation-details[open] { flex-basis:100%; }
@media(max-width:767px) {
  .card-dynamics > summary,.card-aggregation-details > summary { min-height:44px; align-content:center; }
  .wordstat-summary .query-drill { min-height:44px; }
}
.comparable-details table { min-width:760px; }
.wordstat-analysis { grid-template-columns:minmax(0,628fr) minmax(0,342fr) minmax(0,440fr); gap:11px; margin-top:11px; }
.wordstat-analysis > .chart-surface { min-height:256px; padding:12px 16px; }
.wordstat-analysis .chart-wrap { min-height:0; }
.wordstat-analysis .chart-period { margin:2px 0 0; }
.wordstat-analysis .data-notes { margin:4px 0; }
.wordstat-analysis .table-wrap { margin-top:4px; }
.wordstat-analysis table { min-width:0; }
.wordstat-analysis th,.wordstat-analysis td { padding:7px 12px; height:32px; }
.wordstat-analysis .region-preview .data-notes { color:var(--sm-warning); }
.wordstat-analysis .query-drill { text-align:left; text-decoration:none; color:var(--sm-text-primary); font-weight:400; }
.top-query-preview .tertiary { width:100%; margin-top:8px; background:var(--sm-surface-alt); color:var(--sm-wine); border:0; }
#tab-wordstat .goals-surface { margin:11px 0 0; }
#tab-wordstat .goals-surface .section-label { margin:0 0 8px; }
#tab-wordstat .goals-surface:first-of-type { min-height:210px; }
.query-tabs { display:flex; gap:4px; max-width:100%; overflow-x:auto; margin:8px 0 4px; }
.query-tabs button { flex:none; min-height:var(--sm-control-height); padding:7px 10px; border:0; background:transparent; color:var(--sm-text-secondary); font-size:14px; line-height:20px; }
.query-tabs button[aria-pressed=true] { color:var(--sm-wine); border-bottom:2px solid var(--sm-wine); border-radius:0; }
.query-tabs button:hover { background:var(--sm-surface-hover); }
#wordstat-chart svg { width:100%; height:auto; }
#tab-sales { position:relative; }
#sales-workspace > .section-label { position:absolute; top:34px; right:24px; z-index:1; margin:0; }
#sales-workspace > .section-label > div { display:none; }
.sales-summary { grid-template-columns:repeat(6,minmax(0,1fr)); }
.sales-summary .kpi { min-height:131px; }
.sales-summary .kpi-value { overflow-wrap:anywhere; }
#metric-workspace > .summary-surface { grid-template-columns:repeat(6,minmax(0,1fr)); }
#metric-workspace > .summary-surface .kpi { min-height:101px; }

@media (max-width:1599px) {
  .wordstat-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .wordstat-analysis { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); }
  .wordstat-analysis > :first-child { grid-row:span 2; }
  .brand-choice { flex:0 0 auto; max-width:150px; }
  .wordstat-brand-strip { overflow-x:auto; }
  .sales-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #metric-workspace > .summary-surface { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .matrix-heading .filter-toolbar { position:static; width:100%; min-height:52px; height:auto; padding:8px 12px; border:1px solid var(--sm-border-subtle); background:var(--sm-surface); }
  .matrix-heading { min-height:0; }
  #matrix-workspace > .section-label { position:static; grid-column:1/-1; }
  #matrix-workspace > .section-label > div { display:block; }
  #matrix-workspace > .matrix-grid { height:auto; }
  .matrix-grid > .chart-surface:first-child { max-height:none; }
  .matrix-grid > .matrix-detail { grid-template-rows:auto auto; }
}
@media (max-width:1279px) {
  .rail.sm-sidebar { width:80px; padding:16px 12px; }
  .workarea.sm-workspace { margin-left:80px; }
  .sidebar-brand { padding:0; justify-content:center; }
  .sidebar-brand .sm-logo--mark { display:block; }
  .sidebar-brand .sm-logo--lockup { display:none; }
  .rail .nav-item.sm-nav-link { justify-content:center; padding:10px; }
  .summary-surface { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wordstat-analysis { grid-template-columns:minmax(0,1fr); }
  .wordstat-analysis > :first-child { grid-row:auto; }
  .brand-title { font-size:48px; line-height:56px; }
}
@media (max-width:1023px) {
  .rail.sm-sidebar { width:min(280px,calc(100vw - 24px)); padding:16px 12px; }
  .workarea.sm-workspace { margin-left:0; }
  .sidebar-brand .sm-logo--lockup { display:block; }
  .sidebar-brand .sm-logo--mark { display:none; }
  .rail .nav-item.sm-nav-link { justify-content:flex-start; padding:10px 12px; }
  .topbar.sm-topbar { padding:10px 20px; }
  .tab-panel,.tab-panel:not(#tab-metrics) { padding:0 20px 20px; }
  #wordstat-workspace > .section-label { right:20px; }
  .summary-surface,.wordstat-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sales-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #metric-workspace > .summary-surface { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .matrix-grid { grid-template-columns:minmax(0,1fr); }
  #matrix-workspace { grid-template-columns:minmax(0,1fr); }
  #matrix-workspace > .section-label { grid-column:1; }
  #matrix-workspace > .matrix-summary,#matrix-workspace > .matrix-grid,#matrix-workspace > .goals-surface:not(#matrix-exclusions),#matrix-workspace > #matrix-exclusions,#matrix-workspace > .quality-section { grid-column:1; }
  #matrix-workspace > #matrix-exclusions { margin-top:0; }
}
.desktop-draft { display:none; order:20; grid-column:1/-1; margin:0; }
form.desktop-filters.has-draft .desktop-draft { display:block; }
@media (max-width:767px) {
  .topbar.sm-topbar { padding:6px 16px; }
  .topbar-left { width:100%; }
  .topbar-search-label { max-width:none; }
  .topbar-search-label input { font-size:12px; }
  .search-shortcut { display:none; }
  .identity #identity { display:none; }
  .tab-panel,.tab-panel:not(#tab-metrics) { padding:0 16px 16px; }
  .brand-title,.matrix-heading .brand-title,#tab-metrics .brand-title,#tab-access h1 { font-size:30px; line-height:38px; }
  .brand-heading .eyebrow { margin-top:8px; }
  .brand-heading .subheading { font-size:14px; line-height:20px; }
  .wordstat-heading .filter-toolbar { height:auto; min-height:52px; }
  .wordstat-brand-strip { height:58px; min-height:58px; overflow-x:auto; }
  .wordstat-brand-strip .brand-choice { flex:0 0 auto; min-width:max-content; }
  #wordstat-workspace > .section-label { position:static; margin:0 0 8px; }
  #wordstat-workspace > .section-label h2 { display:none; }
  #sales-workspace > .section-label { position:static; margin:0 0 8px; }
  .summary-surface,.wordstat-summary,.matrix-summary { grid-template-columns:minmax(0,1fr); }
  .sales-summary { grid-template-columns:minmax(0,1fr); }
  #metric-workspace > .summary-surface { grid-template-columns:minmax(0,1fr); }
  .wordstat-analysis { grid-template-columns:minmax(0,1fr); }
  .wordstat-summary .kpi { min-height:100px; }
  .wordstat-analysis > .chart-surface { min-height:0; }
  .filters,.wordstat-filters { grid-template-columns:minmax(0,1fr); }
  .kpi { min-height:0; }
  .kpi-value { white-space:normal; }
  .chart-surface,.goals-surface,.editor,.insight { padding:12px; }
  .table-wrap { overflow-x:auto; }
  .auth-panel h1 { font-size:30px; line-height:38px; }
}
@media (pointer:coarse), (max-width:767px) { :root { --sm-control-height:44px; --sm-icon-hit:44px; --sm-field-size:16px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:0s!important; animation-duration:0s!important; } }

/* Visual review, 22 September: one set of controls on desktop and mobile. */
.filter-more { display:none; }
.kpi-delta { margin:2px 0 0; font:600 14px/20px var(--sm-font); display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.kpi-delta .delta-base { color:var(--sm-text-muted); font:400 12px/16px var(--sm-font); flex:1 1 116px; white-space:normal; }
.delta-indicator { display:inline-flex; align-items:center; gap:4px; white-space:nowrap; color:var(--sm-text-muted); }
.delta-indicator.is-positive { color:var(--sm-success); }
.delta-indicator.is-negative { color:var(--sm-danger); }
.delta-indicator .sm-icon { width:16px; height:16px; flex:0 0 16px; color:inherit; stroke:currentColor; stroke-width:1.75; }
.kpi-comparison > summary { min-height:var(--sm-control-height); cursor:pointer; list-style:none; }
.kpi-comparison > summary::-webkit-details-marker { display:none; }
.kpi-comparison > summary:hover .delta-base { text-decoration:underline; }
.kpi-comparison > summary:focus-visible { outline:2px solid var(--sm-wine); outline-offset:2px; }
.kpi-comparison-detail,.kpi-comparison-note,.kpi-comparison-reason { margin:4px 0 0; color:var(--sm-text-muted); font:400 12px/16px var(--sm-font); overflow-wrap:anywhere; }
.component-unavailable { margin:12px 0 0; }
.component-unavailable strong { display:block; font:700 24px/30px var(--sm-font); }
.component-unavailable p { max-width:42em; font:400 13px/18px var(--sm-font); color:var(--sm-text-secondary); }
.compact-context { font:400 12px/16px var(--sm-font); color:var(--sm-text-muted); }
.compact-context summary { cursor:pointer; }
.sales-analysis,.metrics-analysis,.sales-secondary,.metrics-secondary { display:grid; gap:13px; min-width:0; }
.sales-analysis { grid-template-columns:minmax(0,553fr) minmax(0,393fr) minmax(0,460fr); margin-top:15px; }
.sales-secondary { grid-template-columns:minmax(0,463fr) minmax(0,463fr) minmax(0,479fr); margin-top:13px; }
.sales-analysis > article { min-height:262px; }
.sales-secondary > article { min-height:173px; }
.compact-table { min-width:0; width:100%; }
.compact-table th,.compact-table td { padding:7px 12px; }
.query-table th:first-child,.query-table td:first-child { width:30%; }
.query-table th:nth-child(2),.query-table td:nth-child(2) { width:15%; }
.query-table th:nth-child(3),.query-table td:nth-child(3) { width:18%; }
.query-table th:nth-child(4),.query-table td:nth-child(4) { width:17%; }
.query-table th:nth-child(5),.query-table td:nth-child(5) { width:20%; }
.query-table:has(th:nth-child(6)) { min-width:1040px; }
.query-table:has(th:nth-child(6)) th,.query-table:has(th:nth-child(6)) td { width:auto; }
.query-table:has(th:nth-child(6)) th:first-child { width:22%; }
.query-table:has(th:nth-child(6)) th:nth-child(5) { width:22%; }
.sales-analysis .chart-period { margin:2px 0 6px; }
.compact-table td:first-child { overflow-wrap:anywhere; }
.component-scroll { max-height:174px; overflow:auto; }
.sales-analysis .component-scroll { max-height:194px; }
.sales-secondary .component-scroll { max-height:108px; }
.sales-analysis .chart-wrap,.metrics-analysis .chart-wrap { min-height:0; }
.supplemental-summary { display:flex; flex-wrap:wrap; gap:12px 24px; padding:12px 16px; margin-top:12px; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:10px; }
.supplemental-summary div { flex:1 1 200px; }
.supplemental-summary dt { font:400 12px/16px var(--sm-font); color:var(--sm-text-secondary); }
.supplemental-summary dd { margin:2px 0; font:600 16px/22px var(--sm-font); }
.sales-summary .kpi { min-height:114px; }
.metrics-analysis { grid-template-columns:minmax(0,546fr) minmax(0,487fr) minmax(0,378fr); gap:11px; margin-top:12px; }
.metrics-analysis > article { min-height:246px; }
.metrics-secondary { grid-template-columns:minmax(0,385fr) minmax(0,503fr) minmax(0,521fr); gap:11px; margin-top:10px; }
.metrics-secondary > article { min-height:169px; }
.metrics-analysis .chart-header { gap:6px; flex-wrap:wrap; }
.metrics-analysis .chart-header select { min-height:var(--sm-control-height); padding:7px 30px 7px 10px; font-size:var(--sm-field-size); line-height:20px; }
.metrics-analysis .chart-period { margin:2px 0; }
.metrics-analysis .legend { gap:4px 10px; margin:0; }
.metrics-analysis .legend label { font:400 12px/16px var(--sm-font); }
.metrics-analysis .legend .comparison-line { border-top:2px dashed var(--sm-chart-2); }
.metrics-analysis .legend .trend-line { border-top:1.75px dotted var(--sm-chart-3); }
.goal-bars { display:grid; gap:9px; margin-top:12px; }
.goal-bar-head { display:flex; justify-content:space-between; gap:8px; font:400 12px/16px var(--sm-font); }
.goal-bar-track { height:16px; background:var(--sm-surface-alt); border-radius:3px; margin-top:3px; }
.goal-bar-track span { display:block; height:100%; background:var(--sm-wine); border-radius:3px; }
.metrics-detail { margin-top:13px; }
.preview-context { display:inline; font:600 12px/16px var(--sm-font); color:var(--sm-wine); }
.method-help { display:inline-block; font:400 12px/16px var(--sm-font); }
.method-help summary { cursor:pointer; color:var(--sm-wine); }
.method-help[open] { display:block; padding:8px 12px; background:var(--sm-surface-alt); }
.matrix-zoom-controls { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.matrix-zoom-controls button { padding:7px 10px; }
.matrix-grid .chart-header { gap:8px; }
.matrix-grid .chart-period { margin:2px 0; }
.matrix-grid .matrix-legend { margin:6px 0; gap:4px 12px; }
.matrix-grid > .chart-surface:first-child { max-height:none; align-self:start; }
#matrix-workspace > .matrix-grid { height:auto; min-height:435px; }
.matrix-grid > .matrix-detail { grid-template-rows:minmax(269px,auto) minmax(168px,auto); }
.matrix-detail .table-wrap { margin-top:6px; }
.matrix-detail .compact-table { min-width:340px; }
.matrix-history { margin-top:6px; }
.matrix-cluster-options { margin-top:8px; max-height:180px; }
.matrix-plot svg { min-width:560px; max-height:none!important; touch-action:none; cursor:grab; }
.matrix-plot svg:active { cursor:grabbing; }
.matrix-plot .matrix-quadrant-caption { font:400 12px/16px var(--sm-font); fill:var(--sm-text-muted); }
.matrix-legend-cluster { border:1px solid var(--sm-wine); border-radius:3px; font:600 11px/14px var(--sm-font); padding:0 4px; font-style:normal; }
.matrix-legend-normal { width:14px; height:12px; border:1px dashed var(--sm-chart-2); background:var(--sm-surface-selected); }
.matrix-legend-low { color:var(--sm-gold-text); font-style:normal; }
.matrix-dot.non-rk { border:1.25px solid var(--sm-wine); }
.matrix-dot.unknown { border:1px dashed var(--sm-text-muted); background:var(--sm-surface); }
.matrix-low-base { pointer-events:none; }
.selected-row { background:var(--sm-surface-selected); }
.matrix-quadrant-summary .no-exclusions { display:block; font:400 12px/16px var(--sm-font); margin:6px 0 0; }
#matrix-zoom-status { margin:4px 0 0; }
@media (min-width:1280px) {
  #wordstat-filter-toolbar,#sales-filter-toolbar,#metrics-filter-toolbar { display:none!important; }
  form.desktop-filters,form.desktop-filters[hidden] { display:grid!important; grid-template-columns:minmax(260px,1.5fr) minmax(130px,.85fr) minmax(155px,1fr) minmax(150px,1fr) minmax(165px,1.1fr) auto; gap:12px; align-items:center; width:100%; padding:5px 12px; margin:12px 0 0; min-height:68px; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:10px; }
  form.desktop-filters > .filter-primary { order:var(--field-order); min-width:0; }
  form.desktop-filters > .filter-extra { display:none; order:10; }
  form.desktop-filters[data-expanded=true] > .filter-extra { display:grid; }
  form.desktop-filters > fieldset:not(.filter-primary),form.desktop-filters > .wide { order:11; grid-column:1/-1; }
  form.desktop-filters .filter-edit-actions { order:5; grid-column:auto; display:flex; gap:6px; flex-wrap:nowrap; align-self:center; padding:20px 0 0; margin:0; border:0; background:none; }
  form.desktop-filters .filter-more { display:block; height:36px; min-height:36px; padding:7px 10px; }
  form.desktop-filters .filter-reset { display:none; }
  form.desktop-filters:not(.has-draft) .filter-reset,form.desktop-filters:not(.has-draft) .filter-edit-actions button[type=submit] { display:none; }
  form.desktop-filters.has-draft .filter-reset { display:block; }
  form.desktop-filters label { gap:4px; }
  form.desktop-filters input,form.desktop-filters select { height:var(--sm-control-height); }
  form.desktop-filters legend { margin-bottom:4px; }
  form.desktop-filters .filter-error { order:12; grid-column:1/-1; }
  form.desktop-filters.has-draft button[type=submit] { box-shadow:0 0 0 2px var(--sm-surface),0 0 0 3px var(--sm-wine); }
  #sales-filters { min-height:74px; grid-template-columns:minmax(260px,1.5fr) minmax(150px,1fr) minmax(160px,1fr) minmax(120px,.7fr) minmax(210px,1.3fr) auto; }
  #filters { min-height:67px; padding-top:4.5px; padding-bottom:4.5px; grid-template-columns:minmax(160px,1fr) minmax(190px,1.1fr) minmax(290px,1.5fr) minmax(220px,1.3fr) auto; }
  .metrics-analysis .chart-period { display:none; }
  #filters .filter-edit-actions { order:4; }
  #tab-sales .brand-heading { padding-top:21px; }
  #sales-brand-strip { height:58px; min-height:58px; }
  #sales-workspace > .section-label { top:55px; }
  #tab-metrics { position:relative; }
  #tab-metrics .brand-heading { margin-top:-10px; margin-bottom:14px; }
  #tab-metrics .brand-heading .source-badge { display:none; }
  #tab-metrics .brand-heading .subheading { margin-top:4px; }
  #tab-metrics .brand-heading #filters { margin-top:10px; }
  #metric-workspace > .section-label { position:absolute; top:28px; right:24px; margin:0; }
  #metric-workspace > .section-label h2 { display:none; }
  #metric-workspace > .summary-surface .kpi { min-height:100px; }
}
@media (max-width:1599px) {
  .sales-analysis,.metrics-analysis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sales-analysis > :first-child,.metrics-analysis > :nth-child(2) { grid-column:1/-1; }
  .sales-secondary,.metrics-secondary { grid-template-columns:repeat(3,minmax(0,1fr)); }
  form.desktop-filters,form.desktop-filters[hidden],#sales-filters,#filters { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1279px) {
  .sales-analysis,.metrics-analysis,.sales-secondary,.metrics-secondary { grid-template-columns:minmax(0,1fr); }
  .sales-analysis > article,.metrics-analysis > article,.sales-secondary > article,.metrics-secondary > article { min-height:0; }
  .component-scroll { max-height:240px; }
  form.desktop-filters[hidden] { display:none!important; }
}
@media (max-width:767px) {
  #wordstat-filters .filter-edit-actions,#sales-filters .filter-edit-actions,#matrix-filters .filter-edit-actions,#filters .filter-edit-actions { bottom:0; margin-bottom:0; }
}

/* Review round 2: shared inner geometry (immutable v2 token roles). */
.table-toolbar { display:flex; align-items:center; gap:12px; min-height:40px; height:46px; position:relative; }
.table-toolbar h2 { flex:none; margin:0; }
.table-toolbar .query-tabs { min-width:0; flex:1; margin:0; height:40px; align-items:center; }
.table-toolbar .query-tabs button { height:var(--sm-control-height); min-height:var(--sm-control-height); padding:7px 10px; }
.table-toolbar + .table-wrap,.table-toolbar ~ #metric-detail-goals .table-wrap { margin-top:12px; }
.toolbar-help { flex:none; }
.toolbar-help summary { display:flex; align-items:center; justify-content:center; width:var(--sm-icon-hit); height:var(--sm-icon-hit); padding:0; cursor:pointer; list-style:none; color:var(--sm-wine); }
.toolbar-help summary::-webkit-details-marker { display:none; }
.toolbar-help-content { position:absolute; right:0; top:48px; width:min(420px,100%); padding:16px; z-index:8; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:10px; box-shadow:var(--sm-shadow-popover); }
.toolbar-help-content p { font:400 14px/20px var(--sm-font); }
.table-wrap:focus-visible { outline:2px solid var(--sm-wine); outline-offset:2px; }
.query-table,.region-table,.matrix-table { min-width:760px; }
.wordstat-analysis table { min-width:0; }
.wordstat-analysis .table-wrap { max-height:196px; overflow:auto; }
.wordstat-analysis .region-preview .chart-header > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:0 8px; }
.wordstat-analysis .region-preview .chart-period { margin:0; }
.compact-table { min-width:340px; }
.wordstat-analysis .top-query-preview table { min-width:390px; }
.wordstat-analysis .table-wrap th,.wordstat-analysis .table-wrap td,th,td { padding:7px 12px; }
.table-wrap th { position:sticky; top:0; z-index:2; background:var(--sm-surface-alt); }
.matrix-table th:first-child,.matrix-table td:first-child { position:sticky; left:0; background:var(--sm-surface); min-width:180px; z-index:1; }
.matrix-table th:first-child { z-index:3; background:var(--sm-surface-alt); }
.table-wrap button:focus-visible { outline-offset:-2px; }
.kpi-value { letter-spacing:-.01em; }
.kpi-change.is-delta { font:600 14px/20px var(--sm-font); }
.kpi-change:not(.is-delta) { color:var(--sm-text-muted); }
.eyebrow { color:var(--sm-text-secondary); }
label,fieldset legend { color:var(--sm-text-muted); }
fieldset legend { margin-bottom:4px; }
.editor summary { font:600 16px/22px var(--sm-font); }
#brands-content [data-brand-editor] > summary { color:var(--sm-gold-text); }
.editor summary .muted,.account-email,.audit-detail,.auth-foot { font:400 12px/16px var(--sm-font); }
label.check,.empty,.data-state { font:400 14px/20px var(--sm-font); }
.query-tabs button { font:600 14px/20px var(--sm-font); }
input:user-invalid,select:user-invalid,textarea:user-invalid { border-color:var(--sm-danger); }
#tab-brands h1,#tab-audit h1 { font:700 40px/48px var(--sm-font); letter-spacing:-.02em; }
.component-unavailable p { font:400 14px/20px var(--sm-font); }
.qa-fixture-marker { font:400 12px/16px var(--sm-font); color:var(--sm-wine); }
h1,h2,h3,h4,.chart-header h2,.section-label h2 { color:var(--sm-text-primary); }
.goal-status { font:600 12px/16px var(--sm-font); }
.goal-class,.goal-note { font:400 12px/16px var(--sm-font); }
.tooltip { font:400 13px/18px var(--sm-font); color:var(--sm-text-primary); background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:6px; box-shadow:var(--sm-shadow-popover); }
.chart-wrap text,.matrix-plot text { line-height:16px; }
.matrix-cluster-options button { white-space:normal; overflow-wrap:anywhere; min-height:var(--sm-control-height); flex-shrink:0; }
.matrix-column-left,.matrix-column-right { display:grid; min-width:0; gap:13px; align-content:start; }
.matrix-column-left > .chart-surface { height:435px; display:grid; grid-template-rows:22px minmax(0,1fr); position:relative; }
.matrix-column-left .chart-header { display:flex; align-items:center; padding-right:36px; }
.matrix-column-left .chart-header h2 { white-space:nowrap; }
.matrix-column-left .matrix-legend { flex-wrap:nowrap; white-space:nowrap; margin:0; gap:10px; align-items:center; }
.matrix-column-left .matrix-legend span:nth-child(3) { max-width:210px; }
.matrix-column-left .matrix-plot { min-height:0; height:100%; overflow:auto; }
.matrix-column-left .matrix-plot svg { height:100%; max-height:none; }
.matrix-chart-tools { position:absolute; top:8px; right:12px; z-index:4; }
.matrix-chart-tools summary { list-style:none; width:var(--sm-icon-hit); height:var(--sm-icon-hit); padding:0; display:flex; align-items:center; justify-content:center; cursor:pointer; background:var(--sm-surface); color:var(--sm-wine); border-radius:6px; }
.matrix-chart-tools summary::-webkit-details-marker { display:none; }
.matrix-chart-tools[open] .matrix-zoom-controls { position:absolute; right:0; top:42px; padding:8px; min-width:180px; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:6px; box-shadow:var(--sm-shadow-popover); }
.matrix-column-left #matrix-zoom-status { margin:0; font:400 12px/16px var(--sm-font); }
.matrix-grid .matrix-column-right > .matrix-detail { display:grid; grid-template-rows:minmax(269px,auto) minmax(168px,auto); gap:13px; padding:0; border:0; box-shadow:none; background:transparent; }
.matrix-grid .matrix-column-left > .goals-surface,.matrix-grid #matrix-exclusions { margin:0; }
.matrix-normal-band { fill:var(--sm-surface-selected); fill-opacity:.6; stroke:var(--sm-chart-2); stroke-dasharray:5 4; }
.quadrant-cells { display:grid; grid-template-columns:1fr 1fr; gap:4px 12px; margin:0; }
.quadrant-cells > div { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:32px; padding:1px 8px; border:1px solid var(--sm-border-subtle); border-radius:6px; }
.quadrant-cells dt { font:400 12px/16px var(--sm-font); }
.quadrant-cells dd { margin:0; font:700 20px/24px var(--sm-font); }
.quadrant-axes { font:400 12px/16px var(--sm-font); margin:4px 0 0; }
.matrix-axis-facts { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:8px 0; }
.matrix-axis-facts span { display:block; font:400 12px/16px var(--sm-font); }
.matrix-axis-facts strong { font:700 24px/30px var(--sm-font); }
.matrix-provisional { font:600 14px/20px var(--sm-font); color:var(--sm-warning); }
.matrix-search-label { position:relative; }
#matrix-search { padding-right:40px; appearance:none; }
#matrix-search::-webkit-search-cancel-button { appearance:none; }
.matrix-search-clear { position:absolute; right:0; bottom:0; display:flex; align-items:center; justify-content:center; min-height:var(--sm-icon-hit); height:var(--sm-icon-hit); width:var(--sm-icon-hit); padding:0; border:0; background:transparent; color:var(--sm-wine); }
.matrix-search-label .matrix-search-clear { width:var(--sm-icon-hit); }
.matrix-regions-section .matrix-search-label input,.matrix-regions-section .matrix-search-label select { height:var(--sm-icon-hit); }
.table-pagination select { min-height:var(--sm-control-height); }
.table-pagination .small { margin:0; }
.table-local-controls { display:flex; align-items:end; flex-wrap:wrap; gap:12px; margin:12px 0; }
.table-local-controls label { flex:1 1 160px; min-width:0; }
.table-local-controls input,.table-local-controls select { width:100%; }
.date-pair .month-control { display:inline-flex; align-items:center; justify-content:space-between; flex:1 1 0; width:calc(50% - 12px); min-width:0; gap:6px; padding:7px 10px; font-size:var(--sm-field-size); font-weight:400; text-align:left; }
.month-control .month-value { color:var(--sm-text-primary); white-space:nowrap; }
.filters .date-pair .month-value { display:inline; color:var(--sm-text-primary); }
.month-control .sm-icon { flex:none; width:16px; height:16px; }
.month-picker { position:fixed; inset:0; margin:auto; width:min(420px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; padding:24px; border:1px solid var(--sm-border-control); border-radius:var(--sm-radius-dialog); background:var(--sm-surface); color:var(--sm-text-primary); box-shadow:var(--sm-shadow-modal); }
.month-picker::backdrop { background:rgba(38,34,41,.4); }
.month-picker h2 { margin:0 0 8px; }
.month-picker-fields { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:12px; margin:16px 0; }
.month-picker-fields label { min-width:0; }
.month-picker-fields input,.month-picker-fields select { width:100%; }
.month-picker-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.matrix-regions-section .section-label { margin:0 0 8px; }
.matrix-regions-section .section-label > div p { display:none; }
.matrix-regions-section .section-label { display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr; }
.matrix-regions-section .matrix-search-label { min-width:0; }
.breakdown { margin-top:8px; }
.breakdown-row { margin-bottom:8px; }
.breakdown details { font:400 12px/16px var(--sm-font); }
.breakdown .goal-bar-track { height:12px; }
.breakdown-row { margin-bottom:4px; }
.donut-breakdown { display:flex; gap:16px; align-items:center; }
.donut-breakdown svg { width:160px; height:160px; flex:none; }
.metrics-secondary .donut-breakdown svg { width:96px; height:96px; }
.donut-legend { flex:1; min-width:0; font:400 12px/16px var(--sm-font); }
.donut-legend > div { display:flex; align-items:center; gap:8px; margin:0; }
.donut-legend strong { margin-left:auto; }
.donut-value { position:relative; margin-left:auto; }
.donut-value summary { font:600 12px/16px var(--sm-font); cursor:pointer; color:var(--sm-wine); text-decoration:underline; text-underline-offset:3px; list-style:none; }
.donut-value summary::-webkit-details-marker { display:none; }
.donut-value > div { position:absolute; right:0; top:22px; z-index:6; width:200px; padding:12px; background:var(--sm-surface); border:1px solid var(--sm-border-subtle); border-radius:6px; box-shadow:var(--sm-shadow-popover); overflow-wrap:anywhere; }
.donut-value p { margin:4px 0 0; font:400 12px/16px var(--sm-font); }
.donut-legend i { display:inline-block; flex:none; width:10px; height:10px; border-radius:2px; }
.metrics-secondary .breakdown { margin-top:4px; }
.metrics-secondary .breakdown-row { margin-bottom:2px; }
.metrics-secondary .breakdown .goal-bar-track { height:12px; margin-top:0; }
#metric-workspace .kpi-value,#metric-workspace .kpi-change { margin-top:0; }
.goal-bars > div > .small { display:block; }
.matrix-column-left .matrix-table { min-width:1280px; }
.matrix-column-left .matrix-table td:last-child { min-width:170px; }
.matrix-column-left .matrix-table td:nth-child(2) { white-space:nowrap; }
#matrix-exclusions .matrix-table { min-width:0; table-layout:fixed; }
#matrix-exclusions .matrix-table th,#matrix-exclusions .matrix-table td { min-width:0; position:static; overflow-wrap:anywhere; }
#matrix-workspace > .section-label { top:64px; }
@media(min-width:1600px) {
  .metrics-secondary > article { position:relative; }
  .metrics-secondary > article:has(.breakdown > details) h2 { padding-right:175px; }
  .metrics-secondary .breakdown > details > summary { position:absolute; top:9px; right:16px; }
  #matrix-filter-toolbar { display:none!important; }
  #matrix-filters.desktop-filters { position:absolute; top:0; right:24px; margin:0; padding:0; min-height:56px; border:0; background:transparent; width:740px; grid-template-columns:140px 230px 290px 56px; gap:8px; }
  #matrix-filters .filter-edit-actions { order:3; }
  #matrix-filters.has-draft .filter-edit-actions { grid-column:1/-1; justify-content:flex-end; padding:0; }
  #matrix-filters:is(.has-draft,[data-expanded=true]) { position:static; width:100%; margin-top:12px; grid-template-columns:repeat(3,minmax(0,1fr)); }
  #tab-matrix:has(#matrix-filters:is(.has-draft,[data-expanded=true])) #matrix-workspace > .section-label { position:static; grid-column:1/-1; justify-content:flex-end; }
}
@media(max-width:1599px) {
  .matrix-column-left .matrix-legend { flex-wrap:wrap; white-space:normal; }
  .matrix-column-left .chart-header { flex-wrap:wrap; gap:8px; }
  .matrix-column-left > .chart-surface { height:auto; grid-template-rows:auto 360px; gap:8px; }
  .matrix-column-left .matrix-plot svg { height:360px; }
}
@media(max-width:1023px) {
  .matrix-column-left #matrix-zoom-status { position:static; }
  .matrix-regions-section .section-label { grid-template-columns:1fr 1fr; }
}
@media(max-width:767px) {
  .filters .date-pair .month-control { flex:1 1 100%; width:100%; }
  /* A sticky name column would cover the quality column on a 320px screen. */
  #matrix-workspace .matrix-table th:first-child,#matrix-workspace .matrix-table td:first-child { position:static; }
  .wordstat-brand-strip { min-height:58px; height:58px; }
  .matrix-search-clear { width:44px; height:44px; }
  #matrix-search { padding-right:44px; }
  .donut-breakdown svg { width:112px; height:112px; }
  .donut-breakdown { gap:8px; }
  .donut-legend > div { flex-wrap:wrap; gap:4px; }
  .donut-value summary { min-height:44px; display:flex; align-items:center; }
  .donut-value > div { top:44px; }
}
@media(pointer:coarse) {
  .matrix-search-clear { width:44px; height:44px; }
}
@media (max-width:767px) {
  input,select,textarea,.filters input,.filters select { font-size:16px; }
  .table-toolbar { height:auto; flex-wrap:wrap; }
  .table-toolbar .query-tabs { order:3; flex:1 0 100%; }
  .table-toolbar .toolbar-help { margin-left:auto; }
  .wordstat-brand-strip { height:58px; min-height:58px; }
  #tab-brands h1,#tab-audit h1 { font:700 30px/38px var(--sm-font); }
}

/* Coverage audit is scoped to the selected brand; long history scrolls locally. */
.wordstat-history-coverage .table-wrap { max-height:420px; overflow:auto; }
.wordstat-history-coverage table { min-width:720px; }
.wordstat-history-coverage summary { overflow-wrap:anywhere; }
#wordstat-region-body td.numeric small { display:block; white-space:normal; }
