/* Shared CTA feedback follows the home-page estimate button. */
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-offer .kd-design-action,.kd-header-cta) {
  --kd-cta-surface: linear-gradient(110deg,#185d99,#082332);
  transition: filter 200ms cubic-bezier(.16,1,.3,1), box-shadow 200ms cubic-bezier(.16,1,.3,1), transform 200ms cubic-bezier(.16,1,.3,1);
}
body .ar-button { --kd-cta-surface:#175b9d; }
body :is(.rf-btn-light,.sp-button-light,.zhk-button-secondary),
body .kd-article .article-next .button { --kd-cta-surface:#fff; }
body .button-outline { --kd-cta-surface:transparent; }
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta) > svg:last-child,
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta) > span[aria-hidden=true]:last-child > svg {
  transition: transform 200ms cubic-bezier(.16,1,.3,1);
  transform:translateX(0);
  flex-shrink:0;
}
/* The quiz label is text, not the legacy oversized icon span. */
.kd-quote-controls .button > span:not([aria-hidden]) { font-size:inherit; }
/* Fine-pointer hover never creates a sticky touch state. */
@media (hover:hover) and (pointer:fine) {
  body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):hover:not(:disabled):not([aria-disabled=true]):not([aria-busy=true]) {
    background:var(--kd-cta-surface);
    filter:brightness(1.13);
    box-shadow:0 5px 16px rgb(11 41 57 / .16);
    transform:translateY(0);
    text-decoration:none;
  }
  body .button-outline:hover:not(:disabled):not([aria-disabled=true]) {
    color:var(--ink,#10222d);
    border-color:var(--line,#dce5e9);
  }
  body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):hover:not(:disabled):not([aria-disabled=true]):not([aria-busy=true]) > svg:last-child,
  body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):hover:not(:disabled):not([aria-disabled=true]):not([aria-busy=true]) > span[aria-hidden=true]:last-child > svg {
    transform:translateX(3px);
  }
}
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):focus-visible:not(:disabled):not([aria-disabled=true]) {
  background:var(--kd-cta-surface);
  filter:brightness(1.13);
  box-shadow:0 5px 16px rgb(11 41 57 / .16);
  outline:3px solid #2676bf;
  outline-offset:4px;
}
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):focus-visible:not(:disabled):not([aria-disabled=true]) > svg:last-child,
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):focus-visible:not(:disabled):not([aria-disabled=true]) > span[aria-hidden=true]:last-child > svg {
  transform:translateX(3px);
}
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):active:not(:disabled):not([aria-disabled=true]):not([aria-busy=true]) {
  filter:brightness(1.06);
  transform:translateY(1px);
  box-shadow:0 2px 7px rgb(11 41 57 / .12);
}
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):is(:disabled,[aria-disabled=true],[aria-busy=true]) {
  background:var(--kd-cta-surface);
  filter:none;
  transform:none;
  box-shadow:none;
  opacity:.65;
  cursor:not-allowed;
}
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta)[aria-busy=true] { cursor:wait; }
body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta):is(:disabled,[aria-disabled=true],[aria-busy=true]) svg {
  transform:none!important;
  transition:none!important;
}
@media (prefers-reduced-motion:reduce) {
  body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta),
  body :is(.rf-btn,.button,.sp-button,.cp-button,.zhk-button,.ar-button,.kd-design-action,.kd-header-cta) svg {
    transition:none!important;
    transform:none!important;
  }
}
