.btn{font-family:var(--font-heading);font-weight:700;font-size:var(--text-base);border-radius:var(--radius-full);border:var(--border-width) solid var(--foreground);cursor:pointer;white-space:nowrap;transition:transform var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base);align-items:center;gap:10px;padding:14px 28px;text-decoration:none;display:inline-flex}.btn:has(.btn-icon-badge){padding-right:14px}.btn-primary{background-color:var(--accent);color:var(--accent-foreground);box-shadow:var(--shadow-pop)}.btn-primary:hover{box-shadow:var(--shadow-pop-hover);transform:translate(-2px,-2px)}.btn-primary:active{box-shadow:var(--shadow-pop-active);transform:translate(2px,2px)}.btn-secondary{color:var(--foreground);box-shadow:none;background-color:#0000}.btn-secondary:hover{background-color:var(--tertiary);box-shadow:var(--shadow-pop);transform:translate(-2px,-2px)}.btn-secondary:active{box-shadow:var(--shadow-pop-active);transform:translate(2px,2px)}.btn-icon-badge{width:30px;height:30px;color:var(--foreground);background-color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-primary .btn-icon-badge{color:var(--accent);background-color:#fffffff2}@media (max-width:768px){.btn{font-size:var(--text-sm);min-height:48px;padding:12px 22px}}
