/* 合流 MergePad · page styles: #/pools (spec §4.3) + the shared pool-list renderers (UI.PL: table · card · phone row)
   that the home page also uses. Tokens and shared components live in tokens/base/components/layout.css. */

/* shared list renderers ===================================================== */
.pl-tbl { min-width: 0; }
.pl-tbl .tbl td { height: 60px; }
.pl-tbl .tbl .c-lead { min-width: 220px; }
.pl-tbl .tbl .c-lead .t a { max-width: 240px; }
.pl-tbl .tbl .c-tw { max-width: 300px; }
.pl-tbl .tbl .c-tw .h span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pl-tbl .tbl .c-cd { display: inline-flex; flex-direction: column; align-items: flex-end; }
.pl-tbl .tbl .c-cd .c-na { font-size: var(--t-12); line-height: var(--lh-12); color: var(--fg-2); }
.pl-tbl .tbl tr.is-dim .c-lead .t a { color: var(--fg-2); }
.pl-tbl .tbl .chip { flex: none; }
.pl-tbl .tbl th.r button { flex-direction: row-reverse; } /* the (hidden until sorted) chevron must not push right-aligned labels off the column edge */

.pl-card { min-height: 0; }
.pl-card .pcard-f { margin-top: auto; }
.pl-card .pcard-lead.no-bar { grid-template-columns: 40px minmax(0, 1fr); }
.pl-card .pcard-prog .r .trunc { min-width: 0; }
.pl-card .pcard-f .end { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; min-width: 0; }
.pl-card .pcard-f .end .cd { font-size: var(--t-12); color: var(--fg-1); }
.pl-card.is-dim .pcard-lead .nm .t { color: var(--fg-2); }
.pl-card.is-skel { pointer-events: none; }
.pl-card.is-skel .skel + .skel { margin-top: 0; }
.pl-card.is-skel .pcard-lead > div { display: flex; flex-direction: column; gap: 6px; }
.pl-card.is-skel .pcard-prog .r { margin-bottom: var(--s-2); }

.pl-mrow { color: var(--fg-1); }
.pl-mrow .pr { display: grid; grid-template-columns: minmax(0, 1fr) 44px 112px; column-gap: var(--s-2); align-items: center; }
.pl-mrow .pr > .num { text-align: right; }
.pl-mrow .pr .cdw { display: inline-flex; align-items: center; justify-content: flex-end; gap: 4px; white-space: nowrap; color: var(--fg-3); min-width: 0; }
.pl-mrow .pr .cdw .cd { font-size: var(--t-12); color: var(--fg-1); }
.pl-mrow.is-dim .t .n { color: var(--fg-2); }
.pl-mrow.is-skel > div { display: flex; flex-direction: column; gap: 6px; }
.pl-mrow.is-skel .skel + .skel { margin-top: 0; }
.pl-mrow.is-skel .r { align-items: flex-end; }

/* pools page ================================================================ */
.pb-page .page-h p .num { color: var(--fg-1); font-size: var(--t-14); }
.pb { overflow: hidden; }
.pb-bar1 { padding: 0 var(--s-4); border-bottom: 1px solid var(--line-1); }
.pb-bar2 { display: flex; align-items: center; gap: var(--s-2); min-height: 56px; padding: var(--s-3) var(--s-3) var(--s-3) var(--s-4); border-bottom: 1px solid var(--line-1); }
.pb-search { width: 280px; flex: none; background: var(--bg-0); padding-right: var(--s-1); }
.pb-search input[type="search"]::-webkit-search-decoration { display: none; }
.pb-sp { flex: 1 1 auto; }
.pb-sort { gap: 6px; }
.pb-sort .i:last-child { width: 14px; height: 14px; color: var(--fg-3); }
.pb-sort .lbl { font-size: var(--t-13); }
.pb-sortmenu { padding: 0; }
.pb-cards { padding: var(--s-4); }
.pb-cards:empty { display: none; }
.pb-state[hidden] { display: none; }
.pb-foot .l { min-width: 0; }
.pb-foot > .num { color: var(--fg-3); font-size: var(--t-12); }
.pb-more { display: flex; flex-direction: column; align-items: center; gap: var(--s-2); margin-top: var(--s-4); }
.pb-more .btn { min-width: 160px; }
.pb-note { font-size: var(--t-12); line-height: var(--lh-12); color: var(--fg-3); }
.pb-note:empty { display: none; }

@media (max-width: 1279px) {
  .pb-search { width: 240px; }
}
@media (max-width: 1024px) {
  .pb-cards { padding: var(--s-3); }
}
@media (max-width: 760px) {
  .pb-bar1 { padding: 0 var(--s-3); }
  .pb-bar1 .tabs { gap: var(--s-4); }
  .pb-bar2 { flex-wrap: wrap; padding: var(--s-3); row-gap: var(--s-2); }
  .pb-search { flex: 1 1 100%; width: auto; }
  .pb-search input { font-size: 16px; }
  .pb-sp { display: none; }
  .pb-sort { margin-left: auto; }
  .pb-foot > .num { display: none; }
}
