﻿/* AlpicNode Cart - Dark Electric Style */

:root {
  --an-bg:           #070b14;
  --an-surface:      #0d1525;
  --an-surface-2:    #111d35;
  --an-border:       rgba(0,212,255,.15);
  --an-primary:      #00d4ff;
  --an-primary-glow: rgba(0,212,255,.25);
  --an-success:      #00e676;
  --an-text:         #c8d8f0;
  --an-text-muted:   #5a7399;
  --an-heading:      #ffffff;
  --an-radius:       10px;
  --an-radius-lg:    16px;
}

body, #order-alpicnode_cart { background: var(--an-bg) !important; color: var(--an-text) !important; }

/* ── Sidebar ── */
.cart-sidebar { background: var(--an-surface) !important; border-right: 1px solid var(--an-border); }
.cart-sidebar .category, .cart-sidebar .category a { color: var(--an-text) !important; }
.cart-sidebar .category.active a, .cart-sidebar .category a:hover { color: var(--an-primary) !important; }
.cart-sidebar .divider { border-color: var(--an-border) !important; }

/* ── Cart Header ── */
.an-cart-header { padding: 2rem 0 1.5rem; border-bottom: 1px solid var(--an-border); margin-bottom: 2rem; }
.an-cart-header h1 { color: var(--an-heading) !important; font-size: 1.8rem !important; font-weight: 700 !important; margin: 0 0 .5rem !important; }
.an-cart-tagline { color: var(--an-text-muted); margin: 0; }
.header-lined { padding: 2rem 0 1.5rem; border-bottom: 1px solid var(--an-border); margin-bottom: 2rem; }
.header-lined h1 { color: var(--an-heading) !important; font-size: 1.8rem !important; font-weight: 700 !important; }

/* ── Product Grid ── */
.an-product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.25rem;
  padding-bottom: 2rem;
}
.an-product-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  display: flex;
  flex-direction: column;
  transition: all .2s ease;
  overflow: hidden;
}
.an-product-card:hover {
  border-color: rgba(0,212,255,.5);
  box-shadow: 0 8px 40px rgba(0,212,255,.12);
  transform: translateY(-3px);
}
.an-product-top {
  padding: 1.75rem 1.75rem 1rem;
  border-bottom: 1px solid var(--an-border);
}
.an-product-icon {
  width: 44px; height: 44px;
  border-radius: 10px;
  background: rgba(0,212,255,.1);
  color: var(--an-primary);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem;
  margin-bottom: 1rem;
}
.an-product-name {
  color: var(--an-heading) !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  margin: 0 0 .25rem !important;
}
.an-stock-badge {
  display: inline-block;
  font-size: .75rem;
  background: rgba(0,230,118,.1);
  color: var(--an-success);
  border: 1px solid rgba(0,230,118,.3);
  border-radius: 100px;
  padding: .15rem .6rem;
  margin-top: .25rem;
}
.an-product-desc {
  padding: 1.25rem 1.75rem;
  flex: 1;
}
.an-product-desc p { color: var(--an-text-muted); font-size: .9rem; margin-bottom: .75rem; }
.an-feature-list { list-style: none; padding: 0; margin: 0; }
.an-feature-list li {
  display: flex;
  align-items: baseline;
  gap: .5rem;
  color: var(--an-text);
  font-size: .875rem;
  padding: .3rem 0;
  border-bottom: 1px solid rgba(255,255,255,.04);
}
.an-feature-list li:last-child { border-bottom: none; }
.an-feature-list li .fas { color: var(--an-primary); font-size: .7rem; flex-shrink: 0; margin-top: 3px; }
.an-feature-list li .fv { color: var(--an-primary); font-weight: 600; }

