/* COOPRO polish layer — appended after theme CSS. Scoped, non-destructive. */
:root{--cp-ink:#111827;--cp-muted:#6b7280;--cp-line:#e5e7eb;--cp-bg:#f7f8fa;--cp-card:#ffffff;--cp-accent:#c8102e;--cp-accent-ink:#8f0b20;--cp-radius:14px;--cp-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px rgba(16,24,40,.06);--cp-shadow-hover:0 2px 6px rgba(16,24,40,.06),0 16px 40px rgba(16,24,40,.10)}
html{scroll-behavior:smooth}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;color:var(--cp-ink);background:var(--cp-bg);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5{font-weight:700;letter-spacing:-.01em;color:var(--cp-ink)}
a{color:inherit}
a:hover{color:var(--cp-accent)}
/* ---------- header ---------- */
.navbar{background:#fff!important;border-bottom:1px solid var(--cp-line)}
.navbar .nav-link{font-weight:500;color:#374151!important}
.navbar .nav-link:hover{color:var(--cp-accent)!important}
/* ---------- buttons ---------- */
.btn{border-radius:10px;font-weight:600;padding:.55rem 1.1rem;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--cp-ink);border-color:var(--cp-ink)}
.btn-primary:hover{background:var(--cp-accent);border-color:var(--cp-accent);box-shadow:0 8px 20px rgba(200,16,46,.25)}
.btn-outline-primary{border-color:var(--cp-ink);color:var(--cp-ink)}
.btn-outline-primary:hover{background:var(--cp-ink);border-color:var(--cp-ink)}
/* ---------- cards & product grid ---------- */
.card{border:1px solid var(--cp-line);border-radius:var(--cp-radius);box-shadow:var(--cp-shadow);transition:box-shadow .18s ease,transform .18s ease}
.product-card,.product-item{transition:box-shadow .18s ease,transform .18s ease}
.product-card:hover,.product-item:hover{box-shadow:var(--cp-shadow-hover);transform:translateY(-3px)}
.product-card img,.product-item img{border-radius:10px;object-fit:cover}
.product-title,.product-name{font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.product-price,.price{color:var(--cp-accent);font-weight:700}
/* ---------- section rhythm ---------- */
.container{padding-left:20px;padding-right:20px}
section{padding-top:8px;padding-bottom:8px}
/* ---------- BREADCRUMB / PAGINATION ---------- */
.breadcrumb{background:transparent;padding:.5rem 0;font-size:.9rem}
.page-item.active .page-link{background:var(--cp-ink);border-color:var(--cp-ink)}
.page-link{color:var(--cp-ink)}
/* ---------- PAGE CONTENT (fix pasted rich text) ---------- */
.page-content{background:transparent;border:0;box-shadow:none}
.page-content .card-body{background:var(--cp-card);border:1px solid var(--cp-line);border-radius:var(--cp-radius);box-shadow:var(--cp-shadow);padding:2rem 2.25rem!important}
.page-content p,.page-content span,.page-content div,.page-content li,.page-content td,.page-content th{background:transparent!important;font-family:inherit!important;color:inherit!important;line-height:1.85!important;font-size:1rem!important}
.page-content p{margin:0 0 1.05rem!important;padding:0!important}
.page-content strong,.page-content b{font-weight:700;color:var(--cp-ink)!important}
.page-content h2{font-size:1.6rem;margin:2rem 0 .9rem}
.page-content h3{font-size:1.28rem;margin:1.6rem 0 .7rem}
.page-content h4{font-size:1.1rem;margin:1.3rem 0 .6rem}
.page-content ul,.page-content ol{margin:0 0 1.1rem 1.25rem;padding:0}
.page-content li{margin:.35rem 0}
.page-content img{max-width:100%;height:auto;border-radius:10px;margin:1rem 0}
.page-content table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.95rem}
.page-content th,.page-content td{border:1px solid var(--cp-line);padding:.6rem .75rem;text-align:left}
.page-content th{background:#f3f4f6!important;font-weight:600}
.page-content a{color:var(--cp-accent);text-decoration:none;border-bottom:1px solid rgba(200,16,46,.25)}
.page-content a:hover{border-bottom-color:var(--cp-accent)}
.page-content blockquote{margin:1.2rem 0;padding:.85rem 1.1rem;border-left:3px solid var(--cp-accent);background:#fff5f6;color:#4b5563}
/* ---------- footer ---------- */
footer{background:#0f172a!important;color:#cbd5e1}
footer a{color:#cbd5e1}
footer a:hover{color:#fff}
/* ---------- mobile ---------- */
@media (max-width:575.98px){
  .container{padding-left:14px;padding-right:14px}
  .page-content .card-body{padding:1.15rem 1.1rem!important}
  .page-content p,.page-content span,.page-content li{font-size:.97rem!important}
  .page-content h2{font-size:1.32rem}
  h1{font-size:1.55rem}
  .product-title,.product-name{font-size:.92rem}
}
/* ---------- print ---------- */
@media print{.navbar,footer,.btn{display:none!important}}
/* ---------- homepage hero ---------- */
.cp-hero{background:linear-gradient(135deg,#0f172a 0%,#1f2a44 55%,#3b1d24 100%);color:#fff;padding:64px 0 56px;margin-bottom:8px}
.cp-hero__inner{max-width:820px}
.cp-hero h1{color:#fff;font-size:2.35rem;line-height:1.22;margin:0 0 14px;letter-spacing:-.02em}
.cp-hero p{color:#c7cfdd;font-size:1.05rem;line-height:1.7;margin:0 0 26px;max-width:660px}
.cp-hero__actions{display:flex;gap:12px;flex-wrap:wrap}
.cp-hero .btn-primary{background:var(--cp-accent);border-color:var(--cp-accent)}
.cp-hero .btn-primary:hover{background:#a80d26;border-color:#a80d26}
.cp-hero .btn-outline-primary{border-color:rgba(255,255,255,.55);color:#fff}
.cp-hero .btn-outline-primary:hover{background:#fff;color:#0f172a;border-color:#fff}
@media (max-width:575.98px){.cp-hero{padding:40px 0 34px}.cp-hero h1{font-size:1.6rem}.cp-hero p{font-size:.98rem}.cp-hero__actions .btn{width:100%}}
/* ---------- page heads ---------- */
.cp-page-head{padding:10px 0 20px;border-bottom:1px solid var(--cp-line);margin-bottom:22px}
.cp-page-head h1{font-size:1.95rem;margin:0 0 8px;letter-spacing:-.015em}
.cp-page-head p{color:var(--cp-muted);margin:0;max-width:820px;line-height:1.7}
.page-content h1{font-size:1.65rem;margin:0 0 1rem}
@media (max-width:575.98px){.cp-page-head h1{font-size:1.45rem}.page-content h1{font-size:1.35rem}}
/* ---------- product page ---------- */
.page-product h1{font-size:1.5rem;line-height:1.35;margin:.35rem 0 .75rem;font-weight:700}
.page-product .nav-tabs .nav-link{font-weight:600;color:#4b5563}
.page-product .nav-tabs .nav-link.active{color:var(--cp-ink);border-bottom-color:var(--cp-accent)}
.page-product img{border-radius:12px}
@media (max-width:575.98px){.page-product h1{font-size:1.28rem}}
/* fix: product detail h1 must not inherit card title sizing */
.page-product h1.product-name{font-size:1.5rem!important;line-height:1.35}
@media (max-width:575.98px){.page-product h1.product-name{font-size:1.3rem!important}}
/* card titles stay small, scoped */
.product-card .product-name,.product-item .product-name{font-size:.95rem}