.button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 46px; padding: .75rem 1.05rem; border-radius: .75rem; text-decoration: none; border: 1px solid transparent; font-weight: 750; cursor: pointer; transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease; }
.button:hover { transform: translateY(-1px); }
.button-primary { background: var(--brand-primary); color: white; box-shadow: 0 8px 20px rgba(18,59,99,.16); }
.button-primary:hover { background: var(--brand-primary-strong); }
.button-success { background: var(--brand-secondary); color: #fff; box-shadow: 0 8px 20px rgba(22,148,91,.18); }
.button-success:hover { background: var(--brand-secondary-strong); }
.button-secondary { background: var(--surface-primary); border-color: var(--border-default); color: var(--brand-primary); }
.button-secondary:hover { border-color: var(--brand-primary); }
.status-badge { display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .65rem; border-radius: 999px; font-size: .82rem; font-weight: 750; }
.card { border: 1px solid var(--border-default); border-radius: var(--radius-md); background: var(--surface-primary); box-shadow: var(--shadow-sm); padding: 1rem; }
.icon-circle { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: var(--brand-soft); color: var(--brand-secondary); font-weight: 850; }
