/* Button — .bh-btn. States can be forced for docs with .is-hover / .is-focus / .is-active. */
.bh-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--bh-btn-gap);min-height:var(--bh-btn-h);min-width:var(--bh-btn-h);padding:0 var(--bh-btn-px);border-radius:var(--bh-btn-radius);border:1px solid transparent;font-family:var(--bh-font-sans);font-size:var(--bh-text-body);font-weight:var(--bh-btn-weight);line-height:1.1;letter-spacing:-.005em;text-decoration:none;cursor:pointer;white-space:nowrap;position:relative;-webkit-tap-highlight-color:transparent;transition:background-color var(--bh-dur-fast) var(--bh-ease-standard),border-color var(--bh-dur-fast) var(--bh-ease-standard),color var(--bh-dur-fast) var(--bh-ease-standard),transform var(--bh-dur-instant) var(--bh-ease-standard)}
.bh-btn .bh-icon{flex:none}
.bh-btn__icon-end{transition:transform var(--bh-dur-base) var(--bh-ease-out)}
.bh-btn:hover .bh-btn__icon-end,.bh-btn.is-hover .bh-btn__icon-end{transform:translateX(3px)}
.bh-btn:focus-visible,.bh-btn.is-focus{outline:var(--bh-focus-width) solid var(--bh-color-focus);outline-offset:var(--bh-focus-offset)}
.bh-btn:active,.bh-btn.is-active{transform:translateY(1px)}
.bh-btn--primary{background:var(--bh-btn-primary-bg);color:var(--bh-btn-primary-text)}
.bh-btn--primary:hover,.bh-btn--primary.is-hover{background:var(--bh-btn-primary-bg-hover);color:var(--bh-btn-primary-text)}
.bh-btn--primary:active,.bh-btn--primary.is-active{background:var(--bh-btn-primary-bg-active)}
.bh-btn--secondary{background:var(--bh-btn-secondary-bg);color:var(--bh-btn-secondary-text);border-color:var(--bh-btn-secondary-border)}
.bh-btn--secondary:hover,.bh-btn--secondary.is-hover{background:var(--bh-btn-secondary-bg-hover);border-color:var(--bh-btn-secondary-border-hover);color:var(--bh-btn-secondary-text)}
.bh-btn--secondary:active,.bh-btn--secondary.is-active{background:var(--bh-color-primary-subtle-hover)}
.bh-btn--ghost{background:transparent;color:var(--bh-btn-ghost-text)}
.bh-btn--ghost:hover,.bh-btn--ghost.is-hover{background:var(--bh-btn-ghost-bg-hover);color:var(--bh-btn-ghost-text)}
.bh-btn--ghost:active,.bh-btn--ghost.is-active{background:var(--bh-color-primary-subtle-hover)}
.bh-btn--link{background:transparent;color:var(--bh-color-link);padding-inline:2px;min-width:0;border-radius:var(--bh-radius-xs)}
.bh-btn--link .bh-btn__label{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.22em;text-decoration-thickness:1px;transition:text-decoration-color var(--bh-dur-fast)}
.bh-btn--link:hover,.bh-btn--link.is-hover{color:var(--bh-color-link-hover)}
.bh-btn--link:hover .bh-btn__label,.bh-btn--link.is-hover .bh-btn__label{text-decoration-color:currentColor}
.bh-btn--link:active,.bh-btn--link.is-active{transform:none;color:var(--bh-color-primary-active)}
.bh-btn--lg{min-height:var(--bh-btn-h-lg);padding:0 var(--bh-btn-px-lg);font-size:var(--bh-text-body-lg)}
.bh-btn--block{display:flex;width:100%}
.bh-btn--icon{padding:0;width:var(--bh-btn-h)}
.bh-btn--icon.bh-btn--lg{width:var(--bh-btn-h-lg)}
.bh-btn[disabled],.bh-btn[aria-disabled="true"]:not(.is-loading){background:var(--bh-btn-disabled-bg);color:var(--bh-btn-disabled-text);border-color:transparent;cursor:not-allowed;transform:none}
.bh-btn--link[disabled],.bh-btn--link[aria-disabled="true"]:not(.is-loading),.bh-btn--ghost[disabled]{background:transparent}
.bh-btn.is-loading{cursor:progress}
.bh-btn__spinner{animation:bh-spin .8s linear infinite}
@keyframes bh-spin{to{transform:rotate(360deg)}}
.bh-on-brand{--bh-btn-primary-bg:var(--bh-neutral-0);--bh-btn-primary-bg-hover:var(--bh-petrol-50);--bh-btn-primary-bg-active:var(--bh-petrol-100);--bh-btn-primary-text:var(--bh-petrol-900);--bh-btn-secondary-bg:transparent;--bh-btn-secondary-bg-hover:rgb(255 255 255 / .08);--bh-btn-secondary-border:var(--bh-petrol-300);--bh-btn-secondary-border-hover:var(--bh-neutral-0);--bh-btn-secondary-text:var(--bh-neutral-0);--bh-btn-ghost-text:var(--bh-neutral-0);--bh-btn-ghost-bg-hover:rgb(255 255 255 / .08);--bh-color-link:var(--bh-petrol-100);--bh-color-link-hover:var(--bh-neutral-0);--bh-color-focus:var(--bh-naranja-400);--bh-color-text-strong:var(--bh-neutral-0);--bh-color-text:var(--bh-petrol-50);--bh-color-text-secondary:var(--bh-petrol-100);--bh-color-border:rgb(255 255 255 / .16);color:var(--bh-color-text)}
