.etb-button-block{display:inline-flex;align-items:center;gap:var(--eth-space-xs,.75rem);max-width:100%;vertical-align:middle}
.etb-button-block .etb-button-block__button{max-width:100%;margin:0;text-align:center;text-decoration:none;text-underline-offset:.2em}
.etb-button-block .etb-button-block__button.eth-btn--outline:is(:hover,:focus-visible){background:var(--eth-primary,#4f46e5);border-color:var(--eth-primary,#4f46e5);color:var(--eth-light,#fff);box-shadow:var(--eth-shadow-s,0 2px 6px rgba(0,0,0,.08))}
.etb-button-block .etb-button-block__button:is(.eth-btn--ghost,.eth-btn--text){background:transparent;border-color:transparent;box-shadow:none;color:var(--eth-primary,#4f46e5)}
.etb-button-block .etb-button-block__button.eth-btn--text{border:0;border-radius:0;padding:0;min-height:0;min-width:0;letter-spacing:inherit;text-transform:none;font:inherit;line-height:inherit;white-space:normal;text-align:start}
.etb-button-block .etb-button-block__button:is(.eth-btn--ghost,.eth-btn--text):is(:hover,:focus-visible){background:transparent;border-color:transparent;box-shadow:none;color:var(--eth-primary-d-1,var(--eth-primary,#4f46e5));transform:none}
.etb-button-block--context-on-surface .etb-button-block__button:is(.eth-btn--outline,.eth-btn--ghost,.eth-btn--text){color:var(--eth-primary);background:transparent;box-shadow:none}
.etb-button-block--context-on-surface .etb-button-block__button.eth-btn--outline{border-color:var(--eth-primary)}
.etb-button-block--context-on-surface .etb-button-block__button.eth-btn--outline:is(:hover,:focus-visible){background:var(--eth-primary);border-color:var(--eth-primary);color:var(--eth-light)}
.etb-button-block--context-on-dark .etb-button-block__button:is(.eth-btn--outline,.eth-btn--ghost,.eth-btn--text){color:var(--eth-light);background:transparent;box-shadow:none}
.etb-button-block--context-on-dark .etb-button-block__button.eth-btn--outline{border-color:var(--eth-light)}
.etb-button-block--context-on-dark .etb-button-block__button.eth-btn--outline:is(:hover,:focus-visible){background:var(--eth-light);border-color:var(--eth-light);color:var(--eth-dark)}
.etb-button-block--context-on-dark .etb-button-block__button:is(.eth-btn--ghost,.eth-btn--text):is(:hover,:focus-visible){color:var(--eth-light)}
/* Native Button variants: only theme tokens own colors and interaction surfaces. */
.etb-button-block .etb-button-block__button.eth-btn--tertiary {
    background: var(--eth-tertiary); color: var(--eth-light);
    border-color: var(--eth-tertiary); box-shadow: var(--eth-shadow-s);
}
.etb-button-block .etb-button-block__button.eth-btn--tertiary:is(:hover,:focus-visible) {
    background: color-mix(in srgb,var(--eth-tertiary) 86%,var(--eth-dark));
    border-color: color-mix(in srgb,var(--eth-tertiary) 86%,var(--eth-dark));
    color: var(--eth-light); box-shadow: var(--eth-shadow-m);
}
.etb-button-block .etb-button-block__button.eth-btn--white {
    background: var(--eth-light); color: var(--eth-primary);
    border-color: var(--eth-light); box-shadow: var(--eth-shadow-s);
}
.etb-button-block .etb-button-block__button.eth-btn--white:is(:hover,:focus-visible) {
    background: color-mix(in srgb,var(--eth-light) 90%,var(--eth-primary));
    border-color: color-mix(in srgb,var(--eth-light) 90%,var(--eth-primary));
    color: var(--eth-primary); box-shadow: var(--eth-shadow-m);
}
.etb-button-block .etb-button-block__button.eth-btn--soft {
    background: var(--eth-bg-primary-soft,var(--eth-bg-muted)); color: var(--eth-primary);
    border-color: transparent; box-shadow: none;
}
.etb-button-block .etb-button-block__button.eth-btn--soft:is(:hover,:focus-visible) {
    background: var(--eth-primary); border-color: var(--eth-primary);
    color: var(--eth-light); box-shadow: var(--eth-shadow-s);
}

.etb-button-block[style*="--etb-button-color"] .etb-button-block__button{color:var(--etb-button-color)}
.etb-button-block[style*="--etb-button-color"] .etb-button-block__button:not(.eth-btn--outline):is(:hover,:focus-visible){color:var(--etb-button-hover-color,var(--etb-button-color))}
.etb-button-block[style*="--etb-button-hover-color"] .etb-button-block__button:is(:hover,:focus-visible){color:var(--etb-button-hover-color)}
.etb-button-block .etb-button-block__button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.etb-button-block--underline-always .etb-button-block__button,.etb-button-block--underline-hover .etb-button-block__button:is(:hover,:focus-visible){text-decoration:underline}

.etb-button-block[style*="--etb-button-border-color"] .etb-button-block__button.eth-btn--outline{border-color:var(--etb-button-border-color)}
.etb-button-block[style*="--etb-button-border-color"] .etb-button-block__button.eth-btn--outline:is(:hover,:focus-visible){border-color:var(--etb-button-hover-border-color,var(--etb-button-border-color))}
.etb-button-block[style*="--etb-button-hover-border-color"] .etb-button-block__button.eth-btn--outline:is(:hover,:focus-visible){border-color:var(--etb-button-hover-border-color)}
