/* STLBEAST V299 Premium Storefront Rescue
   Purpose: restore a professional premium storefront feel after layout/image issues.
   Conservative override: no backend/product logic changes. */

:root{
  --beast-bg:#030712;
  --beast-panel:#07111f;
  --beast-panel-2:#0b1629;
  --beast-line:rgba(56,189,248,.28);
  --beast-blue:#18d8ff;
  --beast-blue-2:#2563eb;
  --beast-purple:#7c3aed;
  --beast-red:#ef4444;
  --beast-gold:#f59e0b;
  --beast-text:#f3f8ff;
  --beast-muted:#9fb3d1;
  --beast-radius:22px;
  --beast-shadow:0 26px 70px rgba(0,0,0,.46);
}

html,body{
  background:
    radial-gradient(circle at 18% 0%, rgba(37,99,235,.30), transparent 34%),
    radial-gradient(circle at 84% 9%, rgba(124,58,237,.22), transparent 36%),
    linear-gradient(180deg,#020617 0%,#06111f 44%,#030712 100%) !important;
  color:var(--beast-text);
  overflow-x:hidden;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(115deg, transparent 0 54%, rgba(24,216,255,.055) 54.3%, transparent 55%),
    linear-gradient(75deg, transparent 0 64%, rgba(124,58,237,.05) 64.2%, transparent 65%),
    radial-gradient(circle at 50% 18%, rgba(24,216,255,.05), transparent 34%);
  opacity:.85;
}

/* Header rescue */
header,
.site-header,
.store-header,
.main-header,
.topbar,
.navbar,
.stlbeast-header,
.beast-header{
  background:rgba(3,7,18,.92) !important;
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(56,189,248,.18) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.38) !important;
}

header img,
.site-header img,
.store-header img,
.main-header img,
.navbar img,
.stlbeast-header img,
.beast-header img{
  max-height:58px !important;
  width:auto !important;
  object-fit:contain !important;
}

header a,
.site-header a,
.store-header a,
.main-header a,
.navbar a,
.stlbeast-header a,
.beast-header a{
  color:#dbeafe !important;
  text-decoration:none;
}

header nav a,
.site-header nav a,
.store-header nav a,
.main-header nav a,
.navbar nav a,
.stlbeast-header nav a{
  color:#c8d7ef !important;
  font-weight:800 !important;
  letter-spacing:.01em;
}

header nav a:hover,
.site-header nav a:hover,
.store-header nav a:hover,
.main-header nav a:hover,
.navbar nav a:hover{
  color:var(--beast-blue) !important;
}

/* Search / form rescue */
input[type="search"],
input[type="text"],
input[type="email"],
input[type="password"],
select,
textarea{
  background:#07111f !important;
  border:1px solid rgba(56,189,248,.30) !important;
  color:#eaf4ff !important;
  border-radius:14px !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
}

