/* Desk listing cards retain the original controls, event delegation and row
   selection. Table headers remain accessible; duplicated wide-table facts hide. */
.workspace.is-offers #table-wrap { background:var(--desk-page); scroll-padding-top:12px; }
#data-table.table-offers { display:block; width:100%; min-width:0; table-layout:auto; }
#data-table.table-offers > colgroup { display:none; }
#data-table.table-offers > thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#data-table.table-offers > tbody { display:grid; gap:10px; padding:12px; width:100%; max-width:1424px; margin-inline:auto; box-sizing:border-box; }
#data-table.table-offers .loading { display:block; padding:20px; background:var(--md-surface); border-radius:9px; }
#data-table.table-offers .loading td { display:block; height:auto; border:0; }
#data-table.table-offers .desk-offer-card {
  display:grid; width:100%; max-width:100%; grid-template-columns:minmax(0,3.2fr) minmax(125px,1fr) minmax(0,1.45fr) minmax(0,1.65fr) minmax(155px,1.35fr);
  grid-template-areas:'property price team evidence actions' 'property price team entry actions';
  grid-template-rows:minmax(0,1fr) auto; min-width:0; min-height:140px; position:relative;
  border:1px solid var(--md-outline-variant); border-radius:9px; overflow:hidden; background:var(--md-surface);
}
#data-table.table-offers .desk-offer-card > td {
  display:block; min-width:0; height:auto; padding:12px; border:0; background:transparent;
  font-size:14px; line-height:1.4; box-shadow:none; position:static;
}
#data-table.table-offers .desk-offer-card > .cell-facts { display:none; }
#data-table.table-offers .desk-offer-card:hover { border-color:var(--md-outline); }
#data-table.table-offers .desk-offer-card.selected,
#data-table.table-offers .desk-offer-card:focus-visible,
#data-table.table-offers .desk-offer-card:has([data-flow-selected]) { border-color:var(--md-primary); box-shadow:none; }
/* Selection is an outline only. Keep each normal cell surface unchanged on
   selection and hover instead of inheriting the legacy blue table highlight. */
