/* BLAZIEST LIMITED — V5.2 UNIFIED SITE IDENTITY
   Installed last after page CSS; does not rewrite product/checkout/admin layouts.
   Switzer fonts are user-owned: put their originals in /fonts/.
*/

@font-face {
  font-family: "Blaziest Switzer";
  src: url("./fonts/Switzer-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: "Blaziest Switzer";
  src: url("./fonts/Switzer-VariableItalic.ttf") format("truetype");
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
}


/* Use one text family, retaining Blaziest's original wordmark and Impact/Bebas display headings. */
.bz-storefront { font-family: "Blaziest Switzer", Arial, sans-serif; }
.bz-storefront :is(button,input,select,textarea) { font-family: "Blaziest Switzer", Arial, sans-serif; }
.bz-storefront :is(.brand,.m-brand) { font-family: Arial, Helvetica, sans-serif; }
.bz-storefront .site-header .nav-list a { font-family: "Blaziest Switzer", Arial, sans-serif; }
.bz-storefront .site-header .header-actions .bz-header-action { font-family: "Blaziest Switzer", Arial, sans-serif; }

/* Same announcement sentence used by Homepage V5.1. */
.bz-storefront .bz-v5-announcement {
  display:flex; justify-content:center; align-items:center;
  background:#0b0b0b; color:#f5f5f5; min-height:26px;
  padding:0; overflow:hidden;
  font-family:"Blaziest Switzer",Arial,sans-serif;
  font-size:9px; font-weight:500; line-height:1.2; letter-spacing:0;
}
.bz-storefront .bz-v5-announcement-track { display:flex; align-items:center; min-width:max-content; gap:65px; }
.bz-storefront .bz-v5-announcement-track span { display:block; padding:7px 10px; white-space:nowrap; }
.bz-storefront .bz-v5-announcement-track span:nth-child(2) { display:none; }

@media (min-width:769px) {
  /* Truly centered wordmark: balanced left/right grid tracks across all storefront pages. */
  .bz-storefront .site-header .header-inner {
    display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    min-height:74px; gap:22px; align-items:center;
  }
  .bz-storefront .site-header .brand {
    grid-column:2; grid-row:1;
    font-size:clamp(29px,3vw,37px);
  }
  .bz-storefront .site-header .site-nav { grid-column:1; grid-row:1; margin:0; min-width:0; }
  .bz-storefront .site-header .nav-list { gap:clamp(14px,1.9vw,32px); flex-wrap:nowrap; }
  .bz-storefront .site-header .nav-list a { font-size:10px; }
  .bz-storefront .site-header .header-actions {
    grid-column:3; grid-row:1; justify-content:flex-end; min-width:0;
  }
  .bz-storefront .site-header .header-actions .bz-desktop-search { display:none; }
  .bz-storefront .site-header .header-actions .bz-cart-action > span:not(.bz-desktop-count) { display:none; }
}
@media (min-width:769px) and (max-width:940px) {
  .bz-storefront .site-header .nav-list { gap:12px; }
  .bz-storefront .site-header .nav-list a { font-size:9px; }
  .bz-storefront .site-header .header-actions { gap:14px; }
}

/* Mobile: menu | mathematically centered wordmark | account + bag.
   Search lives beside the close X in the navigation drawer on every page. */
@media (max-width:768px) {
  .bz-storefront .bz-v5-announcement { min-height:25px; justify-content:flex-start; font-size:8px; }
  .bz-storefront .bz-v5-announcement-track {
    gap:60px; animation:bzUnifiedAnnouncement 27s linear infinite;
  }
  .bz-storefront .bz-v5-announcement-track span:nth-child(2) { display:block; }

  .bz-storefront .m-header .m-row {
    position:relative; display:flex; align-items:center;
    justify-content:space-between; gap:0; height:60px; min-height:60px;
    padding-inline:12px;
  }
  .bz-storefront .m-header .m-brand {
    position:absolute; left:50%; top:50%;
    transform:translate(-50%,-50%);
    justify-self:auto; z-index:1; font-size:clamp(19px,5vw,24px);
  }
  .bz-storefront .m-header #mMenuBtn,
  .bz-storefront .m-header .m-right { position:relative; z-index:2; }
  .bz-storefront .m-header .m-right { display:flex; margin-left:auto; gap:0; align-items:center; }
  .bz-storefront .m-header .bz-v5-account { color:#111; }
  .bz-storefront .m-header .bz-v5-account svg {
    fill:none; stroke:currentColor; stroke-width:1.7;
    stroke-linecap:round; stroke-linejoin:round;
  }
  .bz-storefront .m-drawer .bz-drawer-actions {
    display:flex; align-items:center; justify-content:flex-end;
    gap:4px; margin-left:auto; flex:0 0 auto;
  }
  .bz-storefront .m-drawer-head .bz-drawer-search {
    color:#fff; display:inline-flex; justify-content:center; align-items:center;
    height:43px; min-width:43px; width:43px; padding:0; text-decoration:none;
  }
  .bz-storefront .m-drawer-head .bz-drawer-search svg {
    width:22px; height:22px; fill:none;
    stroke:currentColor; stroke-width:1.8;
    stroke-linecap:round; stroke-linejoin:round;
  }
}
@media(max-width:360px) {
  .bz-storefront .m-header .m-row { padding-inline:6px; }
  .bz-storefront .m-header .m-brand { font-size:19px; }
  .bz-storefront .m-header .m-btn { width:38px; min-width:38px; }
}
@keyframes bzUnifiedAnnouncement { to { transform:translateX(-50%); } }
@media(prefers-reduced-motion:reduce) {
  .bz-storefront .bz-v5-announcement-track { animation:none; }
}

/* Auth flows are intentionally standalone. Keep their black background and modal layout. */
.auth-page, .auth-page :is(button,input,select,textarea) {
  font-family:"Blaziest Switzer",Arial,sans-serif;
}


/* BLAZIEST V5.3.1 — Official social accounts / shared footer only.
   These selectors do not affect cards, cart, checkout, or header. */
.bz-storefront .site-footer .bz-footer-social {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 17px;
  width: 100%;
  padding: 28px 20px calc(32px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid #e8e8e8;
  background: #fff;
  color: #111315;
}
.bz-storefront .site-footer .bz-footer-social-title {
  margin: 0;
  color: #555b5e;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: .14em;
  text-align: center;
  text-transform: uppercase;
}
.bz-storefront .site-footer .bz-footer-social-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 5vw, 34px);
}
.bz-storefront .site-footer .bz-footer-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 44px;
  color: #111315;
  background: transparent;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .065em;
  line-height: 1.2;
  text-decoration: none;
  transition: opacity .15s ease;
}
.bz-storefront .site-footer .bz-footer-social-link:hover { opacity: .72; }
.bz-storefront .site-footer .bz-footer-social-link:focus-visible {
  outline: 2px solid #111315;
  outline-offset: 4px;
}
.bz-storefront .site-footer .bz-footer-social-icon {
  display: flex;
  flex: none;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #111315;
}
.bz-storefront .site-footer .bz-footer-social-icon svg {
  display: block;
  width: 21px;
  height: 21px;
}
@media (max-width: 360px) {
  .bz-storefront .site-footer .bz-footer-social-links { gap: 13px; }
  .bz-storefront .site-footer .bz-footer-social-link { gap: 6px; font-size: 10px; }
  .bz-storefront .site-footer .bz-footer-social-icon { width: 35px; height: 35px; }
}
@media (prefers-reduced-motion: reduce) {
  .bz-storefront .site-footer .bz-footer-social-link { transition: none; }
}


