/* Reseller Hat V180 — consolidated base/sitewide visual CSS. */

/* V181 — FINAL single-product mobile description + quantity overrides.
 * Loaded sitewide so these rules win over the older smart-design card styling.
 * Presentation only; no product, variation, quantity logic or cart behavior changes.
 */
@media (max-width: 767px) {
  body.single-product .product-footer {
    /* Keep the description after the product CTA and Share row; never pull it upward. */
    margin-top: 20px !important;
    padding-top: 0 !important;
    position: relative !important;
    z-index: 5 !important;
  }

  body.single-product .product-footer > .container,
  body.single-product .product-footer .woocommerce-tabs,
  body.single-product .product-footer .tab-panels {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body.single-product .woocommerce-Tabs-panel--description,
  body.single-product #tab-description,
  body.single-product #tab-description .product-container {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  body.single-product .woocommerce-Tabs-panel--description {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 4px 12px 24px !important;
  }

  body.single-product #tab-description > ol:first-child {
    margin: 0 0 14px !important;
    padding: 0 !important;
  }

  body.single-product #tab-description .product-container {
    margin: 0 !important;
    padding: 0 !important;
  }

  body.single-product .quantity.buttons_added .minus.button,
  body.single-product .quantity.buttons_added .plus.button {
    background: #a58be8 !important;
    background-image: none !important;
    border-color: #a58be8 !important;
    color: #fff !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  body.single-product .quantity.buttons_added .minus.button:hover,
  body.single-product .quantity.buttons_added .plus.button:hover,
  body.single-product .quantity.buttons_added .minus.button:focus,
  body.single-product .quantity.buttons_added .plus.button:focus,
  body.single-product .quantity.buttons_added .minus.button:active,
  body.single-product .quantity.buttons_added .plus.button:active {
    background: #9478df !important;
    background-image: none !important;
    border-color: #9478df !important;
    color: #fff !important;
  }

  body.single-product .quantity.buttons_added .qty {
    background: #fff !important;
    border-color: #dfe4ec !important;
    color: #344054 !important;
    box-shadow: none !important;
  }
}



/* Fix long unified product/blog headings: the title was inline, so width constraints did not apply. */
.rhat-page-heading {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
.rhat-page-heading__inner {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
.rhat-page-heading__title {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  hyphens: auto;
}
@media (min-width: 768px) {
  .rhat-page-heading { overflow: hidden !important; }
  .rhat-page-heading__inner { margin-left: 0 !important; margin-right: 0 !important; }
}

/* rhat-mobile-notification-pwa — original hook priority 100 */
.rhat-notifications-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.rhat-notifications-head h3{margin:0;font-size:24px}.rhat-notifications-head span{font-size:12px;opacity:.65}.rhat-notification-mark-all button,.rhat-notification-actions button,.rhat-notification-actions a{border:0;border-radius:9px;padding:7px 10px;font-size:12px;font-weight:700;text-decoration:none;cursor:pointer;background:#eef2f7;color:#18202d}.rhat-notification-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.rhat-notification-open{background:#002f5b!important;color:#fff!important}.rhat-notification-card{display:flex;gap:12px;padding:15px;margin:10px 0;border:1px solid rgba(0,47,91,.08);border-radius:16px;background:#fff;box-shadow:0 5px 20px rgba(0,0,0,.05)}.rhat-notification-card.is-unread{border-color:rgba(0,47,91,.18);box-shadow:0 7px 24px rgba(0,0,0,.08)}.rhat-notification-card__icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#fff3e5;color:#002f5b;flex:0 0 38px}.rhat-notification-card__body{min-width:0;flex:1}.rhat-notification-card__body strong{display:block}.rhat-notification-card__body p{margin:5px 0;font-size:13px;line-height:1.5}.rhat-notification-card__body small{opacity:.55}

/* Phase 65: remove browser tap/focus/active background from ALL mobile header icons. */
@media (max-width: 767px) {
  .site-header a,
  .site-header button,
  .site-header a:hover,
  .site-header a:focus,
  .site-header a:active,
  .site-header button:hover,
  .site-header button:focus,
  .site-header button:active,
  #masthead a,
  #masthead button,
  #masthead a:hover,
  #masthead a:focus,
  #masthead a:active,
  #masthead button:hover,
  #masthead button:focus,
  #masthead button:active {
    background: transparent !important;
    background-color: transparent !important;
    -webkit-tap-highlight-color: transparent !important;
  }
}

/* V182 — contain long product/blog/archive titles inside the content column.
 * Keep title backgrounds and headings from crossing into the desktop sidebar.
 * Wrapping only; no title text, breadcrumbs, SEO metadata, or commerce behavior changes.
 */
.page-header-wrapper,
.page-title,
.page-title-inner,
.page-title .title-wrapper,
.page-title .entry-title,
.rhat-blog-page-heading,
.rhat-blog-page-heading-inner,
.rhat-blog-page-heading h1,
body.single-product .product-title,
body.single-product .product-info,
body.single-post .entry-header,
body.single-post .entry-title,
body.blog .entry-title,
body.archive .entry-title,
body.woocommerce .term-description {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

.page-header-wrapper,
.page-title {
  width: 100%;
}

.page-title-inner,
.page-title .title-wrapper,
.rhat-blog-page-heading-inner,
body.single-post .entry-header {
  width: 100%;
  min-width: 0;
}

.page-title .entry-title,
.rhat-blog-page-heading h1,
body.single-product .product-title,
body.single-post .entry-title,
body.blog .entry-title,
body.archive .entry-title {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  hyphens: auto;
}

@media (min-width: 768px) {
  /* Grid/flex children must be allowed to shrink instead of covering the sidebar. */
  body.single-product #main,
  body.single-post #main,
  body.blog #main,
  body.archive #main,
  body.woocommerce #main,
  body.single-product .row,
  body.single-post .row,
  body.blog .row,
  body.archive .row,
  body.woocommerce .row {
    min-width: 0;
  }

  .page-header-wrapper,
  .page-title {
    box-sizing: border-box !important;
    display: block;
    position: relative;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .page-title-bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    pointer-events: none;
  }

  .page-title-inner.container,
  .page-title .title-wrapper,
  .page-title .entry-title {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

body.single-product .page-header-wrapper,
body.single-post .page-header-wrapper,
body.single-product .page-title,
body.single-post .page-title {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}

body.single-product .page-title-bg,
body.single-post .page-title-bg {
  right: 0;
  left: 0;
  max-width: 100%;
  overflow: hidden;
}
