/* ================================================
   SIBHOST — Bootstrap / Module Output Override
   bootstrap-compat.css
   All rules scoped under .svc-section-body for
   specificity over module-injected CSS (cPanel, DA…)
   ================================================ */

/* ─── نرمال کردن رنگ‌ها برای کل صفحه ─── */
body { color: var(--text-primary); }

/* ── Bootstrap modal visibility control ── */
.modal        { display: none !important; }
.modal.in,
.modal.show   { display: block !important; }
.modal-backdrop         { position: fixed; inset: 0; background: rgba(0,0,0,0.6); z-index: 1040; display: none; }
.modal-backdrop.in,
.modal-backdrop.show    { display: block; }

/* ══════════════════════════════════════════
   SCOPED OVERRIDES (فقط داخل module output)
   ══════════════════════════════════════════ */
.svc-section-body { color: var(--text-primary); }

/* ── Grid ── */
.svc-section-body .row {
  display: flex; flex-wrap: wrap;
  margin-right: -10px; margin-left: -10px;
}
.svc-section-body [class*="col-"] {
  padding-right: 10px; padding-left: 10px;
  box-sizing: border-box; flex: 1 1 100%;
}
.svc-section-body .col-md-6,.svc-section-body .col-sm-6 { flex: 0 0 50%; max-width: 50%; }
.svc-section-body .col-md-4,.svc-section-body .col-sm-4 { flex: 0 0 33.333%; max-width: 33.333%; }
.svc-section-body .col-md-3,.svc-section-body .col-sm-3 { flex: 0 0 25%; max-width: 25%; }
.svc-section-body .col-md-8,.svc-section-body .col-sm-8 { flex: 0 0 66.666%; max-width: 66.666%; }
.svc-section-body .col-md-12 { flex: 0 0 100%; max-width: 100%; }
@media (max-width: 768px) {
  .svc-section-body [class*="col-"] { flex: 0 0 100%; max-width: 100%; }
}

/* ── Panel (Bootstrap 3) ── */
.svc-section-body .panel,
.svc-section-body .card {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-soft) !important;
  border-radius: var(--radius-lg) !important;
  margin-bottom: var(--space-4) !important;
  overflow: hidden;
  box-shadow: none !important;
  color: var(--text-primary) !important;
}
.svc-section-body .panel-heading,
.svc-section-body .card-header {
  background: rgba(255,255,255,0.04) !important;
  border-bottom: 1px solid var(--border-soft) !important;
  padding: var(--space-3) var(--space-4) !important;
  color: var(--text-primary) !important;
}
.svc-section-body .panel-title,
.svc-section-body .card-title {
  font-size: var(--text-sm) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  margin: 0 !important;
}
.svc-section-body .panel-body,
.svc-section-body .card-body {
  padding: var(--space-4) !important;
  background: transparent !important;
  color: var(--text-primary) !important;
}
.svc-section-body .panel-footer,
.svc-section-body .card-footer {
  background: rgba(255,255,255,0.02) !important;
  border-top: 1px solid var(--border-soft) !important;
  padding: var(--space-3) var(--space-4) !important;
  color: var(--text-muted) !important;
  font-size: var(--text-xs) !important;
}
.svc-section-body .panel-default { border-color: var(--border-soft) !important; }
.svc-section-body .panel-primary { border-color: rgba(37,99,235,0.5) !important; }
.svc-section-body .panel-primary > .panel-heading {
  background: rgba(37,99,235,0.12) !important;
  color: var(--brand-blue) !important;
}
.svc-section-body .panel-success > .panel-heading {
  background: rgba(16,185,129,0.1) !important;
  color: var(--success) !important;
}
.svc-section-body .panel-warning > .panel-heading {
  background: rgba(245,158,11,0.1) !important;
  color: var(--warning) !important;
}
.svc-section-body .panel-danger > .panel-heading {
  background: rgba(239,68,68,0.08) !important;
  color: var(--danger) !important;
}

/* ── Buttons ── */
.svc-section-body .btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 8px var(--space-4) !important;
  border-radius: var(--radius-md) !important;
  font-size: var(--text-sm) !important;
  font-weight: var(--font-semibold) !important;
  font-family: var(--font-main) !important;
  cursor: pointer !important;
  transition: all var(--transition-fast) !important;
  text-decoration: none !important;
  border: 1px solid transparent !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
.svc-section-body .btn-default,
.svc-section-body .btn-secondary {
  background: var(--bg-card-hover) !important;
  border-color: var(--border-medium) !important;
  color: var(--text-primary) !important;
}
.svc-section-body .btn-default:hover { background: var(--border-soft) !important; color: var(--text-primary) !important; }
.svc-section-body .btn-primary {
  background: linear-gradient(135deg,var(--brand-blue),var(--brand-cyan)) !important;
  color: #fff !important; border-color: transparent !important;
}
.svc-section-body .btn-primary:hover { opacity: 0.88 !important; color: #fff !important; }
.svc-section-body .btn-success {
  background: var(--success) !important;
  color: #fff !important; border-color: transparent !important;
}
.svc-section-body .btn-warning {
  background: var(--warning) !important;
  color: #000 !important; border-color: transparent !important;
}
.svc-section-body .btn-danger {
  background: var(--danger) !important;
  color: #fff !important; border-color: transparent !important;
}
.svc-section-body .btn-info {
  background: var(--brand-cyan) !important;
  color: #fff !important; border-color: transparent !important;
}
.svc-section-body .btn-sm,.svc-section-body .btn-xs {
  padding: 5px var(--space-3) !important;
  font-size: var(--text-xs) !important;
}
.svc-section-body .btn-lg {
  padding: 12px var(--space-5) !important;
  font-size: var(--text-base) !important;
}
.svc-section-body .btn-block { width: 100% !important; }

/* ── Form ── */
.svc-section-body .form-group { margin-bottom: var(--space-4) !important; }
.svc-section-body label,
.svc-section-body .control-label {
  display: block !important;
  font-size: var(--text-xs) !important;
  font-weight: var(--font-semibold) !important;
  color: var(--text-muted) !important;
  margin-bottom: var(--space-2) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
}
.svc-section-body .form-control {
  width: 100% !important;
  padding: 9px var(--space-3) !important;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-medium) !important;
  border-radius: var(--radius-md) !important;
  color: var(--text-primary) !important;
  font-family: var(--font-main) !important;
  font-size: var(--text-sm) !important;
  outline: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  transition: border-color var(--transition-fast) !important;
}
.svc-section-body .form-control:focus {
  border-color: var(--brand-cyan) !important;
  background: var(--bg-card-hover) !important;
  box-shadow: 0 0 0 3px rgba(6,182,212,0.1) !important;
}
.svc-section-body select.form-control {
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2364748b'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: left 12px center !important;
}
.svc-section-body .input-group { display: flex !important; }
.svc-section-body .input-group .form-control {
  flex: 1 !important;
  border-radius: var(--radius-md) 0 0 var(--radius-md) !important;
}
.svc-section-body .input-group-btn,
.svc-section-body .input-group-append { display: flex !important; }
.svc-section-body .input-group-btn .btn,
.svc-section-body .input-group-append .btn {
  border-radius: 0 var(--radius-md) var(--radius-md) 0 !important;
}

/* ── Table ── */
.svc-section-body .table {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: var(--text-sm) !important;
  color: var(--text-primary) !important;
  background: transparent !important;
}
.svc-section-body .table thead th,
.svc-section-body .table > thead > tr > th {
  padding: var(--space-2) var(--space-3) !important;
  text-align: right !important;
  font-size: var(--text-xs) !important;
  font-weight: var(--font-semibold) !important;
  color: var(--text-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  border-bottom: 1px solid var(--border-medium) !important;
  background: rgba(255,255,255,0.02) !important;
}
.svc-section-body .table td,
.svc-section-body .table > tbody > tr > td {
  padding: var(--space-3) !important;
  border-bottom: 1px solid var(--border-soft) !important;
  border-top: none !important;
  vertical-align: middle !important;
  background: transparent !important;
  color: var(--text-primary) !important;
}
.svc-section-body .table-striped > tbody > tr:nth-child(odd) > td {
  background: rgba(255,255,255,0.02) !important;
}
.svc-section-body .table-hover > tbody > tr:hover > td {
  background: var(--bg-card-hover) !important;
}
.svc-section-body .table-bordered td,
.svc-section-body .table-bordered th {
  border: 1px solid var(--border-soft) !important;
}
.svc-section-body .table-responsive {
  overflow-x: auto !important;
  border: none !important;
}

/* ── Alert ── */
.svc-section-body .alert {
  padding: var(--space-3) var(--space-4) !important;
  border-radius: var(--radius-md) !important;
  font-size: var(--text-sm) !important;
  border: 1px solid transparent !important;
  margin-bottom: var(--space-3) !important;
  background-clip: padding-box !important;
}
.svc-section-body .alert-success {
  background: rgba(16,185,129,0.1) !important;
  border-color: rgba(16,185,129,0.3) !important;
  color: #6ee7b7 !important;
}
.svc-section-body .alert-warning {
  background: rgba(245,158,11,0.1) !important;
  border-color: rgba(245,158,11,0.3) !important;
  color: #fcd34d !important;
}
.svc-section-body .alert-danger, .svc-section-body .alert-error {
  background: rgba(239,68,68,0.1) !important;
  border-color: rgba(239,68,68,0.3) !important;
  color: #fca5a5 !important;
}
.svc-section-body .alert-info {
  background: rgba(6,182,212,0.1) !important;
  border-color: rgba(6,182,212,0.3) !important;
  color: #67e8f9 !important;
}

/* ── Labels & Badges ── */
.svc-section-body .label,
.svc-section-body .badge {
  display: inline-flex !important;
  align-items: center !important;
  padding: 2px 8px !important;
  border-radius: 20px !important;
  font-size: 11px !important;
  font-weight: var(--font-bold) !important;
  text-shadow: none !important;
}
.svc-section-body .label-default,.svc-section-body .badge-default {
  background: var(--bg-card-hover) !important; color: var(--text-secondary) !important;
}
.svc-section-body .label-primary,.svc-section-body .badge-primary {
  background: rgba(37,99,235,0.2) !important; color: var(--brand-blue) !important;
}
.svc-section-body .label-success,.svc-section-body .badge-success {
  background: rgba(16,185,129,0.15) !important; color: #6ee7b7 !important;
}
.svc-section-body .label-warning,.svc-section-body .badge-warning {
  background: rgba(245,158,11,0.15) !important; color: #fcd34d !important;
}
.svc-section-body .label-danger,.svc-section-body .badge-danger {
  background: rgba(239,68,68,0.12) !important; color: #fca5a5 !important;
}
.svc-section-body .label-info,.svc-section-body .badge-info {
  background: rgba(6,182,212,0.15) !important; color: var(--brand-cyan) !important;
}

/* ── Progress ── */
.svc-section-body .progress {
  height: 8px !important;
  background: rgba(255,255,255,0.06) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}
.svc-section-body .progress-bar {
  height: 100% !important;
  background: linear-gradient(90deg,var(--brand-blue),var(--brand-cyan)) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}
.svc-section-body .progress-bar-success { background: var(--success) !important; }
.svc-section-body .progress-bar-warning { background: var(--warning) !important; }
.svc-section-body .progress-bar-danger  { background: var(--danger) !important; }

/* ── Nav Tabs ── */
.svc-section-body .nav-tabs {
  display: flex !important; gap: 4px !important;
  border-bottom: 1px solid var(--border-medium) !important;
  margin-bottom: var(--space-4) !important;
  list-style: none !important; padding: 0 !important;
  background: transparent !important;
}
.svc-section-body .nav-tabs > li > a,
.svc-section-body .nav-tabs .nav-link {
  display: block !important;
  padding: 8px var(--space-4) !important;
  font-size: var(--text-sm) !important;
  font-weight: var(--font-semibold) !important;
  color: var(--text-secondary) !important;
  text-decoration: none !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -1px !important;
  background: transparent !important;
  border-radius: 0 !important;
}
.svc-section-body .nav-tabs > li.active > a,
.svc-section-body .nav-tabs .nav-link.active {
  color: var(--brand-cyan) !important;
  border-bottom-color: var(--brand-cyan) !important;
  background: transparent !important;
}
.svc-section-body .nav-tabs > li > a:hover {
  color: var(--text-primary) !important;
  background: rgba(255,255,255,0.04) !important;
}
.svc-section-body .tab-content > .tab-pane { display: none !important; }
.svc-section-body .tab-content > .active   { display: block !important; }

/* ── Misc ── */
.svc-section-body .text-muted   { color: var(--text-muted) !important; }
.svc-section-body .text-primary { color: var(--brand-blue) !important; }
.svc-section-body .text-success { color: var(--success) !important; }
.svc-section-body .text-warning { color: var(--warning) !important; }
.svc-section-body .text-danger  { color: var(--danger) !important; }
.svc-section-body .text-info    { color: var(--brand-cyan) !important; }
.svc-section-body .well {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid var(--border-soft) !important;
  border-radius: var(--radius-md) !important;
  padding: var(--space-4) !important;
  box-shadow: none !important;
}
.svc-section-body h1,.svc-section-body h2,
.svc-section-body h3,.svc-section-body h4,
.svc-section-body h5,.svc-section-body h6 {
  color: var(--text-primary) !important;
  margin-top: 0 !important;
  font-family: var(--font-main) !important;
}
.svc-section-body a { color: var(--brand-cyan) !important; }
.svc-section-body a:hover { color: var(--brand-blue) !important; }
.svc-section-body hr {
  border-color: var(--border-soft) !important;
  margin: var(--space-4) 0 !important;
}
.svc-section-body p { color: var(--text-secondary) !important; margin-bottom: var(--space-3) !important; }
.svc-section-body small { color: var(--text-muted) !important; }
.svc-section-body .glyphicon { display: none !important; }
.svc-section-body .mb-0 { margin-bottom: 0 !important; }
.svc-section-body .mb-1 { margin-bottom: var(--space-1) !important; }
.svc-section-body .mb-2 { margin-bottom: var(--space-2) !important; }
.svc-section-body .mb-3 { margin-bottom: var(--space-3) !important; }
.svc-section-body .mb-4 { margin-bottom: var(--space-4) !important; }
.svc-section-body .mt-3 { margin-top: var(--space-3) !important; }
.svc-section-body .mt-4 { margin-top: var(--space-4) !important; }
.svc-section-body .p-3  { padding: var(--space-3) !important; }

/* ══════════════════════════════════════════
   STORE / STANDARD_CART CONTENT AREA
   (#order-standard_cart — product listing,
    domain search, order config pages)
   ══════════════════════════════════════════ */

#order-standard_cart {
  width: 100%;
  font-family: var(--font-main);
  color: var(--text-primary);
}

