.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-xl);font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);line-height:1;text-align:center;white-space:nowrap;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;letter-spacing:0}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-primary);font-weight:var(--font-weight-bold)}.btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 8px 20px #e8202559,0 4px 12px #e8202533}.btn-secondary{background-color:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.btn-secondary:hover{background-color:var(--color-primary);color:#fff;transform:translateY(-1px)}.btn-outline{background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.btn-ghost{background-color:transparent;color:var(--color-primary);padding:var(--spacing-sm) var(--spacing-lg)}.btn-ghost:hover{background-color:#e8202514}.btn-white{background-color:#fff;color:var(--color-primary);border:1px solid white}.btn-white:hover{background-color:transparent;color:#fff;border-color:#fff;transform:translateY(-1px)}.btn-white-outline{background-color:transparent;color:#fff;border:1px solid white}.btn-white-outline:hover{background-color:#fff;color:var(--color-primary);transform:translateY(-1px)}.btn-sm{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm)}.btn-md{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base)}.btn-lg{padding:1.125rem 2.5rem;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.btn-full-width{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn:active{transform:translateY(0)}@media(max-width:767px){.btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base)}}