#data-table.table-offers .desk-offer-card:is(.selected,:hover,:has([data-flow-selected])) > td { background:var(--offer-cell-surface,transparent); box-shadow:none; }
#data-table.table-offers .desk-offer-card:is(.selected,:focus-visible,:has([data-flow-selected]))::after { content:''; position:absolute; z-index:2; inset:0; border:1px solid var(--md-primary); border-radius:inherit; pointer-events:none; }
#data-table.table-offers .desk-offer-card > .card-property { grid-area:property; }
#data-table.table-offers .desk-offer-card > .card-price { grid-area:price; padding-left:4px; text-align:right; }
#data-table.table-offers .desk-offer-card > .card-team { grid-area:team; --offer-cell-surface:color-mix(in srgb,var(--md-surface-container) 65%,var(--md-surface)); background:var(--offer-cell-surface); border-left:1px solid var(--row-border); }
#data-table.table-offers .desk-offer-card > .card-evidence { grid-area:evidence; padding-bottom:4px; --offer-cell-surface:var(--md-surface-container-low); background:var(--offer-cell-surface); border-left:1px solid var(--row-border); }
#data-table.table-offers .desk-offer-card > .card-entry { grid-area:entry; padding-top:4px; --offer-cell-surface:var(--md-surface-container-low); background:var(--offer-cell-surface); border-left:1px solid var(--row-border); font-size:12px; line-height:18px; color:var(--md-on-surface-variant); white-space:normal; }
#data-table.table-offers .card-entry > span { margin-right:4px; }
#data-table.table-offers .desk-offer-card > .card-actions { grid-area:actions; display:flex; align-items:center; justify-content:center; border-left:1px solid var(--row-border); text-align:center; }
#data-table.table-offers .offer-identity { display:grid; grid-template-columns:104px minmax(0,1fr); grid-template-rows:auto auto; gap:6px 14px; align-items:start; }
#data-table.table-offers .offer-identity:not(:has(.offer-thumb)) { grid-template-columns:minmax(0,1fr); }
#data-table.table-offers .offer-thumb { grid-column:1; grid-row:1 / 3; width:104px; height:108px; min-height:108px; border-radius:6px; border:0; }
#data-table.table-offers .offer-copy { min-width:0; }
#data-table.table-offers .offer-meta { gap:5px; margin-bottom:4px; font-size:12px; line-height:17px; flex-wrap:wrap; }
#data-table.table-offers .offer-meta > span + span { padding-left:6px; }
#data-table.table-offers .offer-copy .row-link strong { font-size:16px; line-height:22px; font-weight:600; }
#data-table.table-offers .offer-address { margin-top:3px; font-size:13px; line-height:18px; }
#data-table.table-offers .offer-inline-facts { display:flex; flex-wrap:wrap; grid-column:2; align-items:flex-start; justify-content:flex-start; gap:6px 18px; margin:0; }
#data-table.table-offers .offer-inline-facts > div { display:block; flex:0 1 auto; min-width:0; width:max-content; max-width:140px; }
#data-table.table-offers .offer-inline-facts dt { font-size:12px; line-height:16px; margin-bottom:1px; color:var(--md-on-surface-variant); }
#data-table.table-offers .offer-inline-facts dd { font-size:14px; font-weight:600; line-height:19px; white-space:normal; overflow-wrap:anywhere; }
#data-table.table-offers .card-label { display:block; margin-bottom:7px; font-size:12px; line-height:17px; color:var(--md-on-surface-variant); font-weight:400; }
#data-table.table-offers .offer-price { font-size:19px; line-height:25px; font-weight:600; white-space:nowrap; font-variant-numeric:tabular-nums; }
#data-table.table-offers .price-per-m2 { font-size:12px; line-height:17px; margin-top:3px; }
#data-table.table-offers .price-change-link { margin-top:7px; }
#data-table.table-offers .table-team-labeled { gap:12px; color:var(--md-on-surface); }
#data-table.table-offers .table-team-labeled > :is(span,small) { display:block; margin:0; font-size:14px; line-height:20px; overflow-wrap:anywhere; }
#data-table.table-offers .team-role { display:block; font-size:12px; line-height:17px; margin-bottom:3px; font-weight:400; color:var(--md-on-surface-variant); }
#data-table.table-offers .table-team-labeled > span { font-weight:500; }
#data-table.table-offers .listing-evidence { gap:7px; }
#data-table.table-offers .listing-evidence .badge { font-size:12px; line-height:18px; padding:2px 6px; white-space:normal; text-align:left; }
#data-table.table-offers .evidence-button { min-height:28px; }
#data-table.table-offers .evidence-button small { font-size:12px; line-height:18px; }
#data-table.table-offers .offer-actions { width:100%; align-items:stretch; gap:10px; }
#data-table.table-offers .offer-actions > :is(.row-action,.tonal) { width:100%; min-height:40px; padding:7px 8px; border:1px solid var(--md-primary); background:var(--md-primary-container); color:var(--md-on-primary-container); border-radius:8px; font-size:13px; line-height:18px; white-space:normal; font-weight:600; }
#data-table.table-offers .offer-actions > :is(.row-action,.tonal):hover:not(:disabled) { background:var(--md-secondary-container); }
#data-table.table-offers .offer-secondary-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; }
#data-table.table-offers .offer-secondary-actions :is(.text-button,.external-link) { display:inline-flex; flex:1 0 auto; align-items:center; justify-content:center; min-height:34px; font-size:13px; padding:5px 8px; border:1px solid var(--md-outline); border-radius:6px; background:var(--md-surface); color:var(--md-on-surface); text-decoration:none; cursor:pointer; }
#data-table.table-offers :is(.evidence-button,.price-change-link) { border:1px solid var(--md-outline); border-radius:6px; padding:5px 8px; background:var(--md-surface); cursor:pointer; }
#data-table.table-offers .evidence-button .badge { padding:0; background:transparent; color:inherit; }
#data-table.table-offers .listing-evidence .confirm-advertising { min-height:34px; padding:5px 8px; border:1px solid var(--md-outline); border-radius:6px; background:var(--md-surface); color:var(--md-on-surface); cursor:pointer; }
#data-table.table-offers .evidence-button .contract-line { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; }
#data-table.table-offers .evidence-button .contract-line::after { content:'›'; font-size:18px; line-height:18px; color:var(--md-on-surface-variant); }
#data-table.table-offers :is(.offer-secondary-actions .text-button,.offer-secondary-actions .external-link,.evidence-button,.price-change-link):hover { background:var(--md-primary-container); border-color:var(--md-primary); color:var(--md-on-primary-container); }
#data-table.table-offers :is(button,a):focus-visible { outline:2px solid var(--md-primary); outline-offset:2px; }
@media (max-width:1440px) {
  #data-table.table-offers .desk-offer-card > td { padding-inline:10px; }
  #data-table.table-offers .offer-identity { grid-template-columns:88px minmax(0,1fr); gap:6px 10px; }
  #data-table.table-offers .offer-thumb { width:88px; height:108px; }
}
@media (max-width:1280px) {
  #data-table.table-offers .desk-offer-card { grid-template-columns:minmax(0,3fr) minmax(0,2fr); grid-template-areas:'property price' 'team evidence' 'entry actions'; }
  #data-table.table-offers .desk-offer-card > .card-price { padding:12px; }
  #data-table.table-offers .desk-offer-card > .card-team { border-top:1px solid var(--row-border); border-left:0; }
  #data-table.table-offers .desk-offer-card > .card-evidence { border-top:1px solid var(--row-border); }
  #data-table.table-offers .desk-offer-card > .card-entry { align-content:center; border-left:0; }
  #data-table.table-offers .table-team-labeled { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
  #data-table.table-offers > tbody { padding:8px; gap:10px; }
  #data-table.table-offers .desk-offer-card { grid-template-columns:minmax(0,1fr); grid-template-areas:'property' 'price' 'team' 'evidence' 'entry' 'actions'; }
  #data-table.table-offers .desk-offer-card > .card-price { text-align:left; padding-top:0; }
  #data-table.table-offers .card-price .card-label { display:none; }
  #data-table.table-offers .desk-offer-card > .card-evidence { border-left:0; }
  #data-table.table-offers .desk-offer-card > .card-actions { border-left:0; border-top:1px solid var(--row-border); }
  #data-table.table-offers .offer-actions { gap:6px; }
}