/* ── Outer layout: sidebar (RTL-right) + body (RTL-left) ── */
#order-standard_cart > .row {
  display: flex;
  min-height: 420px;
}

/* ── Category Sidebar ── */
#order-standard_cart .cart-sidebar {
  width: 240px;
  flex-shrink: 0;
  border-left: 1px solid var(--border-soft);
  padding: var(--space-5) var(--space-3);
}

/* ── Main Body ── */
#order-standard_cart .cart-body {
  flex: 1;
  min-width: 0;
  padding: var(--space-6) var(--space-5);
}

@media (max-width: 768px) {
  #order-standard_cart > .row { flex-direction: column; }
  #order-standard_cart .cart-sidebar {
    width: 100%;
    border-left: none;
    border-bottom: 1px solid var(--border-soft);
    padding: var(--space-4);
  }
}

/* ── Sidebar Panels (glass) ── */
#order-standard_cart .cart-sidebar .panel,
#order-standard_cart .cart-sidebar .card {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  overflow: hidden;
  margin-bottom: var(--space-3);
  backdrop-filter: var(--glass-blur-sm);
  -webkit-backdrop-filter: var(--glass-blur-sm);
  animation: fadeInRight 0.4s ease both;
}
#order-standard_cart .cart-sidebar .panel-heading,
#order-standard_cart .cart-sidebar .card-header {
  padding: var(--space-3) var(--space-4);
  background: rgba(255,255,255,0.03);
  border-bottom: 1px solid var(--border-soft);
}
#order-standard_cart .cart-sidebar .panel-title {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#order-standard_cart .cart-sidebar .panel-title .fa-chevron-up { font-size: 10px; opacity: 0.5; }

/* Sidebar nav list */
#order-standard_cart .cart-sidebar .list-group {
  list-style: none;
  padding: var(--space-2) 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
#order-standard_cart .cart-sidebar .list-group-item,
#order-standard_cart .cart-sidebar .list-group-item-action {
  display: block;
  padding: 8px var(--space-3);
  margin: 0 var(--space-2);
  color: var(--text-secondary);
  text-decoration: none;
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  border: none;
  border-radius: var(--radius-sm);
  background: transparent;
  cursor: pointer;
  transition: color var(--transition-fast), background var(--transition-fast);
}
#order-standard_cart .cart-sidebar .list-group-item:hover {
  background: var(--bg-card-hover);
  color: var(--text-primary);
}
#order-standard_cart .cart-sidebar .list-group-item.active {
  background: rgba(37,99,235,0.12);
  color: var(--brand-cyan);
  font-weight: var(--font-semibold);
}

/* ── Collapsed sidebar (mobile-only select) ── */
#order-standard_cart .sidebar-collapsed { display: none; }
@media (max-width: 768px) {
  #order-standard_cart .sidebar-collapsed { display: block; margin-bottom: var(--space-4); }
  #order-standard_cart .sidebar-collapsed .panel,
  #order-standard_cart .sidebar-collapsed .card {
    background: var(--bg-card);
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-md);
    padding: var(--space-2) var(--space-3);
  }
  #order-standard_cart .sidebar-collapsed select.form-control {
    width: 100%;
    padding: 8px var(--space-3);
    background: var(--bg-card);
    border: 1px solid var(--border-medium);
    border-radius: var(--radius-md);
    color: var(--text-primary);
    font-family: var(--font-main);
    font-size: var(--text-sm);
    outline: none;
    box-sizing: border-box;
  }
}

/* ── Section Header ── */
#order-standard_cart .header-lined {
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--border-soft);
  animation: fadeInUp 0.4s ease both;
}
#order-standard_cart .header-lined h1,
#order-standard_cart .header-lined .font-size-36 {
  font-size: var(--text-2xl) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  margin: 0 0 var(--space-2) 0 !important;
  font-family: var(--font-main) !important;
  line-height: 1.3 !important;
}
#order-standard_cart .header-lined p {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin: 0;
}

/* ── Alerts ── */
#order-standard_cart .alert {
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  margin-bottom: var(--space-4);
  border: 1px solid transparent;
}
#order-standard_cart .alert-danger {
  background: rgba(239,68,68,0.1);
  border-color: rgba(239,68,68,0.25);
  color: #fca5a5;
}
#order-standard_cart .alert-info {
  background: rgba(6,182,212,0.1);
  border-color: rgba(6,182,212,0.25);
  color: #67e8f9;
}

/* ── Product Grid (scoped to .products to avoid outer .row collision) ── */
#order-standard_cart .products .row,
#order-standard_cart .products .row-eq-height {
  display: flex;
  flex-wrap: wrap;
  margin: -10px;
}
#order-standard_cart .products [class*="col-"] {
  padding: 10px;
  box-sizing: border-box;
}
#order-standard_cart .products .col-md-6 { flex: 0 0 50%;     max-width: 50%; }
#order-standard_cart .products .col-md-4 { flex: 0 0 33.333%; max-width: 33.333%; }
#order-standard_cart .products .col-md-3 { flex: 0 0 25%;     max-width: 25%; }
#order-standard_cart .products .col-md-12{ flex: 0 0 100%;    max-width: 100%; }
@media (max-width: 768px) {
  #order-standard_cart .products .col-md-6,
  #order-standard_cart .products .col-md-4 { flex: 0 0 100%; max-width: 100%; }
}

/* ── Product Card (glassmorphism) ── */
#order-standard_cart .product {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  display: flex;
  flex-direction: column;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  animation: fadeInUp 0.45s cubic-bezier(0.22, 1, 0.36, 1) both;
  transition: border-color var(--transition-normal),
              background var(--transition-normal),
              transform var(--transition-normal),
              box-shadow var(--transition-normal);
}
/* Animated accent bar on top */
#order-standard_cart .product::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--brand-cyan), var(--brand-blue), transparent);
  opacity: 0;
  transition: opacity var(--transition-normal);
}
#order-standard_cart .product:hover {
  border-color: var(--border-medium);
  background: var(--bg-card-hover);
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.28);
}
#order-standard_cart .product:hover::before { opacity: 1; }

/* Staggered entry delay (per-pair within each .row) */
#order-standard_cart .products .col-md-6:nth-child(1) .product { animation-delay: 0.05s; }
#order-standard_cart .products .col-md-6:nth-child(2) .product { animation-delay: 0.12s; }

/* ── Product header (name + stock qty) ── */
#order-standard_cart .product > header {
  padding: var(--space-5) var(--space-5) 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-2);
}
#order-standard_cart .product > header span[id$="-name"] {
  font-size: var(--text-lg);
  font-weight: var(--font-bold);
  color: var(--text-primary);
  font-family: var(--font-main);
  line-height: 1.3;
}
#order-standard_cart .product .qty {
  font-size: var(--text-xs);
  color: var(--text-muted);
  background: var(--bg-card-hover);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-full);
  padding: 2px 8px;
  flex-shrink: 0;
}

/* ── Product description & feature list ── */
#order-standard_cart .product .product-desc {
  padding: var(--space-3) var(--space-5);
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
#order-standard_cart .product .product-desc p {
  font-size: var(--text-sm);
  color: var(--text-secondary);
  line-height: 1.7;
  margin: 0;
}
#order-standard_cart .product .product-desc ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
#order-standard_cart .product .product-desc li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--text-secondary);
  padding: 3px 0;
  line-height: 1.5;
}
#order-standard_cart .product .product-desc li::before {
  content: '✓';
  color: var(--brand-cyan);
  font-weight: var(--font-bold);
  flex-shrink: 0;
}
#order-standard_cart .product .product-desc .feature-value {
  color: var(--brand-cyan);
  font-weight: var(--font-semibold);
  margin-left: var(--space-1);
}

/* ── Product footer (price + CTA) ── */
#order-standard_cart .product > footer {
  padding: var(--space-4) var(--space-5) var(--space-5);
  border-top: 1px solid var(--border-soft);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
#order-standard_cart .product .product-pricing {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
#order-standard_cart .product .price {
  font-size: var(--text-2xl);
  font-weight: var(--font-extrabold);
  color: var(--text-primary);
  line-height: 1.1;
}
#order-standard_cart .product > footer br { display: none; }
#order-standard_cart .product > footer small,
#order-standard_cart .product .product-pricing small {
  font-size: var(--text-xs);
  color: var(--text-muted);
}

