/* The two boards share workspace geometry and compact type sizes. */
.match-board, .risk-board { --board-motion: 320ms cubic-bezier(.22,1,.36,1); }
.match-board .match-rail-brand strong, .risk-board .risk-rail-brand strong { font-size: 14px; line-height: 20px; font-weight: 700; }
.match-board .match-list-heading strong, .risk-board .risk-list-heading strong { font-size: 14px; line-height: 20px; }
.match-board .match-list-heading, .risk-board .risk-list-heading { font-size: 11px; }
.match-board .match-toolbar, .risk-board .risk-toolbar { min-width: 0; padding: 4px 12px; border-bottom: 0; box-shadow: inset 0 -1px var(--match-line, var(--risk-line)); container-type: inline-size; }
.match-board .match-toolbar-main, .risk-board .risk-toolbar { gap: 8px; }
.match-board .match-search, .risk-board .risk-search { flex: 1 1 0; height: 40px; min-width: 0; padding: 3px 3px 3px 11px; gap: 8px; border-radius: 7px; }
.match-board .match-search input, .risk-board .risk-search input { width: 0; min-width: 0; font: inherit; font-size: 13px; }
.match-board .match-search button, .risk-board .risk-search button { flex: 0 0 32px; width: 32px; min-width: 32px; height: 32px; min-height: 32px; padding: 0; }
.match-board .match-search button span, .risk-board .risk-search button span { display: none; }
.match-board .match-search .match-search-clear { flex-basis: 26px; width: 26px; min-width: 26px; }
.match-board .match-toolbar .board-publish-action, .risk-board .risk-toolbar .board-publish-action { flex: 0 0 108px; width: 108px; min-width: 108px; height: 40px; min-height: 40px; padding: 0 8px; gap: 5px; border-radius: 6px; font-size: 12px; line-height: 1; }

@media (min-width: 701px) {
  .directory-main-matching .match-board, .directory-main-risk .risk-board { display: grid; grid-template-columns: 212px minmax(0,1fr); gap: 0; transition: grid-template-columns var(--board-motion); }
  .directory-main-matching .match-board.is-rail-collapsed, .directory-main-risk .risk-board.is-rail-collapsed { grid-template-columns: 58px minmax(0,1fr); }
  .directory-main-matching .match-board .match-rail, .directory-main-risk .risk-board .risk-rail { display: flex; grid-column: 1; grid-row: 1; min-width: 0; width: auto; padding: 11px 10px 4px; box-sizing: border-box; overflow: hidden; transition: width var(--board-motion), padding var(--board-motion); }
  .match-board .match-rail-content { min-width: 0; width: 100%; }
  .match-board .match-rail-title, .risk-board .risk-rail-title { position: relative; flex: 0 0 34px; width: 100%; min-width: 0; height: 34px; min-height: 34px; margin: 0 0 14px; padding: 0; gap: 0; }
  .match-board .match-rail-brand, .risk-board .risk-rail-brand { left: 8px; top: 7px; height: 20px; gap: 8px; transform: translateX(0); opacity: 1; visibility: visible; pointer-events: none; transition: opacity 150ms ease 100ms, transform var(--board-motion), visibility 0s; }
  .match-board .match-rail-brand > svg, .risk-board .risk-rail-brand > svg { flex: 0 0 18px; width: 18px; height: 18px; }
  .match-board .match-rail-toggle, .risk-board .risk-rail-toggle { position: absolute; top: 0; right: 0; display: grid; place-items: center; width: 34px; min-width: 34px; height: 34px; margin: 0; padding: 0; border: 1px solid transparent; box-sizing: border-box; transition: right var(--board-motion), background-color 160ms, color 160ms; }
  .match-board .match-rail-toggle > svg, .risk-board .risk-rail-toggle > svg { width: 18px; height: 18px; }
  .match-board .match-rail-section { gap: 3px; margin-bottom: 18px; }
  .match-board .match-rail-section:last-child { margin-bottom: 0; }
  .match-board .match-rail-section > span, .risk-board .risk-rail-label { padding: 0 10px 7px; font-size: 11px; line-height: 16px; white-space: nowrap; }
  .match-board .match-rail .match-rail-section button, .match-board .match-rail .match-mine-link, .risk-board .risk-rail-item { display: flex; align-items: center; justify-content: flex-start; width: 100%; min-height: 32px; padding: 0 10px; gap: 10px; border-radius: 6px; font-size: 12px; line-height: 18px; box-sizing: border-box; transition: padding var(--board-motion), gap var(--board-motion), background-color 160ms, color 160ms; }
  .match-board .match-rail .match-rail-section button > svg:not(.match-category-chevron), .match-board .match-rail .match-platform-icon, .match-board .match-rail .match-mine-link > svg, .risk-board .risk-rail-item > svg { flex: 0 0 16px; width: 16px; height: 16px; }
  .match-board .match-rail .match-rail-label, .risk-board .risk-rail-item-label { min-width: 0; max-width: 190px; overflow: hidden; white-space: nowrap; opacity: 1; transition: max-width var(--board-motion), opacity 120ms ease; }
  .directory-main-matching .match-board .match-rail .match-mine-link { flex: 0 0 32px; min-height: 32px; height: 32px; margin-top: 8px; padding-block: 0; }
  .directory-main-matching .match-board .match-rail .match-mine-link::before { top: -5px; }
  .risk-board .risk-rail-note { flex: 0 0 32px; min-height: 32px; height: 32px; }
  .risk-board .risk-platform-expand { display: none; }
  .risk-board.is-rail-collapsed .risk-platform-expand { display: flex; }
  .directory-main-matching .match-board.is-rail-collapsed .match-rail, .directory-main-risk .risk-board.is-rail-collapsed .risk-rail { padding-inline: 6px; }
  .match-board.is-rail-collapsed .match-rail-title, .risk-board.is-rail-collapsed .risk-rail-title { padding: 0; }
  .match-board.is-rail-collapsed .match-rail-toggle, .risk-board.is-rail-collapsed .risk-rail-toggle { right: 5.5px; margin: 0; }
  .match-board.is-rail-collapsed .match-rail-brand, .risk-board.is-rail-collapsed .risk-rail-brand { opacity: 0; visibility: hidden; transform: translateX(-6px); transition: opacity 90ms ease, transform var(--board-motion), visibility 0s 90ms; }
  .match-board.is-rail-collapsed .match-rail .match-rail-label, .risk-board.is-rail-collapsed .risk-rail-item-label { flex: 0 1 0; max-width: 0; opacity: 0; }
  .match-board.is-rail-collapsed .match-rail .match-rail-section button, .match-board.is-rail-collapsed .match-rail .match-mine-link, .risk-board.is-rail-collapsed .risk-rail-item { justify-content: flex-start; padding-inline: 14.5px; gap: 0; }
  .match-board.is-rail-collapsed .match-rail .match-category-chevron { flex-basis: 0; width: 0; opacity: 0; }
  .match-board.is-rail-collapsed .match-rail-section > span, .risk-board.is-rail-collapsed .risk-rail-label { padding-inline: 0; text-align: center; }
  .match-board.is-rail-collapsed .match-subcategory-disclosure { grid-template-rows: 0fr; opacity: 0; visibility: hidden; }
  .match-board .match-main, .risk-board .risk-main { grid-column: 2; grid-row: 1; min-width: 0; }
  .match-board .match-columns, .risk-board .risk-main { grid-template-columns: clamp(280px, var(--match-list-width,44%), calc(100% - 370px)) 10px minmax(0,1fr); grid-template-rows: 48px minmax(0,1fr); }
  .risk-board .risk-main { display: grid; }
  .risk-board .risk-columns { display: contents; }
  .risk-board .risk-toolbar { grid-column: 3; grid-row: 1; }
  .risk-board .risk-list { grid-column: 1; grid-row: 1 / -1; }
  .risk-board .risk-detail { grid-column: 3; grid-row: 2; }
  .risk-board .risk-main::before { content: ''; grid-column: 2; grid-row: 1 / -1; border-left: 1px solid var(--risk-line); }
  .risk-board .risk-list { border-right: 0; }
  .match-board .match-list-heading, .risk-board .risk-list-heading { height: 48px; min-height: 48px; flex-basis: 48px; padding-inline: 14px; }
}

