/* doc-project | public/assets/css/components/buttons.css | Stylise boutons, liens d'action, tailles, variantes et états accessibles. | Expose: .button, .icon-button | Dépend de: tokens.css | Impacte: toutes les actions | Tables: aucune */
.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:42px;padding:.65rem 1rem;border:1px solid transparent;border-radius:var(--radius-sm);font-weight:750;line-height:1.1;transition:transform var(--transition),background var(--transition),border-color var(--transition),box-shadow var(--transition);white-space:nowrap}.button:hover:not(:disabled){transform:translateY(-1px)}.button:focus-visible,.icon-button:focus-visible{outline:none;box-shadow:var(--focus)}.button--primary{background:var(--accent);color:#fff}.button--primary:hover{background:var(--accent-dark)}.button--secondary{background:#fff;border-color:var(--ink-300);color:var(--ink-900)}.button--secondary:hover{border-color:var(--ink-600);background:var(--ink-50)}.button--ghost{background:transparent;border-color:transparent;color:inherit}.button--ghost:hover{background:rgba(111,126,136,.1)}.button--danger{background:var(--danger);color:#fff}.button--warning{background:var(--warning);color:#fff}.button--success{background:var(--success);color:#fff}.button--large{min-height:50px;padding:.85rem 1.35rem;font-size:1.02rem}.button--small{min-height:34px;padding:.45rem .7rem;font-size:.82rem}.button--block{width:100%}.icon-button{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--ink-200);border-radius:var(--radius-sm);background:#fff;color:var(--ink-800)}.danger-link{color:var(--danger)!important}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:.4rem}.row-actions>button{width:34px;height:34px;border:0;border-radius:.4rem;background:var(--ink-50)}