/* ── CTA Button ── */
#order-standard_cart .btn-order-now,
#order-standard_cart .btn-success.btn-sm {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100% !important;
  padding: 11px var(--space-4) !important;
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan)) !important;
  border: none !important;
  border-radius: var(--radius-md) !important;
  color: #fff !important;
  font-size: var(--text-sm) !important;
  font-weight: var(--font-semibold) !important;
  font-family: var(--font-main) !important;
  cursor: pointer;
  text-decoration: none !important;
  transition: opacity 0.2s, transform 0.2s, box-shadow 0.2s;
  box-shadow: 0 4px 14px rgba(37,99,235,0.3);
  white-space: nowrap;
}
#order-standard_cart .btn-order-now:hover,
#order-standard_cart .btn-success.btn-sm:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(37,99,235,0.4);
  color: #fff !important;
}

/* ── Panel / Card (generic, e.g. domain search) ── */
#order-standard_cart .panel,
#order-standard_cart .panel-default {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
#order-standard_cart .panel-heading,
#order-standard_cart .card-header {
  background: rgba(255,255,255,0.04);
  border-bottom: 1px solid var(--border-soft);
  padding: var(--space-3) var(--space-4);
  color: var(--text-muted);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
#order-standard_cart .panel-body,
#order-standard_cart .card-body { padding: var(--space-4); }

/* ── Typography ── */
#order-standard_cart h1, #order-standard_cart h2,
#order-standard_cart h3, #order-standard_cart h4 {
  color: var(--text-primary);
  font-family: var(--font-main);
}
#order-standard_cart a { color: var(--brand-cyan); text-decoration: none; }
#order-standard_cart a:hover { color: var(--brand-blue); }
#order-standard_cart .text-muted,
#order-standard_cart small { color: var(--text-muted) !important; }
#order-standard_cart p { color: var(--text-secondary); margin: 0 0 var(--space-3); }
#order-standard_cart .clearfix::after { content: ''; display: table; clear: both; }
#order-standard_cart .hidden { display: none !important; }

/* ══════════════════════════════════════════
   STORE PRODUCT LISTING — sibhost custom
   (sibhost_cart/products.tpl override)
   Uses .sib-* classes — no all.min.css conflict
   ══════════════════════════════════════════ */

/* Container reset */
#order-standard_cart:has(.sib-product-grid),
#order-standard_cart:has(.sib-store-layout),
#order-standard_cart:has(.sib-store-sidebar) {
  padding: 0;
}

/* ── Store Layout (sidebar + main) ── */
.sib-store-layout {
  display: grid;
  grid-template-columns: 1fr 220px;
  gap: var(--space-5);
  align-items: start;
}
.sib-store-sidebar { order: 2; }
.sib-store-main, .sib-product-grid { order: 1; }
.sib-store-main { min-width: 0; }

/* ── Store Sidebar ── */
.sib-store-sidebar {
  position: sticky;
  top: 80px;
}
.sib-store-sidebar-card {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.sib-store-sidebar-title {
  padding: var(--space-3) var(--space-4);
  font-size: var(--text-xs);
  font-weight: var(--font-bold);
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .04em;
  border-bottom: 1px solid var(--border-soft);
  display: flex;
  align-items: center;
  gap: 6px;
}
.sib-store-sidebar-nav {
  display: flex;
  flex-direction: column;
  padding: var(--space-2);
}
.sib-store-sidebar-item {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: 10px var(--space-3);
  border-radius: var(--radius-md);
  color: var(--text-secondary);
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  text-decoration: none;
  transition: all var(--transition-fast);
}
.sib-store-sidebar-item:hover {
  background: var(--bg-surface);
  color: var(--text-primary);
}
.sib-store-sidebar-item.active {
  background: rgba(6,182,212,0.08);
  color: var(--brand-cyan);
  font-weight: var(--font-semibold);
}
.sib-store-sidebar-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: var(--radius-sm);
  background: var(--bg-surface);
  font-size: 13px;
  flex-shrink: 0;
  color: var(--text-muted);
  transition: all var(--transition-fast);
}
.sib-store-sidebar-item.active .sib-store-sidebar-icon {
  background: rgba(6,182,212,0.12);
  color: var(--brand-cyan);
}
.sib-store-sidebar-item:hover .sib-store-sidebar-icon {
  background: var(--bg-card-hover);
  color: var(--text-primary);
}

/* ── Purchase Advisor ── */
.sib-advisor-card {
  background: linear-gradient(135deg, rgba(99,102,241,.06), rgba(139,92,246,.04));
  border: 1px solid rgba(99,102,241,.2);
  border-radius: var(--radius-lg);
  padding: var(--space-4);
  margin-bottom: var(--space-3);
}
.sib-advisor-header {
  font-size: var(--text-sm); font-weight: var(--font-bold);
  color: var(--text-primary); display: flex; align-items: center; gap: 6px;
  margin-bottom: var(--space-2);
}
.sib-advisor-desc {
  font-size: var(--text-xs); color: var(--text-secondary); line-height: 1.7;
  margin-bottom: var(--space-3);
}
.sib-advisor-input {
  width: 100%; padding: 10px; border-radius: var(--radius-md);
  border: 1px solid var(--border-soft); background: var(--bg-card);
  color: var(--text-primary); font-family: var(--font-main);
  font-size: var(--text-xs); resize: vertical; min-height: 50px;
  transition: border-color var(--transition-fast);
}
.sib-advisor-input:focus { border-color: rgba(99,102,241,.5); outline: none; }
.sib-advisor-btn {
  width: 100%; margin-top: var(--space-2); padding: 8px;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  color: #fff; border: none; border-radius: var(--radius-md);
  font-family: var(--font-main); font-size: var(--text-xs);
  font-weight: var(--font-semibold); cursor: pointer;
  display: flex; align-items: center; justify-content: center; gap: 6px;
  transition: opacity var(--transition-fast);
}
.sib-advisor-btn:hover { opacity: .9; }
.sib-advisor-result { margin-top: var(--space-3); }
.sib-advisor-loading { text-align: center; font-size: 20px; padding: var(--space-2); }
.sib-advisor-reply {
  font-size: var(--text-xs); color: var(--text-secondary); line-height: 1.8;
  padding: var(--space-3); background: var(--bg-card);
  border-radius: var(--radius-md); border: 1px solid var(--border-soft);
}
.sib-advisor-error {
  font-size: var(--text-xs); color: var(--danger); text-align: center;
  padding: var(--space-2);
}
.sib-advisor-products { margin-top: var(--space-2); display: flex; flex-direction: column; gap: var(--space-2); }
.sib-advisor-product {
  display: block; padding: 10px; background: var(--bg-card-hover);
  border: 1px solid var(--border-soft); border-radius: var(--radius-md);
  text-decoration: none; transition: all var(--transition-fast);
}
.sib-advisor-product:hover { border-color: rgba(99,102,241,.4); transform: translateY(-1px); }
.sib-advisor-product-group { display: block; font-size: 10px; color: var(--text-muted); }
.sib-advisor-product-name { font-size: var(--text-xs); font-weight: var(--font-bold); color: var(--text-primary); }

@media (max-width: 768px) {
  .sib-store-layout {
    grid-template-columns: 1fr;
  }
  .sib-store-sidebar {
    position: static;
  }
  .sib-store-sidebar-nav {
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--space-1);
  }
  .sib-store-sidebar-item {
    padding: 6px var(--space-3);
    font-size: var(--text-xs);
  }
  .sib-store-sidebar-icon {
    width: 22px; height: 22px; font-size: 11px;
  }
}

/* ── Page Header ── */
.sib-store-header {
  display: flex;
  align-items: center;
  padding: var(--space-6) 0 var(--space-5);
  border-bottom: 1px solid var(--border-soft);
  margin-bottom: var(--space-6);
}
.sib-store-title-wrap {
  display: flex;
  align-items: center;
  gap: var(--space-4);
}
.sib-store-icon {
  font-size: 28px;
  width: 54px; height: 54px;
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, rgba(37,99,235,0.15), rgba(6,182,212,0.15));
  border: 1px solid rgba(6,182,212,0.20);
  border-radius: var(--radius-xl);
  flex-shrink: 0;
  color: var(--brand-cyan-light);
}
.sib-store-title {
  font-size: var(--text-2xl) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  margin: 0 0 var(--space-1) !important;
  font-family: var(--font-main) !important;
  line-height: 1.2 !important;
}
.sib-store-tagline {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin: 0;
}

/* ── Alert ── */
.sib-store-alert {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  margin-bottom: var(--space-5);
  border: 1px solid transparent;
  font-family: var(--font-main);
}
.sib-alert {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  margin: var(--space-5) 0;
  border: 1px solid transparent;
  font-family: var(--font-main);
}
.sib-alert-danger {
  background: rgba(239,68,68,0.10); border-color: rgba(239,68,68,0.25); color: #fca5a5;
}
.sib-alert-info {
  background: rgba(6,182,212,0.10); border-color: rgba(6,182,212,0.25); color: #67e8f9;
}

/* ── Product Grid ── */
.sib-product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-5);
}
@media (max-width: 1100px) { .sib-product-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { .sib-product-grid { grid-template-columns: 1fr; } }

/* ── Product Card ── */
.sib-product-card {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
  transition: border-color var(--transition-normal),
              background var(--transition-normal),
              transform var(--transition-normal),
              box-shadow var(--transition-normal);
}
.sib-product-card:hover {
  border-color: var(--border-medium);
  background: var(--bg-card-hover);
  transform: translateY(-4px);
  box-shadow: 0 20px 48px rgba(0,0,0,0.30);
}
/* Top gradient accent bar */
.sib-card-accent {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--brand-cyan), var(--brand-blue), transparent);
  opacity: 0;
  transition: opacity var(--transition-normal);
}
.sib-product-card:hover .sib-card-accent { opacity: 1; }

/* Card header */
.sib-card-head {
  padding: var(--space-5) var(--space-5) var(--space-3);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-2);
}
.sib-card-name {
  font-size: var(--text-md) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  font-family: var(--font-main) !important;
  margin: 0 !important;
  line-height: 1.3;
}
.sib-card-qty {
  font-size: var(--text-xs);
  color: var(--text-muted);
  background: var(--bg-card-hover);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-full);
  padding: 2px 8px;
  flex-shrink: 0;
}

/* Card body — description + features */
.sib-card-body {
  padding: 0 var(--space-5) var(--space-3);
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.sib-card-desc {
  font-size: var(--text-sm);
  color: var(--text-secondary);
  line-height: 1.7;
  margin: 0;
}
.sib-card-features {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.sib-card-features li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--text-secondary);
  line-height: 1.5;
}
.sib-card-features li::before {
  content: '✓';
  color: var(--brand-cyan);
  font-weight: var(--font-bold);
  flex-shrink: 0;
}
.sib-feat-val {
  color: var(--brand-cyan);
  font-weight: var(--font-semibold);
  margin-left: var(--space-1);
}

/* Card footer — price + CTA */
.sib-card-foot {
  padding: var(--space-4) var(--space-5) var(--space-5);
  border-top: 1px solid var(--border-soft);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin-top: auto;
}
.sib-price-block { display: flex; flex-direction: column; gap: 3px; }
.sib-price-label,
.sib-price-from  {
  font-size: var(--text-xs);
  color: var(--text-muted);
}
.sib-price {
  font-size: var(--text-2xl);
  font-weight: var(--font-extrabold);
  color: var(--text-primary);
  line-height: 1.1;
}
.sib-price-cycle {
  font-size: var(--text-xs);
  color: var(--text-muted);
}
.sib-price-setup {
  font-size: var(--text-xs);
  color: var(--text-muted);
}

