/* provincenew complete cart UI */
:root {
  --pn-primary:#2563eb;
  --pn-primary-dark:#1d4ed8;
  --pn-primary-soft:#eff6ff;
  --pn-text:#172033;
  --pn-text-2:#667085;
  --pn-muted:#98a2b3;
  --pn-line:#e5eaf1;
  --pn-bg:#f4f6f9;
  --pn-surface:#fff;
  --pn-danger:#dc2626;
  --pn-radius:12px;
  --pn-shadow:0 8px 24px rgba(16,24,40,.06);
}

/* Shared cart pages */
.pn-cart-page,
#submit-form.pn-viewcart-form {
  color:var(--pn-text);
}
.pn-cart-page .card,
#submit-form.pn-viewcart-form .card {
  border:1px solid var(--pn-line)!important;
  border-radius:14px!important;
  box-shadow:var(--pn-shadow)!important;
  overflow:hidden;
}
.pn-cart-page .card-body,
#submit-form.pn-viewcart-form .card-body { padding:22px!important; }
.pn-cart-page .form-control,
#submit-form.pn-viewcart-form .form-control {
  min-height:40px;
  border-color:#d8dee8;
  border-radius:9px;
  box-shadow:none!important;
}
.pn-cart-page .form-control:focus,
#submit-form.pn-viewcart-form .form-control:focus {
  border-color:#93b4ff;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
}
.pn-cart-page .btn,
#submit-form.pn-viewcart-form .btn {
  border-radius:9px;
  font-weight:500;
}
.pn-cart-page .btn-primary,
#submit-form.pn-viewcart-form .btn-primary {
  border-color:var(--pn-primary)!important;
  background:var(--pn-primary)!important;
}
.pn-cart-page .btn-primary:hover,
#submit-form.pn-viewcart-form .btn-primary:hover {
  border-color:var(--pn-primary-dark)!important;
  background:var(--pn-primary-dark)!important;
}

/* View cart */
#submit-form.pn-viewcart-form > .row { align-items:flex-start; }
#submit-form.pn-viewcart-form .col-md-8 > .card,
#submit-form.pn-viewcart-form .col-md-4 > .card { margin-bottom:18px; }
#submit-form.pn-viewcart-form .invoice-title h4 { margin:0; color:#101828; font-size:17px!important; font-weight:650; }
#submit-form.pn-viewcart-form hr { border-color:#edf0f5; }

