.directory-home-shell .directory-main-matching { padding: 16px; background: #f3f7f9; }
.directory-home-shell .directory-workspace-matching { display: block; width: 100%; margin: 0 auto; }
.directory-home-shell .directory-workspace-matching .directory-content { display: block; height: 100%; padding: 0; overflow: hidden; }
.directory-workspace-matching .footer { display: none; }
.match-board { --match-line: #dce7e9; display: grid; grid-template-columns: 266px minmax(0, 1fr); gap: 12px; height: 100%; min-height: 0; color: #27414a; }
.match-rail, .match-main { min-height: 0; border: 1px solid var(--match-line); border-radius: 8px; background: #fff; }
.match-rail { display: flex; flex-direction: column; overflow: hidden; padding: 15px 10px 14px; box-shadow: 0 12px 28px rgba(38, 68, 78, .05); }
.match-rail-content { display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; }
.match-rail-title { display: flex; flex: 0 0 auto; align-items: center; gap: 8px; padding: 2px 10px 20px; font-size: 14px; color: #276e80; }
.match-rail-scroll { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: none; -ms-overflow-style: none; }
.match-rail-scroll::-webkit-scrollbar, .match-list-scroll::-webkit-scrollbar, .match-detail::-webkit-scrollbar { display: none; }
.match-rail-section { display: grid; gap: 3px; margin-bottom: 20px; }
.match-rail-section > span { padding: 0 10px 8px; color: #899da5; font-size: 11px; }
.match-rail-section button, .match-mine-link { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 39px; padding: 0 11px; border: 0; border-radius: 8px; color: #526a74; background: transparent; text-align: left; font-size: 13px; transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease; }
.match-rail-section button > svg, .match-platform-icon { flex: 0 0 16px; width: 16px; height: 16px; }
.match-platform-icon { object-fit: contain; }
.match-rail-section button:hover, .match-mine-link:hover { background: #f1f7f8; color: #216f80; }
.match-rail-section button.active { background: #e4f2f3; color: #1c6676; font-weight: 700; box-shadow: inset 3px 0 #2d829b; }
.match-categories > button, .match-category-group > button { min-height: 34px; }
.match-platforms > button { min-height: 34px; }
.match-category-trigger > span { flex: 1; }
.match-rail-section .match-category-chevron { flex-basis: 14px; width: 14px; height: 14px; color: #8a9fa7; transition: transform 240ms cubic-bezier(.22,.61,.36,1), color 180ms ease; }
.match-category-trigger[aria-expanded="true"] .match-category-chevron { transform: rotate(180deg); color: currentColor; }
.match-subcategory-disclosure { display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows 260ms cubic-bezier(.22,.61,.36,1), opacity 180ms ease; }
.match-subcategory-disclosure.expanded { grid-template-rows: 1fr; opacity: 1; }
.match-subcategory-clip { min-height: 0; overflow: hidden; }
.match-subcategories { display: grid; gap: 1px; margin: 2px 0 6px 11px; padding-left: 8px; }
.match-subcategories button { min-height: 30px; font-size: 12px; }
.match-rail-section button:focus-visible, .match-mine-link:focus-visible { outline: 2px solid #2d829b; outline-offset: -2px; }
@media (prefers-reduced-motion: reduce) {
  .match-rail-section button, .match-mine-link, .match-rail-section .match-category-chevron, .match-subcategory-disclosure { transition: none; }
}
.match-mine-link { flex: 0 0 auto; gap: 8px; border-top: 1px solid var(--match-line); border-radius: 0; padding-top: 13px; }
.match-main { display: flex; flex-direction: column; overflow: hidden; border: 0; background: transparent; }
.match-toolbar { grid-column: 3; grid-row: 1; min-width: 0; padding: 4px 12px; background: rgba(255,255,255,.52); -webkit-backdrop-filter: blur(16px) saturate(135%); backdrop-filter: blur(16px) saturate(135%); }
.match-toolbar-main { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.match-toolbar h1 { margin: 0 0 3px; color: #233e49; font-size: 19px; line-height: 1.35; }
.match-publish { display: inline-flex; align-items: center; justify-content: center; gap: 6px; flex: 0 0 auto; width: 112px; height: 40px; min-height: 40px; box-sizing: border-box; padding: 0 10px; border: 0; border-radius: 6px; background: #2d829b; color: #fff; font-size: 13px; font-weight: 700; }
.match-publish:hover { background: #236b80; }
.match-publish:disabled { opacity: .6; cursor: default; }
.match-search { display: flex; align-items: center; gap: 9px; flex: 1 1 560px; min-width: 0; height: 40px; box-sizing: border-box; margin: 0; padding: 3px 3px 3px 11px; border: 1px solid #82afba; border-radius: 8px; color: #8499a1; background: rgba(255,255,255,.72); box-shadow: 0 4px 14px rgba(39, 92, 105, .05); }
.match-search:focus-within { border-color: #4c9fb2; }
.match-search input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; color: #233e49; font-size: 14px; }
.match-search button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; flex: 0 0 auto; height: 32px; min-width: 34px; padding: 0 8px; border: 0; border-radius: 5px; color: #fff; background: #2d829b; font-size: 13px; font-weight: 600; }
.match-search button span { display: none; }
.match-mobile-filters { display: none; }
.match-message { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 20px; border-bottom: 1px solid #d6e8e9; color: #246e74; background: #eef9f7; font-size: 12px; }
.match-message button { display: grid; place-items: center; border: 0; background: transparent; color: inherit; }
.match-columns { display: grid; grid-template-columns: clamp(320px, var(--match-list-width, 44%), calc(100% - 370px)) 10px minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); flex: 1; min-height: 0; overflow: hidden; border: 1px solid var(--match-line); border-radius: 8px; background: #fff; }
.match-columns > .match-list, .match-columns > .match-detail { border-left: 0; border-right: 0; }
.match-list { position: relative; grid-column: 1; grid-row: 1 / -1; min-width: 0; min-height: 0; overflow: hidden; container-type: inline-size; }
.match-list-scroll { height: 100%; box-sizing: border-box; overflow-y: auto; padding: 48px 0 36px; scroll-padding-block: 48px 36px; overscroll-behavior-y: contain; scrollbar-width: none; -ms-overflow-style: none; }
.match-list-heading { position: absolute; z-index: 2; top: 0; right: 0; left: 0; box-sizing: border-box; display: flex; justify-content: space-between; align-items: center; height: 48px; padding: 0 14px; border-bottom: 1px solid rgba(141,165,160,.25); background: rgba(255,255,255,.46); -webkit-backdrop-filter: blur(16px) saturate(135%); backdrop-filter: blur(16px) saturate(135%); font-size: 12px; }
.match-list-heading strong { font-size: 17px; }
.match-list-heading span { color: #91a1a6; }
.match-item { display: block; width: 100%; box-sizing: border-box; padding: 12px 14px; border-bottom: 1px solid #edf1f2; background: #fff; color: inherit; text-align: left; transition: background-color 160ms ease; }
.match-item:hover, .match-item.selected { background: #f3f9fa; }
.match-item.selected { box-shadow: inset 3px 0 #2d829b; }
.match-item-author-row { display: flex; align-items: center; gap: 8px; min-width: 0; }
.match-item-author-row .post-profile-author { flex: 1; min-width: 0; gap: 10px; color: #365560; font-size: 13px; font-weight: 650; text-decoration: none; }
.match-item-author-row .post-profile-author > span { min-width: 0; overflow-wrap: anywhere; white-space: normal; line-height: 1.4; }
.match-item-author-row a.post-profile-author:hover > span { text-decoration: underline; text-underline-offset: 3px; }
.match-item-author-row time { flex: 0 0 auto; color: #82969e; font-size: 11px; }
.match-board .post-profile-source { flex: 0 0 auto; padding: 2px 4px; border-radius: 3px; background: #edf4f5; color: #78929b; font-size: 10px; font-weight: 400; line-height: 1.2; }
.match-item-open { display: block; width: calc(100% - 48px); min-width: 0; margin: -4px 0 0 48px; padding: 0; border: 0; border-radius: 3px; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.match-item-open:focus-visible, .match-item-author-row a:focus-visible { outline: 2px solid #2d829b; outline-offset: 4px; }
.match-item-title { display: block; color: #27434d; font-size: 15px; line-height: 1.5; overflow-wrap: anywhere; white-space: normal; }
.match-side { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-width: 24px; height: 23px; padding: 0 5px; border-radius: 3px; font-size: 11px; font-weight: 700; }
.match-side.need { color: #956428; background: #fff0d6; }
.match-side.offer { color: #2b7777; background: #e4f4ef; }
.match-item-preview { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; margin: 4px 0 0; color: #627b85; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.match-detail-meta { display: flex; flex-wrap: wrap; gap: 7px 13px; color: #93a3aa; font-size: 11px; }
.match-detail-meta .post-profile-author { min-width: 0; max-width: 100%; }
.match-detail-meta .post-profile-author > span { min-width: 0; overflow-wrap: anywhere; white-space: normal; }
.match-item-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 9px; margin-top: 7px; color: #82969e; font-size: 11px; line-height: 18px; }
.match-item-meta > * { flex: 0 0 auto; }
.match-item-meta > .match-item-category { flex: 0 1 auto; max-width: 130px; overflow: hidden; color: #8b9ca3; font-size: 11px; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.match-item-platform { color: #467886; font-weight: 500; }
.match-resizer { position: relative; z-index: 3; grid-column: 2; grid-row: 1 / -1; display: flex; align-items: center; justify-content: center; cursor: col-resize; touch-action: none; outline: none; }
.match-resizer::before { position: absolute; top: 0; bottom: 0; left: 4px; width: 1px; content: ''; background: var(--match-line); transition: background-color 160ms ease; }
.match-resizer span { z-index: 1; width: 3px; height: 34px; border: 3px solid #fff; border-radius: 8px; background: #b0c6cb; box-sizing: content-box; transition: background-color 160ms ease; }
.match-resizer:hover::before, .match-resizer:focus-visible::before, .is-resizing .match-resizer::before { width: 2px; background: #2d829b; }
.match-resizer:hover span, .match-resizer:focus-visible span, .is-resizing .match-resizer span { background: #2d829b; }
.match-resizer:focus-visible { box-shadow: inset 0 0 0 2px #2d829b; }
.match-item-tags { display: flex; flex-wrap: wrap; gap: 5px; margin: 0 0 9px; }
.match-item-tags span { max-width: 100%; padding: 3px 6px; border-radius: 3px; background: #edf5f5; color: #507f89; font-size: 10px; overflow-wrap: anywhere; }
.match-item-author { max-width: 100%; overflow-wrap: anywhere; }
.match-status { color: #597f89; }
.match-status.rejected { color: #b25540; }.match-status.pending { color: #9b7136; }.match-status.closed, .match-status.expired { color: #9aa2a3; }.match-status.fulfilled { color: #29866b; }
.match-pagination { position: absolute; z-index: 2; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 88px minmax(0, 1fr) 88px; align-items: stretch; box-sizing: border-box; height: 36px; padding: 0; border-top: 1px solid rgba(141,165,160,.25); background: rgba(255,255,255,.38); -webkit-backdrop-filter: blur(16px) saturate(135%); backdrop-filter: blur(16px) saturate(135%); font-size: 12px; }
.match-pagination button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; width: 88px; height: 100%; box-sizing: border-box; padding: 0; border: 0; border-radius: 0; color: #3b7382; background: rgba(255,255,255,.46); font-size: 12px; }
.match-pagination button:first-child { border-right: 1px solid var(--match-line); }
.match-pagination button:last-child { border-left: 1px solid var(--match-line); }
.match-pagination > span { align-self: center; justify-self: center; }
.match-pagination button:disabled { opacity: .42; cursor: default; }.match-pagination span { color: #80959d; }
.match-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; min-height: 180px; padding: 24px; color: #8ba0a8; text-align: center; font-size: 12px; }
.match-empty p { margin: 0; }.match-empty button { border: 0; color: #2d829b; background: transparent; font-size: 12px; }
.match-detail { grid-column: 3; grid-row: 2; min-width: 0; min-height: 0; overflow-y: auto; overscroll-behavior-y: contain; padding: 25px 26px; scrollbar-width: none; -ms-overflow-style: none; }
.match-detail-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; min-height: 220px; color: #a2b1b6; font-size: 13px; }
.match-detail-placeholder p { margin-top: 12px; }.match-detail-back { display: none; }
.match-detail-tags { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; margin-bottom: 15px; }
.match-detail-tags > span:not(.match-side) { color: #73919b; background: #f1f6f7; padding: 4px 7px; border-radius: 3px; font-size: 11px; }
.match-detail h2 { margin: 0 0 13px; color: #263e48; font-size: 20px; line-height: 1.45; overflow-wrap: anywhere; }
.match-detail-body { margin-top: 28px; border-top: 1px solid var(--match-line); padding-top: 20px; }
.match-detail-body h3 { margin: 0 0 13px; color: #67818a; font-size: 12px; }.match-detail-body p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; color: #3e5660; font-size: 13px; line-height: 1.85; }
.match-contact { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 26px; padding: 14px 16px; border: 1px solid #dce9e8; border-radius: 5px; background: #f4faf8; }
.match-contact > div { display: grid; min-width: 0; gap: 5px; }.match-contact span { color: #7f9998; font-size: 11px; }.match-contact strong { color: #2a6566; font-size: 14px; overflow-wrap: anywhere; }
.match-contact small { color: #698b8b; font-size: 11px; line-height: 1.6; }
.match-contact button, .match-detail-actions button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; flex: 0 0 auto; min-height: 32px; padding: 0 10px; border: 1px solid #b8d3d4; border-radius: 4px; color: #2d737b; background: #fff; font-size: 12px; }
.match-contact.match-contact-wechat { display: grid; grid-template-columns: minmax(0, 1fr); gap: 15px; }
.match-contact > .match-contact-buttons { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; }
.match-contact-buttons button { min-width: 0; min-height: 40px; padding: 8px 10px; font-size: 13px; line-height: 1.4; white-space: nowrap; }
.match-contact-buttons .match-contact-add { border-color: #2f8592; background: #2f8592; color: #fff; }
.match-contact-buttons .match-contact-add:hover { border-color: #26717c; background: #26717c; }
.match-contact-buttons button:focus-visible { outline: 2px solid #2f8592; outline-offset: 3px; }
[data-theme="dark"] .match-contact-buttons button { border-color: #4b7675; color: #b8d8d4; background: #283f3c; }
[data-theme="dark"] .match-contact-buttons .match-contact-add { border-color: #387f88; background: #387f88; color: #fff; }
.match-detail-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }.match-detail-actions:empty { display: none; }.match-detail-actions button:disabled { opacity: .5; cursor: default; }
.match-detail-actions .match-fulfill { border-color: #9dcebd; color: #24795e; background: #eef8f2; }
dialog.match-feedback-dialog { width: min(480px, calc(100% - 32px)); margin: auto; padding: 0; border: 1px solid #dce7e8; }
.match-feedback-dialog[open] { animation: match-feedback-enter .18s linear; }
.match-feedback-dialog::backdrop { background: rgba(17, 39, 46, .44); backdrop-filter: blur(5px); }
.match-feedback-target { margin: 0; color: #6c858c; font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; }
.match-feedback-target strong { font-weight: 500; }
.match-feedback-count { color: #80949a; text-align: right; font-size: 11px; font-weight: 400; }
.match-feedback-dialog button:disabled { opacity: .55; cursor: default; }
@keyframes match-feedback-enter { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .match-feedback-dialog[open] { animation: none; } }
.match-overlay { position: fixed; z-index: 120; inset: 0; display: grid; place-items: center; padding: 18px; background: rgba(17, 39, 46, .5); }
.match-dialog { width: min(650px, 100%); max-height: min(92dvh, 900px); overflow-y: auto; border-radius: 7px; background: #fff; box-shadow: 0 20px 60px rgba(5, 30, 38, .22); }
.match-dialog header { position: sticky; z-index: 1; top: 0; display: flex; justify-content: space-between; align-items: center; padding: 18px 24px; border-bottom: 1px solid #e1eaeb; background: #fff; }
.match-dialog header small { color: #6c969f; font-size: 11px; }.match-dialog h2 { margin: 2px 0 0; color: #263e48; font-size: 18px; }.match-dialog header button { display: grid; place-items: center; width: 32px; height: 32px; border: 0; background: transparent; color: #64808a; }
.match-dialog form { display: grid; gap: 16px; padding: 22px 24px 24px; }.match-dialog label { display: grid; gap: 7px; min-width: 0; color: #516b75; font-size: 12px; font-weight: 600; }
.match-dialog input, .match-dialog textarea, .match-dialog select { width: 100%; min-width: 0; padding: 10px 11px; border: 1px solid #cedde1; border-radius: 4px; outline-color: #4d9caf; background: #fff; color: #28434d; font-size: 13px; font-weight: 400; }.match-dialog textarea { resize: vertical; }
.match-form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }.match-form-note { margin: 0; color: #80949a; font-size: 11px; line-height: 1.6; }.match-form-error { margin: 0; color: #b64e3b; font-size: 12px; }.match-form-count { color: #80949a; text-align: right; font-size: 11px; font-weight: 400; }
.match-form-actions { display: flex; justify-content: flex-end; gap: 9px; }.match-form-actions > button:first-child { padding: 0 15px; border: 1px solid #d5e1e3; border-radius: 4px; background: #fff; color: #647b84; font-size: 12px; }
@media (max-width: 1280px) { .match-board { grid-template-columns: 212px minmax(0, 1fr); gap: 10px; }.match-detail { padding: 22px 18px; } }
@media (max-width: 1100px) {
  .match-board { display: block; }
  .match-rail { display: none; }
  .match-main { height: 100%; }
  .match-columns { grid-template-rows: auto auto minmax(0, 1fr); }
  .match-toolbar { grid-row: 2; }
  .match-list, .match-resizer { grid-row: 2 / -1; }
  .match-detail { grid-row: 3; }
  .match-mobile-filters { display: grid; grid-column: 1 / -1; grid-row: 1; grid-template-columns: repeat(4, minmax(0, 1fr)) auto; gap: 6px; padding: 10px; border-bottom: 1px solid var(--match-line); }
  .match-mobile-filters select, .match-mobile-filters button { min-width: 0; width: 100%; height: 32px; padding: 0 7px; border: 1px solid #d0dfe2; border-radius: 5px; color: #3b6874; background: #fff; font-size: 12px; }
}
@media (max-width: 700px) {
  .directory-home-shell .directory-main-matching { padding: 8px; }
  .match-columns { grid-template-columns: minmax(0, 1fr); }
  .match-toolbar { grid-column: 1; grid-row: 1; padding: 4px 10px; }
  .match-toolbar-main { gap: 8px; }
  .match-search { padding-left: 9px; }
  .match-mobile-filters { grid-row: 2; grid-template-columns: repeat(2, minmax(0, 1fr)); padding-top: 4px; }
  .match-mobile-filters button { grid-column: 1 / -1; }
  .match-list, .match-detail { grid-column: 1; grid-row: 3; }
  .match-item { padding: 11px 12px; }
  .match-resizer { display: none; }
  .match-detail { display: none; padding: 15px; }
  .match-detail.open { display: block; }
  .match-columns:has(.match-detail.open) .match-list { display: none; }
  .match-detail-back { display: inline-flex; align-items: center; gap: 5px; margin-bottom: 17px; padding: 0; border: 0; background: transparent; color: #2d829b; font-size: 13px; }
  .match-dialog form { padding: 18px; }
  .match-dialog header { padding: 14px 18px; }
}
@media (max-width: 400px) { .match-form-row { grid-template-columns: 1fr; gap: 13px; }.match-search button { padding: 0 10px; } }
[data-theme="dark"] .directory-home-shell .directory-main-matching { background: #15201f; }
[data-theme="dark"] .match-board { --match-line: #3b5456; color: #d1e1e0; }
[data-theme="dark"] .match-rail, [data-theme="dark"] .match-main, [data-theme="dark"] .match-columns, [data-theme="dark"] .match-item, [data-theme="dark"] .match-dialog, [data-theme="dark"] .match-dialog header { background: #1b2b2c; }
[data-theme="dark"] .match-list-heading, [data-theme="dark"] .match-pagination, [data-theme="dark"] .match-toolbar { background: rgba(27,43,44,.52); }
[data-theme="dark"] .match-pagination button, [data-theme="dark"] .match-mobile-filters select, [data-theme="dark"] .match-mobile-filters button { color: #bfd4d5; border-color: #3b5456; background: #223536; }
[data-theme="dark"] .match-resizer span { border-color: #1b2b2c; }
[data-theme="dark"] .match-item:hover, [data-theme="dark"] .match-item.selected, [data-theme="dark"] .match-rail-section button:hover, [data-theme="dark"] .match-rail-section button.active { background: #263c3e; }
[data-theme="dark"] .match-rail-section button, [data-theme="dark"] .match-mine-link { color: #bfd4d5; }
[data-theme="dark"] .match-rail-section button.active { color: #e5f1ee; }
[data-theme="dark"] .match-rail-section > span { color: #96afb2; }
[data-theme="dark"] .match-toolbar h1, [data-theme="dark"] .match-item-title, [data-theme="dark"] .match-detail h2, [data-theme="dark"] .match-dialog h2 { color: #e5f1ee; }
[data-theme="dark"] .match-search, [data-theme="dark"] .match-search input, [data-theme="dark"] .match-contact, [data-theme="dark"] .match-dialog input, [data-theme="dark"] .match-dialog textarea, [data-theme="dark"] .match-dialog select { background: #223536; color: #e0eeeb; }
[data-theme="dark"] .match-platform-icon { border-radius: 3px; background: #fff; }
[data-theme="dark"] .match-detail-body p, [data-theme="dark"] .match-item-preview { color: #acc2c4; }
[data-theme="dark"] .match-item-category { color: #b8ced0; }
[data-theme="dark"] .match-item-author-row .post-profile-author, [data-theme="dark"] .match-item-platform { color: #b8ced0; }
[data-theme="dark"] .match-board .post-profile-source { color: #a9c4c9; background: #2a4143; }
[data-theme="dark"] .match-item-tags span { color: #bddbdc; background: #2a4143; }
[data-theme="dark"] .match-contact small { color: #a2c0bf; }
[data-theme="dark"] .match-feedback-dialog, [data-theme="dark"] .match-feedback-dialog header { border-color: #3b5456; }
[data-theme="dark"] .match-feedback-dialog label, [data-theme="dark"] .match-feedback-target { color: #b8ced0; }

@media (min-width: 901px) {
  .directory-home-shell .directory-main.directory-main-matching {
    flex: 1 1 100%;
    height: 100%;
    margin-top: 0;
    padding: 0 16px 16px;
  }
  .match-board { box-sizing: border-box; padding-top: 98px; }
}
@media (max-width: 900px) {
  .directory-home-shell .directory-main.directory-main-matching { margin-top: 0; padding: 16px; }
  .match-board { padding-top: 0; }
}
@media (max-width: 700px) { .directory-home-shell .directory-main.directory-main-matching { padding: 8px; } }
.match-controls, .match-controls-inner { display: contents; }
.match-controls-toggle { display: none; }
@media (max-width: 650px) {
  .directory-home-shell .directory-main.directory-main-matching {
    padding-bottom: var(--mobile-nav-height, 78px);
    transition: padding-bottom .36s cubic-bezier(.22, 1, .36, 1);
  }
  .directory-home-shell:has(> .mobile-navigation.is-minimized) .directory-main.directory-main-matching {
    padding-bottom: calc(36px + env(safe-area-inset-bottom, 0px));
  }
  .match-columns { grid-template-rows: auto minmax(0, 1fr); }
  .match-controls { display: grid; grid-column: 1; grid-row: 1; grid-template-rows: 1fr; min-height: 0; transition: grid-template-rows .36s cubic-bezier(.22, 1, .36, 1), opacity .2s ease; }
  .match-controls-inner { display: grid; grid-template-columns: minmax(0, 1fr); min-height: 0; overflow: hidden; }
  .match-board.is-browsing .match-controls { grid-template-rows: 0fr; opacity: 0; }
  .match-list, .match-detail { grid-row: 2; }
  .match-list-heading { height: 40px; gap: 8px; padding: 0 12px; }
  .match-list-heading > span { margin-right: auto; }
  .match-list-scroll { padding-top: 40px; scroll-padding-top: 40px; overflow-anchor: none; }
  .match-controls-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 4px; align-self: stretch; padding: 0 3px; border: 0; background: transparent; color: #287a8b; font-size: 12px; white-space: nowrap; }
  .match-controls-toggle:focus-visible { outline: 2px solid #287a8b; outline-offset: -2px; border-radius: 4px; }
  [data-theme="dark"] .match-controls-toggle { color: #a2d9dc; }
}
@media (prefers-reduced-motion: reduce) {
  .directory-home-shell .directory-main.directory-main-matching, .match-controls { transition: none; }
}
@media (prefers-reduced-motion: reduce) { .match-item, .match-resizer::before, .match-resizer span { transition: none; } }

.match-toolbar .board-publish-action, .risk-toolbar .board-publish-action { flex: 0 0 112px; width: 112px; min-width: 112px; height: 40px; min-height: 40px; box-sizing: border-box; padding: 0 10px; border-radius: 6px; line-height: 1; }
@media (max-width: 700px) {
  .match-toolbar .board-publish-action, .risk-toolbar .board-publish-action { flex-basis: 104px; width: 104px; min-width: 104px; padding: 0 8px; font-size: 12px; }
}

/* Compact desktops use the same category-button interaction as AI tools. */
.match-list-title { display: flex; align-items: center; gap: 12px; min-width: 0; }
.match-category-button { display: none; }
.mobile-drawer-layer.matching-category-layer { --card: #fff; --match-line: #dce7e9; position: fixed; z-index: 90; inset: 0; display: block; }
.matching-category-layer .mobile-drawer-backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgba(14,31,38,.35); }
.matching-category-layer .mobile-drawer { position: absolute; inset: 0 auto 0 0; display: flex; flex-direction: column; width: min(320px, calc(100% - 44px)); background: var(--card); color: var(--ink); box-shadow: 8px 0 30px rgba(14,31,38,.15); animation: mobile-drawer-enter .2s ease-out; }
.matching-category-layer .mobile-drawer > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 64px; padding: 10px 14px; box-sizing: border-box; border-bottom: 1px solid var(--line); }
.matching-category-layer .mobile-drawer h2 { margin: 0; font-size: 17px; }
.matching-category-layer .mobile-icon-button { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: inherit; }
.matching-category-layer .mobile-icon-button:hover { background: #e4f3f4; }
.matching-category-layer .mobile-drawer-content { display: flex; min-height: 0; flex: 1; overflow: hidden; padding: 12px 10px 20px; }
.matching-category-layer .match-rail-content { min-width: 0; }
.matching-category-layer .match-rail-title { display: none; }
.matching-category-layer .match-rail-section { margin-bottom: 16px; }
.matching-category-layer .match-rail-section button { min-height: 40px; }
.matching-category-layer .match-subcategories button { min-height: 34px; }
.matching-category-layer .match-mine-link { margin-top: 10px; }
[data-theme="dark"] .matching-category-layer { --card: #1b2b2c; --match-line: #3b5456; color: #d1e1e0; }
[data-theme="dark"] .matching-category-layer .mobile-icon-button:hover { background: #263c3e; }
@media (min-width: 701px) and (max-width: 1250px), (min-width: 1251px) and (max-aspect-ratio: 5/4) {
  .match-board { display: block; }
  .match-main { height: 100%; min-width: 0; }
  .match-category-button { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 6px; min-height: 32px; padding: 0 9px; border: 1px solid var(--match-line); border-radius: 6px; background: rgba(255,255,255,.72); color: #276e80; font-size: 13px; cursor: pointer; }
  .match-category-button:hover { background: #e4f3f4; }
  .match-category-button:focus-visible { outline: 2px solid #2d829b; outline-offset: 2px; }
  .match-columns { grid-template-columns: minmax(280px, var(--match-list-width, 44%)) 10px minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); }
  .match-toolbar { grid-column: 3; grid-row: 1; padding-right: 8px; padding-left: 8px; }
  .match-mobile-filters { display: none; }
  .match-list, .match-resizer { grid-row: 1 / -1; }
  .match-detail { grid-row: 2; }
  [data-theme="dark"] .match-category-button { background: #263c3e; color: #bfd4d5; }
}
@media (prefers-reduced-motion: reduce) { .matching-category-layer .mobile-drawer { animation: none; } }

.user-profile-source-note{max-width:560px;line-height:1.6;color:var(--muted);font-size:13px}.post-profile-source{font-size:10px;color:var(--muted)}
