[data-coop-deals] {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  color: #303039;
  background: #fff;
  container-type: inline-size;
}
[data-coop-deals] [hidden] { display: none !important; }
.deal-toolbar, .deal-facets, .deal-search-sort { display: flex; align-items: center; gap: 8px; }
.deal-toolbar { flex-wrap: wrap; justify-content: space-between; padding: 14px 16px; border-bottom: 1px solid var(--line, #e6e6ec); }
.deal-menu { position: relative; }
.deal-menu summary, .deal-search-sort button, .deal-search-sort select {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 4px 9px;
  border: 1px solid var(--line, #e6e6ec);
  border-radius: 7px;
  background: #fff;
  font: inherit;
  color: inherit;
  cursor: pointer;
}
.deal-menu summary { list-style: none; }
.deal-menu summary::-webkit-details-marker { display: none; }
.deal-menu[open] summary, .deal-menu summary:hover, .deal-search-sort button:hover { background: #f7f6fb; }
.deal-menu summary:focus-visible, .deal-quote-number:focus-visible { outline: 2px solid var(--purple, #7c3aed); outline-offset: 2px; }
.deal-menu summary span:not(:empty) { border-radius: 4px; padding: 0 4px; background: #efebff; color: #6143a3; }
.deal-menu-panel {
  position: absolute;
  z-index: 3;
  width: max-content;
  max-width: min(300px, 80vw);
  max-height: 290px;
  overflow: auto;
  inset: calc(100% + 4px) auto auto 0;
  padding: 6px;
  border: 1px solid var(--line, #e6e6ec);
  border-radius: 8px;
  box-shadow: 0 7px 20px #2525381c;
  background: #fff;
}
.deal-menu-panel input[type=search] { width: 100%; min-width: 140px; margin-bottom: 4px; padding: 6px 8px; }
.deal-option { display: flex; align-items: center; gap: 8px; padding: 5px 7px; cursor: pointer; }
.deal-option:hover { background: #f7f6fb; }
.deal-option input { margin: 0; }
.deal-query { display: flex; align-items: center; border: 1px solid var(--line, #e6e6ec); border-radius: 7px; }
.deal-query input { width: min(195px, 42vw); border: 0; background: transparent; padding: 5px 8px; }
.deal-query input[type=search]::-webkit-search-cancel-button { appearance: none; }
.deal-query button { min-height: 20px; border: 0; margin: 0 3px; padding: 2px 6px; }
.deal-scroll { flex: 1; min-height: 0; overflow: auto; }
.deal-scroll table { border-collapse: separate; border-spacing: 0; width: 100%; min-width: 1040px; table-layout: fixed; font-size: 13px; }
.deal-scroll thead th { position: sticky; top: 0; z-index: 1; font-weight: 500; background: #fafafd; }
.deal-scroll th, .deal-scroll td { padding: 9px 8px; line-height: 1.45; text-align: left; vertical-align: top; overflow-wrap: anywhere; border-bottom: 1px solid var(--line, #e6e6ec); }
.deal-scroll th:first-child { padding-left: 16px; }
.deal-state { font-weight: 400; background: #fcfbfe; border-right: 1px solid var(--line, #e6e6ec); }
.deal-state small { display: block; margin-top: 2px; color: var(--muted, #72717d); }
.deal-scroll tbody tr { cursor: pointer; }
.deal-scroll tbody tr:hover td, .deal-scroll tbody tr:focus-within td { background: #f7f4fc; }
.deal-scroll mark { background: #ffefae; color: inherit; }
.deal-scroll button.deal-quote-number { display: inline; border: 0; padding: 0; background: none; font: inherit; text-align: left; cursor: pointer; }
.deal-quote-number, .deal-amount, .deal-date { font-variant-numeric: tabular-nums; }
.deal-muted, .deal-date { color: var(--muted, #72717d); }
.deal-buyer { display: flex; align-items: flex-start; gap: 7px; }
.deal-avatar { position: relative; flex: 0 0 21px; display: grid; place-items: center; width: 21px; height: 21px; border-radius: 5px; overflow: hidden; background: #f0edf4; color: #655d74; font-size: 9px; font-weight: 600; }
.deal-avatar img { position: absolute; width: 100%; height: 100%; object-fit: contain; background: #fff; }
.deal-status { display: inline-block; max-width: 100%; padding: 2px 6px; border-radius: 5px; font-weight: 500; font-size: 12px; }
.deal-status-secondary { color: #5a5964; background: #f1f0f4; }
.deal-status-nova { color: #8b4a18; background: #fff0da; }
.deal-status-success { color: #227053; background: #ddf4e6; }
.deal-col-0 { width: 12%; } .deal-col-1 { width: 10%; } .deal-col-2 { width: 13%; }
.deal-col-3 { width: 13%; } .deal-col-4 { width: 15%; } .deal-col-5 { width: 11%; }
.deal-col-6 { width: 10%; } .deal-col-7 { width: 9%; } .deal-col-8 { width: 7%; }
.deal-empty { text-align: center; padding: 15vh 20px; }
.deal-empty h2 { font-size: 14px; }
.deal-empty p { color: var(--muted, #72717d); }
[data-deal-error]:empty { display: none; }
[data-deal-error] { margin: 8px 16px; }
@container (max-width: 600px) {
  .deal-toolbar { align-items: flex-start; }
  .deal-search-sort { flex-wrap: wrap; }
}

[data-coop-deals][hidden]{display:none}
.coop-page:has([data-coop-deals]:not([hidden])){
  width:100%;max-width:none;height:calc(100dvh - 56px);margin:0;padding:0;
  display:flex;flex-direction:column;gap:0;
}
.coop-page:has([data-coop-deals]:not([hidden])) :is([data-coop-approved],[data-coop-approved]>div){
  display:flex;flex:1;flex-direction:column;min-width:0;min-height:0;
}
.coop-page:has([data-coop-deals]:not([hidden])) [data-coop-deals]{flex:1;height:auto}
.coop-page:has([data-coop-deals]:not([hidden])) .coop-workspace-tools{margin:0;border-radius:0;border-width:1px 0 0;max-height:45vh;overflow:auto}

.coop-quote-source-pick{border:0;padding:0;margin:0}
.coop-quote-source-pick legend{font-size:16px;font-weight:600;margin-bottom:12px}
.coop-quote-source-pick>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.coop-quote-source-pick label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;padding:14px;border:1px solid var(--line);border-radius:9px;cursor:pointer}
.coop-quote-source-pick label:has(:checked){border-color:var(--purple);background:#f8f5ff}
.coop-quote-source-pick label span{grid-column:2;color:var(--muted)}

.coop-deal-detail { max-width: 760px; margin: 0 auto; display: grid; gap: 18px; }
.coop-deal-detail header h2 { margin-bottom: 4px; }
.coop-deal-detail header p { margin: 3px 0; }
.coop-deal-detail summary { cursor: pointer; font-weight: 600; }
.coop-deal-detail summary + p { margin-top: 16px; }
.coop-deal-detail a.primary { display: inline-block; padding: 8px 14px; border-radius: 6px; background: var(--purple,#6444cd); color: #fff; }
.coop-version-list { padding: 0; list-style: none; }
.coop-version-list li { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; padding: 8px 0; border-bottom: 1px solid var(--line,#eee); }
.coop-review-note { white-space: pre-wrap; }

.coop-deal-progress ol { padding-left: 2em; margin-bottom: 0; }
.coop-deal-progress li { padding: 5px 0 5px 6px; }
.coop-deal-progress li small { margin-left: 12px; color: var(--muted,#605d69); }
.coop-deal-progress [aria-current=step] { font-weight: 650; }

[data-coop-deal-lifecycle] { display:grid; gap:12px }
[data-coop-deal-lifecycle]:empty, [data-coop-detail-returned]:empty, [data-coop-detail-progress]:empty,
[data-coop-lifecycle-status]:empty { display:none }
[data-coop-deal-lifecycle] > button { justify-self:start }
.coop-lifecycle-next .actions { align-items:center; flex-wrap:wrap; gap:10px }
.coop-lifecycle-upload { position:relative; display:inline-flex; align-items:center; overflow:hidden; padding:.4rem .75rem; border:1px solid var(--line,#ddd); border-radius:6px; font-weight:600; cursor:pointer }
.coop-lifecycle-upload input { position:absolute; inset:0; opacity:0; width:100%; cursor:pointer }
.coop-lifecycle-upload:focus-within { outline:2px solid var(--purple,#6444cd); outline-offset:2px }
.coop-lifecycle-upload:has(input:disabled) { opacity:.55 }
.coop-lifecycle-documents ul { list-style:none; padding:0; margin:0 }
.coop-lifecycle-documents li { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid var(--line,#eee) }
.coop-lifecycle-documents li>span { min-width:0; overflow-wrap:anywhere }
.coop-lifecycle-documents li>span+span { display:flex; gap:8px; align-items:center }
.coop-lifecycle-documents small { display:block; color:var(--muted,#605d69) }
.coop-lifecycle-cancel-dialog { max-width:min(28rem,92vw) }
.coop-lifecycle-cancel-dialog form { display:grid; gap:14px }
.coop-lifecycle-cancel-dialog textarea { display:block; width:100%; min-height:6rem }
.coop-lifecycle-word [data-word-body] { overflow:auto; max-height:70vh; white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.6 }
