.btn-primary{background:linear-gradient(90deg, var(--grad-1), var(--grad-3));transition:filter .15s,transform .1s,box-shadow .15s}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:active{transform:scale(.98)}.btn-primary-elevated{background:linear-gradient(90deg, var(--grad-1), var(--grad-3));transition:filter .15s,transform .1s,box-shadow .15s;box-shadow:0 10px 22px #0e2a382e}.btn-primary-elevated:hover{filter:brightness(1.08);box-shadow:0 12px 26px #0e2a383d}.btn-primary-elevated:active{transform:scale(.98)}.btn-gradient{background:linear-gradient(90deg, var(--grad-1), var(--grad-3));transition:filter .15s,transform .1s}.btn-gradient:hover{filter:brightness(1.08)}.btn-gradient:active{transform:scale(.98)}.btn-danger{background:var(--danger);transition:filter .15s,transform .1s}.btn-danger:hover{filter:brightness(1.08)}.btn-danger:active{transform:scale(.98)}.btn-ghost{color:#374151;background:#fff;border:1px solid #e2e5e4;transition:background .15s,border-color .15s}.btn-ghost:hover{background:#f7f8f6;border-color:#cfd9d8}.btn-filter{background:linear-gradient(90deg, var(--grad-1), var(--grad-3));transition:filter .15s,transform .1s}.btn-filter:hover{filter:brightness(1.08)}.btn-filter:active{transform:scale(.98)}.btn-approve{background:linear-gradient(90deg, var(--grad-1), var(--grad-3));transition:filter .15s,transform .1s}.btn-approve:hover{filter:brightness(1.08)}.btn-approve:active{transform:scale(.98)}.btn-reject{transition:background .15s,color .15s,border-color .15s}.btn-reject:hover{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.btn-update{background:var(--brand-700);color:#fff;white-space:nowrap;border-radius:9999px;padding:6px 12px;font-size:11px;font-weight:600;transition:filter .15s,transform .1s}.btn-update:hover{filter:brightness(1.1)}.btn-update:active{transform:scale(.96)}.role-link{transition:box-shadow .2s,border-color .2s,transform .15s,background .2s;position:relative;overflow:hidden}.role-link:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0e2a381a}.role-link:active{transform:translateY(0)scale(.98)}.warn-icon-ring{background:linear-gradient(135deg, var(--danger-bg), #fbe0da);color:var(--danger)}
