/* b2b-quote — 报价单插件样式（随插件走，不进主站 style.css） */
.bq-add{display:inline-flex;align-items:center;gap:8px;margin:10px 10px 0 0;padding:11px 18px;border:1px solid var(--primary,#1a5cff);border-radius:12px;background:transparent;color:var(--primary,#1a5cff);font:inherit;font-size:14.5px;font-weight:600;cursor:pointer;transition:.16s}
.bq-add:hover{background:var(--primary,#1a5cff);color:#fff}
.bq-add.on{background:var(--primary,#1a5cff);color:#fff}
.bq-add svg{flex:0 0 auto}

.bq-dock{position:fixed;right:18px;bottom:96px;z-index:60}
.bq-dock-a{display:flex;align-items:center;gap:8px;padding:11px 16px;border-radius:999px;background:var(--primary,#1a5cff);color:#fff;text-decoration:none;font-size:14px;font-weight:600;box-shadow:0 10px 26px rgba(16,24,40,.22)}
.bq-dock-a b{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;padding:0 5px;border-radius:999px;background:#fff;color:var(--primary,#1a5cff);font-size:12px}

.bq-page{max-width:1040px;margin:26px auto 60px;padding:0 16px}
.bq-sheet{background:#fff;border:1px solid var(--line,#e3e8f0);border-radius:16px;padding:28px 30px 24px;box-shadow:0 8px 30px rgba(16,24,40,.06)}
.bq-hd{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:16px;border-bottom:2px solid var(--line,#e3e8f0);flex-wrap:wrap}
.bq-hd h1{margin:0 0 6px;font-size:21px;line-height:1.3}
.bq-hd p{margin:0;color:var(--sub,#5b6779);font-size:13px;line-height:1.6}
.bq-meta{display:flex;flex-direction:column;gap:3px;text-align:right;font-size:13px;color:var(--sub,#5b6779)}
.bq-meta b{font-size:16px;letter-spacing:.14em;color:var(--tx,#1a2233)}

.bq-tbl-wrap{overflow-x:auto;margin:18px 0 6px}
.bq-tbl{width:100%;border-collapse:collapse;font-size:14px}
.bq-tbl th,.bq-tbl td{padding:10px 10px;border-bottom:1px solid var(--line,#eef2f8);text-align:left;vertical-align:middle}
.bq-tbl th{background:#f6f8fc;font-weight:600;color:#22334d;white-space:nowrap;font-size:13px}
.bq-tbl .bq-r{text-align:right;white-space:nowrap}
.bq-tbl .bq-no{width:34px;color:#8b97a8}
.bq-tbl .bq-td-name b{display:block;font-weight:600;line-height:1.45}
.bq-tbl .bq-td-name em{display:block;margin-top:2px;font-style:normal;font-size:12px;color:#8b97a8}
.bq-tbl td input{width:74px;padding:6px 8px;border:1px solid var(--line,#d7dfeb);border-radius:8px;font:inherit;font-size:13.5px;text-align:right}

.bq-sum{display:flex;justify-content:flex-end;align-items:baseline;gap:14px;padding:14px 2px 4px;border-top:2px solid var(--line,#e3e8f0);margin-top:6px}
.bq-sum span{color:var(--sub,#5b6779);font-size:13.5px}
.bq-sum b{font-size:24px;letter-spacing:-.3px}
.bq-note{margin:12px 0 0;color:#8b97a8;font-size:12.5px;line-height:1.65}
.bq-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.bq-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:1px solid var(--primary,#1a5cff);border-radius:12px;background:var(--primary,#1a5cff);color:#fff;font:inherit;font-size:14.5px;font-weight:600;cursor:pointer;text-decoration:none}
.bq-btn.ghost{background:transparent;color:var(--tx,#1a2233);border-color:var(--line,#d7dfeb)}
.bq-empty{max-width:560px;margin:60px auto;padding:34px 26px;text-align:center;border:1px dashed var(--line,#d7dfeb);border-radius:16px}
.bq-empty h2{margin:0 0 10px;font-size:19px}
.bq-empty p{margin:0 0 18px;color:var(--sub,#5b6779);font-size:14px}

@media(max-width:600px){
  .bq-sheet{padding:20px 16px;border-radius:14px}
  .bq-hd{flex-direction:column}
  .bq-meta{text-align:left;flex-direction:row;flex-wrap:wrap;gap:10px}

  /* 窄屏表格改「一行一张卡」：
     6 列硬挤在 358px 里，产品名会被压成每行 4 个字（实测 350ml 那行折了 5 行），
     报价单是要发给客户的，宁可长一点也不要把名字折断。 */
  .bq-tbl{display:block}
  .bq-tbl thead{display:none}
  .bq-tbl tbody{display:block}
  /* 右侧 46px 是浮动客服条的安全区：不留的话「数量/小计」会被压住半截 */
  .bq-tbl tr{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 8px;padding:12px 46px 12px 0;border-bottom:1px solid var(--line,#eef2f8)}
  .bq-tbl td{display:block;padding:0;border:0;font-size:13px}
  .bq-tbl .bq-no{display:none}
  .bq-tbl .bq-td-name{grid-column:1/-1}
  .bq-tbl .bq-td-name b{font-size:14px;line-height:1.45}
  .bq-tbl td:nth-child(3)::before{content:'起批量 ';color:#8b97a8;font-size:12px}
  .bq-tbl td:nth-child(4)::before{content:'单价 ';color:#8b97a8;font-size:12px}
  .bq-tbl td:nth-child(5)::before{content:'数量 ';color:#8b97a8;font-size:12px}
  .bq-tbl td:nth-child(6){grid-column:1/-1;text-align:right;padding-top:2px}
  .bq-tbl td:nth-child(6)::before{content:'小计 ';color:#8b97a8;font-size:12px}

  /* 右侧浮动客服条会盖住合计：留出安全边距 */
  .bq-sum{padding-right:56px}
  .bq-sum b{font-size:20px}
  .bq-dock{right:12px;bottom:86px}
}

/* 打印：只留报价单本体 —— 站点导航、浮标、按钮、客服条一律不进纸面 */
@media print{
  body{background:#fff}
  header,footer,.bq-dock,.bq-acts,.chat-bar,.rfq-bar,.exit-pop,.consent,.mv-chrome,.ui-mask{display:none!important}
  .bq-page{margin:0;max-width:none;padding:0}
  .bq-sheet{border:0;box-shadow:none;border-radius:0;padding:0}
  .bq-tbl th{background:#f2f2f2!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .bq-hd{border-bottom:2px solid #333}
  .bq-sum{border-top:2px solid #333}
  main{padding:0!important}
}
