.floating-header{--container-max-width:66rem;--button-radius:1rem;--button-transition-duration-normal:.2s;--button-hover-scale:1.02;--button-hover-lift:-1px;--button-hover-shadow:0 2px 8px rgba(0,0,0,.1);--button-small-padding-x:1rem;--button-medium-padding-x:1.25rem;--button-large-padding-x:1.5rem;--button-small-height:2.25rem;--button-medium-height:2.5rem;--button-large-height:2.75rem}.page-width-wide .floating-header{--container-max-width:76rem;--button-radius:1.125rem;--button-medium-height:2.75rem;--button-large-height:3rem}.page-width-full .floating-header{--container-max-width:90rem;--button-radius:1.25rem;--button-medium-height:3rem;--button-large-height:3.25rem;--button-hover-scale:1.03}.floating-header .btn-base{border-radius:var(--button-radius);transition:all var(--button-transition-duration-normal) cubic-bezier(.4,0,.2,1)}.floating-header .btn-base:hover:not(:disabled){box-shadow:var(--button-hover-shadow);transform:translateY(var(--button-hover-lift)) scale(var(--button-hover-scale))}.floating-header .language-toggle-button,.floating-header .theme-toggle-button{border-radius:var(--button-radius);transition:all var(--button-transition-duration-normal) cubic-bezier(.4,0,.2,1)}.floating-header .language-toggle-button:hover,.floating-header .theme-toggle-button:hover{box-shadow:var(--button-hover-shadow);transform:translateY(var(--button-hover-lift)) scale(var(--button-hover-scale))}.floating-header .md\\:hidden button{border-radius:var(--button-radius);transition:all var(--button-transition-duration-normal) cubic-bezier(.4,0,.2,1)}.floating-header .md\\:hidden button:hover{transform:scale(var(--button-hover-scale))}.dark .floating-header{--button-hover-shadow:0 2px 12px rgba(0,0,0,.3);--button-hover-lift:-2px}@media (prefers-reduced-motion:reduce){.floating-header .btn-base,.floating-header .language-toggle-button,.floating-header .md\\:hidden button,.floating-header .theme-toggle-button{transform:none!important;transition:none!important}.floating-header .btn-base:hover,.floating-header .language-toggle-button:hover,.floating-header .md\\:hidden button:hover,.floating-header .theme-toggle-button:hover{box-shadow:none!important;transform:none!important}}.btn-base{align-items:center;display:inline-flex;font-weight:500;justify-content:center;transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-base:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring));--tw-ring-offset-width:2px}.btn-base:disabled{cursor:not-allowed;pointer-events:none;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.btn-base:disabled,.btn-base:hover:disabled{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-base:hover:disabled{--tw-translate-y:0px;background-color:inherit;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.btn-base{border-radius:var(--button-radius,.375rem);opacity:1}.btn-base:disabled{opacity:var(--button-disabled-opacity,.65)}.dark .btn-primary{color:var(--primary-foreground)}.btn-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))!important}.btn-primary:hover{background-color:hsl(var(--primary)/.9);--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-primary{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-primary:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--primary)/.3)}.btn-primary:active{opacity:var(--button-active-opacity,.8)}.dark .btn-secondary{color:var(--secondary-foreground)}.btn-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))!important}.btn-secondary:hover{background-color:hsl(var(--secondary)/.9);--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-secondary{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-secondary:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--secondary)/.3)}.btn-secondary:active{opacity:var(--button-active-opacity,.8)}.btn-outline{background-color:hsl(var(--background));border-color:hsl(var(--input));border-width:1px;color:hsl(var(--foreground))!important}.btn-outline:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))!important;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-outline{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-outline:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--accent)/.3)}.btn-ghost{color:hsl(var(--foreground))!important}.btn-ghost:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))!important}.btn-ghost{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-ghost:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--accent)/.2)}.dark .btn-destructive{color:var(--destructive-foreground)}.btn-destructive{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))!important}.btn-destructive:hover{background-color:hsl(var(--destructive)/.9);--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-destructive{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-destructive:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--destructive)/.3)}.btn-destructive:active{opacity:var(--button-active-opacity,.8)}.btn-link,.dark .btn-link{color:hsl(var(--primary))!important}.btn-link{text-underline-offset:4px}.btn-link:hover{text-decoration-line:underline}.btn-link{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-link:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--primary)/.2)}.btn-gradient{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient:hover{--tw-translate-y:-1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--primary)/.3)}.btn-gradient-blue{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,130,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#2563eb var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#1d4ed8 var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-blue:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-blue{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-blue:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(147 197 253/var(--tw-ring-opacity))}.btn-gradient-blue:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(30 64 175/var(--tw-ring-opacity))}.btn-gradient-green{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#4ade80 var(--tw-gradient-from-position);--tw-gradient-to:rgba(74,222,128,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(34,197,94,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#22c55e var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#16a34a var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-green:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-green{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-green:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(134 239 172/var(--tw-ring-opacity))}.btn-gradient-green:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(22 101 52/var(--tw-ring-opacity))}.btn-gradient-cyan{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#22d3ee var(--tw-gradient-from-position);--tw-gradient-to:rgba(34,211,238,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#06b6d4 var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#0891b2 var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-cyan:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-cyan{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-cyan:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(103 232 249/var(--tw-ring-opacity))}.btn-gradient-cyan:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(21 94 117/var(--tw-ring-opacity))}.btn-gradient-teal{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#2dd4bf var(--tw-gradient-from-position);--tw-gradient-to:rgba(45,212,191,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(20,184,166,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#14b8a6 var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#0d9488 var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-teal:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-teal{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-teal:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(94 234 212/var(--tw-ring-opacity))}.btn-gradient-teal:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(17 94 89/var(--tw-ring-opacity))}.btn-gradient-lime{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#d9f99d var(--tw-gradient-from-position);--tw-gradient-to:hsla(81,88%,80%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(163,230,53,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#a3e635 var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#84cc16 var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-lime:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-lime{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-lime:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(190 242 100/var(--tw-ring-opacity))}.btn-gradient-lime:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(63 98 18/var(--tw-ring-opacity))}.btn-gradient-red{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#f87171 var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,91%,71%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(239,68,68,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#ef4444 var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#dc2626 var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-red:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-red{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-red:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(252 165 165/var(--tw-ring-opacity))}.btn-gradient-red:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(153 27 27/var(--tw-ring-opacity))}.btn-gradient-pink{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#f472b6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(244,114,182,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(236,72,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#ec4899 var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#db2777 var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-pink:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-pink{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-pink:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(249 168 212/var(--tw-ring-opacity))}.btn-gradient-pink:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(157 23 77/var(--tw-ring-opacity))}.btn-gradient-purple{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#9333ea var(--tw-gradient-via-position),var(--tw-gradient-to);--tw-gradient-to:#7e22ce var(--tw-gradient-to-position);--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity))!important}.btn-gradient-purple:hover{--tw-translate-y:-1px;background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-gradient-purple{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-gradient-purple:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(216 180 254/var(--tw-ring-opacity))}.btn-gradient-purple:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(107 33 168/var(--tw-ring-opacity))}.btn-small{font-size:var(--body-small-size,.875rem);height:var(--button-small-height,2.25rem);padding-left:var(--button-small-padding-x,1rem);padding-right:var(--button-small-padding-x,1rem)}.btn-medium{font-size:var(--body-base-size,1rem);height:var(--button-medium-height,2.75rem);padding-left:var(--button-medium-padding-x,1.5rem);padding-right:var(--button-medium-padding-x,1.5rem)}.btn-large{font-size:var(--body-large-size,1.125rem);height:var(--button-large-height,3.5rem);padding-left:var(--button-large-padding-x,2rem);padding-right:var(--button-large-padding-x,2rem)}.btn-icon{align-items:center;aspect-ratio:1/1;display:flex;height:var(--button-icon-only-medium-size,2.75rem);justify-content:center;padding:0;width:var(--button-icon-only-medium-size,2.75rem)}.btn-icon-only{padding:var(--button-icon-only-padding,.75rem)}.btn-icon-only-small{height:var(--button-icon-only-small-size,2.25rem);width:var(--button-icon-only-small-size,2.25rem)}.btn-icon-only-medium{height:var(--button-icon-only-medium-size,2.75rem);width:var(--button-icon-only-medium-size,2.75rem)}.btn-icon-only-large{height:var(--button-icon-only-large-size,3.5rem);width:var(--button-icon-only-large-size,3.5rem)}.btn-icon-left{flex-direction:row}.btn-icon-right{flex-direction:row-reverse}.btn-icon-spacing-small svg{display:inline-flex;height:var(--button-small-icon-size,.875rem);width:var(--button-small-icon-size,.875rem)}.btn-icon-spacing-medium svg,.btn-icon-spacing-small *+svg,.btn-icon-spacing-small svg,.btn-icon-spacing-small svg+*{margin-left:var(--element-spacing-x,1rem)}.btn-icon-spacing-medium svg{display:inline-flex;height:var(--button-medium-icon-size,1rem);width:var(--button-medium-icon-size,1rem)}.btn-icon-spacing-large svg,.btn-icon-spacing-medium *+svg,.btn-icon-spacing-medium svg+*{margin-left:var(--element-spacing-x,1rem)}.btn-icon-spacing-large svg{display:inline-flex;height:var(--button-large-icon-size,1.25rem);width:var(--button-large-icon-size,1.25rem)}.btn-icon-spacing-large *+svg,.btn-icon-spacing-large svg+*{margin-left:var(--element-spacing-x,1rem)}.btn-shadcn-icon svg{display:inline-flex;height:var(--button-medium-icon-size,1rem);width:var(--button-medium-icon-size,1rem)}@keyframes pulse{50%{opacity:.5;transform:scale(var(--button-pulse-scale,1.05))}0%,to{transform:scale(1)}}.btn-pulse{animation:pulse var(--button-pulse-duration,2s) cubic-bezier(.4,0,.6,1) infinite}.btn-loading{cursor:wait;--tw-shadow:0 0 #0000!important;--tw-shadow-colored:0 0 #0000!important}.btn-loading,.btn-loading:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.btn-loading:hover{--tw-translate-y:0px!important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important;--tw-shadow:0 0 #0000!important;--tw-shadow-colored:0 0 #0000!important}.btn-loading,.btn-loading:hover{opacity:var(--button-loading-opacity,.85)!important}.btn-hover-scale{animation-duration:.2s;animation-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-hover-scale:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-hover-lift{animation-duration:.2s;animation-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-hover-lift:hover{--tw-translate-y:-2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-hover-glow{animation-duration:.3s;animation-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-hover-glow:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:0 0 20px rgba(var(--primary-rgb,59,130,246),.5)}.btn-active-press{animation-duration:.1s;animation-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.1s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-active-press:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-active-sink{animation-duration:.1s;animation-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.1s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-active-sink:active{--tw-translate-y:1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-shine{overflow:hidden;position:relative}.btn-shine:before{animation:shine 2s infinite;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shine{0%{left:-100%}to{left:100%}}.btn-border-pulse{animation:border-pulse 2s infinite}@keyframes border-pulse{0%,to{border-color:hsl(var(--border))}50%{border-color:hsl(var(--primary));box-shadow:0 0 0 1px hsl(var(--primary)/.3)}}