.pn-cart-items-scroll {
  max-height:58vh!important;
  padding:0 4px!important;
  scrollbar-width:thin;
  scrollbar-color:#cfd6e2 transparent;
}
.pn-cart-items-scroll::-webkit-scrollbar { width:6px; }
.pn-cart-items-scroll::-webkit-scrollbar-thumb { border-radius:999px; background:#cfd6e2; }

.pn-cart-item {
  margin:0!important;
  padding:16px 0 18px;
  border-bottom:1px solid #edf0f5;
}
.pn-cart-item:last-child { border-bottom:0; }
.pn-cart-item-head {
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.pn-cart-product-name {
  flex:1 1 auto;
  min-width:0;
  color:#1f2937;
  font-size:14px;
  font-weight:600;
  line-height:1.5;
  word-break:break-word;
}
.pn-cart-controls {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  flex:0 0 auto;
}
.cart_qty.pn-cart-qty {
  display:inline-flex;
  align-items:center;
  gap:7px;
  height:38px;
}
.cart_qty.pn-cart-qty .pn-cart-qty-input {
  width:72px!important;
  height:38px;
  padding:0 10px;
  border:1px solid #d7deea;
  border-radius:8px;
  color:#344054;
  background:#fff;
  text-align:center;
  outline:none;
}
.cart_qty.pn-cart-qty .pn-cart-qty-input:focus {
  border-color:#93b4ff;
  box-shadow:0 0 0 3px rgba(37,99,235,.10);
}
.pn-cart-update-btn {
  height:38px!important;
  padding:0 13px!important;
  border:0!important;
  border-radius:8px!important;
  color:#344054!important;
  background:#eef1f5!important;
  font-size:13px!important;
  white-space:nowrap;
}
.pn-cart-update-btn:hover {
  color:var(--pn-primary)!important;
  background:var(--pn-primary-soft)!important;
}
.pn-cart-icon-actions { display:inline-flex; align-items:center; gap:5px; }
.pn-cart-icon-action {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:8px;
  color:#667085!important;
  background:#fff;
}
.pn-cart-icon-action:hover { color:var(--pn-primary)!important; background:var(--pn-primary-soft); }
.pn-cart-icon-action.is-danger:hover { color:var(--pn-danger)!important; background:#fef2f2; }
#submit-form.pn-viewcart-form .goods_info { padding:8px 0 4px; }
#submit-form.pn-viewcart-form .goods_info .title { padding:7px 10px; border-radius:8px; color:#475467; background:#f8fafc; text-indent:0; }
#submit-form.pn-viewcart-form .goods_info .title font { margin:1px 7px 0 0; float:none; display:inline-block; }
#submit-form.pn-viewcart-form .goods_info .info { padding:4px 10px 0 25px; color:#667085; text-indent:0; }
#submit-form.pn-viewcart-form .text-primary { color:var(--pn-primary)!important; }

/* Configure product: harmonize existing advanced layout without altering its logic */
.pn-cart-page .cp1-page {
  border:1px solid var(--pn-line);
  box-shadow:var(--pn-shadow);
}
.pn-cart-page .cp1-card,
.pn-cart-page .cp1-sidebar-card,
.pn-cart-page .card {
  border-color:var(--pn-line)!important;
}

/* Complete page */
.pn-cart-page .alert { border-radius:10px; }

@media (max-width:991.98px) {
  .pn-cart-item-head { align-items:flex-start; flex-wrap:wrap; }
  .pn-cart-product-name { flex:1 1 100%; }
  .pn-cart-controls { width:100%; justify-content:flex-start; flex-wrap:wrap; }
  .pn-cart-items-scroll { max-height:none!important; }
}
@media (max-width:575.98px) {
  .pn-cart-page .card-body,
  #submit-form.pn-viewcart-form .card-body { padding:16px!important; }
  .cart_qty.pn-cart-qty { width:100%; }
  .cart_qty.pn-cart-qty .pn-cart-qty-input { flex:1 1 auto; width:auto!important; }
  .pn-cart-update-btn { flex:0 0 auto; }
}

/* 浅色主题：直接维护本文件，不再新增版本 CSS */
:root {
  --pn-primary: #2563eb;
  --pn-primary-dark: #1d4ed8;
  --pn-primary-soft: #eff6ff;
  --pn-primary-button: #eaf2ff;
  --pn-primary-border: #93c5fd;
}

/* Bootstrap 通用按钮 */
.pn-cart-page .btn-primary,
#submit-form.pn-viewcart-form .btn-primary,
.pn-cart-page button.btn-primary,
#submit-form.pn-viewcart-form button.btn-primary,
.pn-cart-page a.btn-primary,
#submit-form.pn-viewcart-form a.btn-primary {
  color: #1d4ed8 !important;
  border-color: #93c5fd !important;
  background: #eaf2ff !important;
  box-shadow: none !important;
}
.pn-cart-page .btn-primary:hover,
#submit-form.pn-viewcart-form .btn-primary:hover,
.pn-cart-page .btn-primary:focus,
#submit-form.pn-viewcart-form .btn-primary:focus,
.pn-cart-page .btn-primary:not(:disabled):not(.disabled):active,
#submit-form.pn-viewcart-form .btn-primary:not(:disabled):not(.disabled):active {
  color: #1d4ed8 !important;
  border-color: #60a5fa !important;
  background: #dbeafe !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .08) !important;
}
.pn-cart-page .btn-danger,
#submit-form.pn-viewcart-form .btn-danger {
  color: #b42318 !important;
  border-color: #fecaca !important;
  background: #fef2f2 !important;
}
.pn-cart-page .btn-danger:hover,
#submit-form.pn-viewcart-form .btn-danger:hover {
  color: #991b1b !important;
  border-color: #fca5a5 !important;
  background: #fee2e2 !important;
}
.pn-cart-page .btn-warning,
#submit-form.pn-viewcart-form .btn-warning {
  color: #b45309 !important;
  border-color: #fed7aa !important;
  background: #fff7ed !important;
}

