/* TI ZILL DIGITAL dark gaming theme for LiteCart catalog */
:root {
  --tz-bg: #050605;
  --tz-panel: rgba(18, 18, 18, 0.92);
  --tz-panel-2: rgba(28, 28, 28, 0.78);
  --tz-line: rgba(187, 255, 0, 0.25);
  --tz-green: #a6ff00;
  --tz-green-2: #37ff00;
  --tz-text: #f6f6f6;
  --tz-muted: #a6a6a6;
  --site-background-color: var(--tz-bg);
  --default-background-color: #0b0c0b;
  --default-text-color: var(--tz-text);
  --default-text-font: Inter, Arial, Helvetica, sans-serif;
  --link-text-color: var(--tz-green);
  --navigation-background-color: rgba(5, 6, 5, 0.88);
  --navigation-text-color: #ffffff;
  --card-background-color: var(--tz-panel);
  --card-text-color: var(--tz-text);
  --card-border-color: rgba(166, 255, 0, 0.18);
  --input-background-color: rgba(255,255,255,.06);
  --input-text-color: #fff;
  --primary-button-background-color: var(--tz-green);
  --primary-button-background-color-hover: #c7ff52;
  --primary-button-text-color: #071004;
  --success-button-background-color: var(--tz-green);
}

html, body { background: var(--tz-bg); color: var(--tz-text); }
body {
  background:
    radial-gradient(circle at 77% 5%, rgba(166,255,0,.13), transparent 26rem),
    radial-gradient(circle at 18% 18%, rgba(55,255,0,.08), transparent 22rem),
    linear-gradient(180deg, #080908 0%, #030403 100%);
}

body:before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .18;
  background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 72px 72px;
  z-index: -1;
}