/* Order CTA button */
.sib-btn-order {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  padding: 11px var(--space-4);
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  border: none;
  border-radius: var(--radius-md);
  color: #fff !important;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  cursor: pointer;
  text-decoration: none !important;
  transition: opacity 0.2s, transform 0.2s, box-shadow 0.2s;
  box-shadow: 0 4px 14px rgba(37,99,235,0.28);
  white-space: nowrap;
  box-sizing: border-box;
}
.sib-btn-order:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(37,99,235,0.40);
  color: #fff !important;
}

/* Empty state */
.sib-store-empty {
  text-align: center;
  padding: var(--space-10) var(--space-4);
  color: var(--text-muted);
  font-family: var(--font-main);
}
.sib-empty-icon {
  width: 64px; height: 64px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: var(--radius-full);
  font-size: 28px;
  margin-bottom: var(--space-4);
  background: rgba(6,182,212,0.10);
  color: var(--brand-cyan-light);
}
.sib-store-empty p { font-size: var(--text-sm); margin: 0; }

/* ══════════════════════════════════════════
   CONFIGURE PRODUCT — sibhost custom
   (sibhost_cart/configureproduct.tpl)
   ══════════════════════════════════════════ */

/* Step trail — cart progress indicator */
.sib-step-trail {
  display: flex;
  align-items: center;
  padding: var(--space-3) 0 var(--space-5);
  font-family: var(--font-main);
  flex-wrap: wrap;
  row-gap: var(--space-3);
}
.sib-step {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  text-decoration: none !important;
  white-space: nowrap;
  transition: opacity 0.15s;
}
.sib-step-num {
  width: 26px; height: 26px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: var(--font-bold);
  flex-shrink: 0;
  transition: box-shadow 0.2s, background 0.2s;
}
.sib-step-label { font-size: var(--text-sm); }
/* Done */
.sib-step-done .sib-step-num {
  background: rgba(6,182,212,0.12);
  color: var(--brand-cyan);
  border: 1.5px solid rgba(6,182,212,0.5);
}
.sib-step-done .sib-step-label { color: var(--text-secondary); }
.sib-step-done:hover .sib-step-num { background: rgba(6,182,212,0.22); }
.sib-step-done:hover .sib-step-label { color: var(--brand-cyan); }
/* Active */
.sib-step-active .sib-step-num {
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  color: #fff;
  box-shadow: 0 0 0 4px rgba(6,182,212,0.18);
}
.sib-step-active .sib-step-label { color: var(--text-primary); font-weight: var(--font-semibold); }
/* Pending */
.sib-step-pending .sib-step-num {
  background: transparent;
  border: 1.5px solid var(--border-soft);
  color: var(--text-muted);
}
.sib-step-pending .sib-step-label { color: var(--text-muted); }
/* Connector lines */
.sib-step-line {
  flex: 0 0 28px;
  height: 1.5px;
  background: rgba(6,182,212,0.45);
  margin: 0 var(--space-2);
}
.sib-step-line-pending { background: var(--border-soft); }
@media (max-width: 560px) {
  .sib-step-label { display: none; }
  .sib-step-line { flex: 0 0 14px; margin: 0 4px; }
}

/* Legacy back navigation (kept for compat) */
.sib-cp-nav {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) 0 var(--space-5);
  font-family: var(--font-main);
}
.sib-cp-back {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--text-muted);
  font-size: var(--text-sm);
  text-decoration: none;
  cursor: pointer;
  transition: color var(--transition-fast);
}
.sib-cp-back:hover { color: var(--brand-cyan); }
.sib-cp-sep { color: var(--text-muted); font-size: var(--text-xs); }
.sib-cp-crumb { color: var(--text-secondary); font-size: var(--text-sm); }

/* Product header card */
.sib-cp-product-card {
  display: flex;
  align-items: center;
  gap: var(--space-5);
  padding: var(--space-5) var(--space-6);
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  margin-bottom: var(--space-5);
  position: relative;
  overflow: hidden;
}
.sib-cp-product-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--brand-cyan), var(--brand-blue), transparent);
}
.sib-cp-product-icon {
  font-size: 32px;
  width: 60px; height: 60px;
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, rgba(37,99,235,0.15), rgba(6,182,212,0.15));
  border: 1px solid rgba(6,182,212,0.20);
  border-radius: var(--radius-xl);
  flex-shrink: 0;
  color: var(--brand-cyan-light);
}
.sib-cp-product-info { flex: 1; min-width: 0; }
.sib-cp-product-name {
  font-size: var(--text-xl) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  margin: 0 0 var(--space-1) !important;
  font-family: var(--font-main) !important;
}
.sib-cp-product-desc {
  font-size: var(--text-sm);
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.6;
}
.sib-cp-step-badge {
  flex-shrink: 0;
}
.sib-cp-step-badge span {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border-radius: var(--radius-full);
  background: rgba(6,182,212,0.10);
  border: 1px solid rgba(6,182,212,0.25);
  color: var(--brand-cyan);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
}

/* Errors */
.sib-cp-errors {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}
.sib-cp-errors.w-hidden,
.sib-cp-errors.hidden { display: none !important; }
.sib-cp-errors ul { margin: var(--space-1) 0 0 var(--space-4); padding: 0; }
.sib-cp-errors li { margin-bottom: 2px; }

/* Two-column layout */
.sib-cp-layout {
  display: flex;
  gap: var(--space-5);
  align-items: flex-start;
}
.sib-cp-main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.sib-cp-summary {
  width: 300px;
  flex-shrink: 0;
  position: sticky;
  top: calc(var(--topbar-height, 64px) + 16px);
}
@media (max-width: 900px) {
  .sib-cp-layout { flex-direction: column; }
  .sib-cp-summary { width: 100%; position: static; }
}

/* Section card */
.sib-section-card {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  overflow: hidden;
  backdrop-filter: var(--glass-blur-sm);
  -webkit-backdrop-filter: var(--glass-blur-sm);
}
.sib-section-head {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-4);
  background: rgba(255,255,255,0.03);
  border-bottom: 1px solid var(--border-soft);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  font-family: var(--font-main);
}
.sib-section-head i,
.sib-section-head .sb-icon { color: var(--brand-cyan); font-size: 13px; }
.sib-section-hint-inline {
  margin-right: auto;
  font-size: var(--text-xs);
  font-weight: var(--font-regular);
  color: var(--text-muted);
  opacity: 0.75;
}
.sib-section-body { padding: var(--space-4); }
.sib-section-hint { font-size: var(--text-sm); color: var(--text-muted); margin: 0 0 var(--space-3); }

/* Select */
.sib-select {
  width: 100%;
  padding: 10px var(--space-3);
  background: var(--bg-card-hover);
  border: 1px solid var(--border-medium);
  border-radius: var(--radius-md);
  color: var(--text-primary);
  font-family: var(--font-main);
  font-size: var(--text-sm);
  outline: none;
  box-sizing: border-box;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%234A6A8A'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 12px center;
  transition: border-color var(--transition-fast);
}
.sib-select:focus { border-color: var(--brand-cyan); box-shadow: 0 0 0 3px rgba(6,182,212,0.1); }

/* ── Select/Option dark-light mode ─────────────────────────────
   option ها به rgba پاسخ نمی‌دهند — رنگ solid لازم است.
   color-scheme به مرورگر می‌گوید popup را با چه تم رندر کند.
   ─────────────────────────────────────────────────────────── */
[data-theme="dark"] .sib-select,
[data-theme="dark"] select {
  color-scheme: dark;
  background-color: #0A1628;
  color: #F0F6FF;
}
[data-theme="dark"] .sib-select option,
[data-theme="dark"] select option {
  background-color: #0A1628;
  color: #F0F6FF;
}
[data-theme="dark"] .sib-select option:checked,
[data-theme="dark"] select option:checked {
  background-color: #1e3a5f;
  color: #F0F6FF;
}

[data-theme="light"] .sib-select,
[data-theme="light"] select {
  color-scheme: light;
  background-color: #ffffff;
  color: #0F172A;
}
[data-theme="light"] .sib-select option,
[data-theme="light"] select option {
  background-color: #ffffff;
  color: #0F172A;
}
[data-theme="light"] .sib-select option:checked,
[data-theme="light"] select option:checked {
  background-color: #EFF6FF;
  color: #1D4ED8;
}

/* Input */
.sib-input {
  width: 100%;
  padding: 10px var(--space-3);
  background: var(--bg-card-hover);
  border: 1px solid var(--border-medium);
  border-radius: var(--radius-md);
  color: var(--text-primary);
  font-family: var(--font-main);
  font-size: var(--text-sm);
  outline: none;
  box-sizing: border-box;
  transition: border-color var(--transition-fast);
}
.sib-input:focus { border-color: var(--brand-cyan); box-shadow: 0 0 0 3px rgba(6,182,212,0.1); }
.sib-input-qty { width: 80px; text-align: center; }
.sib-qty-wrap { display: flex; align-items: center; gap: var(--space-3); }
.sib-qty-unit { font-size: var(--text-sm); color: var(--text-muted); }

/* Form layout */
.sib-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}
.sib-form-group-full { grid-column: 1 / -1; }
.sib-form-row { display: flex; gap: var(--space-4); }
.sib-form-group { display: flex; flex-direction: column; gap: var(--space-2); }
.sib-form-group label {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.sib-field-hint { font-size: var(--text-xs); color: var(--text-muted); }
@media (max-width: 640px) {
  .sib-form-grid { grid-template-columns: 1fr; }
  .sib-form-row  { flex-direction: column; }
}

/* Radio & Checkbox */
.sib-radio-group { display: flex; flex-direction: column; gap: var(--space-2); }
.sib-radio-item,
.sib-checkbox-item {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  cursor: pointer;
  font-size: var(--text-sm);
  color: var(--text-secondary);
  font-family: var(--font-main);
}
.sib-radio-item input,
.sib-checkbox-item input { accent-color: var(--brand-cyan); }
.sib-filter-text { display: flex; flex-direction: column; gap: 2px; }
.sib-filter-label { color: var(--text-primary); font-size: var(--text-sm); font-weight: var(--font-medium); line-height: 1.3; }
.sib-filter-hint { color: var(--text); font-size: var(--text-xs); line-height: 1.3; }

/* Metrics */
.sib-metrics-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: var(--space-3); }
.sib-metrics-list li { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; font-size: var(--text-sm); }
.sib-metric-name { font-weight: var(--font-semibold); color: var(--text-primary); }
.sib-metric-price { color: var(--brand-cyan); }
.sib-metric-note { font-size: var(--text-xs); color: var(--text-muted); }
.sib-btn-sm {
  padding: 4px 10px;
  background: rgba(6,182,212,0.1);
  border: 1px solid rgba(6,182,212,0.25);
  border-radius: var(--radius-sm);
  color: var(--brand-cyan);
  font-size: var(--text-xs);
  cursor: pointer;
  font-family: var(--font-main);
  transition: background var(--transition-fast);
}
.sib-btn-sm:hover { background: rgba(6,182,212,0.18); }

