/* Same named layer as the canon sheet: important rules beat legacy unlayered
 * widget !important declarations without changing plugin/control identity. */
@layer hw-canon {
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon {
    display:inline-block!important;
    width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;
    flex:0 0 20px!important;
    vertical-align:-0.2em!important;
    fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;
    color:var(--hw-canon-icon-color,#705c3e)!important;
    background:none!important;border:0!important;border-radius:0!important;
    box-shadow:none!important;text-shadow:none!important;filter:none!important;
    opacity:1!important;transform:none!important;
    overflow:visible!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon > * {
    fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;
    filter:none!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon[width="24"] {
    width:24px!important;height:24px!important;min-width:24px!important;max-width:24px!important;flex-basis:24px!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon[data-hw-icon-role="cons"],
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-host[data-hw-icon-role="cons"] {color:#272722!important;}
  /* Benefits alone use the approved green/red semantic exception. */
  :is(.hw-content,.hw-home,.hw-ui) .hw-benefits .hw-canon-icon[data-hw-icon-role="pros"] {color:#3e6b45!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-benefits .hw-canon-icon[data-hw-icon-role="cons"] {color:#8b4741!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon[data-hw-icon-role="warning"],
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-host[data-hw-icon-role="warning"] {color:#9b2f2f!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon[data-hw-icon-role="rating"],
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-host[data-hw-icon-role="rating"] {color:#9b722f!important;}
  /* Marcin, 2026-10-31: every rating star matches the approved review cards. */
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon[data-hw-icon-role="rating"],
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon[data-hw-icon-role="rating"] > * {
    fill:currentColor!important;stroke:none!important;stroke-width:0!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-host {
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    width:20px!important;height:20px!important;min-width:20px!important;flex:0 0 20px!important;
    color:var(--hw-canon-icon-color,#705c3e)!important;
    font-size:0!important;line-height:1!important;font-style:normal!important;
    background:none!important;border:0!important;border-radius:0!important;
    box-shadow:none!important;text-shadow:none!important;filter:none!important;
    vertical-align:-0.2em!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-host[data-hw-icon-size="24"] {
    width:24px!important;height:24px!important;min-width:24px!important;flex-basis:24px!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-host::before,
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-host::after,
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-feature::before,
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-feature::after {
    content:none!important;display:none!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .elementor-icon:has(> .hw-canon-icon) {
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    width:24px!important;height:24px!important;padding:0!important;
    color:var(--hw-canon-icon-color,#705c3e)!important;
    background:none!important;border:0!important;border-radius:0!important;
    box-shadow:none!important;text-shadow:none!important;filter:none!important;
  }
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-list {list-style:none!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-list > li::before,
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-icon-list > li::marker {content:none!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-feature {position:relative!important;padding-left:28px!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-feature > .hw-canon-icon {position:absolute!important;left:0!important;top:0.2em!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-decoration-removed {display:none!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-warning-ready::before {content:none!important;display:none!important;}
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-warning-ready .hw-canon-icon[data-hw-icon="triangle-alert"] {margin-right:8px!important;}
  /* An emotive tone in a quotation remains named for assistive technology.
   * There is no visible emoji and no opinion wording is rewritten. */
  :is(.hw-content,.hw-home,.hw-ui) .hw-canon-tone {display:inline!important;}
  .hw-ui .hw-canon-link-arrow-ready::after,
  .hw-ui .hw-canon-nav-chevron-ready::after {content:none!important;display:none!important;}
  .hw-ui .hw-canon-link-arrow-ready > .hw-canon-icon,
  .hw-ui .hw-canon-nav-chevron-ready > .hw-canon-icon {margin-left:4px!important;}
  .hw-ui .site-nav details[open] > .hw-canon-nav-chevron-ready > .hw-canon-icon {transform:rotate(180deg)!important;}
  .eu-cookies-bar-cookies-bar-settings-header > .hw-canon-cookie-close::before,
  .eu-cookies-bar-cookies-bar-settings-header > .hw-canon-cookie-close::after {content:none!important;display:none!important;}
  .eu-cookies-bar-cookies-bar-settings-header > .hw-canon-cookie-close > .hw-canon-icon {
    display:block!important;width:24px!important;height:24px!important;min-width:24px!important;max-width:24px!important;
    color:#d6c2a0!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;
    background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;filter:none!important;
    opacity:1!important;transform:none!important;pointer-events:none!important;
  }
  .eu-cookies-bar-cookies-bar-settings-header > .hw-canon-cookie-close > .hw-canon-icon > * {
    fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important;
  }
}

/* Marcin, 2026-10-29: the review component uses the filled warm-gold desktop
 * reference on both viewports. This exact user decision overrides the generic
 * rating color; all other icon roles and components remain unchanged. */
@layer hw-canon {
  #reviews.hw-reviews .hw-review-stars .hw-canon-icon[data-hw-icon-role="rating"],
  #reviews.hw-reviews .hw-review-stars .hw-canon-icon[data-hw-icon-role="rating"] > * {
    color:#9b722f!important;
    fill:currentColor!important;
    stroke:none!important;
    stroke-width:0!important;
  }
}
