/*
 * CMNT public composition, AVDS5 SSR adapter.
 * Product author: Commentarius. Foundation, type and primitives load before it.
 * This is a clean composition file; public documents do not load AVDS4 styles.
 */

/* The public typography decision keeps body copy in Source Sans 3, headings
   in Onest, and figures in IBM Plex Mono.  All three families are local so
   the public chain stays deterministic. */
@font-face {
    font-family: "Source Sans 3";
    font-style: normal;
    font-weight: 200 900;
    font-display: swap;
    src: url("/static/fonts/avds5/source-sans-3-roman.woff2") format("woff2");
}
@font-face {
    font-family: "Source Sans 3";
    font-style: italic;
    font-weight: 200 900;
    font-display: swap;
    src: url("/static/fonts/avds5/source-sans-3-italic.woff2") format("woff2");
}
@font-face {
    font-family: "Onest";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("/static/fonts/cmnt/onest-2.001-variable.woff2") format("woff2");
}
@font-face {
    font-family: "IBM Plex Mono";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/static/fonts/avds5/ibm-plex-mono-027.woff2?v=20260904a") format("woff2");
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: "IBM Plex Mono";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/static/fonts/avds5/ibm-plex-mono-028.woff2?v=20260904a") format("woff2");
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: "IBM Plex Mono";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/static/fonts/avds5/ibm-plex-mono-030.woff2?v=20260904a") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: "IBM Plex Mono";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/static/fonts/avds5/ibm-plex-mono-031.woff2?v=20260904a") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --cmnt-frame: 82rem;
    --cmnt-reading: 45rem;
    --cmnt-rail: 19rem;
    --cmnt-gutter: clamp(1rem, 3vw, 2.75rem);
    --cmnt-ink: hsl(var(--foreground));
    --cmnt-muted: hsl(var(--muted-foreground));
    --cmnt-paper: hsl(var(--background));
    --cmnt-surface: hsl(var(--card));
    --cmnt-rule: hsl(var(--border));
    --cmnt-rule-subtle: hsl(var(--border) / .58);
    --cmnt-link: hsl(var(--primary));
    --cmnt-link-rule: hsl(var(--primary) / .45);
    --cmnt-focus: hsl(var(--ring));
    --cmnt-signal: hsl(var(--chart-2));
    --cmnt-space-1: .5rem;
    --cmnt-space-2: 1rem;
    --cmnt-space-3: clamp(1.5rem, 3vw, 2.75rem);
    --cmnt-space-4: clamp(2.5rem, 4vw, 4rem);
}

:root[data-avds-typography="source-neutral"] {
    --font-sans: "Source Sans 3", Arial, sans-serif;
    --font-display: "Onest", "Source Sans 3", Arial, sans-serif;
    --font-micro: "Source Sans 3", Arial, sans-serif;
    --font-dashboard: "Source Sans 3", Arial, sans-serif;
    --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}

/* Owner-approved channel palette: shared public CMNT adoption. */
:root[data-cmnt-brand="channel"] {
    --cmnt-paper: #FAF9F6;
    --cmnt-surface: #FAF9F6;
    --cmnt-ink: #222222;
    --cmnt-muted: #625D57;
    --cmnt-rule: #D8D3CC;
    --cmnt-rule-subtle: #D8D3CC;
    --cmnt-link: #A52D23;
    --cmnt-link-rule: #A52D23;
    --cmnt-focus: #A52D23;
}
:root[data-cmnt-brand="channel"][data-theme="dark"] {
    --cmnt-paper: #191A1C;
    --cmnt-surface: #191A1C;
    --cmnt-ink: #F3F1ED;
    --cmnt-muted: #BDB7B0;
    --cmnt-rule: #484540;
    --cmnt-rule-subtle: #484540;
    --cmnt-link: #FF9B8C;
    --cmnt-link-rule: #FF9B8C;
    --cmnt-focus: #FF9B8C;
}