/* Addons */
.sib-addons-grid { display: flex; flex-direction: column; gap: var(--space-3); }
.sib-addon-card {
  display: flex;
  align-items: stretch;
  background: var(--bg-card-hover);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  overflow: hidden;
  cursor: pointer;
  transition: border-color var(--transition-fast);
}
.sib-addon-card:hover { border-color: var(--border-medium); }
.sib-addon-card.sib-addon-selected {
  border-color: rgba(6,182,212,0.40);
  background: rgba(6,182,212,0.06);
}
.sib-addon-check {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 var(--space-3);
  border-left: 1px solid var(--border-soft);
}
.sib-addon-input { accent-color: var(--brand-cyan); width: 16px; height: 16px; cursor: pointer; }
.sib-addon-body {
  flex: 1;
  padding: var(--space-3) var(--space-4);
  display: flex;
  flex-direction: column;
  gap: 3px;
  cursor: pointer;
}
.sib-addon-name { font-size: var(--text-sm); font-weight: var(--font-semibold); color: var(--text-primary); font-family: var(--font-main); }
.sib-addon-desc { font-size: var(--text-xs); color: var(--text-secondary); }
.sib-addon-price { font-size: var(--text-xs); color: var(--brand-cyan); font-weight: var(--font-semibold); margin-top: 2px; }

/* Help bar */
.sib-help-bar {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  background: rgba(245,158,11,0.06);
  border: 1px solid rgba(245,158,11,0.18);
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  color: var(--text-muted);
  font-family: var(--font-main);
}
.sib-help-bar i { color: var(--warning); flex-shrink: 0; }
.sib-help-bar a { color: var(--brand-cyan); text-decoration: none; }
.sib-help-bar a:hover { text-decoration: underline; }

/* Order summary card */
.sib-summary-card {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  overflow: hidden;
  position: relative;
}
.sib-summary-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--brand-blue), var(--brand-cyan), transparent);
}
.sib-summary-header {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
}
.sib-summary-header i { color: var(--brand-cyan); }
.sib-summary-header h2 {
  font-size: var(--text-md) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  margin: 0 !important;
  font-family: var(--font-main) !important;
}
.sib-summary-loader {
  text-align: center;
  padding: var(--space-4);
  color: var(--brand-cyan);
  font-size: 20px;
}
.sib-summary-body {
  padding: var(--space-4) var(--space-5);
  min-height: 60px;
  font-family: var(--font-main);
  font-size: var(--text-sm);
  color: var(--text-secondary);
}
.sib-summary-footer {
  padding: var(--space-4) var(--space-5) var(--space-5);
  border-top: 1px solid var(--border-soft);
}

/* Continue button */
.sib-btn-continue {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 13px var(--space-5);
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  border: none;
  border-radius: var(--radius-md);
  color: #fff !important;
  font-size: var(--text-sm);
  font-weight: var(--font-bold);
  font-family: var(--font-main);
  cursor: pointer;
  transition: opacity 0.2s, transform 0.2s, box-shadow 0.2s;
  box-shadow: 0 4px 14px rgba(37,99,235,0.30);
}
.sib-btn-continue:hover {
  opacity: 0.88;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(37,99,235,0.42);
}
.sib-btn-spinner.w-hidden { display: none; }

/* ── SSO Button in Sidebar ── */
.sso-btn {
  display: flex; align-items: center; gap: var(--space-3);
  padding: var(--space-3) var(--space-3);
  background: linear-gradient(135deg,rgba(37,99,235,0.12),rgba(6,182,212,0.12));
  border: 1px solid rgba(6,182,212,0.25);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-fast);
  text-decoration: none;
  color: var(--text-primary);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  width: 100%;
  text-align: right;
  font-family: var(--font-main);
  margin-bottom: var(--space-2);
}
.sso-btn:hover {
  background: linear-gradient(135deg,rgba(37,99,235,0.22),rgba(6,182,212,0.22));
  border-color: var(--brand-cyan);
  color: var(--text-primary);
  transform: translateY(-1px);
}
.sso-btn-icon {
  width: 32px; height: 32px; border-radius: var(--radius-md);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px; flex-shrink: 0;
  background: rgba(6,182,212,0.15);
}
.sso-btn-label { flex: 1; }
.sso-btn-label span {
  display: block;
  font-size: var(--text-xs);
  color: var(--text-muted);
  font-weight: var(--font-regular);
  margin-top: 2px;
}

/* ══════════════════════════════════════════════════════════
   DOMAIN CHOOSER PAGE  (.sib-cpd-*)
   ══════════════════════════════════════════════════════════ */

.sib-cpd-header {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4) 0 var(--space-5);
}
.sib-cpd-icon {
  font-size: 44px;
  line-height: 1;
  color: var(--brand-cyan-light);
}
.sib-cpd-title {
  font-size: var(--text-2xl, 26px) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  margin: 0 0 4px !important;
  font-family: var(--font-main) !important;
}
.sib-cpd-sub {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin: 0;
}

/* Options list */
.sib-cpd-options {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  margin-bottom: var(--space-5);
}
.sib-domain-option {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  overflow: hidden;
  transition: border-color 0.2s;
}
.sib-domain-option.sib-option-selected {
  border-color: rgba(6,182,212,0.45);
  background: rgba(6,182,212,0.04);
}
.sib-domain-option-head {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5);
  cursor: pointer;
  user-select: none;
}
/* iCheck wraps and styles the radio input — no custom radio div needed */
.sib-domain-option-head .iradio_square-blue,
.sib-domain-option-head .iradio_square-blue * { flex-shrink: 0; }
.sib-domain-opt-icon {
  font-size: 18px;
  color: var(--brand-cyan);
  width: 20px;
  text-align: center;
}
.sib-domain-option-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.sib-domain-opt-label {
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-primary);
}
.sib-domain-opt-hint {
  font-size: var(--text-xs);
  color: var(--text-muted);
}

/* Input area inside option — hidden unless radio selected */
.sib-domain-input-wrap {
  display: none;
  padding: 0 var(--space-5) var(--space-4);
  border-top: 1px solid var(--border-soft);
}
/* .sib-domain-input-wrap show/hide is controlled by JS (inline style) to override WHMCS scripts.min.js */
.sib-domain-input-row {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
  padding-top: var(--space-3);
}
.sib-domain-field {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--bg-lifted);
  direction: ltr;
}
.sib-domain-www {
  padding: 0 10px;
  font-size: var(--text-sm);
  color: var(--text-muted);
  white-space: nowrap;
  border-left: 1px solid var(--border-soft);
  line-height: 42px;
}
.sib-input-domain {
  flex: 1;
  border: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 10px 10px !important;
}
.sib-select-tld {
  border: none !important;
  border-right: 1px solid var(--border-soft) !important;
  border-radius: 0 !important;
  background: transparent !important;
  width: auto !important;
  min-width: 80px;
  padding: 0 6px !important;
}
.sib-input-tld {
  border: none !important;
  border-left: 1px solid var(--border-soft) !important;
  border-radius: 0 !important;
  background: transparent !important;
  width: 90px !important;
  padding: 10px 8px !important;
}
.sib-select-grow { flex: 1; }
.sib-domain-field-sub .sib-input-domain { min-width: 120px; }
.sib-textarea-domain {
  flex: 1;
  min-height: 80px;
  resize: vertical;
}
.sib-domain-tld-filters {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  padding-top: var(--space-3);
  align-items: center;
}

/* Multiselect plugin buttons (TLD filter in advanced search) */
.sib-domain-tld-filters .btn-group { position: relative; }
.sib-domain-tld-filters .multiselect.btn {
  background: var(--bg-lifted) !important;
  border: 1px solid var(--border-soft) !important;
  border-radius: var(--radius-md) !important;
  color: var(--text-primary) !important;
  font-size: var(--text-xs) !important;
  padding: 6px 12px !important;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.sib-domain-tld-filters .multiselect.btn:hover { border-color: var(--brand-cyan) !important; }
.sib-domain-tld-filters .multiselect-container.dropdown-menu {
  background: var(--bg-surface) !important;
  border: 1px solid var(--border-soft) !important;
  border-radius: var(--radius-md);
  box-shadow: 0 8px 24px rgba(0,0,0,.35);
  padding: 6px 0;
  min-width: 200px;
  max-height: 240px;
  overflow-y: auto;
  position: absolute;
  top: 100%;
  right: 0;
  left: auto;
  z-index: 10000;
  display: none;
  list-style: none;
  margin: 4px 0 0;
}
.sib-domain-tld-filters .btn-group.open .multiselect-container { display: block; }
.sib-domain-tld-filters .multiselect-container li a {
  display: block;
  padding: 5px 14px;
  cursor: pointer;
  text-decoration: none;
  color: var(--text-primary) !important;
  background: transparent !important;
}
.sib-domain-tld-filters .multiselect-container li a:hover { background: var(--neutral-lifted) !important; }
.sib-domain-tld-filters .multiselect-container label {
  display: flex !important;
  align-items: center;
  gap: 8px;
  font-size: var(--text-xs);
  cursor: pointer;
  margin: 0;
  font-weight: normal;
  color: var(--text-primary) !important;
}
.sib-domain-tld-filters .multiselect-container li.disabled a { opacity: .4; pointer-events: none; }
.sib-domain-tld-filters .multiselect-item.filter {
  padding: 6px 8px;
  border-bottom: 1px solid var(--border-soft);
}
.sib-domain-tld-filters .multiselect-item.filter .multiselect-search {
  width: 100%;
  padding: 4px 8px;
  background: var(--bg-lifted) !important;
  border: 1px solid var(--border-soft) !important;
  border-radius: var(--radius-sm);
  color: var(--text-primary) !important;
  font-size: var(--text-xs);
}
.sib-domain-tld-filters .sib-checkbox-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--text-xs);
  color: var(--text-muted) !important;
  cursor: pointer;
  padding: 5px 0;
}

/* Action button inside domain option */
.sib-btn-domain-action {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  border: none;
  border-radius: var(--radius-md);
  color: #fff;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  cursor: pointer;
  white-space: nowrap;
  transition: opacity 0.2s, transform 0.2s;
  flex-shrink: 0;
}
.sib-btn-domain-action:hover { opacity: 0.88; transform: translateY(-1px); }

/* Free domain note */
.sib-cpd-freedomain {
  font-size: var(--text-sm);
  color: var(--text-muted);
  padding: var(--space-3) var(--space-4);
  background: rgba(6,182,212,0.06);
  border: 1px solid rgba(6,182,212,0.18);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-4);
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.sib-cpd-freedomain i { color: var(--brand-cyan); }