/* 普通产品配置项 */
.cp1-page .btn-group-toggle .btn,
.cp1-page .btn-custom,
.cp1-page .cp1-rule-package-btn {
  color: #344054 !important;
  border-color: #dbe3ef !important;
  background: #fff !important;
  opacity: 1 !important;
}
.cp1-page .btn-group-toggle .btn:hover,
.cp1-page .btn-custom:hover,
.cp1-page .cp1-rule-package-btn:hover {
  color: #1d4ed8 !important;
  border-color: #bfdbfe !important;
  background: #f8fbff !important;
}
.cp1-page .btn-group-toggle .btn.active,
.cp1-page .btn-custom-group .active,
.cp1-page .cp1-rule-package-btn.active,
.cp1-page label.btn.active {
  color: #1d4ed8 !important;
  border-color: #93c5fd !important;
  background: #eff6ff !important;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, .06) !important;
  opacity: 1 !important;
}
.cp1-page .btn-group-toggle .btn.active *,
.cp1-page .btn-custom-group .active *,
.cp1-page .cp1-rule-package-btn.active *,
.cp1-page label.btn.active * {
  color: #1d4ed8 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* 购物车数量、编辑与更新 */
.pn-cart-update-btn {
  color: #1d4ed8 !important;
  border: 1px solid #bfdbfe !important;
  background: #eff6ff !important;
}
.pn-cart-update-btn:hover {
  color: #1d4ed8 !important;
  border-color: #93c5fd !important;
  background: #dbeafe !important;
}
.pn-cart-icon-action {
  border: 1px solid transparent;
  background: #f8fafc !important;
}
.pn-cart-icon-action:hover {
  color: #1d4ed8 !important;
  border-color: #bfdbfe;
  background: #eff6ff !important;
}

/* Element UI 与 V10 产品配置 */
.mf-cloud .el-form .el-radio-button.is-active .el-radio-button__inner,
.mf-dcim .el-form .el-radio-button.is-active .el-radio-button__inner,
.mf-cloud .el-radio-button__orig-radio:checked + .el-radio-button__inner,
.mf-dcim .el-radio-button__orig-radio:checked + .el-radio-button__inner {
  color: #1d4ed8 !important;
  border-color: #93c5fd !important;
  background: #eff6ff !important;
  box-shadow: -1px 0 0 #93c5fd !important;
}
.mf-cloud .el-form .el-radio-button.is-active .el-radio-button__inner *,
.mf-dcim .el-form .el-radio-button.is-active .el-radio-button__inner * {
  color: #1d4ed8 !important;
  opacity: 1 !important;
}
.mf-cloud .cloud-box .cloud-item.active .top,
.mf-dcim .cloud-box .cloud-item.active .top,
.common-config .com-active {
  color: #1d4ed8 !important;
  border-color: #93c5fd !important;
  background: #eff6ff !important;
}
.mf-cloud .cloud-box .cloud-item.active .top *,
.mf-dcim .cloud-box .cloud-item.active .top *,
.common-config .com-active * {
  color: #1d4ed8 !important;
  opacity: 1 !important;
}
.el-button--primary,
.cartDialog .el-button--primary {
  color: #1d4ed8 !important;
  border-color: #93c5fd !important;
  background: #eaf2ff !important;
}
.el-button--primary:hover,
.el-button--primary:focus,
.cartDialog .el-button--primary:hover {
  color: #1d4ed8 !important;
  border-color: #60a5fa !important;
  background: #dbeafe !important;
}
.el-select-dropdown__item.selected { color: #1d4ed8 !important; font-weight: 650 !important; }