input::placeholder,
textarea::placeholder{ color:#7186a6 !important; }

button,
.button,
.btn,
.cta,
.cta-button,
.primary-button,
.shop-button,
.add-to-cart,
.buy-button,
a.button{
  border-radius:14px !important;
  border:1px solid rgba(24,216,255,.28) !important;
  background:linear-gradient(135deg,#12d6ff,#2563eb 48%,#7c3aed) !important;
  color:white !important;
  font-weight:900 !important;
  box-shadow:0 16px 36px rgba(37,99,235,.26) !important;
  text-decoration:none !important;
}

/* Hero rescue */
.hero,
.hero-section,
.storefront-hero,
.home-hero,
.beast-hero,
.main-hero{
  background:
    radial-gradient(circle at 70% 34%, rgba(24,216,255,.18), transparent 34%),
    linear-gradient(135deg,rgba(7,17,31,.96),rgba(9,19,36,.92) 56%,rgba(3,7,18,.96)) !important;
  border:1px solid rgba(56,189,248,.22) !important;
  border-radius:28px !important;
  box-shadow:var(--beast-shadow) !important;
  overflow:hidden !important;
  position:relative;
}

.hero::before,
.hero-section::before,
.storefront-hero::before,
.home-hero::before,
.beast-hero::before,
.main-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(120deg,transparent 0 57%,rgba(24,216,255,.07) 57.2%,transparent 58%),
    radial-gradient(circle at 78% 42%,rgba(124,58,237,.12),transparent 36%);
}

.hero h1,
.hero-section h1,
.storefront-hero h1,
.home-hero h1,
.beast-hero h1,
.main-hero h1{
  color:#f8fbff !important;
  letter-spacing:-.06em !important;
  text-shadow:0 14px 44px rgba(0,0,0,.50);
}

.hero p,
.hero-section p,
.storefront-hero p,
.home-hero p,
.beast-hero p,
.main-hero p{
  color:#b8c8df !important;
  line-height:1.65 !important;
}

/* Remove cheap-looking outlines/grids when they are just decorative */
[class*="wire"],
[class*="grid-bg"],
[class*="blueprint"],
[class*="circuit"],
[class*="neon-lines"]{
  opacity:.28;
}

/* Section/card rescue */
section,
.card,
.panel,
.content-card,
.feature-card,
.collection-card,
.product-card,
.stl-product-card,
.product-tile,
.product-item,
.article-card,
.pricing-card,
.membership-card{
  min-width:0;
}

.card,
.panel,
.content-card,
.feature-card,
.collection-card,
.product-card,
.stl-product-card,
.product-tile,
.product-item,
.article-card,
.pricing-card,
.membership-card{
  background:linear-gradient(180deg,rgba(10,22,40,.96),rgba(5,12,24,.98)) !important;
  border:1px solid rgba(56,189,248,.18) !important;
  border-radius:22px !important;
  box-shadow:0 18px 46px rgba(0,0,0,.34) !important;
  overflow:hidden !important;
}

/* Product grid/card polish */
.product-grid,
.products-grid,
.featured-grid,
.collection-grid,
.catalog-grid,
.store-grid,
.shop-grid,
.validated-products-grid{
  gap:22px !important;
  align-items:stretch !important;
}

.product-card,
.stl-product-card,
.product-tile,
.product-item{
  display:flex !important;
  flex-direction:column !important;
  min-height:100% !important;
  padding:0 !important;
}

.product-card a,
.stl-product-card a,
.product-tile a,
.product-item a{
  color:inherit !important;
  text-decoration:none !important;
}

.product-card img,
.stl-product-card img,
.product-tile img,
.product-item img,
.product-image img,
.product-gallery img{
  width:100% !important;
  height:auto !important;
  max-height:360px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:
    radial-gradient(circle at 50% 48%, rgba(24,216,255,.12), transparent 42%),
    linear-gradient(180deg,#081426,#030712) !important;
  border-radius:16px !important;
  image-rendering:auto;
}

.product-card picture,
.stl-product-card picture,
.product-tile picture,
.product-item picture,
.product-image,
.product-media,
.card-image,
.product-thumb,
.product-card .image,
.stl-product-card .image{
  background:
    radial-gradient(circle at 50% 55%, rgba(24,216,255,.14), transparent 40%),
    linear-gradient(135deg,#07111f,#030712) !important;
  border-bottom:1px solid rgba(56,189,248,.16) !important;
  min-height:220px;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:14px !important;
}

/* Make the current Dragon in a Hoodie visual feel intentionally showcased */
img[src*="dragon"],
img[alt*="Dragon"],
img[alt*="dragon"]{
  filter:drop-shadow(0 22px 34px rgba(0,0,0,.62)) saturate(1.08) contrast(1.05);
  background:radial-gradient(circle at 50% 65%, rgba(24,216,255,.16), transparent 44%), #050b16 !important;
}

.product-card h2,
.product-card h3,
.stl-product-card h2,
.stl-product-card h3,
.product-tile h2,
.product-tile h3,
.product-item h2,
.product-item h3{
  color:#f8fbff !important;
  letter-spacing:-.02em;
  line-height:1.08 !important;
}

.product-card p,
.stl-product-card p,
.product-tile p,
.product-item p{
  color:#aebfd8 !important;
  line-height:1.52 !important;
}

.price,
.product-price,
.sale-price,
.amount{
  color:#22d3ee !important;
  font-weight:900 !important;
}

.badge,
.tag,
.product-badge,
.status,
.pill{
  background:rgba(24,216,255,.10) !important;
  color:#9ff3ff !important;
  border:1px solid rgba(24,216,255,.24) !important;
  border-radius:999px !important;
}

/* Product detail polish */
.product-detail,
.product-page,
.single-product,
.product-main{
  background:linear-gradient(180deg,rgba(7,17,31,.95),rgba(3,7,18,.98)) !important;
  border:1px solid rgba(56,189,248,.20) !important;
  border-radius:28px !important;
  box-shadow:var(--beast-shadow) !important;
}

.product-detail img,
.product-page img,
.single-product img{
  object-fit:contain !important;
}

/* Footer */
footer,
.site-footer,
.main-footer{
  background:#030712 !important;
  border-top:1px solid rgba(56,189,248,.16) !important;
  color:#9fb3d1 !important;
}

footer a,
.site-footer a,
.main-footer a{ color:#dbeafe !important; }

/* Mobile rescue */
@media(max-width:860px){
  header,
  .site-header,
  .store-header,
  .main-header,
  .navbar{
    position:relative !important;
  }

  header img,
  .site-header img,
  .store-header img,
  .main-header img,
  .navbar img{
    max-height:48px !important;
  }

  .hero,
  .hero-section,
  .storefront-hero,
  .home-hero,
  .beast-hero,
  .main-hero{
    border-radius:22px !important;
    margin-inline:10px !important;
  }

  .hero h1,
  .hero-section h1,
  .storefront-hero h1,
  .home-hero h1,
  .beast-hero h1,
  .main-hero h1{
    font-size:clamp(2rem,12vw,3.6rem) !important;
  }

  .product-grid,
  .products-grid,
  .featured-grid,
  .collection-grid,
  .catalog-grid,
  .store-grid,
  .shop-grid,
  .validated-products-grid{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  .product-card,
  .stl-product-card,
  .product-tile,
  .product-item{
    margin-inline:0 !important;
  }

  .product-card img,
  .stl-product-card img,
  .product-tile img,
  .product-item img{
    max-height:330px !important;
  }

  .product-card picture,
  .stl-product-card picture,
  .product-tile picture,
  .product-item picture,
  .product-image,
  .product-media,
  .card-image,
  .product-thumb{
    min-height:210px !important;
  }

  .actions,
  .cta-row,
  .button-row{
    flex-wrap:wrap !important;
  }
}

/* Prevent tiny icon/logo collapse in header and cards */
.logo img,
.brand img,
.site-logo img,
.header-logo img{
  min-height:34px;
}
