/* ============================================================
   buttons.css
   ============================================================ */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-5);
    font-size: var(--text-sm);
    font-weight: var(--fw-medium);
    border-radius: var(--radius-md);
    border: 1.5px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    transition: background var(--transition), color var(--transition), box-shadow var(--transition), border-color var(--transition);
    line-height: 1.5;
    text-decoration: none;
}
.btn:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 2px; }
.btn:disabled      { opacity: .55; cursor: not-allowed; pointer-events: none; }

.btn--primary {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
}
.btn--primary:hover { background: #0a2244; box-shadow: var(--shadow-sm); }

.btn--secondary {
    background: transparent;
    color: var(--color-primary);
    border-color: var(--color-primary);
}
.btn--secondary:hover { background: rgba(12,44,85,.06); }

.btn--accent {
    background: var(--color-accent);
    color: #fff;
    border-color: var(--color-accent);
}
.btn--accent:hover { background: #4d8e9c; }

.btn--danger {
    background: var(--color-danger);
    color: #fff;
    border-color: var(--color-danger);
}
.btn--danger:hover { background: #ab1f1f; }

.btn--ghost {
    background: transparent;
    color: var(--color-text-muted);
    border-color: transparent;
}
.btn--ghost:hover { background: var(--color-surface-2); color: var(--color-text); }

.btn--sm  { padding: var(--space-1) var(--space-3); font-size: var(--text-xs); }
.btn--lg  { padding: var(--space-3) var(--space-6); font-size: var(--text-base); }
.btn--full{ width: 100%; }
.btn--icon{ padding: var(--space-2); border-radius: var(--radius-sm); min-width: 36px; }