/* V5.3.2 / OFFICIAL BLAZIEST NAVIGATION WORDMARK
   Original transparent PNG supplied by the brand; shared site headers only.
   Preserves accessible logo links and all existing header controls. */
.bz-storefront .site-header .brand,
.bz-storefront .m-header .m-brand,
.bz-storefront .m-drawer-head .m-brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  text-decoration: none;
  line-height: 1;
  padding: 0;
}
.bz-storefront .site-header .brand {
  width: clamp(155px, 12vw, 190px);
}
.bz-storefront :is(.site-header .brand, .m-header .m-brand, .m-drawer-head .m-brand) .bz-official-nav-logo {
  display: block;
  width: 70%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  border: none;
  background: none;
  box-shadow: none;
}
/* The drawer is dark; show the same black PNG as a white wordmark via CSS. */
.bz-storefront .m-drawer-head .bz-official-nav-logo {
  filter: brightness(0) invert(1);
}
@media (max-width: 768px) {
  .bz-storefront .m-header .m-brand {
    width: clamp(114px, 35vw, 140px);
  }
  .bz-storefront .m-drawer-head .m-brand {
    width: clamp(120px, 40vw, 148px);
  }
}
@media (max-width: 360px) {
  .bz-storefront .m-header .m-brand { width: 118px; }
  .bz-storefront .m-drawer-head .m-brand { width: 120px; }
}


