.offers-page { min-width:0; max-width:100%; color:var(--ctp-text); }
.offers-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
.offers-heading h1 { font-size:24px; font-weight:650; }
.offers-heading p { margin-top:4px; }
.offers-controls { display:flex; flex-wrap:wrap; gap:12px; align-items:end; margin-bottom:16px; }
.offers-controls label { display:flex; flex-direction:column; gap:5px; font-size:13px; }
.offers-controls input, .offers-controls select { background:var(--ctp-base); color:var(--ctp-text); border:1px solid var(--ctp-surface2); border-radius:6px; padding:8px 10px; max-width:100%; }
.offers-controls input { width:300px; }
.offers-provenance { font-size:13px; margin:12px 0; }
.offers-page a, .offers-name { color:var(--ctp-text); text-decoration:underline; text-underline-offset:3px; }
.offers-table-scroll { overflow-x:auto; max-width:100%; border:1px solid var(--ctp-surface2); border-radius:8px; }
.offers-table { width:100%; border-collapse:collapse; font-size:13px; }
.offers-table th { text-align:left; white-space:nowrap; background:var(--ctp-surface0); }
.offers-table td, .offers-table th { padding:12px; border-bottom:1px solid var(--ctp-surface1); vertical-align:top; }
.offers-table td:nth-child(2) { min-width:190px; max-width:330px; }
.offers-name { font-weight:600; text-align:left; }
.offers-detail { background:var(--ctp-surface0); }
.offers-detail dl { display:grid; grid-template-columns:minmax(130px,190px) minmax(0,1fr); gap:10px 16px; margin-bottom:16px; }
.offers-detail dt { font-weight:600; }
.offers-detail dd { overflow-wrap:anywhere; max-width:850px; }
.offers-pagination, .offers-pagination > div { display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between; margin-top:12px; font-size:13px; }
.offers-page button:focus-visible, .offers-page a:focus-visible { outline:2px solid var(--ctp-text); outline-offset:3px; }
@media(max-width:650px) { .offers-heading { align-items:start; } .offers-controls label { width:100%; } .offers-controls input { width:100%; } .offers-table { min-width:620px; } }