.an-product-footer {
  padding: 1.25rem 1.75rem 1.75rem;
  border-top: 1px solid var(--an-border);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
.an-product-price { display: flex; flex-direction: column; gap: .1rem; }
.an-price-label { font-size: .75rem; color: var(--an-text-muted); text-transform: uppercase; letter-spacing: .05em; }
.an-price { font-size: 1.6rem; font-weight: 800; color: var(--an-heading); line-height: 1; }
.an-price-cycle { font-size: .8rem; color: var(--an-text-muted); }
.an-setup-fee { font-size: .75rem; color: var(--an-text-muted); display: block; margin-top: .15rem; }
.an-order-btn {
  background: linear-gradient(135deg, var(--an-primary), #0099cc);
  color: #000 !important;
  font-weight: 700;
  font-size: .875rem;
  padding: .65rem 1.25rem;
  border-radius: 8px;
  border: none;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  white-space: nowrap;
  transition: all .2s ease;
  box-shadow: 0 4px 16px var(--an-primary-glow);
  flex-shrink: 0;
}
.an-order-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 24px rgba(0,212,255,.5);
  color: #000 !important;
  text-decoration: none;
}

/* ── Order Summary / View Cart ── */
.order-summary { background: var(--an-surface-2) !important; border: 1px solid var(--an-border) !important; border-radius: var(--an-radius-lg) !important; }
.item-container { border-color: var(--an-border) !important; background: var(--an-surface) !important; }
.order-summary .total { color: var(--an-heading) !important; font-weight: 700; }

/* ── Promo / Checkout ── */
.promo-details { background: var(--an-surface-2) !important; border: 1px solid var(--an-border) !important; border-radius: var(--an-radius) !important; }
.btn-checkout, .btn-primary {
  background: linear-gradient(135deg, var(--an-primary), #0099cc) !important;
  color: #000 !important;
  font-weight: 700 !important;
  border: none !important;
  box-shadow: 0 4px 16px var(--an-primary-glow) !important;
}
.btn-checkout:hover, .btn-primary:hover { box-shadow: 0 6px 24px rgba(0,212,255,.5) !important; color: #000 !important; }
.btn-secondary { background: var(--an-surface-2) !important; border-color: var(--an-border) !important; color: var(--an-text) !important; }

/* ── Shared form elements inside cart ── */
.form-control {
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border) !important;
  color: var(--an-text) !important;
  border-radius: 8px !important;
}
.form-control:focus {
  border-color: var(--an-primary) !important;
  box-shadow: 0 0 0 3px var(--an-primary-glow) !important;
}
label { color: var(--an-text) !important; }
.input-group-text { background: var(--an-surface-2) !important; border-color: var(--an-border) !important; color: var(--an-text-muted) !important; }
.card { background: var(--an-surface) !important; border-color: var(--an-border) !important; border-radius: var(--an-radius-lg) !important; }
.card-header { background: var(--an-surface-2) !important; border-bottom-color: var(--an-border) !important; color: var(--an-heading) !important; }
.nav-tabs .nav-link { color: var(--an-text-muted) !important; border: none !important; border-bottom: 2px solid transparent !important; }
.nav-tabs .nav-link.active { color: var(--an-primary) !important; border-bottom-color: var(--an-primary) !important; background: transparent !important; }
.nav-tabs { border-bottom-color: var(--an-border) !important; }
.alert-info    { background: rgba(0,212,255,.08)  !important; border-color: rgba(0,212,255,.3)  !important; color: var(--an-primary) !important; }
.alert-success { background: rgba(0,230,118,.08)  !important; border-color: rgba(0,230,118,.3)  !important; color: var(--an-success) !important; }
.alert-warning { background: rgba(255,193,7,.08)  !important; border-color: rgba(255,193,7,.3)   !important; color: #ffc107 !important; }
.alert-danger  { background: rgba(255,61,110,.08) !important; border-color: rgba(255,61,110,.3)  !important; color: #ff3d6e !important; }

/* ── Checkout & configure pages ── */
#order-standard_cart { background: var(--an-bg) !important; color: var(--an-text) !important; }
.cart-body .sub-heading { margin: 2rem 0 1rem; }
.cart-body .sub-heading span {
  font-size: .7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--an-primary) !important;
  background: transparent !important;
}
.field-container { background: var(--an-surface) !important; border: 1px solid var(--an-border) !important; border-radius: var(--an-radius-lg) !important; padding: 1.5rem !important; margin-bottom: 1.5rem !important; }
.product-info { padding: .75rem 0 1rem; }
.product-info .product-title { color: var(--an-heading) !important; font-weight: 700; font-size: 1.1rem; margin-bottom: .25rem; }
.product-info p { color: var(--an-text-muted); }
.product-configurable-options { background: var(--an-surface) !important; border: 1px solid var(--an-border) !important; border-radius: var(--an-radius-lg) !important; padding: 1.5rem !important; }
.panel.card { background: var(--an-surface-2) !important; border-color: var(--an-border) !important; }
.panel-add { background: var(--an-surface) !important; border-top-color: var(--an-border) !important; color: var(--an-primary) !important; }
.panel-price { background: var(--an-surface) !important; border-top-color: var(--an-border) !important; color: var(--an-text) !important; }
.panel-addon-selected { border-color: var(--an-primary) !important; box-shadow: 0 0 0 2px var(--an-primary-glow) !important; }
.secondary-cart-sidebar #orderSummary .order-summary { padding: 1.5rem !important; }
.summary-container .item { border-bottom: 1px solid var(--an-border) !important; padding: .75rem 0 !important; }
.summary-container .item .title { color: var(--an-heading) !important; }
.summary-container .item .price { color: var(--an-primary) !important; font-weight: 700; }
.summary-container .total-due { color: var(--an-heading) !important; font-size: 1.2rem !important; font-weight: 800 !important; }

/* ── Already registered / login toggle ── */
.already-registered { background: var(--an-surface) !important; border: 1px solid var(--an-border) !important; border-radius: var(--an-radius) !important; padding: 1rem 1.25rem !important; margin-bottom: 1.5rem !important; }
.already-registered p { color: var(--an-text-muted) !important; margin: 0; }
#existingLoginMessage, .existing-login-form { background: var(--an-surface-2) !important; border: 1px solid var(--an-border) !important; border-radius: var(--an-radius) !important; padding: 1.5rem !important; margin-bottom: 1.5rem !important; }

/* ── Payment methods section ── */
.payment-method-item { background: var(--an-surface) !important; border: 1px solid var(--an-border) !important; border-radius: var(--an-radius) !important; padding: 1rem !important; margin-bottom: .75rem !important; }
.payment-method-item.selected { border-color: var(--an-primary) !important; box-shadow: 0 0 0 2px var(--an-primary-glow) !important; }
.payment-method-logo { filter: brightness(0) invert(1) opacity(.7); }

/* ── Order complete ── */
.order-confirmation { text-align: center; padding: 3rem 0; }
.order-confirmation .fa-check-circle { color: var(--an-success) !important; font-size: 4rem; margin-bottom: 1rem; }
.order-confirmation h2 { color: var(--an-heading) !important; }
.order-confirmation p { color: var(--an-text-muted); }

/* ── Domain search on cart ── */
.domain-search-box .input-group-append .btn { background: var(--an-primary) !important; border-color: var(--an-primary) !important; color: #000 !important; font-weight: 700 !important; }
.domain-search-results .domain-option { background: var(--an-surface) !important; border-color: var(--an-border) !important; }

/* ── Sidebar categories (collapsed mobile) ── */
.sidebar-categories-collapsed { background: var(--an-surface) !important; border-color: var(--an-border) !important; }
.sidebar-categories-collapsed select { background: var(--an-surface-2) !important; color: var(--an-text) !important; border-color: var(--an-border) !important; }

/* ── select elements ── */
select.form-control, select.custom-select {
  background-color: var(--an-surface) !important;
  color: var(--an-text) !important;
  border-color: var(--an-border) !important;
}
select.form-control option, select.custom-select option { background: var(--an-surface-2); color: var(--an-text); }