/* Search results area */
.sib-cpd-results {
  margin-top: var(--space-4);
}
.sib-cpd-primary-result {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  padding: var(--space-5);
  margin-bottom: var(--space-4);
}
.sib-cpd-result-heading {
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  margin-bottom: var(--space-3);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.sib-cpd-loader {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--text-muted);
  padding: var(--space-4) 0;
}
.sib-cpd-lookup-result { padding-top: var(--space-2); }
.sib-cpd-status {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-md);
  font-weight: var(--font-semibold);
  margin-bottom: var(--space-2);
}
.sib-cpd-available { color: var(--status-success, #10b981); }
.sib-cpd-unavailable { color: var(--status-error, #ef4444); }
.sib-cpd-hint {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin-bottom: var(--space-1);
}
.sib-cpd-price {
  margin-top: var(--space-3);
  font-size: var(--text-sm);
  color: var(--text-secondary);
}
.sib-cpd-price strong {
  font-size: var(--text-lg, 18px);
  color: var(--brand-cyan);
  margin-inline-start: var(--space-2);
}
.sib-cpd-error { color: var(--status-error, #ef4444); font-size: var(--text-sm); }
.sib-cpd-idn { margin-top: var(--space-3); }
.sib-cpd-contact {
  display: inline-flex;
  padding: 8px 16px;
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  cursor: pointer;
}

/* Spotlight TLDs */
.sib-cpd-spotlight {
  margin-bottom: var(--space-4);
}
.sib-cpd-spotlight-inner {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.sib-cpd-spotlight-item {
  flex: 1;
  min-width: 110px;
}
.sib-cpd-spotlight-item .spotlight-tld {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  padding: var(--space-3) var(--space-4);
  text-align: center;
  position: relative;
}
.sib-cpd-spotlight-badge {
  font-size: 10px;
  font-weight: var(--font-bold);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--brand-cyan);
  margin-bottom: 4px;
}
.sib-cpd-spotlight-tld {
  font-size: var(--text-md);
  font-weight: var(--font-bold);
  color: var(--text-primary);
  display: block;
}
.sib-cpd-spotlight-price {
  font-size: var(--text-sm);
  color: var(--brand-cyan);
  font-weight: var(--font-semibold);
  display: block;
  margin-top: 4px;
}
.sib-btn-tld-state {
  display: inline-block;
  padding: 5px 10px;
  border-radius: var(--radius-sm);
  font-size: var(--text-xs);
  border: 1px solid var(--border-soft);
  background: transparent;
  color: var(--text-muted);
  font-family: var(--font-main);
  cursor: default;
  margin-top: var(--space-2);
}
.sib-btn-tld-add {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 14px;
  border-radius: var(--radius-md);
  border: none;
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  color: #fff;
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  cursor: pointer;
  margin-top: var(--space-2);
}

/* Suggestions panel */
.sib-cpd-suggestions {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  overflow: hidden;
  margin-bottom: var(--space-4);
}
.sib-cpd-suggestions-head {
  padding: var(--space-4) var(--space-5);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-primary);
  border-bottom: 1px solid var(--border-soft);
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.sib-cpd-suggestions-head i { color: var(--brand-cyan); }
.sib-cpd-suggestions-loader {
  padding: var(--space-4) var(--space-5);
  color: var(--text-muted);
  font-size: var(--text-sm);
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.sib-cpd-suggestions-list { padding: 0; }
.sib-cpd-suggestion-row {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-5);
  border-bottom: 1px solid var(--border-muted, rgba(99,179,237,0.07));
}
.sib-cpd-suggestion-row:last-child { border-bottom: none; }
.sib-cpd-sug-name {
  font-weight: var(--font-semibold);
  color: var(--text-primary);
  font-size: var(--text-sm);
}
.sib-cpd-sug-ext {
  color: var(--brand-cyan);
  font-size: var(--text-sm);
}
.sib-cpd-sug-actions {
  margin-inline-start: auto;
  display: flex;
  align-items: center;
  gap: var(--space-2);
}
.sib-cpd-sug-price {
  font-size: var(--text-sm);
  color: var(--text-secondary);
}
.sib-cpd-sug-promo {
  font-size: var(--text-xs);
  color: var(--brand-cyan);
}
.sib-btn-add-domain {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 14px;
  border-radius: var(--radius-md);
  border: 1px solid rgba(37,99,235,0.35);
  background: rgba(37,99,235,0.10);
  color: var(--text-primary);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  cursor: pointer;
  transition: background 0.2s;
}
.sib-btn-add-domain:hover { background: rgba(37,99,235,0.20); }
.sib-cpd-more-row {
  padding: var(--space-3) var(--space-5);
  text-align: center;
  border-top: 1px solid var(--border-soft);
}
.sib-cpd-no-more {
  font-size: var(--text-xs);
  color: var(--text-muted);
}
.sib-cpd-sug-warning {
  padding: var(--space-3) var(--space-5);
  font-size: var(--text-xs);
  color: var(--text-muted);
  border-top: 1px solid var(--border-soft);
}

/* Continue button */
.sib-cpd-continue {
  text-align: center;
  padding: var(--space-4) 0;
}
.sib-cpd-continue .sib-btn-continue {
  display: inline-flex;
  width: auto;
  padding: 13px 40px;
}

@media (max-width: 600px) {
  .sib-domain-input-row { flex-direction: column; align-items: stretch; }
  .sib-btn-domain-action { justify-content: center; }
  .sib-cpd-sug-actions { flex-wrap: wrap; }
}

/* ══════════════════════════════════════════════════════════
   CHECKOUT PAGE  (.sib-co-*)
   ══════════════════════════════════════════════════════════ */

/* Progress steps bar */
.sib-co-header {
  padding: var(--space-4) 0 var(--space-5);
}
.sib-co-steps {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}
.sib-co-step {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: var(--radius-full);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  border: 1px solid var(--border-soft);
  background: var(--bg-card);
}
.sib-co-step-done {
  color: var(--brand-cyan);
  border-color: rgba(6,182,212,0.30);
  background: rgba(6,182,212,0.08);
}
.sib-co-step-active {
  color: var(--text-primary);
  border-color: rgba(37,99,235,0.40);
  background: rgba(37,99,235,0.12);
}
.sib-co-step-sep {
  color: var(--text-muted);
  font-size: 18px;
}

/* Two-column layout */
.sib-co-layout {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: var(--space-5);
  align-items: start;
}
.sib-co-main {
  min-width: 0;
}
.sib-co-side {
  position: sticky;
  top: calc(var(--topbar-height, 64px) + 16px);
}

/* Toggle bar (already registered / new account) */
.sib-co-toggle-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  padding: var(--space-3) var(--space-4);
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  flex-wrap: wrap;
}
.sib-co-toggle-hint {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin: 0;
}

/* Account selector grid */
.sib-account-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: var(--space-3);
}
.sib-account-card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: border-color 0.2s, background 0.2s;
}
.sib-account-card input[type="radio"] { display: none; }
.sib-account-card:hover {
  border-color: var(--brand-blue);
  background: var(--bg-lifted);
}
.sib-account-card.sib-account-selected {
  border-color: var(--brand-cyan);
  background: rgba(6,182,212,0.06);
}
.sib-account-name {
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-primary);
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}
.sib-account-addr {
  font-size: var(--text-xs);
  color: var(--text-muted);
}

/* Badges */
.sib-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: var(--radius-full);
  font-size: 11px;
  font-weight: var(--font-semibold);
}
.sib-badge-gray  { background: rgba(100,116,139,0.20); color: var(--text-muted); }
.sib-badge-cyan  { background: rgba(6,182,212,0.15);   color: var(--brand-cyan); }

/* Form actions row */
.sib-form-actions {
  padding-top: var(--space-3);
}

/* Password strength */
.sib-pw-actions {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
}
.sib-pw-strength {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex: 1;
  min-width: 180px;
}
.sib-pw-bar {
  flex: 1;
  height: 6px;
  border-radius: 3px;
  background: var(--border-soft);
  overflow: hidden;
}
.sib-pw-fill {
  height: 100%;
  width: 0;
  border-radius: 3px;
  background: var(--brand-cyan);
  transition: width 0.3s, background 0.3s;
}
.sib-pw-label {
  font-size: var(--text-xs);
  color: var(--text-muted);
  white-space: nowrap;
}

/* Domain contact select */
.sib-co-domain-select { max-width: 340px; margin-bottom: var(--space-4); }

/* Hook output */
.sib-hook-output { margin-bottom: var(--space-4); }

/* Payment panel (right sticky) */
.sib-co-panel {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  overflow: hidden;
  position: relative;
}
.sib-co-panel::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--brand-blue), var(--brand-cyan), transparent);
}
.sib-co-panel-head {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
  font-size: var(--text-md);
  font-weight: var(--font-bold);
  color: var(--text-primary);
}
.sib-co-panel-head i { color: var(--brand-cyan); }

/* Total bar */
.sib-co-total-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
  background: rgba(37,99,235,0.06);
}
.sib-co-total-label {
  font-size: var(--text-sm);
  color: var(--text-muted);
}
.sib-co-total-price {
  font-size: var(--text-xl, 20px);
  font-weight: var(--font-bold);
  color: var(--brand-cyan);
}

/* Credit wrap */
.sib-co-credit-wrap {
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
}
.sib-co-credit-msg {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin-bottom: var(--space-2);
}

/* Payment gateways */
.sib-co-gateways {
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
}
.sib-co-gateways-label {
  font-size: var(--text-xs);
  color: var(--text-muted);
  margin-bottom: var(--space-3);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.sib-gateway-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.sib-gateway-item {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: 10px 14px;
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: border-color 0.2s, background 0.2s;
  position: relative;
}
.sib-gateway-item input[type="radio"] { display: none; }
.sib-gateway-item:hover {
  border-color: var(--brand-blue);
  background: var(--bg-lifted);
}
.sib-gateway-item.sib-gateway-active {
  border-color: var(--brand-cyan);
  background: rgba(6,182,212,0.07);
}
.sib-gateway-icon {
  font-size: 14px;
  color: var(--text-muted);
  width: 16px;
  text-align: center;
}
.sib-gateway-name {
  flex: 1;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-primary);
}
.sib-gateway-check {
  font-size: 14px;
  color: var(--brand-cyan);
  opacity: 0;
  transition: opacity 0.2s;
}
.sib-gateway-item.sib-gateway-active .sib-gateway-check { opacity: 1; }

