/* ==========================================================================
   Gaming Lite – static site overrides (loaded last)
   The original theme relied on the WordPress Dashicons font, which is not
   bundled with a static site. Icons are drawn with Font Awesome instead.
   ========================================================================== */

/* Dashicons replacement (class names kept so the theme CSS still matches) */
.dashicons {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-style: normal;
  line-height: 1;
  display: inline-block;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
}
.dashicons-menu:before { content: "\f0c9"; }
.dashicons-no:before { content: "\f00d"; }
.dashicons-yes:before { content: "\f00c"; }
.dashicons-arrow-up-alt:before { content: "\f062"; }
.dashicons-arrow-down-alt2:before { content: "\f078"; }

/* Site title: the header was a <div> in WordPress; it is now a heading. Keep it looking the same. */
.logo-content h1.site-title,
.logo-content p.site-title {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

/* Sticky header position on the homepage (was applied to #site-navigation, now on the header element) */
.page-template-frontpage header.header { margin-left: 45px; }

/* Preloader: fade out instead of jQuery fadeOut() */
.cssloader { transition: opacity 0.6s ease, visibility 0.6s ease; }
.cssloader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }

/* Mobile side menu close button is a <button> now */
button.closebtn { border: 0; cursor: pointer; }
.toggle-nav button.gl-menu-open { background: transparent; border: 0; padding: 0; cursor: pointer; }

/* Slider: Owl Carousel markup without the Owl JavaScript.
   Without JS the slides stack vertically (readable); with JS they slide horizontally. */
.owl-carousel.owl-loaded { display: block; }
.owl-carousel .owl-stage-outer { overflow: hidden; }
.owl-carousel.is-ready .owl-stage { display: flex; will-change: transform; }
.owl-carousel.is-ready .owl-item { float: none; flex: 0 0 100%; margin-right: 20px; }
.owl-carousel:not(.is-ready) .owl-nav { display: none; }
.slider .owl-carousel.align-center .blog_box { text-align: center; right: 30%; left: 30%; }
.slider .owl-carousel.align-right .blog_box { text-align: right; right: 15%; left: 55%; }

/* Product dropdown uses the hidden attribute now */
#latest_game .product-cat[hidden] { display: none !important; }

/* Game cards and buttons (replace WooCommerce markup) */
.game-rating { color: #ffc107; letter-spacing: 2px; font-size: 14px; }
.game-rating .far { color: #ffc107; }
.game-price { display: block; font-weight: 600; margin: 6px 0; }
.gl-button {
  display: inline-block;
  padding: 0.5rem 1.1rem;
  border-radius: 4px;
  background: var(--first-color);
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.3s ease;
}
.gl-button:hover,
.gl-button:focus { background: var(--second-color); color: #fff !important; }
.cart-button .button1 .gl-button { font-size: 14px; }
.game-facts li { margin-bottom: 0.4rem; }
.game-facts .game-rating { font-size: 13px; }
.game-cover img { width: 100%; height: auto; border-radius: 6px; }
.rating-text { margin-left: 6px; }

/* Search */
.gl-search-page { display: flex; flex-wrap: wrap; gap: 8px; }
.gl-search-page .search-field { flex: 1 1 260px; padding: 10px 14px; border: 1px solid #ccc; border-radius: 4px; }
.gl-search-page .search-submit { padding: 10px 18px; border: 0; border-radius: 4px; background: var(--first-color); color: #fff; font-weight: 600; cursor: pointer; }
.search-result { border-bottom: 1px solid rgba(0, 0, 0, 0.08); padding-bottom: 1rem; }
.gl-404-search { max-width: 480px; margin: 0 auto; }

/* Tables from Markdown (game specs and review scores) */
.table-responsive { overflow-x: auto; }
.table-responsive table { width: 100%; margin: 1.5rem 0; border-collapse: collapse; }
.table-responsive th,
.table-responsive td { padding: 0.6rem 0.8rem; border-bottom: 1px solid rgba(0, 0, 0, 0.1); text-align: left; }

/* Long words in article bodies must not overflow narrow screens */
.post-content { overflow-wrap: anywhere; }
.post-content img { max-width: 100%; height: auto; }

/* Keep screen-reader helpers hidden even where the theme overrides them */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }

/* Focus styles for keyboard users */
a:focus-visible, button:focus-visible, input:focus-visible, .dashicons[role="button"]:focus-visible {
  outline: 3px solid var(--first-color);
  outline-offset: 2px;
}

/* Reduced motion: no slider or scroll animation */
@media (prefers-reduced-motion: reduce) {
  .owl-carousel.is-ready .owl-stage { transition: none !important; }
  .wow { visibility: visible !important; animation: none !important; }
}

/* Mobile close button: hidden on desktop, shown below the navigation breakpoint (same rule as a.closebtn in the theme) */
button.closebtn { display: none; }
@media (max-width: 1199.98px) {
  button.closebtn.mobile-menu { display: block; }
}

/* Slider titles are links now; keep them white like the theme's h3 */
.blog_box h3 a { color: #fff; }
.blog_box h3 a:hover { color: var(--first-color); }