#page-container { min-height: 100vh; }
#site-menu {
  position: sticky;
  top: 0;
  z-index: 100;
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(166,255,0,.15);
  box-shadow: 0 18px 45px rgba(0,0,0,.35);
}
.navbar, .navbar-sticky { background: transparent !important; color: #fff; }
.navbar-header { padding: 1rem 0; }
.logotype img { max-height: 44px; filter: drop-shadow(0 0 14px rgba(166,255,0,.22)); }
.navbar .nav-link, .quick-access a, .navbar-icon, .offcanvas-title { color: #fff !important; }
.navbar .nav-link:hover, .quick-access a:hover { color: var(--tz-green) !important; }
.navbar-search input { border: 1px solid rgba(166,255,0,.18); background: rgba(255,255,255,.06); color:#fff; }

.btn, button, input[type="submit"], input[type="button"], .button {
  border-radius: 999px !important;
  border: 1px solid rgba(166,255,0,.25) !important;
  box-shadow: 0 0 22px rgba(166,255,0,.10);
}
.btn-primary, input[name="add_cart_product"], .button.primary {
  background: var(--tz-green) !important;
  color: #071004 !important;
}

.tz-hero {
  position: relative;
  overflow: hidden;
  margin: 1.5rem 0 2rem;
  padding: clamp(3.5rem, 8vw, 7rem) 1.25rem;
  border: 1px solid rgba(166,255,0,.16);
  border-radius: 28px;
  text-align: center;
  background:
    radial-gradient(ellipse at 50% 115%, rgba(166,255,0,.35), transparent 34%),
    radial-gradient(circle at 50% -20%, rgba(166,255,0,.18), transparent 36%),
    linear-gradient(180deg, rgba(20,20,20,.95), rgba(3,4,3,.98));
  box-shadow: 0 30px 90px rgba(0,0,0,.62);
}
.tz-hero:before {
  content: "";
  position: absolute;
  left: -10%; right: -10%; bottom: -45%;
  height: 65%;
  border-radius: 50% 50% 0 0;
  border-top: 3px solid rgba(166,255,0,.72);
  filter: blur(.2px) drop-shadow(0 0 26px rgba(166,255,0,.44));
}
.tz-hero > * { position: relative; z-index: 1; }
.tz-badge { display:inline-block; padding:.35rem .75rem; margin-bottom:1rem; border:1px solid rgba(166,255,0,.35); border-radius:999px; background:rgba(166,255,0,.08); color:var(--tz-green); font-weight:700; font-size:.85rem; }
.tz-hero h1 { margin:0 auto 1rem; max-width:920px; font-size:clamp(2.3rem, 7vw, 5.4rem); line-height:.95; letter-spacing:-.06em; color:#fff; }
.tz-hero h1 span { color: var(--tz-green); text-shadow: 0 0 30px rgba(166,255,0,.22); }
.tz-hero p { max-width:680px; margin:0 auto 1.7rem; color:var(--tz-muted); font-size:clamp(1rem, 2vw, 1.2rem); }
.tz-actions { display:flex; gap:.85rem; justify-content:center; flex-wrap:wrap; }
.tz-actions a { padding:.9rem 1.25rem; border-radius:999px; font-weight:700; text-decoration:none; }
.tz-actions .primary { background:var(--tz-green); color:#071004; }
.tz-actions .secondary { color:#fff; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.06); }

.tz-strip { margin: 1rem 0 2rem; padding:.85rem 0; overflow:hidden; white-space:nowrap; border-block:1px solid rgba(166,255,0,.25); background:var(--tz-green); color:#071004; font-weight:800; letter-spacing:.02em; }
.tz-strip span { display:inline-block; margin: 0 1.6rem; }

#content-wrapper .fourteen-forty { max-width: 1440px; }
.box, .card, .listing-products .product, .listing-categories .category, .product-column, .product-card {
  background: var(--tz-panel) !important;
  border: 1px solid rgba(166,255,0,.16) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.42) !important;
}
.box h2, .card-header, h1, h2, h3 { color:#fff; }
.price, .campaign-price, .regular-price { color: var(--tz-green) !important; font-weight: 800; }

#box-site-footer { background:#020302 !important; border-top:1px solid rgba(166,255,0,.18); color:var(--tz-muted); }
#scroll-up .fa { color: var(--tz-green) !important; }

@media (max-width: 767px) {
  .tz-hero { border-radius: 20px; }
  .navbar-header { gap: .7rem; }
}
/* Fix white text/background issues in TI ZILL dark theme */

/* Product/category cards */
.card,
.card-body,
.box,
.list-group-item,
.product-column,
.product-card,
.category-card {
  background: #121212 !important;
  color: #ffffff !important;
}

/* Category name under images */
.card-title,
.card-body a,
.product-column a,
.category-card a {
  color: #ffffff !important;
}

/* Dropdown menus */
.dropdown-menu,
.dropdown-menu li,
.dropdown-menu a {
  background: #111111 !important;
  color: #ffffff !important;
}

.dropdown-menu a:hover,
.dropdown-menu a:focus {
  background: #9cff00 !important;
  color: #000000 !important;
}

/* Technical data table */
table,
.table,
.table tbody,
.table tr,
.table td,
.table th {
  background: #121212 !important;
  color: #ffffff !important;
  border-color: #2a2a2a !important;
}

.table-striped > tbody > tr:nth-of-type(odd),
.table-striped > tbody > tr:nth-of-type(even) {
  background: #181818 !important;
}

/* Search bar */
input,
input[type="text"],
input[type="search"],
.form-control,
select,
textarea {
  background: #111111 !important;
  color: #ffffff !important;
  border: 1px solid #9cff00 !important;
}

input::placeholder,
.form-control::placeholder {
  color: #aaaaaa !important;
}

/* Search dropdown/autocomplete */
.tt-menu,
.tt-dropdown-menu,
.autocomplete,
.ui-autocomplete {
  background: #111111 !important;
  color: #ffffff !important;
  border: 1px solid #9cff00 !important;
}

.tt-suggestion,
.ui-menu-item,
.ui-menu-item-wrapper {
  background: #111111 !important;
  color: #ffffff !important;
}

.tt-suggestion:hover,
.ui-menu-item-wrapper:hover {
  background: #9cff00 !important;
  color: #000000 !important;
}

/* Side menu / categories */
.nav,
.nav a,
.list-group,
.list-group a {
  color: #ffffff !important;
}

.list-group-item:hover,
.list-group a:hover {
  background: #9cff00 !important;
  color: #000000 !important;
}
/* ================================
   SAFE FIX: Footer + Product Cards
   ================================ */

/* Footer white section fix */
#footer,
footer,
footer .container,
#box-footer,
#box-footer .container,
#copyright {
  background: #050805 !important;
  color: #ffffff !important;
}

#footer *,
footer *,
#box-footer *,
#copyright * {
  color: #ffffff !important;
}

#footer a,
footer a,
#box-footer a {
  color: #d8ffd8 !important;
}

#footer a:hover,
footer a:hover,
#box-footer a:hover {
  color: #9cff00 !important;
}


/* Homepage category cards text area */
#box-categories .card-body,
#box-categories .caption,
#box-categories .name,
#box-categories a,
.category-card .card-body,
.category-card .caption,
.category-card .name,
.category-card a {
  background: #111111 !important;
  color: #ffffff !important;
}


/* Product listing cards text area only */
.product-column .card-body,
.product-column .caption,
.product-column .name,
.product-column .description,
.product-column a,
.product-card .card-body,
.product-card .caption,
.product-card .name,
.product-card a {
  background: #111111 !important;
  color: #ffffff !important;
}


/* Product names */
.product-column .name,
.product-column .name a,
.product-card .name,
.product-card .name a,
.category-card .name,
.category-card .name a {
  color: #ffffff !important;
}


/* Manufacturer / small text */
.product-column small,
.product-card small,
.product-column .manufacturer,
.product-card .manufacturer {
  color: #cfcfcf !important;
}


/* Keep price green */
.product-column .price,
.product-column .price *,
.product-card .price,
.product-card .price *,
.price {
  color: #9cff00 !important;
}


/* Prevent the white card body from showing */
.product-column .card,
.product-card .card,
.category-card,
.category-card .card {
  background: #111111 !important;
  border-color: #2f7a00 !important;
}

/* Final fix for white product card rectangle */
.product-column .card,
.product-column .card > a,
.product-column .card .card-body,
.product-column .card .card-footer,
.product-column .card .caption,
.product-column .card .name,
.product-column .card .description,
.product-column .card .manufacturer,
.product-column .card .sku,
.product-column .card .stock-status {
  background-color: #111111 !important;
  background: #111111 !important;
  color: #ffffff !important;
}

/* LiteCart product boxes sometimes use these */
.product-column .thumbnail,
.product-column .thumbnail > a,
.product-column .info,
.product-column .body,
.product-column .details {
  background-color: #111111 !important;
  background: #111111 !important;
  color: #ffffff !important;
}

/* Product text */
.product-column .card a,
.product-column .thumbnail a,
.product-column .name a {
  color: #ffffff !important;
}

/* Keep price green */
.product-column .price,
.product-column .price * {
  color: #9cff00 !important;
}