.btn[data-v-c3ddad30]{position:relative;--btn-strip-height:8px;align-items:center;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-weight:600;gap:var(--space-2);justify-content:center;overflow:hidden;text-transform:none;transition:transform var(--duration-base) var(--ease-smooth),box-shadow var(--duration-base) var(--ease-smooth),opacity var(--duration-fast) var(--ease-linear);white-space:nowrap}.btn[data-v-c3ddad30]:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.btn--sm[data-v-c3ddad30]{font-size:var(--text-sm);min-height:32px;padding:var(--space-2) var(--space-4)}.btn--md[data-v-c3ddad30]{font-size:var(--text-base);min-height:40px;padding:var(--space-3) var(--space-6)}.btn--lg[data-v-c3ddad30]{font-size:var(--text-lg);min-height:48px;padding:var(--space-4) var(--space-8)}.btn--primary[data-v-c3ddad30]{background:#000;border:3px solid transparent;box-shadow:0 4px 14px #0003;color:#fff;font-weight:700;overflow:hidden;position:relative}.btn--primary[data-v-c3ddad30]:after{background:var(--btn-border-gradient);bottom:0;content:"";height:var(--btn-strip-height);left:0;pointer-events:none;position:absolute;right:0;transition:height var(--duration-base) var(--ease-smooth);z-index:1}.btn--primary[data-v-c3ddad30]:hover:not(:disabled){box-shadow:0 8px 20px #0000004d;transform:translateY(-2px)}.btn--primary[data-v-c3ddad30]:hover:after{height:0}.btn--primary[data-v-c3ddad30]:before{background:#000;bottom:0;content:"";height:0;left:0;pointer-events:none;position:absolute;right:0;transition:height var(--duration-base) var(--ease-smooth);z-index:2}.btn--primary[data-v-c3ddad30]:hover:before{height:0}.btn--primary[data-v-c3ddad30]:active:not(:disabled){transform:translateY(0)}.btn--secondary[data-v-c3ddad30]{background:#fff;border:3px solid #000;box-shadow:0 4px 14px #0003;color:#000;font-weight:700;overflow:hidden;position:relative}.btn--secondary[data-v-c3ddad30]:after{height:var(--btn-strip-height);z-index:1}.btn--secondary[data-v-c3ddad30]:after,.btn--secondary[data-v-c3ddad30]:before{background:#000;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;transition:height var(--duration-base) var(--ease-smooth)}.btn--secondary[data-v-c3ddad30]:before{border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);height:calc(var(--btn-strip-height)*.9);z-index:2}.btn--secondary[data-v-c3ddad30]:hover:not(:disabled){box-shadow:0 8px 20px #0000004d;transform:translateY(-2px)}.btn--secondary[data-v-c3ddad30]:hover:after,.btn--secondary[data-v-c3ddad30]:hover:before{height:0}.btn--outline[data-v-c3ddad30]:hover:not(:disabled){background:#f8f9fa;transform:translateY(-1px)}.btn--ghost[data-v-c3ddad30]{background:#fff;border:3px solid #000;color:#000;font-weight:700;overflow:hidden;position:relative}.btn--ghost[data-v-c3ddad30]:hover:not(:disabled){background:#f8f9fa;box-shadow:0 4px 12px #00000014;color:#000;transform:translateY(-1px)}.btn--danger[data-v-c3ddad30]{background:var(--color-danger);color:#fff;font-weight:700}.btn--danger[data-v-c3ddad30]:hover:not(:disabled){background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-1px)}.btn--glow[data-v-c3ddad30]{animation:glow-c3ddad30 2.5s ease-in-out infinite}@keyframes glow-c3ddad30{0%,50%,to{box-shadow:none}}.btn--loading[data-v-c3ddad30]{pointer-events:none}.btn__spinner[data-v-c3ddad30]{animation:spin-c3ddad30 1s linear infinite;height:20px;position:absolute;width:20px}.btn__spinner svg[data-v-c3ddad30]{height:100%;width:100%}@keyframes spin-c3ddad30{to{transform:rotate(1turn)}}.btn__content[data-v-c3ddad30]{align-items:center;display:flex;gap:var(--space-2);position:relative;transition:opacity var(--duration-fast) var(--ease-smooth);z-index:3}.btn__content--hidden[data-v-c3ddad30]{opacity:0}[data-v-c3ddad30] .ripple{animation:ripple-animation-c3ddad30 .6s ease-out;background:#ffffff4d;border-radius:50%;pointer-events:none;position:absolute;transform:scale(0)}.btn--primary[data-v-c3ddad30] .ripple{background:#ffffff4d}.btn--accent[data-v-c3ddad30] .ripple,.btn--outline[data-v-c3ddad30] .ripple,.btn--secondary[data-v-c3ddad30] .ripple{background:#0000001a}@keyframes ripple-animation-c3ddad30{to{opacity:0;transform:scale(4)}}.btn[data-v-c3ddad30]:focus-visible{box-shadow:0 0 0 var(--btn-focus-ring) #0000004d;outline:none}@media(prefers-reduced-motion:reduce){.btn[data-v-c3ddad30]{transition:none}.btn--glow[data-v-c3ddad30],.btn__spinner[data-v-c3ddad30],[data-v-c3ddad30] .ripple{animation:none}}
