:root { --tcs-red:#e11d2e; --tcs-dark:#111827; --tcs-muted:#6b7280; --tcs-border:#e5e7eb; --tcs-bg:#f7f7fb; --tcs-card:#fff; }
.tcs-cch-wrap, .tcs-cch-wrap * { box-sizing:border-box; }
.tcs-cch-wrap { max-width:1220px; margin:18px auto; padding:0 14px; color:#111827; font-family:inherit; }
.tcs-cch-topbar { display:flex; align-items:center; justify-content:space-between; gap:14px; background:linear-gradient(135deg,#111827,#2b0f18 60%,#65111d); color:#fff; border-radius:18px; padding:14px 18px; box-shadow:0 10px 25px rgba(17,24,39,.16); }
.tcs-cch-topbar h1 { margin:0; font-size:clamp(24px,3vw,36px); line-height:1.0; color:#fff; }
.tcs-cch-kicker { font-size:12px; text-transform:uppercase; letter-spacing:.12em; opacity:.82; font-weight:700; }
.tcs-cch-logo { width:48px; height:48px; object-fit:contain; border-radius:12px; background:rgba(255,255,255,.1); padding:4px; }
.tcs-cch-statuses { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; font-size:12px; }
.tcs-cch-statuses span { border-radius:999px; padding:5px 9px; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.25); }
.tcs-cch-statuses .ok { color:#bbf7d0; } .tcs-cch-statuses .warn { color:#fde68a; }
.tcs-cch-grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(360px,.8fr); gap:14px; margin-top:14px; align-items:start; }
.tcs-cch-panel { background:#fff; border:1px solid var(--tcs-border); border-radius:18px; padding:14px; box-shadow:0 8px 20px rgba(17,24,39,.07); }
.tcs-cch-results-panel { position:sticky; top:20px; }
.tcs-cch-step { display:flex; align-items:center; gap:8px; margin:0 0 10px; font-size:15px; }
.tcs-cch-step span { width:24px; height:24px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:#111827; color:#fff; font-weight:800; font-size:12px; }
.tcs-cch-form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.tcs-cch-form-grid.grade-row { grid-template-columns:repeat(4,minmax(0,1fr)); }
.tcs-cch-form-grid label { display:flex; flex-direction:column; gap:4px; font-size:12px; font-weight:700; color:#374151; }
.tcs-cch-form-grid input, .tcs-cch-form-grid select { width:100%; min-height:38px; border:1px solid #d1d5db; border-radius:10px; padding:8px 10px; font-size:14px; background:#fff; }
.tcs-cch-actions { display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin:12px 0; }
.tcs-cch-btn { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:9px 13px; border-radius:12px; border:0; background:var(--tcs-red); color:#fff!important; text-decoration:none!important; font-weight:800; cursor:pointer; box-shadow:0 8px 16px rgba(225,29,46,.22); }
.tcs-cch-btn:hover { filter:brightness(.96); color:#fff!important; }
.tcs-cch-btn:disabled { opacity:.55; cursor:wait; }
.tcs-cch-btn-secondary { background:#111827; box-shadow:none; }
.tcs-cch-btn-big { width:100%; font-size:15px; }
.tcs-cch-status { margin:8px 0; font-size:13px; border-radius:12px; padding:8px 10px; display:none; }
.tcs-cch-status:not(:empty) { display:block; }
.tcs-cch-status.ok { background:#ecfdf5; color:#047857; border:1px solid #a7f3d0; }
.tcs-cch-status.warn { background:#fffbeb; color:#92400e; border:1px solid #fcd34d; }
.tcs-cch-status.bad { background:#fef2f2; color:#991b1b; border:1px solid #fecaca; }
.tcs-cch-candidate-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:10px 0 14px; }
.tcs-cch-candidate { border:1px solid #e5e7eb; background:#fff; border-radius:14px; padding:7px; text-align:left; cursor:pointer; transition:.15s ease; color:#111827; }
.tcs-cch-candidate:hover, .tcs-cch-candidate.selected { border-color:var(--tcs-red); box-shadow:0 8px 20px rgba(225,29,46,.18); transform:translateY(-1px); }
.tcs-cch-cover { display:block; aspect-ratio:2/3; background:#f3f4f6; border-radius:10px; overflow:hidden; margin-bottom:7px; }
.tcs-cch-cover img { width:100%; height:100%; object-fit:cover; display:block; }
.tcs-cch-noimg { height:100%; display:flex; align-items:center; justify-content:center; color:#6b7280; font-size:12px; }
.tcs-cch-candidate-title { display:block; font-weight:800; font-size:12px; line-height:1.2; }
.tcs-cch-candidate-meta, .tcs-cch-candidate-source { display:block; color:#6b7280; font-size:11px; margin-top:3px; line-height:1.2; }
.tcs-cch-selected-card { display:flex; gap:10px; align-items:center; border:1px solid #e5e7eb; border-radius:14px; padding:8px; background:#f9fafb; }
.tcs-cch-selected-card img { width:54px; height:74px; object-fit:cover; border-radius:8px; }
.tcs-cch-muted, .tcs-cch-disclaimer { color:#6b7280; font-size:12px; line-height:1.45; }
.tcs-cch-disclaimer { margin-top:14px; border-top:1px solid #e5e7eb; padding-top:10px; }
.tcs-cch-details { margin:10px 0; border:1px dashed #d1d5db; border-radius:12px; padding:10px; background:#fafafa; }
.tcs-cch-details summary { cursor:pointer; font-weight:800; }
.tcs-cch-manual-comps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-top:8px; }
.tcs-cch-manual-comps > div { display:flex; flex-direction:column; gap:5px; }
.tcs-cch-manual-comps input { border:1px solid #d1d5db; border-radius:9px; padding:7px 8px; font-size:13px; }
.tcs-cch-estimate-card { background:linear-gradient(135deg,#111827,#1f2937); color:#fff; border-radius:16px; padding:16px; margin:12px 0; }
.tcs-cch-est-label { font-size:12px; text-transform:uppercase; letter-spacing:.12em; opacity:.75; }
.tcs-cch-est-price { font-size:42px; font-weight:900; line-height:1.05; margin:4px 0; }
.tcs-cch-est-range, .tcs-cch-est-source { color:#d1d5db; font-size:13px; }
.tcs-cch-mini-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:10px 0; }
.tcs-cch-mini-stats span { background:#f3f4f6; border-radius:11px; padding:8px; font-size:12px; color:#374151; }
.tcs-cch-link-row { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0; }
.tcs-cch-api-note { background:#eef2ff; border:1px solid #c7d2fe; color:#3730a3; border-radius:12px; padding:9px; font-size:12px; margin:10px 0; }
.tcs-cch-subhead { font-size:15px; margin:14px 0 8px; }
.tcs-cch-ebay-list { display:flex; flex-direction:column; gap:8px; }
.tcs-cch-ebay-item { display:flex; gap:8px; border:1px solid #e5e7eb; border-radius:12px; padding:8px; color:#111827!important; text-decoration:none!important; background:#fff; }
.tcs-cch-ebay-item:hover { border-color:#9ca3af; background:#f9fafb; }
.tcs-cch-ebay-item img { width:52px; height:52px; object-fit:cover; border-radius:8px; }
.tcs-cch-ebay-item strong { display:block; font-size:12px; line-height:1.25; }
.tcs-cch-ebay-item em { display:block; margin-top:3px; color:#6b7280; font-style:normal; font-size:12px; }
.tcs-cch-empty, .tcs-cch-loading { border-radius:14px; padding:12px; background:#f9fafb; border:1px solid #e5e7eb; color:#374151; font-size:13px; margin:10px 0; }
.tcs-cch-empty.warn { background:#fffbeb; border-color:#fcd34d; color:#92400e; }
.tcs-cch-empty.bad { background:#fef2f2; border-color:#fecaca; color:#991b1b; }
.tcs-cch-lockbox { max-width:820px; margin:30px auto; padding:0 15px; }
.tcs-cch-lock-inner { background:linear-gradient(135deg,#111827,#65111d); color:#fff; border-radius:22px; padding:26px; text-align:center; box-shadow:0 12px 30px rgba(17,24,39,.18); }
.tcs-cch-lock-inner h2 { color:#fff; margin:6px 0; }
.tcs-cch-lock-actions { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:14px; }
.tcs-cch-member-strip { margin:10px auto 16px; max-width:1180px; border:1px solid #fecaca; background:#fff1f2; color:#7f1d1d; border-radius:999px; padding:10px 16px; text-align:center; font-size:14px; }
.tcs-cch-member-strip a { font-weight:900; color:#b91c1c; text-decoration:underline; }
.tcs-cch-menu-item > a { font-weight:800; }
@media (max-width: 1020px){ .tcs-cch-grid { grid-template-columns:1fr; } .tcs-cch-results-panel { position:relative; top:auto; } .tcs-cch-candidate-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width: 760px){ .tcs-cch-topbar { align-items:flex-start; flex-direction:column; } .tcs-cch-form-grid, .tcs-cch-form-grid.grade-row { grid-template-columns:repeat(2,minmax(0,1fr)); } .tcs-cch-candidate-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .tcs-cch-manual-comps { grid-template-columns:repeat(2,minmax(0,1fr)); } .tcs-cch-est-price { font-size:34px; } }
@media (max-width: 480px){ .tcs-cch-form-grid, .tcs-cch-form-grid.grade-row, .tcs-cch-candidate-grid, .tcs-cch-mini-stats { grid-template-columns:1fr; } }

/* v2.1 diagnostics / compact result helpers */
.tcs-cch-api-table{display:grid;gap:8px;margin-top:8px}
.tcs-cch-api-table>div{background:#0d1222;border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:9px 10px;font-size:12px;line-height:1.35;color:#d8def5}
.tcs-cch-api-table code{display:block;margin-top:4px;white-space:normal;color:#9fe7ff;font-size:11px}
.tcs-cch-candidate.selected{outline:3px solid rgba(255,214,102,.95);transform:translateY(-1px)}
.tcs-cch-loading{border:1px solid rgba(255,214,102,.25);background:rgba(255,214,102,.08);color:#ffe4a3;border-radius:14px;padding:12px 14px;font-weight:700}

/* v2.2 cleaner public results */
.tcs-cch-helpbox{margin:10px 0;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:12px;padding:10px 12px;font-size:12px;line-height:1.4}
.tcs-cch-mini-stats.clean{grid-template-columns:repeat(2,minmax(0,1fr))}
