/* Публичная страница ответа кооператора — UI v4 (таблица корневых позиций, окно чертежей). Старый вид: coop-quote.css (?ui=legacy). */
@font-face { font-family: CQA; src: local('SF Pro Text Regular'), url('/fonts/SFPro/SFProText-Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: CQA; src: local('SF Pro Text Medium'), url('/fonts/SFPro/SFProText-Medium.ttf') format('truetype'); font-weight: 500; font-display: swap; }
@font-face { font-family: CQA; src: local('SF Pro Text Semibold'), url('/fonts/SFPro/SFProText-Semibold.ttf') format('truetype'); font-weight: 600; font-display: swap; }
@font-face { font-family: CQA; src: local('SF Pro Text Bold'), url('/fonts/SFPro/SFProText-Bold.ttf') format('truetype'); font-weight: 700; font-display: swap; }

/* Шкала шрифтов страницы контрагента: 28 заголовок/итог, 20 заголовки карточек, 16 акцент, 14 основной, 12 вторичный */
:root { --cq-f1: 28px; --cq-l1: 36px; --cq-f2: 20px; --cq-l2: 28px; --cq-f3: 16px; --cq-l3: 24px; --cq-f4: 14px; --cq-l4: 20px; --cq-f5: 12px; --cq-l5: 16px; }
.cqa-public {
  --brand: #f6c500; --brand-hover: #e5b700; --brand-soft: #fff6cc; --brand-ink: #8a6800;
  --ink: #1d1d1f; --ink-2: #4a4f57; --ink-3: #8a8f98; --ink-4: #b8bcc3;
  --line: #e6e8eb; --line-2: #f0f1f3; --bg: #f4f5f7; --link: #0a7fc2;
  --gray-bg: #eef0f2; --gray-fg: #5b616b;
  --blue-bg: #e7f1fd; --blue-fg: #1c4f9c;
  --amber-bg: #fff3dc; --amber-fg: #a35f00; --amber-line: #efb34a;
  --green-bg: #e6f6ec; --green-fg: #1d7a3e;
  --red-bg: #fdecec; --red-fg: #c52828;
  --sh: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font:400 var(--cq-f4)/var(--cq-l4) CQA, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
.cqa-public *, .cqa-public *::before, .cqa-public *::after { box-sizing: border-box; }
/* сброс без повышения специфичности: файл подключается только в layout coop_quote_a */
:where(.cqa-public) :where(h1, h2, h3, p, ol, ul) { margin: 0; padding: 0; }
.cqa-public ol, .cqa-public ul { list-style: none; }
.cqa-public button { font: inherit; color: inherit; }
.cqa-public input, .cqa-public textarea { font: inherit; color: var(--ink); }
.cqa-public [hidden] { display: none !important; }
.cqa-noscroll { overflow: hidden; }
.cqa-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.cqa-muted { color: var(--ink-3); }
.cqa-r { text-align: right; }
.cqa-public a:focus-visible, .cqa-public button:focus-visible, .cqa-public input:focus-visible, .cqa-public textarea:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }

/* шапка */
.cqa-top { height: 56px; background: #fff; border-bottom: 1px solid var(--line); display: flex; align-items: center; gap: 12px; padding: 0 32px; }
.cqa-top img { width: 28px; height: 28px; object-fit: contain; }
.cqa-brand { font-weight:600; font-size: var(--cq-f4); }
.cqa-sep { width: 1px; height: 20px; background: var(--line); }
.cqa-top-t { color: var(--ink-2); font-weight: 500; }
.cqa-top-r { margin-left: auto; display: flex; align-items: center; gap: 14px; color: var(--ink-3); font-size: var(--cq-f5); min-width: 0; }
.cqa-top-link { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cqa-top-link .cqa-ic { vertical-align: -2px; margin-right: 5px; }

/* кнопки, бейджи */
.cqa-btn { height: 32px; padding: 0 14px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; font-weight: 500; font-size: var(--cq-f4); border: 1px solid transparent; background: transparent; cursor: pointer; white-space: nowrap; text-decoration: none; color: var(--ink); }
.cqa-btn-pri { background: var(--brand); font-weight: 600; }
.cqa-btn-pri:hover { background: var(--brand-hover); }
.cqa-btn-sec { background: #fff; border-color: #d9dce0; }
.cqa-btn-sec:hover { background: #f7f8fa; }
.cqa-btn-ghost { color: var(--ink-2); }
.cqa-btn:disabled { opacity: .55; cursor: default; }
.cqa-btn-lg { width: 100%; height: 46px; border-radius: 12px; font-size: var(--cq-f4); }
.cqa-link { border: 0; background: none; padding: 0; color: var(--link); font-weight: 500; font-size: var(--cq-f5); cursor: pointer; }
.cqa-pill { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 11px; font-size: var(--cq-f5); font-weight: 500; background: var(--gray-bg); color: var(--gray-fg); white-space: nowrap; }
.cqa-pill-warn { background: var(--amber-bg); color: var(--amber-fg); }
.cqa-pill-ok { background: var(--green-bg); color: var(--green-fg); }
.cqa-pill-yes { background: var(--brand-soft); color: var(--brand-ink); }
.cqa-tag { display: inline-flex; align-items: center; height: 20px; padding: 0 7px; border-radius: 5px; background: var(--gray-bg); color: var(--gray-fg); font-size: var(--cq-f5); font-weight: 500; vertical-align: 1px; white-space: nowrap; }

/* каркас */
.cqa-wrap { width: min(1120px, calc(100% - 48px)); margin: 24px auto 40px; }
.cqa-card { background: #fff; border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--sh); padding: 20px 22px; }
.cqa-card + .cqa-card, .cqa-banner + .cqa-card, .cqa-card + .cqa-banner, .cqa-banner + .cqa-form, .cqa-card + .cqa-form, .cqa-form .cqa-card + .cqa-card { margin-top: 16px; }
.cqa-banner { border-radius: 10px; padding: 11px 14px; font-size: var(--cq-f4); line-height:var(--cq-l4); background: #fff; border: 1px solid var(--line); margin-top: 16px; }
.cqa-banner-warn { background: var(--amber-bg); border-color: #f3dcaa; color: #6f4300; }
.cqa-banner-err { background: var(--red-bg); border-color: #f3c5c5; color: #8f1d1d; }
.cqa-draft-note { background: var(--blue-bg); border-color: #cfe0f7; color: var(--blue-fg); }
.cqa-in { height: 32px; width: 100%; min-width: 0; border: 1px solid #d9dce0; border-radius: 7px; background: #fff; padding: 0 9px; font-size: var(--cq-f4); }
.cqa-in:focus { outline: 0; border-color: var(--ink); box-shadow: 0 0 0 3px rgba(246, 197, 0, .35); }
.cqa-in:disabled { background: #f4f5f7; border-color: #eceef1; color: var(--ink-4); }
.cqa-in::placeholder { color: var(--ink-4); }

/* ссылки скачивания */
.cqa-dl { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 18px; margin-bottom: 12px; font-size: var(--cq-f4); }
.cqa-dl a { color: var(--link); text-decoration: none; font-weight: 500; display: inline-flex; align-items: center; gap: 6px; }
.cqa-dl a:hover { text-decoration: underline; }
.cqa-dl .cqa-muted { margin-left: -12px; font-size: var(--cq-f5); }

/* шапка запроса + менеджер */
.cqa-heads.has-who { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 16px; align-items: stretch; }
.cqa-heads + * { margin-top: 16px; }
.cqa-pills { display: flex; gap: 8px; margin-bottom: 8px; flex-wrap: wrap; }
.cqa-head h1 { font-size: var(--cq-f2); line-height:var(--cq-l2); font-weight:600; }
.cqa-sub { color: var(--ink-2); margin-top: 2px; }
.cqa-facts-l { display: flex; flex-wrap: wrap; gap: 4px 22px; margin-top: 10px; color: var(--ink-2); }
.cqa-facts-l b { color: var(--ink); font-weight: 600; }
.cqa-quote { margin-top: 10px; padding: 8px 12px; background: #fafafb; border-radius: 8px; color: var(--ink-2); }
.cqa-hint { color: var(--ink-3); font-size: var(--cq-f5); line-height:var(--cq-l5); margin-top: 8px; }
.cqa-lbl { display: block; font-size: var(--cq-f5); font-weight: 600; color: var(--ink-3); margin-bottom: 6px; }
.cqa-who-n { font-weight: 600; font-size: var(--cq-f4); margin-bottom: 4px; }
.cqa-who div { margin-top: 2px; }
.cqa-who a { color: var(--link); text-decoration: none; }

/* таблица */
.cqa-tcard { padding: 8px 22px 22px; }
.cqa-tbl { width: 100%; border-collapse: collapse; }
.cqa-tbl th { text-align: left; font-size: var(--cq-f5); font-weight: 600; color: var(--ink-3); padding: 12px 10px 10px; border-bottom: 1px solid var(--line); white-space: nowrap; }
.cqa-tbl td { padding: 14px 10px; border-bottom: 1px solid var(--line-2); vertical-align: top; }
.cqa-c-no { width: 36px; color: var(--ink-3); }
.cqa-c-drw { width: 120px; }
.cqa-c-qty { width: 90px; white-space: nowrap; }
.cqa-c-price { width: 200px; }
.cqa-c-sum { width: 168px; text-align: right !important; white-space: nowrap; font-weight: 600; }
.cqa-title { font-weight: 600; line-height: 19px; }
.cqa-plan { color: var(--ink-3); font-size: var(--cq-f5); font-weight: 400; margin-top: 2px; }
.cqa-dm-head .cqa-plan { margin-left: 6px; }
.cqa-num { color: var(--ink-3); font-weight: 500; margin-right: 2px; }
.cqa-kids { color: var(--ink-3); font-size: var(--cq-f5); margin-top: 2px; }
.cqa-legacy { margin-top: 6px; font-size: var(--cq-f5); color: var(--amber-fg); background: var(--amber-bg); border-radius: 6px; padding: 5px 8px; }
.cqa-drw { font-size: var(--cq-f4); }
.cqa-drw-n { display: block; color: var(--ink-3); font-size: var(--cq-f5); }
.cqa-tbl .cqa-price { width: 140px; text-align: right; height: 34px; }
.cqa-cant { display: inline-flex; align-items: center; gap: 6px; margin-top: 6px; font-size: var(--cq-f5); color: var(--ink-3); cursor: pointer; user-select: none; }
.cqa-cant input { margin: 0; width: 14px; height: 14px; accent-color: var(--red-fg); cursor: pointer; }
.cqa-row.is-no td { background: #fbfbfc; }
.cqa-row.is-no .cqa-title, .cqa-row.is-no .cqa-c-qty, .cqa-row.is-no .cqa-nm, .cqa-row.is-no .cqa-plan { color: var(--ink-4); }
.cqa-row.is-no .cqa-cant { color: var(--red-fg); font-weight: 600; }
.cqa-row.is-need .cqa-price, .cqa-row.is-need .cqa-x-title:placeholder-shown { border-color: var(--red-fg); box-shadow: 0 0 0 3px rgba(197, 40, 40, .12); }
.cqa-no-tag { display: inline-block; margin-top: 4px; font-size: var(--cq-f5); font-weight: 600; color: var(--red-fg); background: var(--red-bg); border-radius: 10px; padding: 0 8px; }
.cqa-xrow .cqa-x-title { max-width: 360px; }
.cqa-xrow .cqa-x-qty { width: 64px; }
.cqa-x-del { border: 0; background: none; color: var(--ink-4); font-size: 18px; line-height: 1; margin-left: 8px; cursor: pointer; vertical-align: -1px; }
.cqa-x-del:hover { color: var(--red-fg); }
.cqa-add { display: flex; gap: 8px; align-items: baseline; padding: 12px 10px 0; font-size: var(--cq-f5); }
.cqa-add .cqa-link { font-size: var(--cq-f4); }

/* низ формы */
.cqa-foot { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 32px; margin-top: 22px; padding: 0 10px; }
.cqa-foot textarea.cqa-in { height: 150px; padding: 10px 12px; resize: vertical; line-height: 19px; }
.cqa-sum { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; color: var(--ink-2); }
.cqa-sum b { font-size: var(--cq-f1); line-height:var(--cq-l1); font-weight:600; color: var(--ink); white-space: nowrap; }
.cqa-sum-vat { margin-top: 4px; }
.cqa-sum-vat b { font-size: var(--cq-f3); line-height:var(--cq-l3); font-weight: 600; }
.cqa-kv { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 14px; color: var(--ink-2); }
.cqa-kv b { color: var(--ink); font-weight: 600; }
.cqa-seg { display: inline-flex; background: var(--gray-bg); border-radius: 8px; padding: 3px; }
.cqa-seg label { position: relative; cursor: pointer; }
.cqa-seg input { position: absolute; opacity: 0; pointer-events: none; }
.cqa-seg span { display: block; padding: 4px 14px; border-radius: 6px; font-size: var(--cq-f4); color: var(--ink-2); }
.cqa-seg input:checked + span { background: #fff; color: var(--ink); font-weight: 600; box-shadow: 0 1px 2px rgba(0, 0, 0, .12); }
.cqa-seg input:focus-visible + span { outline: 2px solid var(--ink); }
.cqa-days { display: inline-flex; align-items: center; gap: 8px; }
.cqa-days .cqa-in { width: 72px; text-align: right; height: 34px; }
.cqa-in.is-need { border-color: var(--red-fg); box-shadow: 0 0 0 3px rgba(197, 40, 40, .12); }
.cqa-foot-r .cqa-hint { margin-top: 4px; }
.cqa-send { margin-top: 18px; }
.cqa-done-cmt { color: var(--ink-2); white-space: normal; }

/* после отправки */
.cqa-ok { display: flex; gap: 14px; align-items: flex-start; }
.cqa-ok-ic { flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--green-bg); color: var(--green-fg); display: inline-flex; align-items: center; justify-content: center; }
.cqa-ok h2 { font-size: var(--cq-f3); line-height:var(--cq-l3); font-weight: 600; }
.cqa-ok p { color: var(--ink-2); margin-top: 2px; }
.cqa-lock-note { color: var(--ink-3); font-size: var(--cq-f5); text-align: center; margin-top: 14px; }

/* подтверждение */
.cqa-review { position: fixed; inset: 0; z-index: 50; display: flex; align-items: center; justify-content: center; padding: 16px; }
.cqa-review-bg { position: absolute; inset: 0; background: rgba(20, 24, 30, .45); }
.cqa-review-box { position: relative; background: #fff; border-radius: 14px; padding: 22px; width: min(460px, 100%); box-shadow: 0 10px 40px rgba(0, 0, 0, .2); }
.cqa-review-box h2 { font-size: var(--cq-f3); font-weight:600; }
.cqa-review-body { margin-top: 8px; color: var(--ink-2); }
.cqa-review-btns { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; }

/* окно чертежей */
.cqa-dm { position: fixed; inset: 0; z-index: 60; display: flex; align-items: center; justify-content: center; padding: 24px; }
.cqa-dm-bg { position: absolute; inset: 0; background: rgba(20, 24, 30, .5); }
.cqa-dm-box { position: relative; background: #fff; border-radius: 14px; width: min(1200px, 100%); height: min(820px, 100%); display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 10px 40px rgba(0, 0, 0, .25); }
.cqa-dm-head { display: flex; align-items: baseline; gap: 10px; padding: 14px 18px; border-bottom: 1px solid var(--line); }
.cqa-dm-head b { font-size: var(--cq-f4); }
.cqa-dm-x { margin-left: auto; border: 0; background: none; font-size: 24px; line-height: 1; color: var(--ink-3); cursor: pointer; padding: 0 4px; }
.cqa-dm-body { flex: 1; min-height: 0; display: grid; grid-template-columns: 320px minmax(0, 1fr); }
.cqa-dm-tree { border-right: 1px solid var(--line); overflow: auto; padding: 8px; }
.cqa-dm-tree > summary { display: none; }
.cqa-dm-node { display: flex; align-items: baseline; gap: 4px; width: 100%; border: 0; background: none; text-align: left; padding: 6px 10px; border-radius: 7px; cursor: pointer; font-size: var(--cq-f4); line-height:var(--cq-l4); }
.cqa-dm-node:hover { background: #f6f7f9; }
.cqa-dm-node.is-sel { background: var(--brand-soft); font-weight: 600; }
.cqa-dm-node.is-empty .cqa-dm-nm { color: var(--ink-2); }
.cqa-dm-main { min-width: 0; flex: 1; display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 4px; }
.cqa-dm-main .cqa-plan { flex: 1 0 100%; margin-top: 0; }
.cqa-dm-nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cqa-dm-node small { margin-left: auto; padding-left: 8px; color: var(--ink-3); font-size: var(--cq-f5); white-space: nowrap; font-weight: 400; }
.cqa-dm-view { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.cqa-dm-files { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px 14px; border-bottom: 1px solid var(--line); }
.cqa-dm-cur { font-weight: 600; margin-right: 6px; }
.cqa-dm-file { display: inline-flex; gap: 6px; align-items: baseline; max-width: 320px; border: 1px solid var(--line); background: #fff; border-radius: 8px; padding: 4px 10px; font-size: var(--cq-f5); cursor: pointer; }
.cqa-dm-file span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cqa-dm-file small { color: var(--ink-3); }
.cqa-dm-file.is-on { border-color: var(--brand); background: var(--brand-soft); }
.cqa-dm-dl { margin-left: auto; color: var(--link); text-decoration: none; font-weight: 500; font-size: var(--cq-f4); }
.cqa-dm-pv { flex: 1; min-height: 0; background: #e9ebee; display: flex; }
.cqa-dm-pv iframe { flex: 1; width: 100%; height: 100%; border: 0; background: #fff; }
.cqa-dm-pv img { max-width: 100%; max-height: 100%; margin: auto; object-fit: contain; }
.cqa-dm-empty { margin: auto; color: var(--ink-3); text-align: center; padding: 24px; line-height: 22px; }
.cqa-dm-empty a { color: var(--link); }

/* телефон */
@media (max-width: 720px) {
  .cqa-top { padding: 0 14px; height: 50px; }
  .cqa-top-r { display: none; }
  .cqa-wrap { width: calc(100% - 20px); margin: 12px auto 28px; }
  .cqa-card { padding: 14px; }
  .cqa-heads.has-who { grid-template-columns: 1fr; gap: 10px; }
  .cqa-head h1 { font-size: var(--cq-f2); line-height:var(--cq-l2); }
  .cqa-tcard { padding: 4px 14px 16px; }
  .cqa-tbl thead { display: none; }
  .cqa-tbl, .cqa-tbl tbody, .cqa-tbl tr, .cqa-tbl td { display: block; }
  .cqa-tbl tr { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; gap: 4px 8px; padding: 12px 0; border-bottom: 1px solid var(--line-2); }
  .cqa-tbl td { padding: 0; border: 0; width: auto; background: none !important; }
  .cqa-tbl .cqa-c-no { grid-row: 1 / span 3; }
  .cqa-tbl .cqa-c-name { grid-column: 2 / 4; }
  .cqa-tbl .cqa-c-drw { grid-column: 2; }
  .cqa-tbl .cqa-c-drw:empty { display: none; }
  .cqa-tbl .cqa-c-drw .cqa-drw-n { display: inline; margin-left: 6px; }
  .cqa-tbl .cqa-c-qty { grid-column: 3; text-align: right; }
  .cqa-tbl .cqa-c-price { grid-column: 2; }
  .cqa-tbl .cqa-c-sum { grid-column: 3; align-self: center; }
  .cqa-tbl .cqa-price { width: 130px; }
  .cqa-xrow .cqa-x-qty { width: 56px; }
  .cqa-foot { grid-template-columns: 1fr; gap: 18px; padding: 0; }
  .cqa-foot textarea.cqa-in { height: 110px; }
  .cqa-dm { padding: 0; }
  .cqa-dm-box { width: 100%; height: 100%; border-radius: 0; }
  .cqa-dm-body { grid-template-columns: 1fr; grid-template-rows: auto minmax(0, 1fr); }
  .cqa-dm-tree { border-right: 0; border-bottom: 1px solid var(--line); max-height: 45vh; padding: 4px 8px; }
  .cqa-dm-tree > summary { display: list-item; padding: 8px 6px; font-size: var(--cq-f5); font-weight: 600; color: var(--ink-3); cursor: pointer; }
  .cqa-dm-tree.is-single { display: none; }
  .cqa-dm-cur { width: 100%; }
}

/* печать */
@media print {
  .cqa-public { background: #fff; }
  .cqa-dl, .cqa-add, .cqa-send, .cqa-x-del, .cqa-draft-note, .cqa-dm, .cqa-review, .cqa-cant input { display: none !important; }
  .cqa-card { box-shadow: none; border-color: #ddd; }
}
.cqa-public .cqa-link { color: var(--link); }
.cqa-public .cqa-dm-x { font-size: 26px; color: var(--ink-3); }
@media (max-width: 720px) { .cqa-dm-head [data-dm-sub] { display: none; } }

/* карточка контрагента: тот же белый каркас, кнопка чёрная, не жёлтая */
.zk-party-box {
  margin-top: 16px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: var(--sh);
  padding: 20px 22px;
}
.zk-party-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.zk-party-head h2 { font-size: var(--cq-f3); line-height:var(--cq-l3); font-weight:600; }
.zk-party .cqa-seg { margin-top: 14px; }
.zk-party .cqa-lbl { margin-top: 14px; }
.zk-party .cqa-hint { margin-top: 4px; }
.zk-hp { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.zk-party .zk-send {
  width: 100%;
  height: 46px;
  margin-top: 18px;
  border: 0;
  border-radius: 12px;
  background: #1d1d1f;
  color: #fff;
  font-weight: 600;
  font-size: var(--cq-f4);
  cursor: pointer;
}
.zk-party .zk-send:hover { background: #000; }
.zk-party .zk-send:disabled { opacity: .55; cursor: default; }
html.zk-js .zk-party:not(.is-open) { display: none; }
html.zk-js .zk-party.is-open {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  inset: 0;
  z-index: 55;
  padding: 16px;
}
html.zk-js .zk-party.is-open .zk-party-bg { display: block; position: absolute; inset: 0; background: rgba(20, 24, 30, .45); }
html.zk-js .zk-party.is-open .zk-party-box {
  position: relative;
  z-index: 1;
  width: min(460px, 100%);
  max-height: calc(100% - 8px);
  margin: 0;
  overflow: auto;
  border-radius: 14px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, .2);
}
.zk-party-bg { display: none; }
.cqa-public .zk-x { margin-left: auto; border: 0; background: none; font-size: 24px; line-height: 1; color: var(--ink-3); cursor: pointer; padding: 0 4px; }
.cqa-public .is-bad { border-color: var(--red-fg) !important; box-shadow: 0 0 0 3px rgba(197, 40, 40, .12); }
.cqa-dm-body-files { grid-template-columns: minmax(0, 1fr); }
.cqa-sent-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.cqa-sent-actions .cqa-btn-lg { width: auto; height: 36px; padding: 0 16px; font-size: var(--cq-f4); border-radius: 8px; }
.cqa-msg-back { display: inline-flex; margin-top: 16px; }

/* Среда.Закупки: логотип и ссылка «Все запросы» вместо личной ссылки */
.cqa-public .zk-logo { display: inline-flex; flex: none; }
.cqa-public .zk-logo img { filter: none; }
.cqa-brand { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cqa-public .zk-top-back { color: var(--ink-2); text-decoration: none; font-weight: 500; font-size: var(--cq-f4); white-space: nowrap; }
.cqa-public .zk-top-back:hover { color: var(--ink); text-decoration: underline; }
.zk-sent-url { margin-top: 2px; word-break: break-all; }
.zk-sent-url a { color: var(--link); }
.zk-msg h1 { font-size: var(--cq-f2); line-height:var(--cq-l2); font-weight:600; }
.zk-msg .cqa-sub { margin-top: 6px; }
@media (max-width: 720px) {
  .cqa-top .zk-top-r { display: flex; }
  .cqa-top .cqa-sep, .cqa-top .cqa-top-t { display: none; }
  .zk-party .zk-party-box { padding: 16px; }
}
.zk-party:not(.is-open) .zk-x { display: none; }

/* ---------- v zk3: вход перед отправкой, замок на чертежах, звезда ---------- */
.cqa-send.is-locked,
.cqa-public a.cqa-send.is-locked {
  background: #f1ecd0;
  color: #6d6330;
  border-color: #e7dfae;
  cursor: pointer;
  text-decoration: none;
  height: auto;
  min-height: 46px;
  padding: 8px 14px;
  line-height: 20px;
  white-space: normal;
  text-align: center;
}
.cqa-send.is-locked:hover { background: #ece4bd; color: #6d6330; }
.cqa-hint a { color: var(--link); text-decoration: none; }
.cqa-hint a:hover { text-decoration: underline; }
.cqa-banner-ok { background: var(--green-bg); border-color: #b9e2c7; color: #17653a; }
.cqa-dl-lock { display: inline-flex; align-items: center; gap: 6px; color: var(--ink-2); }
.cqa-pills { align-items: center; }
.cqa-pills .zk-head-fav { margin-left: auto; }
.cqa-dm-gate { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; min-height: 240px; padding: 24px; text-align: center; color: var(--ink-2); }
.cqa-dm-gate b { color: var(--ink); font-size: var(--cq-f4); }
.cqa-dm-gate .cqa-btn { margin: 0 4px; }

/* Строка-услуга: процесс, сведения о детали, этапы техпроцесса */
.cqa-svc { color: var(--ink-3); font-size: var(--cq-f5); margin-top: 2px; }
.cqa-svc b { color: var(--ink-2, var(--ink-3)); font-weight: 600; }
.cqa-dfacts { display: flex; flex-wrap: wrap; gap: 2px 12px; margin-top: 4px; color: var(--ink-2, var(--ink-3)); font-size: var(--cq-f5); font-weight: 400; line-height:var(--cq-l5); }
.cqa-dfacts i { color: var(--ink-3); font-style: normal; margin-right: 3px; }
.cqa-ops { margin-top: 6px; font-size: var(--cq-f5); font-weight: 400; }
.cqa-ops > summary { cursor: pointer; color: var(--ink-3); list-style: none; display: inline-flex; align-items: center; gap: 6px; user-select: none; }
.cqa-ops > summary::-webkit-details-marker { display: none; }
.cqa-ops > summary::before { content: ''; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(-45deg); transition: transform .15s; margin-right: 2px; }
.cqa-ops[open] > summary::before { transform: rotate(45deg); }
.cqa-ops > summary:hover { color: var(--ink-2, var(--ink-3)); text-decoration: underline; }
.cqa-ops-l { list-style: none; margin: 6px 0 0; padding: 0; counter-reset: op; border-left: 2px solid var(--line, #e5e5ea); }
.cqa-ops-l li { counter-increment: op; display: grid; grid-template-columns: 1fr auto; gap: 0 12px; padding: 4px 0 4px 10px; line-height: 17px; }
.cqa-ops-l li::before { content: counter(op) '.'; grid-column: 1; grid-row: 1; color: var(--ink-3); }
.cqa-op-nm { grid-column: 1; grid-row: 1; padding-left: 18px; color: var(--ink-1, inherit); }
.cqa-op-d { grid-column: 1; grid-row: 2; padding-left: 18px; color: var(--ink-3); }
.cqa-op-r { grid-column: 2; grid-row: 1; color: var(--ink-3); white-space: nowrap; }
.cqa-row.is-no .cqa-svc, .cqa-row.is-no .cqa-dfacts, .cqa-row.is-no .cqa-ops { color: var(--ink-4); }

/* ---------- шаги проведения заявки (общий блок _panel для /zakupki и coop-quote) ---------- */
.cqa-stg { margin-top: 16px; }
.cqa-steps { display: flex; gap: 0; margin: 0 0 16px; padding: 0; list-style: none; }
.cqa-step { flex: 1 1 0; min-width: 0; display: flex; align-items: center; gap: 8px; position: relative; padding-right: 8px; color: var(--ink-3); }
.cqa-step::after { content: ''; flex: 1 1 auto; height: 2px; background: var(--line); margin-left: 4px; border-radius: 1px; }
.cqa-step:last-child { flex: 0 0 auto; padding-right: 0; }
.cqa-step:last-child::after { display: none; }
.cqa-step-n { flex: none; width: 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: var(--cq-f5); font-weight: 600; background: var(--gray-bg); color: var(--gray-fg); }
.cqa-step-t { font-size: var(--cq-f5); font-weight: 500; line-height:var(--cq-l5); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: flex; flex-direction: column; }
.cqa-step-t em { font-style: normal; font-size: var(--cq-f5); color: var(--ink-4); font-weight: 500; }
.cqa-step.is-done .cqa-step-n { background: var(--green-bg); color: var(--green-fg); }
.cqa-step.is-done { color: var(--ink-2); }
.cqa-step.is-done::after { background: var(--green-fg); opacity: .45; }
.cqa-step.is-current .cqa-step-n { background: var(--brand); color: var(--ink); box-shadow: 0 0 0 3px rgba(246, 197, 0, .3); }
.cqa-step.is-current { color: var(--ink); }
.cqa-step.is-current .cqa-step-t { font-weight:600; }
.cqa-step.is-soon:not(.is-current) .cqa-step-t { color: var(--ink-4); }
.cqa-stg-plaque { border-radius: 10px; padding: 12px 14px; border: 1px solid var(--line); background: #fafbfc; }
.cqa-stg-plaque b { display: block; font-size: var(--cq-f4); line-height:var(--cq-l4); }
.cqa-stg-plaque p { margin-top: 3px; color: var(--ink-2); }
.cqa-stg-plaque.is-warn { background: var(--amber-bg); border-color: var(--amber-line); border-left-width: 4px; }
.cqa-stg-plaque.is-warn b { color: var(--amber-fg); font-size: var(--cq-f4); }
.cqa-stg-plaque.is-bad { background: var(--red-bg); border-color: #f3c5c5; }
.cqa-stg-plaque.is-bad b { color: var(--red-fg); }
.cqa-stg-plaque.is-ok { background: var(--green-bg); border-color: #bfe3cd; }
.cqa-stg-plaque.is-ok b { color: var(--green-fg); }
.cqa-stg-plaque.is-info { background: var(--blue-bg); border-color: #cfe0f6; }
.cqa-stg-plaque.is-info b { color: var(--blue-fg); }
.cqa-stg-won { margin-top: 6px; display: grid; gap: 2px; }
.cqa-stg-lead { color: var(--ink-2); }
.cqa-banner-ok { background: var(--green-bg); border-color: #bfe3cd; color: #17612f; }
.cqa-stg .cqa-banner { margin-top: 0; margin-bottom: 12px; }
.cqa-stg-box { margin-top: 14px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.cqa-stg-box h3 { font-size: var(--cq-f4); font-weight: 600; margin-bottom: 4px; }
.cqa-stg-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 14px; margin-top: 12px; }
.cqa-stg-f { display: block; min-width: 0; }
.cqa-stg-act { margin-top: 14px; }
.cqa-stg-done { margin-top: 12px; color: var(--green-fg); font-weight: 500; display: flex; align-items: center; gap: 6px; }
.cqa-stg-docs { display: grid; gap: 6px; margin: 4px 0; }
.cqa-stg-doc { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; }
.cqa-stg-doc a { color: var(--link); font-weight: 500; text-decoration: none; display: inline-flex; align-items: center; gap: 5px; }
.cqa-stg-doc a:hover { text-decoration: underline; }
.cqa-stg-up { margin-top: 10px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.cqa-stg-up input[type=file] { max-width: 100%; font-size: var(--cq-f5); }
.cqa-stg-log { margin-top: 14px; font-size: var(--cq-f5); }
.cqa-stg-log summary { cursor: pointer; color: var(--ink-3); font-weight: 500; }
.cqa-stg-log ul { margin-top: 6px; display: grid; gap: 4px; }
@media (max-width: 720px) {
  .cqa-steps { gap: 4px; }
  .cqa-step { flex: 0 0 auto; padding-right: 0; }
  .cqa-step::after { display: none; }
  .cqa-step:not(.is-current) .cqa-step-t { display: none; }
  .cqa-step.is-current { flex: 1 1 auto; }
  .cqa-stg-grid { grid-template-columns: 1fr; }
  .cqa-stg-up .cqa-btn { width: 100%; }
}

/* ---------- условия заявки (блок для контрагента) ---------- */
.cqa-terms { margin-top: 16px; }
.cqa-terms h2 { font-size: var(--cq-f4); font-weight: 600; margin-bottom: 8px; }
.cqa-terms-l { display: grid; gap: 0; margin: 0; }
.cqa-terms-r { display: grid; grid-template-columns: minmax(150px, 220px) minmax(0, 1fr); gap: 4px 16px; padding: 7px 0; border-top: 1px solid var(--line-2); }
.cqa-terms-r:first-child { border-top: 0; }
.cqa-terms-r dt { color: var(--ink-3); font-size: var(--cq-f5); line-height:var(--cq-l5); }
.cqa-terms-r dd { margin: 0; color: var(--ink); overflow-wrap: anywhere; }
@media (max-width: 600px) { .cqa-terms-r { grid-template-columns: 1fr; gap: 0; } }

/* ---------- zk10: карточка закупки в стиле тендера, статус «Завершена» ---------- */
.cqa-public { background: #f4f5f7; }
.cqa-public .cqa-card { border: 0; border-radius: 16px; background: #fff; box-shadow: 0 1px 2px rgba(16,24,40,.04), 0 1px 3px rgba(16,24,40,.06); }
.cqa-public .cqa-head { padding: 24px 28px; }
.cqa-public .cqa-head h1 { font-size: var(--cq-f1); line-height:var(--cq-l1); font-weight:600; letter-spacing: -.01em; }
.cqa-public .cqa-pill { border-radius: 8px; }
.cqa-pill-open { background: #eef4ff !important; color: #2257c5 !important; border-color: transparent !important; }
.cqa-pill-done { background: #f0f1f3 !important; color: #4a4f57 !important; border-color: transparent !important; font-weight: 600; }
.cqa-done { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 24px 28px; }
.cqa-done-st { display: inline-flex; height: 28px; align-items: center; padding: 0 12px; border-radius: 8px; background: #f0f1f3; color: #1d1d1f; font-weight: 600; }
.cqa-done p { margin: 0; color: #4a4f57; }

/* final: no focus highlighting anywhere */
body *:focus, body *:focus-visible, body *:focus-within { outline: none !important; box-shadow: none !important; }
body .cqa-in:focus, body .cqa-in:focus-visible, body input:focus, body textarea:focus, body select:focus { border-color: #d9dce0 !important; background-color: #fff !important; }
body .cqa-in.is-need:focus, body .cqa-row.is-need .cqa-price:focus { border-color: var(--red-fg) !important; }
body .cqa-seg input:focus + span, body .cqa-seg input:focus-visible + span { outline: none !important; box-shadow: none !important; }
body .cqa-seg input:checked:focus + span, body .cqa-seg input:checked:focus-visible + span { box-shadow: 0 1px 2px rgba(0, 0, 0, .12) !important; }
body button:focus, body a:focus, body .cqa-btn:focus { outline: none !important; }
/* final: no right-aligned text */
body .cqa-r, body .cqa-c-sum, body .cqa-tbl th, body .cqa-tbl td, body .cqa-tbl .cqa-price, body .cqa-tbl .cqa-c-qty, body .cqa-hint, body .cqa-sum, body .cqh-info, body .cqf-tot, body .cqa-foot-r { text-align: left !important; }
body .cqa-days .cqa-in, body .cqf-days { text-align: center !important; }
body .cqa-sum { justify-content: flex-start !important; }
body .cqf-tot { justify-items: start !important; }
body .cqf-send .cqf-lbl { justify-content: flex-start !important; }
/* totals: label left, amount at right edge */
body .cqa-foot-r .cqa-sum { justify-content: space-between !important; }
