/* Risingshadow Design System v1: Button family */
.rs-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--rs-space-2);
    min-height: var(--rs-control-height-md);
    padding: 0 var(--rs-space-4);
    border: 1px solid transparent;
    border-radius: var(--rs-radius-md);
    font: inherit;
    font-weight: var(--rs-weight-semibold);
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition:
        background-color var(--rs-transition-normal) var(--rs-ease-standard),
        border-color var(--rs-transition-normal) var(--rs-ease-standard),
        box-shadow var(--rs-transition-normal) var(--rs-ease-standard),
        color var(--rs-transition-normal) var(--rs-ease-standard);
}
.rs-button--primary { color: var(--rs-text-on-action); background: var(--rs-action); }
.rs-button--primary:hover { background: var(--rs-action-hover); }
.rs-button--secondary {
    color: var(--rs-text-primary);
    background: var(--rs-surface-2);
    border-color: var(--rs-border-default);
}
.rs-button--secondary:hover {
    border-color: var(--rs-border-strong);
    background: var(--rs-surface-3);
}
.rs-button--quiet { color: var(--rs-text-secondary); background: transparent; }
.rs-button--quiet:hover { color: var(--rs-text-primary); background: var(--rs-surface-2); }
.rs-button--danger { color: #fff; background: var(--rs-danger); }
.rs-button:focus-visible {
    outline: 2px solid var(--rs-border-focus);
    outline-offset: 2px;
    box-shadow: var(--rs-glow-focus);
}
.rs-button:disabled,
.rs-button[aria-disabled="true"] { cursor: not-allowed; opacity: 0.55; }