/* BLAZIEST V5.5 / minimal shared footer — Quick Links + Customer Support + icons. */
.bz-storefront .site-footer .footer-grid:not(.bz-footer-minimal-grid) > :not(:nth-child(2)):not(:nth-child(3)) { display: none; }
.bz-storefront .site-footer { background: #fff; padding: 46px 0 0; }
.bz-storefront .site-footer .footer-grid.bz-footer-minimal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(28px, 7vw, 110px);
  width: min(750px, 100%);
  max-width: 750px;
  padding: 0 clamp(20px, 5vw, 45px) 37px;
  margin: 0 auto;
}
.bz-storefront .site-footer .bz-footer-minimal-grid h4 {
  font-family: "Blaziest Switzer", Arial, sans-serif;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: .025em;
  text-transform: none;
  margin-bottom: 18px;
}
.bz-storefront .site-footer .bz-footer-minimal-grid ul { padding: 0; margin: 0; list-style: none; }
.bz-storefront .site-footer .bz-footer-minimal-grid li { margin-bottom: 7px; }
.bz-storefront .site-footer .bz-footer-social {
  padding: 19px 16px calc(28px + env(safe-area-inset-bottom, 0px));
  gap: 0;
}
.bz-storefront .site-footer .bz-footer-social-links { gap: 16px; }
.bz-storefront .site-footer .bz-footer-social-link { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
.bz-storefront .site-footer .bz-footer-social-icon { width: 38px; height: 38px; }
/* Fieldsets can be hidden even when legacy responsive CSS forces display. */
.bz-storefront .variant-group[hidden], .bz-storefront .variant-block[hidden] { display: none !important; }
@media(max-width: 520px) {
  .bz-storefront .site-footer .footer-grid.bz-footer-minimal-grid { gap: 24px; padding-inline: 20px; }
  .bz-storefront .site-footer .bz-footer-minimal-grid h4 { font-size: 12px; }
}


/* NEW RELEASE — compact editorial tag beneath homepage prices.
   Shop and product details keep their existing positions; stock/preorder remain independent. */
.bz-storefront .bz-release-badge {
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  max-width:100%; width:max-content; box-sizing:border-box;
  background:#111315; color:#fff; border:0; border-radius:2px;
  padding:7px 11px 7px 15px; overflow:hidden;
  font-family:"Blaziest Switzer",Arial,sans-serif;
  font-size:10px; font-weight:800; line-height:1.2; letter-spacing:.12em;
  text-transform:uppercase; white-space:nowrap; pointer-events:none;
}
.bz-storefront .bz-release-badge::before {
  content:""; position:absolute; inset:0 auto 0 0; width:4px;
  background:#db202a;
}
/* Put the badge after the price, keeping every homepage title and price aligned. */
.bz-homepage .bz-daily-product-link > .bz-release-badge {
  display:flex; margin:9px auto 0;
  padding:5px 9px 5px 12px;
  font-size:9px; font-weight:700; letter-spacing:.09em;
}
.bz-homepage .bz-daily-product-link > .bz-release-badge::before { width:3px; }
/* Shop product info is left-aligned, like the approved mockup. */
.bz-storefront.bz-shop .shop-products .product-info > .bz-release-badge {
  align-self:flex-start; margin:0 0 9px;
}
/* Product detail: override the earlier generic badge rule, not preorder. */
.bz-storefront.bz-product .product-detail-meta .bz-release-badge {
  position:relative; background:#111315; color:#fff; border:0;
  padding:7px 11px 7px 15px; border-radius:2px;
}
.bz-admin .bz-release-admin {
  display:grid; gap:8px; margin:12px 0; padding:12px;
  border:1px solid #d5d5d5; border-radius:2px; background:#fafaf9;
  font-family:"Blaziest Switzer",Arial,sans-serif;
}
.bz-admin .bz-release-admin-heading {display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px; align-items:center;}
.bz-admin .bz-release-admin-heading strong {font-size:11px; letter-spacing:.06em;}
.bz-admin .bz-release-admin-state {font-size:10px; color:#555; font-weight:700;}
.bz-admin .bz-release-admin label {display:grid; gap:4px; font-size:11px; font-weight:600;}
.bz-admin .bz-release-admin :is(select,input) {
  width:100%; min-width:0; box-sizing:border-box; background:#fff;
  border:1px solid #aaa; border-radius:2px; padding:8px; font-size:12px; color:#111;
}
.bz-admin .bz-release-admin .bz-release-save {width:100%; min-height:36px; font-size:10px;}
.bz-admin .bz-release-admin-hint {font-size:10px; color:#666; line-height:1.45;}
.bz-admin .bz-release-expiry-field[hidden] {display:none;}
@media (max-width:380px) {
  .bz-storefront.bz-shop .shop-products .product-info > .bz-release-badge,
  .bz-homepage .bz-daily-product-link > .bz-release-badge {
    padding:6px 8px 6px 12px; font-size:8px; letter-spacing:.08em;
  }
  .bz-storefront .bz-release-badge::before { width:3px; }
}
/* Stocks product groups */
.bz-admin .admin-table .stock-variant-row[hidden] { display: none; }
.bz-admin .admin-table .stock-product-row td { padding: 0; }
.bz-admin .admin-table .stock-product-toggle {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  width: 100%; text-align: left; border: 0; border-radius: 0;
  padding: 16px 18px; background: #fff; color: #181b1c; font-size: 13px;
}
.bz-admin .admin-table .stock-product-toggle:hover,
.bz-admin .admin-table .stock-product-toggle:focus-visible { background: #f5f5f2; color: #181b1c; }
.bz-admin .stock-product-label { display: grid; gap: 4px; }
.bz-admin .stock-product-name { font-size: 14px; font-weight: 800; }
.bz-admin .stock-product-details { color: #656a68; font-size: 11px; font-weight: 500; }
.bz-admin .stock-product-action { color: #343a38; font-size: 11px; white-space: nowrap; }
.bz-admin .stocks-table .stock-variant-heading th { background: #f1f1ee; color: #555c59; padding: 9px 12px; text-align: left; font-size: 10px; text-transform: uppercase; letter-spacing: .05em; }
