/* VARI Contemporary Institute — intelligence and editorial surfaces
   Presentation-only overrides. No workflow, copy, or navigation changes. */

:root {
  --vi-paper: #f2f3ee;
  --vi-surface: #fafbf7;
  --vi-white: #fff;
  --vi-ink: #17211d;
  --vi-muted: #56635d;
  --vi-faint: #64716b;
  --vi-green: #145a50;
  --vi-green-hover: #0f493f;
  --vi-green-soft: #e5eeea;
  --vi-line: #d9deda;
  --vi-line-strong: #bfc8c3;
  --vi-alert: #a54835;
  --vi-warn: #a46524;
  --vi-focus: #167568;
  --vi-radius: 6px;
  --vi-font: "Inter", "Noto Sans SC", "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;
  --vi-serif: "Noto Serif SC", "Songti SC", "STSong", Georgia, serif;
  --vi-shadow: 0 12px 30px rgba(23, 33, 29, .055);
}

body.vari-dashboard,
body.vari-intelligence,
body.vari-broadcast,
body.vari-broadcast-studio,
body.subscribe-page,
body.vari-private {
  background: var(--vi-paper) !important;
  color: var(--vi-ink) !important;
  font-family: var(--vi-font) !important;
  text-rendering: optimizeLegibility;
}

body.vari-dashboard::before,
body.vari-dashboard::after,
body.vari-intelligence::before,
body.vari-intelligence::after,
body.vari-broadcast::before,
body.vari-broadcast::after,
body.vari-broadcast-studio::before,
body.vari-broadcast-studio::after { display: none !important; }

body.vari-dashboard *, body.vari-intelligence *, body.vari-broadcast *,
body.vari-broadcast-studio *, body.subscribe-page *, body.vari-private * { box-sizing: border-box; }

body.vari-dashboard a, body.vari-intelligence a, body.vari-broadcast a,
body.vari-broadcast-studio a, body.subscribe-page a, body.vari-private a {
  text-underline-offset: .2em;
  text-decoration-thickness: 1px;
}

body.vari-dashboard :is(button, a, input, select, textarea, summary):focus-visible,
body.vari-intelligence :is(button, a, input, select, textarea, summary):focus-visible,
body.vari-broadcast :is(button, a, input, select, textarea, summary):focus-visible,
body.vari-broadcast-studio :is(button, a, input, select, textarea, summary):focus-visible,
body.subscribe-page :is(button, a, input, select, textarea, summary):focus-visible,
body.vari-private :is(button, a, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--vi-focus) !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
}

body :is(button, input, select, textarea):disabled {
  cursor: not-allowed !important;
  opacity: .48 !important;
}

/* Shared institutional navigation */
body.vari-ui :is(.topbar, .broadcast-topbar, .studio-top),
body.vari-private .private-top,
body.subscribe-page .public-topbar {
  background: rgba(250, 251, 247, .96) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--vi-line) !important;
  box-shadow: none !important;
  color: var(--vi-ink) !important;
  backdrop-filter: blur(14px);
}

body.vari-ui :is(.topbar-inner, .top-inner) { max-width: 1680px !important; }
body.vari-ui :is(.brand, .studio-top .brand) { color: var(--vi-ink) !important; }
body.vari-ui .brand-mark,
body.vari-broadcast-studio .brand > span {
  width: 76px !important;
  min-width: 76px !important;
  height: 34px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
}
body.vari-ui .brand-mark::after,
body.vari-broadcast-studio .brand > span::after {
  content: "VARI" !important;
  color: var(--vi-green) !important;
  font: 900 27px/1 var(--vi-font) !important;
  letter-spacing: -.05em !important;
}
body.vari-ui .brand small,
body.vari-broadcast-studio .brand small { color: var(--vi-muted) !important; }

body.vari-ui :is(.main-nav, .detail-nav, .broadcast-topbar nav, .studio-top nav) :is(a, button),
body.vari-broadcast-studio .studio-top nav a {
  background: transparent !important;
  border-color: transparent !important;
  color: var(--vi-muted) !important;
  box-shadow: none !important;
}
body.vari-ui :is(.main-nav, .detail-nav, .broadcast-topbar nav, .studio-top nav) :is(a, button):hover,
body.vari-ui :is(.main-nav, .detail-nav, .broadcast-topbar nav, .studio-top nav) :is(a, button).active,
body.vari-broadcast-studio .studio-top nav a:hover,
body.vari-broadcast-studio .studio-top nav a.active {
  border-bottom-color: var(--vi-green) !important;
  color: var(--vi-green) !important;
}
body.vari-ui :is(.live-dot, .digest-live, .live) { color: var(--vi-muted) !important; }
body.vari-ui :is(.live-dot, .digest-live, .live) i { background: var(--vi-green) !important; box-shadow: none !important; }

/* Shared surface grammar */
body.vari-ui :is(.card, .panel, .detail-card),
body.vari-private :is(.private-card, .private-empty),
body.vari-broadcast-studio :is(.panel, dialog) {
  background: var(--vi-surface) !important;
  border: 1px solid var(--vi-line) !important;
  border-radius: var(--vi-radius) !important;
  box-shadow: none !important;
}
body.vari-ui :is(.card, .panel, .detail-card):hover { box-shadow: none !important; transform: none !important; }

body.vari-ui :is(.eyebrow, .kicker, .article-workspace-kicker),
body.vari-broadcast-studio :is(.eyebrow, .panel header > span, dialog header span),
body.subscribe-page :is(.kicker, .section-head small),
body.vari-private .private-kicker {
  color: var(--vi-green) !important;
  font-size: 10px !important;
  font-weight: 750 !important;
  letter-spacing: .14em !important;
}