/* Narrow desktops reserve the icon rail; opening filters overlays the list. */
@media (min-width: 701px) and (max-width: 1250px), (min-width: 1251px) and (max-aspect-ratio: 5/4) {
  .directory-main-matching .match-board, .directory-main-matching .match-board.is-rail-collapsed, .directory-main-risk .risk-board, .directory-main-risk .risk-board.is-rail-collapsed { grid-template-columns: 58px minmax(0,1fr); }
  .directory-main-matching .match-board .match-rail, .directory-main-risk .risk-board .risk-rail { position: relative; z-index: 5; width: 212px; box-shadow: 6px 0 20px #203f2914; }
  .directory-main-matching .match-board.is-rail-collapsed .match-rail, .directory-main-risk .risk-board.is-rail-collapsed .risk-rail { width: 58px; box-shadow: none; }
}

@container (max-width: 480px) {
  .match-board .match-toolbar .board-publish-action, .risk-board .risk-toolbar .board-publish-action { flex-basis: 40px; width: 40px; min-width: 40px; padding: 0; gap: 0; overflow: hidden; font-size: 0; }
}
@media (max-width: 700px) {
  .risk-board .risk-main { display: flex; }
  .risk-board .risk-columns { display: block; }
  .match-board .match-toolbar, .risk-board .risk-toolbar { flex-basis: 48px; padding: 4px 10px; }
  .match-board .match-toolbar .board-publish-action, .risk-board .risk-toolbar .board-publish-action { flex-basis: 40px; width: 40px; min-width: 40px; padding: 0; gap: 0; overflow: hidden; font-size: 0; }
  .match-board .match-blocked-toggle { padding-inline: 7px; }
  .risk-board .risk-list-heading { height: 40px; min-height: 40px; flex-basis: 40px; padding-inline: 12px; }
  .match-board .match-search input, .risk-board .risk-search input { font-size: 13px; }
}
@media (min-width: 651px) and (max-width: 700px) {
  .risk-board .risk-list-heading { height: 48px; min-height: 48px; flex-basis: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .match-board, .risk-board { --board-motion: 0s; }
  .match-board .match-rail-brand, .risk-board .risk-rail-brand { transition: none; }
}
