@charset "utf-8";
/* ============================================================
   올창고 — 견적의뢰 역경매 입찰 (6개 견적의뢰 게시판 공용)
   메인 테마 CSS 변수 사용 → data-theme="dark" 자동 적용
   ============================================================ */
:root{
  --q-brand:var(--brand,#2563eb);
  --q-brand-light:var(--brand-light,#eff6ff);
  --q-ink:var(--ink,#111827);
  --q-ink-2:var(--ink-2,#374151);
  --q-muted:var(--muted,#6b7280);
  --q-line:var(--line,#e5e7eb);
  --q-white:var(--white,#fff);
  --q-bg:var(--bg-gray,#f8fafc);
  --q-win:#16a34a;
}
html[data-theme="dark"]{--q-muted:#ccc}

/* ---------- 래퍼 ---------- */
.qbid-wrap{border:1px solid var(--q-line);border-radius:14px;overflow:hidden;margin:20px 0;background:var(--q-white)}
.qbid-title{display:flex;align-items:center;gap:8px;margin:0;padding:14px 18px;font-size:16px;font-weight:800;color:var(--q-ink);background:var(--q-bg);border-bottom:1px solid var(--q-line)}
.qbid-title i{color:var(--q-brand)}
.qbid-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:22px;background:var(--q-brand);color:#fff;font-size:12px;font-weight:800}
.qbid-flag{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:5px 11px;border-radius:20px}
.qbid-flag i{font-size:12px}
.qbid-flag.open{background:#dbeafe;color:#1d4ed8}
.qbid-flag.open i{color:#1d4ed8}
.qbid-flag.done{background:#dcfce7;color:#15803d}
.qbid-flag.done i{color:#15803d}
.qbid-flag.closed{background:#f3f4f6;color:#6b7280}
.qbid-flag.closed i{color:#6b7280}
html[data-theme="dark"] .qbid-flag.open{background:rgba(96,165,250,.18);color:#9ec5ff}
html[data-theme="dark"] .qbid-flag.open i{color:#9ec5ff}
html[data-theme="dark"] .qbid-flag.done{background:rgba(34,197,94,.18);color:#86efac}
html[data-theme="dark"] .qbid-flag.done i{color:#86efac}
html[data-theme="dark"] .qbid-flag.closed{background:rgba(148,163,184,.18);color:#cbd5e1}
html[data-theme="dark"] .qbid-flag.closed i{color:#cbd5e1}

.qbid-body{padding:16px 18px}

/* ---------- 요약 ---------- */
.qbid-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
.qs-item{display:flex;flex-direction:column;gap:5px;padding:13px 14px;border:1px solid var(--q-line);border-radius:10px;background:var(--q-bg)}
.qs-label{font-size:12px;font-weight:600;color:var(--q-muted)}
.qs-value{font-size:19px;font-weight:800;color:var(--q-ink);line-height:1.2}
.qs-value small{font-size:13px;font-weight:600;color:var(--q-muted);margin-left:2px}
.qs-value.qs-low{color:var(--q-brand)}
.qs-value.qs-kind{color:var(--q-brand)}
@media (max-width:768px){.qbid-summary{grid-template-columns:repeat(2,1fr)}.qs-value{font-size:17px}}

/* ---------- 안내 문구 ---------- */
.qbid-notice{display:flex;align-items:flex-start;gap:7px;margin:12px 0 0;padding:12px 14px;border:1px solid var(--q-line);border-radius:10px;background:var(--q-bg);font-size:13px;line-height:1.6;color:var(--q-ink-2)}
.qbid-notice i{color:var(--q-brand);margin-top:2px;flex:0 0 auto}
.qbid-notice a{color:var(--q-brand);font-weight:700;text-decoration:underline}
.qbid-notice.warn{background:#fef3c7;border-color:#fcd34d;color:#92400e}
.qbid-notice.warn i{color:#b45309}
html[data-theme="dark"] .qbid-notice.warn{background:rgba(252,211,77,.12);border-color:#8a6d1d;color:#fcd34d}
html[data-theme="dark"] .qbid-notice.warn i{color:#fcd34d}

.qbid-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:44px 20px;border:1px dashed var(--q-line);border-radius:12px;color:var(--q-muted);font-size:14px;text-align:center}
.qbid-empty i{font-size:32px;color:var(--q-line)}

/* ---------- 입찰 목록 ---------- */
.qbid-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.qbid-item{display:flex;align-items:stretch;gap:13px;padding:14px 16px;border:1px solid var(--q-line);border-radius:12px;background:var(--q-white);transition:.15s}
.qbid-item:hover{border-color:var(--q-brand);box-shadow:0 4px 14px rgba(37,99,235,.08)}
.qbid-item.is-mine{background:var(--q-brand-light);border-color:var(--q-brand)}
.qbid-item.is-selected{border-color:var(--q-win);background:rgba(22,163,74,.06);box-shadow:0 2px 10px rgba(22,163,74,.12)}
html[data-theme="dark"] .qbid-item.is-mine{background:rgba(96,165,250,.1)}
html[data-theme="dark"] .qbid-item.is-selected{background:rgba(34,197,94,.1)}

.qb-rank{flex:0 0 34px;display:flex;align-items:center;justify-content:center;height:34px;border-radius:50%;background:var(--q-bg);color:var(--q-ink-2);font-size:14px;font-weight:800}
.qbid-item.is-selected .qb-rank{background:var(--q-win);color:#fff}
/* 글쓴이·관리자(최저가순)일 때만 1위 강조 */
.qbid-list-owner .qbid-item:first-child:not(.is-selected) .qb-rank{background:var(--q-brand);color:#fff}

.qb-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:6px}
.qb-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.qb-grade{font-size:11px;font-weight:800;color:#fff;padding:3px 8px;border-radius:6px;background:var(--q-muted)}
.qb-grade.trend{background:var(--q-brand)}
.qb-grade.new{background:var(--cta,#ff7a2f)}
.qb-grade.hot{background:#ef4444}
.qb-company{font-size:15px;font-weight:800;color:var(--q-ink)}
.qb-tag{font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;border:1px solid var(--q-line);color:var(--q-muted)}
.qb-tag.mine{border-color:var(--q-brand);color:var(--q-brand)}
.qb-tag.win{border-color:var(--q-win);background:var(--q-win);color:#fff}
.qb-tag.lose{border-color:#d1d5db;background:#f3f4f6;color:#6b7280}
.qb-tag.type{border-color:var(--q-brand);background:var(--q-brand-light);color:var(--q-brand)}
html[data-theme="dark"] .qb-tag.type{background:rgba(96,165,250,.16);color:#9ec5ff;border-color:#4f78b8}
html[data-theme="dark"] .qb-tag.lose{background:rgba(148,163,184,.15);border-color:#64748b;color:#94a3b8}
.qbid-item.is-rejected{opacity:.72}
.qbid-item.is-rejected:hover{border-color:var(--q-line);box-shadow:none}

.qb-include{font-size:13px;color:var(--q-ink-2)}
.qb-include i{color:var(--q-win);margin-right:3px}
.qb-memo{margin:2px 0 0;padding:10px 12px;border-radius:9px;background:var(--q-bg);font-size:13px;line-height:1.6;color:var(--q-ink-2);word-break:break-word}
.qb-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--q-muted)}
.qb-meta i{margin-right:2px}
.qb-tel{display:inline-flex;align-items:center;gap:3px;color:var(--q-brand) !important;font-weight:700;text-decoration:none}
.qb-tel:hover{text-decoration:underline}

.qb-side{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:7px;min-width:130px}
.qb-price{font-size:20px;font-weight:800;color:var(--q-brand);white-space:nowrap;line-height:1.2}
.qb-price small{font-size:13px;font-weight:600;color:var(--q-muted);margin-left:2px}
.qbid-item.is-selected .qb-price{color:var(--q-win)}
.qb-btn{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--q-line);background:var(--q-white);color:var(--q-ink-2);font-size:12px;font-weight:700;padding:6px 11px;border-radius:8px;cursor:pointer;white-space:nowrap}
.qb-btn:hover{border-color:var(--q-brand);color:var(--q-brand)}
.qb-btn:disabled{opacity:.55;cursor:default}
.qb-btn.select{border-color:var(--q-win);background:var(--q-win);color:#fff}
.qb-btn.select:hover{filter:brightness(.93);color:#fff}
.qb-btn.cancel:hover{border-color:#ef4444;color:#ef4444}
html[data-theme="dark"] .qb-btn{background:transparent}

@media (max-width:768px){
  .qbid-item{flex-wrap:wrap;gap:10px}
  .qb-rank{flex:0 0 28px;height:28px;font-size:13px}
  .qb-main{flex:1 1 calc(100% - 38px)}
  .qb-side{flex:1 1 100%;flex-direction:row;align-items:center;justify-content:space-between;min-width:0;border-top:1px dashed var(--q-line);padding-top:10px}
}

/* ---------- 입찰 폼 ---------- */
.qbid-form-wrap{margin-top:18px;padding:16px 18px;border:1px solid var(--q-line);border-radius:12px;background:var(--q-bg)}
.qbf-title{display:flex;align-items:center;gap:6px;margin:0 0 14px;font-size:15px;font-weight:800;color:var(--q-ink)}
.qbf-title i{color:var(--q-brand)}
.qbf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.qbf-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.qbf-full{grid-column:1 / -1}
.qbf-field label{font-size:13px;font-weight:700;color:var(--q-ink)}
.qbf-field label .req{color:#ef4444}
.qbf-help{font-size:11.5px;color:var(--q-muted)}
.qbf-field .frm_input{height:44px;width:100%;padding:0 12px;border:1px solid var(--q-line);border-radius:9px;background:var(--q-white);color:var(--q-ink);font-size:14px;font-family:inherit}
.qbf-field textarea.frm_input{height:auto;padding:11px 12px;line-height:1.6;resize:vertical}
.qbf-field .frm_input:focus{outline:0;border-color:var(--q-brand)}
.qbf-unit{display:flex;align-items:center;gap:7px}
.qbf-unit input{text-align:right}
.qbf-unit span{flex:0 0 auto;font-size:14px;color:var(--q-ink-2)}
.qbf-btns{display:flex;justify-content:flex-end;margin-top:14px}
.qbf-submit{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:9px;background:var(--q-brand);color:#fff;font-size:14px;font-weight:800;padding:12px 26px;cursor:pointer}
.qbf-submit:hover{filter:brightness(.93)}
.qbf-submit:disabled{opacity:.6;cursor:default}
@media (max-width:900px){.qbf-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.qbf-grid{grid-template-columns:1fr}.qbf-submit{width:100%;justify-content:center}}