body.vari-ui :is(.solid-btn, .primary-btn, .save-btn, .primary-selection-btn),
body.vari-broadcast-studio :is(.primary, .studio-hero button.primary),
body.vari-private button[type="submit"],
body.subscribe-page :is(.email-wrap button, .primary-button) {
  border: 1px solid var(--vi-green) !important;
  border-radius: 4px !important;
  background: var(--vi-green) !important;
  box-shadow: none !important;
  color: #fff !important;
}
body.vari-ui :is(.solid-btn, .primary-btn, .save-btn, .primary-selection-btn):hover,
body.vari-broadcast-studio .primary:hover,
body.vari-private button[type="submit"]:hover,
body.subscribe-page :is(.email-wrap button, .primary-button):hover { background: var(--vi-green-hover) !important; }

body.vari-ui :is(.outline-btn, .ghost-btn, .text-btn, button),
body.vari-broadcast-studio :is(.workflow-actions button, dialog button),
body.vari-private button {
  border-radius: 4px !important;
  box-shadow: none !important;
}

body.vari-ui :is(input, select, textarea),
body.vari-broadcast-studio :is(input, select, textarea),
body.subscribe-page :is(input, select, textarea),
body.vari-private :is(input:not([type="checkbox"]), select, textarea) {
  border-color: var(--vi-line-strong) !important;
  border-radius: 4px !important;
  background: #fff !important;
  color: var(--vi-ink) !important;
}