/* CC input area */
.sib-co-cc-wrap {
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
}
.sib-co-cvv-row { margin-bottom: var(--space-3); }
.sib-co-cc-tabs {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--space-3);
}
.sib-input-group {
  display: flex;
  gap: 0;
}
.sib-input-group .sib-input {
  border-radius: var(--radius-md) 0 0 var(--radius-md) !important;
  flex: 1;
}
.sib-input-addon {
  padding: 0 12px;
  background: var(--bg-lifted);
  border: 1px solid var(--border-soft);
  border-right: none;
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  color: var(--text-muted);
  font-size: var(--text-sm);
  cursor: pointer;
  font-family: var(--font-main);
}
.sib-field-danger { color: var(--status-error, #ef4444); }

/* Express checkout */
.sib-co-express { padding: var(--space-4) var(--space-5); }
.sib-co-express-msg {
  padding: var(--space-4) var(--space-5);
  font-size: var(--text-sm);
  color: var(--text-muted);
  text-align: center;
}

/* Captcha */
.sib-co-captcha {
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
}

/* Marketing optin */
.sib-co-marketing {
  padding: var(--space-4) var(--space-5);
  border-bottom: 1px solid var(--border-soft);
}
.sib-co-marketing-title {
  font-size: var(--text-sm);
  font-weight: var(--font-bold);
  color: var(--text-primary);
  margin: 0 0 var(--space-2);
}

/* Submit area */
.sib-co-submit {
  padding: var(--space-4) var(--space-5) var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.sib-tos-check {
  font-size: var(--text-sm);
  color: var(--text-secondary);
}
.sib-link {
  color: var(--brand-cyan);
  text-decoration: none;
}
.sib-link:hover { text-decoration: underline; }
.sib-co-ssl {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--text-xs);
  color: var(--text-muted);
  padding-top: var(--space-2);
}
.sib-co-ssl i { color: var(--brand-cyan); }

/* Utility */
.sib-required { color: var(--status-error, #ef4444); margin-inline-start: 2px; }

/* Buttons */
.sib-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  border: none;
  border-radius: var(--radius-md);
  color: #fff;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  cursor: pointer;
  transition: opacity 0.2s, transform 0.2s;
}
.sib-btn-primary:hover { opacity: 0.88; transform: translateY(-1px); }
.sib-btn-warning {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: rgba(245,158,11,0.12);
  border: 1px solid rgba(245,158,11,0.35);
  border-radius: var(--radius-md);
  color: #f59e0b;
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  cursor: pointer;
  transition: background 0.2s;
}
.sib-btn-warning:hover { background: rgba(245,158,11,0.20); }

/* Responsive */
@media (max-width: 900px) {
  .sib-co-layout { grid-template-columns: 1fr; }
  .sib-co-side { position: static; }
}
@media (max-width: 600px) {
  .sib-co-steps { gap: var(--space-1); }
  .sib-co-step { padding: 5px 10px; font-size: var(--text-xs); }
  .sib-account-grid { grid-template-columns: 1fr; }
}

/* ══════════════════════════════════════════════════════════
   ORDER COMPLETE PAGE  (.sib-complete-*)
   ══════════════════════════════════════════════════════════ */

.sib-complete-wrap {
  max-width: 640px;
  margin: var(--space-5) auto;
}
.sib-complete-hero {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-xl);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  padding: var(--space-7, 48px) var(--space-5);
  text-align: center;
  margin-bottom: var(--space-4);
  position: relative;
  overflow: hidden;
}
.sib-complete-hero::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--brand-blue), var(--brand-cyan), transparent);
}
.sib-complete-icon {
  font-size: 64px;
  color: var(--brand-cyan);
  margin-bottom: var(--space-4);
  animation: sibPulse 1.6s ease-in-out infinite;
}
@keyframes sibPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50%       { transform: scale(1.06); opacity: 0.85; }
}
.sib-complete-title {
  font-size: var(--text-2xl, 28px) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  margin: 0 0 var(--space-2) !important;
  font-family: var(--font-main) !important;
}
.sib-complete-sub {
  font-size: var(--text-md);
  color: var(--text-secondary);
  margin: 0;
}
.sib-complete-order-num {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-4) var(--space-5);
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-4);
}
.sib-complete-order-label {
  font-size: var(--text-sm);
  color: var(--text-muted);
}
.sib-complete-order-val {
  font-size: var(--text-lg, 18px);
  font-weight: var(--font-bold);
  color: var(--brand-cyan);
  font-family: var(--font-mono, monospace);
  letter-spacing: 0.04em;
}
.sib-complete-notice {
  margin-bottom: var(--space-4);
}
.sib-complete-instructions {
  font-size: var(--text-sm);
  color: var(--text-secondary);
  text-align: center;
  padding: var(--space-3) var(--space-4);
  margin-bottom: var(--space-4);
}
.sib-complete-addon {
  margin-bottom: var(--space-4);
}
.sib-complete-actions {
  text-align: center;
  margin-bottom: var(--space-5);
}
.sib-complete-actions .sib-btn-continue {
  display: inline-flex;
  width: auto;
  padding: 13px 32px;
  text-decoration: none;
}
.sib-complete-recommendations {
  margin-top: var(--space-5);
  padding-top: var(--space-5);
  border-top: 1px solid var(--border-soft);
}

/* Alert variants */
.sib-alert-warning {
  background: rgba(245,158,11,0.10);
  border: 1px solid rgba(245,158,11,0.30);
  color: #f59e0b;
}
.sib-alert-warning i { color: #f59e0b; }

/* ============================================================
   Badge variants (status colours)
   ============================================================ */
.sib-badge-green   { background: rgba(34,197,94,0.15);  color: #22c55e; }
.sib-badge-warning { background: rgba(245,158,11,0.15); color: #f59e0b; }
.sib-badge-danger  { background: rgba(239,68,68,0.15);  color: #ef4444; }

/* ============================================================
   Domain-option badge (پیشفرض / رایگان labels in configureproductdomain)
   ============================================================ */
.sib-domain-opt-badge {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  font-weight: var(--font-semibold);
  padding: 1px 7px;
  border-radius: 20px;
  margin-inline-start: 6px;
  line-height: 18px;
  vertical-align: middle;
}
.sib-domain-opt-badge-default { background: rgba(6,182,212,0.15); color: var(--brand-cyan); }
.sib-domain-opt-badge-free    { background: rgba(34,197,94,0.15); color: #22c55e; }

/* ============================================================
   Renewal pages — shared layout
   ============================================================ */
.sib-renewal-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: var(--space-5);
  align-items: start;
}
@media (max-width: 900px) {
  .sib-renewal-layout { grid-template-columns: 1fr; }
}
.sib-renewal-side { position: sticky; top: var(--space-5); }

.sib-renewal-item {
  background: var(--bg-lifted);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  padding: var(--space-4);
  margin-bottom: var(--space-3);
  transition: border-color 0.18s;
}
.sib-renewal-item:last-child { margin-bottom: 0; }
.sib-renewal-item:hover { border-color: var(--border-hover); }

.sib-renewal-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--space-3);
  flex-wrap: wrap;
}
.sib-renewal-info { flex: 1; min-width: 0; }
.sib-renewal-name {
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  color: var(--text-primary);
  margin: 0 0 var(--space-1);
}
.sib-renewal-domain {
  display: block;
  font-size: var(--text-sm);
  color: var(--brand-cyan);
  margin-bottom: var(--space-1);
  direction: ltr;
}
.sib-renewal-date {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin: 0;
}
.sib-renewal-free {
  font-size: var(--text-sm);
  color: #22c55e;
  margin: var(--space-1) 0 0;
}
.sib-renewal-badge-wrap { flex-shrink: 0; padding-top: 2px; }

.sib-renewal-foot {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-3);
  flex-wrap: wrap;
}
.sib-renewal-period {
  font-size: var(--text-sm);
  color: var(--text-secondary);
  flex: 1;
}
.sib-renewal-period-label {
  display: block;
  font-size: var(--text-xs);
  color: var(--text-muted);
  margin-bottom: 2px;
}
.sib-renewal-period-select {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--border-soft);
}
.sib-renewal-ineligible {
  font-size: var(--text-sm);
  color: var(--text-muted);
}
.sib-renewal-addons {
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--border-soft);
}
.sib-renewal-addons-title {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0 0 var(--space-2);
}

/* Renewal summary sidebar */
.sib-summary-card {
  background: var(--bg-lifted);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.sib-summary-header {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--border-soft);
  background: var(--bg-surface);
}
.sib-summary-header h2 {
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  margin: 0;
  color: var(--text-primary);
}
.sib-summary-header i { color: var(--brand-cyan); }
.sib-summary-loader {
  padding: var(--space-4);
  text-align: center;
  color: var(--text-muted);
}
.sib-summary-body { padding: 0 var(--space-4); }
.sib-summary-footer {
  padding: var(--space-3) var(--space-4) var(--space-4);
}

/* Store header (domain-renewals / service-renewals top bar) */
.sib-store-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}
.sib-store-title-wrap {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.sib-store-icon { font-size: 28px; }
.sib-store-title {
  font-size: var(--text-xl);
  font-weight: var(--font-bold);
  color: var(--text-primary);
  margin: 0;
}
.sib-store-empty {
  text-align: center;
  padding: var(--space-8) var(--space-4);
}
.sib-empty-icon {
  width: 64px; height: 64px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: var(--radius-full);
  font-size: 28px;
  margin-bottom: var(--space-3);
  background: rgba(6,182,212,0.10);
  color: var(--brand-cyan-light);
}

/* ============================================================
   Error page
   ============================================================ */
.sib-error-wrap {
  max-width: 600px;
  margin: var(--space-8) auto;
  text-align: center;
  padding: 0 var(--space-4);
}
.sib-error-icon {
  font-size: 56px;
  margin-bottom: var(--space-4);
  line-height: 1;
}
.sib-error-icon-warning { color: #f59e0b; }
.sib-error-title {
  font-size: var(--text-xl);
  font-weight: var(--font-bold);
  color: var(--text-primary);
  margin: 0 0 var(--space-3);
}
.sib-error-msg {
  font-size: var(--text-base);
  color: var(--text-secondary);
  margin-bottom: var(--space-4);
}
.sib-error-detail {
  font-size: var(--text-sm);
  color: var(--text-muted);
  margin-bottom: var(--space-5);
}
.sib-error-actions {
  display: flex;
  justify-content: center;
  gap: var(--space-3);
  flex-wrap: wrap;
}

/* ============================================================
   Modal (remove-item and general modals)
   ============================================================ */
.sib-modal-content {
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  background: var(--bg-surface);
  box-shadow: 0 20px 60px rgba(0,0,0,0.4);
}
.sib-modal-close {
  color: var(--text-muted);
  opacity: 1;
  font-size: 18px;
  line-height: 1;
}
.sib-modal-close:hover { color: var(--text-primary); }
.sib-modal-title {
  font-size: var(--text-base);
  font-weight: var(--font-semibold);
  color: var(--text-primary);
  margin: 0;
}
.sib-modal-body {
  font-size: var(--text-sm);
  color: var(--text-secondary);
  padding: var(--space-4) var(--space-5);
}
.sib-modal-footer {
  padding: var(--space-3) var(--space-5);
  display: flex;
  justify-content: flex-end;
  gap: var(--space-2);
  border-top: 1px solid var(--border-soft);
}

/* ============================================================
   Outline button variant (used in error page back button)
   ============================================================ */
.sib-btn-outline-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: 10px 20px;
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--text-secondary);
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  text-decoration: none;
  cursor: pointer;
  transition: border-color 0.18s, color 0.18s, background 0.18s;
}
.sib-btn-outline-btn:hover {
  border-color: var(--brand-cyan);
  color: var(--brand-cyan);
  background: rgba(6,182,212,0.06);
  text-decoration: none;
}

/* ============================================================
   Subdomain custom-domain row
   ============================================================ */
.sib-subdomain-row {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}
.sib-subdomain-dot {
  font-size: var(--text-lg);
  font-weight: var(--font-bold);
  color: var(--brand-cyan);
  flex-shrink: 0;
  line-height: 1;
  padding: 0 2px;
}
.sib-subdomain-preview-wrap { color: var(--text-muted); }
.sib-subdomain-preview {
  font-family: var(--font-mono, monospace);
  color: var(--brand-cyan);
  font-weight: var(--font-semibold);
  font-size: var(--text-sm);
}

/* ── Domain name in product header ── */
.sib-cp-product-domain {
  font-size: var(--text-sm);
  color: var(--brand-cyan);
  margin: 2px 0 0;
  display: flex;
  align-items: center;
  gap: 6px;
  direction: ltr;
  font-family: var(--font-mono, monospace);
  justify-content: right;
}
.sib-cp-product-domain i { font-size: 11px; opacity: 0.8; }

