/* IFFS 2027 — static/css/components/buttons.css
   GENERATED from design/design_handoff_iffs_2027/static/css/iffs.css
   by scripts/split_design_css.py — do not hand-edit; edit the source. */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 var(--sp-5);border-radius:var(--r-control);font:600 15px/1 var(--font-body);letter-spacing:.01em;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}
.btn--primary{background:var(--c-action-primary);color:var(--c-text-on-action);box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}
.btn--primary:hover{background:var(--c-action-primary-hover);color:var(--c-text-on-action)}
.btn--secondary{border-color:var(--c-action-secondary-ink);color:var(--c-action-secondary-ink);background:transparent}
.btn--secondary:hover{background:var(--p-steel-050);color:var(--c-action-secondary-ink)}
.btn--secondary.on-dark{border-color:rgba(255,255,255,.75);color:var(--p-white)}
.btn--secondary.on-dark:hover{background:rgba(255,255,255,.08);color:var(--p-white)}
.btn--small{min-height:38px;padding:0 var(--sp-4);font-size:14px}
.btn[disabled],.btn.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}
.btn .spinner{width:16px;height:16px;border:2px solid rgba(16,21,29,.25);border-top-color:var(--p-graphite-950);border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(1turn)}}
