/* PC marketplace layout and shared site components. */
body.commerce-v2-theme { --primary:#086fb9; --primary-dark:#075a99; --primary-soft:#edf5fc; --accent:#e66b22; --text:#263445; --muted:#788390; --border:#e7ebef; --page:#f5f6f8; background:var(--page); color:var(--text); font-size:13px; }
body.commerce-v2-theme .site-shell, .cv2-shell { width:min(1280px,calc(100% - 48px)); margin-left:auto; margin-right:auto; }
body.commerce-v2-theme .top-strip { background:#f5f6f8; border-bottom:1px solid #eef0f2; }
body.commerce-v2-theme .top-strip-inner { min-height:29px; }
body.commerce-v2-theme .brand-search-inner { min-height:86px; grid-template-columns:300px minmax(0,1fr); gap:50px; }
body.commerce-v2-theme .brand-block img { max-height:48px; max-width:230px; }
body.commerce-v2-theme .global-search { height:44px; border:2px solid var(--primary); border-radius:5px; grid-template-columns:92px minmax(0,1fr) auto 88px; }
body.commerce-v2-theme .global-search > span { font-weight:500; color:#384a5d; background:white; }
body.commerce-v2-theme .global-search-tags button { background:#f4f6f8; border-radius:2px; font-size:11px; }
body.commerce-v2-theme .main-nav-inner { min-height:42px; gap:38px; }
body.commerce-v2-theme .main-nav-inner > a { min-height:42px; font-size:14px; }
body.commerce-v2-theme .category-entry { width:216px; min-height:42px; font-size:14px; background:var(--primary); padding:0 18px; }
body.commerce-v2-theme .nav-consult { color:#e56922; font-weight:500; }
.commerce-v2 { padding-top:20px; padding-bottom:0; }
.commerce-v2 button, .commerce-v2 input { font:inherit; }
.commerce-v2 button { cursor:pointer; }
.cv2-review-bar { display:flex; align-items:center; justify-content:space-between; min-height:34px; font-size:11px; color:#7b8794; }
.cv2-review-bar b { margin-right:6px; color:#627c96; font-weight:600; }
.cv2-review-bar a { color:#6586a3; }
.cv2-top-grid { display:grid; grid-template-columns:216px minmax(0,1fr) 258px; gap:12px; align-items:stretch; }
.cv2-categories { padding:0 17px 12px; border:1px solid var(--border); border-radius:5px; background:white; }
.cv2-categories > h2 { display:flex; align-items:center; gap:9px; margin:0; padding:14px 0 11px; border-bottom:1px solid #edf0f3; font-size:15px; font-weight:600; }
.cv2-categories svg { width:16px; height:16px; fill:none; stroke:#2f75a9; stroke-width:1.7; }
.cv2-category-group { padding-top:12px; }
.cv2-category-group h3 { display:flex; justify-content:space-between; margin:0 0 7px; font-size:12px; font-weight:600; }
.cv2-category-group h3 a { color:#8b96a3; font-size:10px; font-weight:400; }
.cv2-category-group > div { display:flex; flex-wrap:wrap; gap:6px 13px; }
.cv2-category-group > div a { font-size:12px; color:#617080; line-height:1.8; }
.cv2-category-group a:hover { color:var(--primary); }
.cv2-promotion { display:grid; grid-template-rows:minmax(240px,1fr) 80px; gap:12px; }
.cv2-hero { position:relative; min-height:240px; overflow:hidden; border-radius:5px; background:#e9f1fa; }
.cv2-hero > img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:center; }
.cv2-hero-copy { position:relative; z-index:1; padding:25px 28px; }
.cv2-hero-copy > p { margin:0 0 13px; color:#507292; font-size:12px; letter-spacing:1px; }
.cv2-hero h1 { margin:0 0 21px; color:#103c67; font-size:34px; line-height:1.4; font-weight:750; letter-spacing:-.6px; }
.cv2-hero h1 em { font-style:normal; }
.cv2-hero-copy > div { display:flex; align-items:center; gap:18px; }
.commerce-v2 .cv2-primary { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:36px; padding:8px 15px; border:0; border-radius:4px; background:var(--primary); color:white; font-size:12px; font-weight:500; }
.commerce-v2 .cv2-primary:hover { background:var(--primary-dark); color:white; }
.cv2-hero-copy > div > button { border:0; padding:6px 0; background:transparent; color:#234e73; font-size:12px; }
.cv2-services { display:grid; grid-template-columns:repeat(4,1fr); background:white; border:1px solid var(--border); border-radius:5px; }
.cv2-services > button { display:flex; align-items:center; justify-content:center; gap:8px; border:0; background:transparent; padding:12px 5px; color:#354b61; text-align:left; }
.cv2-services > button + button { border-left:1px solid #eef1f4; }
.cv2-services > button:hover { background:#f6faff; }
.cv2-service-icon { display:grid; place-items:center; width:28px; height:32px; border:1px solid #d3e2ef; border-radius:5px; color:#4288bc; background:#f7fbff; font-size:17px; font-weight:500; }
.cv2-services strong { display:block; font-size:13px; font-weight:500; }
.cv2-services small { display:block; margin-top:3px; color:#8996a2; font-size:10px; }
.cv2-services i { color:#9aa9b6; font-style:normal; }
.cv2-advisor { padding:15px 15px 10px; border:1px solid var(--border); border-radius:5px; background:white; }
.cv2-advisor-title { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.cv2-advisor-symbol { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:#eff6fc; color:#458bbd; }
.cv2-advisor-symbol svg { width:23px; height:23px; stroke:currentColor; fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.cv2-advisor-title h2 { margin:0 0 3px; font-size:16px; font-weight:600; }
.cv2-advisor-title p { margin:0; color:#8b96a2; font-size:10px; }
.cv2-lead-form { display:flex; flex-direction:column; gap:8px; }
.cv2-lead-form .lead-type-picker { margin-bottom:2px; }
.cv2-lead-form .lead-type-picker legend { font-size:11px; color:#7e8a97; margin-bottom:7px; }
.cv2-lead-form .lead-type-picker legend small { font-size:10px; }
.cv2-lead-form .lead-type-options { gap:6px; }
.cv2-lead-form .lead-type-option { min-height:29px; padding:4px 6px; border-radius:3px; font-size:11px; gap:5px; }
.cv2-lead-form > input { height:35px; min-width:0; width:100%; border:1px solid #e1e6eb; border-radius:3px; padding:0 10px; background:#fafbfd; outline-offset:2px; font-size:12px; }
.cv2-lead-form .cv2-primary { min-height:34px; }
.cv2-lead-form .lead-message:empty { display:none; }
.cv2-lead-form .lead-message { font-size:11px; }
.cv2-privacy { color:#9ba3ad; font-size:10px; text-align:center; }
.cv2-feed { display:flex; gap:8px; margin-top:11px; padding-top:9px; border-top:1px solid #edf0f3; }
.cv2-feed > strong { color:#5b6d7e; font-size:10px; font-weight:500; white-space:nowrap; }
.cv2-feed-window { overflow:hidden; height:21px; min-width:0; flex:1; }
.cv2-feed .deal-feed-list { gap:0; }
.cv2-feed .deal-feed-item { display:block; height:21px; min-height:21px; margin:0; padding:0; border:0; background:transparent; color:#8b97a3; font-size:10px; line-height:21px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cv2-feed .deal-feed-item :is(span,strong,em) { font-size:10px; font-weight:400; color:inherit; margin-right:5px; font-style:normal; }
.cv2-feed.is-loaded .deal-feed-list { animation:cv2-feed-scroll 32s linear infinite; }
@keyframes cv2-feed-scroll { to { transform:translateY(-50%); } }
.cv2-qualification-row { display:flex; gap:20px; align-items:center; margin-top:12px; padding:13px 18px; border:1px solid var(--border); border-radius:5px; background:white; }
.cv2-qualification-row > strong { font-size:12px; font-weight:500; color:#4d6275; white-space:nowrap; }
.cv2-qualification-row > div { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.cv2-qualification-row > div a { padding:2px 9px; border-radius:3px; background:#f4f6f8; color:#73808e; font-size:11px; }
.cv2-more { color:#83909e; font-size:11px; white-space:nowrap; }
.cv2-qualification-row > .cv2-more { margin-left:auto; }
.cv2-featured, .cv2-guides { margin-top:19px; }
.cv2-section-head { display:flex; justify-content:space-between; align-items:center; min-height:43px; gap:20px; margin-bottom:10px; }
.cv2-section-head > div { display:flex; align-items:baseline; gap:15px; }
.cv2-section-head h2 { margin:0; color:#273b50; font-size:21px; font-weight:650; }
.cv2-section-head > div > span { font-size:11px; color:#939da8; }
.cv2-section-head nav { display:flex; align-items:center; gap:25px; }
.cv2-section-head nav a { padding:8px 0; color:#778595; font-size:12px; }
.cv2-section-head nav a.is-selected { color:var(--primary); border-bottom:2px solid var(--primary); font-weight:500; }
.cv2-company-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.cv2-company-card { position:relative; padding:15px 18px 0; border:1px solid #e8ecf0; border-radius:5px; background:white; transition:border-color .15s,box-shadow .15s; }
.cv2-company-card:hover { border-color:#abc9e0; box-shadow:0 6px 20px #183d6110; }
.cv2-card-top { display:flex; justify-content:space-between; gap:10px; align-items:center; font-size:10px; color:#8794a0; }
.cv2-card-top > span:first-child { color:#4c83a8; }
.cv2-card-top .cv2-status { display:inline-flex; align-items:center; gap:4px; color:#7b8c9c; }
.cv2-status::before { content:""; width:4px; height:4px; border-radius:50%; background:#82aa97; }
.cv2-company-card h3 { margin:8px 0; font-size:15px; line-height:1.6; font-weight:600; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.cv2-company-location { display:flex; align-items:center; gap:8px; margin:0; font-size:11px; color:#8a96a2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cv2-company-location i { display:block; width:1px; height:10px; background:#dce2e8; }
.cv2-card-labels { display:flex; gap:5px; min-height:22px; margin-top:9px; flex-wrap:wrap; }
.cv2-card-labels > span { padding:1px 5px; color:#8694a1; border:1px solid #e7edf2; background:#fbfcfd; border-radius:2px; font-size:10px; }
.cv2-card-price { display:flex; align-items:center; justify-content:space-between; gap:8px; margin:12px 0; }
.cv2-card-price > strong { color:#e76721; font-size:24px; font-family:Arial,"Microsoft YaHei",sans-serif; font-weight:600; letter-spacing:-.5px; }
.cv2-card-price > a { color:var(--primary); font-size:11px; }
.cv2-company-card > footer { display:flex; justify-content:space-between; align-items:center; gap:6px; min-height:31px; border-top:1px solid #f0f2f5; }
.cv2-company-card > footer > span { color:#a1aab3; font-size:9px; }
.cv2-company-card > footer button { border:0; padding:4px 0; background:transparent; color:#7d91a2; font-size:10px; }
.cv2-resource-bands { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:22px; }
.cv2-resource-band { min-width:0; padding:20px 20px 7px; border:1px solid var(--border); border-radius:5px; background:white; }
.cv2-resource-band > header { display:flex; justify-content:space-between; gap:10px; align-items:center; padding-bottom:15px; }
.cv2-resource-band h2 { font-size:18px; margin:0; font-weight:600; }
.cv2-resource-band header p { margin:4px 0 0; font-size:10px; color:#8e9ba7; }
.cv2-resource-band header > a { font-size:11px; color:#8291a0; }
.cv2-resource-item { display:flex; justify-content:space-between; gap:15px; align-items:center; border-top:1px solid #f0f2f5; padding:13px 0; }
.cv2-resource-item > span { min-width:0; }
.cv2-resource-item strong { display:block; font-size:12px; font-weight:500; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cv2-resource-item small { display:block; color:#94a0ab; font-size:10px; margin-top:4px; }
.cv2-resource-item > b { font-weight:500; color:#d66b2e; white-space:nowrap; font-size:14px; }
.cv2-band-empty { color:#8d99a5; padding:12px 0; font-size:12px; }
.cv2-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.cv2-guide-grid > a { position:relative; min-width:0; border:1px solid var(--border); border-radius:5px; padding:18px 22px; background:white; }
.cv2-guide-grid > a > span { color:#7191aa; font-size:10px; }
.cv2-guide-grid h3 { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; margin:8px 0 15px; font-weight:500; }
.cv2-guide-grid time { color:#9aa5af; font-size:10px; }
.cv2-guide-grid b { position:absolute; bottom:18px; right:22px; color:#7d9bb4; font-weight:400; }
.cv2-bottom-service { display:flex; align-items:center; gap:24px; margin-top:25px; margin-bottom:30px; padding:25px 30px; border:1px solid #e1e9f0; border-radius:5px; background:#edf4fa; }
.cv2-bottom-service > div { margin-right:auto; }
.cv2-bottom-service strong { display:block; color:#345775; font-size:18px; font-weight:500; }
.cv2-bottom-service > div > span { display:block; color:#88a0b3; font-size:11px; margin-top:5px; }
.cv2-bottom-service > button { padding:9px 15px; border:1px solid #abc3d6; background:white; color:#44759c; border-radius:4px; font-size:12px; }
.cv2-bottom-service > button > span { margin-left:16px; }
.cv2-bottom-service > a { color:#507d9f; font-size:16px; font-weight:500; }
body.commerce-v2-theme .site-footer { margin-top:0; background:white; border-color:#e4e9ee; }
body.commerce-v2-theme .footer-grid a,body.commerce-v2-theme .footer-brand p { color:#8794a0; }
body.commerce-v2-theme .footer-brand strong { color:#2a5375; }
body.commerce-v2-theme .footer-grid .footer-phone { color:#086fb9 !important; font-size:19px !important; margin:10px 0; }
body.commerce-v2-theme .beian-row { border-color:#edf0f3; }
@media (max-width:1180px) and (min-width:761px) {
  .cv2-top-grid { grid-template-columns:190px minmax(0,1fr) 235px; gap:10px; }
  body.commerce-v2-theme .category-entry { width:190px; }
  .cv2-hero-copy { padding:25px 22px; }
  .cv2-hero h1 { font-size:29px; }
  .cv2-services > button { gap:5px; }
  .cv2-service-icon { display:none; }
  .cv2-company-card { padding:13px 13px 0; }
  .cv2-company-location { font-size:10px; }
  .cv2-company-card > footer > span { max-width:115px; overflow:hidden; text-overflow:ellipsis; }
  .cv2-resource-band { padding:17px 15px 5px; }
}
@media (max-width:760px) {
  body.commerce-v2-theme .site-shell,.cv2-shell { width:calc(100% - 24px); }
  body.commerce-v2-theme .brand-search-inner { grid-template-columns:1fr; gap:12px; min-height:125px; padding:13px 0; }
  body.commerce-v2-theme .brand-block img { max-height:38px; }
  body.commerce-v2-theme .global-search { grid-template-columns:76px minmax(0,1fr) 65px; }
  body.commerce-v2-theme .global-search-tags { display:none; }
  body.commerce-v2-theme .main-nav-inner { gap:19px; }
  body.commerce-v2-theme .category-entry { width:auto; min-height:42px; padding:0 12px; font-size:12px; }
  body.commerce-v2-theme .main-nav-inner > a { font-size:12px; }
  .cv2-review-bar { font-size:10px; }
  .cv2-top-grid { grid-template-columns:1fr; }
  .cv2-promotion { order:-1; grid-template-rows:230px 74px; }
  .cv2-hero-copy { padding:23px; }
  .cv2-hero h1 { font-size:29px; }
  .cv2-hero > img { opacity:.7; object-position:55% center; }
  .cv2-services > button { gap:5px; }
  .cv2-service-icon,.cv2-services i { display:none; }
  .cv2-services strong { font-size:12px; }
  .cv2-services small { font-size:9px; }
  .cv2-categories { padding-bottom:15px; }
  .cv2-category-group { display:grid; grid-template-columns:65px 1fr; gap:10px; }
  .cv2-category-group h3 { display:block; margin:2px 0; font-size:11px; }
  .cv2-category-group h3 a { display:none; }
  .cv2-category-group > div { gap:4px 15px; }
  .cv2-advisor { padding:18px; }
  .cv2-advisor .lead-type-options { grid-template-columns:repeat(3,1fr); }
  .cv2-qualification-row { gap:12px; align-items:flex-start; flex-wrap:wrap; padding:14px; }
  .cv2-qualification-row > div { gap:8px; }
  .cv2-qualification-row > .cv2-more { display:none; }
  .cv2-section-head { flex-wrap:wrap; gap:8px; }
  .cv2-section-head h2 { font-size:19px; }
  .cv2-section-head > div { gap:10px; }
  .cv2-section-head nav { gap:20px; width:100%; }
  .cv2-company-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .cv2-company-card { padding:12px 12px 0; }
  .cv2-company-card h3 { font-size:13px; }
  .cv2-company-location { display:block; font-size:10px; white-space:normal; min-height:30px; }
  .cv2-company-location i { display:none; }
  .cv2-company-card > footer > span { display:none; }
  .cv2-card-price { align-items:flex-start; flex-direction:column; gap:4px; }
  .cv2-card-price > strong { font-size:22px; }
  .cv2-resource-bands,.cv2-guide-grid { grid-template-columns:1fr; }
  .cv2-bottom-service { flex-wrap:wrap; padding:20px; gap:18px; }
  .cv2-bottom-service > div { width:100%; }
}
@media (prefers-reduced-motion:reduce) { .commerce-v2 *, .cv2-feed.is-loaded .deal-feed-list { animation:none; transition:none; } }