/* ── Billing cycle boxes ── */
.sib-cycle-grid {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.sib-cycle-box {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  background: var(--bg-surface);
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s;
  font-size: var(--text-sm);
  color: var(--text-primary);
  min-width: 140px;
  flex: 1;
}
.sib-cycle-box input[type="radio"] { display: none; }
.sib-cycle-box:hover {
  border-color: var(--brand-cyan);
  background: var(--bg-lifted);
}
.sib-cycle-box:has(input:checked),
.sib-cycle-box.sib-cycle-active {
  border-color: var(--brand-cyan);
  background: color-mix(in srgb, var(--brand-cyan) 10%, transparent);
  color: var(--text-primary);
  font-weight: var(--font-semibold);
}
.sib-cycle-label { flex: 1; direction: rtl; }

/* ── Order summary rows ── */
.sib-os-product {
  border-bottom: 1px solid var(--border-soft);
  padding-bottom: var(--space-3);
  margin-bottom: var(--space-3);
}
.sib-os-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--space-3);
  padding: 4px 0;
  font-size: var(--text-sm);
}
.sib-os-product-row { font-weight: var(--font-semibold); }
.sib-os-option-row, .sib-os-addon-row { color: var(--text-secondary); }
.sib-os-section-label {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: var(--space-2) 0 var(--space-1);
  border-top: 1px solid var(--border-soft);
  margin-top: var(--space-2);
}
.sib-os-name { flex: 1; direction: rtl; }
.sib-os-price { white-space: nowrap; color: var(--text-primary); font-weight: var(--font-semibold); }
.sib-os-indent { color: var(--brand-cyan); margin-left: 4px; font-size: 10px; }
.sib-os-opt-val { color: var(--brand-cyan); }
.sib-os-setup { font-size: var(--text-xs); color: var(--text-muted); }
.sib-os-totals {
  border-top: 1px solid var(--border-soft);
  padding-top: var(--space-2);
  margin-bottom: var(--space-3);
}
.sib-os-label { color: var(--text-secondary); font-size: var(--text-sm); }
.sib-os-amount { white-space: nowrap; font-size: var(--text-sm); }
.sib-os-total-today {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 2px solid var(--brand-cyan);
  padding-top: var(--space-3);
  margin-top: var(--space-2);
}
.sib-os-today-label {
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-primary);
}
.sib-os-today-amount {
  font-size: var(--text-lg);
  font-weight: var(--font-bold);
  color: var(--brand-cyan);
}

/* ════════════════════════════════════════
   Domain Register Store (domainregister.tpl)
   ════════════════════════════════════════ */

/* Header */
.sib-dr-header { margin-bottom: var(--space-5); }
.sib-dr-title {
  font-size: var(--text-2xl) !important;
  font-weight: var(--font-bold) !important;
  color: var(--text-primary) !important;
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 6px !important;
  font-family: var(--font-main) !important;
}
.sib-dr-title i { color: var(--brand-cyan); }
.sib-dr-subtitle { color: var(--text-secondary); font-size: var(--text-sm); margin: 0; }

/* Search */
.sib-dr-search-wrap {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
  margin-bottom: var(--space-5);
  position: relative;
  z-index: 50;
}
.sib-dr-search-row {
  display: flex; gap: var(--space-3); align-items: stretch;
}
.sib-dr-input {
  flex: 1;
  padding: 12px 16px;
  background: var(--bg-surface);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  color: var(--text-primary);
  font-size: var(--text-base);
  font-family: var(--font-main);
  direction: ltr;
  outline: none;
  transition: border-color 0.15s;
}
.sib-dr-input:focus { border-color: var(--brand-cyan); }
.sib-dr-textarea {
  flex: 1; min-height: 60px; resize: vertical;
  padding: 12px 16px;
  background: var(--bg-surface);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  color: var(--text-primary);
  font-family: var(--font-main);
  outline: none;
  transition: border-color 0.15s;
}
.sib-dr-textarea:focus { border-color: var(--brand-cyan); }
.sib-btn-search {
  padding: 10px 22px;
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  color: #fff;
  border: none;
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  cursor: pointer;
  display: flex; align-items: center; gap: 8px;
  white-space: nowrap;
  box-shadow: 0 4px 14px rgba(37,99,235,0.28);
  transition: opacity 0.15s, box-shadow 0.15s;
  flex-shrink: 0;
}
.sib-btn-search:hover { opacity: 0.88; box-shadow: 0 6px 20px rgba(37,99,235,0.40); color: #fff; }
/* Override standard_cart/css/all.min.css which positions this button absolute inside advanced search */
.domain-checker-container #btnCheckAvailability {
  position: static !important;
  right: auto !important;
  top: auto !important;
}
.sib-dr-search-filters {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
  margin-top: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--border-soft);
}
.sib-dr-filter-opts { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; flex: 1; }
.sib-dr-captcha { margin-top: var(--space-3); }

/* Result */
.sib-dr-result-heading {
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--text-secondary);
  padding: var(--space-3) 0 var(--space-2);
  text-transform: uppercase; letter-spacing: 0.05em;
}
.sib-dr-loader { padding: var(--space-4) 0; color: var(--text-muted); }
.sib-dr-result-box {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
  margin-bottom: var(--space-4);
}
.sib-dr-status { font-size: var(--text-base); font-weight: var(--font-semibold); margin: 0 0 var(--space-2); display: flex; align-items: center; gap: 8px; }
.sib-dr-available { color: var(--success); }
.sib-dr-unavailable { color: var(--error); }
.sib-dr-price { margin-top: var(--space-3); display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.sib-btn-add-cart { font-family: var(--font-main); }
.sib-dr-error { color: var(--error); font-size: var(--text-sm); }
.sib-dr-contact { font-family: var(--font-main); }

/* Spotlight TLDs */
.sib-dr-spotlight { margin: var(--space-4) 0; }
.sib-dr-spotlight-item {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
  text-align: center;
  transition: border-color 0.15s;
}
.sib-dr-tld-name { font-size: var(--text-base); font-weight: var(--font-semibold); color: var(--text-primary); }
.sib-dr-spotlight-price { font-size: var(--text-sm); color: var(--brand-cyan); font-weight: var(--font-semibold); }
.sib-dr-spotlight-badge { font-size: 10px; font-weight: var(--font-bold); text-transform: uppercase; border-radius: 4px; padding: 2px 6px; margin-bottom: 4px; display: inline-block; }
.sib-btn-tld-add { font-family: var(--font-main); font-size: var(--text-xs); }

/* Suggestions */
.sib-dr-suggestions { margin: var(--space-4) 0; }
.sib-dr-suggestions-head {
  font-size: var(--text-sm); font-weight: var(--font-semibold);
  color: var(--text-secondary);
  padding: var(--space-3) 0;
  display: flex; align-items: center; gap: 8px;
}
.sib-dr-suggestions-head i { color: var(--brand-cyan); }
.sib-dr-suggestion-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--border-soft);
  background: var(--bg-card);
}
.sib-dr-suggestion-row:first-child { border-radius: var(--radius-md) var(--radius-md) 0 0; }
.sib-dr-suggestion-row:last-child { border-bottom: none; border-radius: 0 0 var(--radius-md) var(--radius-md); }
.sib-dr-ext { color: var(--text-muted); }
.sib-dr-sug-actions { display: flex; align-items: center; gap: var(--space-3); }
.sib-dr-sug-price { font-weight: var(--font-semibold); color: var(--brand-cyan); }
.sib-btn-sug-add { font-family: var(--font-main); }
.sib-dr-promo { font-size: var(--text-xs); }
.sib-dr-no-suggestions { color: var(--text-muted); font-size: var(--text-sm); padding: var(--space-3) 0; }
.sib-dr-more-wrap { padding: var(--space-3) 0; text-align: center; }
.sib-dr-sug-warning { color: var(--text-muted); font-size: var(--text-xs); padding: var(--space-2) 0; }

/* Pricing table */
.sib-dr-pricing { margin-top: var(--space-6); }
.sib-dr-featured-tlds {
  display: flex; flex-wrap: wrap; gap: var(--space-3); margin-bottom: var(--space-5);
}
.sib-dr-featured-item {
  flex: 1; min-width: 120px;
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
  text-align: center;
}
.sib-dr-featured-icon img { height: 32px; margin-bottom: var(--space-2); }
.sib-dr-featured-tld { font-weight: var(--font-bold); color: var(--text-primary); }
.sib-dr-featured-price { font-size: var(--text-sm); color: var(--brand-cyan); margin-top: 4px; }
.sib-dr-table-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--space-3); margin-bottom: var(--space-3); }
.sib-dr-table-title { font-size: var(--text-base) !important; font-weight: var(--font-semibold) !important; color: var(--text-primary) !important; margin: 0 !important; font-family: var(--font-main) !important; }
.sib-dr-filters { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.sib-dr-filter-tag {
  padding: 4px 12px;
  border-radius: 20px;
  border: 1px solid var(--border-soft);
  font-size: var(--text-xs);
  color: var(--text-secondary);
  text-decoration: none;
  transition: all 0.15s;
}
.sib-dr-filter-tag:hover, .sib-dr-filter-tag.active {
  border-color: var(--brand-cyan);
  color: var(--brand-cyan);
  background: color-mix(in srgb, var(--brand-cyan) 8%, transparent);
}
.sib-dr-filter-count { opacity: 0.7; }
.sib-dr-table {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.sib-dr-table-row {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  border-bottom: 1px solid var(--border-soft);
}
.sib-dr-table-row:last-child { border-bottom: none; }
.sib-dr-table-hdr {
  background: var(--bg-surface);
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  text-transform: uppercase; letter-spacing: 0.05em;
}
.sib-dr-col-tld, .sib-dr-col-price {
  padding: var(--space-3) var(--space-4);
  font-size: var(--text-sm);
}
.sib-dr-col-tld { color: var(--text-primary); }
.sib-dr-col-price { text-align: center; color: var(--text-secondary); }
.sib-dr-col-price small { color: var(--text-muted); font-size: var(--text-xs); }
.sib-dr-tld-badge {
  font-size: 10px; font-weight: var(--font-bold); text-transform: uppercase;
  padding: 1px 5px; border-radius: 3px; margin-right: 4px;
}
.sib-dr-tld-badge-hot { background: rgba(239,68,68,.15); color: #ef4444; }
.sib-dr-tld-badge-new { background: rgba(16,185,129,.15); color: #10b981; }
.sib-dr-tld-badge-sale { background: rgba(245,158,11,.15); color: #f59e0b; }
.sib-dr-free { color: var(--success); }
.sib-dr-na { color: var(--text-muted); }
.tld-row { display: none; }
.tld-row.tld-visible { display: grid; }

/* Promo */
.sib-dr-promo-row { display: flex; gap: var(--space-4); margin-top: var(--space-6); flex-wrap: wrap; }
.sib-dr-promo-box {
  flex: 1; min-width: 240px;
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.sib-dr-promo-box::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--brand-blue), var(--brand-cyan));
}
.sib-dr-promo-icon {
  font-size: 28px;
  margin-bottom: var(--space-3);
  display: block;
  width: 52px; height: 52px;
  background: color-mix(in srgb, var(--brand-cyan) 12%, transparent);
  border-radius: var(--radius-md);
  display: flex; align-items: center; justify-content: center;
  color: var(--brand-cyan);
}
.sib-dr-promo-title { font-size: var(--text-base) !important; font-weight: var(--font-bold) !important; color: var(--text-primary) !important; margin: 0 0 var(--space-2) !important; font-family: var(--font-main) !important; }
.sib-dr-promo-sub { font-size: var(--text-sm); color: var(--text-secondary); margin-bottom: var(--space-4); flex: 1; }
.sib-dr-promo-note { font-size: var(--text-xs); color: var(--text-muted); margin-top: var(--space-3); }
.sib-btn-promo {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: 10px 20px;
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-cyan));
  color: #fff !important;
  text-decoration: none !important;
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  font-family: var(--font-main);
  transition: opacity 0.15s, transform 0.15s, box-shadow 0.15s;
  box-shadow: 0 4px 14px rgba(37,99,235,0.28);
  align-self: flex-start;
}
.sib-btn-promo:hover { opacity: 0.88; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(37,99,235,0.40); color: #fff !important; text-decoration: none !important; }
.sib-btn-promo-sec { background: linear-gradient(135deg, var(--brand-cyan), var(--brand-blue)); }

@media (max-width: 700px) {
  .sib-dr-table-row { grid-template-columns: 2fr 1fr 1fr; }
  .sib-dr-col-price:nth-child(3) { display: none; }
  .sib-dr-search-row { flex-direction: column; }
  .sib-btn-search { width: 100%; justify-content: center; }
}
