/* ===========================================================================
   VOID TWEAKS — LILA LOOK FUER ALLE UEBRIGEN SEITEN
   Wird als allerletzte Datei geladen. Ueberschreibt die alten weissen
   Akzente aus custom.css / pro.css / den Inline-Styles der Komponenten.
   ======================================================================== */

:root {
  --bs-link-color: #60a5fa;
  --bs-link-hover-color: #93c5fd;
  --bs-link-color-rgb: 96, 165, 250;
  --bs-border-color: rgba(255, 255, 255, 0.08);
  --bs-secondary-color: #a1a1aa;
  --bs-body-color: #e4e4e7;
  --bs-heading-color: #fff;
}

/* ---------------------------------------------------------------------------
   Gemeinsame Bausteine
   ------------------------------------------------------------------------ */
.text-muted { color: #8a8a93 !important; }
.text-primary, .text-accent-500 { color: #60a5fa !important; }
.border, .border-bottom, .border-top { border-color: rgba(255,255,255,.08) !important; }
hr { border-color: rgba(255,255,255,.08); opacity: 1; }

/* Ueberschriften der alten Seiten */
.section-title, .section-title h1, .section-title h2 { color: #fff !important; }
.section-title h1, .section-title h2 { font-weight: 600 !important; }
.section-title .title-underline path { stroke: #6399f1 !important; }
.section-subtitle { color: #a1a1aa !important; }
.section-badge, .terms-badge, .status-badge {
  color: #60a5fa !important;
  background: rgba(99, 153, 241,.08) !important;
  border: 1px solid rgba(99, 153, 241,.35) !important;
  box-shadow: none !important;
}

/* Karten / Boxen */
.card, .bg-gray, .cart-item-bg, .form, .terms-card, .terms-info-card, .status-card,
.category-card, .price-box, .collection .p-4.border {
  background: linear-gradient(180deg, #0d0d10, #08080a) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  color: #d4d4d8;
}
.card:hover, .cart-item-bg:hover, .terms-info-card:hover, .status-card:hover, .category-card:hover {
  border-color: rgba(99, 153, 241,.4) !important;
}
.cart-item-bg, .terms-info-card, .status-card, .category-card {
  transition: border-color .35s ease, transform .45s cubic-bezier(.16,1,.3,1), box-shadow .45s cubic-bezier(.16,1,.3,1) !important;
}
.terms-info-card:hover, .status-card:hover, .category-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 40px -22px rgba(99, 153, 241,.55) !important;
}

/* Editor-Texte (AGB, Privacy, Refund, Blog, Beschreibungen) */
.editor { color: #c4c4cc; line-height: 1.7; }
.editor h1, .editor h2, .editor h3, .editor h4 { color: #fff; }
.editor a { color: #60a5fa; }
.editor a:hover { color: #93c5fd; }
.editor li::marker { color: #60a5fa; }
.editor strong { color: #fff; }
.editor blockquote { border-left: 2px solid #6399f1; padding-left: 14px; color: #a1a1aa; }

/* ---------------------------------------------------------------------------
   Buttons
   ------------------------------------------------------------------------ */
.btn-primary, .btn-buy-now-styled {
  color: #fff !important;
  background: linear-gradient(180deg, #82b2ff, #6399f1) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 10px !important;
  box-shadow: 0 0 0 3px rgba(99, 153, 241,.18) !important;
  transition: transform .25s cubic-bezier(.16,1,.3,1), box-shadow .25s, filter .25s !important;
}
.btn-primary:hover, .btn-buy-now-styled:hover {
  filter: brightness(1.08);
  transform: translateY(-2px);
  box-shadow: 0 0 0 3px rgba(99, 153, 241,.3), 0 10px 28px rgba(99, 153, 241,.35) !important;
}
.btn-primary:active, .btn-buy-now-styled:active { transform: scale(.98); }
.btn-primary:disabled, .btn-buy-now-styled:disabled { opacity: .55; filter: none; transform: none; }

.btn-outline-primary, .btn-outline {
  color: #93c5fd !important;
  background: transparent !important;
  border: 1px solid rgba(99, 153, 241,.5) !important;
  border-radius: 10px !important;
  transition: background .25s, color .25s, border-color .25s !important;
}
.btn-outline-primary:hover, .btn-outline:hover {
  color: #fff !important;
  background: rgba(99, 153, 241,.2) !important;
  border-color: #6399f1 !important;
}

/* Produktseite: "Buy Now" + "Add to Cart" beide lila, Add to Cart als Outline */
.buy-buttons .btn-buy-now-styled { height: 52px; font-size: 16px !important; font-weight: 600 !important; }
.buy-buttons .btn-primary:not(.btn-buy-now-styled) {
  height: 48px;
  color: #fff !important;
  background: #000 !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: none !important;
}
.buy-buttons .btn-primary:not(.btn-buy-now-styled):hover { border-color: #6399f1 !important; background: rgba(99, 153, 241,.12) !important; }
.support-note a, .pay-methods i { color: #60a5fa !important; }
.price-box-label { color: #8a8a93 !important; }
.price-now { color: #fff !important; }
.price-discount { color: #fff !important; background: #6399f1 !important; border-radius: 6px; }
.stock-indicator.btn-outline-primary { color: #60a5fa !important; }
.collection-back, .product-back { color: #a1a1aa !important; transition: color .25s; }
.collection-back:hover, .product-back:hover { color: #60a5fa !important; }
.product-wrapper .card-img-top, .product-img-placeholder {
  background: radial-gradient(ellipse at 50% 60%, #15151a, #0b0b0e 70%) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 16px !important;
  color: #60a5fa !important;
}
.main-image-wrap { border: 1px solid rgba(255,255,255,.08) !important; }
.gallery-thumb.active { border-color: #6399f1 !important; box-shadow: 0 0 14px rgba(99, 153, 241,.4) !important; }

/* ---------------------------------------------------------------------------
   Warenkorb
   ------------------------------------------------------------------------ */
.cart .section-title h1, .cart .section-title h2 {
  font-size: clamp(28px, 3.2vw, 38px) !important;
}
.cart-item-bg { overflow: hidden; }
.cart-image-container { background: radial-gradient(ellipse at 50% 60%, #15151a, #0b0b0e 70%); }
.cart-product-image { border-radius: 10px !important; }
.cart-product-link { color: #fff !important; transition: color .25s; }
.cart-product-link:hover { color: #60a5fa !important; }
.cart-variant-text { color: #a1a1aa !important; }
.cart-discount-text, .cart-addon-badge { color: #60a5fa !important; }
.cart-addon-badge { background: rgba(99, 153, 241,.12) !important; border: 1px solid rgba(99, 153, 241,.35) !important; border-radius: 999px; padding: 1px 8px; }
.cart-price-text { color: #fff !important; font-weight: 700 !important; }
.cart-quantity-controls {
  background: #0a0a0c !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 10px !important;
}
.cart-qty-btn { color: #60a5fa !important; width: 34px; height: 34px; transition: background .2s; }
.cart-qty-btn:hover { background: rgba(99, 153, 241,.15) !important; }
.cart-qty-input { background: transparent !important; color: #fff !important; }
.cart-remove-desktop, .cart-remove-mobile { color: #71717a !important; transition: color .25s, transform .3s; }
.cart-remove-desktop:hover, .cart-remove-mobile:hover { color: #f87171 !important; transform: scale(1.1); }
.cart-placeholder-icon { color: #60a5fa !important; }
.cart .form { position: sticky; top: 100px; }
.cart .form .fw-bold { color: #fff; }
.cart .form .pb-2.border-bottom { color: #60a5fa; font-weight: 600; }
/* Checkout als voller lila Button statt Outline */
.cart .form .btn-outline-primary {
  height: 50px;
  color: #fff !important;
  font-weight: 600;
  background: linear-gradient(180deg, #82b2ff, #6399f1) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: 0 0 0 3px rgba(99, 153, 241,.18) !important;
  transition: transform .25s cubic-bezier(.16,1,.3,1), box-shadow .25s !important;
}
.cart .form .btn-outline-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 0 3px rgba(99, 153, 241,.3), 0 10px 28px rgba(99, 153, 241,.35) !important;
}
.cart .form .btn-outline-primary:disabled { opacity: .5; transform: none; }
.cart .p-4.border.rounded.text-center { color: #a1a1aa; border-style: dashed !important; }

/* ---------------------------------------------------------------------------
   Formulare, Choices, Alerts, Modals
   ------------------------------------------------------------------------ */
.form-label { color: #a1a1aa !important; font-weight: 500; }
.form-control, .form-select, .choices__inner {
  background: #0a0a0c !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 10px !important;
  color: #fff !important;
}
.form-control::placeholder { color: #52525b; }
.form-control:focus, .form-select:focus, .is-focused .choices__inner {
  border-color: #6399f1 !important;
  box-shadow: 0 0 0 3px rgba(99, 153, 241,.2) !important;
}
.form-check-input:checked { background-color: #6399f1 !important; border-color: #6399f1 !important; }
.choices__list--dropdown, .choices__list[aria-expanded] { background: #0d0d10 !important; border-color: rgba(255,255,255,.1) !important; }
.choices__list--dropdown .choices__item--selectable.is-highlighted { background: rgba(99, 153, 241,.18) !important; }

.alert-warning, .alert-danger, .alert-info {
  background: rgba(99, 153, 241,.08) !important;
  border: 1px solid rgba(99, 153, 241,.35) !important;
  color: #e4e4e7 !important;
  border-radius: 12px !important;
}
.alert-danger { background: rgba(248,113,113,.08) !important; border-color: rgba(248,113,113,.35) !important; }

.modal-content { background: #0b0b0d !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 16px !important; }
.modal-header, .modal-footer { border-color: rgba(255,255,255,.08) !important; }
.modal-title { color: #fff; }
.modal .btn-close { filter: invert(1); opacity: .6; }
.modal-backdrop.show { opacity: .75; }
.spinner-border.text-primary { color: #6399f1 !important; }

/* ---------------------------------------------------------------------------
   Produktliste (/products), Kategorien, Pagination
   ------------------------------------------------------------------------ */
.btn-filters {
  color: #fff !important; background: #0a0a0c !important;
  border: 1px solid rgba(255,255,255,.1) !important; border-radius: 10px !important;
  transition: border-color .25s, color .25s;
}
.btn-filters:hover { border-color: #6399f1 !important; color: #93c5fd !important; }
.category-card.is-active { border-color: #6399f1 !important; background: linear-gradient(180deg, rgba(99, 153, 241,.14), #08080a) !important; }
.category-count { color: #60a5fa !important; }
.product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
@media (max-width: 991px) { .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .product-grid { grid-template-columns: 1fr; } }
.collection-blank i { color: #60a5fa; }

.pagination .page-link, nav[aria-label] a, nav[aria-label] span.relative {
  background: #0a0a0c !important; color: #d4d4d8 !important;
  border-color: rgba(255,255,255,.08) !important;
}
.pagination .page-item.active .page-link, nav[aria-label] [aria-current="page"] span {
  background: #6399f1 !important; border-color: #6399f1 !important; color: #fff !important;
}
.pagination .page-link:hover, nav[aria-label] a:hover { border-color: #6399f1 !important; color: #fff !important; }

/* ---------------------------------------------------------------------------
   AGB / Terms
   ------------------------------------------------------------------------ */
.terms-title { color: #fff !important; }
.terms-subtitle, .terms-last-updated { color: #a1a1aa !important; }
.terms-card-header { border-color: rgba(255,255,255,.08) !important; color: #fff; }
.terms-info-card-icon {
  color: #60a5fa !important;
  background: rgba(99, 153, 241,.12) !important;
  border: 1px solid rgba(99, 153, 241,.3) !important;
  box-shadow: none !important;
}
.terms-info-card-title { color: #fff !important; }
.terms-info-card-text { color: #a1a1aa !important; }
.tos-section-title { color: #60a5fa !important; }
.tos-divider { background: rgba(255,255,255,.08) !important; border-color: rgba(255,255,255,.08) !important; }
.terms-warning-banner {
  background: rgba(99, 153, 241,.08) !important;
  border: 1px solid rgba(99, 153, 241,.35) !important;
  color: #e4e4e7 !important;
}

/* ---------------------------------------------------------------------------
   Status
   ------------------------------------------------------------------------ */
.status-group h2, .status-group h3 { color: #60a5fa !important; }
.status-card .product-name { color: #fff !important; }
.status-icon { color: #60a5fa !important; }

/* ---------------------------------------------------------------------------
   Tickets
   ------------------------------------------------------------------------ */
.ticket-message, .message-bubble { border-radius: 12px !important; }
.ticket-message.is-customer, .message-bubble.customer { background: rgba(99, 153, 241,.15) !important; border: 1px solid rgba(99, 153, 241,.35) !important; }

/* Scrollbar */
html { scrollbar-color: #2a436b #000; }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #000; }
::-webkit-scrollbar-thumb { background: #223450; border-radius: 10px; border: 2px solid #000; }
::-webkit-scrollbar-thumb:hover { background: #6399f1; }

/* ---------------------------------------------------------------------------
   LILA-BLAU AKZENTE
   ------------------------------------------------------------------------ */
:root {
  --lb-grad: linear-gradient(135deg, #5c97f6 0%, #6399f1 50%, #3b82f6 100%);
}
::selection { background: #6399f1; color: #fff; }
.btn-primary, .btn-accent, button[type="submit"].btn {
  background: var(--lb-grad) !important;
  border-color: transparent !important;
  color: #fff !important;
}
.btn-primary:hover, .btn-accent:hover { filter: brightness(1.12); box-shadow: 0 10px 30px -10px rgba(99, 153, 241,.7) !important; }
.section-title h1 span, .section-title h2 span, .text-gradient {
  background: var(--lb-grad); -webkit-background-clip: text; background-clip: text; color: transparent !important;
}