/* Intelligence overview / dashboard */
body.vari-dashboard .workspace {
  width: min(1680px, calc(100% - 64px)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-top: 42px !important;
}
body.vari-dashboard .page-head {
  align-items: end !important;
  padding: 18px 0 30px !important;
  border-bottom: 1px solid var(--vi-line-strong) !important;
  background: transparent !important;
}
body.vari-dashboard .page-head h1 {
  max-width: 900px;
  margin: 9px 0 8px !important;
  color: var(--vi-ink) !important;
  font-size: clamp(38px, 4.6vw, 72px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.045em !important;
}
body.vari-dashboard .page-head p { max-width: 850px; color: var(--vi-muted) !important; font-size: 15px !important; }
body.vari-dashboard .update-pill {
  min-width: 220px !important;
  padding: 14px 0 14px 20px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--vi-green) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.vari-dashboard .metric-grid {
  gap: 0 !important;
  margin: 0 0 34px !important;
  border-bottom: 1px solid var(--vi-line) !important;
}
body.vari-dashboard .metric-grid > * {
  min-height: 108px !important;
  padding: 23px 20px !important;
  border: 0 !important;
  border-right: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.vari-dashboard .metric-grid > *:last-child { border-right: 0 !important; }
body.vari-dashboard .metric-grid strong,
body.vari-dashboard .metric-grid b { color: var(--vi-ink) !important; font-size: 30px !important; }
body.vari-dashboard .metric-grid span,
body.vari-dashboard .metric-grid small { color: var(--vi-muted) !important; }

body.vari-dashboard .dashboard-grid { gap: 24px !important; }
body.vari-dashboard :is(.feed-shell, .hot-topics-card, .feed-context-card, .high-risk-card) { overflow: visible !important; }
body.vari-dashboard .card-head {
  min-height: 62px !important;
  padding: 15px 18px !important;
  border-bottom: 1px solid var(--vi-line) !important;
  background: transparent !important;
}
body.vari-dashboard .card-head h2 { color: var(--vi-ink) !important; }
body.vari-dashboard :is(.feed-mode-tabs, .seg-tabs) {
  gap: 22px !important;
  padding-inline: 18px !important;
  border-bottom: 1px solid var(--vi-line) !important;
  background: transparent !important;
}
body.vari-dashboard :is(.feed-mode-tabs, .seg-tabs) button {
  padding: 13px 0 !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  background: transparent !important;
  color: var(--vi-muted) !important;
}
body.vari-dashboard :is(.feed-mode-tabs, .seg-tabs) button:hover,
body.vari-dashboard :is(.feed-mode-tabs, .seg-tabs) button.active {
  border-bottom-color: var(--vi-green) !important;
  color: var(--vi-green) !important;
}
body.vari-dashboard .intel-list { gap: 0 !important; }
body.vari-dashboard .intel-row,
body.vari-dashboard .intel-row.v29 {
  margin: 0 !important;
  padding: 17px 18px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: background-color .15s ease !important;
}
body.vari-dashboard .intel-row:hover,
body.vari-dashboard .intel-row.v29:hover { background: var(--vi-green-soft) !important; transform: none !important; }
body.vari-dashboard .intel-row :is(h3, a) { color: var(--vi-ink) !important; }
body.vari-dashboard .intel-row :is(p, small, .intel-meta) { color: var(--vi-muted) !important; }
body.vari-dashboard .intel-preview,
body.vari-dashboard .intel-preview img { border-radius: 2px !important; }
body.vari-dashboard :is(.badge, .tag, .chip) { border-radius: 2px !important; }
body.vari-dashboard .feed-footer { border-top: 0 !important; background: transparent !important; }
body.vari-dashboard .feed-context-card { position: sticky !important; top: 86px !important; }
body.vari-dashboard :is(.hot-topic-item, .high-risk-item, .quality-grid > *, .research-latest > *) {
  border-radius: 2px !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Intelligence detail: reading dossier */
body.vari-intelligence .detail-workspace {
  width: min(1480px, calc(100% - 64px)) !important;
  max-width: none !important;
  padding: 32px 0 84px !important;
}
body.vari-intelligence .breadcrumb { color: var(--vi-faint) !important; }
body.vari-intelligence .breadcrumb a { color: var(--vi-green) !important; }
body.vari-intelligence .detail-hero {
  min-height: 270px !important;
  align-items: end !important;
  padding: 42px 46px !important;
  border: 1px solid var(--vi-line-strong) !important;
  border-radius: var(--vi-radius) !important;
  background: var(--vi-surface) !important;
  box-shadow: none !important;
  color: var(--vi-ink) !important;
}
body.vari-intelligence .detail-hero h1 {
  max-width: 1000px;
  color: var(--vi-ink) !important;
  font-size: clamp(30px, 3.2vw, 50px) !important;
  line-height: 1.25 !important;
  letter-spacing: -.035em !important;
}
body.vari-intelligence .detail-hero :is(p, .original-title) { color: var(--vi-muted) !important; }
body.vari-intelligence .detail-hero .badge {
  border: 1px solid var(--vi-line-strong) !important;
  border-radius: 2px !important;
  background: transparent !important;
  color: var(--vi-green) !important;
}
body.vari-intelligence .hero-actions .outline-btn { border-color: var(--vi-line-strong) !important; color: var(--vi-green) !important; }
body.vari-intelligence .detail-grid { grid-template-columns: minmax(0, 1fr) 330px !important; gap: 26px !important; }
body.vari-intelligence :is(.detail-main, .detail-side) { gap: 20px !important; }
body.vari-intelligence .detail-side { position: sticky; top: 88px; align-self: start; }
body.vari-intelligence .detail-card .prose,
body.vari-intelligence .standard-article { color: var(--vi-ink) !important; font-size: 15px !important; line-height: 1.95 !important; }
body.vari-intelligence .article-workspace { border-color: var(--vi-line) !important; border-radius: var(--vi-radius) !important; background: var(--vi-surface) !important; box-shadow: none !important; }
body.vari-intelligence :is(.article-tabs button, .brief-grid section, .research-analysis-grid section, .score-pair article) {
  border-color: var(--vi-line) !important;
  border-radius: 3px !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.vari-intelligence .article-tabs button[aria-selected="true"] { border-bottom-color: var(--vi-green) !important; color: var(--vi-green) !important; }
body.vari-intelligence :is(.notice, .brief-summary, .research-focus) {
  border-top: 1px solid var(--vi-green) !important;
  border-radius: 0 !important;
  background: var(--vi-green-soft) !important;
  color: var(--vi-ink) !important;
}
body.vari-intelligence .research-focus :is(span, p) { color: var(--vi-ink) !important; }
body.vari-intelligence .score-pair strong,
body.vari-intelligence .source-card a { color: var(--vi-green) !important; }
body.vari-intelligence .fact-card dl div { border-color: var(--vi-line) !important; }
body.vari-intelligence .detail-loading {
  min-height: 360px;
  display: grid;
  place-items: center;
  color: var(--vi-muted) !important;
}

/* Reading history */
body.vari-dashboard .history-workspace {
  width: min(1440px, calc(100% - 64px)) !important;
  padding: 44px 0 84px !important;
}
body.vari-dashboard .history-hero {
  align-items: end !important;
  min-height: 190px;
  margin-bottom: 28px !important;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--vi-line-strong);
}
body.vari-dashboard .history-hero h1 { color: var(--vi-ink) !important; font-size: clamp(36px, 5vw, 64px) !important; letter-spacing: -.04em; }
body.vari-dashboard .history-hero p { color: var(--vi-muted) !important; }
body.vari-dashboard .history-filter { padding: 18px !important; background: transparent !important; }
body.vari-dashboard .history-card {
  padding: 22px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.vari-dashboard .history-card:hover { background: rgba(255, 255, 255, .4) !important; }
body.vari-dashboard .history-card h2 a { color: var(--vi-ink) !important; }
body.vari-dashboard .history-level { border-radius: 2px !important; background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.vari-dashboard .history-message,
body.vari-dashboard .history-empty { color: var(--vi-muted) !important; }

/* Hot topic dossier */
body.vari-dashboard .hot-topic-page {
  width: min(1440px, calc(100% - 64px)) !important;
  max-width: none !important;
  padding: 34px 0 84px !important;
}
body.vari-dashboard .hot-topic-hero {
  min-height: 260px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 42px !important;
  border: 1px solid var(--vi-line-strong) !important;
  border-radius: var(--vi-radius) !important;
  background: var(--vi-surface) !important;
  box-shadow: none !important;
  color: var(--vi-ink) !important;
}
body.vari-dashboard .hot-topic-hero h1 { color: var(--vi-ink) !important; font-size: clamp(30px, 4vw, 48px) !important; letter-spacing: -.035em; }
body.vari-dashboard .hot-topic-hero p { color: var(--vi-muted) !important; }
body.vari-dashboard .hot-topic-tags span { border-color: var(--vi-line-strong) !important; border-radius: 2px !important; background: transparent !important; color: var(--vi-green) !important; }
body.vari-dashboard .hot-topic-layout { grid-template-columns: minmax(0, 1fr) 320px !important; gap: 26px !important; }
body.vari-dashboard .hot-topic-section { padding: 24px !important; border-color: var(--vi-line) !important; border-radius: var(--vi-radius) !important; background: var(--vi-surface) !important; box-shadow: none !important; }
body.vari-dashboard .hot-topic-section :is(h2, h3) { color: var(--vi-ink) !important; }
body.vari-dashboard .hot-topic-section :is(p, li) { color: var(--vi-muted) !important; font-size: 13px !important; }
body.vari-dashboard .topic-facts { gap: 0 !important; border-block: 1px solid var(--vi-line); }
body.vari-dashboard .topic-facts div { padding: 15px 10px !important; border: 0 !important; border-right: 1px solid var(--vi-line) !important; border-radius: 0 !important; background: transparent !important; }
body.vari-dashboard .topic-facts div:last-child { border-right: 0 !important; }
body.vari-dashboard .topic-facts b { color: var(--vi-green) !important; }
body.vari-dashboard .topic-source-image,
body.vari-dashboard .topic-source-image img { border-radius: 2px !important; }

/* Broadcast newsroom */
body.vari-broadcast { --navy: var(--vi-ink); --blue: var(--vi-green); --green: var(--vi-green); --bg: var(--vi-paper); --card: var(--vi-surface); --line: var(--vi-line); --text: var(--vi-ink); --muted: var(--vi-muted); --shadow: none; }
body.vari-broadcast .broadcast-shell { width: min(1680px, calc(100% - 64px)) !important; max-width: none !important; padding: 42px 0 84px !important; }
body.vari-broadcast .hero {
  min-height: 230px !important;
  padding: 38px 42px !important;
  border: 1px solid var(--vi-line-strong) !important;
  border-radius: var(--vi-radius) !important;
  background: var(--vi-surface) !important;
  box-shadow: none !important;
  color: var(--vi-ink) !important;
}
body.vari-broadcast .hero h1 { color: var(--vi-ink) !important; font-size: clamp(34px, 4vw, 56px) !important; letter-spacing: -.04em !important; }
body.vari-broadcast .hero p { max-width: 820px; color: var(--vi-muted) !important; }
body.vari-broadcast .ghost-btn { border-color: var(--vi-line-strong) !important; background: transparent !important; color: var(--vi-green) !important; }
body.vari-broadcast .broadcast-directory {
  gap: 0 !important;
  margin-block: 18px 28px !important;
  border-block: 1px solid var(--vi-line) !important;
}
body.vari-broadcast .broadcast-directory a {
  border: 0 !important;
  border-right: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--vi-muted) !important;
}
body.vari-broadcast .broadcast-directory a.active,
body.vari-broadcast .broadcast-directory a:hover { background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.vari-broadcast .broadcast-layout { grid-template-columns: 390px minmax(0, 1fr) !important; gap: 26px !important; }
body.vari-broadcast :is(.side-column, .main-column) { gap: 18px !important; }
body.vari-broadcast .panel > header,
body.vari-broadcast .history-panel > header { background: transparent !important; border-color: var(--vi-line) !important; }
body.vari-broadcast :is(.briefing-status, .summary-metrics) { gap: 0 !important; border: 1px solid var(--vi-line) !important; background: transparent !important; }
body.vari-broadcast :is(.briefing-status, .summary-metrics) > * { border: 0 !important; border-right: 1px solid var(--vi-line) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
body.vari-broadcast .brief-card {
  border-color: var(--vi-line) !important;
  border-radius: var(--vi-radius) !important;
  background: var(--vi-surface) !important;
  box-shadow: none !important;
}
body.vari-broadcast .brief-card-head { border-color: var(--vi-line) !important; }
body.vari-broadcast .brief-number {
  border-radius: 2px !important;
  background: var(--vi-green) !important;
  color: #fff !important;
}
body.vari-broadcast .brief-title h3 { color: var(--vi-ink) !important; }
body.vari-broadcast .brief-meta,
body.vari-broadcast .analysis-box :is(p, li) { color: var(--vi-muted) !important; }
body.vari-broadcast .brief-scores span,
body.vari-broadcast .tags span,
body.vari-broadcast .status-badge { border-radius: 2px !important; }
body.vari-broadcast .analysis-box {
  border: 0 !important;
  border-top: 1px solid var(--vi-green) !important;
  border-radius: 0 !important;
  background: #f0f3ef !important;
}
body.vari-broadcast .analysis-box.impact { border-color: var(--vi-warn) !important; }
body.vari-broadcast .analysis-box.action { border-color: var(--vi-green) !important; }
body.vari-broadcast .analysis-box.uncertain { border-color: var(--vi-faint) !important; }
body.vari-broadcast :is(.history-item, .selection-row) { background: transparent !important; border-color: var(--vi-line) !important; }
body.vari-broadcast :is(.history-item, .selection-row):hover,
body.vari-broadcast .history-item.active { background: var(--vi-green-soft) !important; }
body.vari-broadcast :is(.option-cloud label, .time-chip) { border-radius: 3px !important; background: transparent !important; }
body.vari-broadcast .option-cloud label:has(input:checked) { border-color: var(--vi-green) !important; background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }

/* Broadcast editorial studio */
body.vari-broadcast-studio { --navy: var(--vi-ink); --blue: var(--vi-green); --cyan: var(--vi-green); --green: var(--vi-green); --line: var(--vi-line); --muted: var(--vi-muted); --bg: var(--vi-paper); }
body.vari-broadcast-studio .studio-shell { width: min(1680px, calc(100% - 64px)) !important; margin-top: 40px !important; }
body.vari-broadcast-studio .studio-hero {
  min-height: 220px !important;
  padding: 38px 42px !important;
  border: 1px solid var(--vi-line-strong) !important;
  border-radius: var(--vi-radius) !important;
  background: var(--vi-surface) !important;
  box-shadow: none !important;
  color: var(--vi-ink) !important;
}
body.vari-broadcast-studio .studio-hero h1 { color: var(--vi-ink) !important; font-size: clamp(34px, 4vw, 54px) !important; letter-spacing: -.04em; }
body.vari-broadcast-studio .studio-hero p { color: var(--vi-muted) !important; }
body.vari-broadcast-studio .studio-directory { gap: 0 !important; margin-block: 18px 24px !important; border-block: 1px solid var(--vi-line); }
body.vari-broadcast-studio .studio-directory a {
  min-height: 76px !important;
  border: 0 !important;
  border-right: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--vi-muted) !important;
}
body.vari-broadcast-studio .studio-directory a:hover,
body.vari-broadcast-studio .studio-directory a.active { background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.vari-broadcast-studio .studio-directory span { border-radius: 2px !important; background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.vari-broadcast-studio .metrics { gap: 0 !important; margin-block: 0 24px !important; border-bottom: 1px solid var(--vi-line); }
body.vari-broadcast-studio .metrics div {
  padding: 19px !important;
  border: 0 !important;
  border-right: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.vari-broadcast-studio .studio-grid { grid-template-columns: 300px minmax(0, 1fr) !important; gap: 20px !important; }
body.vari-broadcast-studio :is(.template-card, .draft-row, .publication-row, .studio-item) {
  border-color: var(--vi-line) !important;
  border-radius: 3px !important;
  background: transparent !important;
}
body.vari-broadcast-studio :is(.template-card, .draft-row, .publication-row):hover,
body.vari-broadcast-studio :is(.template-card, .draft-row).active { border-color: var(--vi-green) !important; background: var(--vi-green-soft) !important; }
body.vari-broadcast-studio .empty { background: transparent !important; }
body.vari-broadcast-studio .empty > span { border-radius: 2px !important; background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.vari-broadcast-studio :is(.section-head, .panel > header) { background: transparent !important; border-color: var(--vi-line) !important; }
body.vari-broadcast-studio .studio-item .rank { border-radius: 2px !important; background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.vari-broadcast-studio .preview > header { border-color: var(--vi-green) !important; }
body.vari-broadcast-studio .preview-overview { border-color: var(--vi-green) !important; background: var(--vi-green-soft) !important; }
body.vari-broadcast-studio dialog::backdrop { background: rgba(23, 33, 29, .48); }

/* Public daily digest subscription — editorial invitation, not marketing theatre */
body.subscribe-page .ambient,
body.subscribe-page .orbit-field { display: none !important; }
body.subscribe-page .public-topbar {
  position: relative !important;
  max-width: none !important;
  padding: 18px max(32px, calc((100% - 1440px) / 2)) !important;
}
body.subscribe-page .institution i { border-radius: 1px !important; background: var(--vi-green) !important; box-shadow: none !important; }
body.subscribe-page .subscribe-hero { min-height: auto !important; overflow: visible !important; }
body.subscribe-page .subscribe-hero-inner {
  width: min(1440px, calc(100% - 64px)) !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(380px, .8fr) !important;
  gap: 96px !important;
  padding: 76px 0 92px !important;
}
body.subscribe-page .vari {
  margin: 0 0 12px !important;
  color: var(--vi-green) !important;
  font-size: clamp(72px, 9vw, 134px) !important;
  line-height: .9 !important;
  letter-spacing: -.09em !important;
}
body.subscribe-page .hero-cn { color: var(--vi-muted) !important; }
body.subscribe-page .subscribe-copy h1 { margin-top: 34px !important; color: var(--vi-ink) !important; font-size: clamp(36px, 4vw, 56px) !important; letter-spacing: -.045em !important; }
body.subscribe-page .subscribe-copy h1 em { color: var(--vi-green) !important; }
body.subscribe-page .hero-description { color: var(--vi-muted) !important; }
body.subscribe-page .trust span { border-color: var(--vi-line-strong) !important; border-radius: 2px !important; background: transparent !important; color: var(--vi-muted) !important; }
body.subscribe-page .subscribe-card {
  padding: 32px !important;
  border: 1px solid var(--vi-line-strong) !important;
  border-radius: var(--vi-radius) !important;
  background: var(--vi-surface) !important;
  box-shadow: var(--vi-shadow) !important;
  backdrop-filter: none !important;
}
body.subscribe-page .card-brand { border-color: var(--vi-line) !important; }
body.subscribe-page .card-brand img { width: 42px !important; height: 42px !important; }
body.subscribe-page .email-wrap input { border-radius: 4px !important; }
body.subscribe-page .promise { border-color: var(--vi-line) !important; }
body.subscribe-page .success-icon { border-radius: 2px !important; background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.subscribe-page .public-content { border-color: var(--vi-line) !important; background: var(--vi-surface) !important; }
body.subscribe-page .public-section { width: min(1320px, calc(100% - 64px)) !important; }
body.subscribe-page .preview-grid { gap: 0 !important; border-block: 1px solid var(--vi-line); }
body.subscribe-page :is(.preview-card, .sample-loading) {
  padding: 28px !important;
  border: 0 !important;
  border-right: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.subscribe-page .preview-card:last-child { border-right: 0 !important; }
body.subscribe-page .preview-card .why { border-color: var(--vi-green) !important; background: var(--vi-green-soft) !important; }
body.subscribe-page .how { background: var(--vi-paper) !important; }
body.subscribe-page .steps { gap: 0 !important; border-block: 1px solid var(--vi-line); }
body.subscribe-page .steps article { border: 0 !important; border-right: 1px solid var(--vi-line) !important; border-radius: 0 !important; background: transparent !important; }
body.subscribe-page .steps article:last-child { border-right: 0 !important; }
body.subscribe-page .steps article > b { border-radius: 2px !important; background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.subscribe-page .public-footer { background: var(--vi-ink) !important; }

/* Private article library */
body.vari-private .private-top { padding-block: 18px !important; }
body.vari-private .private-top a { color: var(--vi-green) !important; }
body.vari-private .private-main { max-width: 1480px !important; padding-top: 44px !important; }
body.vari-private .private-intro {
  min-height: 170px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--vi-line-strong);
}
body.vari-private .private-intro h1 { color: var(--vi-ink) !important; font-size: clamp(38px, 5vw, 64px) !important; letter-spacing: -.045em; }
body.vari-private .private-intro p { color: var(--vi-muted) !important; }
body.vari-private .auto-writing-card { padding: 30px !important; }
body.vari-private .quota-summary article {
  padding: 12px 16px !important;
  border-color: var(--vi-line) !important;
  border-radius: 3px !important;
  background: transparent !important;
}
body.vari-private .private-layout { grid-template-columns: 270px minmax(0, 1fr) !important; gap: 30px !important; }
body.vari-private .private-library {
  position: sticky;
  top: 28px;
  align-self: start;
  padding-right: 20px;
  border-right: 1px solid var(--vi-line);
}
body.vari-private .private-library button {
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.vari-private .private-library button:hover,
body.vari-private .private-library button.active { background: var(--vi-green-soft) !important; color: var(--vi-green) !important; }
body.vari-private :is(.choice-grid label, .choice-scroll label, .backfill-estimate, .backfill-estimate dl div) {
  border-color: var(--vi-line) !important;
  border-radius: 3px !important;
  background: transparent !important;
}
body.vari-private :is(.choice-grid label, .choice-scroll label):has(input:checked) { border-color: var(--vi-green) !important; background: var(--vi-green-soft) !important; }
body.vari-private input[type="checkbox"] { accent-color: var(--vi-green) !important; }
body.vari-private .private-reading .standard-article { padding: clamp(24px, 4vw, 56px) !important; border-radius: var(--vi-radius) !important; }
body.vari-private .private-preferences { max-width: none !important; }
body.vari-private .private-danger { color: var(--vi-alert) !important; border-color: #d9b8af !important; background: #fbf3f0 !important; }

/* Loading, empty and status feedback */
body.vari-ui :is(.empty, .empty-mini, .empty-state, .detail-loading, .history-empty, .sample-loading),
body.vari-broadcast-studio .empty,
body.vari-private :is(.private-empty, .private-state) {
  color: var(--vi-muted) !important;
}
body.vari-ui :is(.empty, .empty-state, .detail-loading),
body.vari-private .private-empty {
  border-color: var(--vi-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.vari-ui :is(.feed-status, .history-message, .save-status, .voice-status),
body.vari-private :is(.private-message, .settings-actions span) { color: var(--vi-green) !important; }
body.vari-ui .toast,
body.vari-broadcast-studio .toast,
body.vari-private .toast {
  border: 1px solid rgba(255, 255, 255, .15) !important;
  border-radius: 4px !important;
  background: var(--vi-ink) !important;
  box-shadow: 0 12px 30px rgba(23, 33, 29, .18) !important;
  color: #fff !important;
}

/* Tablet */
@media (max-width: 1100px) {
  body.vari-dashboard .workspace,
  body.vari-intelligence .detail-workspace,
  body.vari-dashboard .history-workspace,
  body.vari-dashboard .hot-topic-page,
  body.vari-broadcast .broadcast-shell,
  body.vari-broadcast-studio .studio-shell,
  body.subscribe-page .subscribe-hero-inner,
  body.subscribe-page .public-section { width: calc(100% - 40px) !important; }

  body.vari-dashboard .page-head h1 { font-size: 52px !important; }
  body.vari-dashboard .metric-grid { grid-template-columns: repeat(3, 1fr) !important; }
  body.vari-dashboard .metric-grid > *:nth-child(3n) { border-right: 0 !important; }
  body.vari-intelligence .detail-grid { grid-template-columns: minmax(0, 1fr) 290px !important; }
  body.vari-broadcast .broadcast-layout { grid-template-columns: 340px minmax(0, 1fr) !important; }
  body.vari-broadcast-studio .studio-grid { grid-template-columns: 250px minmax(0, 1fr) !important; }
  body.subscribe-page .subscribe-hero-inner { gap: 44px !important; }
}

@media (max-width: 820px) {
  body.vari-ui :is(.topbar-inner, .top-inner) { flex-wrap: wrap !important; height: auto !important; padding-block: 10px !important; }
  body.vari-ui :is(.detail-nav, .main-nav, .broadcast-topbar nav, .studio-top nav) {
    order: 3;
    width: 100% !important;
    height: 42px !important;
    display: flex !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    scrollbar-width: none;
  }
  body.vari-ui :is(.detail-nav, .main-nav, .broadcast-topbar nav, .studio-top nav) :is(a, button) { flex: 0 0 auto !important; white-space: nowrap !important; }
  body.vari-dashboard .page-head,
  body.vari-dashboard .history-hero,
  body.vari-intelligence .detail-hero,
  body.vari-broadcast .hero,
  body.vari-broadcast-studio .studio-hero { align-items: flex-start !important; flex-direction: column !important; }
  body.vari-dashboard .update-pill { width: 100%; }
  body.vari-dashboard .dashboard-grid,
  body.vari-intelligence .detail-grid,
  body.vari-dashboard .hot-topic-layout,
  body.vari-broadcast .broadcast-layout,
  body.vari-broadcast-studio .studio-grid,
  body.subscribe-page .subscribe-hero-inner,
  body.vari-private .private-layout { grid-template-columns: 1fr !important; }
  body.vari-dashboard .feed-context-card,
  body.vari-intelligence .detail-side,
  body.vari-private .private-library { position: static !important; }
  body.vari-intelligence .detail-side { grid-row: auto !important; }
  body.vari-private .private-library { padding-right: 0; border-right: 0; }
  body.vari-broadcast-studio .left-rail { grid-template-columns: repeat(3, 1fr) !important; overflow-x: auto; }
  body.subscribe-page .subscribe-copy { text-align: left !important; }
  body.subscribe-page .trust { justify-content: flex-start !important; }
}

/* Compact/mobile */
@media (max-width: 600px) {
  html, body { max-width: 100%; overflow-x: hidden; }
  body.vari-dashboard .workspace,
  body.vari-intelligence .detail-workspace,
  body.vari-dashboard .history-workspace,
  body.vari-dashboard .hot-topic-page,
  body.vari-broadcast .broadcast-shell,
  body.vari-broadcast-studio .studio-shell,
  body.subscribe-page .subscribe-hero-inner,
  body.subscribe-page .public-section { width: calc(100% - 24px) !important; }

  body.vari-dashboard .workspace,
  body.vari-intelligence .detail-workspace,
  body.vari-dashboard .history-workspace,
  body.vari-dashboard .hot-topic-page,
  body.vari-broadcast .broadcast-shell { padding-top: 22px !important; padding-bottom: 64px !important; }

  body.vari-dashboard .page-head { padding-top: 4px !important; }
  body.vari-dashboard .page-head h1 { font-size: 38px !important; }
  body.vari-dashboard .page-head p { font-size: 14px !important; }
  body.vari-dashboard .metric-grid { grid-template-columns: 1fr 1fr !important; }
  body.vari-dashboard .metric-grid > * { min-height: 92px !important; padding: 17px 12px !important; }
  body.vari-dashboard .metric-grid > *:nth-child(odd) { border-right: 1px solid var(--vi-line) !important; }
  body.vari-dashboard .metric-grid > *:nth-child(even) { border-right: 0 !important; }
  body.vari-dashboard .metric-grid strong,
  body.vari-dashboard .metric-grid b { font-size: 25px !important; }
  body.vari-dashboard .card-head { padding-inline: 14px !important; }
  body.vari-dashboard :is(.feed-mode-tabs, .seg-tabs) { gap: 16px !important; padding-inline: 14px !important; overflow-x: auto; }
  body.vari-dashboard .intel-row,
  body.vari-dashboard .intel-row.v29 { padding: 16px 14px !important; }

  body.vari-intelligence .detail-hero,
  body.vari-dashboard .hot-topic-hero,
  body.vari-broadcast .hero,
  body.vari-broadcast-studio .studio-hero { min-height: 0 !important; padding: 25px 20px !important; }
  body.vari-intelligence .detail-hero h1,
  body.vari-dashboard .hot-topic-hero h1,
  body.vari-broadcast .hero h1,
  body.vari-broadcast-studio .studio-hero h1 { font-size: 28px !important; }
  body.vari-intelligence .hero-actions { display: grid !important; grid-template-columns: 1fr !important; width: 100% !important; }
  body.vari-intelligence .hero-actions > * { width: 100%; }
  body.vari-dashboard .history-hero { min-height: 0; }
  body.vari-dashboard .history-filter { grid-template-columns: 1fr !important; }
  body.vari-dashboard .history-actions { display: grid !important; grid-template-columns: 1fr !important; }
  body.vari-dashboard .history-card-actions { display: grid !important; grid-template-columns: 1fr 1fr !important; }
  body.vari-dashboard .topic-side { grid-template-columns: 1fr !important; }
  body.vari-dashboard .topic-facts { grid-template-columns: 1fr 1fr !important; }
  body.vari-dashboard .topic-facts div:nth-child(even) { border-right: 0 !important; }

  body.vari-broadcast .broadcast-directory,
  body.vari-broadcast-studio .studio-directory { display: flex !important; overflow-x: auto; scrollbar-width: none; }
  body.vari-broadcast :is(.broadcast-directory a),
  body.vari-broadcast-studio .studio-directory a { flex: 0 0 180px !important; }
  body.vari-broadcast .side-column { display: flex !important; }
  body.vari-broadcast .summary-metrics { grid-template-columns: 1fr 1fr !important; }
  body.vari-broadcast .brief-card-head { grid-template-columns: 36px minmax(0, 1fr) !important; padding: 16px !important; }
  body.vari-broadcast .brief-scores { grid-column: 2 !important; flex-wrap: wrap; }
  body.vari-broadcast .brief-card-body { padding: 16px !important; }
  body.vari-broadcast .analysis-grid { grid-template-columns: 1fr !important; }
  body.vari-broadcast-studio .left-rail { grid-template-columns: 1fr !important; }
  body.vari-broadcast-studio .metrics { grid-template-columns: 1fr 1fr !important; }
  body.vari-broadcast-studio .studio-item { grid-template-columns: 30px minmax(0, 1fr) !important; }

  body.subscribe-page .public-topbar { padding: 15px 14px !important; }
  body.subscribe-page .top-note { display: none !important; }
  body.subscribe-page .subscribe-hero-inner { padding: 48px 0 60px !important; }
  body.subscribe-page .vari { font-size: 66px !important; }
  body.subscribe-page .hero-cn { font-size: 11px !important; }
  body.subscribe-page .subscribe-copy h1 { font-size: 31px !important; }
  body.subscribe-page .subscribe-card { padding: 22px 18px !important; }
  body.subscribe-page .email-wrap { display: grid !important; }
  body.subscribe-page .email-wrap button { width: 100%; }
  body.subscribe-page .section-head { display: block !important; }
  body.subscribe-page .section-head p { margin-top: 12px !important; }
  body.subscribe-page :is(.preview-grid, .steps) { grid-template-columns: 1fr !important; }
  body.subscribe-page :is(.preview-card, .steps article) { border-right: 0 !important; border-bottom: 1px solid var(--vi-line) !important; }

  body.vari-private .private-main { padding: 24px 12px 70px !important; }
  body.vari-private .private-intro { min-height: 0; }
  body.vari-private .private-intro h1 { font-size: 38px !important; }
  body.vari-private .auto-writing-card,
  body.vari-private :is(.private-card, .private-empty) { padding: 19px !important; }
  body.vari-private .settings-heading,
  body.vari-private :is(.policy-score-grid, .policy-taxonomy-grid) { display: block !important; }
  body.vari-private :is(.choice-grid label, .choice-scroll label) { width: 100% !important; }
  body.vari-private .private-row { align-items: stretch !important; }
  body.vari-private .private-row > label { min-width: 100% !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.vari-dashboard *, body.vari-intelligence *, body.vari-broadcast *,
  body.vari-broadcast-studio *, body.subscribe-page *, body.vari-private * {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Final dashboard composition: institutional editorial desk, not card mosaic. */
body.vari-dashboard #overview > .page-head {
  min-height: 154px !important;
  margin: 12px 0 0 !important;
  padding: 20px 0 18px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--vi-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.vari-dashboard #overview > .page-head::before,
body.vari-dashboard #overview > .page-head::after { display: none !important; }
body.vari-dashboard #overview > .page-head h1 {
  max-width: 900px; margin: 8px 0 12px !important;
  font-size: clamp(44px, 4.3vw, 64px) !important; letter-spacing: -.05em !important;
}
body.vari-dashboard #overview > .page-head .update-pill {
  min-width: 250px !important; padding: 10px 0 10px 28px !important;
  border: 0 !important; border-left: 1px solid var(--vi-line) !important;
}
body.vari-dashboard #overview > .metric-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 0 !important; margin: 0 0 22px !important;
  border-bottom: 1px solid var(--vi-line) !important;
  background: transparent !important;
}
body.vari-dashboard #overview > .metric-grid > * {
  min-height: 92px !important; padding: 16px 20px !important;
  border: 0 !important; border-right: 1px solid var(--vi-line) !important;
  border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
}
body.vari-dashboard #overview > .metric-grid > *:last-child { border-right: 0 !important; }
body.vari-dashboard #overview > .metric-grid > *::before,
body.vari-dashboard #overview > .metric-grid > *::after { display: none !important; }
body.vari-dashboard #overview > .metric-grid strong,
body.vari-dashboard #overview > .metric-grid b { color: var(--vi-ink) !important; }
body.vari-dashboard #overview .feed-shell,
body.vari-dashboard #overview .feed-context-card {
  border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
}
body.vari-dashboard #overview .feed-shell { border-width: 1px 0 0 !important; }
body.vari-dashboard #overview .feed-context-card { border-width: 1px 0 !important; }

@media (max-width: 760px) {
  body.vari-dashboard #overview > .page-head {
    min-height: 146px !important; margin-top: 10px !important; padding: 18px 0 16px !important;
  }
  body.vari-dashboard #overview > .page-head h1 { font-size: 36px !important; }
  body.vari-dashboard #overview > .page-head .update-pill { display: none !important; }
  body.vari-dashboard #overview > .metric-grid {
    display: flex !important;
    gap: 0 !important;
    overflow-x: auto !important;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
  }
  body.vari-dashboard #overview > .metric-grid > * {
    flex: 0 0 138px !important;
    min-height: 86px !important; padding: 13px 12px !important;
    border-right: 1px solid var(--vi-line) !important; border-bottom: 0 !important;
    scroll-snap-align: start;
  }
  body.vari-dashboard #overview > .metric-grid > *:nth-child(2n) { border-right: 1px solid var(--vi-line) !important; }

  body.vari-dashboard .topbar-inner {
    position: relative !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-areas: "brand space actions" "nav nav nav" !important;
    gap: 6px 10px !important;
    padding: 8px 12px 0 !important;
  }
  body.vari-dashboard .topbar-inner > .brand { grid-area: brand; }
  body.vari-dashboard .topbar-inner > .brand {
    width: 82px !important;
    min-width: 82px !important;
    max-width: 82px !important;
  }
  body.vari-dashboard .topbar-inner > nav.product-nav {
    grid-area: nav;
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
  }
  body.vari-dashboard .topbar-inner > .top-actions {
    grid-area: actions;
    position: absolute !important;
    top: 8px !important;
    right: 12px !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    min-width: 0 !important;
  }
  body.vari-dashboard .top-actions .live-dot { display: none !important; }
  body.vari-dashboard .top-actions .icon-btn { width: 38px !important; min-width: 38px !important; height: 38px !important; padding: 0 !important; }
  body.vari-dashboard .top-actions #globalRefresh span { display: none !important; }
  body.vari-dashboard .top-actions .account-control { margin-left: 0 !important; }
}

/* English overlines are retained in markup for compatibility but removed as decoration. */
body.vari-projects .project-hero > .hero-copy > .eyebrow,
body.vari-discovery .hero > .eyebrow { display: none !important; }

/* Bridge the tablet breakpoint so primary and contextual navigation never overlap. */
@media (min-width: 761px) and (max-width: 820px) {
  body.vari-dashboard .topbar { height: auto !important; min-height: 110px !important; }
  body.vari-dashboard .topbar-inner {
    min-height: 110px !important;
    padding: 8px 20px 0 !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: 48px 46px !important;
    grid-template-areas: "brand space actions" "nav nav nav" !important;
    gap: 0 14px !important;
    align-items: center !important;
  }
  body.vari-dashboard .topbar-inner > .brand {
    grid-area: brand;
    width: 82px !important;
    min-width: 82px !important;
    max-width: 82px !important;
  }
  body.vari-dashboard .topbar-inner > nav.product-nav {
    grid-area: nav;
    width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
  }
  body.vari-dashboard .topbar-inner > .top-actions {
    grid-area: actions;
    min-width: 0 !important;
    margin: 0 !important;
    justify-content: flex-end !important;
  }
  body.vari-dashboard .product-nav .nav-root {
    min-height: 46px !important;
    height: 46px !important;
  }
  body.vari-dashboard .product-context-rail { top: 110px !important; }
}
