:root { --bg:var(--color-page-bg); --panel:var(--color-surface); --panel-2:var(--color-surface-raised); --line:var(--color-border); --line-strong:var(--color-border-strong); --text:var(--color-text); --gold:var(--color-warning); --blue:var(--radar-focus); --font-xxs:12px; --font-compact:12px; --font-xs:12px; font-family:var(--radar-font-family); }
@media (min-width:761px) { :root { --font-xxs:var(--radar-type-caption); --font-compact:var(--radar-type-caption); --font-xs:var(--radar-type-caption); } }
@media (min-width:761px) { body h1 { font-size:var(--radar-type-page)!important; } body h2 { font-size:var(--radar-type-section)!important; } body h3 { font-size:var(--radar-type-panel)!important; } body h4 { font-size:var(--radar-type-lead)!important; } }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html { background:var(--bg); }
body { margin:0; min-width:320px; color:var(--text); background:radial-gradient(circle at 12% 0,color-mix(in srgb,var(--color-info) 17%,transparent),transparent 31rem),radial-gradient(circle at 90% 12%,color-mix(in srgb,var(--color-accent) 10%,transparent),transparent 29rem),var(--bg); }
button,input { font:inherit; }
button,a,summary { -webkit-tap-highlight-color:transparent; }
button { color:inherit; }
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible { outline:3px solid var(--radar-focus-ring); outline-offset:2px; }
.radar-shell { width:var(--radar-shell-width); margin:0 auto; padding:14px 0 36px; }
.topbar { display:flex; align-items:center; justify-content:space-between; min-height:42px; }
.topbar-actions { display:flex; align-items:center; gap:14px; flex-wrap:wrap; justify-content:flex-end; }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--text); text-decoration:none; font-size:12px; font-weight:850; }
.brand-mark { display:grid; place-items:center; width:31px; height:31px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-control); color:var(--color-accent-strong); background:var(--color-accent-soft); font-size: var(--font-xs); }
.source-health { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:12px; }
.source-health i { width:7px; height:7px; border-radius:50%; background:var(--teal); box-shadow:0 0 9px var(--teal); }
.radar-suite-bar { display:flex; align-items:center; justify-content:space-between; min-height:39px; margin-top:4px; padding:4px 7px 4px 13px; border:1px solid var(--line); border-radius:var(--radar-radius-control); background:var(--panel); }
.radar-suite-bar > div { display:flex; align-items:center; gap:9px; }
.radar-suite-bar > div:first-child span,.eyebrow { color:var(--teal); font-size: var(--font-xs); font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.radar-suite-bar > div:first-child strong { color:var(--muted); font-size: var(--font-xs); }
.radar-suite-bar a { padding:7px 11px; border-radius:var(--radar-radius-control); color:var(--muted); text-decoration:none; font-size: var(--font-xs); font-weight:800; white-space:nowrap; }
.nav-label-short { display:none; }
.tab-label-short { display:none; }
.radar-suite-bar a:hover { color:var(--text); background:var(--color-surface-subtle); }
.radar-suite-bar a[aria-current=page] { color:var(--color-accent-strong); background:var(--color-accent-soft); }
.hero { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:30px; align-items:center; min-height:0; margin-top:10px; padding:16px 28px; border:1px solid var(--line); border-radius:var(--radar-radius-hero); background:linear-gradient(115deg,var(--color-info-soft),transparent 68%),var(--panel); box-shadow:var(--shadow-panel); }
/* Bolagssökningen bor i hero:n; träfflistan måste få lämna den. */
.hero { position:relative; z-index:30; overflow:visible; }
.hero-aside { min-width:300px; display:grid; gap:10px; }
/* Finns bredd nog ligger sökrutan bredvid källkortet i stället för ovanpå,
   vilket tar bort en hel rad ur hero:ns höjd. */
@media (min-width:1200px) {
  .hero-aside { align-items:center; grid-auto-flow:column; grid-template-columns:minmax(260px,320px) auto; gap:14px; }
}

.hero h1 { margin:6px 0 4px; font-size:clamp(32px,3vw,54px); line-height:.98; letter-spacing:-.045em; }
.hero h1 span { color:var(--teal); }
.hero p,.search-panel p { max-width:780px; margin:8px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
.hero-meta { display:grid; gap:8px; min-width:300px; padding:16px 18px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:var(--color-surface-subtle); text-align:right; }
.hero-meta strong { color:var(--gold); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.hero-meta span,.hero-meta small { color:var(--muted); font-size: var(--font-xs); }
.hero-meta b { color:var(--text); }
.short-section-tabs { display:flex; gap:5px; margin:10px 0 0; padding:5px; overflow-x:auto; border:1px solid var(--line); border-radius:var(--radar-radius-control); background:var(--panel); scrollbar-width:none; }
.short-section-tabs::-webkit-scrollbar { display:none; }
.short-section-tabs button { min-height:44px; flex:1 0 auto; padding:0 18px; border:0; border-radius:var(--radar-radius-control); color:var(--muted); background:transparent; font-size:12px; font-weight:850; cursor:pointer; white-space:nowrap; }
.short-section-tabs button:hover { color:var(--text); background:var(--color-surface-subtle); }
.short-section-tabs button[aria-selected=true] { color:var(--color-on-accent); background:var(--teal); box-shadow:var(--shadow-panel); }
/* Inne i hero:n är panelen bara sitt fält – rubrik och ingress ligger i sr-only. */
.search-panel { position:relative; display:grid; margin:0; padding:0; border:0; background:none; }
.search-panel h2,.overview-heading h2 { margin:3px 0 0; font-size:22px; }
.search-box { position:relative; }
.search-box label { display:block; margin-bottom:6px; color:var(--muted); font-size: var(--font-xs); font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.search-box input { width:100%; min-height:45px; padding:0 15px; border:1px solid var(--line-strong); outline:none; border-radius:var(--radar-radius-control); color:var(--text); background:var(--panel); }
.search-box input:focus { box-shadow:0 0 0 3px rgba(78,231,212,.12); }
.search-results { position:absolute; z-index:20; top:calc(100% + 7px); right:0; left:0; max-height:360px; overflow:auto; padding:6px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-panel); background:var(--panel-2); box-shadow:var(--shadow-panel); }
.search-results button { display:flex; width:100%; align-items:center; justify-content:space-between; gap:16px; padding:11px 10px; border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; cursor:pointer; }
.search-results button:hover,.search-results button:focus-visible { background:rgba(78,231,212,.07); }
.search-results span b,.search-results span small { display:block; }
.search-results small { margin-top:3px; color:var(--muted); font-size: var(--font-xs); }
.search-results strong { color:var(--teal); white-space:nowrap; }
.progressive-list { grid-column:1/-1; border-bottom:1px solid var(--line); background:var(--color-surface-subtle); }
.progressive-list > summary { min-height:48px; display:flex; align-items:center; justify-content:center; padding:9px 14px; color:var(--teal); font-size:12px; font-weight:850; cursor:pointer; list-style:none; }
.progressive-list > summary::-webkit-details-marker { display:none; }
.progressive-list > summary::after { content:"+"; margin-left:8px; font-size:17px; line-height:1; transition:transform .16s ease; }
.progressive-list[open] > summary::after { transform:rotate(45deg); }
.progressive-list > summary:hover,.progressive-list > summary:focus-visible { background:rgba(78,231,212,.055); }
.progressive-list > summary:focus-visible { outline-width:2px; outline-offset:-2px; }
.progressive-list--detail { border:0; border-top:1px solid var(--line); }
.search-empty { padding:14px; color:var(--muted); font-size:12px; }
.loading-status,.error-banner { display:flex; gap:10px; align-items:center; margin:12px 0; padding:13px 16px; border:1px solid var(--line); border-radius:var(--radar-radius-control); background:var(--panel); font-size:12px; }
.short-loading-skeleton { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:12px; }
.short-loading-skeleton span { min-height:210px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:linear-gradient(100deg,var(--panel) 30%,var(--panel-2) 50%,var(--panel) 70%); background-size:300% 100%; animation:short-skeleton-shimmer 1.4s linear infinite; }
@keyframes short-skeleton-shimmer { from { background-position:100% 0; } to { background-position:0 0; } }
.error-banner { border-color:var(--color-negative); color:var(--color-negative); background:var(--color-negative-soft); }
.error-banner strong,.error-banner span { display:block; }
.error-banner span,.quality-warning span,.detail-error span { overflow-wrap:anywhere; }
.error-banner button { min-height:44px; margin-left:auto; padding:0 14px; border:1px solid currentColor; border-radius:var(--radar-radius-control); color:var(--color-negative); background:var(--panel); font-size:12px; font-weight:850; cursor:pointer; white-space:nowrap; }
.identity-notice { margin:12px 0; padding:12px 15px; border:1px solid var(--color-warning); border-radius:var(--radar-radius-control); background:var(--color-warning-soft); color:var(--color-warning); font-size:var(--font-sm); line-height:1.45; }
.overview-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding:6px 2px 10px; }
.overview-heading p { margin:5px 0 0; color:var(--muted); font-size:12px; }
.short-section-panel { min-width:0; }
.overview-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.activity-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.threshold-explainer { display:grid; grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr); gap:20px; align-items:center; margin-top:12px; padding:14px 18px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:linear-gradient(100deg,var(--color-accent-soft),transparent 70%),var(--panel); }
.threshold-explainer > div { display:grid; grid-template-columns:minmax(130px,.35fr) minmax(120px,.25fr) minmax(0,1fr); gap:12px; align-items:center; }
.threshold-explainer > i { width:1px; height:40px; background:var(--line); }
.threshold-explainer span { color:var(--muted); font-size:var(--font-xs); font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.threshold-explainer strong { color:var(--teal); font-size:16px; white-space:nowrap; }
.threshold-explainer small { color:var(--muted); font-size:var(--font-xs); line-height:1.45; }
.compact-trend { margin-top:12px; }
.threshold-note { margin-top:8px; border:1px solid var(--line); border-radius:var(--radar-radius-control); background:var(--panel); }
.threshold-note > summary { min-height:44px; padding:12px 14px; color:var(--muted); font-size:var(--font-xs); line-height:1.5; cursor:pointer; }
.threshold-note .threshold-explainer { margin:0; border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; }
.compact-trend-notice { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:8px; padding:12px 16px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:var(--panel); }
body .compact-trend-notice h3 { margin:0 0 4px; font-size:var(--radar-type-lead)!important; }
.compact-trend-notice p { margin:0; color:var(--muted); font-size:var(--font-xs); line-height:1.5; }
.compact-trend-notice .section-link { flex-shrink:0; }
.section-link { min-height:36px; padding:0 12px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-control); color:var(--teal); background:rgba(78,231,212,.06); font-size:var(--font-xs); font-weight:850; cursor:pointer; white-space:nowrap; }
.section-link:hover { background:rgba(78,231,212,.12); }
.compact-trend-body { display:grid; grid-template-columns:clamp(230px,22vw,340px) minmax(0,1fr); min-height:168px; }
.compact-trend-body > div:first-child { display:grid; align-content:center; gap:6px; padding:20px; border-right:1px solid var(--line); }
.compact-trend-body > div:first-child span { color:var(--muted); font-size:var(--font-xs); font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.compact-trend-body > div:first-child strong { font-size:clamp(19px,2vw,28px); line-height:1.1; letter-spacing:-.03em; }
.compact-trend-body > div:first-child small { color:var(--muted); font-size:var(--font-xs); line-height:1.45; }
.compact-trend-chart { display:grid; min-width:0; grid-template-rows:auto minmax(120px,1fr) auto; padding:15px 20px 12px; }
.compact-trend-chart > p { display:grid; gap:3px; margin:0; padding:0 18px 5px; }
.compact-trend-chart > p strong { color:var(--text); font-size:var(--font-xs); }
.compact-trend-chart > p span { color:var(--muted); font-size:var(--font-xs); line-height:1.4; }
.compact-trend-chart svg { display:block; width:100%; height:120px; overflow:visible; }
.compact-trend-chart > div { display:flex; justify-content:space-between; gap:20px; padding:2px 18px 0; color:var(--muted); font-size:var(--font-xs); }
.compact-trend-grid { fill:none; stroke:rgba(137,164,202,.12); stroke-width:1; stroke-dasharray:4 6; vector-effect:non-scaling-stroke; }
.compact-trend-area { fill:rgba(78,231,212,.075); stroke:none; }
.compact-trend-line { fill:none; stroke:var(--teal); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.compact-trend-line.is-flat { stroke-dasharray:8 6; }
.compact-trend-gap,.market-chart-gap,.chart-gap { fill:none; stroke:var(--muted); stroke-width:2; stroke-dasharray:5 7; opacity:.8; vector-effect:non-scaling-stroke; }
.compact-trend-building { display:grid; align-content:center; gap:5px; min-height:150px; padding:22px; }
.compact-trend-building span { color:var(--teal); font-size:var(--font-xs); font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.compact-trend-building strong { font-size:23px; }.compact-trend-building small { color:var(--muted); font-size:var(--font-xs); }
.analysis-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:22px; padding:6px 2px 12px; }
.analysis-heading h2 { margin:3px 0 0; font-size:22px; }.analysis-heading p { max-width:760px; margin:5px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
.analysis-heading label { display:grid; gap:6px; color:var(--muted); font-size:var(--font-xs); font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
.analysis-heading select { min-height:42px; padding:0 36px 0 12px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-control); color:var(--text); background:var(--panel); font-size:12px; text-transform:none; letter-spacing:0; }
.list-toolbar { display:grid; grid-template-columns:minmax(260px,1fr) minmax(190px,auto) auto auto auto; gap:9px; align-items:end; margin:0 0 12px; padding:12px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:var(--panel); }
.list-toolbar--events { grid-template-columns:minmax(260px,1fr) auto auto; margin-top:12px; }
.list-query-group,.list-sort-group { display:contents; }
.list-toolbar label { display:grid; gap:6px; min-width:0; }
.list-toolbar label > span { color:var(--muted); font-size:var(--font-xs); font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
.list-toolbar input,.list-toolbar select { width:100%; min-height:44px; padding:0 13px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-control); color:var(--text); background:var(--panel); font-size:12px; }
.list-toolbar button,.list-pagination button,.list-error button { min-height:44px; padding:0 15px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-control); color:var(--teal); background:rgba(78,231,212,.08); font-size:12px; font-weight:850; cursor:pointer; white-space:nowrap; }
.list-toolbar button[type=submit] { color:var(--color-on-accent); background:var(--teal); }
.list-toolbar button:hover,.list-pagination button:hover,.list-error button:hover { background:rgba(78,231,212,.15); }
.list-toolbar button[type=submit]:hover { background:var(--color-accent-strong); }
.list-toolbar .toolbar-secondary { border-color:var(--line); color:var(--muted); background:transparent; }
.sort-direction { min-width:112px; }
.list-announcer { min-height:24px; padding:0 4px 8px; color:var(--muted); font-size:var(--font-xs); text-align:right; }
.list-loading { display:grid; min-height:180px; place-items:center; color:var(--muted); background:linear-gradient(100deg,var(--panel) 30%,var(--panel-2) 50%,var(--panel) 70%); background-size:300% 100%; animation:short-skeleton-shimmer 1.4s linear infinite; }
.list-pagination,.list-complete { display:flex; min-height:60px; align-items:center; justify-content:center; padding:8px 14px; border-top:1px solid var(--line); background:var(--color-surface-subtle); }
.list-pagination button { min-width:min(320px,100%); }
.list-pagination button:disabled { cursor:wait; opacity:.65; }
.list-complete { color:var(--muted); font-size:var(--font-xs); }
.list-error { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:64px; padding:10px 14px; border-top:1px solid var(--color-negative); color:var(--color-negative); background:var(--color-negative-soft); font-size:12px; }
.list-error span { overflow-wrap:anywhere; }
.companies-panel--full,.events-panel--full { margin-top:0; }
.event-filter { display:flex; gap:7px; margin:12px 0; overflow-x:auto; scrollbar-width:none; }
.event-filter::-webkit-scrollbar { display:none; }
.event-filter button { min-height:44px; flex:0 0 auto; padding:0 13px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:var(--panel); font-size:var(--font-xs); font-weight:850; cursor:pointer; }
.event-filter button span { margin-left:5px; color:var(--text); }
.event-filter button[aria-pressed=true] { border-color:var(--line-strong); color:var(--teal); background:rgba(78,231,212,.1); }
.event-context { margin:0; }
.event-context > summary { display:none; }
.period-switch { display:flex; padding:3px; border:1px solid var(--line); border-radius:999px; background:var(--panel); }
.period-switch button { min-height:34px; padding:0 15px; border:0; border-radius:999px; color:var(--muted); background:transparent; font-size: var(--font-xs); font-weight:800; cursor:pointer; }
.period-switch button[aria-pressed=true] { color:var(--color-on-accent); background:var(--teal); }
.metric-groups { display:grid; grid-template-columns:minmax(360px,1fr) minmax(0,2fr); gap:12px; }
.metric-group { min-width:0; padding:12px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:var(--panel); }
.metric-group > header { min-height:47px; display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding:0 2px 10px; }
.metric-group > header h3 { margin:3px 0 0; font-size:16px; }
.metric-group > header small { padding-top:2px; color:var(--muted); font-size:var(--font-xs); text-align:right; }
.metrics-grid { display:grid; gap:9px; }
.metric-group--snapshot .metrics-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.metric-group--activity .metrics-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.metric-card { min-width:0; min-height:112px; padding:14px 15px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:linear-gradient(140deg,var(--panel-2),var(--panel)); }
.metric-card > div { display:flex; align-items:flex-start; gap:6px; min-height:30px; }
.metric-card span { overflow:hidden; color:var(--muted); font-size:12px; line-height:1.35; }
.metric-card strong { display:block; margin-top:8px; font-size:23px; line-height:1; letter-spacing:-.03em; }
.metric-card small { display:block; margin-top:7px; color:var(--muted); font-size: var(--font-xs); line-height:1.4; }
.market-trend-panel { min-width:0; margin-top:12px; overflow:hidden; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:linear-gradient(135deg,var(--panel-2),var(--panel)); }
.market-trend-panel > header { display:flex; align-items:flex-start; justify-content:space-between; gap:28px; padding:18px 20px 15px; border-bottom:1px solid var(--line); }
.market-trend-panel h3 { margin:4px 0 0; font-size:20px; }
.market-trend-panel header p { max-width:760px; margin:6px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
.market-trend-coverage { display:grid; flex:0 0 auto; gap:3px; min-width:190px; text-align:right; }
.market-trend-coverage span,.market-trend-summary span { color:var(--muted); font-size:var(--font-xs); font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.market-trend-coverage strong { font-size:14px; }.market-trend-coverage small { color:var(--muted); font-size:var(--font-xs); }
.market-trend-coverage.is-limited { padding:9px 11px; border:1px solid rgba(255,202,84,.34); border-radius:var(--radar-radius-control); background:rgba(255,202,84,.07); }
.market-trend-coverage.is-limited span,.market-trend-coverage.is-limited strong { color:var(--color-warning); }
.market-trend-body { display:grid; grid-template-columns:minmax(290px,.34fr) minmax(0,1fr); grid-template-areas:"summary chart"; min-height:330px; }
.market-trend-summary { grid-area:summary; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:stretch; border-right:1px solid var(--line); background:var(--color-surface-subtle); }
.market-trend-summary > div { display:grid; min-width:0; align-content:center; gap:7px; padding:18px; border-right:1px solid rgba(137,164,202,.1); border-bottom:1px solid rgba(137,164,202,.1); }
.market-trend-summary > div:nth-child(2n) { border-right:0; }.market-trend-summary > div:nth-last-child(-n+2) { border-bottom:0; }
.market-trend-summary strong { font-size:clamp(17px,1.45vw,24px); line-height:1.12; letter-spacing:-.025em; overflow-wrap:anywhere; }
.market-trend-summary small { color:var(--muted); font-size:var(--font-xs); line-height:1.45; }
.market-chart-visual { grid-area:chart; position:relative; display:grid; min-width:0; grid-template-columns:98px minmax(0,1fr); grid-template-rows:minmax(250px,1fr) auto; align-items:stretch; padding:18px 20px 15px 8px; }
.market-chart-scale { display:flex; flex-direction:column; justify-content:space-between; padding:20px 10px 22px 0; color:var(--muted); font-size:var(--font-xs); text-align:right; }
.market-chart-svg { width:100%; height:100%; min-height:250px; overflow:visible; }
.market-chart-grid { fill:none; stroke:var(--color-chart-grid); stroke-width:1; stroke-dasharray:5 7; vector-effect:non-scaling-stroke; }
.market-chart-area { fill:color-mix(in srgb,var(--color-accent) 10%,transparent); stroke:none; }
.market-chart-line { fill:none; stroke:var(--teal); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.market-chart-svg--flat .market-chart-line { stroke-dasharray:9 7; }
.market-chart-gap-note { grid-column:2; margin:7px 12px 0; color:var(--muted); font-size:var(--font-xs); line-height:1.45; }
.market-chart-svg circle { fill:var(--teal); stroke:var(--color-surface-raised); stroke-width:2; vector-effect:non-scaling-stroke; cursor:help; }
.market-chart-svg circle:focus { outline:none; stroke:var(--gold); stroke-width:4; }
/* Egen tooltip för marknadsgrafen. Ersätter SVG:ns <title>, som gav
   webbläsarens ljusa systemruta mitt i det mörka gränssnittet. */
.market-chart-point circle { fill:var(--teal); stroke:var(--color-surface-raised); stroke-width:2; cursor:pointer; }
.market-chart-point { outline:none; }
.market-chart-point:focus-visible circle,
.market-chart-point.is-active circle { r:7px; stroke:var(--radar-focus); stroke-width:3; }
.market-chart-tip {
  position:absolute;
  z-index:4;
  display:grid;
  gap:3px;
  width:min(280px,calc(100% - 24px));
  padding:11px 13px;
  border:1px solid var(--line-strong);
  border-radius:var(--radar-radius-control);
  background:var(--color-chart-tooltip);
  box-shadow:var(--shadow-panel);
  color:var(--color-text-secondary);
  font-size:12px;
  line-height:1.35;
  pointer-events:none;
}
.market-chart-tip[hidden] { display:none; }
.market-chart-tip-title { color:var(--teal); font-weight:850; }
.market-chart-tip-muted { color:var(--color-text-muted); font-size:12px; }

.market-chart-axis { grid-column:2; display:flex; justify-content:space-between; gap:20px; padding:2px 40px 0; color:var(--muted); font-size:var(--font-xs); }
.market-chart-building { display:grid; align-content:center; justify-items:start; min-height:330px; gap:7px; padding:34px; background:radial-gradient(circle at 75% 50%,rgba(78,231,212,.08),transparent 42%); }
.market-chart-building span { color:var(--teal); font-size:var(--font-xs); font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.market-chart-building strong { font-size:clamp(25px,2.6vw,40px); line-height:1.05; letter-spacing:-.04em; }
.market-chart-building small,.market-chart-building p { color:var(--muted); font-size:var(--font-xs); line-height:1.5; }.market-chart-building p { max-width:480px; margin:12px 0 0; }
.market-trend-footer { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:center; padding:13px 20px; border-top:1px solid var(--line); background:rgba(78,231,212,.025); }
.market-trend-footer p { max-width:1050px; margin:0; color:var(--muted); font-size:var(--font-xs); line-height:1.55; }.market-trend-footer p strong { color:var(--text); }
.market-trend-footer dl { display:flex; gap:9px; margin:0; }.market-trend-footer dl > div { min-width:90px; padding:8px 10px; border:1px solid var(--line); border-radius:var(--radar-radius-control); background:var(--panel); }
.market-trend-footer dt { color:var(--muted); font-size:var(--font-xxs); text-transform:uppercase; letter-spacing:.05em; }.market-trend-footer dd { margin:3px 0 0; color:var(--text); font-size:12px; font-weight:850; }
.help-popover { position:relative; flex:none; }
.help-popover summary { position:relative; display:grid; place-items:center; width:28px; height:28px; margin-top:-5px; border-radius:50%; color:var(--color-info); background:var(--color-info-soft); font-size:12px; cursor:pointer; list-style:none; }
.help-popover summary::-webkit-details-marker { display:none; }
/* Träffyta 44x44 utan att cirkeln växer – se .term-help i ägarradarn. */
.help-popover summary::after { content:""; position:absolute; inset:-9px; }
.help-popover > div { position:absolute; z-index:30; top:28px; left:0; width:min(340px,75vw); padding:13px 15px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-panel); background:var(--panel-2); box-shadow:var(--shadow-panel); }
/* Pil mot knappen, samma som ägarradarns term-popover. */
.help-popover > div::before { content:""; position:absolute; top:-5px; left:18px; width:8px; height:8px; border-top:1px solid var(--line-strong); border-left:1px solid var(--line-strong); background:var(--panel-2); transform:rotate(45deg); }
.help-popover header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.help-popover b { color:var(--teal); font-size:var(--radar-type-caption); letter-spacing:.02em; }
.help-popover p { margin:7px 0 0; color:var(--color-text-secondary); font-size:var(--radar-type-caption); line-height:1.55; }
.help-close { display:grid; width:32px; min-width:32px; height:32px; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--text); background:var(--panel); font-size:18px; line-height:1; cursor:pointer; }
.metric-card:last-child .help-popover > div { right:0; left:auto; }
.overview-grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(560px,.92fr); gap:12px; margin-top:12px; }
.panel { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:var(--panel); }
.panel > header { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 18px; border-bottom:1px solid var(--line); }
.panel h3 { margin:3px 0 0; font-size:18px; }
.panel > header > span { color:var(--muted); font-size: var(--font-xs); }
.panel-note { padding:10px 18px; color:var(--color-text-secondary); background:var(--color-info-soft); font-size: var(--font-xs); line-height:1.45; }
.quality-warning { display:flex; align-items:center; gap:10px; margin:0 0 12px; padding:10px 14px; border:1px solid var(--color-warning); border-radius:var(--radar-radius-control); color:var(--color-warning); background:var(--color-warning-soft); font-size:12px; line-height:1.45; }
.quality-warning span { color:var(--color-warning); }
.company-row { display:grid; width:100%; grid-template-columns:38px minmax(180px,1fr) 125px 135px; gap:14px; align-items:center; min-height:62px; padding:8px 16px; border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; cursor:pointer; }
.company-row--no-change { grid-template-columns:38px minmax(180px,1fr) 125px; }
.company-row:hover,.company-row:focus-visible,.event-row:hover,.event-row:focus-visible { background:rgba(78,231,212,.045); }
.rank { color:var(--muted); font-size:12px; font-weight:850; }
.company-name,.company-level,.change,.event-main,.event-change { min-width:0; }
.company-name b,.company-name small,.company-level b,.company-level small,.change b,.change small,.event-main b,.event-main small,.event-change b,.event-change small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.company-name b,.event-main b { font-size:12px; }
.company-name small,.company-level small,.change small,.event-main small,.event-change small { margin-top:4px; color:var(--muted); font-size: var(--font-xs); }
.company-level,.change { text-align:right; }
.company-level b { color:var(--text); font-size:15px; }
.company-mobile-caption, .company-row .company-change-compact, .overview-summary > summary { display:none; }
.overview-summary[data-layout='mobile'] > summary { display:flex; }
.change b { font-size:12px; }.change.up b,.direction.up { color:var(--red); }.change.down b,.direction.down { color:var(--teal); }
.event-row { display:grid; width:100%; grid-template-columns:80px minmax(145px,1.05fr) minmax(135px,.9fr) minmax(110px,auto); gap:12px; align-items:center; min-height:68px; padding:9px 16px; border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; cursor:pointer; }
.event-date { color:var(--muted); font-size: var(--font-xs); }
.event-change { text-align:right; }
.event-change b { font-size:12px; }
.direction { justify-self:end; padding:6px 8px; border:1px solid currentColor; border-radius:999px; font-size: var(--font-xs); font-weight:850; white-space:nowrap; }
.direction.neutral { color:var(--muted); }
.empty-state { padding:34px 20px; text-align:center; }.empty-state b { font-size:13px; }.empty-state p { margin:6px auto 0; max-width:420px; color:var(--muted); font-size: var(--font-xs); }
.method-note { margin-top:12px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:var(--panel); }
.method-note summary { min-height:44px; display:flex; align-items:center; padding:10px 16px; color:var(--gold); font-size: var(--font-xs); font-weight:850; cursor:pointer; }
.method-note ul { margin:0; padding:0 28px 16px 34px; color:var(--muted); font-size: var(--font-xs); line-height:1.55; }
footer { display:flex; justify-content:space-between; gap:20px; padding:18px 4px 0; color:var(--muted); font-size: var(--font-xs); }
.detail-open { overflow:hidden; }
.detail-backdrop { position:fixed; z-index:100; inset:0; background:var(--color-overlay); backdrop-filter:blur(5px); }
.issuer-detail { position:fixed; z-index:101; top:50%; left:50%; width:min(1200px,calc(100vw - 48px)); max-height:calc(100dvh - 40px); overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:20px; border:1px solid var(--line-strong); border-radius:var(--radar-radius-hero); background:var(--panel-2); box-shadow:var(--shadow-drawer); transform:translate(-50%,-50%); }
.issuer-detail > header { position:sticky; z-index:2; top:-20px; display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin:-20px -20px 10px; padding:20px 20px 17px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--panel-2) 96%,transparent); backdrop-filter:blur(10px); }
.issuer-detail h2 { margin:5px 0 0; font-size:27px; }.issuer-detail header p { margin:5px 0 0; color:var(--muted); font-size: var(--font-xs); }
.close-button { display:grid; place-items:center; width:44px; min-width:44px; height:44px; flex:0 0 44px; border:1px solid var(--line); border-radius:50%; background:var(--panel); font-size:25px; cursor:pointer; }
.issuer-tabs { position:relative; z-index:1; display:flex; gap:5px; margin:0 0 10px; padding:5px; overflow-x:auto; border:1px solid var(--line); border-radius:var(--radar-radius-control); background:var(--panel); scrollbar-width:none; }
.issuer-tabs::-webkit-scrollbar { display:none; }
.issuer-tabs button { min-height:40px; flex:1 0 auto; padding:0 16px; border:0; border-radius:var(--radar-radius-control); color:var(--muted); background:transparent; font-size:var(--font-xs); font-weight:850; cursor:pointer; white-space:nowrap; }
.issuer-tabs button[aria-selected=true] { color:var(--color-on-accent); background:var(--teal); }
.issuer-tab-content { min-width:0; }
.detail-tab-panel { margin:0; }
.detail-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-bottom:10px; }
.detail-chart { margin-bottom:10px; }
.aggregate-chart { display:grid; grid-template-columns:55px 1fr; padding:12px 18px 14px; }
.aggregate-chart svg { width:100%; height:250px; overflow:visible; }
.chart-head { display:flex; flex-direction:column; justify-content:space-between; padding:4px 8px 26px 0; color:var(--muted); font-size: var(--font-xs); text-align:right; }
.chart-axis { grid-column:2; display:flex; justify-content:space-between; color:var(--muted); font-size: var(--font-xs); }
.chart-grid { fill:none; stroke:rgba(137,164,202,.12); stroke-width:.4; stroke-dasharray:2 2; }
.chart-area { fill:color-mix(in srgb,var(--color-accent) 10%,transparent); stroke:none; }.chart-line { fill:none; stroke:var(--teal); stroke-width:1.3; vector-effect:non-scaling-stroke; }.aggregate-chart circle { fill:var(--teal); stroke:var(--color-surface-raised); stroke-width:.6; }
/* Egen tooltip även här; <title> gav webbläsarens systemruta. Textstorleken
   är i viewBox-enheter: 5 enheter blir ~12px vid den skala rutan ger. */
.spark-point { outline:none; }
.spark-point:focus-visible circle { stroke:var(--radar-focus); stroke-width:1.2; }
.spark-tip { visibility:hidden; opacity:0; pointer-events:none; transition:opacity .12s ease; }
.spark-point:hover + .spark-tip,
.spark-point:focus + .spark-tip { visibility:visible; opacity:1; }
.spark-tip rect { fill:var(--color-chart-tooltip); stroke:var(--color-border-strong); stroke-width:.5; }
.spark-tip text { fill:var(--color-text-secondary); font:5px Manrope, sans-serif; }
.spark-tip .spark-tip-title { fill:var(--teal); font-weight:800; }
.history-building-state { display:grid; min-height:190px; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:center; gap:16px; padding:24px 28px; }
.history-building-state > div { display:grid; align-content:center; gap:5px; min-height:102px; padding:18px 20px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:rgba(78,231,212,.035); }
.history-building-state span { color:var(--teal); font-size:var(--font-xs); font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.history-building-state strong { font-size:clamp(21px,2vw,30px); line-height:1.1; letter-spacing:-.025em; }
.history-building-state small { color:var(--muted); font-size:var(--font-xs); line-height:1.45; }
.history-building-state p { grid-column:1/-1; margin:0; color:var(--muted); font-size:var(--font-xs); line-height:1.55; }
.flat-series-chart { min-height:250px; display:grid; grid-template-columns:minmax(180px,.32fr) minmax(300px,1fr); grid-template-rows:auto auto auto; align-content:center; align-items:center; column-gap:28px; padding:24px 32px; }
.flat-series-value { grid-row:1/3; display:grid; align-content:center; gap:5px; min-height:150px; padding-right:28px; border-right:1px solid var(--line); }
.flat-series-value span { color:var(--teal); font-size:var(--font-xs); font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.flat-series-value strong { font-size:clamp(30px,3vw,44px); line-height:1; letter-spacing:-.045em; }
.flat-series-value small { color:var(--muted); font-size:12px; }
.flat-series-svg { display:block; width:100%; min-height:100px; overflow:visible; }
.flat-series-svg circle { fill:var(--teal); stroke:var(--color-surface-raised); stroke-width:1; vector-effect:non-scaling-stroke; }
.flat-series-line { display:grid; grid-template-columns:12px 1fr 12px; align-items:center; padding:12px 4px 4px; }
.flat-series-line i { width:12px; height:12px; border:2px solid var(--color-surface-raised); border-radius:50%; background:var(--teal); box-shadow:0 0 0 5px var(--color-accent-soft); }
.flat-series-line span { height:2px; background:linear-gradient(90deg,var(--teal),rgba(78,231,212,.62)); }
.flat-series-range { display:flex; justify-content:space-between; gap:20px; padding:7px 2px 0; color:var(--muted); font-size:var(--font-xs); }
.flat-series-chart p,.chart-reading-note { grid-column:1/-1; margin:14px 0 0; color:var(--muted); font-size:var(--font-xs); line-height:1.5; }
.chart-reading-note { grid-column:1/3; padding-top:11px; border-top:1px solid rgba(137,164,202,.1); }
.detail-columns { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:10px; align-items:start; }
.position-list { overflow:visible; margin:0; padding:0; list-style:none; }
.position-list li { display:grid; grid-template-columns:10px minmax(140px,1fr) minmax(140px,.8fr); gap:10px; align-items:center; min-height:58px; padding:9px 15px; border-bottom:1px solid var(--line); }
.position-list li > div b,.position-list li > div small,.position-list li > span:last-child b,.position-list li > span:last-child small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.position-list b { font-size:12px; }.position-list small { margin-top:4px; color:var(--muted); font-size: var(--font-xs); }.position-list li > span:last-child { text-align:right; }
.direction-dot { width:7px; height:7px; border-radius:50%; background:var(--muted); }.direction-dot.up { background:var(--red); }.direction-dot.down { background:var(--teal); }
.plain-empty { display:block!important; color:var(--muted); text-align:center; }
.detail-loading,.detail-error { position:fixed; z-index:101; top:50%; left:50%; display:grid; width:min(420px,calc(100vw - 32px)); gap:10px; padding:24px; border:1px solid var(--line); border-radius:var(--radar-radius-panel); background:var(--panel); transform:translate(-50%,-50%); }
.detail-error button { min-height:44px; padding:0 16px; border:1px solid rgba(255,107,129,.42); border-radius:var(--radar-radius-control); background:rgba(255,107,129,.1); cursor:pointer; }
@media (min-width:761px) {
  .hero { border-radius:var(--radar-radius-hero); }
  /* Produktnamnet upprepar svitraden; titelsteget räcker. */
  .hero h1 { font-size:var(--radar-type-title)!important; letter-spacing:-.03em; }
  .search-panel h2,.overview-heading h2 { font-size:var(--radar-type-section); }
  .panel h3 { font-size:var(--radar-type-panel); }
  .issuer-detail h2 { font-size:var(--radar-type-title); }
  .metric-card strong { font-size:var(--radar-type-kpi); }
  .search-panel,.metric-card,.panel,.market-trend-panel { border-radius:var(--radar-radius-panel); }
  .market-trend-panel,.overview-grid,.method-note { margin-top:var(--radar-section-gap); }
}
@media (max-width:1500px) { .market-trend-body { grid-template-columns:minmax(260px,.42fr) minmax(0,1fr); }.market-trend-summary { grid-template-columns:1fr; }.market-trend-summary > div,.market-trend-summary > div:nth-child(2n),.market-trend-summary > div:nth-last-child(-n+2) { border-right:0; border-bottom:1px solid rgba(137,164,202,.1); }.market-trend-summary > div:last-child { border-bottom:0; }.market-trend-summary strong { font-size:18px; }.market-trend-footer { grid-template-columns:1fr; }.market-trend-footer dl { justify-content:flex-start; } }
@media (max-width:1280px) { .overview-grid { grid-template-columns:1fr; }.events-panel .event-list,.events-panel .progressive-list > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.events-panel .event-row { grid-template-columns:80px minmax(0,1fr); }.events-panel .event-change,.events-panel .direction { grid-column:2; justify-self:start; text-align:left; } }
@media (max-width:1200px) { .metric-groups { grid-template-columns:1fr; }.detail-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.market-trend-body { grid-template-columns:1fr; grid-template-areas:"summary" "chart"; }.market-trend-summary { grid-template-columns:repeat(4,minmax(0,1fr)); border-right:0; border-bottom:1px solid var(--line); }.market-trend-summary > div,.market-trend-summary > div:nth-child(2n),.market-trend-summary > div:nth-last-child(-n+2) { border-right:1px solid rgba(137,164,202,.1); border-bottom:0; }.market-trend-summary > div:last-child { border-right:0; } }
@media (max-width:760px) { .radar-shell { width:min(100% - 20px,1800px); padding-top:8px; }.brand { min-height:44px; }.source-health { display:none; }.radar-suite-bar { align-items:stretch; flex-direction:column; gap:4px; }.radar-suite-bar > div:last-child { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; }.radar-suite-bar a { min-width:0; min-height:44px; display:grid; padding:6px 3px; place-items:center; font-size:12px; }.nav-label-long { display:none; }.nav-label-short { display:inline; }.hero { grid-template-columns:1fr; min-height:0; gap:14px; padding:16px; }.hero p { margin-top:6px; line-height:1.4; }.hero-meta { min-width:0; gap:5px; padding:12px 14px; text-align:left; }.hero-aside { min-width:0; }.search-panel { grid-template-columns:1fr; gap:10px; padding:0; }.search-panel p { margin-top:4px; line-height:1.4; }.search-panel h2,.overview-heading h2 { font-size:20px; }.overview-heading { align-items:stretch; flex-direction:column; gap:10px; padding-top:4px; }.overview-heading p { margin-top:3px; }.period-switch { overflow-x:auto; scrollbar-width:none; }.period-switch::-webkit-scrollbar { display:none; }.period-switch button { min-width:0; min-height:44px; flex:1; padding:0 6px; white-space:nowrap; }.quality-warning,.error-banner { align-items:flex-start; flex-direction:column; gap:3px; }.overview-metrics,.metric-group--snapshot .metrics-grid,.metric-group--activity .metrics-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.overview-metrics > :last-child { grid-column:1 / -1; }.metric-group > header { min-height:0; }.market-trend-panel > header { flex-direction:column; gap:10px; padding:16px; }.market-trend-coverage { min-width:0; text-align:left; }.market-trend-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }.market-trend-summary > div,.market-trend-summary > div:nth-child(2n),.market-trend-summary > div:nth-last-child(-n+2) { min-height:120px; padding:14px; border-right:1px solid rgba(137,164,202,.1); border-bottom:1px solid rgba(137,164,202,.1); }.market-trend-summary > div:nth-child(2n) { border-right:0; }.market-trend-summary > div:nth-last-child(-n+2) { border-bottom:0; }.market-chart-visual { grid-template-columns:1fr; grid-template-rows:220px auto; padding:14px; }.market-chart-scale { display:none; }.market-chart-svg { min-height:220px; }.market-chart-axis { grid-column:1; padding:3px 12px 0; }.market-chart-building { min-height:230px; padding:22px 16px; }.market-trend-footer { gap:15px; padding:14px 16px; }.market-trend-footer dl { display:grid; width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }.market-trend-footer dl > div { min-width:0; }.help-popover summary { width:44px; height:44px; margin-top:-11px; font-size:13px; }.help-popover > div { position:fixed; z-index:110; inset:auto 16px 16px; width:auto; max-height:min(50vh,320px); padding:16px; overflow:auto; }.help-close { width:44px; min-width:44px; height:44px; font-size:13px; }.events-panel .event-list,.events-panel .progressive-list > div { display:block; }.company-row { grid-template-columns:28px minmax(0,1fr) 92px; }.company-row .change { grid-column:2/4; padding-left:0; text-align:left; }.event-row,.events-panel .event-row { grid-template-columns:76px minmax(0,1fr); }.event-change,.events-panel .event-change,.direction,.events-panel .direction { grid-column:2; justify-self:start; text-align:left; }.issuer-detail { inset:0; width:100%; height:100dvh; border-radius:0; padding:14px; transform:none; }.issuer-detail > header { top:-14px; margin:-14px -14px 10px; padding:14px 14px 12px; }.detail-metrics,.detail-columns { grid-template-columns:1fr; }.position-list li { grid-template-columns:10px minmax(0,1fr); }.position-list li > span:last-child { grid-column:2; text-align:left; }.aggregate-chart svg { height:190px; }.history-building-state { min-height:0; grid-template-columns:1fr; gap:10px; padding:16px; }.history-building-state > div { min-height:0; padding:15px 16px; }.history-building-state p { grid-column:1; }.flat-series-chart { min-height:250px; grid-template-columns:1fr; grid-template-rows:auto auto auto auto; gap:12px; padding:20px 16px; }.flat-series-value { grid-row:auto; min-height:0; padding:0 0 15px; border-right:0; border-bottom:1px solid var(--line); }.flat-series-chart p { margin-top:2px; }.chart-reading-note { grid-column:1/-1; } footer { flex-direction:column; } }

@media (max-width:900px) {
  .list-toolbar,.list-toolbar--events { grid-template-columns:1fr 1fr; }
  .list-search { grid-column:1/-1; }
}

@media (max-width:560px) {
  .list-toolbar,.list-toolbar--events { grid-template-columns:1fr; }
  .list-search { grid-column:auto; }
  .list-toolbar button,.sort-direction { width:100%; }
  .list-announcer { text-align:left; }
  .list-error { align-items:stretch; flex-direction:column; }
}

@media (max-width:760px) {
  .market-chart-visual { grid-template-rows:220px auto auto; }
  .market-chart-tip {
    position:static;
    grid-column:1;
    width:auto;
    margin-top:9px;
  }
}
@media (max-width:430px) { .metrics-grid { grid-template-columns:1fr 1fr; }.metric-card { min-height:116px; padding:12px; }.hero h1 { font-size:34px; }.company-level b { font-size:13px; }.detail-metrics { grid-template-columns:1fr 1fr; }.issuer-detail h2 { font-size:22px; } }
@media (max-width:760px) { .help-close { font-size:22px; } }
@media (max-width:1200px) { .threshold-explainer > div { grid-template-columns:1fr; gap:4px; }.overview-metrics,.activity-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .short-loading-skeleton { grid-template-columns:1fr; }.short-loading-skeleton span { min-height:120px; } }
@media (max-width:760px) {
  .short-section-tabs { scroll-snap-type:x proximity; }
  .short-section-tabs button { min-width:max-content; flex:0 0 auto; scroll-snap-align:center; }
  .overview-metrics,.activity-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .threshold-explainer { grid-template-columns:1fr; gap:12px; padding:14px; }
  .threshold-explainer > i { width:100%; height:1px; }
  .threshold-explainer > div { grid-template-columns:minmax(110px,.42fr) minmax(0,1fr); gap:5px 10px; }
  .threshold-explainer > div small { grid-column:1/-1; }
  .compact-trend-body { grid-template-columns:1fr; }
  .compact-trend-body > div:first-child { border-right:0; border-bottom:1px solid var(--line); }
  .compact-trend-chart { padding:12px; }
  .analysis-heading { align-items:stretch; flex-direction:column; gap:12px; }
  .analysis-heading label { width:100%; }.analysis-heading select { width:100%; }
  .section-link { min-height:44px; }
  .issuer-tabs { position:relative; top:auto; scroll-snap-type:x proximity; }
  .issuer-tabs button { min-width:max-content; flex:1 0 auto; scroll-snap-align:center; }
}
@media (max-width:430px) {
  .overview-metrics,.activity-metrics { grid-template-columns:1fr 1fr; }
  .overview-metrics .metric-card,.activity-metrics .metric-card { min-height:122px; }
  .threshold-explainer > div { grid-template-columns:1fr; }
  .threshold-explainer > div small { grid-column:1; }
  .panel > header { align-items:flex-start; }
}
@media (max-width:760px) {
  /* Section-specific lists have their own search. Avoid presenting two visually
     identical search flows before the requested data. */
  .radar-content-search:is([data-short-content-section='companies'],[data-short-content-section='events']) { display:none; }

  .analysis-heading,
  [data-short-section-panel='events'] > .overview-heading { gap:6px; padding-bottom:8px; }
  .analysis-heading p,
  [data-short-section-panel='events'] > .overview-heading p { display:none; }

  .list-toolbar--companies,
  .list-toolbar--events { grid-template-columns:1fr; gap:8px; margin:0 0 8px; padding:10px; }
  .list-query-group,
  .list-sort-group { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:end; }
  .list-toolbar .list-query-group > button,
  .list-toolbar .list-sort-group > button { width:auto; min-width:88px; padding-inline:12px; }
  .list-toolbar .list-sort-group > .sort-direction { min-width:112px; }
  .list-toolbar > .toolbar-secondary { width:100%; }
  .list-announcer { min-height:20px; padding-bottom:5px; }

  .market-trend-body { grid-template-areas:"chart" "summary"; }
  .market-trend-panel > header { gap:5px; padding:13px 14px 10px; }
  .market-trend-panel > header p { display:none; }
  .market-trend-coverage { display:flex; flex-wrap:wrap; align-items:baseline; gap:3px 8px; }
  .market-trend-coverage small { flex-basis:100%; }
  .market-trend-summary > div,
  .market-trend-summary > div:nth-child(2n),
  .market-trend-summary > div:nth-last-child(-n+2) { min-height:96px; padding:11px; }

  [data-short-section-panel='events'] { display:flex; flex-direction:column; }
  [data-short-section-panel='events'] > .overview-heading { order:0; }
  [data-short-section-panel='events'] > .quality-warning { order:1; }
  [data-short-section-panel='events'] > .list-toolbar--events { order:2; }
  [data-short-section-panel='events'] > .event-filter { order:3; margin:0 0 8px; }
  [data-short-section-panel='events'] > .list-announcer { order:4; }
  [data-short-section-panel='events'] > .events-panel { order:5; }
  [data-short-section-panel='events'] > .event-context { order:6; margin-top:8px; border:1px solid var(--line); border-radius:var(--radar-radius-control); background:var(--panel); }
  .event-context > summary { display:flex; min-height:44px; align-items:center; justify-content:space-between; padding:9px 12px; color:var(--gold); font-size:var(--font-xs); font-weight:850; cursor:pointer; list-style:none; }
  .event-context > summary::-webkit-details-marker { display:none; }
  .event-context > summary::after { content:"⌄"; color:var(--muted); transition:transform .16s ease; }
  .event-context[open] > summary::after { transform:rotate(180deg); }
  .event-context .activity-metrics { gap:6px; padding:8px; border-top:1px solid var(--line); }
  .event-context .threshold-explainer { margin:0; border-width:1px 0 0; border-radius:0; }

  .overview-summary-copy { display:grid; gap:2px; }
  .overview-summary-title { color:var(--gold)!important; font-size:12px!important; letter-spacing:.02em; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }

/* Desktop: compress repeated context so lists and charts enter the first viewport. */
@media (min-width:761px) {
  .radar-shell { padding-top:7px; }
  .topbar { min-height:35px; }
  .brand-mark { width:28px; height:28px; }
  .radar-suite-bar { min-height:34px; margin-top:2px; padding:1px 6px 1px 11px; }
  .radar-suite-bar a { padding:6px 10px; }
  .hero { gap:22px; margin-top:6px; padding:8px 18px; }
  .hero h1 { margin:3px 0; font-size:34px!important; }
  .hero p { margin-top:4px; line-height:1.35; }
  .hero-aside { gap:7px; }
  .search-box input { min-height:38px; }
  .hero-meta { min-width:270px; gap:3px; padding:8px 12px; }
  .short-section-tabs { margin-top:6px; padding:3px; }
  .short-section-tabs button { min-height:44px; padding-inline:14px; }
  .overview-heading { padding:4px 2px 6px; }
  .overview-heading h2 { font-size:24px!important; }
  .overview-heading p { margin-top:3px; }
  .metric-card { min-height:78px; padding:9px 12px; }
  .metric-card > div { min-height:22px; }
  .metric-card strong { margin-top:4px; }
  .metric-card small { margin-top:3px; line-height:1.3; }
  .threshold-explainer { gap:14px; margin-top:7px; padding:8px 13px; }
  .threshold-explainer > i { height:30px; }
  .compact-trend { margin-top:8px; }
}

@media (max-width:760px) {
  .radar-suite-bar { gap:0; padding:4px; }
  .radar-suite-bar > div:first-child { display:none; }
  .short-section-tabs {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:2px;
    overflow:visible;
    padding:4px;
  }
  .short-section-tabs button { min-width:0; width:auto; padding-inline:2px; }
  .short-section-tabs .tab-label-long { display:none; }
  .short-section-tabs .tab-label-short { display:inline; }
  .hero { gap:10px; padding:12px; }
  .hero p { display:none; }
  .hero-meta { gap:4px; padding:10px 12px; }
  .hero-meta > span { display:none; }
  .overview-heading p { display:none; }
}

@media (max-width:760px) {
  .market-chart-gap-note { grid-column:1; padding:3px 12px 0; }
  .topbar { gap:8px; }
  .topbar .brand > span:last-child { display:none; }
  .topbar .brand-mark { width:44px; height:44px; }
  .topbar-actions { flex-wrap:nowrap; gap:8px; }
  .hero-meta { display:flex; flex-wrap:wrap; padding:0; border:0; background:transparent; }
  .hero-meta strong { font-size:var(--font-xs); }
  .metric-card { min-height:96px; }
  .overview-metrics .metric-card { min-height:0; padding:12px; }
  .overview-metrics .metric-card > div { min-height:0; }
  .overview-metrics .metric-card strong { margin-top:6px; font-size:24px; }
  .overview-metrics .metric-card:last-child { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:4px 8px; }
  .overview-metrics .metric-card:last-child strong { margin:0; font-size:20px; }
  .overview-metrics .metric-card:last-child small { grid-column:1/-1; margin:0; }
  .compact-trend-notice { align-items:flex-start; flex-direction:column; gap:8px; padding:12px; }
  .compact-trend > header { padding:12px; }
  .compact-trend-body > div:first-child { padding:12px; gap:4px; }
  .compact-trend-chart { padding:10px 12px; }
  .compact-trend-chart > p { padding-inline:0; }
  .compact-trend-chart { grid-template-rows:auto 90px auto; }
  .compact-trend-chart svg { height:90px; }
}

@media (max-width:760px) {
  body:not(.broadcast-mode) .hero-aside { gap:4px; }
  body:not(.broadcast-mode) .hero-aside .search-box input { min-height:44px; padding-block:8px; }
  #short-section-panel[data-short-section-panel='overview'] { display:flex; flex-direction:column; gap:8px; }
  #short-section-panel[data-short-section-panel='overview'] > .overview-heading { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  #short-section-panel[data-short-section-panel='overview'] > .overview-metrics { order:0; margin:0; gap:6px; }
  #short-section-panel[data-short-section-panel='overview'] > .threshold-note { order:1; margin:0; }
  #short-section-panel[data-short-section-panel='overview'] > .overview-grid { order:2; margin:0; }
  #short-section-panel[data-short-section-panel='overview'] > :is(.compact-trend,.compact-trend-notice) { order:3; margin:0; }
  #short-section-panel .overview-metrics .metric-card { padding:8px 10px; border-radius:12px; }
  #short-section-panel .overview-metrics .metric-card strong { font-size:18px; margin-top:2px; }
  #short-section-panel .overview-metrics .metric-card small { margin-top:2px; font-size:12px; }
  #short-section-panel .overview-metrics .metric-card:last-child { padding:8px 10px; }
  #short-section-panel .companies-panel > header { padding:10px 12px; gap:6px; }
  #short-section-panel .companies-panel > header .eyebrow { display:none; }
  #short-section-panel .companies-panel h3 { font-size:18px!important; }
  #short-section-panel .company-row { padding:10px 8px; }
  #short-section-panel .threshold-note > summary { font-size:12px; padding:8px 10px; }
}
@media (max-width:760px) {
  #short-section-panel .overview-metrics .metric-card:not(:last-child) small { display:none; }
}

/* Keep the overview's context available without delaying the company list. */
@media (max-width:760px) {
  #short-section-panel > .overview-summary { order:0; border:1px solid var(--line); border-radius:12px; background:var(--panel); }
  .overview-summary > summary { align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:10px; font-size:12px; color:var(--muted); cursor:pointer; list-style:none; }
  .overview-summary > summary::-webkit-details-marker { display:none; }
  .overview-summary > summary strong { color:var(--text); font-size:14px; }
  .overview-summary[open] > summary { border-bottom:1px solid var(--line); }
  .overview-summary[open] .overview-summary-chevron { transform:rotate(180deg); }
  #short-section-panel .overview-summary .overview-metrics { padding:8px; gap:6px; }
  #short-section-panel .overview-summary .metric-card small { display:block; }
  .overview-summary .threshold-note { margin:0; border:0; border-top:1px solid var(--line); border-radius:0; }
  #short-section-panel .companies-panel h3 { font-size:16px!important; }
  #short-section-panel .companies-panel > header { align-items:center; padding:6px 10px; }
  .company-mobile-caption { display:block; margin:0; padding:6px 10px; border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; line-height:1.4; }
  #short-section-panel .company-row { grid-template-columns:minmax(0,1fr) 112px; gap:2px 8px; min-height:48px; padding:6px 10px; }
  #short-section-panel .company-row .rank,
  #short-section-panel .company-row .company-name small,
  #short-section-panel .company-row .company-level small { display:none; }
  #short-section-panel .company-row .change small,
  #short-section-panel .company-row .company-change-full { position:absolute; width:1px; height:1px; padding:0; margin:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  #short-section-panel .company-row .company-name { grid-column:1; grid-row:1/3; }
  #short-section-panel .company-row .company-name b { display:-webkit-box; max-height:2.5em; overflow:hidden; font-size:14px; line-height:1.25; white-space:normal; text-overflow:ellipsis; text-decoration:underline; text-decoration-color:var(--teal); text-underline-offset:3px; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; }
  #short-section-panel .company-row .company-level { grid-column:2; grid-row:1; }
  #short-section-panel .company-row .company-level b { font-size:14px; line-height:1.4; }
  #short-section-panel .company-row .change { grid-column:2; grid-row:2; text-align:right; }
  #short-section-panel .company-row .company-change-compact { display:block; font-size:12px; line-height:1.4; white-space:normal; overflow-wrap:anywhere; }
  #short-section-panel .company-row--no-change .company-level { grid-row:1/3; }
}

@media (max-width:760px) {
  .market-chart-visual { grid-template-columns:44px minmax(0,1fr); grid-template-rows:180px auto auto; padding:10px 12px 12px 8px; }
  .market-chart-scale { display:flex; padding:16px 4px 18px 0; }
  .market-chart-svg { min-height:180px; }
  .market-chart-axis,.market-chart-gap-note { grid-column:2; }
  .market-chart-axis { padding:3px 4px 0; }
  .market-chart-tip { grid-column:1/-1; }
}
