@font-face {
  font-family: "Space Grotesk";
  src: url("/assets/fonts/space-grotesk/SpaceGrotesk-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
}

:root {
  color-scheme: light;
  --hub-bg: #f4f6f8;
  --hub-bg-deep: #eef2f6;
  --hub-panel: #fff;
  --hub-panel-soft: #f8fafc;
  --hub-line: #d8e1eb;
  --hub-line-soft: #e8edf3;
  --hub-text: #17243d;
  --hub-muted: #64748b;
  --hub-faint: #8794a7;
  --hub-blue: #2563eb;
  --hub-blue-bright: #2563eb;
  --hub-cyan: #00a8a8;
  --hub-green: #087c68;
  --hub-amber: #8f5a00;
  --hub-pink: #b42363;
  --hub-sidebar-width: 0px;
  --hub-topbar-height: 72px;
  --hub-radius: 14px;
  --hub-shadow: 0 1px 2px rgba(11,29,58,.05), 0 10px 28px rgba(11,29,58,.055);
}

html { background: #f4f6f8; }
body.reach-hub { background: #f4f6f8; color: var(--hub-text); font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
.reach-hub :is(h1,h2,h3,strong,.hub-brand,.hub-button) { font-family: "Space Grotesk", Inter, ui-sans-serif, system-ui, sans-serif; }
.reach-hub :is(h1,h2,h3) { color: #17243d; }
.reach-hub p { color: #64748b; }

/* Global shell */
.hub-shell { display: block; min-height: 100vh; }
.hub-workspace { min-width: 0; margin-left: 0; }
.hub-sidebar {
  position: sticky; z-index: 100; inset: 0 0 auto; display: grid; width: 100%; min-height: 72px;
  grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 34px;
  padding: 0 24px; border: 0; background: #0b1d3a;
  box-shadow: 0 8px 30px rgba(11,29,58,.16); color: #fff; backdrop-filter: none;
}
body.reach-hub .hub-global-brand { display: flex; width: auto; min-height: 72px; flex-direction: row; justify-content: flex-start; gap: 10px; padding: 0; color: #fff; text-align: left; }
body.reach-hub .hub-brand-marks { width: 44px; }
body.reach-hub .hub-brand .hub-brand-mark { width: 42px; height: 42px; filter: drop-shadow(0 0 12px rgba(0,168,168,.24)); }
.hub-brand-copy { display: grid; width: auto; line-height: 1; text-align: left; }
.hub-brand-copy strong { color: #fff; font-size: 17px; letter-spacing: .09em; }
.hub-brand-copy small { margin-top: 4px; color: #aebdd0; font-size: 8px; letter-spacing: .09em; white-space: nowrap; }
.hub-primary-nav { display: flex; height: 72px; align-items: stretch; gap: 2px; margin: 0; }
.hub-primary-nav a { position: relative; min-height: 72px; gap: 0; padding: 0 15px; border: 0; border-radius: 0; color: #c7d3e2; font-size: 13px; font-weight: 700; text-transform: none; }
.hub-primary-nav a svg { display: none; }
.hub-primary-nav a:hover,.hub-primary-nav a[aria-current="page"] { border: 0; background: rgba(0,168,168,.12); color: #fff; }
.hub-primary-nav a[aria-current="page"]::after { position: absolute; right: 14px; bottom: 11px; left: 14px; height: 3px; border-radius: 99px; background: #23c5c0; content: ""; }
.hub-sidebar-spacer,.hub-social-section,.hub-sidebar-footer { display: none!important; }
.hub-topbar { position: fixed; z-index: 110; top: 0; right: 24px; display: flex; width: auto; min-height: 72px; justify-content: flex-end; gap: 9px; padding: 0; border: 0; background: transparent; backdrop-filter: none; }
.hub-menu-button { display: none; }
.hub-global-search { width: min(260px,22vw); height: 41px; border-color: rgba(255,255,255,.16); border-radius: 10px; background: rgba(255,255,255,.055); color: #cbd7e7; }
.hub-global-search input { color: #fff; }
.hub-global-search input::placeholder { color: #aebdd0; }
.hub-global-search:focus-within { border-color: #23c5c0; box-shadow: 0 0 0 3px rgba(0,168,168,.2); }
.hub-top-actions button,.hub-account-trigger { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.055); color: #fff; }
.hub-main { min-height: calc(100vh - 72px); padding: clamp(24px,3vw,42px) max(16px,calc((100vw - 1390px)/2)) 72px; background: #f4f6f8; }
.hub-page { width: min(1390px,100%); margin-inline: auto; }

/* Header, actions, search and tabs */
.hub-page-header { align-items: flex-start; margin-bottom: 24px; }
.hub-page-header h1 { margin: 6px 0 8px; color: #17243d; font-size: clamp(34px,4vw,50px); font-weight: 650; letter-spacing: -.045em; line-height: 1.04; text-transform: none; }
.hub-page-header p { max-width: 760px; margin: 0; color: #64748b; font-size: 16px; line-height: 1.55; }
.eyebrow { color: #008e8e; font-size: 11px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.hub-breadcrumbs { margin-bottom: 14px; color: #64748b; }
.hub-breadcrumbs a { color: #64748b; }
.hub-breadcrumbs strong { color: #17243d; }
.hub-button { min-height: 43px; padding: 0 15px; border: 1px solid #c8d3df; border-radius: 10px; background: #fff; color: #17243d; font-weight: 750; box-shadow: none; }
.hub-button:hover { border-color: #00a8a8; background: #fff; transform: translateY(-1px); }
.hub-button.primary { border-color: #00a8a8; background: #00a8a8; color: #fff; box-shadow: 0 10px 25px rgba(0,168,168,.2); }
.hub-button.primary:hover { background: #008e8e; color: #fff; }
.hub-kind-tabs { display: flex; gap: 2px; margin: 0 0 24px; overflow-x: auto; border-bottom: 1px solid #cfd9e4; scrollbar-width: none; -ms-overflow-style: none; }
.hub-kind-tabs::-webkit-scrollbar { display: none; width: 0; height: 0; }
.hub-kind-tabs a { position: relative; min-height: 49px; gap: 7px; padding: 0 16px; border: 0; border-radius: 0; color: #64748b; font-weight: 800; white-space: nowrap; }
.hub-kind-tabs a svg { width: 16px; }
.hub-kind-tabs a[aria-current="page"] { border: 0; background: transparent; color: #008e8e; }
.hub-kind-tabs a[aria-current="page"]::after { position: absolute; right: 12px; bottom: -1px; left: 12px; height: 3px; border-radius: 3px 3px 0 0; background: #00a8a8; content: ""; }
.hub-discussions-tabs { position: static; top: auto; z-index: auto; backdrop-filter: none; }
.hub-discussion-search-primary { display: grid; gap: 12px; margin-bottom: 10px; padding: 0; border: 0; background: transparent; }
.hub-search-field { min-height: 53px; padding: 0 15px; border: 1px solid #c9d4e0; border-radius: 12px; background: #fff; color: #64748b; box-shadow: var(--hub-shadow); }
.hub-search-field input { color: #17243d; }
.hub-search-field input::placeholder { color: #91a0b5; }
.hub-search-field kbd { border: 1px solid #b9c6d4; border-radius: 5px; padding: 1px 5px; color: #64748b; font-size: 10px; }
.hub-search-field:focus-within { border-color: #00a8a8; box-shadow: 0 0 0 3px rgba(0,168,168,.14); }
.hub-filter-grid { display: flex; flex-wrap: wrap; align-items: end; gap: 8px; padding: 2px 0 8px; }
.hub-filter-grid label { display: grid; gap: 4px; color: #64748b; font-size: 10px; font-weight: 750; }
.hub-filter-grid select { min-height: 36px; border: 1px solid #ccd7e2; border-radius: 999px; padding: 0 34px 0 12px; background: #fff; color: #465b78; }

/* Pulse */
.hub-pulse-heading,.hub-pulse-feed-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.hub-pulse-heading h2,.hub-pulse-feed-heading h2 { margin: 0 0 3px; font-size: 21px; }
.hub-pulse-heading p,.hub-pulse-feed-heading p { margin: 0; color: #64748b; font-size: 13px; }
.hub-pulse-heading>small { display: flex; align-items: center; gap: 7px; color: #64748b; white-space: nowrap; }
.hub-pulse-heading>small i { width: 8px; height: 8px; border-radius: 50%; background: #18a17e; }
.hub-pulse-summary { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; margin: 0 0 18px; }
.hub-pulse-metric { position: relative; display: grid; min-width: 0; min-height: 104px; grid-template-columns: 34px minmax(0,1fr); grid-template-rows: minmax(0,1fr) 22px; gap: 4px 8px; overflow: hidden; padding: 11px 12px; border: 1px solid #d9e2ec; border-radius: 12px; background: #fff; box-shadow: var(--hub-shadow); transition: .15s; }
.hub-pulse-metric:hover { border-color: #00a8a8; box-shadow: 0 13px 32px rgba(11,29,58,.08); transform: translateY(-1px); }
.hub-pulse-metric-icon { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; font-weight: 900; }
.hub-pulse-metric-icon svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.hub-pulse-metric>span:nth-child(2) { display: grid; min-width: 0; grid-column: 2; grid-row: 1; align-content: start; }
.hub-pulse-metric strong { min-height: 26px; font-size: 11px; line-height: 1.2; }
.hub-pulse-metric b { color: var(--hub-text); font-size: 24px; line-height: 1.05; }
.hub-pulse-metric small { color: #008e8e; font-size: 10px; font-weight: 750; }
.hub-pulse-metric.blue .hub-pulse-metric-icon { background: #2563eb; color: #fff; }
.hub-pulse-metric.teal .hub-pulse-metric-icon { background: #008e8e; color: #fff; }
.hub-pulse-metric.green .hub-pulse-metric-icon { background: #18a17e; color: #fff; }
.hub-pulse-metric.violet .hub-pulse-metric-icon { background: #6550b8; color: #fff; }
.hub-pulse-metric.amber .hub-pulse-metric-icon { background: #b27200; color: #fff; }
.hub-pulse-spark { position: static; width: 60px; height: 20px; grid-column: 2; grid-row: 2; align-self: end; justify-self: end; overflow: visible; color: #2563eb; }
.hub-pulse-metric.teal .hub-pulse-spark { color: #008e8e; }
.hub-pulse-metric.green .hub-pulse-spark { color: #18a17e; }
.hub-pulse-metric.violet .hub-pulse-spark { color: #6550b8; }
.hub-pulse-metric.amber .hub-pulse-spark { color: #b27200; }
.hub-pulse-spark line { stroke: currentColor; stroke-opacity: .18; stroke-width: 1; }
.hub-pulse-spark rect { fill: currentColor; opacity: .62; }
.hub-pulse-page { width: min(100%,1390px); }
.hub-pulse-shell,.hub-pulse-layout,.hub-index-layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 20px; align-items: start; }
.hub-pulse-main { min-width: 0; }
.hub-pulse-feed { display: grid; gap: 9px; }
.hub-pulse-card { position: relative; display: grid; min-width: 0; height: 230px; min-height: 230px; grid-template-columns: minmax(330px,1fr) 245px 178px; gap: 0; align-items: stretch; overflow: hidden; border: 1px solid #d9e2ec; border-radius: 14px; background: #fff; box-shadow: var(--hub-shadow); transition: .15s; }
.hub-pulse-card[hidden] { display: none !important; }
.hub-pulse-card.question { border-left: 4px solid #2563eb; }
.hub-pulse-card.resolved { border-left: 4px solid #18a17e; }
.hub-pulse-card.discussion { border-left: 4px solid #6550b8; }
.hub-pulse-card:hover,.hub-pulse-card:focus-within { border-color: rgba(0,168,168,.55); box-shadow: 0 13px 32px rgba(11,29,58,.08); }
.hub-pulse-card-main { display: grid; min-width: 0; grid-template-columns: 34px minmax(0,1fr); gap: 10px; overflow: hidden; padding: 14px; }
.hub-pulse-card-icon { display: grid; width: 34px; height: 34px; align-self: start; place-items: center; border-radius: 50%; font-weight: 900; }
.hub-pulse-card-icon svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.hub-pulse-card-icon.question { background: #2563eb; color: #fff; }
.hub-pulse-card-icon.discussion { background: #6550b8; color: #fff; }
.hub-pulse-card-icon.resolved { background: #18a17e; color: #fff; }
.hub-pulse-card-copy { min-width: 0; }
.hub-pulse-card-copy .hub-discussion-card-head { min-height: 24px; }
.hub-pulse-card-copy .hub-discussion-card-head small { margin-left: auto; color: #8794a7; font-size: 10px; }
.hub-pulse-type { display: inline-flex; align-items: center; padding: 0; border: 0; background: transparent; font-size: 9px; font-weight: 850; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; }
.hub-pulse-type.question { color: #2563eb; }
.hub-pulse-type.discussion { color: #6550b8; }
.hub-pulse-type.resolved { color: #119172; }
.hub-pulse-card h3 { margin: 6px 0 3px; font-size: 16px; line-height: 1.25; }
.hub-pulse-card h3 a { color: #17243d; }
.hub-pulse-card-copy>p { display: -webkit-box; margin: 0 0 7px; overflow: hidden; color: #64748b; font-size: 12px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.hub-thread-signals { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.hub-thread-signals>span { display: inline-flex; min-height: 24px; align-items: center; gap: 5px; padding: 4px 8px; border: 1px solid color-mix(in srgb,var(--hub-cyan) 34%,var(--hub-line)); border-radius: 999px; background: color-mix(in srgb,var(--hub-cyan) 8%,var(--hub-panel)); color: var(--hub-cyan); font-size: 9px; font-weight: 800; }
.hub-thread-signals>span.workspace { border-color: color-mix(in srgb,var(--hub-violet) 38%,var(--hub-line)); background: color-mix(in srgb,var(--hub-violet) 8%,var(--hub-panel)); color: var(--hub-violet); }
.hub-thread-signals.quiet>span { border-color: var(--hub-line); background: var(--hub-panel-soft); color: var(--hub-muted); font-weight: 650; }
.hub-thread-signals svg { width: 12px; height: 12px; }
.hub-pulse-card-visual { position: relative; min-width: 0; height: 100%; min-height: 0; margin: 0; overflow: hidden; background: #d9e6ec; }
.hub-pulse-card-visual::after { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(11,29,58,.08),transparent 42%); content: ""; pointer-events: none; }
.hub-pulse-card-visual img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.hub-pulse-card-placeholder { display: grid; width: 100%; height: 100%; min-height: 0; place-content: center; justify-items: center; gap: 7px; padding: 15px; background: repeating-linear-gradient(135deg,#f0f4f8,#f0f4f8 8px,#e8eef4 8px,#e8eef4 16px); color: #8794a7; text-align: center; }
.hub-pulse-card-placeholder.resource { background: radial-gradient(circle at 75% 22%,rgba(0,168,168,.18),transparent 40%),linear-gradient(145deg,#eaf8f7,#f6fbfb); color: #087f83; }
.hub-pulse-card-placeholder.workspace { background: radial-gradient(circle at 75% 22%,rgba(101,80,184,.2),transparent 40%),linear-gradient(145deg,#f0edfb,#faf9ff); color: #6550b8; }
.hub-pulse-card-placeholder.quiet { opacity: .72; }
.hub-pulse-card-placeholder strong { max-width: 90%; color: currentColor; font-size: 11px; }
.hub-pulse-card-placeholder svg { width: 24px; height: 24px; }
.hub-pulse-card-placeholder span { font-size: 9px; font-weight: 760; letter-spacing: .03em; }
.hub-pulse-card-author { display: grid; min-width: 0; grid-template-columns: 32px minmax(0,1fr); align-content: center; align-items: center; gap: 8px; padding: 14px; border-left: 1px solid #e8edf3; }
.hub-pulse-card-author .hub-avatar,.hub-pulse-card-author .hub-public-avatar { width: 32px; height: 32px; }
.hub-pulse-card-author>span { display: grid; min-width: 0; }
.hub-pulse-card-author strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.hub-pulse-card-author small { color: #8794a7; font-size: 9px; }
.hub-pulse-card-author p { display: flex; grid-column: 1/-1; align-items: center; gap: 4px; margin: 5px 0 0; color: #64748b; font-size: 10px; }
.hub-pulse-card-author p svg { width: 12px; height: 12px; margin-left: 5px; }
.hub-pulse-card-author p svg:first-child { margin-left: 0; }
.hub-pulse-access-link { position: relative; z-index: 2; display: inline-flex; min-height: 30px; grid-column: 1/-1; align-items: center; justify-content: space-between; gap: 6px; margin-top: 4px; padding: 7px 2px 0; border-top: 1px solid #e8edf3; color: #50627a; font-size: 9px; font-weight: 780; transition: .15s ease; }
.hub-pulse-access-link svg { width: 13px; height: 13px; }
.hub-pulse-access-link:hover,.hub-pulse-access-link:focus-visible { color: #087f83; }
.hub-thread-follow-control { position: relative; z-index: 3; display: inline-grid; width: 25px; height: 25px; margin-left: auto; place-items: center; padding: 0; border: 1px solid transparent; border-radius: 8px; background: transparent; color: #77869a; cursor: pointer; }
.hub-thread-follow-control svg { width: 14px; height: 14px; }
.hub-thread-follow-control[aria-busy] svg { opacity: .62; transform: scale(.82); }
.hub-thread-follow-control:hover,.hub-thread-follow-control:focus-visible { border-color: #b9d9dd; background: #ebf8f7; color: #008e8e; }
.hub-thread-follow-control[aria-pressed="true"] { border-color: #8fd0cd; background: #e6f8f6; color: #008e8e; }
.hub-thread-follow-control.labelled { display: inline-flex; width: auto; min-height: 32px; gap: 6px; padding: 0 9px; border-color: var(--hub-line); background: var(--hub-panel-soft); color: var(--hub-muted); font-size: 10px; font-weight: 760; }
.hub-pulse-progress { display: grid; max-width: 340px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 3px; margin-top: 8px; padding: 3px; border-radius: 9px; background: #eef3f7; }
.hub-pulse-progress>span { display: flex; min-width: 0; min-height: 25px; align-items: center; justify-content: center; gap: 4px; padding: 4px 6px; border-radius: 7px; color: #8b98aa; }
.hub-pulse-progress svg { width: 11px; height: 11px; flex: 0 0 auto; }
.hub-pulse-progress small { overflow: hidden; font-size: 8px; font-weight: 730; text-overflow: ellipsis; white-space: nowrap; }
.hub-pulse-progress>span.done { color: #3978c9; }
.hub-pulse-progress>span.current { background: #fff; color: #145fb4; box-shadow: 0 1px 5px rgba(27,62,104,.13); }
.hub-pulse-card.resolved .hub-pulse-progress>span.done { color: #12836a; }
.hub-pulse-card.resolved .hub-pulse-progress>span.current { color: #08725b; }

/* Rails, filters and index cards */
.hub-filter-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.hub-filter-chips :is(a,button) { display: inline-flex; min-height: 32px; align-items: center; padding: 7px 10px; border: 1px solid #ccd7e2; border-radius: 999px; background: #fff; color: #465b78; font: inherit; font-size: 10px; font-weight: 750; cursor: pointer; }
.hub-filter-chips :is(a,button).active,.hub-filter-chips :is(a,button):hover { border-color: rgba(0,168,168,.5); background: #ebfbfa; color: #008e8e; }
.hub-pulse-rail { display: grid; gap: 12px; }
.hub-pulse-rail>section { padding: 17px; border: 1px solid #d9e2ec; border-radius: 14px; background: #fff; box-shadow: var(--hub-shadow); }
.hub-pulse-rail section>header { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.hub-pulse-rail h2 { margin: 0; font-size: 15px; }
.hub-pulse-rail header>a { color: #2563eb; font-size: 10px; font-weight: 750; }
.hub-pulse-rail header>button { padding: 0; border: 0; background: transparent; color: #2563eb; font-size: 10px; font-weight: 750; cursor: pointer; }
.hub-pulse-rail p { margin: 0; color: #64748b; font-size: 12px; line-height: 1.55; }
.hub-pulse-quick-filters .hub-filter-chips { margin-bottom: 11px; }
.hub-pulse-quick-filters>.hub-button { width: 100%; min-height: 36px; justify-content: center; }
.hub-pulse-filter-empty { padding: 22px; border: 1px dashed #ccd7e2; border-radius: 12px; text-align: center; }
.hub-pulse-experts { display: flex; gap: 8px; overflow-x: auto; padding: 2px 1px 4px; }
.hub-pulse-experts>a { display: grid; flex: 0 0 40px; justify-items: center; gap: 4px; color: #465b78; font-size: 9px; }
.hub-pulse-experts>a>span { position: relative; display: inline-flex; }
.hub-pulse-experts .hub-avatar,.hub-pulse-experts .hub-public-avatar { width: 36px; height: 36px; }
.hub-pulse-experts>a>span>i { position: absolute; right: 0; bottom: 1px; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: #18a17e; }
.hub-pulse-experts small { max-width: 44px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hub-trending-topics { display: grid; margin: 0; padding: 0; list-style: none; }
.hub-trending-topics li { display: grid; grid-template-columns: 20px minmax(0,1fr) auto; align-items: center; gap: 7px; padding: 9px 0; border-top: 1px solid #e8edf3; }
.hub-trending-topics li:first-child { border-top: 0; }
.hub-trending-topics li>b { color: #9aa7b8; font-size: 11px; }
.hub-trending-topics li>a { overflow: hidden; color: #17243d; font-size: 11px; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.hub-trending-topics li>span { display: flex; align-items: center; gap: 2px; color: #18a17e; font-size: 9px; }
.hub-trending-topics svg { width: 11px; }
.hub-network-activity { display: grid; }
.hub-network-activity>a { display: grid; grid-template-columns: 30px minmax(0,1fr) auto; align-items: center; gap: 7px; padding: 9px 0; border-top: 1px solid #e8edf3; color: #17243d; }
.hub-network-activity>a:first-child { border-top: 0; }
.hub-network-activity .hub-avatar,.hub-network-activity .hub-public-avatar { width: 30px; height: 30px; }
.hub-network-activity span { display: grid; min-width: 0; }
.hub-network-activity strong,.hub-network-activity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hub-network-activity strong { font-size: 10px; }
.hub-network-activity small,.hub-network-activity time { color: #8794a7; font-size: 8px; }
.hub-rail-list { display: grid; }
.hub-rail-list>a { display: grid; gap: 3px; padding: 10px 0; border-top: 1px solid #e8edf3; color: #17243d; font-size: 11px; }
.hub-rail-list>a:first-child { border-top: 0; }
.hub-rail-list small { color: #8794a7; font-size: 9px; }
.hub-result-heading { min-height: 52px; }
.hub-result-heading>div h2 { margin: 0 0 2px; font-size: 20px; }
.hub-result-heading>div p { margin: 0; color: #64748b; font-size: 12px; }
.hub-result-heading>a { color: #2563eb; }
.hub-discussion-feed { gap: 12px; }
.hub-discussion-card { padding: 16px 18px; border-color: #d9e2ec; border-left: 5px solid #2563eb; border-radius: 14px; background: #fff; box-shadow: var(--hub-shadow); }
.hub-discussion-card[data-kind="discussion"] { border-left-color: #6550b8; }
.hub-discussion-card:focus-within,.hub-discussion-card:hover { border-color: rgba(0,168,168,.58); box-shadow: 0 13px 32px rgba(11,29,58,.08); }
.hub-discussion-card h2 { margin: 8px 0 6px; color: #17243d; font-size: 18px; line-height: 1.25; }
.hub-discussion-card>p { margin-bottom: 10px; color: #64748b; font-size: 13px; line-height: 1.5; -webkit-line-clamp: 2; }
.hub-discussion-card footer,.hub-discussion-card-head time { color: #64748b; }
.hub-kind-badge { border-color: #d9e2ec; background: #f0f4f8; color: #50647f; }
.hub-kind-badge.question { border-color: #c8dafc; background: #edf4ff; color: #1f55ba; }
.hub-kind-badge.discussion { border-color: #ded1ff; background: #f4efff; color: #6546aa; }
.hub-status { border-color: #d9e2ec; background: #f0f4f8; color: #50647f; }
.hub-status.resolved,.hub-status[data-status="resolved"] { border-color: #bfe8dc; background: #e8f8f3; color: #087c68; }
.hub-status[data-status="investigating"],.hub-status.invite { border-color: #efd18d; background: #fff5df; color: #8f5a00; }
.hub-tag { border-color: #dde5ee; background: #f0f4f8; color: #50647f; }
.hub-resolved-summary { display: grid; grid-template-columns: 260px 1fr; align-items: stretch; margin-bottom: 18px; overflow: hidden; border: 1px solid #d9e2ec; border-radius: 14px; background: #fff; box-shadow: var(--hub-shadow); }
.hub-resolved-summary>div { display: grid; padding: 16px; border-right: 1px solid #e8edf3; }
.hub-resolved-summary strong { font-size: 28px; }
.hub-resolved-summary span { color: #64748b; font-size: 11px; }
.hub-resolved-summary p { display: flex; align-items: center; gap: 9px; margin: 0; padding: 16px; font-size: 12px; }

/* Thread, wizard, other Hub surfaces */
.hub-panel,.hub-post,.hub-state-card,.hub-form,.hub-modal,.hub-thread-workspace-banner,.hub-technical-context,.hub-thread-resources,.hub-resolution-panel,.hub-review-editor,.hub-review-source,.hub-news-card,.hub-news-feature,.hub-article-header { border-color: #d9e2ec; background: #fff; color: #17243d; box-shadow: var(--hub-shadow); }
.hub-modal-root { color-scheme: light; }
.hub-modal :is(input,textarea,select),.hub-form :is(input,textarea,select),.hub-review-editor :is(input,textarea) { border-color: #cbd6e1; background: #fff; color: #17243d; color-scheme: light; }
.hub-form label { color: #17243d; }
.hub-form label small { color: #8794a7; }
.hub-wizard-progress span { color: #64748b; }
.hub-wizard-progress span b { border-color: #ccd7e2; background: #fff; color: #64748b; }
.hub-wizard-progress span.active { color: #17243d; }
.hub-wizard-progress span.active b { border-color: #00a8a8; background: #00a8a8; color: #fff; }
.hub-form-intro,.hub-form-notice,.hub-match-card,.hub-acknowledgement { border-color: #d9e2ec; background: #f8fafc; color: #17243d; }
.hub-form-notice.success { border-color: #bfe8dc; background: #e8f8f3; }
.hub-match-reason { background: #f0f4f8; color: #50647f; }
.hub-question-details { display: grid; gap: 14px; padding: 16px; border: 1px solid color-mix(in srgb,var(--hub-cyan) 28%,var(--hub-line)); border-radius: 12px; background: color-mix(in srgb,var(--hub-cyan) 3%,var(--hub-panel-soft)); }
.hub-question-details>header,.hub-question-evidence>header { display: flex; align-items: center; gap: 10px; }
.hub-question-details>header>span:last-child,.hub-question-evidence>header>span:last-child { display: grid; gap: 2px; }
.hub-question-details header small { color: var(--hub-muted); font-size: 11px; font-weight: 500; }
.hub-question-details .hub-row-icon { width: 34px; height: 34px; border-color: color-mix(in srgb,var(--hub-cyan) 35%,var(--hub-line)); background: color-mix(in srgb,var(--hub-cyan) 10%,var(--hub-panel)); color: var(--hub-cyan); }
.hub-question-evidence { display: grid; gap: 12px; }
.hub-question-evidence code { padding: 1px 4px; border-radius: 4px; background: color-mix(in srgb,var(--hub-blue) 8%,var(--hub-panel)); color: var(--hub-text); font-size: 10px; }
.hub-resource-source-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.hub-resource-source-tabs>button { display: flex; min-width: 0; align-items: center; gap: 10px; padding: 12px; border: 1px solid var(--hub-line); border-radius: 11px; background: var(--hub-panel); color: var(--hub-text); text-align: left; cursor: pointer; }
.hub-resource-source-tabs>button>svg { width: 20px; flex: 0 0 auto; color: var(--hub-muted); }
.hub-resource-source-tabs>button>span { display: grid; min-width: 0; gap: 2px; }
.hub-resource-source-tabs>button small { color: var(--hub-muted); font-size: 10px; }
.hub-resource-source-tabs>button[aria-pressed="true"] { border-color: var(--hub-cyan); background: color-mix(in srgb,var(--hub-cyan) 9%,var(--hub-panel)); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--hub-cyan) 28%,transparent); }
.hub-resource-source-tabs>button[aria-pressed="true"]>svg { color: var(--hub-cyan); }
.hub-resource-source-panel { display: grid; gap: 10px; padding: 13px; border: 1px solid var(--hub-line); border-radius: 11px; background: color-mix(in srgb,var(--hub-panel-soft) 78%,var(--hub-panel)); }
.hub-resource-source-panel[hidden] { display: none; }
.hub-resource-storage-note { display: flex; align-items: center; gap: 7px; margin: 0; color: var(--hub-muted); font-size: 10px; line-height: 1.45; }
.hub-resource-storage-note svg { width: 15px; flex: 0 0 auto; color: var(--hub-green); }
.hub-question-shared-workspace { display: grid; gap: 10px; padding: 13px; border: 1px solid color-mix(in srgb,var(--hub-violet) 30%,var(--hub-line)); border-radius: 11px; background: color-mix(in srgb,var(--hub-violet) 5%,var(--hub-panel)); }
.hub-question-shared-workspace>header { display: flex; align-items: center; gap: 9px; }
.hub-question-shared-workspace>header>span:last-child { display: grid; gap: 2px; }
.hub-question-shared-workspace>header small { color: var(--hub-muted); font-size: 10px; }
.hub-question-technical-details { border-top: 1px solid var(--hub-line); padding-top: 12px; }
.hub-question-technical-details>summary { display: grid; grid-template-columns: 34px minmax(0,1fr) 18px; align-items: center; gap: 10px; color: var(--hub-text); cursor: pointer; list-style: none; }
.hub-question-technical-details>summary::-webkit-details-marker { display: none; }
.hub-question-technical-details>summary>span:nth-child(2) { display: grid; gap: 2px; }
.hub-question-technical-details>summary small { color: var(--hub-muted); font-size: 10px; font-weight: 500; }
.hub-question-technical-details>summary>svg { width: 16px; color: var(--hub-muted); transition: transform .15s ease; }
.hub-question-technical-details[open]>summary>svg { transform: rotate(180deg); }
.hub-question-technical-fields { display: grid; gap: 14px; padding-top: 16px; }
.hub-question-technical-fields>p { margin: 0; color: var(--hub-muted); font-size: 11px; }
.hub-workspace-resource-browser { display: grid; max-height: 440px; overflow: auto; gap: 12px; padding: 12px; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel); }
.hub-workspace-resource-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.hub-workspace-resource-steps>section { display: grid; min-width: 0; align-content: start; gap: 8px; padding: 10px; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel-soft); }
.hub-workspace-resource-steps>section>header,.hub-question-supporting-resources>header { display: flex; align-items: center; gap: 8px; }
.hub-workspace-resource-steps>section>header>b { display: grid; width: 22px; height: 22px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--hub-cyan); color: #fff; font-size: 10px; }
.hub-workspace-resource-steps>section>header>span,.hub-question-supporting-resources>header { display: grid; gap: 1px; }
.hub-workspace-resource-steps header small,.hub-question-supporting-resources header small { color: var(--hub-muted); font-size: 9px; }
.hub-question-project-list,.hub-question-resource-list { display: grid; gap: 6px; }
.hub-question-project-list>button { display: flex; min-width: 0; align-items: center; gap: 7px; padding: 8px; border: 1px solid var(--hub-line); border-radius: 8px; background: var(--hub-panel); color: var(--hub-text); text-align: left; cursor: pointer; }
.hub-question-project-list>button>svg { width: 15px; flex: 0 0 auto; color: var(--hub-muted); }
.hub-question-project-list>button>span { display: grid; min-width: 0; gap: 1px; }
.hub-question-project-list>button :is(strong,small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hub-question-project-list>button small { color: var(--hub-muted); font-size: 9px; }
.hub-question-project-list>button[aria-pressed="true"] { border-color: var(--hub-cyan); background: color-mix(in srgb,var(--hub-cyan) 8%,var(--hub-panel)); }
.hub-question-project-list>button[aria-pressed="true"]>svg { color: var(--hub-cyan); }
.hub-question-resource-empty { margin: 0; padding: 11px 6px; color: var(--hub-muted); font-size: 10px; line-height: 1.45; text-align: center; }
.hub-question-supporting-resources { display: grid; gap: 8px; padding-top: 10px; border-top: 1px solid var(--hub-line); }
.hub-software-editor { display: grid; gap: 10px; }
.hub-software-editor>header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.hub-software-editor>header>span { display: grid; gap: 2px; }
.hub-software-editor .hub-button { min-height: 34px; padding-inline: 10px; font-size: 11px; }
.hub-software-list { display: grid; gap: 8px; }
.hub-software-row { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(130px,.8fr) 34px; align-items: end; gap: 9px; }
.hub-software-row>button { display: grid; width: 34px; height: 40px; place-items: center; border: 1px solid var(--hub-line); border-radius: 8px; background: var(--hub-panel); color: var(--hub-muted); cursor: pointer; }
.hub-software-row>button:hover { border-color: #c64158; color: #c64158; }
.hub-software-row>button svg { width: 15px; }
.hub-question-library-picker { display: grid; max-height: 250px; overflow: auto; gap: 12px; padding: 12px; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel); }
.hub-question-library-status,.hub-question-library-empty { display: flex; min-height: 64px; align-items: center; justify-content: center; gap: 9px; color: var(--hub-muted); font-size: 12px; text-align: center; }
.hub-question-library-empty>span { display: grid; gap: 3px; }
.hub-question-library-picker section { display: grid; gap: 7px; }
.hub-question-library-picker h4 { margin: 0; color: var(--hub-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.hub-question-library-picker section>div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
.hub-question-library-item { display: grid!important; grid-template-columns: 18px 30px minmax(0,1fr); align-items: center; gap: 8px!important; min-width: 0; padding: 9px; border: 1px solid var(--hub-line); border-radius: 9px; background: var(--hub-panel-soft); cursor: pointer; }
.hub-question-library-item:has(input:checked) { border-color: var(--hub-cyan); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--hub-cyan) 35%,transparent); }
.hub-question-library-item input { width: 16px!important; min-height: 16px!important; margin: 0; accent-color: var(--hub-cyan); }
.hub-question-library-item>span:nth-of-type(1) { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 8px; background: color-mix(in srgb,var(--hub-blue) 9%,var(--hub-panel)); color: var(--hub-blue); }
.hub-question-library-item>span:last-child { display: grid; min-width: 0; gap: 2px; }
.hub-question-library-item :is(strong,small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hub-question-library-item small { color: var(--hub-muted); font-size: 10px; }
.hub-question-upload { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(180px,.8fr); align-items: end; gap: 12px; }
.hub-question-file-list { display: flex; grid-column: 1/-1; flex-wrap: wrap; gap: 6px; }
.hub-question-file-list span { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border: 1px solid var(--hub-line); border-radius: 99px; background: var(--hub-panel); color: var(--hub-text); font-size: 10px; }
.hub-question-file-list svg { width: 12px; }
.hub-question-file-list small { color: var(--hub-muted); }
.hub-question-link-resources { border-top: 1px solid var(--hub-line); padding-top: 12px; }
.hub-question-link-resources summary { color: var(--hub-blue); font-size: 11px; font-weight: 750; cursor: pointer; }
.hub-question-link-resources[open] summary { margin-bottom: 12px; }
.hub-thread-page>.hub-page-header { padding: 24px; border: 1px solid #d9e2ec; border-radius: 14px; background: #fff; box-shadow: var(--hub-shadow); }
.hub-thread-layout { grid-template-columns: minmax(0,1fr) 300px; gap: 18px; }
.hub-post { border-radius: 14px; }
.hub-technical-prose { color: #334967; }
.hub-technical-context { background: #f8fafc; }
.hub-documented-solution { border-color: rgba(0,168,168,.4); background: linear-gradient(145deg,#f2fcfb,#fff 65%); box-shadow: 0 12px 35px rgba(0,120,120,.06); }
.hub-solution-area { border-color: rgba(0,168,168,.38); background: #f2fcfb; }
.hub-thread-resource-groups>section,.hub-thread-resource-groups li { border-color: #d9e2ec; background: #f8fafc; }
.hub-technical-prose pre { border-color: #d9e2ec; background: #0b1d3a; color: #f4f7fb; }
.hub-home-hero { border-color: rgba(0,168,168,.28); background: #0b1d3a; }
.hub-home-hero h1 { color: #fff; }
.hub-home-hero p { color: #c6d0de; }
.hub-public-actions { border-color: rgba(0,168,168,.4); background: linear-gradient(135deg,#ecfbfa,#fff); color: #17243d; }

/* Public SSR top navigation */
.hub-public-topbar { position: sticky; z-index: 100; top: 0; background: #0b1d3a; color: #fff; box-shadow: 0 8px 30px rgba(11,29,58,.16); }
.hub-public-topbar-inner { display: grid; width: min(calc(100% - 32px),1390px); min-height: 72px; grid-template-columns: auto 1fr auto; align-items: center; gap: 30px; margin: auto; }
.hub-public-brand { display: flex; align-items: center; gap: 10px; color: #fff; }
.hub-public-brand img { width: 42px; height: 42px; }
.hub-public-brand>span { display: grid; line-height: 1; }
.hub-public-brand strong { color: #fff; font-size: 17px; letter-spacing: .09em; }
.hub-public-brand small { margin-top: 4px; color: #aebdd0; font-size: 8px; letter-spacing: .08em; }
.hub-public-nav { display: flex; min-height: 72px; align-items: stretch; }
.hub-public-nav a { position: relative; display: flex; align-items: center; padding: 0 15px; color: #c7d3e2; font-weight: 700; }
.hub-public-nav a:hover,.hub-public-nav a.active { background: rgba(0,168,168,.12); color: #fff; }
.hub-public-nav a.active::after { position: absolute; right: 14px; bottom: 11px; left: 14px; height: 3px; border-radius: 99px; background: #23c5c0; content: ""; }
.hub-public-account { display: flex; align-items: center; gap: 8px; }
.hub-public-search { display: flex; min-width: 210px; min-height: 41px; align-items: center; gap: 8px; padding: 0 10px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; background: rgba(255,255,255,.055); color: #cbd7e7; }
.hub-public-search span { flex: 1; }
.hub-public-account .hub-button { min-height: 38px; border-color: rgba(255,255,255,.25); background: transparent; color: #fff; }
.hub-public-account .hub-button.primary { border-color: #00a8a8; background: #00a8a8; }

/* Reference board 07 — canonical thread and resolution */
.hub-thread-page { max-width: 1180px; }
.hub-thread-page .hub-breadcrumbs { margin-bottom: 16px; }
.hub-thread-heading {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 24px;
  margin: 0 0 18px; padding: 25px; border: 1px solid var(--hub-line);
  border-radius: 15px; background: var(--hub-panel); box-shadow: var(--hub-shadow);
}
.hub-thread-heading>div:first-child { flex: 1; }
.hub-thread-heading h1 { max-width: 820px; margin: 13px 0 12px; color: var(--hub-text); font-size: clamp(29px,3.4vw,43px); font-weight: 680; letter-spacing: -.035em; line-height: 1.08; }
.hub-thread-heading .hub-inline-labels { gap: 7px; }
.hub-thread-heading .hub-thread-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; color: var(--hub-muted); font-size: 12px; }
.hub-thread-heading .hub-thread-meta .hub-avatar { width: 30px; height: 30px; margin-right: 2px; }
.hub-thread-heading .hub-thread-meta strong { color: var(--hub-text)!important; }
.hub-thread-heading .hub-card-tags { margin-top: 12px; }
.hub-thread-heading-footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; margin-top: 13px; padding-top: 12px; border-top: 1px solid var(--hub-line-soft); }
.hub-thread-heading-footer>div:first-child { display: grid; flex: 1; gap: 8px; }
.hub-thread-heading-footer .hub-card-tags { margin: 0; }
.hub-thread-heading-footer .hub-thread-signals { margin: 0; }
.hub-thread-primary-actions { display: flex; max-width: 410px; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.hub-thread-primary-actions .hub-button { min-height: 32px; padding: 0 9px; border-color: transparent; background: var(--hub-panel-soft); color: var(--hub-muted); font-size: 10px; box-shadow: none; }
.hub-thread-primary-actions .hub-button svg { width: 13px; }
.hub-thread-primary-actions .hub-button:hover { border-color: var(--hub-line); color: var(--hub-text); }
.hub-thread-primary-actions .hub-button.primary { border-color: color-mix(in srgb,var(--hub-cyan) 55%,transparent); background: color-mix(in srgb,var(--hub-cyan) 12%,var(--hub-panel)); color: var(--hub-cyan); }
.hub-thread-primary-actions .hub-button.danger { color: color-mix(in srgb,var(--hub-pink) 78%,var(--hub-muted)); }
.hub-thread-primary-actions .hub-evidence-action { border-color: color-mix(in srgb,var(--hub-cyan) 48%,var(--hub-line)); color: var(--hub-cyan); }
.hub-thread-primary-actions .hub-workspace-action { border-color: color-mix(in srgb,var(--hub-violet) 42%,var(--hub-line)); color: var(--hub-violet); }
.hub-thread-management { position: relative; }
.hub-thread-management>summary { display: grid; width: 32px; height: 32px; place-items: center; border: 1px solid var(--hub-line); border-radius: 9px; background: var(--hub-panel-soft); color: var(--hub-muted); cursor: pointer; list-style: none; }
.hub-thread-management>summary::-webkit-details-marker { display: none; }
.hub-thread-management>summary svg { width: 15px; }
.hub-thread-management>div { position: absolute; z-index: 12; top: calc(100% + 6px); right: 0; display: grid; width: 170px; gap: 4px; padding: 7px; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel); box-shadow: 0 15px 35px rgba(11,29,58,.18); }
.hub-thread-management>div .hub-button { width: 100%; justify-content: flex-start; }
.hub-thread-layout { grid-template-columns: minmax(0,850px) minmax(270px,310px); gap: 24px; align-items: start; }
.hub-thread-reading { display: grid; gap: 17px; }
.hub-thread-context-bar { position: sticky; top: calc(var(--hub-topbar-height,64px) + 8px); z-index: 24; display: grid; min-width: 0; min-height: 168px; gap: 10px; padding: 12px 12px 12px 18px; overflow: hidden; border: 1px solid color-mix(in srgb,var(--hub-cyan) 64%,var(--hub-line)); border-radius: 14px; background: linear-gradient(115deg,color-mix(in srgb,var(--hub-cyan) 13%,var(--hub-panel)),color-mix(in srgb,var(--hub-panel) 94%,transparent) 62%); box-shadow: 0 16px 38px color-mix(in srgb,var(--hub-bg-deep) 32%,transparent),inset 4px 0 0 var(--hub-cyan); backdrop-filter: blur(16px); }
.hub-thread-context-summary { min-width: 0; }
.hub-thread-context-identity { display: grid; min-width: 0; gap: 5px; }
.hub-thread-context-labels { display: flex; min-width: 0; align-items: center; gap: 6px; }
.hub-thread-context-labels>span { color: var(--hub-cyan); font-size: 8px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.hub-thread-context-labels>em { display: inline-flex; align-items: center; min-height: 18px; padding: 2px 6px; border: 1px solid var(--hub-line); border-radius: 999px; background: var(--hub-panel-soft); color: var(--hub-muted); font-size: 7px; font-style: normal; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.hub-thread-context-labels>em.question { border-color: color-mix(in srgb,var(--hub-blue-bright) 48%,var(--hub-line)); color: var(--hub-blue-bright); }
.hub-thread-context-labels>em.discussion { border-color: color-mix(in srgb,var(--hub-violet) 48%,var(--hub-line)); color: var(--hub-violet); }
.hub-thread-context-labels>em.status { border-color: color-mix(in srgb,var(--hub-cyan) 38%,var(--hub-line)); color: var(--hub-cyan); }
.hub-thread-context-identity>strong { display: block; overflow: hidden; color: var(--hub-text); font-size: 14px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.hub-thread-context-meta { display: flex; min-width: 0; align-items: center; gap: 10px; overflow: hidden; color: var(--hub-muted); }
.hub-thread-context-meta>span { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 4px; font-size: 9px; font-weight: 720; white-space: nowrap; }
.hub-thread-context-meta svg { width: 11px; height: 11px; color: var(--hub-cyan); }
.hub-thread-context-content { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr); min-width: 0; gap: 9px; }
.hub-thread-context-content>section { display: grid; min-width: 0; align-content: start; gap: 6px; padding: 8px 9px; border: 1px solid var(--hub-line); border-radius: 10px; background: color-mix(in srgb,var(--hub-panel-soft) 88%,transparent); }
.hub-thread-context-content>section>header { display: flex; min-height: 16px; align-items: center; gap: 5px; color: var(--hub-cyan); }
.hub-thread-context-content>section>header svg { width: 12px; height: 12px; }
.hub-thread-context-content>section>header span { font-size: 8px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.hub-thread-context-content>section>header b { display: grid; min-width: 17px; height: 17px; place-items: center; padding-inline: 4px; border-radius: 999px; background: color-mix(in srgb,var(--hub-cyan) 15%,var(--hub-panel)); font-size: 7px; }
.hub-thread-context-problem p { display: -webkit-box; margin: 0; overflow: hidden; color: var(--hub-text); font-size: 10px; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.hub-thread-context-resource-track { display: flex; min-width: 0; gap: 6px; overflow-x: auto; padding-bottom: 1px; scrollbar-width: thin; }
.hub-thread-context-resource-track>a,.hub-thread-context-resource-track>button,.hub-thread-context-resource-track>span.restricted { display: grid; flex: 0 0 148px; height: 54px; grid-template-columns: 48px minmax(0,1fr); align-items: center; gap: 7px; min-width: 0; padding: 4px; overflow: hidden; border: 1px solid var(--hub-line); border-radius: 8px; background: var(--hub-panel); color: var(--hub-text); font: inherit; text-align: left; }
.hub-thread-context-resource-track>a,.hub-thread-context-resource-track>button { cursor: pointer; }
.hub-thread-context-resource-track>a:hover,.hub-thread-context-resource-track>button:hover,.hub-thread-context-resource-track>a:focus-visible,.hub-thread-context-resource-track>button:focus-visible { border-color: color-mix(in srgb,var(--hub-cyan) 65%,var(--hub-line)); background: color-mix(in srgb,var(--hub-cyan) 9%,var(--hub-panel)); outline: none; }
.hub-thread-context-resource-thumb { display: grid; width: 48px; height: 44px; overflow: hidden; place-items: center; border-radius: 6px; background: var(--hub-panel-soft); color: var(--hub-cyan); }
.hub-thread-context-resource-thumb img { width: 100%; height: 100%; object-fit: cover; }
.hub-thread-context-resource-thumb svg { width: 15px; height: 15px; }
.hub-thread-context-resource-copy { display: grid; min-width: 0; gap: 3px; }
.hub-thread-context-resource-copy em { color: var(--hub-cyan); font-size: 6px; font-style: normal; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.hub-thread-context-resource-copy strong { display: block; overflow: hidden; color: var(--hub-text); font-size: 8px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.hub-thread-context-resources-empty { margin: 4px 0 0; color: var(--hub-muted); font-size: 9px; }
.hub-thread-problem { padding: 25px; border: 1px solid var(--hub-line); border-radius: 15px; background: var(--hub-panel); box-shadow: var(--hub-shadow); }
.hub-thread-problem>header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.hub-thread-problem>header h2 { margin: 0 0 4px; font-size: 21px; }
.hub-thread-problem>header p { margin: 0; color: var(--hub-muted); font-size: 12px; }
.hub-thread-problem>.hub-technical-prose { max-width: none; color: var(--hub-text); font-size: 15px; line-height: 1.7; }
.hub-problem-context-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 12px; margin: 20px 0 0; }
.hub-problem-context-cards>div { display: grid; min-height: 74px; align-content: start; gap: 6px; padding: 14px; border: 1px solid var(--hub-line); border-radius: 11px; background: var(--hub-panel-soft); }
.hub-problem-context-cards dt { color: var(--hub-muted); font-size: 10px; font-weight: 850; letter-spacing: .075em; text-transform: uppercase; }
.hub-problem-context-cards dd { margin: 0; color: var(--hub-text); font-size: 12px; font-weight: 720; line-height: 1.45; }
.hub-thread-problem .hub-technical-context { margin: 18px 0 0; border-color: var(--hub-line); background: var(--hub-panel-soft); }
.hub-thread-problem .hub-technical-context dl>div { display: grid; justify-content: initial; gap: 5px; margin: 7px 0; padding: 13px; border: 1px solid var(--hub-line); border-radius: 11px; background: var(--hub-bg); }
.hub-thread-problem .hub-technical-context dt { color: var(--hub-muted); font-size: 10px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.hub-thread-problem .hub-technical-context dd { color: var(--hub-text); font-weight: 720; text-align: left; }
.hub-thread-resources { order: initial; margin: 0; padding: 19px; border-color: color-mix(in srgb,var(--hub-cyan) 48%,var(--hub-line)); background: linear-gradient(145deg,color-mix(in srgb,var(--hub-cyan) 9%,var(--hub-panel)),var(--hub-panel) 72%); box-shadow: inset 3px 0 0 color-mix(in srgb,var(--hub-cyan) 80%,transparent),var(--hub-shadow); scroll-margin-top: 130px; }
.hub-thread-resources>header { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; margin-bottom: 10px; }
.hub-thread-resources>header .eyebrow { display: block; margin-bottom: 4px; font-size: 9px; }
.hub-thread-resources>header h2 { margin: 0 0 3px; font-size: 20px; }
.hub-thread-resources>header p { margin: 0; color: var(--hub-muted); font-size: 11px; }
.hub-thread-resource-controls { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 9px; }
.hub-thread-resource-controls>span { color: var(--hub-muted); font-size: 10px; font-weight: 750; white-space: nowrap; }
.hub-thread-resource-controls .hub-button { min-height: 32px; padding: 0 10px; border-color: color-mix(in srgb,var(--hub-cyan) 38%,var(--hub-line)); background: color-mix(in srgb,var(--hub-cyan) 8%,var(--hub-panel)); color: var(--hub-cyan); font-size: 10px; box-shadow: none; }
.hub-thread-resource-controls .hub-button svg { width: 13px; height: 13px; }
.hub-thread-resource-groups { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px; }
.hub-thread-resource-groups>section { flex: 1 1 100%; max-width: none; min-width: 0; padding: 10px 12px; border: 1px solid var(--hub-line); border-radius: 11px; background: var(--hub-panel-soft); }
.hub-thread-resource-groups>section>header { display: flex; align-items: center; gap: 8px; }
.hub-thread-resource-groups>section>header .hub-row-icon { width: 30px; height: 30px; flex: 0 0 auto; border-radius: 8px; background: color-mix(in srgb,var(--hub-cyan) 10%,var(--hub-panel)); color: var(--hub-cyan); }
.hub-thread-resource-groups>section>header .hub-row-icon svg { width: 15px; }
.hub-thread-resource-groups>section>header>span:last-child { display: grid; min-width: 0; }
.hub-thread-resource-groups>section h3 { margin: 0; font-size: 11px; }
.hub-thread-resource-groups>section header small { color: var(--hub-muted); font-size: 9px; }
.hub-thread-resource-groups ul { max-height: none; margin: 5px 0 0; padding: 0; overflow: visible; list-style: none; }
.hub-thread-resource-groups li { display: grid; grid-template-columns: 170px minmax(0,1fr) auto; align-items: center; min-width: 0; gap: 12px; min-height: 122px; padding: 7px 0; border: 0; border-top: 1px solid var(--hub-line-soft); background: transparent; }
.hub-thread-resource-preview { position: relative; display: grid; place-items: center; width: 170px; height: 108px; margin: 0; overflow: hidden; border: 1px solid var(--hub-line); border-radius: 8px; background: color-mix(in srgb,var(--hub-cyan) 7%,var(--hub-panel)); color: var(--hub-cyan); }
.hub-thread-resource-preview img { width: 100%; height: 100%; object-fit: cover; }
.hub-thread-resource-preview-button { position: relative; display: block; width: 100%; height: 100%; padding: 0; overflow: hidden; border: 0; border-radius: inherit; background: transparent; color: inherit; cursor: zoom-in; }
.hub-thread-resource-preview-button:focus-visible { outline: 3px solid color-mix(in srgb,var(--hub-blue-bright) 75%,transparent); outline-offset: -3px; }
.hub-thread-resource-groups .hub-thread-resource-preview>span { display: none; place-items: center; width: 100%; height: 100%; }
.hub-thread-resource-groups .hub-thread-resource-preview.placeholder>span { display: grid; }
.hub-thread-resource-preview-button .hub-thread-resource-preview-fallback { display: none; width: 100%; height: 100%; place-items: center; color: var(--hub-muted); font-size: 11px; }
.hub-thread-resource-preview.failed .hub-thread-resource-preview-button img { display: none; }
.hub-thread-resource-preview.failed .hub-thread-resource-preview-button .hub-thread-resource-preview-fallback { display: grid; }
.hub-thread-resource-preview-hint { position: absolute; right: 10px; bottom: 10px; display: inline-flex; width: auto; height: auto; align-items: center; gap: 5px; padding: 6px 9px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; background: rgba(5,18,31,.78); color: #fff; font-size: 9px; font-weight: 800; opacity: 0; transform: translateY(4px); transition: opacity .18s ease,transform .18s ease; }
.hub-thread-resource-preview-button:hover .hub-thread-resource-preview-hint,.hub-thread-resource-preview-button:focus-visible .hub-thread-resource-preview-hint { opacity: 1; transform: translateY(0); }
.hub-thread-resource-preview.failed .hub-thread-resource-preview-hint { display: none; }
.hub-thread-resource-preview svg { width: 17px; height: 17px; }
.hub-thread-resource-copy { display: block; min-width: 0; }
.hub-thread-resource-copy em { margin-bottom: 3px; }
.hub-thread-resource-type { display: inline-flex; width: max-content; max-width: 100%; align-items: center; gap: 4px; padding: 2px 6px; border: 1px solid color-mix(in srgb,var(--hub-cyan) 36%,var(--hub-line)); border-radius: 999px; background: color-mix(in srgb,var(--hub-cyan) 8%,var(--hub-panel)); color: var(--hub-cyan); font-size: 8px; font-style: normal; font-weight: 850; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; }
.hub-thread-resource-type svg { width: 10px; height: 10px; flex: 0 0 auto; }
.hub-thread-resource-type.image { border-color: color-mix(in srgb,var(--hub-blue-bright) 40%,var(--hub-line)); background: color-mix(in srgb,var(--hub-blue-bright) 9%,var(--hub-panel)); color: var(--hub-blue-bright); }
.hub-thread-resource-type.product,.hub-thread-resource-type.subset { border-color: color-mix(in srgb,var(--hub-green) 42%,var(--hub-line)); background: color-mix(in srgb,var(--hub-green) 9%,var(--hub-panel)); color: var(--hub-green); }
.hub-thread-resource-type.code { border-color: color-mix(in srgb,var(--hub-blue) 42%,var(--hub-line)); background: color-mix(in srgb,var(--hub-blue) 9%,var(--hub-panel)); color: var(--hub-blue); }
.hub-thread-resource-type.file { border-color: color-mix(in srgb,var(--hub-muted) 45%,var(--hub-line)); background: color-mix(in srgb,var(--hub-muted) 8%,var(--hub-panel)); color: var(--hub-text); }
.hub-thread-resource-groups li strong,.hub-thread-resource-groups li small { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hub-thread-resource-groups li strong { color: var(--hub-text); font-size: 10px; line-height: 1.35; }
.hub-thread-resource-groups li small { margin-top: 2px; color: var(--hub-muted); font-size: 9px; }
.hub-thread-resource-action { display: inline-flex; align-items: center; justify-content: center; gap: 4px; min-height: 27px; padding: 4px 7px; border: 1px solid var(--hub-line); border-radius: 7px; background: transparent; color: var(--hub-text); font: inherit; font-size: 9px; font-weight: 800; white-space: nowrap; cursor: pointer; }
.hub-thread-resource-action:hover { border-color: color-mix(in srgb,var(--hub-cyan) 55%,var(--hub-line)); color: var(--hub-cyan); }
.hub-thread-resource-action:disabled { cursor: default; opacity: .68; }
.hub-thread-resource-action svg { width: 11px; height: 11px; }
.hub-thread-resource-restricted { display: inline-flex; align-items: center; gap: 4px; color: var(--hub-muted); font-size: 9px; font-weight: 750; }
.hub-thread-resource-restricted svg { width: 11px; height: 11px; }
.hub-thread-resources-empty { margin: 0; color: var(--hub-muted); font-size: 11px; }
.hub-modal-image { width: min(1120px,100%); max-height: calc(100dvh - 36px); }
.hub-modal-image .hub-modal-body { display: grid; padding: 14px; overflow: auto; }
.hub-thread-image-modal { display: grid; min-height: 0; place-items: center; gap: 10px; margin: 0; }
.hub-thread-image-modal img { display: block; max-width: 100%; max-height: calc(100dvh - 150px); border-radius: 8px; object-fit: contain; }
.hub-thread-image-modal figcaption { color: var(--hub-muted); font-size: 10px; }
.hub-documented-solution { --hub-solution-accent: var(--hub-green); margin: 0; padding: 22px; border-color: color-mix(in srgb,var(--hub-solution-accent) 58%,var(--hub-line)); background: linear-gradient(145deg,color-mix(in srgb,var(--hub-solution-accent) 12%,var(--hub-panel)),color-mix(in srgb,var(--hub-solution-accent) 4%,var(--hub-panel))); box-shadow: inset 4px 0 0 color-mix(in srgb,var(--hub-solution-accent) 82%,transparent),0 12px 35px color-mix(in srgb,var(--hub-solution-accent) 10%,transparent); }
.hub-documented-solution .eyebrow { color: color-mix(in srgb,var(--hub-solution-accent) 88%,var(--hub-text)); }
.hub-documented-solution>header { padding-bottom: 3px; }
.hub-documented-solution>header h2 { font-size: 20px; }
.hub-documented-solution>section { padding-top: 13px; border-top: 1px solid var(--hub-line-soft); }
.hub-accepted-resolution { --hub-solution-accent: var(--hub-green); }
.hub-resolution-source-link { display: inline-flex; align-items: center; gap: 5px; margin-top: 10px; color: var(--hub-cyan); font-size: 11px; font-weight: 750; }
.hub-resolution-source-link svg { width: 14px; }
.hub-solution-area { margin: 0; background: color-mix(in srgb,var(--hub-cyan) 6%,var(--hub-panel)); }
.hub-thread-feed { display: grid; gap: 14px; overflow: visible; border: 0; background: transparent; }
.hub-thread-feed-title { display: flex; align-items: end; justify-content: space-between; gap: 16px; padding: 5px 0 0; border: 0; }
.hub-thread-feed-title h2 { margin: 0; font-size: 24px; }
.hub-thread-feed-title p { margin: 3px 0 0; color: var(--hub-muted); font-size: 12px; }
.hub-reply-sort { display: inline-flex; min-height: 36px; align-items: center; gap: 5px; padding: 0 11px; border: 1px solid var(--hub-line); border-radius: 9px; background: var(--hub-panel); color: var(--hub-text); font-size: 11px; font-weight: 750; }
.hub-reply-sort svg { width: 13px; }
.hub-thread-feed .hub-post { margin: 0; padding: 20px; border: 1px solid var(--hub-line); border-radius: 15px; background: var(--hub-panel); box-shadow: var(--hub-shadow); }
.hub-thread-page .hub-post[class*="author-color-"] { border-left: 1px solid var(--hub-line); background: var(--hub-panel); }
.hub-thread-feed .hub-post-accepted { border-color: color-mix(in srgb,var(--hub-cyan) 55%,var(--hub-line)); box-shadow: inset 3px 0 0 var(--hub-cyan),var(--hub-shadow); }
.hub-thread-feed .hub-post-body { color: var(--hub-text); font-size: 14px; }
.hub-thread-feed .hub-post-actions { border-color: var(--hub-line-soft); }
.hub-continue-investigation { padding: 22px; border: 1px solid var(--hub-line); border-radius: 15px; background: var(--hub-panel); box-shadow: var(--hub-shadow); }
.hub-continue-investigation>div h2 { margin: 0 0 4px; font-size: 19px; }
.hub-continue-investigation>div p { margin: 0 0 16px; color: var(--hub-muted); }
.hub-continue-investigation .hub-composer { margin: 0; border: 0; padding: 0; background: transparent; box-shadow: none; }
.hub-thread-page .hub-rail { position: sticky; top: calc(var(--hub-topbar-height,64px) + 12px); display: grid; max-height: calc(100vh - var(--hub-topbar-height,64px) - 24px); gap: 14px; overflow-y: auto; padding-right: 3px; scroll-behavior: smooth; scrollbar-width: thin; }
.hub-thread-page :is(#thread-overview,#thread-discussion,#thread-resolution,#thread-workspace) { scroll-margin-top: 130px; }
.hub-thread-page .hub-rail>.hub-panel { overflow: hidden; padding: 0 18px 18px; border: 1px solid var(--hub-line); border-radius: 15px; background: var(--hub-panel); box-shadow: var(--hub-shadow); }
.hub-thread-page .hub-rail .hub-panel-title { min-height: 0; margin: 0 -18px 12px; padding: 18px 18px 8px; }
.hub-thread-page .hub-rail .hub-panel-title h2 { font-size: 17px; }
.hub-resolution-panel { padding-bottom: 10px!important; }
.hub-resolution-path { padding: 0 0 4px; }
.hub-resolution-path li { min-height: 55px; grid-template-columns: 22px 1fr; align-items: start; padding-top: 6px; color: var(--hub-muted); }
.hub-resolution-path li:not(:last-child)::after { top: 28px; bottom: -7px; left: 10px; background: var(--hub-line); }
.hub-resolution-path li.done:not(:last-child)::after { background: color-mix(in srgb,var(--hub-green) 58%,var(--hub-line)); }
.hub-resolution-marker { position: relative; z-index: 1; display: grid; width: 20px; height: 20px; place-items: center; border: 1px solid var(--hub-line); border-radius: 50%; background: var(--hub-panel); color: var(--hub-muted); }
.hub-resolution-marker svg { width: 12px; height: 12px; }
.hub-resolution-path li.done .hub-resolution-marker { border-color: var(--hub-green); background: var(--hub-green); color: #fff; }
.hub-resolution-path li.current .hub-resolution-marker { border-color: var(--hub-cyan); box-shadow: 0 0 0 4px color-mix(in srgb,var(--hub-cyan) 16%,transparent); }
.hub-resolution-path li>span:last-child { display: grid; gap: 3px; }
.hub-resolution-path strong { color: var(--hub-text); font-size: 12px; }
.hub-resolution-path small { color: var(--hub-muted); font-size: 10px; }
.hub-connected-workspace>strong { display: block; margin-bottom: 4px; color: var(--hub-text); }
.hub-connected-workspace>p,.hub-thread-participants>p { margin: 0 0 11px; color: var(--hub-muted); font-size: 11px; line-height: 1.5; }
.hub-connected-workspace .hub-card-tags { margin-bottom: 12px; }
.hub-connected-workspace .hub-button { width: 100%; min-height: 36px; }
.hub-connected-workspace.empty { text-align: center; }
.hub-connected-workspace.empty .hub-panel-title { text-align: left; }
.hub-thread-workspace-list { display: grid; gap: 11px; }
.hub-thread-workspace-card { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 9px; padding-top: 11px; border-top: 1px solid var(--hub-line-soft); }
.hub-thread-workspace-card:first-child { padding-top: 0; border-top: 0; }
.hub-thread-workspace-icon { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 9px; background: color-mix(in srgb,var(--hub-violet) 10%,var(--hub-panel)); color: var(--hub-violet); }
.hub-thread-workspace-icon svg { width: 17px; }
.hub-thread-workspace-card>div:last-child { display: grid; min-width: 0; gap: 5px; }
.hub-thread-workspace-card p { margin: 0; color: var(--hub-muted); font-size: 10px; line-height: 1.4; }
.hub-workspace-facts { display: flex; flex-wrap: wrap; gap: 5px 8px; color: var(--hub-muted); font-size: 9px; }
.hub-workspace-facts span { display: inline-flex; align-items: center; gap: 3px; }
.hub-workspace-facts svg { width: 10px; }
.hub-thread-workspace-card .hub-inline-actions { gap: 5px; }
.hub-connected-workspace .hub-thread-workspace-card .hub-button { width: auto; min-height: 31px; padding-inline: 8px; font-size: 9px; }
.hub-access-request-panel { display: grid; gap: 14px; }
.hub-access-request-panel>header { display: flex; align-items: center; gap: 10px; }
.hub-access-request-panel>header>span:last-child { display: grid; gap: 2px; }
.hub-access-request-panel>header small { color: var(--hub-muted); }
.hub-access-request-list { display: grid; gap: 9px; }
.hub-access-request-list article { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 12px; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel-soft); }
.hub-access-request-list article>div:nth-child(2) { display: grid; gap: 2px; }
.hub-access-request-list article small,.hub-access-request-list article time { color: var(--hub-muted); font-size: 10px; }
.hub-access-request-list article p { margin: 4px 0; color: var(--hub-text); font-size: 11px; }
.hub-empty-workspace-icon { display: grid; width: 42px; height: 42px; place-items: center; margin: 0 auto 10px; border-radius: 12px; background: color-mix(in srgb,var(--hub-cyan) 10%,var(--hub-panel)); color: var(--hub-cyan); }
.hub-empty-workspace-icon svg { width: 20px; }
.hub-related-threads>a { display: grid; gap: 4px; padding: 12px 0; border-top: 1px solid var(--hub-line-soft); color: var(--hub-text); }
.hub-related-threads>a:first-of-type { border-top: 0; }
.hub-related-threads>a strong { font-size: 11px; line-height: 1.4; }
.hub-related-threads>a small { color: var(--hub-muted); font-size: 9px; }
.hub-thread-participants .hub-panel-title>span { color: var(--hub-muted); font-size: 11px; }
.hub-participant-stack { display: flex; align-items: center; margin: 2px 0 11px; padding-left: 4px; }
.hub-participant-avatar { display: inline-flex; margin-left: -5px; }
.hub-participant-avatar:first-child { margin-left: 0; }
.hub-participant-avatar .hub-avatar { width: 34px; height: 34px; border: 2px solid var(--hub-panel); background: var(--chat-author,var(--hub-cyan)); box-shadow: none; font-size: 10px; }
.hub-participant-more { display: grid; min-width: 34px; height: 34px; place-items: center; margin-left: -5px; border: 2px solid var(--hub-panel); border-radius: 50%; background: var(--hub-bg-deep); color: var(--hub-muted); font-size: 10px; font-weight: 800; }
.hub-thread-details .hub-definition-list>div { border-color: var(--hub-line-soft); }
.hub-public-avatar { display: inline-grid; width: 30px; height: 30px; flex: 0 0 auto; place-items: center; border: 2px solid var(--hub-panel); border-radius: 50%; background: #2298c9; color: #fff; font-size: 10px; font-weight: 850; }
.hub-public-context-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 12px; margin: 18px 0 0; }
.hub-public-context-grid>div { display: grid; gap: 5px; padding: 13px; border: 1px solid var(--hub-line); border-radius: 11px; background: var(--hub-panel-soft); }
.hub-public-context-grid dt { color: var(--hub-muted); font-size: 10px; font-weight: 850; letter-spacing: .07em; }
.hub-public-context-grid dd { margin: 0; color: var(--hub-text); font-weight: 720; }
.hub-public-resource-summary { display: grid; grid-template-columns: repeat(auto-fit,minmax(115px,1fr)); gap: 8px; }
.hub-public-resource-summary>span { display: grid; gap: 3px; padding: 11px; border: 1px solid var(--hub-line); border-radius: 10px; background: var(--hub-panel-soft); }
.hub-public-resource-summary small { color: var(--hub-muted); font-size: 10px; }
.hub-public-reply .hub-post-header { align-items: center; }
.hub-public-reply .hub-post-header>div { display: grid; flex: 1; gap: 2px; }
.hub-public-reply .hub-post-header small { color: var(--hub-muted); }
.hub-public-reply-actions { display: flex; gap: 16px; margin-top: 14px; color: var(--hub-muted); font-size: 10px; font-weight: 750; }
.hub-public-reply-actions a { color: var(--hub-muted); }
.hub-replying-context { display: flex; min-height: 34px; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; padding: 7px 9px; border: 1px solid color-mix(in srgb,var(--hub-cyan) 45%,var(--hub-line)); border-radius: 8px; background: color-mix(in srgb,var(--hub-cyan) 7%,var(--hub-panel)); color: var(--hub-cyan); font-size: 11px; font-weight: 750; }
.hub-replying-context[hidden] { display: none; }
.hub-replying-context button { display: grid; width: 24px; height: 24px; place-items: center; border: 0; border-radius: 6px; background: transparent; color: currentColor; cursor: pointer; }
.hub-replying-context button:hover { background: color-mix(in srgb,var(--hub-cyan) 12%,transparent); }
.hub-replying-context svg { width: 13px; }

/* The V3 surfaces follow the app theme instead of forcing the light palette. */
html[data-theme="dark"] {
  color-scheme: dark;
  --hub-bg: #071426; --hub-bg-deep: #0b1b2f; --hub-panel: #0d1e32; --hub-panel-soft: #10243a;
  --hub-line: #29425c; --hub-line-soft: #1e354d; --hub-text: #edf4fb; --hub-muted: #9fb0c3;
  --hub-faint: #7f93a9; --hub-blue: #71a7ff; --hub-blue-bright: #8db9ff; --hub-cyan: #23c5c0;
  --hub-green: #34b995; --hub-amber: #f2c84b; --hub-pink: #ff7eb6;
  --hub-shadow: 0 12px 32px rgba(0,0,0,.22);
}
html[data-theme="dark"] body.reach-hub,html[data-theme="dark"] body.reach-hub .hub-main { background: var(--hub-bg); color: var(--hub-text); }
html[data-theme="dark"] .reach-hub :is(h1,h2,h3,strong) { color: var(--hub-text); }
html[data-theme="dark"] .reach-hub p { color: var(--hub-muted); }
html[data-theme="dark"] .reach-hub :is(.hub-panel,.hub-post,.hub-state-card,.hub-form,.hub-modal,.hub-thread-heading,.hub-thread-problem,.hub-thread-resources,.hub-documented-solution,.hub-solution-area,.hub-continue-investigation,.hub-news-card,.hub-news-feature,.hub-article-header,.hub-pulse-metric,.hub-pulse-card,.hub-discussion-card,.hub-resolved-summary,.hub-pulse-rail>section) { border-color: var(--hub-line); background: var(--hub-panel); color: var(--hub-text); }
html[data-theme="dark"] .reach-hub :is(.hub-search-field,.hub-filter-grid select,.hub-filter-chips a,.hub-filter-chips button,.hub-button,.hub-reply-sort,.hub-modal input,.hub-modal textarea,.hub-modal select,.hub-form input,.hub-form textarea,.hub-form select) { border-color: var(--hub-line); background: var(--hub-panel-soft); color: var(--hub-text); color-scheme: dark; }
html[data-theme="dark"] .reach-hub :is(.hub-tag,.hub-status,.hub-kind-badge,.hub-match-reason) { border-color: var(--hub-line); background: var(--hub-panel-soft); color: var(--hub-muted); }
html[data-theme="dark"] .reach-hub :is(.hub-pulse-card h3 a,.hub-discussion-card h2,.hub-rail-list>a,.hub-related-threads>a,.hub-filter-chips a,.hub-filter-chips button) { color: var(--hub-text); }
html[data-theme="dark"] .reach-hub .hub-pulse-card-author { border-color: var(--hub-line-soft); }
html[data-theme="dark"] .reach-hub .hub-pulse-card-author .hub-pulse-access-link { border-color: var(--hub-line-soft); }
html[data-theme="dark"] .reach-hub .hub-pulse-access-link { color: var(--hub-muted); }
html[data-theme="dark"] .reach-hub .hub-pulse-access-link:hover,html[data-theme="dark"] .reach-hub .hub-pulse-access-link:focus-visible { background: color-mix(in srgb,var(--hub-cyan) 12%,var(--hub-panel)); color: var(--hub-cyan); }
html[data-theme="dark"] .reach-hub .hub-pulse-progress { background: var(--hub-bg-deep); }
html[data-theme="dark"] .reach-hub .hub-pulse-progress>span { color: var(--hub-faint); }
html[data-theme="dark"] .reach-hub .hub-pulse-progress>span.done { color: var(--hub-blue-bright); }
html[data-theme="dark"] .reach-hub .hub-pulse-progress>span.current { background: color-mix(in srgb,var(--hub-blue) 14%,var(--hub-panel)); color: #d7e8ff; box-shadow: none; }
html[data-theme="dark"] .reach-hub .hub-pulse-card.resolved .hub-pulse-progress>span.done,html[data-theme="dark"] .reach-hub .hub-pulse-card.resolved .hub-pulse-progress>span.current { color: #72d9bd; }
html[data-theme="dark"] .reach-hub .hub-thread-follow-control { color: var(--hub-muted); }
html[data-theme="dark"] .reach-hub .hub-thread-follow-control:hover,html[data-theme="dark"] .reach-hub .hub-thread-follow-control:focus-visible,html[data-theme="dark"] .reach-hub .hub-thread-follow-control[aria-pressed="true"] { border-color: color-mix(in srgb,var(--hub-cyan) 48%,var(--hub-line)); background: color-mix(in srgb,var(--hub-cyan) 12%,var(--hub-panel)); color: var(--hub-cyan); }
html[data-theme="dark"] .reach-hub .hub-pulse-card-placeholder { background: repeating-linear-gradient(135deg,var(--hub-panel-soft),var(--hub-panel-soft) 8px,var(--hub-bg-deep) 8px,var(--hub-bg-deep) 16px); color: var(--hub-muted); }
html[data-theme="dark"] .reach-hub :is(.hub-trending-topics li,.hub-network-activity>a) { border-color: var(--hub-line-soft); }
html[data-theme="dark"] .reach-hub :is(.hub-trending-topics li>a,.hub-network-activity>a,.hub-pulse-experts>a) { color: var(--hub-text); }
html[data-theme="dark"] .reach-hub .hub-pulse-experts>a>span>i { border-color: var(--hub-panel); }
html[data-theme="dark"] .reach-hub :is(.hub-thread-resource-groups>section,.hub-thread-problem .hub-technical-context,.hub-thread-problem .hub-technical-context dl>div) { border-color: var(--hub-line); background: var(--hub-panel-soft); }
html[data-theme="dark"] .reach-hub .hub-documented-solution { background: linear-gradient(145deg,color-mix(in srgb,var(--hub-green) 14%,var(--hub-panel)),color-mix(in srgb,var(--hub-green) 5%,var(--hub-panel))); }
html[data-theme="dark"] .reach-hub .hub-solution-area { background: color-mix(in srgb,var(--hub-green) 8%,var(--hub-panel)); }
html[data-theme="dark"] .reach-hub .hub-button.primary { border-color: #23c5c0; background: #008e8e; color: #fff; }
html[data-theme="dark"] .reach-hub .hub-kind-badge.question { border-color: #355e91; background: #122b48; color: #8db9ff; }
html[data-theme="dark"] .reach-hub .hub-status.resolved { border-color: #275f55; background: #10372f; color: #72d9bd; }
html[data-theme="dark"] .reach-hub .hub-modal-root { color-scheme: dark; }
html[data-theme="dark"] .reach-hub .hub-modal-body { color: var(--hub-text); }
html[data-theme="dark"] .reach-hub .hub-wizard-progress span { border-color: var(--hub-line); color: #b6c5d5; }
html[data-theme="dark"] .reach-hub .hub-wizard-progress span b { border: 1px solid #45617e; background: #172f49; color: #d7e5f2; }
html[data-theme="dark"] .reach-hub .hub-wizard-progress span.active { border-color: var(--hub-cyan); color: #fff; }
html[data-theme="dark"] .reach-hub .hub-wizard-progress span.active b { border-color: var(--hub-cyan); background: #008e8e; color: #fff; }
html[data-theme="dark"] .reach-hub :is(.hub-form-intro,.hub-form-notice,.hub-question-details,.hub-question-evidence) { border-color: var(--hub-line); background: var(--hub-panel-soft); color: var(--hub-text); }
html[data-theme="dark"] .reach-hub .hub-form-intro p { color: #b6c5d5; }
html[data-theme="dark"] .reach-hub .hub-form label { color: #dce8f4; }
html[data-theme="dark"] .reach-hub .hub-form label>small,html[data-theme="dark"] .reach-hub .hub-question-details header small { color: #a9bacb; }
html[data-theme="dark"] .reach-hub .hub-form-notice.success { border-color: #275f55; background: #10372f; }
html[data-theme="dark"] .reach-hub :is(.hub-software-row>button,.hub-question-library-picker,.hub-question-library-item,.hub-question-file-list span) { border-color: var(--hub-line); background: var(--hub-panel); color: var(--hub-text); }

@media (max-width: 1220px) {
  .hub-sidebar { padding-inline: 18px; }
  .hub-topbar { right: 18px; }
  .hub-primary-nav a { padding-inline: 10px; }
  .hub-global-search { width: 180px; }
  .hub-pulse-summary { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .hub-pulse-card { grid-template-columns: minmax(280px,1fr) 210px 165px; }
  .hub-public-topbar-inner { gap: 14px; }
  .hub-public-nav a { padding-inline: 9px; }
  .hub-public-search { min-width: 150px; }
}

@media (max-width: 980px) {
  .hub-primary-nav { justify-self: end; overflow-x: auto; }
  .hub-primary-nav a { min-width: max-content; }
  .hub-topbar { display: none; }
  .hub-pulse-shell,.hub-pulse-layout,.hub-index-layout,.hub-thread-layout { grid-template-columns: 1fr; }
  .hub-pulse-rail { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hub-public-nav { display: none; }
  .hub-public-topbar-inner { grid-template-columns: auto 1fr; }
  .hub-public-account { justify-self: end; }
  .hub-thread-heading { flex-direction: column; }
  .hub-thread-primary-actions { max-width: none; justify-content: flex-start; }
  .hub-thread-page .hub-rail { position: static; max-height: none; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: visible; padding-right: 0; }
  .hub-thread-resource-groups>section { max-width: none; }
}

@media (max-width: 700px) {
  .hub-software-row,.hub-question-upload { grid-template-columns: 1fr; }
  .hub-software-row>button { width: 100%; height: 34px; }
  .hub-question-library-picker section>div { grid-template-columns: 1fr; }
  .hub-workspace-resource-steps { grid-template-columns: 1fr; }
  .hub-workspace-resource-browser { max-height: 520px; }
  .hub-access-request-list article { grid-template-columns: 34px minmax(0,1fr); }
  .hub-access-request-list article>.hub-inline-actions { grid-column: 1/-1; }
}

@media (max-width: 680px) {
  .hub-sidebar { min-height: 62px; gap: 8px; padding-inline: 10px; }
  body.reach-hub .hub-global-brand { min-height: 62px; }
  .hub-brand-copy small { display: none; }
  .hub-primary-nav { max-width: calc(100vw - 118px); height: 62px; }
  .hub-primary-nav a { min-height: 62px; padding-inline: 11px; font-size: 11px; }
  .hub-primary-nav a:not([aria-current="page"]) { display: none; }
  .hub-main { padding: 20px 12px 54px; }
  .hub-page-header { flex-direction: column; gap: 16px; }
  .hub-page-header h1 { font-size: 34px; }
  .hub-page-header .hub-inline-actions { width: 100%; }
  .hub-page-header .hub-inline-actions .hub-button { flex: 1; }
  .hub-page-header .hub-inline-actions .hub-button:not(.primary) { display: none; }
  .hub-kind-tabs { margin-inline: -12px; padding-left: 12px; }
  .hub-pulse-summary { display: flex; margin-inline: -12px; padding: 0 12px 6px; overflow-x: auto; scroll-snap-type: x mandatory; }
  .hub-pulse-metric { min-width: 220px; scroll-snap-align: start; }
  .hub-pulse-heading { flex-direction: column; }
  .hub-pulse-card { height: auto; min-height: 0; grid-template-columns: 1fr; }
  .hub-pulse-card-main { grid-template-columns: 34px minmax(0,1fr); }
  .hub-pulse-card-visual { height: 180px; min-height: 180px; }
  .hub-pulse-card-visual img { height: 180px; min-height: 180px; max-height: 180px; }
  .hub-pulse-card-author { grid-template-columns: 32px minmax(0,1fr); border-top: 1px solid #e8edf3; border-left: 0; }
  .hub-pulse-card-copy .hub-discussion-card-head small { width: 100%; margin-left: 0; }
  .hub-pulse-rail { grid-template-columns: 1fr; }
  .hub-filter-grid label { flex: 1 1 140px; }
  .hub-filter-grid select { width: 100%; }
  .hub-resolved-summary { grid-template-columns: 1fr; }
  .hub-resolved-summary>div { border-right: 0; border-bottom: 1px solid #e8edf3; }
  .hub-public-topbar-inner { min-height: 62px; }
  .hub-public-brand small,.hub-public-search,.hub-public-account .hub-button:not(.primary) { display: none; }
  .hub-thread-heading,.hub-thread-problem,.hub-continue-investigation { padding: 18px; }
  .hub-thread-heading h1 { font-size: 29px; }
  .hub-thread-context-bar { top: calc(var(--hub-topbar-height,62px) + 6px); min-height: 224px; gap: 8px; padding: 10px; }
  .hub-thread-context-identity { width: 100%; gap: 4px; }
  .hub-thread-context-identity>strong { font-size: 12px; }
  .hub-thread-context-meta { width: 100%; padding-bottom: 2px; overflow-x: auto; scrollbar-width: none; }
  .hub-thread-context-meta::-webkit-scrollbar { display: none; }
  .hub-thread-context-content { grid-template-columns: 1fr; gap: 7px; }
  .hub-thread-context-content>section { padding: 7px 8px; }
  .hub-thread-context-problem p { -webkit-line-clamp: 2; }
  .hub-thread-context-resource-track>a,.hub-thread-context-resource-track>button,.hub-thread-context-resource-track>span.restricted { flex-basis: 142px; }
  .hub-thread-heading-footer { align-items: flex-start; flex-direction: column; }
  .hub-thread-primary-actions { width: 100%; }
  .hub-thread-primary-actions .hub-button { flex: 1 1 auto; }
  .hub-thread-management { flex: 0 0 auto; }
  .hub-thread-management>div { right: 0; }
  .hub-thread-page .hub-rail,.hub-public-context-grid { grid-template-columns: 1fr; }
  .hub-problem-context-cards { grid-template-columns: 1fr; }
  .hub-thread-feed-title { align-items: flex-start; }
  .hub-reply-sort { flex: 0 0 auto; }
  .hub-thread-resource-groups { display: grid; grid-template-columns: 1fr; }
  .hub-thread-resources>header { align-items: stretch; }
  .hub-thread-resource-controls { justify-content: space-between; }
  .hub-thread-resource-groups li { min-height: 88px; grid-template-columns: 100px minmax(0,1fr); }
  .hub-thread-resource-preview { width: 100px; height: 72px; }
  .hub-thread-resource-action,.hub-thread-resource-restricted { grid-column: 2; justify-self: start; }
  .hub-resource-source-tabs { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .hub-pulse-metric,.hub-pulse-card,.hub-button { transition: none; }
}

/* Home — immersive intelligence dashboard, based on the approved visual direction. */
body.hub-home-mode {
  background: #020c18;
}

body.hub-home-mode .hub-main {
  position: relative;
  isolation: isolate;
  min-height: calc(100vh - var(--hub-topbar-height));
  background:
    radial-gradient(circle at 16% 10%, rgba(0, 168, 168, .13), transparent 27%),
    radial-gradient(circle at 87% 30%, rgba(37, 99, 235, .1), transparent 31%),
    linear-gradient(155deg, #020b16 0%, #061629 48%, #03101d 100%);
  color: #f2f7fc;
}

body.hub-home-mode .hub-main::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  background-image:
    radial-gradient(circle, rgba(170, 220, 255, .38) 0 1px, transparent 1.2px),
    linear-gradient(115deg, transparent 42%, rgba(35, 197, 192, .035) 42.2%, transparent 42.5%),
    linear-gradient(25deg, transparent 67%, rgba(90, 140, 210, .03) 67.2%, transparent 67.5%);
  background-position: 0 0, center, center;
  background-size: 92px 92px, 100% 100%, 100% 100%;
  opacity: .62;
}

body.hub-home-mode .hub-home-reference {
  --home-panel: rgba(7, 24, 41, .94);
  --home-panel-soft: rgba(10, 31, 51, .88);
  --home-line: rgba(80, 139, 181, .38);
  --home-line-bright: rgba(35, 197, 192, .45);
  --home-text: #f2f7fc;
  --home-muted: #9fb1c4;
  width: min(1440px, 100%);
  color: var(--home-text);
}

body.hub-home-mode .hub-home-reference :is(h1, h2, h3, strong) {
  color: var(--home-text);
}

body.hub-home-mode .hub-home-reference p {
  color: var(--home-muted);
}

body.hub-home-mode .hub-home-hero {
  min-height: clamp(390px, 33vw, 505px);
  grid-template-columns: minmax(380px, 47%) 1fr;
  margin-bottom: 18px;
  border-color: var(--home-line-bright);
  border-radius: 17px;
  background: #020b15;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .34), inset 0 0 0 1px rgba(255, 255, 255, .018);
}

body.hub-home-mode .hub-home-hero::after {
  background:
    linear-gradient(90deg, rgba(1, 8, 17, .97) 0%, rgba(2, 11, 22, .82) 35%, rgba(2, 11, 22, .18) 68%, rgba(2, 11, 22, .06) 100%),
    linear-gradient(0deg, rgba(1, 9, 18, .18), transparent 52%);
}

body.hub-home-mode .hub-home-hero > img {
  object-position: 62% 50%;
  filter: saturate(.88) contrast(1.13) brightness(.86);
}

body.hub-home-mode .hub-home-hero-copy {
  max-width: 610px;
  padding: clamp(38px, 5vw, 72px);
}

body.hub-home-mode .hub-home-hero-copy .eyebrow {
  margin-bottom: 16px;
  color: #7bd8ff;
  font-size: 11px;
  letter-spacing: .18em;
}

body.hub-home-mode .hub-home-hero-copy h1 {
  max-width: 580px;
  font-size: clamp(45px, 5vw, 68px);
  font-weight: 530;
  line-height: 1.04;
  letter-spacing: -.052em;
  text-wrap: balance;
}

body.hub-home-mode .hub-home-hero-copy p {
  max-width: 520px;
  margin: 20px 0 26px;
  color: #d1dce7;
  font-size: 16px;
}

body.hub-home-mode .hub-home-hero-copy .hub-button {
  min-height: 44px;
  padding-inline: 16px;
  border-color: rgba(145, 180, 210, .32);
  background: rgba(8, 25, 43, .72);
  color: #f5f9fc;
  backdrop-filter: blur(8px);
}

body.hub-home-mode .hub-home-hero-copy .hub-button.primary {
  border-color: #23c5c0;
  background: #009f9d;
  box-shadow: 0 10px 26px rgba(0, 168, 168, .22);
}

.hub-home-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 18px;
}

.hub-home-metric {
  display: grid;
  min-width: 0;
  min-height: 132px;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  padding: 22px;
  border: 1px solid var(--home-line);
  border-radius: 15px;
  background: linear-gradient(145deg, rgba(8, 28, 47, .96), rgba(5, 19, 34, .94));
  color: var(--home-text);
  box-shadow: 0 16px 44px rgba(0, 0, 0, .16);
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.hub-home-metric:hover,
.hub-home-metric:focus-visible {
  border-color: var(--home-line-bright);
  box-shadow: 0 20px 50px rgba(0, 0, 0, .24);
  transform: translateY(-2px);
}

.hub-home-metric:focus-visible {
  outline: 3px solid rgba(35, 197, 192, .35);
  outline-offset: 2px;
}

.hub-home-metric-icon {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid rgba(35, 197, 192, .28);
  border-radius: 13px;
  background: rgba(0, 168, 168, .13);
  color: #5be5dc;
}

.hub-home-metric-icon svg {
  width: 23px;
  height: 23px;
}

.hub-home-metric.blue .hub-home-metric-icon { border-color: rgba(80, 145, 255, .34); background: rgba(37, 99, 235, .14); color: #7eb1ff; }
.hub-home-metric.green .hub-home-metric-icon { border-color: rgba(63, 211, 173, .32); background: rgba(8, 124, 104, .15); color: #68e5be; }
.hub-home-metric.violet .hub-home-metric-icon { border-color: rgba(163, 113, 247, .33); background: rgba(105, 67, 188, .14); color: #b99af7; }

.hub-home-metric-copy {
  display: grid;
  min-width: 0;
  gap: 5px;
}

.hub-home-metric-copy small {
  overflow: hidden;
  color: #c6d3df;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hub-home-metric-copy strong {
  font-family: "Space Grotesk", Inter, sans-serif;
  font-size: clamp(28px, 2.5vw, 38px);
  font-weight: 520;
  line-height: 1;
  letter-spacing: -.035em;
}

.hub-home-metric-copy em {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #78d9c2;
  font-size: 10px;
  font-style: normal;
}

.hub-home-metric-copy em i {
  width: 6px;
  height: 6px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 10px currentColor;
}

body.hub-home-mode .hub-home-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.02fr);
  align-items: stretch;
  gap: 18px;
}

body.hub-home-mode .hub-home-editorial-flow {
  gap: 18px;
}

body.hub-home-mode .hub-home-reference :is(.hub-panel, .hub-news-feature, .hub-news-card, .hub-discussion-card) {
  border-color: var(--home-line);
  background: var(--home-panel);
  color: var(--home-text);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .16);
}

body.hub-home-mode .hub-home-reference .hub-panel {
  border-radius: 15px;
  background: linear-gradient(155deg, rgba(7, 24, 41, .98), rgba(4, 17, 31, .96));
}

body.hub-home-mode .hub-home-reference .hub-panel-title {
  min-height: 62px;
  padding: 18px 20px 14px;
}

body.hub-home-mode .hub-home-reference .hub-panel-title h2 {
  font-size: 16px;
  font-weight: 560;
}

body.hub-home-mode .hub-home-reference .hub-link {
  color: #8db8ee;
}

body.hub-home-mode .hub-home-feature-panel .hub-news-feature {
  margin: 0 16px 16px;
  border-radius: 12px;
  background: var(--home-panel-soft);
}

body.hub-home-mode .hub-home-feature-panel .hub-news-feature img {
  height: clamp(230px, 23vw, 320px);
  filter: saturate(.9) contrast(1.04);
}

body.hub-home-mode .hub-home-feature-panel .hub-news-feature-copy {
  min-height: 0;
  padding: 24px;
}

body.hub-home-mode .hub-home-feature-panel .hub-news-feature-copy h2 {
  margin-top: 14px;
  font-size: clamp(23px, 2vw, 31px);
  line-height: 1.2;
}

body.hub-home-mode .hub-home-feature-panel .hub-news-feature-copy > p {
  font-size: 13px;
  line-height: 1.65;
}

body.hub-home-mode .hub-home-reference :is(.hub-tag, .hub-kind-badge, .hub-status) {
  border-color: rgba(108, 154, 193, .36);
  background: rgba(14, 37, 60, .82);
  color: #a9c6df;
}

body.hub-home-mode .hub-home-reference .hub-news-featured-label {
  color: #32d0c3;
}

body.hub-home-mode .hub-home-reference .hub-card-meta,
body.hub-home-mode .hub-home-reference .hub-discussion-card footer,
body.hub-home-mode .hub-home-reference .hub-discussion-card-head time {
  color: var(--home-muted);
}

body.hub-home-mode .hub-home-reference .hub-news-secondary-actions :is(.hub-button, .hub-news-data-link) {
  border-color: rgba(108, 154, 193, .3);
  background: rgba(8, 25, 43, .74);
  color: #d3e1ee;
}

body.hub-home-mode .hub-home-latest-news .hub-home-news-feed {
  grid-auto-rows: minmax(198px, auto);
  padding: 0 16px 16px;
}

body.hub-home-mode .hub-home-news-feed .hub-news-card-compact {
  min-height: 198px;
  grid-template-columns: minmax(132px, 31%) minmax(0, 1fr);
  border-radius: 11px;
  background: var(--home-panel-soft);
}

body.hub-home-mode .hub-home-news-feed .hub-news-card-compact > img {
  min-height: 198px;
}

body.hub-home-mode .hub-home-conversations {
  min-height: clamp(620px, 60vw, 835px);
}

body.hub-home-mode .hub-home-conversations .hub-stack-list {
  align-content: start;
  gap: 14px;
  padding: 0 16px 16px;
}

body.hub-home-mode .hub-home-conversations .hub-discussion-card {
  padding: 23px;
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(10, 31, 52, .96), rgba(6, 22, 38, .94));
  box-shadow: none;
}

body.hub-home-mode .hub-home-conversations .hub-discussion-card:hover {
  border-color: var(--home-line-bright);
  box-shadow: 0 16px 35px rgba(0, 0, 0, .2);
}

body.hub-home-mode .hub-home-conversations .hub-discussion-card h2 {
  margin: 15px 0 9px;
  font-size: clamp(18px, 1.6vw, 23px);
}

body.hub-home-mode .hub-home-conversations .hub-discussion-card > p {
  color: var(--home-muted);
  font-size: 13px;
}

body.hub-home-mode .hub-home-conversations .hub-panel-callout {
  display: none;
}

@media (max-width: 1100px) {
  .hub-home-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.hub-home-mode .hub-home-grid { grid-template-columns: 1fr; }
  body.hub-home-mode .hub-home-conversations { min-height: 0; }
}

@media (max-width: 680px) {
  body.hub-home-mode .hub-home-hero { min-height: 470px; grid-template-columns: 1fr; }
  body.hub-home-mode .hub-home-hero::after { background: linear-gradient(90deg, rgba(1, 8, 17, .96), rgba(2, 11, 22, .55)); }
  body.hub-home-mode .hub-home-hero-copy { align-self: end; padding: 30px 22px; }
  body.hub-home-mode .hub-home-hero-copy h1 { font-size: clamp(39px, 12vw, 52px); }
  body.hub-home-mode .hub-home-hero-copy p { font-size: 14px; }
  .hub-home-metric { min-height: 118px; padding: 18px; }
  body.hub-home-mode .hub-home-feature-panel .hub-news-feature img { height: 230px; }
}

@media (max-width: 520px) {
  .hub-home-metrics { grid-template-columns: 1fr; gap: 10px; }
  .hub-home-metric { min-height: 104px; }
  body.hub-home-mode .hub-home-news-feed .hub-news-card-compact { grid-template-columns: 1fr; }
  body.hub-home-mode .hub-home-news-feed .hub-news-card-compact > img { height: 180px; min-height: 180px; }
}

/* Mobile navigation and discussion actions */
@media (max-width: 680px) {
  .hub-sidebar {
    min-height: 104px;
    grid-template-columns: 1fr;
    grid-template-rows: 56px 48px;
    gap: 0;
    padding: 0;
  }

  body.reach-hub .hub-global-brand {
    min-height: 56px;
    padding-inline: 12px;
  }

  .hub-primary-nav {
    width: 100%;
    max-width: none;
    height: 48px;
    justify-self: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    border-top: 1px solid rgba(255,255,255,.1);
    scrollbar-width: none;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }

  .hub-primary-nav::-webkit-scrollbar { display: none; }

  .hub-primary-nav a,
  .hub-primary-nav a:not([aria-current="page"]) {
    display: flex;
    min-width: max-content;
    min-height: 48px;
    flex: 0 0 auto;
    padding-inline: 14px;
    font-size: 11px;
    scroll-snap-align: start;
  }

  .hub-primary-nav a[aria-current="page"]::after {
    right: 12px;
    bottom: 5px;
    left: 12px;
    height: 2px;
  }

  .hub-pulse-main > .hub-page-header .hub-inline-actions {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 8px;
  }

  .hub-pulse-main > .hub-page-header .hub-inline-actions .hub-button,
  .hub-pulse-main > .hub-page-header .hub-inline-actions .hub-button:not(.primary) {
    display: inline-flex;
    width: 100%;
    min-width: 0;
    justify-content: center;
  }
}

@media (max-width: 420px) {
  .hub-pulse-main > .hub-page-header .hub-inline-actions {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hub-home-metric { transition: none; }
}