*, *::before, *::after { box-sizing: border-box; }
html { background: var(--cmnt-paper); color: var(--cmnt-ink); font-family: var(--font-sans); text-size-adjust: 100%; }
body { min-width: 320px; margin: 0; background: var(--cmnt-paper); color: var(--cmnt-ink); font-size: 1rem; line-height: 1.55; }
img, svg, video, canvas { display: block; max-width: 100%; }
img { height: auto; }
button, input, select, textarea { font: inherit; }
a { color: inherit; text-decoration-color: var(--cmnt-link-rule); text-decoration-thickness: .07em; text-underline-offset: .16em; }
a:hover { color: var(--cmnt-link); }
:focus-visible { outline: 2px solid var(--cmnt-focus); outline-offset: 3px; }
.visually-hidden, .sr-only, .cmnt-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* Shared shell */
.cmnt-skip-link {
    position: fixed;
    inset-block-start: .5rem;
    inset-inline-start: .5rem;
    z-index: 100;
    display: inline-flex;
    min-width: 44px;
    min-height: 44px;
    max-width: calc(100vw - 1rem);
    align-items: center;
    padding: .55rem .8rem;
    transform: translateY(calc(-100% - 1rem));
    border: 2px solid var(--cmnt-focus);
    background: var(--cmnt-paper);
    color: var(--cmnt-ink);
    font-weight: 700;
    line-height: 1.25;
    overflow-wrap: break-word;
    text-decoration: none;
}
.cmnt-skip-link:focus-visible { transform: none; }
#cmnt-main-content { scroll-margin-block-start: 1rem; }
.main-header { position: relative; z-index: 20; background: var(--cmnt-paper); border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-site-header__masthead,
.main-content, .page-content, .content-wrapper, .dashboard-page, .data-page, .map-page, .search-page, .static-page, .not-found-page,
.cmnt-footer__inner { width: min(100% - (var(--cmnt-gutter) * 2), var(--cmnt-frame)); margin-inline: auto; }
.cmnt-site-header__masthead { display: flex; min-height: 4.25rem; align-items: center; justify-content: space-between; gap: 1rem; }
.cmnt-site-header__brand { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: .7rem; row-gap: .08rem; align-items: center; min-width: 0; min-height: 44px; color: var(--cmnt-ink); text-decoration: none; }
.cmnt-site-header__mark { display: none; }
.cmnt-site-header__name { min-width: 0; font-family: var(--font-display); font-size: 1.375rem; font-weight: 700; letter-spacing: -.035em; line-height: 1.1; }
.cmnt-site-header__descriptor { grid-column: 2; min-width: 0; color: var(--cmnt-muted); font-size: .72rem; line-height: 1.15; }
.cmnt-site-header__languages { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-inline-start: 0; font-size: .75rem; }
.cmnt-site-header__languages [aria-current] { color: var(--cmnt-ink); font-weight: 700; }
.cmnt-site-header__languages [aria-disabled] { color: var(--cmnt-muted); cursor: default; }
.cmnt-site-header__utilities { display: flex; align-items: center; gap: .25rem; }
.cmnt-site-header__utility, .cmnt-site-header__menu { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; padding: .5rem .65rem; border: 0; background: transparent; color: var(--cmnt-muted); font-size: .76rem; font-weight: 650; text-decoration: none; }
.cmnt-footer__appearance .theme-toggle-button {
    display: inline-flex;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    /* Keep the accessible label in the DOM, but use a compact visual control
       so the 44px target remains usable at 200% text zoom. */
    overflow: hidden;
    font-size: 0;
    line-height: 0;
}
.theme-toggle-button::before {
    content: "";
    width: 16px;
    height: 16px;
    border: 1.5px solid currentColor;
    border-radius: 50%;
    background: linear-gradient(90deg, currentColor 0 50%, transparent 50% 100%);
}
.cmnt-site-header__utility:hover, .cmnt-site-header__menu:hover { color: var(--cmnt-ink); background: hsl(var(--muted) / .65); }
button.cmnt-site-header__menu { display: none; align-items: center; gap: .3rem; }
.cmnt-site-header__menu > span:not(.cmnt-site-header__menu-label) { width: .95rem; height: 1px; background: currentColor; }

.main-navigation { margin-inline: auto; display: flex; min-height: 2.9rem; align-items: stretch; flex-wrap: wrap; gap: 0; overflow-x: visible; }
.nav-link { display: inline-flex; min-height: 2.9rem; max-width: 100%; align-items: center; padding: 0 .75rem; color: var(--cmnt-muted); font-size: 1rem; font-weight: 550; text-decoration: none; white-space: normal; }
.nav-link:first-child { padding-left: 0; }
.nav-link:hover, .nav-link.active { color: var(--cmnt-ink); }
.nav-link.active { box-shadow: inset 0 -2px 0 var(--cmnt-link); }

/* Greenfield home opening: one editorial masthead, one information row. */
.cmnt-site-header--front { border-bottom: 0; }
.cmnt-site-header--front .cmnt-site-header__masthead { min-height: 4.25rem; padding-block: .25rem; flex-wrap: nowrap; gap: .5rem .75rem; }
.cmnt-site-header--front .cmnt-site-header__brand { align-content: center; max-width: 100%; }
.cmnt-site-header__logo { grid-row: 1 / span 2; width: 40px; height: 40px; object-fit: contain; }
.cmnt-site-header--front .cmnt-site-header__name { font-size: 1.375rem; line-height: 1.1; overflow-wrap: break-word; word-break: normal; }
.cmnt-site-header--front .cmnt-site-header__descriptor { font-size: .72rem; line-height: 1.2; }
.cmnt-site-header--front .cmnt-site-header__utilities { gap: .25rem; flex-shrink: 0; }
.cmnt-site-header--front :is(.cmnt-site-header__utility, .cmnt-site-header__menu) { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; font-size: .74rem; border: 0; }
.cmnt-site-header--front .cmnt-site-header__menu { display: none; }
.cmnt-site-header--front .theme-toggle-button { font-size: 0; line-height: 0; overflow: hidden; }
.cmnt-site-header__compact-tools { display: none; }
.cmnt-site-header--front .cmnt-site-header__navigation { border-top-color: var(--cmnt-rule); }
.cmnt-site-header--front .main-navigation { min-height: 2.75rem; flex-wrap: wrap; gap: .15rem; }
.cmnt-site-header--front .nav-link { flex: 0 0 auto; min-width: 44px; min-height: 44px; max-width: 100%; padding-inline: .8rem; font-size: .95rem; white-space: normal; }
.cmnt-site-header--front .nav-link.active { color: var(--cmnt-link); }

.main-content, .page-content { padding-block: clamp(1.25rem, 2vw, 2rem) var(--cmnt-space-4); }
.page-content, .content-wrapper, .dashboard-page, .data-page, .map-page, .search-page, .static-page, .not-found-page { min-width: 0; }
.top-bar { position: relative; width: min(100% - (var(--cmnt-gutter) * 2), var(--cmnt-frame)); margin: 0 auto 1.5rem; border-block: 1px solid var(--cmnt-rule); }
.top-bar-content { display: grid; grid-template-columns: minmax(0, 4fr) minmax(12rem, 3fr) auto; align-items: stretch; }
.top-bar .currency-rates { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.top-bar .currency-card, .top-bar .market-highlight { display: grid; align-content: center; gap: .15rem; min-width: 0; padding: .78rem .8rem; }
.top-bar .currency-card + .currency-card, .top-bar .market-highlight + .market-highlight { border-left: 1px solid var(--cmnt-rule-subtle); }
.top-bar .currency-card-text { display: grid; gap: .15rem; }
.top-bar :is(.currency-card-symbol, .market-highlight-label, .market-stamp-zone) { color: var(--cmnt-muted); font-size: .65rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.top-bar :is(.currency-card-value, .market-highlight strong) { font-family: var(--font-display); font-size: 1.12rem; letter-spacing: -.025em; line-height: 1; }
.top-bar .currency-card-line { display: flex; align-items: center; gap: .3rem; }
.top-bar .currency-card-arrow { flex: 0 0 auto; width: .55rem; height: auto; color: var(--cmnt-link); }
.top-bar .currency-card-arrow[hidden] { display: none; }
.top-bar .currency-card-arrow--down { transform: rotate(180deg); }
.top-bar .metric-meta { color: var(--cmnt-muted); font-size: .66rem; line-height: 1.25; }
.top-bar .metric-meta--fresh { color: var(--cmnt-link); }
.top-bar .metric-meta--stale, .top-bar .metric-meta--degraded { text-decoration: underline; text-decoration-style: dotted; text-underline-offset: .18em; }
.top-bar .metric-meta--missing { color: var(--cmnt-muted); }
.top-bar .market-highlights { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-left: 1px solid var(--cmnt-rule-subtle); }
.top-bar .market-stamp { display: grid; align-content: center; gap: .15rem; min-width: 5.75rem; padding: .78rem .8rem; border-left: 1px solid var(--cmnt-rule-subtle); color: var(--cmnt-muted); font-size: .7rem; }
.cmnt-footer { margin-top: clamp(2rem, 4vw, 3rem); border-top: 1px solid var(--cmnt-rule); }
.cmnt-footer__inner { padding-block: 1.25rem .5rem; }
.cmnt-footer__brand { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; width: fit-content; max-width: 100%; gap: .55rem; color: var(--cmnt-ink); text-decoration: none; }
.cmnt-footer__brand img { flex: 0 0 auto; width: 28px; height: 28px; object-fit: contain; }
.cmnt-footer__brand span { color: var(--cmnt-ink); font-family: var(--font-display); font-size: 1.1rem; font-weight: 700; letter-spacing: -.025em; }
.cmnt-footer__navigation { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; padding-block: 0 .75rem; }
.cmnt-footer__navigation section { display: grid; min-width: 0; align-content: start; gap: 0; }
.cmnt-footer__navigation h2 { display: flex; min-height: 44px; align-items: center; margin: 0; color: var(--cmnt-ink); font-size: .95rem; font-weight: 600; line-height: 1.3; }
.cmnt-footer__navigation a, .cmnt-footer__legal a { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; width: fit-content; max-width: 100%; overflow-wrap: break-word; word-break: normal; }
.cmnt-footer__navigation a { padding-block: .35rem; font-size: .9rem; line-height: 1.3; text-decoration: none; }
.cmnt-footer__appearance { display: flex; align-items: center; justify-self: end; gap: .25rem; }
.cmnt-footer__appearance .theme-toggle-button { border: 0; background: transparent; }
.cmnt-footer__legal { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .25rem 2rem; color: var(--cmnt-muted); font-size: .75rem; }
.cmnt-footer__service-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 1rem; }
.cmnt-footer__legal a { color: inherit; text-decoration: none; }
.cmnt-footer__navigation a:hover, .cmnt-footer__legal a:hover { color: var(--cmnt-link); text-decoration: underline; text-underline-offset: .2em; }
.cmnt-media-unavailable { display: flex; width: 100%; min-height: 44px; align-items: center; padding-block: .5rem; color: var(--cmnt-muted); font-size: .78rem; line-height: 1.35; }

/* Reading, lists and document surfaces */
h1, h2, h3, h4, p { min-width: 0; }
h1, h2, h3, h4 { color: var(--cmnt-ink); }
.article-page h1.title, .cmnt-static-title, .page-content > h1, .content-wrapper > h1, .not-found-page h1 {
    margin: 0; font-family: var(--font-display); font-size: clamp(2.5rem, 5vw, 5.4rem); font-weight: 700; letter-spacing: -.055em; line-height: .94; overflow-wrap: break-word; word-break: normal; hyphens: none;
}
.content-row, .cmnt-two-column, .dashboard-content-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, var(--cmnt-rail)); gap: clamp(2rem, 5vw, 5.5rem); align-items: start; }
.article-page .article-content, .article-page .article-text, .article-page .article-body, .cmnt-rich-text-content { max-width: var(--cmnt-reading); }
.article-page .article-content :is(p, li), .article-page .article-text :is(p, li), .article-page .article-body :is(p, li), .cmnt-rich-text-content :is(p, li) { font-size: clamp(1.08rem, 1.35vw, 1.23rem); line-height: 1.75; }
.article-page .article-content h2, .article-page .article-text h2, .article-page .article-body h2, .cmnt-rich-text-content h2 { margin: 2.4em 0 .7em; font-family: var(--font-display); font-size: clamp(1.7rem, 3vw, 2.5rem); letter-spacing: -.035em; line-height: 1.05; }
.article-page blockquote, .cmnt-rich-text-content blockquote { margin: 2rem 0; padding-left: 1.25rem; border-left: 2px solid var(--cmnt-link); font-family: var(--font-display); font-size: 1.35rem; line-height: 1.4; }
.section-title, .cmnt-intel-kicker, .cmnt-data-section-head > span, .cmnt-editorial-section-head > span { color: var(--cmnt-muted); font-size: .72rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.cmnt-editorial-section-head, .cmnt-data-section-head, .cmnt-intel-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding-bottom: .75rem; border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-editorial-section-head h2, .cmnt-data-section-head h2, .cmnt-intel-section-head h2 { margin: 0; font-family: var(--font-display); font-size: clamp(1.4rem, 2.3vw, 2rem); letter-spacing: -.025em; }
.cmnt-editorial-section-head a, .cmnt-data-section-head a, .cmnt-intel-section-head a { color: var(--cmnt-link); font-size: .82rem; font-weight: 700; }

/* Home: compact economic strip and an editorial lead with a publication rail. */
.cmnt-home { padding-top: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem; }
.cmnt-home__front { display: grid; grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr); grid-template-areas: "lead agenda" "desks desks"; grid-template-rows: auto auto; gap: clamp(1.5rem, 2.5vw, 2.5rem); align-items: start; }
.cmnt-home__editorial, .cmnt-home__editorial-main { display: contents; }
.cmnt-home__eyebrow { margin: 0; color: var(--cmnt-muted); font-family: var(--font-mono); font-size: .68rem; font-weight: 650; letter-spacing: .07em; line-height: 1.3; text-transform: uppercase; }
.cmnt-home__lead { display: grid; grid-area: lead; gap: .85rem; min-width: 0; }
.cmnt-home__lead :is(h1, h2) { max-inline-size: 100%; margin: 0; font-family: var(--font-display); font-size: clamp(1.95rem, 2.55vw, 2.4rem); font-weight: 550; letter-spacing: -.025em; line-height: 1.02; overflow-wrap: break-word; word-break: normal; hyphens: none; }
.cmnt-home__lead :is(h1, h2) a { color: var(--cmnt-ink); text-decoration: none; }
.cmnt-home__lead :is(h1, h2) a:hover { color: var(--cmnt-link); }
.cmnt-home__lead-deck { max-width: 35rem; margin: 0; color: var(--cmnt-muted); font-size: 1.03rem; line-height: 1.55; }
.cmnt-home__lead-meta { display: flex; flex-wrap: wrap; gap: .45rem 1rem; color: var(--cmnt-muted); font-size: .76rem; line-height: 1.4; }
.cmnt-home__lead-meta a { color: var(--cmnt-link); font-weight: 700; text-decoration: none; }
.cmnt-home__market { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; min-width: 0; padding-block: .65rem; border-block: 1px solid var(--cmnt-rule-subtle); }
.cmnt-home__market-title { flex: 1 0 100%; margin: 0; padding-bottom: .65rem; color: var(--cmnt-ink); font-family: var(--font-display); font-size: clamp(1.3rem, 1.7vw, 1.65rem); font-weight: 650; letter-spacing: -.035em; line-height: 1.05; border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-home__market-more { flex: none; color: var(--cmnt-muted); font-size: .8rem; text-decoration: none; padding-block: .75rem; }
.cmnt-home__metric-direction { margin-inline-start: .2rem; font-weight: 500; }
.cmnt-home__market-header { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .25rem 1rem; }
.cmnt-home__market-header h2 { margin: 0; font-family: var(--font-sans); font-size: .8rem; font-weight: 600; line-height: 1.3; }
.cmnt-home__market-header a { color: var(--cmnt-link); font-size: .8rem; font-weight: 600; text-decoration: none; }
.cmnt-home__metrics-scroll { position: relative; flex: 1; min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin; scrollbar-color: var(--cmnt-rule) transparent; }
.cmnt-home__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .65rem; margin: 0; padding: .1rem; font-variant-numeric: tabular-nums; }
.cmnt-home__metric { min-width: 0; border: 1px solid var(--cmnt-rule-subtle); border-top: 2px solid var(--cmnt-link); background: var(--cmnt-surface); box-shadow: var(--shadow-xs); }
.cmnt-home__metrics dt { color: var(--cmnt-muted); font-size: .8rem; line-height: 1.3; }
.cmnt-home__metrics dd { margin: .4rem 0 0; font-family: var(--font-display); font-size: clamp(1.05rem, 1.35vw, 1.3rem); font-weight: 650; letter-spacing: -.025em; line-height: 1.2; overflow-wrap: anywhere; }
.cmnt-home__metric-quality { display: block; margin-top: .15rem; color: var(--cmnt-muted); font-size: .6875rem; line-height: 1.3; }
.avds5-table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
.avds5-table-wrap > table { margin: 0; }
.cmnt-home__agenda h2 { margin: 0; font-family: var(--font-display); font-size: 1.35rem; font-weight: 650; letter-spacing: -.025em; line-height: 1.08; }
.cmnt-home__agenda { display: grid; grid-area: agenda; gap: 1rem; min-width: 0; padding-inline-start: clamp(1.25rem, 2vw, 2rem); border-inline-start: 1px solid var(--cmnt-rule); }
.cmnt-home__agenda header { display: grid; gap: .4rem; }
.cmnt-home__agenda :is(ol, ul) { padding: 0; margin: 0; list-style: none; }
.cmnt-home__agenda li + li { margin-top: .95rem; padding-top: .95rem; border-top: 1px solid var(--cmnt-rule-subtle); }
.cmnt-home__agenda a { display: grid; gap: .25rem; text-decoration: none; }
.cmnt-home__agenda-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem; color: var(--cmnt-muted); font-size: .75rem; line-height: 1.3; }
.cmnt-home__agenda-meta time { margin-inline-start: auto; white-space: nowrap; }
.cmnt-home__agenda strong { font-weight: 500; font-size: .95rem; line-height: 1.28; }
.cmnt-home__desks { display: grid; grid-area: desks; grid-template-columns: repeat(5, minmax(0, 1fr)); column-gap: clamp(1.25rem, 2vw, 2rem); align-items: start; }
.cmnt-home__desk { min-width: 0; padding: 0; }
.cmnt-home__desk:nth-child(-n+5) { padding-top: 0; border-top: 0; }
.cmnt-home__desk-header { display: flex; align-items: baseline; }
.cmnt-home__desk h2 { font-weight: 550; min-width: 0; margin: 0; font-family: var(--font-display); font-size: clamp(1.25rem, 1.8vw, 1.55rem); letter-spacing: -.03em; line-height: 1.08; overflow-wrap: break-word; word-break: normal; hyphens: none; }
.cmnt-home__desk-list { padding: 0; margin: .75rem 0 0; list-style: none; }
.cmnt-home__desk-list li + li { border-top: 1px solid var(--cmnt-rule-subtle); }
.cmnt-home__desk-list a { display: grid; gap: .25rem; padding: .8rem 0; text-decoration: none; }
.cmnt-home__desk-list strong { font-weight: 500; display: block; min-width: 0; font-size: 1rem; line-height: 1.27; overflow-wrap: break-word; word-break: normal; hyphens: none; }
.cmnt-home__desk-list small { color: var(--cmnt-muted); font-size: .72rem; }
.cmnt-home__desk-more { display: inline-block; margin-top: .75rem; color: var(--cmnt-link); font-size: .8rem; font-weight: 700; }
.cmnt-home__sources { font-size: .75rem; }
.cmnt-home__sources summary { display: inline-flex; box-sizing: border-box; align-items: center; width: fit-content; min-height: 44px; color: var(--cmnt-link); cursor: pointer; font-weight: 700; }
.cmnt-home__sources ul { display: grid; gap: .4rem; padding: .7rem 0 0; margin: 0; list-style: none; }
.cmnt-home__sources li { display: grid; grid-template-columns: minmax(4.5rem, .45fr) minmax(0, 1.55fr); gap: .1rem .75rem; padding-top: .4rem; border-top: 1px solid var(--cmnt-rule-subtle); }
.cmnt-home__sources li strong { grid-row: span 2; font-family: var(--font-mono); font-size: .68rem; font-weight: 500; }
.cmnt-home__sources li span, .cmnt-home__sources li small { color: var(--cmnt-muted); line-height: 1.3; }
.cmnt-home__sources li small { font-size: .68rem; }
.cmnt-home__market-index { display: grid; grid-area: support; gap: 1.5rem; min-width: 0; margin-top: .35rem; }
.cmnt-home__market-index-section { padding-top: 0; }
.cmnt-home__market-index-section h2 { margin: 0; font-family: var(--font-display); font-size: 1.1rem; font-weight: 650; letter-spacing: -.02em; line-height: 1.1; }
.cmnt-home__market-index-section ul { padding: 0; margin: .55rem 0 0; list-style: none; }
.cmnt-home__market-index-section li + li { margin-top: .2rem; }
.cmnt-home__market-index-section a { display: block; padding: .55rem 0; font-size: 1rem; line-height: 1.5; text-decoration: none; }
.cmnt-home__lower { display: grid; grid-template-columns: minmax(0, 1fr) minmax(14rem, 17rem); gap: clamp(1.5rem, 3vw, 3rem); align-items: start; }
.cmnt-home__stream { min-width: 0; }
.cmnt-home__stream-header { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: .7rem 0; }
.cmnt-home__stream-header h2 { margin: 0; font-family: var(--font-display); font-size: 1.5rem; letter-spacing: -.025em; }
.cmnt-home__stream-header a { color: var(--cmnt-link); font-size: .8rem; font-weight: 700; }
.cmnt-home__stream-list { padding: 0; margin: 0; list-style: none; }
.cmnt-home__stream-list li + li { border-top: 1px solid var(--cmnt-rule-subtle); }
.cmnt-home__stream-list a { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: 1rem; padding: 1rem 0; text-decoration: none; }
.cmnt-home__stream-list time { color: var(--cmnt-muted); font-size: .72rem; }
.cmnt-home__stream-list strong { display: block; font-family: var(--font-display); font-size: clamp(1.15rem, 2vw, 1.35rem); font-weight: 550; letter-spacing: -.02em; line-height: 1.12; overflow-wrap: break-word; word-break: normal; hyphens: none; }
.cmnt-home__stream-list p { max-inline-size: none; width: 100%; margin: .35rem 0 0; color: var(--cmnt-muted); font-size: 1rem; line-height: 1.5; }
.cmnt-home__context { display: grid; gap: 2rem; position: sticky; top: 1.5rem; }
.cmnt-home__context-section { padding-top: .75rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-home__context-section h2 { margin: 0; font-size: .74rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.cmnt-home__context-section ul { padding: 0; margin: .6rem 0 0; list-style: none; }
.cmnt-home__context-section li + li { margin-top: .2rem; }
.cmnt-home__context-section a { display: block; padding: .6rem 0; font-size: .9rem; line-height: 1.3; text-decoration: none; }
.cmnt-home__tag-list { display: flex; flex-wrap: wrap; gap: .45rem; }
.cmnt-home__tag-list a { padding: .3rem .45rem; border: 1px solid var(--cmnt-rule); font-size: .76rem; }

/* Route compositions: source records remain lists and tables, never card walls. */
.cmnt-page { min-width: 0; }
.cmnt-page :is(.site-section-intro, .entity-page-header, .about-intro, .cmnt-data-hero, .cmnt-static-hero) { max-width: 48rem; padding-top: 1.1rem; border-top: 2px solid var(--cmnt-ink); }
.cmnt-page :is(.site-section-intro, .entity-page-header, .about-intro, .cmnt-data-hero, .cmnt-static-hero) h1 { min-width: 0; max-width: 100%; margin: .55rem 0 .7rem; font-family: var(--font-display); font-size: clamp(2.6rem, 5vw, 5.2rem); letter-spacing: -.055em; line-height: .94; overflow-wrap: anywhere; word-break: normal; hyphens: none; }
.cmnt-page :is(.site-section-intro, .entity-page-header, .about-intro, .cmnt-data-hero, .cmnt-static-hero) p { max-width:42rem; color: var(--cmnt-muted); }
.content-row > * { min-width: 0; }
.search-results, .entity-page-list, .cmnt-data-list, .dashboard-main-column { min-width: 0; }
.article-results, .entity-page-list, .cmnt-feed-list, .cmnt-data-list { border-top: 1px solid var(--cmnt-rule); }
.article-results > .article-wrapper, .entity-page-list > *, .cmnt-feed-list > *, .cmnt-data-list > * { border-bottom: 1px solid var(--cmnt-rule-subtle); }
.article-results .article-wrapper { padding-block: 1.1rem; }
.article-results .article-wrapper :is(h2, h3, .title, .article-title) { margin: 0; font-family: var(--font-display); font-size: clamp(1.35rem, 2.4vw, 1.9rem); letter-spacing: -.03em; line-height: 1.08; }
.article-results .article-wrapper :is(p, .description, .article-description) { margin: .45rem 0 0; color: var(--cmnt-muted); }
.article-results .article-wrapper :is(time, .date, .article-date, small) { color: var(--cmnt-muted); font-size: .75rem; }
.article-results .cmnt-news-text-description-meta,
.article-results .cmnt-news-text-description-meta :is(.tag, .avds5-document-card__title, .description, .date) { color: inherit; text-decoration: none; }
.cmnt-archive-overview, .dashboard-quality-notice, .cmnt-intel-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-block: 2rem; border-block: 1px solid var(--cmnt-rule); }
.avds5-summary-item, .cmnt-intel-stat { display: grid; gap: .15rem; min-width: 0; padding: .9rem 1rem; text-decoration: none; }
.avds5-summary-item + .avds5-summary-item, .cmnt-intel-stat + .cmnt-intel-stat { border-left: 1px solid var(--cmnt-rule-subtle); }
.avds5-summary-item span, .cmnt-intel-stat small { color: var(--cmnt-muted); font-size: .7rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.avds5-summary-item strong, .cmnt-intel-stat strong { font-family: var(--font-display); font-size: 1.35rem; letter-spacing: -.02em; }
.avds5-summary-item small { color: var(--cmnt-muted); font-size: .72rem; }
.cmnt-archive-featured { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.25rem, 3vw, 2.5rem); margin-block: 2rem; }
.cmnt-archive-feature-card { display: grid; gap: .6rem; padding-bottom: 1.4rem; border-bottom: 1px solid var(--cmnt-rule); color: inherit; text-decoration: none; }
.cmnt-archive-feature-media { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: hsl(var(--muted) / .55); }
.cmnt-archive-feature-media img { width: 100%; height: 100%; object-fit: cover; }
.cmnt-archive-feature-fallback { display: grid; height: 100%; align-content: end; gap: .4rem; padding: 1.25rem; background: hsl(var(--foreground) / .92); color: hsl(var(--background)); }
.cmnt-archive-feature-fallback > span, .cmnt-archive-feature-kicker { color: var(--cmnt-muted); font-size: .72rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.cmnt-archive-feature-fallback > span { color: hsl(var(--background) / .7); }
.cmnt-archive-feature-fallback strong, .avds5-document-card__title { font-family: var(--font-display); font-size: clamp(1.35rem, 2.3vw, 2rem); letter-spacing: -.03em; line-height: 1.06; }
.avds5-document-card__summary { margin: 0; color: var(--cmnt-muted); }
.cmnt-archive-feature-meta { display: flex; gap: .7rem; color: var(--cmnt-muted); font-size: .75rem; }

/* Public article: one reading flow. Preview retains its existing layout below. */
.cmnt-story-page { padding-block: clamp(1.5rem, 4vw, 3rem) 3rem; }
.cmnt-story { max-width: 54rem; margin-inline: auto; }
.cmnt-story-heading { margin-bottom: 1.8rem; }
.cmnt-story-location { display: flex; gap: .65rem; margin-bottom: 1.15rem; color: var(--cmnt-muted); font-size: .88rem; }
.cmnt-story-location a { text-decoration: none; }
.cmnt-story-heading h1 { margin: 0; font-family: var(--font-display); font-size: clamp(2rem, 3.6vw, 3.15rem); font-weight: 600; line-height: 1.12; letter-spacing: -.025em; text-wrap: pretty; }
.cmnt-story-kicker { margin: 0 0 .65rem; color: var(--cmnt-muted); font-size: .9rem; }
.cmnt-story-meta { display: flex; flex-wrap: wrap; gap: .3rem 1rem; margin-top: 1rem; color: var(--cmnt-muted); font-size: .88rem; }
.cmnt-story-reading, .cmnt-story-related { max-width: var(--cmnt-reading); margin-inline: auto; }
.cmnt-story-deck { margin: 0 0 1.4rem; color: var(--cmnt-muted); font-size: 1.2rem; line-height: 1.55; }
.cmnt-story-reading .cmnt-rich-text-content { margin: 0; }
.cmnt-story-reading .cmnt-rich-text-content > :first-child { margin-top: 0; }
.cmnt-story-reading .cmnt-rich-text-content :is(p, li) { font-size: clamp(1.125rem, 1.5vw, 1.25rem); line-height: 1.65; }
.cmnt-story-reading .cmnt-rich-text-content h2 { margin: 2rem 0 .8rem; font-size: 1.8rem; line-height: 1.2; font-weight: 600; }
.cmnt-story-photo { margin: 0 0 1.8rem; }
.cmnt-story-photo img { display: block; width: 100%; height: auto; max-height: 40rem; object-fit: contain; }
.cmnt-story-photo :is(picture, img)[hidden] { display: none; }
.cmnt-story-photo figcaption { margin-top: .5rem; color: var(--cmnt-muted); font-size: .8rem; line-height: 1.5; }
.cmnt-story-photo .cmnt-article-image-unavailable { display: grid; gap: .4rem; padding: 1rem; background: var(--cmnt-surface); color: var(--cmnt-muted); }
.cmnt-story-photo .cmnt-article-image-unavailable[hidden] { display: none; }
.cmnt-story-share { margin-top: 1.5rem; font-size: .9rem; }
.cmnt-story-share summary,
.cmnt-story-share-options :is(a, button) { display: inline-flex; min-height: 44px; align-items: center; }
.cmnt-story-share summary { width: fit-content; cursor: pointer; list-style: none; padding-block: .6rem; color: var(--cmnt-muted); }
.cmnt-story-share summary::-webkit-details-marker { display: none; }
.cmnt-story-share summary span { margin-left: .4rem; }
.cmnt-story-share-options { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1.2rem; padding-block: .5rem; }
.cmnt-story-share-options button { appearance: none; border: 0; padding: .5rem 0; background: transparent; color: var(--cmnt-link); font: inherit; cursor: pointer; }
.cmnt-story-share-options input { width: 100%; padding: .6rem; }
.cmnt-story-series { margin-top: 2rem; }
.cmnt-story-series h2, .cmnt-story-related h2 { margin: 0 0 1rem; font: 600 1.5rem/1.2 var(--font-display); }
.cmnt-story-series li { margin-bottom: .7rem; }
.cmnt-story-related { margin-top: 2.25rem; padding-top: 1.5rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-story-related ul { display: grid; gap: 1.1rem; margin: 0; padding: 0; list-style: none; }
.cmnt-story-related li { display: grid; grid-template-columns: 7rem 1fr; gap: 1rem; align-items: baseline; }
.cmnt-story-related time { color: var(--cmnt-muted); font-size: .85rem; }
.cmnt-story-related a { font: 400 1.2rem/1.35 var(--font-display); text-decoration: none; }
.cmnt-story-related a:hover, .cmnt-story-location a:hover { text-decoration: underline; }
@media (max-width: 600px) {
  .cmnt-story-related li { grid-template-columns: 1fr; gap: .25rem; }
  .cmnt-story-heading h1 { font-size: 2rem; }
}
@media print {
  .cmnt-story-share, .cmnt-story-related { display: none; }
}

/* Article is a reading column, with evidence and supporting material in sequence. */
.article-page .article-wrapper { display: block; max-width: 64rem; }
.article-page .cmnt-article-main { min-width: 0; max-width: var(--cmnt-reading); }
.article-page .cmnt-article-breadcrumbs { display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: 1.5rem; color: var(--cmnt-muted); font-size: .78rem; }
.article-page .cmnt-article-breadcrumbs a + a::before { margin-right: .45rem; color: var(--cmnt-rule); content: "/"; }
.article-page .cmnt-article-prologue { display: grid; gap: 1.5rem; padding-top: 1.1rem; border-top: 2px solid var(--cmnt-ink); }
.article-page .header { display: grid; gap: 1rem; max-width: var(--cmnt-reading); }
.article-page .header > * {
  min-width: 0;
}
.article-page h1.title { max-width: 20ch; font-size: clamp(2.35rem, 4.2vw, 4rem); line-height: .98; }
.article-page .article-kicker, .article-page .article-source { margin: 0; color: var(--cmnt-muted); font-size: .78rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.article-page .cmnt-article-meta-line { display: flex; flex-wrap: wrap; gap: .6rem 1rem; color: var(--cmnt-muted); font-size: .8rem; }
.article-page .cmnt-article-byline { color: var(--cmnt-ink); }
.article-page .cmnt-article-hero-visual { margin: .4rem 0 0; }
.article-page .cmnt-article-hero-visual img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  opacity: 1;
  filter: none;
  mix-blend-mode: normal;
}
.article-page .cmnt-article-hero-visual :is(picture, img)[hidden] { display: none; }
.article-page .cmnt-article-hero-visual.is-media-unavailable { border-block: 1px solid var(--cmnt-rule); }
.article-page .cmnt-article-image-unavailable { display: grid; gap: .35rem; min-height: 9rem; align-content: center; padding: 1.25rem 0; }
.article-page .cmnt-article-image-unavailable[hidden] { display: none; }
.article-page .cmnt-article-image-unavailable strong { color: var(--cmnt-ink); font-family: var(--font-sans); font-size: .88rem; }
.article-page .cmnt-article-image-unavailable span { max-width: 38rem; }
.cmnt-rich-text-content .cmnt-image-unavailable {
  display: block;
  margin: 1.5rem 0 .5rem;
  padding-block: .8rem;
  border-block: 1px solid var(--cmnt-rule-subtle);
  color: var(--cmnt-muted);
  font: 700 .76rem/1.35 var(--font-sans);
  letter-spacing: .03em;
  text-transform: uppercase;
}
.article-page figcaption { margin-top: .5rem; color: var(--cmnt-muted); font-size: .75rem; }
.article-page .cmnt-article-utility { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 1rem; padding-block: 1rem; border-block: 1px solid var(--cmnt-rule); }
.article-page .cmnt-article-utility-facts { display: flex; flex-wrap: wrap; gap: 1rem 2rem; }
.article-page .cmnt-article-utility-facts span { display: grid; gap: .15rem; max-width: 20rem; }
.article-page .cmnt-article-utility-facts small { color: var(--cmnt-muted); font-size: .68rem; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.article-page .cmnt-article-utility-facts strong { font-size: .85rem; }
.article-page :is(.cmnt-article-summary-stack, .ai-pills, .cmnt-topic-card, .bottom-actions, .last-row, .avds5-provenance-foot) { margin-top: 2rem; }
.article-page .cmnt-article-summary-stack p { margin: 0; color: var(--cmnt-muted); font-size: 1.12rem; line-height: 1.58; }
.article-page .divider { display: block; height: 1px; margin-top: 2rem; background: var(--cmnt-rule); }
.article-page .ai-pills { display: grid; gap: .65rem; padding: 0; list-style: none; }
.article-page .ai-pills li { padding-left: 1rem; border-left: 2px solid var(--cmnt-link); }
.article-page .cmnt-topic-card { padding-top: .8rem; border-top: 1px solid var(--cmnt-rule); }
.article-page .last-row { max-width: var(--cmnt-reading); }
.article-page .cmnt-topic-card-action-buttons { display: flex; flex-wrap: wrap; gap: .65rem; }
.article-page .cmnt-topic-card-action-buttons a,
.article-page .cmnt-topic-card-action-buttons button,
.article-page .bottom-actions button {
  appearance: none;
  padding: .55rem .75rem;
  border: 1px solid var(--cmnt-rule-strong);
  border-radius: 0;
  background: transparent;
  color: var(--cmnt-ink);
  font: 700 .72rem/1 var(--cmnt-sans);
  letter-spacing: .04em;
  text-transform: uppercase;
}
.article-page .cmnt-topic-card-action-buttons a:hover,
.article-page .cmnt-topic-card-action-buttons button:hover,
.article-page .bottom-actions button:hover { border-color: var(--cmnt-link); color: var(--cmnt-link); }

.share-dialog-overlay {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: none;
  place-items: center;
  padding: var(--cmnt-gutter);
  background: hsl(var(--foreground) / .38);
}
.share-dialog-overlay.open { display: grid; }
.share-dialog {
  width: min(100%, 32rem);
  padding: 1.25rem;
  border: 1px solid var(--cmnt-rule-strong);
  background: var(--cmnt-paper);
  box-shadow: 0 1.5rem 4rem hsl(var(--foreground) / .18);
}
.share-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.share-dialog-header-title { margin: 0; font: 700 1.15rem/1.15 var(--cmnt-sans); }
.share-dialog-header button { appearance: none; border: 0; background: transparent; color: var(--cmnt-ink); font: 700 1.3rem/1 var(--cmnt-sans); }
.share-dialog-header button::after { content: '×'; }
.share-dialog-header button i { display: none; }
.share-dialog-content-socials { display: grid; grid-template-columns: repeat(3, 1fr); gap: .6rem; margin-top: 1.25rem; }
.share-dialog-content-socials :is(.social-button, a) {
  display: grid;
  place-items: center;
  min-height: 4.75rem;
  padding: .5rem;
  border: 1px solid var(--cmnt-rule);
  background: transparent;
  color: var(--cmnt-ink);
  text-decoration: none;
}
.share-dialog-content-socials :is(.social-button, a):hover { border-color: var(--cmnt-link); color: var(--cmnt-link); }
.share-dialog-content-socials .icon { display: none; }
.share-dialog-content-socials .label { margin: 0; font: 700 .68rem/1.2 var(--cmnt-sans); text-align: center; text-transform: uppercase; letter-spacing: .04em; }
.share-dialog-content-link { display: flex; gap: .5rem; margin-top: 1.25rem; }
.share-dialog-content-link-input { min-width: 0; flex: 1; padding: .65rem; border: 1px solid var(--cmnt-rule); background: transparent; color: var(--cmnt-ink); font: .8rem/1.2 var(--cmnt-sans); }
.share-dialog-content-link-copy { padding: .65rem .85rem; border: 1px solid var(--cmnt-rule-strong); background: var(--cmnt-ink); color: var(--cmnt-paper); font: 700 .68rem/1 var(--cmnt-sans); text-transform: uppercase; }
#scroll-to-top { position: fixed; right: 1rem; bottom: 1rem; z-index: 20; display: none; width: 2.7rem; height: 2.7rem; border: 1px solid var(--cmnt-rule-strong); border-radius: 50%; background: var(--cmnt-paper); color: var(--cmnt-ink); }
#scroll-to-top.visible { display: grid; place-items: center; }
.article-page .cmnt-topic-card-title { margin: 0; font-family: var(--font-display); font-size: 1.6rem; letter-spacing: -.025em; }
.article-page .cmnt-topic-card-news-list-single { display:grid; gap: .3rem; padding-block: .85rem; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.article-page .cmnt-topic-card-news-list-single-date { color: var(--cmnt-muted); font-size: .72rem; }
.article-page .cmnt-topic-card-news-list-single-headline { font-family: var(--font-display); font-size: 1.1rem; line-height: 1.2; }
.article-page .bottom-actions { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; padding-top: 1rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-rich-text-content :is(p, li, blockquote, figcaption, a, span, strong, em) { overflow-wrap: break-word; word-break: normal; hyphens: none; }
.cmnt-article-table-block { margin: 2rem 0; }
.cmnt-article-table-cue {
  display: none;
  margin: 0 0 .65rem;
  color: var(--cmnt-muted);
  font-family: var(--font-sans);
  font-size: .78rem;
}
.cmnt-article-table-scroll {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border-block: 1px solid var(--cmnt-rule);
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
}
.cmnt-article-table-scroll:focus-visible { outline: 2px solid var(--cmnt-focus); outline-offset: 3px; }
.cmnt-rich-text-content table { width: 100%; min-width: 36rem; border-collapse: collapse; font-family: var(--font-sans); font-size: .92rem; line-height: 1.45; }
.cmnt-rich-text-content :is(th, td) { padding: .75rem .8rem .75rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); text-align: left; vertical-align: top; }
.cmnt-rich-text-content tr:last-child td { border-bottom: 0; }
.cmnt-rich-text-content th { color: var(--cmnt-muted); font-size: .72rem; font-weight: 750; letter-spacing: .045em; text-transform: uppercase; }
.cmnt-rich-text-content caption { padding: 0 0 .75rem; color: var(--cmnt-ink); font-family: var(--font-display); font-size: 1.15rem; font-weight: 650; text-align: left; }
.article-page .avds5-provenance-foot { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding-top: 1rem; border-top: 1px solid var(--cmnt-rule); }
.article-page .avds5-provenance-foot__item { display: grid; gap: .15rem; }
.article-page .avds5-provenance-foot__label { color: var(--cmnt-muted); font-size: .68rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.article-page .avds5-provenance-foot__value { font-size: .82rem; line-height: 1.35; }

/* Data, maps and audio retain their operational density without faux cards. */
.cmnt-intel-shell { display: grid; gap: 2rem; }
.cmnt-intel-hero { display: grid; gap: .65rem; max-width: 52rem; padding-top: 1rem; border-top: 2px solid var(--cmnt-ink); }
.cmnt-intel-hero h1 { margin: 0; font-family: var(--font-display); font-size: clamp(2.7rem, 5vw, 5.4rem); letter-spacing: -.055em; line-height: .94; }
.cmnt-intel-hero p { margin: 0; color: var(--cmnt-muted); }
.cmnt-intel-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, var(--cmnt-rail)); gap: clamp(2rem, 5vw, 5.5rem); align-items: start; }
.cmnt-intel-panel { min-width: 0; padding-block: 1.25rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-intel-side { color: var(--cmnt-muted); }
.cmnt-intel-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; padding-block: .8rem; border-block: 1px solid var(--cmnt-rule); }
.cmnt-intel-toolbar-note { color: var(--cmnt-muted); font-size: .8rem; }
.cmnt-intel-note-list { display: grid; gap: 0; }
.cmnt-intel-note-list > * { padding-block: .65rem; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-intel-empty, .empty-state, .entity-index-empty { color: var(--cmnt-muted); font-style: italic; }
.cmnt-intel-stat.is-active { background: hsl(var(--muted) / .55); color: var(--cmnt-ink); }
.dashboard-header { padding-top: 1rem; border-top: 2px solid var(--cmnt-ink); }
.dashboard-header h1 { margin: .5rem 0; font-family: var(--font-display); font-size: clamp(2.6rem, 5vw, 5rem); letter-spacing: -.05em; line-height: .95; }
.dashboard-panel, .dashboard-region-map-card { padding-block: 1.25rem; border-top: 1px solid var(--cmnt-rule); }
.dashboard-chart-toolbar, .dashboard-chart-tabs, .avds5-control-row, .avds5-tag-row { display: flex; flex-wrap: wrap; gap: .45rem; }
.avds5-button, .avds5-chip, .avds5-icon-button, .entity-page-pill, .entity-chip { display: inline-flex; min-height: 2.75rem; align-items: center; padding: .42rem .65rem; border: 1px solid var(--cmnt-rule); background: transparent; color: inherit; font-size: .78rem; font-weight: 650; line-height: 1.15; text-decoration: none; }
.avds5-button:hover, .avds5-chip:hover, .avds5-icon-button:hover { background: hsl(var(--muted) / .6); }
.entity-page-row { padding-block: 1rem; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.entity-page-row-inner { display: grid; grid-template-columns: 4rem minmax(0, 1fr); gap: 1rem; }
.entity-page-row--text-only .entity-page-row-inner { grid-template-columns: minmax(0, 1fr); }
.entity-page-thumb, .entity-page-thumb-wrap { width: 4rem; height: 4rem; }
.entity-page-thumb { object-fit: cover; background: hsl(var(--muted) / .65); }
.entity-page-row-body { display: grid; align-content: start; gap: .35rem; }
.entity-page-row-title { font-family: var(--font-display); font-size: 1.2rem; line-height: 1.15; }
.entity-page-row-date, .entity-page-meta { color: var(--cmnt-muted); font-size: .78rem; }
.entity-index-tools { display: grid; gap: .75rem; margin-block: 1.5rem; padding-block: .75rem; border-block: 1px solid var(--cmnt-rule); }
.entity-index-search { display: grid; gap: .35rem; font-size: .78rem; font-weight: 700; }
.entity-index-search input { min-height: 2.75rem; padding: .55rem .7rem; border: 1px solid var(--cmnt-rule); background: transparent; }
.entity-index-jumps { display: flex; flex-wrap: wrap; gap: .25rem 1.25rem; }
.cmnt-directory-jump { display: inline-flex; min-height: 44px; align-items: center; gap: .35rem; color: var(--cmnt-link); font-size: .78rem; font-weight: 700; text-decoration: none; }
.cmnt-directory-jump span { color: var(--cmnt-muted); font-family: var(--font-mono); font-size: .7rem; }
.cmnt-directory-group { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-directory-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: .55rem; column-gap: clamp(1.5rem, 5vw, 4rem); }
.cmnt-directory-links a { display: flex; min-height: 44px; align-items: baseline; justify-content: space-between; gap: 1rem; padding: .65rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); color: inherit; text-decoration: none; }
.cmnt-directory-links a:is(:hover, :focus-visible) span { color: var(--cmnt-link); }
.cmnt-directory-links strong { color: var(--cmnt-muted); font-family: var(--font-mono); font-size: .7rem; font-weight: 500; }
.entity-page-aside { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--cmnt-rule); column-gap: 2rem; }
.entity-page-aside .cmnt-static-section-title { grid-column: 1 / -1; }
.entity-page-aside-link { display: block; min-height: 44px; padding: .65rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); color: inherit; font-size: .82rem; text-decoration: none; }
.entity-page-aside-link span { color: var(--cmnt-muted); }
.terms-page { width: min(100% - (var(--cmnt-gutter) * 2), var(--cmnt-reading)); margin-inline: auto; padding-block: var(--cmnt-space-3) var(--cmnt-space-4); }
.terms-page h1 { margin: 0 0 1.25rem; padding-top: 1rem; border-top: 2px solid var(--cmnt-ink); font-family: var(--font-display); font-size: clamp(2.15rem, 4vw, 3.55rem); letter-spacing: -.045em; line-height: 1; }
.terms-page h2 { margin-top: 2rem; font-family: var(--font-display); font-size: clamp(1.25rem, 2vw, 1.45rem); line-height: 1.15; }
.terms-page ol { margin: 0; padding-inline-start: 1.35rem; }
.terms-page li { padding-inline-start: .45rem; }
.terms-page li::marker { color: var(--cmnt-muted); font-family: var(--font-mono); font-size: .76rem; }

table { max-width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
th, td { padding: .7rem .8rem; border-bottom: 1px solid var(--cmnt-rule-subtle); text-align: left; vertical-align: top; }
th { color: var(--cmnt-muted); font-size: .75rem; font-weight: 750; }
.dashboard-page table, .data-page table { width: 100%; }
.avds5-card, .avds5-source-card, .cmnt-sitemap-card, .cmnt-side-block, .dashboard-panel-stack, .front-news-section, .cmnt-support-block, .dashboard-side-panel { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
tbody tr + tr { border-top: 1px solid var(--cmnt-rule-subtle); }

@media (max-width: 64rem) {
    .cmnt-home__editorial, .cmnt-home__editorial-main { display: contents; }
    .cmnt-home__editorial-main > .cmnt-home__lead { grid-area: lead; }
    .cmnt-home__editorial-main > .cmnt-home__desks { grid-area: desks; }
    .cmnt-home__front { grid-template-columns: minmax(0, 1fr); grid-template-areas: "lead" "agenda" "desks"; }
    .cmnt-home__lead { padding-inline-start: 0; border-inline-start: 0; }
    .cmnt-home__agenda { padding-inline-start: 0; border-inline-start: 0; }
    .cmnt-home__agenda > ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .95rem 1.5rem; }
    .cmnt-home__agenda li + li { margin-top: 0; }
    .cmnt-home__agenda li:nth-child(2) { padding-top: 0; border-top: 0; }
    .cmnt-home__lower { grid-template-columns: minmax(0, 1fr); }
    .cmnt-home__context { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .content-row, .cmnt-two-column, .dashboard-content-row, .cmnt-intel-layout { grid-template-columns: 1fr; }
    .cmnt-sitemap-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cmnt-footer__navigation { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cmnt-footer__legal { grid-template-columns: minmax(0, 1fr) auto; }
    .cmnt-footer__service-links { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; }
    .cmnt-archive-featured { grid-template-columns: 1fr; max-width: 42rem; }
    .cmnt-home__desks { display: block; columns: 2; column-gap: clamp(1.25rem, 3vw, 2.5rem); }
    .cmnt-home__desk { break-inside: avoid; margin-bottom: 1.75rem; }
}

@media (max-width: 63.99rem) {
    .cmnt-site-header .cmnt-site-header__masthead { flex-wrap: wrap; gap: 0 .5rem; }
    .cmnt-site-header__brand { flex: 1; }
    .cmnt-site-header .main-navigation { display: none; order: 3; flex: 1 0 100%; padding: .5rem 0; margin: 0; border-top: 1px solid var(--cmnt-rule-subtle); }
    .cmnt-site-header.is-menu-open .main-navigation { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .cmnt-site-header__languages { display: none; order: 4; flex: 1 0 100%; padding-block: .5rem 1rem; gap: 1rem; }
    .cmnt-site-header.is-menu-open .cmnt-site-header__languages { display: flex; }
    .cmnt-site-header button.cmnt-site-header__menu { display: inline-flex; position: relative; font-size: 0; width: 44px; height: 44px; }
    .cmnt-site-header__menu::before { content: ""; width: 18px; height: 12px; border-block: 1.5px solid currentColor; }
    .cmnt-site-header__menu::after { content: ""; position: absolute; width: 18px; height: 1.5px; background: currentColor; }
    .cmnt-site-header__menu > span { display: none; }
    .cmnt-site-header .nav-link { padding: .65rem 0; border: 0; }
}

@media (max-width: 47.99rem) {
    /* Use viewport/pixel units for the shell geometry so a 200% text setting
       reflows the wordmark instead of scaling the layout into a narrow strip. */
    :root { --cmnt-gutter: 16px; }
    .cmnt-site-header__masthead { min-height: 60px; align-items: center; flex-wrap: wrap; gap: 0 8px; }
    .cmnt-site-header__brand { flex: 1 1 auto; grid-template-columns: 32px minmax(0, 1fr); column-gap: 8px; row-gap: 1px; min-width: 0; min-height: 44px; max-width: 100%; }
    .cmnt-site-header__logo { width: 32px; height: 32px; }
    .cmnt-site-header__name { min-width: 0; max-width: 100%; font-size: 1.25rem; line-height: 1.2; white-space: normal; overflow-wrap: normal; word-break: normal; }
    .cmnt-site-header__descriptor { display: block; min-width: 0; max-width: 100%; overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: normal; word-break: normal; font-size: .6875rem; line-height: 1.25; }

    .cmnt-home__context { grid-template-columns: minmax(0, 1fr); }
    .cmnt-site-header__utilities { flex: 0 0 auto; gap: 0; margin-inline-start: auto; }
    .cmnt-site-header__utility, .cmnt-site-header__menu, button.cmnt-site-header__menu, .theme-toggle-button { display: inline-flex; width: 44px; min-width: 44px; height: 44px; min-height: 44px; align-items: center; justify-content: center; padding: 0; }
    .cmnt-site-header__utility[href="/search"], .theme-toggle-button, .cmnt-site-header__menu { font-size: 0; overflow: hidden; }

    .theme-toggle-button::before { content: ""; width: 16px; height: 16px; border: 1.5px solid currentColor; border-radius: 50%; background: linear-gradient(90deg, currentColor 0 50%, transparent 50% 100%); }
    .cmnt-site-header__menu { position: relative; }
    .cmnt-site-header__menu::before { content: ""; width: 18px; height: 12px; border-block: 1.5px solid currentColor; }
    .cmnt-site-header__menu::after { content: ""; position: absolute; width: 18px; height: 1.5px; background: currentColor; }
    .cmnt-site-header__menu > span:not(.cmnt-site-header__menu-label) { display: none; }
    button.cmnt-site-header__menu { display: inline-flex; }
    .cmnt-site-header__navigation { position: relative; border-top: 0; }
    .main-navigation { display: none; min-height: 0; padding: .5rem var(--cmnt-gutter) 1rem; border-top: 1px solid var(--cmnt-rule); }

    .nav-link, .nav-link:first-child { min-height: 2.75rem; padding: .65rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); }
    .cmnt-site-header--front .cmnt-site-header__masthead { min-height: 60px; flex-wrap: wrap; gap: 0 8px; }
    .cmnt-site-header--front .cmnt-site-header__brand { max-width: none; }
    .cmnt-site-header--front .cmnt-site-header__name { min-width: 0; max-width: 100%; font-size: 1.25rem; line-height: 1.2; white-space: normal; overflow-wrap: normal; word-break: normal; }
    .cmnt-site-header--front .cmnt-site-header__descriptor { font-size: .6875rem; line-height: 1.25; }
    .cmnt-site-header--front .cmnt-site-header__utilities .cmnt-site-header__utility { display: inline-flex; }
    .cmnt-site-header--front :is(.cmnt-site-header__utility, .cmnt-site-header__menu, .theme-toggle-button) { font-size: 0; line-height: 0; }
    .cmnt-site-header--front .cmnt-site-header__menu { display: inline-flex; }
    .cmnt-site-header--front .cmnt-site-header__menu > span:not(.cmnt-site-header__menu-label) { display: none; }
    .cmnt-site-header__compact-tools { display: none; }
    .cmnt-home { gap: 1.25rem; }
    .cmnt-home__metrics-scroll { flex: 1 0 100%; }
    .cmnt-home__metrics { grid-auto-flow: column; grid-auto-columns: minmax(9rem, 42vw); grid-template-columns: none; gap: .5rem; }
    .cmnt-home__metric { min-height: 5.5rem; }
    .cmnt-home__market-more { margin-inline-start: auto; }
    .cmnt-home__front { grid-template-columns: minmax(0, 1fr); grid-template-areas: "lead" "agenda" "desks"; grid-template-rows: auto; gap: 2rem; }
    .cmnt-home__lead { gap: .85rem; padding: 0; }
    .cmnt-home__lead :is(h1, h2) { font-size: clamp(1.75rem, 8.5vw, 2.25rem); }
    .cmnt-home__agenda { gap: .85rem; padding: 0; border-inline-start: 0; }
    .cmnt-home__agenda > ul { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .cmnt-home__agenda li + li { margin-top: .95rem; padding-top: .95rem; border-top: 1px solid var(--cmnt-rule-subtle); }
    .cmnt-home__desks { columns: 1; }
    .cmnt-home__desk:nth-child(1) { padding-top: 0; border-top: 0; }
    .cmnt-home__stream-list a { grid-template-columns: minmax(0, 1fr); gap: .35rem; }
    .cmnt-sitemap-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cmnt-sitemap-two-col { grid-template-columns: 1fr; gap: 0; }
    .cmnt-sitemap-summary .avds5-summary-item:nth-child(odd) { border-left: 0; }
    .cmnt-sitemap-summary .avds5-summary-item:nth-child(n+3) { border-top: 1px solid var(--cmnt-rule-subtle); }
    .cmnt-archive-overview, .dashboard-quality-notice, .cmnt-intel-stat-grid { grid-template-columns: 1fr; }
    .avds5-summary-item + .avds5-summary-item, .cmnt-intel-stat + .cmnt-intel-stat { border-top: 1px solid var(--cmnt-rule-subtle); border-left: 0; }
    .article-page .avds5-provenance-foot { grid-template-columns: 1fr; }
    .cmnt-article-table-cue { display: block; }
    .cmnt-footer__inner { padding-block: 1rem .5rem; }
    .cmnt-footer__navigation { grid-template-columns: repeat(auto-fit, minmax(min(100%, 8.5rem), 1fr)); gap: 1rem; padding-block: 0 .75rem; }
    .cmnt-footer__legal { padding-top: .25rem; }
    /* Keep short archive/taxonomy headings intact at 200% text.  A 10vw
       step caps the doubled word width below the narrow reading column,
       preventing a final one-letter orphan without clipping or forced
       hyphenation. */
    .cmnt-page .site-section-intro h1 { font-size: clamp(2rem, 10vw, 2.5rem); }
    .article-results .avds5-document-card__title { font-size: clamp(1rem, 4.5vw, 1.15rem); }
}

/* Keep intrinsic content tracks shrinkable at text zoom and narrow desktop
   widths; no editorial content is clipped to preserve the reading order. */
@media (max-width: 1024px) {
    /* At 200% text the tablet lead still needs whole-word editorial wrapping.
       Lowering only this display size keeps the longest Russian word inside
       its column without clipping or allowing ordinary-word breaks. */
    /* Keep the lead's longest words intact at the synthetic 200% text
       check.  The smaller tablet step preserves the editorial hierarchy
       while leaving enough measure for whole-word wrapping. */
    .cmnt-home__lead :is(h1, h2) { font-size: clamp(1.55rem, 2.55vw, 2.25rem); }
    .cmnt-data-hero { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
    .cmnt-data-hero-copy, .cmnt-data-hero-meta, .cmnt-home__desk { min-width: 0; }
    .cmnt-home__market-header { min-width: 0; }
    .cmnt-home__market-header h2, .cmnt-home__desk h2 { font-weight: 550; min-width: 0; max-width: 100%; }
}

/* Keep the accessible theme label in the DOM while presenting one compact
   icon at every breakpoint.  The selector outranks the primitive button
   typography without changing the inherited AVDS5 control contract. */
.cmnt-site-header .theme-toggle-button {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
}

/* Long editorial headings must contribute a shrinkable track at text zoom;
   ordinary-size words keep their natural line wrapping. */
.cmnt-data-hero h2,
.article-results .avds5-document-card__title {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
}

/* Public route families: one editorial grammar, with no inherited component skin. */
.cmnt-static-page { width: min(100%, var(--cmnt-reading)); }
.data-page .cmnt-static-page { width: 100%; }
.data-page > .content-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
.sources-page .content-row,
.static-page .content-row,
.authors-page .content-row,
.entities-page .content-row,
.entity-page .content-row,
.not-found-page .content-row { grid-template-columns: minmax(0, 1fr); gap: 0; }
.cmnt-sitemap-page { width: 100%; max-width: var(--cmnt-frame); }
.cmnt-static-page > :first-child { margin-top: 0; }
.cmnt-sitemap-summary {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin: 2.25rem 0 0;
    border-block: 1px solid var(--cmnt-rule);
}
.cmnt-sitemap-block { padding-block: 1.5rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-sitemap-summary + .cmnt-sitemap-block { margin-top: 2.25rem; }
.cmnt-sitemap-two-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.5rem, 4vw, 4rem); }
.cmnt-sitemap-two-col .cmnt-sitemap-block { min-width: 0; }

/* Sources: compact coverage first, full semantic registries on demand. */
.cmnt-sources-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 2.25rem 0 0; border-block: 1px solid var(--cmnt-rule); }
.cmnt-sources-summary > div { min-width: 0; padding: 1rem; }
.cmnt-sources-summary > div + div { border-left: 1px solid var(--cmnt-rule-subtle); }
.cmnt-sources-summary :is(dt, dd) { margin: 0; }
.cmnt-sources-summary dt { color: var(--cmnt-muted); font-size: .7rem; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.cmnt-sources-summary .cmnt-source-summary-value { margin-top: .2rem; font-family: var(--font-display); font-size: clamp(1.65rem, 3vw, 2.25rem); letter-spacing: -.04em; line-height: 1; }
.cmnt-sources-summary .cmnt-source-summary-note { margin-top: .35rem; color: var(--cmnt-muted); font-family: var(--font-sans); font-size: .76rem; letter-spacing: normal; line-height: 1.35; }
.cmnt-sources-section { margin-top: clamp(2.25rem, 5vw, 4rem); padding-top: 1.25rem; border-top: 1px solid var(--cmnt-rule); }
.sources-page .cmnt-sources-section { margin-top: clamp(1.75rem, 3vw, 2.5rem); padding-top: 1rem; }
.sources-page .cmnt-sources-summary + .cmnt-sources-section { padding-top: 0; border-top: 0; }
.cmnt-sources-section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, .55fr); gap: 1rem clamp(2rem, 6vw, 6rem); align-items: end; }
.cmnt-sources-section-head p { margin: 0; color: var(--cmnt-muted); font-size: .82rem; line-height: 1.45; }
.cmnt-sources-section-head .cmnt-static-eyebrow { margin-bottom: .45rem; font-size: .68rem; }
.cmnt-source-export-list { margin: 1rem 0 0; padding: 0; border-top: 1px solid var(--cmnt-rule-subtle); list-style: none; }
.cmnt-source-export-list li { border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-source-export-list a { display: grid; grid-template-columns: minmax(10rem, .28fr) minmax(0, 1fr) auto; gap: .5rem 1.5rem; align-items: baseline; min-height: 44px; padding: .75rem 0; color: inherit; text-decoration: none; }
.cmnt-source-export-list a:is(:hover, :focus-visible) :is(strong, .cmnt-source-export-action) { color: var(--cmnt-link-hover); }
.cmnt-source-export-list strong { font-family: var(--font-display); font-size: 1rem; letter-spacing: -.01em; }
.cmnt-source-export-description { color: var(--cmnt-muted); font-size: .82rem; line-height: 1.4; }
.cmnt-source-export-list .cmnt-source-export-action { color: var(--cmnt-link); font-size: .78rem; font-weight: 750; line-height: 1.4; text-decoration: underline; text-underline-offset: .18em; white-space: nowrap; }
.cmnt-source-export-action span { text-decoration: none; }
.cmnt-sources-disclosures { margin-top: 1rem; border-top: 1px solid var(--cmnt-rule-subtle); }
.cmnt-sources-disclosure, .cmnt-source-group { border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-sources-disclosure > summary, .cmnt-source-group > summary { box-sizing: border-box; min-height: 44px; padding: .85rem .15rem; cursor: pointer; color: var(--cmnt-ink); font-weight: 700; }
.cmnt-sources-disclosure > summary > span, .cmnt-source-group > summary > span { margin-inline-start: .35rem; }
.cmnt-sources-disclosure > summary > strong, .cmnt-source-group > summary > strong { float: right; margin-inline-start: .75rem; color: var(--cmnt-muted); font-family: var(--font-sans); font-size: .75rem; font-weight: 750; }
.cmnt-sources-note-list { margin: 0; padding: 0 0 .35rem; list-style: none; }
.cmnt-sources-note-list li { display: grid; grid-template-columns: minmax(10rem, .35fr) minmax(0, 1fr); gap: .35rem 1.5rem; padding: .7rem 0; border-top: 1px solid var(--cmnt-rule-subtle); }
.cmnt-sources-note-list :is(strong, span) { font-size: .8rem; line-height: 1.4; }
.cmnt-sources-note-list span { color: var(--cmnt-muted); }
.cmnt-source-type-list { margin: 0; padding: 0 0 .35rem; }
.cmnt-source-type-list > div { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: .7rem 0; border-top: 1px solid var(--cmnt-rule-subtle); }
.cmnt-source-type-list :is(dt, dd) { margin: 0; font-size: .8rem; line-height: 1.4; }
.cmnt-source-type-list dd { color: var(--cmnt-muted); font-variant-numeric: tabular-nums; }
.cmnt-source-registry-set { margin-top: 2rem; }
.cmnt-source-registry-set-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: .45rem; }
.cmnt-source-registry-set-head h3 { margin: 0; font-family: var(--font-display); font-size: clamp(1.15rem, 2vw, 1.35rem); font-weight: 550; letter-spacing: -.02em; }
.cmnt-source-registry-set-head span { color: var(--cmnt-muted); font-size: .75rem; }
.cmnt-source-group > summary { font-size: .86rem; }
.cmnt-source-table-wrap { max-width: 100%; overflow-x: auto; padding-bottom: .45rem; }
.cmnt-source-table { width: 100%; min-width: 44rem; }
.cmnt-source-table th:first-child { width: 42%; }
.cmnt-source-table :is(a, time) { white-space: nowrap; }
.cmnt-source-table a { display: inline-flex; align-items: center; min-height: 44px; color: inherit; }
.cmnt-source-table a:hover { color: var(--cmnt-link); }
.cmnt-static-eyebrow { margin: 0 0 .55rem; color: var(--cmnt-muted); font-size: .72rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.cmnt-static-surface { width: min(100%, 76rem); margin-inline: auto; padding-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.cmnt-static-intro { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(16rem, .85fr); gap: 1.25rem clamp(2rem, 6vw, 6rem); align-items: end; padding: clamp(1.15rem, 2.6vw, 2.1rem) 0 clamp(1rem, 2vw, 1.5rem); border-bottom: 2px solid var(--cmnt-ink); }
.cmnt-static-intro > * { min-width: 0; }
.cmnt-static-intro .cmnt-static-title { margin: .35rem 0 0; }
.cmnt-static-intro > p { max-width: 38rem; margin: 0; color: var(--cmnt-muted); font-size: .94rem; line-height: 1.55; }
.cmnt-static-deck { margin: .7rem 0 0; color: var(--cmnt-ink); font-family: var(--font-display); font-size: clamp(1.15rem, 2vw, 1.4rem); line-height: 1.3; }
.cmnt-static-prose { max-width: var(--cmnt-reading); margin-top: 1.5rem; color: var(--cmnt-muted); font-size: 1rem; line-height: 1.65; }
.cmnt-static-subtitle { margin: 1rem 0 0; color: var(--cmnt-muted); font-size: clamp(1rem, 1.4vw, 1.15rem); line-height: 1.55; }
.cmnt-static-title { margin: 0; font-family: var(--font-display); font-size: clamp(2.2rem, 4.4vw, 4rem); letter-spacing: -.05em; line-height: .98; overflow-wrap: normal; word-break: normal; }
.cmnt-static-section-title { margin: 0; font-family: var(--font-display); font-size: clamp(1.35rem, 2.3vw, 1.8rem); letter-spacing: -.025em; }
.cmnt-static-note { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--cmnt-rule); color: var(--cmnt-muted); font-size: .86rem; line-height: 1.5; }
.cmnt-static-back-link { display: inline-block; margin-bottom: 1.5rem; color: var(--cmnt-link); font-size: .8rem; font-weight: 700; }
.cmnt-static-section { margin-top: clamp(2rem, 4vw, 3.25rem); }
.cmnt-static-section-head { display: grid; grid-template-columns: minmax(0, .6fr) minmax(16rem, .4fr); gap: 1rem 2rem; align-items: end; padding-bottom: .65rem; border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-static-section-head h2 { margin: 0; font-family: var(--font-display); font-size: clamp(1.4rem, 2.4vw, 1.9rem); letter-spacing: -.03em; }
.cmnt-static-section-head p { margin: 0; color: var(--cmnt-muted); font-size: .8rem; line-height: 1.45; }
.cmnt-stat-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 2rem 0 0; border-block: 1px solid var(--cmnt-rule); }
.cmnt-stat-strip > div { display: flex; min-width: 0; flex-direction: column; padding: 1rem; }
.cmnt-stat-strip > div + div { border-left: 1px solid var(--cmnt-rule-subtle); }
.cmnt-stat-strip :is(dt, dd) { margin: 0; }
.cmnt-stat-strip dd { order: -1; font-family: var(--font-mono); font-size: clamp(1.45rem, 3vw, 2rem); font-variant-numeric: tabular-nums; letter-spacing: -.04em; line-height: 1; }
.cmnt-stat-strip dt { margin-top: .35rem; color: var(--cmnt-muted); font-size: .74rem; }
.cmnt-functional-list { margin: 0; padding: 0; list-style: none; }
.cmnt-functional-list li { display: grid; grid-template-columns: minmax(10rem, .38fr) minmax(0, .62fr); gap: .35rem 2rem; align-items: baseline; min-height: 44px; padding: .7rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-functional-list li > :first-child { font-family: var(--font-display); font-size: 1.03rem; }
.cmnt-functional-list li > :last-child { min-width: 0; color: var(--cmnt-muted); font-size: .82rem; overflow-wrap: anywhere; }
.cmnt-functional-list a { display: inline-flex; min-height: 44px; align-items: center; color: var(--cmnt-link); }
.cmnt-functional-list small { display: block; margin-top: .15rem; color: var(--cmnt-muted); font-family: var(--font-sans); font-size: .72rem; line-height: 1.35; }
.cmnt-static-primary-link { display: inline-flex; min-height: 44px; align-items: center; margin-top: .6rem; color: var(--cmnt-link); font-family: var(--font-display); font-size: 1.15rem; }
.cmnt-directory-list { margin: 1.5rem 0 0; padding: 0; list-style: none; }
.cmnt-author-identity { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: 1rem; align-items: start; margin-top: 1.5rem; padding-block: 1rem; border-block: 1px solid var(--cmnt-rule); }
.cmnt-adv-contact-note { max-width: var(--cmnt-reading); margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-adv-contact-note-text { margin: 0; color: var(--cmnt-muted); line-height: 1.55; }
.cmnt-404-wrapper { width: min(100%, 46rem); margin-inline: auto; padding-block: clamp(3rem, 10vw, 8rem); text-align: center; }
.cmnt-404-code { margin: 0 0 .7rem; color: var(--cmnt-link); font-size: .72rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.not-found-page .cmnt-404-title { margin: 0; font-family: var(--font-display); font-size: clamp(2.35rem, 5vw, 4.8rem); letter-spacing: -.05em; line-height: .98; overflow-wrap: normal; word-break: normal; }
.cmnt-404-text { max-width: 34rem; margin: 1rem auto 0; color: var(--cmnt-muted); font-size: 1rem; line-height: 1.55; }
.cmnt-404-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; margin-top: 1.5rem; }
.cmnt-404-btn { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; padding: .6rem .85rem; border: 1px solid var(--cmnt-rule); color: var(--cmnt-ink); font-size: .8rem; font-weight: 700; text-decoration: none; }
.cmnt-404-btn-primary { border-color: var(--cmnt-link); background: var(--cmnt-link); color: var(--cmnt-paper); }
.cmnt-404-btn:is(:hover, :focus-visible) { border-color: var(--cmnt-link); }
.cmnt-podcast-channel-card { grid-template-columns: 2.25rem minmax(0, 1fr) auto; align-items: center; color: inherit; text-decoration: none; }
.cmnt-podcast-channel-icon { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; color: white; font-size: .65rem; font-weight: 800; }
.cmnt-podcast-channel-name, .cmnt-podcast-channel-desc { margin: 0; }
.cmnt-podcast-channel-name { font-family: var(--font-display); font-size: 1.2rem; }
.cmnt-podcast-channel-desc { color: var(--cmnt-muted); font-size: .82rem; }
.cmnt-podcast-channel-arrow { color: var(--cmnt-link); font-size: 1.25rem; }

.cmnt-data-surface { width: min(100%, 76rem); margin-inline: auto; padding-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.cmnt-data-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(14rem, 19rem); gap: clamp(1.25rem, 3vw, 2.75rem); align-items: end; padding: clamp(1.15rem, 2.6vw, 2.1rem) 0 clamp(1rem, 2vw, 1.5rem); border-bottom: 2px solid var(--cmnt-ink); }
.cmnt-data-intro > * { min-width: 0; }
.cmnt-data-intro h1 { max-width: 16ch; margin: .35rem 0 .65rem; font-family: var(--font-display); font-size: clamp(2.25rem, 4.5vw, 4.15rem); letter-spacing: -.05em; line-height: .98; overflow-wrap: normal; word-break: normal; }
.cmnt-data-intro p { min-width: 0; max-width: 43rem; margin: 0; color: var(--cmnt-muted); font-size: 1rem; line-height: 1.55; overflow-wrap: break-word; }
.cmnt-data-intro .cmnt-static-back-link { margin: 0 0 .45rem; }
.cmnt-data-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .4rem .8rem; }
@media (min-width: 64.01rem) {
  .cmnt-data-index .cmnt-data-actions { display: grid; width: max-content; max-width: 100%; justify-self: end; }
}
.cmnt-data-actions a, .cmnt-data-route-list a { display: inline-flex; min-height: 44px; align-items: center; color: inherit; font-size: .78rem; font-weight: 700; text-decoration-color: var(--cmnt-link-rule); }
.cmnt-data-summary { display: grid; margin: 0; border-top: 1px solid var(--cmnt-rule); }
.cmnt-data-summary > div { display: flex; min-height: 44px; align-items: baseline; justify-content: space-between; gap: 1rem; padding: .7rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-data-intro > div.cmnt-data-summary > * { display: flex; min-height: 44px; align-items: center; margin: 0; padding: .65rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-data-summary :is(dt, dd) { margin: 0; }
.cmnt-data-summary dt { color: var(--cmnt-muted); font-size: .75rem; }
.cmnt-data-summary dd { font-weight: 700; text-align: right; }
.cmnt-data-section { margin-top: clamp(2rem, 4vw, 3.25rem); }
.cmnt-data-section-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: .6rem 1.5rem; padding-bottom: .65rem; border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-data-section-head > * { min-width: 0; }
.cmnt-data-section-head > span { max-width: 100%; overflow-wrap: break-word; }
.cmnt-data-section-head h2 { margin: 0; font-family: var(--font-display); font-size: clamp(1.45rem, 2.6vw, 2rem); letter-spacing: -.03em; }
.cmnt-data-section-head p { max-width: 34rem; margin: 0; color: var(--cmnt-muted); font-size: .82rem; }
.cmnt-data-table-wrap { max-width: 100%; margin-top: .7rem; overflow-x: auto; overscroll-behavior-inline: contain; }
.cmnt-data-table-wrap:focus-visible { outline: 2px solid var(--cmnt-link); outline-offset: 3px; }
.cmnt-data-scroll-hint { display: none; margin: .6rem 0 0; color: var(--cmnt-muted); font-size: .74rem; }
.cmnt-data-table { width: 100%; min-width: 43rem; border-collapse: collapse; }
.cmnt-data-table :is(th, td) { padding: .72rem .75rem .72rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); text-align: left; vertical-align: top; }
.cmnt-data-table thead th { color: var(--cmnt-muted); font-size: .69rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.cmnt-data-table tbody th { width: 28%; font-weight: 700; }
.dashboard-page .cmnt-data-table tbody th a { display: inline-flex; min-height: 44px; align-items: center; color: inherit; text-decoration: underline; text-decoration-color: var(--cmnt-link-rule); text-underline-offset: .18em; }
.dashboard-page .cmnt-data-table tbody th a:hover { color: var(--cmnt-link); }
.cmnt-data-table .cmnt-data-empty-row td { color: var(--cmnt-muted); font-style: italic; }
.cmnt-data-value { font-family: var(--font-mono); font-variant-numeric: tabular-nums; white-space: nowrap; }
.cmnt-data-value.is-missing { color: var(--cmnt-muted); font-family: var(--font-sans); font-style: italic; white-space: normal; }
.cmnt-data-status { color: var(--cmnt-muted); font-size: .76rem; font-weight: 700; }
.cmnt-data-status--fresh { color: var(--cmnt-link); }
.cmnt-data-status--stale, .cmnt-data-status--degraded { text-decoration: underline; text-decoration-style: dotted; text-underline-offset: .18em; }
.cmnt-data-status--missing { font-weight: 500; }
.cmnt-data-disclosure { margin-top: .9rem; border-block: 1px solid var(--cmnt-rule); }
.cmnt-data-disclosure summary { display: flex; min-height: 44px; align-items: center; justify-content: space-between; gap: 1rem; cursor: pointer; font-weight: 700; }
.cmnt-data-disclosure summary::after { content: "⌄"; color: var(--cmnt-link); font-size: 1.1rem; line-height: 1; }
.cmnt-data-disclosure[open] summary::after { content: "⌃"; }
.cmnt-data-disclosure-open { display: none; }
.cmnt-data-disclosure[open] .cmnt-data-disclosure-closed { display: none; }
.cmnt-data-disclosure[open] .cmnt-data-disclosure-open { display: inline; }
.cmnt-data-disclosure ul { display: grid; margin: 0; padding: 0 0 .75rem; list-style: none; }
.cmnt-data-disclosure li { display: grid; grid-template-columns: minmax(8rem, 12rem) minmax(0, 1fr); gap: .75rem 1.25rem; padding: .55rem 0; border-top: 1px solid var(--cmnt-rule-subtle); font-size: .78rem; }
.cmnt-data-disclosure li span { color: var(--cmnt-muted); }
.cmnt-data-catalog, .cmnt-data-method-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem 2.5rem; margin-top: 1.2rem; }
.cmnt-data-catalog > *, .cmnt-data-method-grid > * { padding-top: .8rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-data-calendar .cmnt-data-method-grid { grid-template-columns: minmax(0, 1fr); }
.cmnt-data-calendar .cmnt-data-functional-list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2rem; }
@media (max-width: 47.99rem) {
  .cmnt-data-calendar .cmnt-data-functional-list { grid-template-columns: minmax(0, 1fr); }
}
.cmnt-data-catalog h3, .cmnt-data-method-grid h2 { margin: 0 0 .35rem; font-family: var(--font-display); font-size: 1.25rem; letter-spacing: -.02em; }
.cmnt-data-catalog ul, .cmnt-data-functional-list { display: grid; margin: 0; padding: 0; list-style: none; }
.cmnt-data-catalog a, .cmnt-data-functional-list a { display: grid; min-height: 44px; align-content: center; gap: .12rem; border-bottom: 1px solid var(--cmnt-rule-subtle); color: inherit; font-size: .84rem; text-decoration: none; }
.cmnt-data-catalog a span, .cmnt-data-functional-list a span, .cmnt-data-route-list a span { color: var(--cmnt-muted); font-size: .76rem; font-weight: 500; }
.cmnt-data-route-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 1.5rem; margin: 1.2rem 0 0; padding: 0; list-style: none; border-top: 1px solid var(--cmnt-rule); }
.cmnt-data-route-list a { display: grid; width: 100%; align-content: center; gap: .12rem; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-indicator-current { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 1.25rem 0 0; border-block: 1px solid var(--cmnt-rule); }
.cmnt-indicator-current > div { min-width: 0; padding: .9rem 1rem; }
.cmnt-indicator-current > div + div { border-left: 1px solid var(--cmnt-rule-subtle); }
.cmnt-indicator-current :is(dt, dd) { margin: 0; }
.cmnt-indicator-current dt { color: var(--cmnt-muted); font-size: .68rem; font-weight: 750; letter-spacing: .05em; text-transform: uppercase; }
.cmnt-indicator-current dd { margin-top: .28rem; font-size: .85rem; }
.cmnt-indicator-current dd:first-of-type { font-family: var(--font-mono); font-variant-numeric: tabular-nums; }
.cmnt-data-quality { margin: 1rem 0 0; padding: .7rem 0; border-block: 1px solid var(--cmnt-rule-subtle); color: var(--cmnt-muted); font-size: .78rem; }
.cmnt-data-facts { display: grid; margin: .75rem 0 0; padding: 0; }
.cmnt-data-facts > div { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: .75rem; padding: .35rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-data-facts :is(dt, dd) { margin: 0; }
.cmnt-data-facts dt { color: var(--cmnt-muted); }
.cmnt-data-facts dd { font-family: var(--font-mono); font-size: .8rem; text-align: right; }
.cmnt-data-method-grid p { color: var(--cmnt-muted); font-size: .86rem; line-height: 1.55; }
.cmnt-data-next-release, .dashboard-map-preview { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.25rem; align-items: center; margin-top: 1.25rem; padding: .9rem 0; border-block: 1px solid var(--cmnt-rule); }
.cmnt-data-next-release p, .dashboard-map-preview p { margin: 0; color: var(--cmnt-muted); font-size: .84rem; }

@media (max-width: 64rem) {
    .cmnt-sitemap-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 47.99rem) {
    .cmnt-sitemap-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cmnt-sitemap-two-col { grid-template-columns: 1fr; gap: 0; }
    .cmnt-sitemap-summary .avds5-summary-item:nth-child(odd) { border-left: 0; }
    .cmnt-sitemap-summary .avds5-summary-item:nth-child(n+3) { border-top: 1px solid var(--cmnt-rule-subtle); }
    .cmnt-sources-summary, .cmnt-sources-section-head { grid-template-columns: minmax(0, 1fr); }
    .cmnt-sources-summary > div + div { border-top: 1px solid var(--cmnt-rule-subtle); border-left: 0; }
    .cmnt-source-export-list a, .cmnt-sources-note-list li { grid-template-columns: minmax(0, 1fr); }
}

.dashboard-quality-notice { margin: .9rem 0 0; padding: .7rem 0; border-block: 1px solid var(--cmnt-rule-subtle); color: var(--cmnt-muted); font-size: .78rem; }
.dashboard-quality-notice:empty { display: none; }
@media (min-width: 64.01rem) {
  .dashboard-page .cmnt-data-intro { grid-template-columns: minmax(0, 1fr); align-items: start; gap: 1.2rem; }
  .dashboard-page .cmnt-data-intro h1 { max-width: none; }
  .dashboard-page .cmnt-data-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
  .dashboard-page .cmnt-data-intro > div.cmnt-data-summary > * { min-height: 0; align-items: start; padding: .7rem 0 0; border-bottom: 0; }
  .dashboard-page .cmnt-data-summary .dashboard-quality-notice { margin: 0; border-block: 0; }
}
.dashboard-chart-toolbar { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: .75rem 1.5rem; }
.dashboard-chart-toolbar h2 { margin: 0; font-family: var(--font-display); font-size: clamp(1.45rem, 2.6vw, 2rem); letter-spacing: -.03em; }
.dashboard-chart-tabs { display: flex; flex-wrap: wrap; gap: .3rem; }
.dashboard-chart-tabs button { min-height: 44px; padding: .45rem .7rem; border: 1px solid var(--cmnt-rule); background: transparent; color: var(--cmnt-ink); cursor: pointer; }
.dashboard-chart-tabs button[aria-pressed="true"] { border-color: var(--cmnt-link); color: var(--cmnt-link); font-weight: 700; }
.dashboard-chart-summary { max-width: 50rem; margin: .65rem 0 0; color: var(--cmnt-muted); font-size: .84rem; }
.dash-chart-wrap { position: relative; min-height: 10rem; margin-top: .85rem; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.dash-chart-wrap canvas { display: block; width: 100%; max-height: 15rem; }
.dash-chart-wrap canvas[hidden], .dashboard-chart-empty[hidden] { display: none; }
.dashboard-chart-empty { display: grid; min-height: 7rem; padding: 1rem; place-items: center; color: var(--cmnt-muted); font-size: .85rem; text-align: center; }
.dashboard-empty-state { margin: 0; padding: .8rem 0; color: var(--cmnt-muted); font-size: .82rem; line-height: 1.45; }

.cmnt-radio-page { padding-bottom: 0; }
.cmnt-radio-shell { width: min(100%, 76rem); min-width: 0; margin-inline: auto; padding-bottom: clamp(2.25rem, 5vw, 4rem); }
.cmnt-radio-intro { display: grid; grid-template-columns: minmax(0, .7fr) minmax(20rem, 1.3fr); gap: clamp(1.25rem, 4vw, 4rem); align-items: end; padding: clamp(1.15rem, 2.7vw, 2.1rem) 0 1.15rem; border-bottom: 2px solid var(--cmnt-ink); }
.cmnt-radio-intro > * { min-width: 0; }
.cmnt-radio-intro h1 { margin: .15rem 0 0; font-family: var(--font-display); font-size: clamp(2.2rem, 4.5vw, 3.7rem); font-weight: 650; letter-spacing: -.045em; line-height: .98; }
.cmnt-radio-intro > p { max-width: 42rem; margin: 0; color: var(--cmnt-muted); font-size: .92rem; line-height: 1.5; }
.cmnt-radio-status { display: grid; grid-template-columns: minmax(12rem, .7fr) minmax(0, 1.3fr); gap: clamp(1.25rem, 4vw, 4rem); padding: clamp(1.5rem, 3.5vw, 2.75rem) 0; border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-radio-status > * { min-width: 0; }
.cmnt-radio-status-label { margin: 0 0 .3rem; color: var(--cmnt-link); font-size: .68rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.cmnt-radio-status h2 { margin: 0; font-family: var(--font-display); font-size: clamp(1.55rem, 3vw, 2.2rem); letter-spacing: -.035em; line-height: 1.05; }
.cmnt-radio-status-copy { display: grid; gap: .55rem; align-content: start; }
.cmnt-radio-status-copy p { max-width: 46rem; margin: 0; color: var(--cmnt-muted); font-size: .88rem; line-height: 1.5; }
.cmnt-radio-programmes { padding: clamp(1.5rem, 3vw, 2.5rem) 0; border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-radio-programmes h2 { margin: 0 0 .8rem; font-family: var(--font-display); font-size: clamp(1.55rem, 3vw, 2.2rem); }
.cmnt-radio-programme-list { display: grid; margin: 0; padding: 0; list-style: none; }
.cmnt-radio-programme-list li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .45rem 1rem; padding: .7rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-radio-programme-list a { min-height: 44px; color: inherit; font-family: var(--font-display); font-size: 1.15rem; font-weight: 650; }
.cmnt-radio-programme-list time { color: var(--cmnt-muted); font-family: var(--font-mono); font-size: .75rem; }
.cmnt-radio-links { display: grid; grid-template-columns: minmax(12rem, .7fr) minmax(0, 1.3fr); gap: clamp(1.25rem, 4vw, 4rem); align-items: start; padding-top: 1.2rem; }
.cmnt-radio-links > p { max-width: 24rem; margin: 0; color: var(--cmnt-muted); font-size: .82rem; line-height: 1.45; }
.cmnt-radio-links ul { display: flex; flex-wrap: wrap; gap: 0 1.25rem; margin: 0; padding: 0; list-style: none; }
.cmnt-radio-links a { display: inline-flex; min-height: 44px; align-items: center; color: inherit; font-size: .8rem; font-weight: 700; text-decoration-thickness: .07em; text-underline-offset: .2em; }

.cmnt-map-page { padding-bottom: 0; }
.cmnt-intel-shell--map { width: min(100%, 76rem); min-width: 0; margin-inline: auto; padding-bottom: 0; gap: clamp(.7rem, 1.25vw, 1rem); }
.cmnt-intel-shell--map > *, .cmnt-map-intro > *, .cmnt-map-data-section > *, .cmnt-map-table-block, .cmnt-map-table-block > *, .cmnt-qazgeo-layout > *, .cmnt-data-table-wrap { min-width: 0; }
.cmnt-map-page .cmnt-intel-section-head { padding-bottom: 0; border: 0; }
.cmnt-map-intro { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr); gap: clamp(1rem, 2.5vw, 2rem); align-items: center; padding: clamp(1rem, 2vw, 1.6rem) 0 .35rem; }
.cmnt-map-intro h1 { max-width: 16ch; margin: .15rem 0 .45rem; font-family: var(--font-display); font-size: clamp(2.15rem, 4.2vw, 3.6rem); font-weight: 650; letter-spacing: -.045em; line-height: .98; }
.cmnt-map-intro > div > p:last-child { max-width: 48rem; margin: 0; color: var(--cmnt-muted); font-size: .9rem; line-height: 1.5; }
.cmnt-map-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem 1rem; margin: 0; padding: 0; }
.cmnt-map-summary > div { min-width: 0; }
.cmnt-map-summary :is(dt, dd) { margin: 0; }
.cmnt-map-summary dt { color: var(--cmnt-muted); font-size: .62rem; font-weight: 750; letter-spacing: .05em; text-transform: uppercase; }
.cmnt-map-summary dd { margin-top: .12rem; font-size: .82rem; line-height: 1.25; overflow-wrap: anywhere; }
.cmnt-map-index { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .08rem .65rem; margin-top: 1rem; padding-top: .8rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-map-index > span { margin-bottom: .18rem; color: var(--cmnt-muted); font-size: .65rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.cmnt-map-index > span { grid-column: 1 / -1; }
.cmnt-map-index a { display: inline-flex; min-height: 44px; align-items: center; color: inherit; font-size: .78rem; font-weight: 700; text-decoration-thickness: .07em; text-underline-offset: .2em; }
.cmnt-map-data-section, .cmnt-map-regions-panel, .cmnt-map-reading { padding-top: clamp(1.25rem, 2.5vw, 2rem); }
.cmnt-map-section-head > div { min-width: 0; }
.cmnt-map-section-head p { max-width: 46rem; margin: .25rem 0 0; color: var(--cmnt-muted); font-size: .82rem; line-height: 1.45; }
.cmnt-qazgeo-quality { display: flex; justify-content: space-between; align-items: center; gap: .8rem 1.25rem; margin-top: .65rem; padding: .65rem .75rem; border-inline-start: 3px solid var(--cmnt-link); background: color-mix(in srgb, var(--cmnt-link) 7%, var(--cmnt-paper)); }
.cmnt-qazgeo-quality[hidden] { display: none; }
.cmnt-qazgeo-quality > div { display: grid; gap: .18rem; min-width: 0; }
.cmnt-qazgeo-quality strong { font-family: var(--font-display); font-size: 1.05rem; line-height: 1.2; }
.cmnt-qazgeo-quality span { color: var(--cmnt-muted); font-size: .78rem; line-height: 1.4; }
.cmnt-qazgeo-quality a { display: inline-flex; flex: 0 0 auto; min-height: 44px; align-items: center; font-size: .78rem; font-weight: 700; }
.cmnt-qazgeo-quality[data-quality-state="error"] { border-inline-start-color: var(--cmnt-link); background: color-mix(in srgb, var(--cmnt-link) 7%, var(--cmnt-paper)); }
.cmnt-qazgeo-quality[data-quality-state="unavailable"] { border-inline-start-color: #a56a18; background: color-mix(in srgb, #a56a18 8%, var(--cmnt-paper)); }
.cmnt-qazgeo-quality[data-quality-state="empty"], .cmnt-qazgeo-quality[data-quality-state="geometry-empty"] { border-inline-start-color: var(--cmnt-muted); background: color-mix(in srgb, var(--cmnt-muted) 7%, var(--cmnt-paper)); }
.cmnt-qazgeo-quality[data-quality-state="stale"] { border-inline-start-color: #a56a18; background: color-mix(in srgb, #a56a18 8%, var(--cmnt-paper)); }
.cmnt-qazgeo-quality[data-quality-state="degraded"] { border-inline-start-color: var(--cmnt-muted); background: color-mix(in srgb, var(--cmnt-muted) 7%, var(--cmnt-paper)); }
.cmnt-qazgeo-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .5rem; min-height: 3.5rem; padding: 0 0 .65rem; }
.cmnt-qazgeo-toolbar button { min-height: 44px; padding: .45rem .7rem; border: 1px solid var(--cmnt-rule); background: transparent; color: var(--cmnt-ink); font: inherit; font-size: .78rem; cursor: pointer; }
.cmnt-qazgeo-toolbar button[aria-pressed="true"] { border-color: var(--cmnt-link); color: var(--cmnt-link); font-weight: 750; }
.cmnt-qazgeo-toolbar button:disabled { cursor: not-allowed; opacity: .6; }
.cmnt-qazgeo-layout { display: grid; grid-template-columns: minmax(14rem, 17rem) minmax(0, 1fr); grid-template-areas: "sidebar stage"; align-items: start; column-gap: clamp(1rem, 2.5vw, 2.25rem); row-gap: clamp(.75rem, 1.5vw, 1.25rem); padding-top: .65rem; }
.cmnt-qazgeo-layout--no-map { grid-template-columns: minmax(14rem, 17rem) minmax(0, 1fr); }
.cmnt-qazgeo-stage { grid-area: stage; min-width: 0; }
.cmnt-qazgeo-map { position: relative; overflow: hidden; border: 1px solid var(--cmnt-rule); background: color-mix(in srgb, var(--cmnt-paper) 88%, var(--cmnt-rule)); }
.cmnt-qazgeo-preview { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; align-items: center; padding: clamp(.85rem, 2vw, 1.2rem); }
.cmnt-qazgeo-preview[hidden] { display: none; }
.cmnt-qazgeo-preview strong { display: block; font-family: var(--font-display); font-size: 1.16rem; line-height: 1.15; }
.cmnt-qazgeo-preview p { max-width: 44rem; margin: .3rem 0 0; color: var(--cmnt-muted); font-size: .8rem; line-height: 1.45; }
.cmnt-qazgeo-load { min-width: 8rem; min-height: 44px; }
.cmnt-qazgeo-state { margin: 0; padding: .65rem 0; color: var(--cmnt-muted); font-size: .76rem; line-height: 1.4; }
.cmnt-qazgeo-map[data-map-state="preview"] .cmnt-qazgeo-state, .cmnt-qazgeo-map[data-map-state="unavailable"] .cmnt-qazgeo-state { padding-inline: 1rem; }
.cmnt-qazgeo-map[data-map-state="loading"] .cmnt-qazgeo-state { display: grid; min-block-size: clamp(7rem, 18vw, 12rem); place-items: center; padding: 1.25rem; text-align: center; }
.cmnt-qazgeo-message { display: grid; gap: .35rem; margin: .7rem 0; padding: .9rem 1rem; border-inline-start: 3px solid var(--cmnt-rule); background: color-mix(in srgb, var(--cmnt-paper) 84%, var(--cmnt-rule)); }
.cmnt-qazgeo-message[hidden] { display: none; }
.cmnt-qazgeo-message strong { font-family: var(--font-display); font-size: 1.15rem; line-height: 1.2; }
.cmnt-qazgeo-message p { max-width: 46rem; margin: 0; color: var(--cmnt-muted); font-size: .8rem; line-height: 1.45; }
.cmnt-qazgeo-map[data-map-state="error"] .cmnt-qazgeo-message { border-inline-start-color: var(--cmnt-link); }
.cmnt-qazgeo-retry { justify-self: start; min-height: 44px; margin-top: .35rem; }
.cmnt-qazgeo-retry[hidden] { display: none; }
.cmnt-qazgeo-canvas { position: relative; display: none; width: 100%; aspect-ratio: 16 / 8.75; }
.cmnt-qazgeo-canvas[data-map-renderer="svg"] { aspect-ratio: 16 / 8.75; }
.cmnt-qazgeo-map[data-map-initializing="true"] .cmnt-qazgeo-canvas { display: block; visibility: hidden; }
.cmnt-qazgeo-map[data-map-state="active"] .cmnt-qazgeo-canvas, .cmnt-qazgeo-map[data-map-state="degraded"] .cmnt-qazgeo-canvas, .cmnt-qazgeo-map[data-map-state="stale"] .cmnt-qazgeo-canvas { display: block; }
.cmnt-qazgeo-map[data-map-state="active"] .cmnt-qazgeo-state, .cmnt-qazgeo-map[data-map-state="degraded"] .cmnt-qazgeo-state, .cmnt-qazgeo-map[data-map-state="stale"] .cmnt-qazgeo-state { padding-inline: 1rem; }
.cmnt-qazgeo-legend { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; padding: .65rem 1rem; color: var(--cmnt-muted); font-size: .7rem; }
.cmnt-qazgeo-legend[hidden] { display: none; }
.cmnt-qazgeo-legend > strong { color: var(--cmnt-ink); font-family: var(--font-sans); font-size: .72rem; }
.cmnt-qazgeo-legend-scale { display: flex; flex-wrap: wrap; gap: .35rem .7rem; }
.cmnt-qazgeo-legend-item { display: inline-flex; align-items: center; gap: .28rem; white-space: nowrap; }
.cmnt-qazgeo-legend-item i { display: inline-block; width: 1rem; height: .65rem; border: 1px solid color-mix(in srgb, currentColor 28%, transparent); }
.cmnt-qazgeo-legend-missing { background: color-mix(in srgb, var(--cmnt-paper) 50%, var(--cmnt-rule)); }
.cmnt-qazgeo-caption { margin: .55rem 0 0; color: var(--cmnt-muted); font-size: .73rem; line-height: 1.45; }
.cmnt-qazgeo-svg-map { display: block; width: 100%; height: 100%; background: color-mix(in srgb, var(--cmnt-paper) 90%, var(--cmnt-rule)); }
.cmnt-qazgeo-svg-map path { stroke: var(--cmnt-ink); stroke-width: 1.2; fill-rule: evenodd; vector-effect: non-scaling-stroke; }
.cmnt-qazgeo-svg-map path.is-active { stroke: var(--cmnt-link); stroke-width: 4; fill: color-mix(in srgb, var(--cmnt-link) 42%, transparent); fill-opacity: 1; }
.cmnt-qazgeo-canvas .maplibregl-ctrl-top-right { position: absolute; z-index: 2; top: .65rem; right: .65rem; }
.cmnt-qazgeo-canvas .maplibregl-ctrl-group { display: grid; overflow: hidden; border: 1px solid var(--cmnt-rule); background: var(--cmnt-paper); box-shadow: 0 .1rem .4rem rgb(0 0 0 / .08); }
.cmnt-qazgeo-canvas .maplibregl-ctrl-group button { display: grid; width: 44px; min-width: 44px; height: 44px; min-height: 44px; place-items: center; padding: 0; border: 0; border-bottom: 1px solid var(--cmnt-rule); background: transparent; color: var(--cmnt-ink); cursor: pointer; }
.cmnt-qazgeo-canvas .maplibregl-ctrl-group button:last-child { border-bottom: 0; }
.cmnt-qazgeo-canvas .maplibregl-ctrl-group button:hover { background: color-mix(in srgb, var(--cmnt-paper) 80%, var(--cmnt-rule)); }
.cmnt-qazgeo-canvas .maplibregl-ctrl-group button:focus-visible { outline: 3px solid var(--cmnt-focus); outline-offset: -3px; }
.cmnt-qazgeo-canvas .maplibregl-ctrl-icon { background-image: none; }
.cmnt-qazgeo-canvas .maplibregl-ctrl-icon::before { display: block; font: 500 1.45rem/1 var(--font-sans); }
.cmnt-qazgeo-canvas .maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon::before { content: "+"; }
.cmnt-qazgeo-canvas .maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon::before { content: "−"; }
.cmnt-qazgeo-canvas .maplibregl-cooperative-gesture-screen { position: absolute; z-index: 1; inset: 0; display: none; place-items: center; padding: 1rem; background: rgb(25 26 28 / .72); color: #fff; font: 650 .82rem/1.4 var(--font-sans); text-align: center; }
.cmnt-qazgeo-canvas .maplibregl-cooperative-gesture-screen.maplibregl-show { display: grid; }
.cmnt-qazgeo-sidebar { grid-area: sidebar; min-width: 0; }
.cmnt-qazgeo-sidebar .cmnt-intel-section-head h3, .cmnt-map-table-block .cmnt-intel-section-head h3 { margin: 0; font-family: var(--font-display); font-size: 1.2rem; }
.cmnt-qazgeo-rank-list { display: grid; gap: .12rem; margin-top: .45rem; }
.cmnt-qazgeo-rank-row { display: flex; min-height: 44px; justify-content: space-between; align-items: center; gap: .75rem; width: 100%; padding: .45rem .35rem; border: 0; background: transparent; color: var(--cmnt-ink); text-align: left; font: inherit; font-size: .8rem; cursor: pointer; }
.cmnt-qazgeo-rank-row:hover { background: color-mix(in srgb, var(--cmnt-link) 5%, transparent); }
.cmnt-qazgeo-rank-row:disabled { cursor: not-allowed; opacity: .66; }
.cmnt-qazgeo-rank-row[aria-pressed="true"] { padding-inline: .55rem; background: color-mix(in srgb, var(--cmnt-link) 9%, transparent); color: var(--cmnt-link); box-shadow: inset 3px 0 0 var(--cmnt-link); }
.cmnt-qazgeo-rank-row strong { font-family: var(--font-mono); font-size: .76rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cmnt-qazgeo-rank-value { display: grid; justify-items: end; gap: .1rem; }
.cmnt-qazgeo-rank-value small { color: var(--cmnt-muted); font-size: .65rem; line-height: 1.2; white-space: nowrap; }
.cmnt-qazgeo-more-regions { border: 0; }
.cmnt-qazgeo-more-regions summary { display: flex; min-height: 44px; align-items: center; color: var(--cmnt-link); font-size: .76rem; font-weight: 700; cursor: pointer; }
.cmnt-qazgeo-more-regions summary:focus-visible { outline: 3px solid var(--cmnt-focus); outline-offset: 2px; }
.cmnt-qazgeo-more-regions[open] summary { border: 0; }
.cmnt-qazgeo-selection { margin: .55rem 0 0; padding: .5rem .35rem 0; color: var(--cmnt-muted); font-size: .76rem; line-height: 1.45; }
.cmnt-map-table-block { min-width: 0; margin-top: clamp(.75rem, 1.5vw, 1.25rem); }
.cmnt-map-data-table { min-width: 41rem; }
.cmnt-map-data-table thead th { padding-bottom: .7rem; border-bottom: 1px solid var(--cmnt-rule); }
.cmnt-map-data-table tbody tr:nth-child(odd) { background: transparent; }
.cmnt-map-page .cmnt-map-data-table tbody tr > :is(th, td) { border: 0; }
.cmnt-map-page .cmnt-map-data-table tbody tr + tr { border-top: 0; }
.cmnt-map-data-table tbody :is(th, td) { padding-block: .75rem; }
.cmnt-map-data-table td { font-family: var(--font-mono); font-size: .78rem; font-variant-numeric: tabular-nums; }
.cmnt-map-data-table td:nth-child(3), .cmnt-map-data-table td:nth-child(5), .cmnt-map-data-table .cmnt-data-missing { font-family: var(--font-sans); font-variant-numeric: normal; }
.cmnt-map-provenance { display: grid; gap: .15rem; min-width: 11rem; line-height: 1.3; }
.cmnt-map-provenance__details { color: var(--cmnt-muted); font-family: var(--font-sans); font-size: .68rem; line-height: 1.25; }
.cmnt-region-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .25rem 2rem; padding-top: .5rem; }
.cmnt-region-row { display: flex; min-height: 44px; justify-content: space-between; align-items: center; gap: 1rem; padding: .65rem .35rem; border: 0; color: inherit; text-decoration: none; }
.cmnt-region-copy { display: grid; gap: .12rem; }
.cmnt-region-copy small { color: var(--cmnt-muted); font-size: .7rem; }
.cmnt-map-story-list { display: grid; gap: .25rem; margin-top: .45rem; }
.cmnt-map-story-row { display: grid; grid-template-columns: minmax(7rem, .25fr) minmax(0, 1fr) auto; gap: 1rem; align-items: baseline; min-height: 44px; padding: .72rem .35rem; border: 0; color: inherit; text-decoration: none; }
.cmnt-map-story-row > span, .cmnt-map-story-row time { color: var(--cmnt-muted); font-size: .72rem; }
.cmnt-map-story-row strong { font-family: var(--font-display); font-size: 1.05rem; line-height: 1.2; }
.cmnt-qazgeo-popup { display: grid; gap: .18rem; color: #222; font-family: var(--font-sans); font-size: .76rem; }
.cmnt-qazgeo-popup strong { font-family: var(--font-display); font-size: .92rem; }
.cmnt-qazgeo-popup--fallback { position: absolute; inset-block-start: 1rem; inset-inline-start: 1rem; z-index: 1; max-width: min(14rem, calc(100% - 2rem)); padding: .7rem .8rem; border: 1px solid var(--cmnt-rule); background: var(--cmnt-paper); color: var(--cmnt-ink); box-shadow: 0 .35rem 1.2rem color-mix(in srgb, var(--cmnt-ink) 12%, transparent); }

.search-input { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .75rem; max-width: 48rem; margin: 1.5rem 0; padding-bottom: 1.25rem; border-bottom: 1px solid var(--cmnt-rule); }
.input-wrapper { min-width: 0; }
.avds5-input, .avds5-select { width: 100%; min-height: 2.5rem; padding: .5rem .65rem; border: 1px solid var(--cmnt-rule); border-radius: 0; background: transparent; color: var(--cmnt-ink); font: inherit; }
.is-disabled { opacity: .45; pointer-events: none; }
.cmnt-author-card, .cmnt-authors-list-item { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); }
.cmnt-author-avatar { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; background: var(--cmnt-ink); color: var(--cmnt-paper); font-family: var(--font-display); }
.cmnt-author-info, .cmnt-authors-list-body { display: grid; align-content: start; gap: .18rem; }
.cmnt-author-name, .cmnt-authors-list-link { margin: 0; color: var(--cmnt-ink); font-family: var(--font-display); font-size: 1.25rem; text-decoration: none; }
.cmnt-author-role, .cmnt-author-email { margin: 0; color: var(--cmnt-muted); font-size: .8rem; }
.cmnt-author-articles { margin-top: 2rem; }
.cmnt-author-articles-list { display: grid; margin-top: .6rem; border-top: 1px solid var(--cmnt-rule); }
.cmnt-author-article-row { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 1rem; padding: .75rem 0; border-bottom: 1px solid var(--cmnt-rule-subtle); color: inherit; text-decoration: none; }
.cmnt-author-article-date { color: var(--cmnt-muted); font-size: .74rem; }
.cmnt-author-article-title { font-family: var(--font-display); font-size: 1.15rem; line-height: 1.15; }

@media (max-width: 64rem) {
    .cmnt-data-intro, .cmnt-static-intro, .cmnt-static-section-head, .cmnt-qazgeo-layout { grid-template-columns: 1fr; }
    .cmnt-qazgeo-layout { grid-template-areas: "stage" "sidebar" "table"; }
    .cmnt-map-intro { grid-template-columns: 1fr; align-items: start; }
    .cmnt-map-summary { max-width: 36rem; }
    .cmnt-qazgeo-sidebar { display: grid; grid-template-columns: minmax(12rem, .65fr) minmax(0, 1.35fr); gap: 0 1.5rem; }
    .cmnt-qazgeo-sidebar > .cmnt-intel-section-head { grid-column: 1 / -1; }
    .cmnt-qazgeo-sidebar .cmnt-map-index { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cmnt-qazgeo-sidebar .cmnt-map-index > span { grid-column: 1 / -1; }
    .cmnt-qazgeo-selection { align-self: start; margin-top: .35rem; }
    .cmnt-data-actions { justify-content: flex-start; }
    .top-bar { overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin; }
    .top-bar-content { grid-template-columns: 36rem 27rem 7rem; }
    .trending-tags { min-height: 2.8rem; border-top: 1px solid var(--cmnt-rule-subtle); }
}

@media (max-width: 47.99rem) {
    .cmnt-directory-links, .entity-page-aside, .cmnt-podcast-channels, .cmnt-region-grid, .cmnt-map-story-grid, .cmnt-data-catalog, .cmnt-data-method-grid, .cmnt-data-route-list, .cmnt-data-next-release, .dashboard-map-preview { grid-template-columns: 1fr; }
    .cmnt-map-summary { grid-template-columns: 1fr 1fr; }
    .cmnt-qazgeo-preview { grid-template-columns: 1fr; align-items: start; }
    .cmnt-qazgeo-quality { display: grid; justify-items: start; }
    .cmnt-qazgeo-quality[hidden] { display: none; }
    .cmnt-qazgeo-legend { align-items: flex-start; }
    .cmnt-qazgeo-legend-scale { flex-basis: 100%; }
    .cmnt-map-section-head, .cmnt-qazgeo-sidebar .cmnt-intel-section-head, .cmnt-map-table-block .cmnt-intel-section-head { display: grid; grid-template-columns: minmax(0, 1fr); justify-items: start; }
    .cmnt-qazgeo-canvas { aspect-ratio: 4 / 3; }
    .cmnt-qazgeo-canvas[data-map-renderer="svg"] { aspect-ratio: 4 / 3; }
    .cmnt-qazgeo-sidebar { display: block; }
    .cmnt-qazgeo-sidebar .cmnt-map-index { grid-template-columns: 1fr; }
    .cmnt-map-story-row { grid-template-columns: 1fr auto; gap: .2rem .75rem; align-items: start; }
    .cmnt-map-story-row > span { grid-column: 1 / -1; }
    .cmnt-map-story-row strong { font-size: 1rem; }
    .cmnt-stat-strip, .cmnt-indicator-current { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cmnt-stat-strip > div:nth-child(odd), .cmnt-indicator-current > div:nth-child(odd) { border-left: 0; }
    .cmnt-stat-strip > div:nth-child(n + 3), .cmnt-indicator-current > div:nth-child(n + 3) { border-top: 1px solid var(--cmnt-rule-subtle); }
    .cmnt-functional-list li { grid-template-columns: 1fr; gap: .15rem; }
    .cmnt-data-disclosure li { grid-template-columns: 1fr; gap: .15rem; }
    .cmnt-data-intro p { max-width: 100%; }
    .cmnt-data-section-head { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; justify-items: start; }
    .cmnt-data-scroll-hint { display: block; }
    .cmnt-data-scroll-hint + .cmnt-data-table-wrap { margin-top: .3rem; }
    .cmnt-data-table { min-width: 39rem; }
    .cmnt-map-data-table { min-width: 34rem; }
    .cmnt-map-data-table :is(th, td):nth-child(1) { width: 8rem; min-width: 8rem; }
    .cmnt-map-data-table :is(th, td):nth-child(2) { width: 4.75rem; min-width: 4.75rem; }
    .cmnt-map-data-table :is(th, td):nth-child(3) { width: 6.75rem; min-width: 6.75rem; }
    .cmnt-data-next-release, .dashboard-map-preview { align-items: start; gap: .55rem; }
    .cmnt-radio-intro, .cmnt-radio-status, .cmnt-radio-links { grid-template-columns: minmax(0, 1fr); gap: .7rem; }
    .search-input { grid-template-columns: 1fr; }
    .cmnt-author-article-row { grid-template-columns: 1fr; gap: .2rem; }
    .cmnt-404-actions { display: grid; grid-template-columns: minmax(0, 1fr); }
}

/* Reader streams and taxonomies: one dense, semantic public-feed contract. */
.cmnt-stream-shell {
    width: min(100%, 76rem);
    margin-inline: auto;
    padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.cmnt-stream-intro {
    display: grid;
    /* The summary strip carries up to three cells ("Следующая дата" adds a
       date); 18rem clipped it and pushed the last cell past the shell. */
    grid-template-columns: minmax(0, 1fr) minmax(13.5rem, 24rem);
    gap: clamp(1.25rem, 3vw, 2.75rem);
    align-items: end;
    padding: clamp(1.15rem, 2.6vw, 2.1rem) 0 clamp(1rem, 2vw, 1.5rem);
    border-bottom: 2px solid var(--cmnt-ink);
}

.cmnt-stream-backlink {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    margin-top: 1rem;
    color: var(--cmnt-muted);
    font-size: .78rem;
    font-weight: 700;
    text-decoration-thickness: .08em;
    text-underline-offset: .2em;
}

.cmnt-stream-intro .section-title {
    margin: 0 0 .45rem;
}

.cmnt-stream-intro h1 {
    max-width: 22ch;
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(2rem, 3.8vw, 3.2rem);
    font-weight: 650;
    letter-spacing: -.04em;
    line-height: .98;
}

.cmnt-stream-intro h1 + p {
    max-width: 54rem;
    margin: .65rem 0 0;
    color: var(--cmnt-muted);
    font-size: clamp(.86rem, 1.15vw, .98rem);
    line-height: 1.45;
}

.cmnt-stream-summary {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, auto);
    min-width: 0;
    margin: 0;
    border-top: 1px solid var(--cmnt-rule);
}

.cmnt-stream-summary > div {
    min-width: 0;
    padding: .55rem .7rem 0;
    border-left: 1px solid var(--cmnt-rule);
}

.cmnt-stream-summary dt {
    color: var(--cmnt-muted);
    font-size: .64rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.cmnt-stream-summary dd {
    margin: .18rem 0 0;
    font-family: var(--font-display);
    font-size: clamp(1.05rem, 1.7vw, 1.4rem);
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.cmnt-stream-switcher,
.cmnt-stream-filters,
.cmnt-stream-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .45rem;
    min-height: 3.75rem;
    padding: .55rem 0;
    border-bottom: 1px solid var(--cmnt-rule);
}

.cmnt-stream-switcher .avds5-quick-link,
.cmnt-stream-filters .avds5-chip {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    border-radius: 0;
    box-shadow: none;
}

.cmnt-stream-filters .avds5-chip {
    gap: .45rem;
    white-space: nowrap;
}

.cmnt-signal-filter__count {
    color: var(--cmnt-muted);
    font-size: .68rem;
    font-weight: 650;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.cmnt-stream-switcher .is-current,
.cmnt-stream-filters .is-active {
    text-decoration: underline;
    text-decoration-color: var(--cmnt-link);
    text-decoration-thickness: .16em;
    text-underline-offset: .28em;
}

.cmnt-stream-toolbar {
    justify-content: space-between;
    color: var(--cmnt-muted);
    font-size: .75rem;
    font-weight: 700;
}

.cmnt-stream-toolbar .dropdown {
    position: relative;
    min-width: min(100%, 17rem);
}

.cmnt-stream-toolbar .trigger {
    display: flex;
    width: 100%;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .55rem .7rem;
    border: 1px solid var(--cmnt-rule);
    border-radius: 0;
    background: var(--cmnt-paper);
    color: var(--cmnt-ink);
    font: inherit;
}

.cmnt-stream-toolbar .menu {
    position: absolute;
    z-index: 8;
    top: calc(100% + .25rem);
    right: 0;
    display: none;
    min-width: 100%;
    border: 1px solid var(--cmnt-rule);
    background: var(--cmnt-paper);
    box-shadow: 0 .6rem 1.5rem hsl(var(--foreground) / .12);
}

.cmnt-stream-toolbar .dropdown.open .menu,
.cmnt-stream-toolbar .dropdown.is-open .menu,
.cmnt-stream-toolbar .trigger[aria-expanded="true"] + .menu {
    display: grid;
}

.cmnt-stream-toolbar .option {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .55rem .7rem;
    color: var(--cmnt-ink);
    text-decoration: none;
}

.cmnt-stream-toolbar .option + .option {
    border-top: 1px solid var(--cmnt-rule-subtle);
}

.cmnt-stream-toolbar .option:hover,
.cmnt-stream-toolbar .option:focus-visible,
.cmnt-stream-toolbar .option.active {
    background: hsl(var(--muted) / .55);
}

.cmnt-stream {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cmnt-stream__item,
.cmnt-stream-empty {
    border-bottom: 1px solid var(--cmnt-rule);
}

.cmnt-stream-teaser.avds5-document-card {
    display: grid;
    grid-template-columns: minmax(10rem, 12rem) minmax(0, 1fr);
    gap: clamp(.85rem, 2vw, 1.5rem);
    align-items: start;
    min-height: 0;
    padding: clamp(.72rem, 1.2vw, 1rem) 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--cmnt-ink);
}

.cmnt-stream__item:not(.cmnt-stream__item--with-image) .cmnt-stream-teaser {
    grid-template-columns: minmax(0, 1fr);
}

.cmnt-stream__item--compact .cmnt-stream-teaser {
    padding-block: .68rem;
}

.cmnt-stream-teaser__media {
    aspect-ratio: 8 / 5;
    margin: 0;
    overflow: hidden;
    background: hsl(var(--muted) / .55);
}

.cmnt-stream-teaser__media picture,
.cmnt-stream-teaser__media img {
    display: block;
    width: 100%;
    height: 100%;
}

.cmnt-stream-teaser__media img {
    object-fit: cover;
}

.cmnt-stream-teaser__body {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: .25rem;
}

.cmnt-stream-teaser__meta.avds5-document-card__eyebrow {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .35rem .7rem;
    margin: 0;
    color: var(--cmnt-muted);
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .065em;
    line-height: 1.35;
    text-transform: uppercase;
}

.cmnt-stream-teaser__tone {
    color: var(--cmnt-ink);
}

.cmnt-stream-teaser__title.avds5-document-card__title {
    max-width: 56ch;
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(1.16rem, 1.75vw, 1.55rem);
    font-weight: 650;
    letter-spacing: -.022em;
    line-height: 1.12;
}

.cmnt-stream-teaser__title a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: inherit;
    text-decoration: none;
}

.cmnt-stream-teaser__title a:hover {
    text-decoration: underline;
    text-decoration-thickness: .07em;
    text-underline-offset: .13em;
}

.cmnt-stream-teaser__summary.avds5-document-card__summary {
    display: -webkit-box;
    max-width: 68rem;
    overflow: hidden;
    margin: 0;
    color: var(--cmnt-muted);
    font-size: .82rem;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.cmnt-stream-teaser__tags {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem .8rem;
    margin: 0 0 0 auto;
    padding: 0;
    list-style: none;
    text-transform: none;
}

.cmnt-stream-teaser__tags a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: var(--cmnt-muted);
    font-size: .7rem;
    text-decoration-thickness: .07em;
    text-underline-offset: .18em;
}

.cmnt-stream-empty {
    padding: clamp(2rem, 5vw, 4rem) 0;
    color: var(--cmnt-muted);
    font-family: var(--font-display);
    font-size: clamp(1.2rem, 2.5vw, 1.65rem);
}

.cmnt-stream-pagination {
    display: grid;
    grid-template-columns: minmax(6rem, 1fr) auto minmax(6rem, 1fr);
    gap: .75rem;
    align-items: center;
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--cmnt-rule);
}

.cmnt-stream-pagination__step,
.cmnt-stream-pagination__pages :is(a, span) {
    display: inline-flex;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    color: var(--cmnt-ink);
}

.cmnt-stream-pagination__step {
    justify-self: start;
    gap: .35rem;
}

.cmnt-stream-pagination__step:last-child {
    justify-self: end;
}

.cmnt-stream-pagination__pages {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

.cmnt-stream-pagination__pages [aria-current="page"] {
    border-bottom: 2px solid var(--cmnt-link);
    font-weight: 800;
}

.cmnt-stream-pagination__caption {
    margin: .35rem 0 0;
    color: var(--cmnt-muted);
    font-size: .68rem;
    text-align: center;
}

.cmnt-stream-section,
.cmnt-stream-related,
.cmnt-taxonomy-index {
    margin-top: clamp(1.75rem, 4vw, 3rem);
}

.cmnt-stream-section__head,
.cmnt-stream-related__head {
    display: flex;
    min-height: 3rem;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid var(--cmnt-ink);
}

.cmnt-stream-section__head h2,
.cmnt-stream-related__head h2 {
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(1.35rem, 3vw, 2rem);
    letter-spacing: -.025em;
}

.cmnt-stream-section__head :is(span, a),
.cmnt-stream-related__head a {
    color: var(--cmnt-muted);
    font-size: .7rem;
}

.cmnt-stream-related__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0 1.25rem;
    margin: 0;
    padding: .6rem 0;
    border-bottom: 1px solid var(--cmnt-rule);
    list-style: none;
}

.cmnt-stream-related__links a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: .35rem;
    color: var(--cmnt-ink);
}

.cmnt-stream-related__links span {
    color: var(--cmnt-muted);
    font-size: .68rem;
}

.cmnt-briefing-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 clamp(1.5rem, 4vw, 3rem);
    margin-top: clamp(2rem, 5vw, 3.5rem);
}

/* Keep the shared AVDS document-card list, with spacing replacing repeated rules
   only on the briefing route. */
.cmnt-briefing-page .cmnt-stream-section {
    margin-top: clamp(1.35rem, 2.5vw, 2rem);
}

.cmnt-briefing-page .cmnt-briefing-stream {
    display: grid;
    gap: clamp(.55rem, 1.2vw, .9rem);
}

.cmnt-briefing-page .cmnt-briefing-stream > .cmnt-stream__item {
    border: 0;
}

.cmnt-briefing-page .cmnt-briefing-stream .cmnt-stream-teaser {
    padding-block: clamp(.6rem, 1.15vw, .9rem);
}

.cmnt-briefing-facts--single {
    grid-template-columns: minmax(0, 1fr);
}

.cmnt-briefing-facts__column {
    min-width: 0;
}

.cmnt-briefing-facts__column > section + section {
    margin-top: 1rem;
}

.cmnt-briefing-facts__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cmnt-briefing-facts__list li,
.cmnt-briefing-release {
    margin: 0;
    border-bottom: 1px solid var(--cmnt-rule-subtle);
}

.cmnt-briefing-facts__list a,
.cmnt-briefing-release a {
    display: grid;
    min-height: 4.5rem;
    align-content: center;
    gap: .25rem;
    padding: .7rem 0;
    color: var(--cmnt-ink);
    text-decoration: none;
}

.cmnt-briefing-facts__list strong,
.cmnt-briefing-release strong {
    font-family: var(--font-display);
    font-size: 1.15rem;
    line-height: 1.15;
}

.cmnt-briefing-facts__list span,
.cmnt-briefing-release span {
    color: var(--cmnt-muted);
    font-size: .72rem;
    line-height: 1.4;
}

.cmnt-briefing-sources {
    margin-top: clamp(2rem, 4vw, 3rem);
    padding-top: .75rem;
    border-top: 1px solid var(--cmnt-ink);
}

.cmnt-briefing-sources__head {
    display: flex;
    min-height: 2.5rem;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.cmnt-briefing-sources__head h2 {
    margin: 0;
    font-family: var(--font-display);
    font-size: 1.2rem;
    letter-spacing: -.02em;
}

.cmnt-briefing-sources__head p {
    margin: 0;
    color: var(--cmnt-muted);
    font-size: .68rem;
}

.cmnt-briefing-sources__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
    border-top: 1px solid var(--cmnt-rule-subtle);
}

.cmnt-briefing-sources__list > div {
    display: grid;
    grid-template-columns: minmax(5.5rem, .65fr) minmax(0, 1fr);
    gap: .75rem;
    padding: .55rem 0;
    border-bottom: 1px solid var(--cmnt-rule-subtle);
}

.cmnt-briefing-sources__list > div:nth-child(odd) {
    padding-right: 1.25rem;
}

.cmnt-briefing-sources__list > div:nth-child(even) {
    padding-left: 1.25rem;
    border-left: 1px solid var(--cmnt-rule-subtle);
}

.cmnt-briefing-sources__list dt {
    color: var(--cmnt-muted);
    font-size: .64rem;
    font-weight: 750;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.cmnt-briefing-sources__list dd {
    min-width: 0;
    margin: 0;
    font-size: .72rem;
    line-height: 1.4;
}

.cmnt-tag-search-field {
    position: relative;
}

.cmnt-tag-search-field__icon {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: .85rem;
    width: .75rem;
    height: .75rem;
    border: 1.5px solid currentColor;
    border-radius: 50%;
    color: var(--cmnt-muted);
    pointer-events: none;
    transform: translateY(-58%);
}

.cmnt-tag-search-field__icon::after {
    position: absolute;
    right: -.32rem;
    bottom: -.2rem;
    width: .42rem;
    border-top: 1.5px solid currentColor;
    content: "";
    transform: rotate(45deg);
    transform-origin: left center;
}

.cmnt-tag-search-field .avds5-input {
    min-height: 44px;
    padding-left: 2.55rem;
}

.search-input > .avds5-button {
    min-height: 44px;
}

.cmnt-taxonomy-index {
    margin-bottom: 0;
    padding: 0;
    border-top: 1px solid var(--cmnt-ink);
    list-style: none;
}

.cmnt-taxonomy-group {
    display: grid;
    grid-template-columns: minmax(3rem, 5rem) minmax(0, 1fr);
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid var(--cmnt-rule);
}

.cmnt-taxonomy-group__letter {
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(1.8rem, 4vw, 3rem);
    font-weight: 500;
    line-height: 1;
}

.cmnt-taxonomy-group__tags {
    display: flex;
    flex-wrap: wrap;
    gap: .2rem 1.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.cmnt-taxonomy-group__tags a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: .35rem;
    color: var(--cmnt-ink);
    font-size: .9rem;
}

.cmnt-taxonomy-group__name {
    color: inherit;
    font-size: .9rem;
}

.cmnt-taxonomy-group__count {
    color: var(--cmnt-muted);
    font-size: .68rem;
    font-variant-numeric: tabular-nums;
}

/* Search: one editorial stream with progressive disclosure for refinements. */
.cmnt-search-shell {
    width: min(100%, 76rem);
    margin-inline: auto;
    padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.cmnt-search-form {
    padding: 1rem 0 1.1rem;
    border-bottom: 1px solid var(--cmnt-rule);
}

.cmnt-search-query-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .65rem;
    max-width: 60rem;
}

.cmnt-search-field {
    position: relative;
    min-width: 0;
}

.cmnt-search-field__icon {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: .9rem;
    width: .85rem;
    aspect-ratio: 1;
    transform: translateY(-58%);
    border: 1.5px solid var(--cmnt-muted);
    border-radius: 50%;
    pointer-events: none;
}

.cmnt-search-field__icon::after {
    position: absolute;
    inset-block-start: .62rem;
    inset-inline-start: .64rem;
    width: .4rem;
    block-size: 1.5px;
    transform: rotate(45deg);
    background: var(--cmnt-muted);
    content: "";
}

.cmnt-search-field .avds5-input {
    min-height: 48px;
    padding-inline-start: 2.55rem;
    font-size: 1rem;
}

.cmnt-search-query-row .avds5-button {
    min-width: 7rem;
    min-height: 48px;
}

.cmnt-search-refine {
    max-width: 60rem;
    margin-top: .45rem;
}

.cmnt-search-refine > summary {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    color: var(--cmnt-link);
    cursor: pointer;
    font-size: .78rem;
    font-weight: 700;
}

.cmnt-search-refine[open] > summary { margin-bottom: .55rem; }

.cmnt-search-facets {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
}

.cmnt-search-facets label {
    display: grid;
    gap: .3rem;
    color: var(--cmnt-muted);
    font-size: .72rem;
    font-weight: 700;
}

.cmnt-search-facets .avds5-select { min-height: 44px; }

.cmnt-search-start {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, .72fr);
    gap: clamp(1.5rem, 5vw, 4rem);
    padding: clamp(1.75rem, 5vw, 3.5rem) 0;
    border-bottom: 1px solid var(--cmnt-rule);
}

.cmnt-search-start h2,
.cmnt-search-topics h2,
.cmnt-search-result-head h2,
.cmnt-search-empty h3,
.cmnt-source-context__head h2 {
    margin: 0;
    font-family: var(--font-display);
    letter-spacing: -.025em;
}

.cmnt-search-start > div:first-child h2 {
    max-width: 19ch;
    font-size: clamp(1.55rem, 3vw, 2.25rem);
    line-height: 1.06;
}

.cmnt-search-start > div:first-child > p:last-child {
    max-width: 45rem;
    margin: .65rem 0 0;
    color: var(--cmnt-muted);
    font-size: .9rem;
    line-height: 1.5;
}

.cmnt-search-topics h2 {
    padding-bottom: .45rem;
    border-bottom: 1px solid var(--cmnt-ink);
    font-size: 1.2rem;
}

.cmnt-search-topics ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cmnt-search-topics a {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid var(--cmnt-rule-subtle);
    color: var(--cmnt-ink);
    font-size: .82rem;
    text-decoration: none;
}

.cmnt-search-topics a > span:last-child {
    color: var(--cmnt-muted);
    font-family: var(--font-mono);
    font-size: .68rem;
    font-variant-numeric: tabular-nums;
}

.cmnt-search-result-section { padding-top: clamp(1.5rem, 4vw, 2.75rem); }

.cmnt-search-result-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.25rem;
    padding-bottom: .75rem;
}

.cmnt-search-result-head h2 {
    max-width: 34ch;
    font-size: clamp(1.5rem, 3.2vw, 2.35rem);
    line-height: 1.06;
}

.cmnt-search-result-head h2 span {
    overflow-wrap: break-word;
    hyphens: auto;
}

.cmnt-search-result-head > p {
    flex: 0 0 auto;
    margin: 0 0 .12rem;
    color: var(--cmnt-muted);
    font-family: var(--font-mono);
    font-size: .72rem;
    font-variant-numeric: tabular-nums;
}

.cmnt-search-results { margin-top: 0; }

.cmnt-search-results mark.search-highlight {
    padding: 0 .08em;
    background: color-mix(in srgb, var(--cmnt-link) 18%, transparent);
    color: inherit;
}

.cmnt-search-empty {
    max-width: 48rem;
    padding: clamp(1.5rem, 4vw, 2.5rem) 0;
    border-top: 1px solid var(--cmnt-ink);
    border-bottom: 1px solid var(--cmnt-rule);
}

.cmnt-search-empty h3 { font-size: clamp(1.35rem, 3vw, 1.85rem); }
.cmnt-search-empty p { margin: .55rem 0 0; color: var(--cmnt-muted); }

.cmnt-search-pagination { margin-top: 1.25rem; }

.cmnt-source-context {
    margin-top: clamp(2rem, 5vw, 3.5rem);
    padding-top: .75rem;
    border-top: 1px solid var(--cmnt-ink);
}

.cmnt-source-context__head {
    display: flex;
    min-height: 3rem;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.cmnt-source-context__head h2 { font-size: clamp(1.3rem, 3vw, 1.85rem); }
.cmnt-source-context__head > span { color: var(--cmnt-muted); font-family: var(--font-mono); font-size: .68rem; }
.cmnt-source-context__list { border-top: 1px solid var(--cmnt-rule); }

.cmnt-source-context__item {
    display: grid;
    grid-template-columns: minmax(10rem, 14rem) minmax(0, 1fr) auto;
    gap: 1rem;
    min-height: 4.5rem;
    align-items: center;
    padding: .65rem 0;
    border-bottom: 1px solid var(--cmnt-rule-subtle);
    color: var(--cmnt-ink);
    text-decoration: none;
}

.cmnt-source-context__meta { display: grid; gap: .12rem; color: var(--cmnt-muted); font-size: .68rem; }
.cmnt-source-context__meta strong { color: var(--cmnt-ink); font-size: .74rem; }
.cmnt-source-context__title { font-family: var(--font-display); font-size: 1.05rem; line-height: 1.25; }
.cmnt-source-context__action { color: var(--cmnt-link); font-size: .72rem; font-weight: 700; }

@media (max-width: 64rem) {
    .cmnt-stream-shell { width: min(100%, 60rem); }
    .cmnt-stream-intro { grid-template-columns: minmax(0, 1fr); }
    .cmnt-stream-summary { justify-self: start; }
    .cmnt-search-start { grid-template-columns: minmax(0, 1fr); }
}

@media (min-width: 48rem) {
    .cmnt-stream[data-stream-surface="allnews"] .cmnt-stream__item:not(.cmnt-stream__item--with-image) .cmnt-stream-teaser__body {
        grid-template-columns: minmax(0, 1fr);
        column-gap: 0;
    }

    .cmnt-stream[data-stream-surface="allnews"] .cmnt-stream__item:not(.cmnt-stream__item--with-image) .cmnt-stream-teaser__meta {
        grid-column: auto;
        grid-row: auto;
        padding-top: 0;
    }

    .cmnt-stream[data-stream-surface="allnews"] .cmnt-stream__item:not(.cmnt-stream__item--with-image) :is(
        .cmnt-stream-teaser__title,
        .cmnt-stream-teaser__summary
    ) {
        grid-column: auto;
    }

    .cmnt-stream__item:not(.cmnt-stream__item--with-image) .cmnt-stream-teaser__body {
        grid-template-columns: minmax(8.5rem, 11.5rem) minmax(0, 1fr);
        column-gap: clamp(1.25rem, 3vw, 2.75rem);
        row-gap: .2rem;
    }

    .cmnt-stream__item:not(.cmnt-stream__item--with-image) .cmnt-stream-teaser__meta {
        grid-column: 1;
        grid-row: 1 / span 2;
        padding-top: .42rem;
    }

    .cmnt-stream__item:not(.cmnt-stream__item--with-image) :is(
        .cmnt-stream-teaser__title,
        .cmnt-stream-teaser__summary
    ) {
        grid-column: 2;
    }
}

@media (max-width: 47.99rem) {
    .cmnt-stream-intro {
        gap: .9rem;
        padding-top: 1.1rem;
    }

    .cmnt-stream-intro h1 {
        max-width: none;
        font-size: clamp(1.9rem, 8.5vw, 2.55rem);
    }

    .cmnt-stream-summary {
        grid-auto-flow: row;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .cmnt-stream-summary > div { padding-left: .6rem; }

    .cmnt-stream-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .cmnt-stream-toolbar .dropdown { width: 100%; }

    .cmnt-stream-switcher {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .2rem .75rem;
    }

    .cmnt-stream-switcher .avds5-quick-link {
        min-width: 0;
        justify-content: flex-start;
    }

    .cmnt-stream-filters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .2rem .5rem;
    }

    .cmnt-stream-filters .avds5-chip {
        width: 100%;
        min-width: 0;
        justify-content: space-between;
    }

    .cmnt-stream-teaser.avds5-document-card {
        grid-template-columns: minmax(0, 1fr);
        gap: .6rem;
    }

    .cmnt-stream-teaser__media { aspect-ratio: 16 / 9; }

    .cmnt-stream-teaser__summary.avds5-document-card__summary {
        -webkit-line-clamp: 1;
    }

    .cmnt-stream-pagination {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cmnt-stream-pagination__pages {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .cmnt-stream-pagination__step { grid-row: 2; }

    .cmnt-stream-pagination__step:last-child { justify-self: end; }

    .cmnt-taxonomy-group {
        grid-template-columns: minmax(2.25rem, 3rem) minmax(0, 1fr);
        gap: .65rem;
    }

    .cmnt-taxonomy-group__tags { gap-inline: .8rem; }

    .cmnt-briefing-facts,
    .cmnt-briefing-sources__list {
        grid-template-columns: minmax(0, 1fr);
    }

    .cmnt-briefing-sources__head {
        display: grid;
        gap: .25rem;
        padding-bottom: .55rem;
    }

    .cmnt-briefing-sources__list > div:nth-child(n) {
        padding-inline: 0;
        border-left: 0;
    }

    .cmnt-stream-section__head,
    .cmnt-stream-related__head { align-items: flex-end; }

    .cmnt-search-query-row {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .4rem;
    }

    .cmnt-search-query-row .avds5-button {
        min-width: 4.75rem;
        padding-inline: .7rem;
    }

    .cmnt-search-facets { grid-template-columns: minmax(0, 1fr); }
    .cmnt-search-result-head { display: grid; gap: .35rem; }
    .cmnt-search-result-head > p { margin: 0; }
    .cmnt-source-context__head { display: grid; gap: .25rem; padding-bottom: .55rem; }
    .cmnt-source-context__item { grid-template-columns: minmax(0, 1fr); gap: .35rem; }
    .cmnt-source-context__action { min-height: 44px; display: inline-flex; align-items: center; }
}

/* Category rubric pane: the reader-facing activity sparkline and the market or
   macro digest that belongs to the open rubric. The pane renders the published
   display string from /api/dashboard/data/ and keeps the same honesty contract
   as the top bar: a stale or missing observation is never replaced by a zero
   or by a forecast, it is simply shown with its own date. */
.sparkline-standalone {
    --accent-red: var(--cmnt-link);
    display: grid;
    gap: .4rem;
    margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
    padding: .95rem 1.1rem 1rem;
    background: var(--cmnt-surface);
    border: 1px solid var(--cmnt-rule-subtle);
}

.sparkline-standalone .sparkline-head { margin: 0; }
.sparkline-container { display: grid; gap: .35rem; }
.sparkline-svg { width: 100%; height: 3rem; }
.sparkline-label { color: var(--cmnt-muted); font-size: .74rem; line-height: 1.35; }

.cat-data-widget {
    display: grid;
    gap: .35rem;
    margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem);
    padding: .95rem 1.1rem 1rem;
    background: var(--cmnt-surface);
    border: 1px solid var(--cmnt-rule-subtle);
}

.cat-data-widget > .section-title { margin: 0; }
.cat-widget-content { display: grid; gap: .1rem; min-height: 2.5rem; }
.cat-widget-section { display: grid; gap: .1rem; margin-top: .4rem; }
.cat-widget-section .sparkline-head { margin: 0; }

.cat-widget-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    padding: .45rem 0;
    border-bottom: 1px solid var(--cmnt-rule-subtle);
}

.cat-widget-row:last-child { border-bottom: 0; }
.cat-widget-label { min-width: 0; color: var(--cmnt-muted); font-size: .82rem; }
.cat-widget-reading { display: grid; flex: 0 0 auto; gap: .1rem; justify-items: end; }
.cat-widget-value {
    color: var(--cmnt-ink);
    font-family: var(--font-mono);
    font-size: .96rem;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
}

/* Same freshness vocabulary as the top bar: a stale observation keeps its own
   date and says so, so a months-old print is never read as today's value. */
.cat-widget-meta { color: var(--cmnt-muted); font-size: .66rem; line-height: 1.25; white-space: nowrap; }
.cat-widget-meta--fresh { color: var(--cmnt-link); }
.cat-widget-meta--stale, .cat-widget-meta--degraded { text-decoration: underline; text-decoration-style: dotted; text-underline-offset: .18em; }

.cat-widget-state, .cat-widget-note { margin: 0; color: var(--cmnt-muted); font-size: .78rem; line-height: 1.4; }
.cat-widget-note { font-style: italic; }

.cat-tag-cloud { display: flex; flex-wrap: wrap; gap: .4rem; }
.cat-tag-link {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    padding: .3rem .55rem;
    color: var(--cmnt-ink);
    font-size: .78rem;
    line-height: 1.2;
    text-decoration: none;
    border: 1px solid var(--cmnt-rule);
}
.cat-tag-link:hover { color: var(--cmnt-link); border-color: var(--cmnt-link); }
.cat-tag-link--soft { color: var(--cmnt-muted); }
.cat-tag-link--medium { font-size: .85rem; }
.cat-tag-link--strong { font-size: .93rem; font-weight: 650; }
.cat-tag-link sup { margin-left: .2rem; color: var(--cmnt-muted); font-size: .6rem; }
.dash-down { color: var(--cmnt-link); }

@media (max-width: 47.99rem) {
    .sparkline-standalone, .cat-data-widget { padding: .8rem .85rem .9rem; }
    .cat-widget-label { font-size: .78rem; }
    .cat-widget-value { font-size: .9rem; }
}

/* Approved editorial copy retains the existing reading measure and typography. */
.cmnt-editorial-copy { max-width: var(--cmnt-reading, 48rem); padding-top: 1.5rem; }
.cmnt-editorial-copy h2 { margin: 1.75rem 0 .75rem; font-family: var(--font-display); line-height: 1.2; }
.cmnt-editorial-copy p { margin: 0 0 1rem; line-height: 1.65; }
.cmnt-editorial-copy a { text-decoration: underline; text-underline-offset: .15em; }
.cmnt-static-intro:has(> h1:only-child) { grid-template-columns: 1fr; }

/* Featured stories: native scrolling remains usable without JavaScript. */
.cmnt-featured__track { display: flex; align-items: flex-start; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: thin; }
.cmnt-featured__slide { flex: 0 0 100%; min-width: 0; scroll-snap-align: start; scroll-snap-stop: always; display: flex; flex-direction: column; gap: .75rem; padding-bottom: .4rem; }
/* Все слайды участвуют в расчёте высоты, но доступен только выбранный. */
.cmnt-home__lead[data-featured] { position: relative; }
.cmnt-featured__track--slider { display: grid; overflow: hidden; scroll-snap-type: none; touch-action: pan-y pinch-zoom; }
.cmnt-featured__track--slider .cmnt-featured__slide { grid-area: 1 / 1; visibility: hidden; pointer-events: none; }
.cmnt-featured__track--slider .cmnt-featured__slide.is-active { visibility: visible; pointer-events: auto; animation: cmnt-featured-enter 160ms ease-out; }
.cmnt-featured__track:focus-visible { outline: none; }
.cmnt-featured__track:focus-visible ~ .cmnt-featured__controls button:not(:disabled) { outline: 2px solid white; outline-offset: 3px; }
@keyframes cmnt-featured-enter { from { opacity: .6; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .cmnt-featured__track--slider .cmnt-featured__slide.is-active { animation: none; } }
.cmnt-featured__figure { position: relative; margin: 0 0 .25rem; }
.cmnt-featured__figure img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.cmnt-featured__category { position: absolute; top: .65rem; left: .65rem; max-width: calc(100% - 5rem); padding: .25rem .5rem; background: rgb(0 0 0 / 55%); color: #fff; font-size: .7rem; line-height: 1.4; }
.cmnt-featured__figure figcaption { position: absolute; bottom: .4rem; right: .5rem; max-width: calc(100% - 1rem); margin: 0; padding: .15rem .35rem; background: rgb(0 0 0 / 50%); color: #eee; font-size: .625rem; line-height: 1.4; }
.cmnt-featured__figure figcaption a { color: inherit; text-decoration: none; }
.cmnt-featured__controls { position: absolute; top: 0; left: 0; width: 100%; aspect-ratio: 16 / 9; display: flex; justify-content: space-between; align-items: center; padding: .65rem; pointer-events: none; color: #fff; font-size: .7rem; }
.cmnt-featured__controls[hidden] { display: none; }
.cmnt-featured__controls [data-counter] { position: absolute; top: .65rem; right: .65rem; padding: .25rem .5rem; background: rgb(0 0 0 / 55%); line-height: 1.4; }
.cmnt-featured__controls button { width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: rgb(0 0 0 / 55%); color: #fff; cursor: pointer; font-size: 1.35rem; pointer-events: auto; }
.cmnt-featured__controls button:disabled { visibility: hidden; pointer-events: none; }
.cmnt-featured__controls button:focus-visible { outline: 2px solid white; outline-offset: 3px; }
.cmnt-home__lead-deck { max-width: none; }
.cmnt-home__front--without-feature { grid-template-areas: "desks agenda"; grid-template-rows: auto; }
@media (max-width: 47.99rem) { .cmnt-home__front--without-feature { grid-template-areas: "agenda" "desks"; } }

@media (max-width: 24rem) {
    .cmnt-footer__brand { flex-wrap: wrap; gap: .25rem; }
    .cmnt-footer__brand span { font-size: 1rem; }
}
