*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}input,button,textarea{font-size:16px!important}button{min-height:44px;min-width:44px}video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}*{-webkit-overflow-scrolling:touch}.min-h-screen{min-height:100vh;min-height:100dvh}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.-bottom-2{bottom:-.5rem}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-2{bottom:.5rem}.bottom-3{bottom:.75rem}.bottom-4{bottom:1rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.left-\[25\%\]{left:25%}.left-\[5\%\]{left:5%}.left-\[50\%\]{left:50%}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.right-\[25\%\]{right:25%}.right-\[5\%\]{right:5%}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-20{top:5rem}.top-4{top:1rem}.top-full{top:100%}.z-10{z-index:10}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[1001\]{z-index:1001}.z-\[1002\]{z-index:1002}.z-\[100\]{z-index:100}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-video{aspect-ratio:16 / 9}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-\[calc\(100vh-400px\)\]{height:calc(100vh - 400px)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-40{max-height:10rem}.max-h-72{max-height:18rem}.max-h-96{max-height:24rem}.max-h-\[600px\]{max-height:600px}.min-h-\[500px\]{min-height:500px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[160px\]{min-width:160px}.min-w-\[2\.5rem\]{min-width:2.5rem}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50%;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))}.-translate-y-1\/2{--tw-translate-y: -50%;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))}.-rotate-12{--tw-rotate: -12deg;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))}.-rotate-3{--tw-rotate: -3deg;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))}.-rotate-6{--tw-rotate: -6deg;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))}.rotate-12{--tw-rotate: 12deg;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))}.rotate-180{--tw-rotate: 180deg;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))}.rotate-2{--tw-rotate: 2deg;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))}.rotate-3{--tw-rotate: 3deg;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))}.rotate-6{--tw-rotate: 6deg;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))}.transform{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))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(4rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-20>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(5rem * var(--tw-space-y-reverse))}.space-y-24>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(6rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(6rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-reverse>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 1}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.border-blue-400\/30{border-color:#60a5fa4d}.border-blue-400\/50{border-color:#60a5fa80}.border-green-400\/30{border-color:#4ade804d}.border-green-400\/50{border-color:#4ade8080}.border-pink-400{--tw-border-opacity: 1;border-color:rgb(244 114 182 / var(--tw-border-opacity, 1))}.border-pink-400\/50{border-color:#f472b680}.border-purple-400\/30{border-color:#c084fc4d}.border-purple-400\/50{border-color:#c084fc80}.border-red-400\/30{border-color:#f871714d}.border-red-400\/50{border-color:#f8717180}.border-red-500\/30{border-color:#ef44444d}.border-red-500\/50{border-color:#ef444480}.border-white\/10{border-color:#ffffff1a}.border-white\/15{border-color:#ffffff26}.border-white\/20{border-color:#fff3}.border-white\/30{border-color:#ffffff4d}.border-t-pink-400{--tw-border-opacity: 1;border-top-color:rgb(244 114 182 / var(--tw-border-opacity, 1))}.border-t-red-400{--tw-border-opacity: 1;border-top-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.border-t-white{--tw-border-opacity: 1;border-top-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/40{background-color:#0006}.bg-black\/60{background-color:#0009}.bg-black\/70{background-color:#000000b3}.bg-black\/80{background-color:#000c}.bg-black\/90{background-color:#000000e6}.bg-black\/95{background-color:#000000f2}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-500\/25{background-color:#3b82f640}.bg-blue-500\/80{background-color:#3b82f6cc}.bg-cyan-400\/30{background-color:#22d3ee4d}.bg-emerald-500\/25{background-color:#10b98140}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/25{background-color:#22c55e40}.bg-green-500\/30{background-color:#22c55e4d}.bg-green-500\/80{background-color:#22c55ecc}.bg-green-500\/90{background-color:#22c55ee6}.bg-indigo-500\/25{background-color:#6366f140}.bg-orange-500\/30{background-color:#f973164d}.bg-pink-400\/25{background-color:#f472b640}.bg-pink-500{--tw-bg-opacity: 1;background-color:rgb(236 72 153 / var(--tw-bg-opacity, 1))}.bg-pink-500\/25{background-color:#ec489940}.bg-purple-400\/25{background-color:#c084fc40}.bg-purple-500\/30{background-color:#a855f74d}.bg-purple-500\/80{background-color:#a855f7cc}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/30{background-color:#ef44444d}.bg-red-500\/80{background-color:#ef4444cc}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-teal-500\/30{background-color:#14b8a64d}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/20{background-color:#fff3}.bg-white\/30{background-color:#ffffff4d}.bg-white\/5{background-color:#ffffff0d}.bg-yellow-500\/25{background-color:#eab30840}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-black\/80{--tw-gradient-from: rgb(0 0 0 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/20{--tw-gradient-from: rgb(59 130 246 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-900\/30{--tw-gradient-from: rgb(30 58 138 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 58 138 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800{--tw-gradient-from: #1f2937 var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-600{--tw-gradient-from: #16a34a var(--tw-gradient-from-position);--tw-gradient-to: rgb(22 163 74 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-400{--tw-gradient-from: #c084fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(192 132 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500\/20{--tw-gradient-from: rgb(168 85 247 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500\/30{--tw-gradient-from: rgb(168 85 247 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-900{--tw-gradient-from: #581c87 var(--tw-gradient-from-position);--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-900\/30{--tw-gradient-from: rgb(88 28 135 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-900\/60{--tw-gradient-from: rgb(88 28 135 / .6) var(--tw-gradient-from-position);--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500\/20{--tw-gradient-from: rgb(239 68 68 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-600{--tw-gradient-from: #dc2626 var(--tw-gradient-from-position);--tw-gradient-to: rgb(220 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-600\/90{--tw-gradient-from: rgb(220 38 38 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(220 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/10{--tw-gradient-from: rgb(255 255 255 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/20{--tw-gradient-from: rgb(255 255 255 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-blue-900{--tw-gradient-to: rgb(30 58 138 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #1e3a8a var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-pink-400{--tw-gradient-to: rgb(244 114 182 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #f472b6 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-blue-900\/30{--tw-gradient-to: rgb(30 58 138 / .3) var(--tw-gradient-to-position)}.to-cyan-500\/20{--tw-gradient-to: rgb(6 182 212 / .2) var(--tw-gradient-to-position)}.to-gray-900{--tw-gradient-to: #111827 var(--tw-gradient-to-position)}.to-indigo-900{--tw-gradient-to: #312e81 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-pink-500\/20{--tw-gradient-to: rgb(236 72 153 / .2) var(--tw-gradient-to-position)}.to-pink-500\/30{--tw-gradient-to: rgb(236 72 153 / .3) var(--tw-gradient-to-position)}.to-pink-600{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.to-pink-600\/90{--tw-gradient-to: rgb(219 39 119 / .9) var(--tw-gradient-to-position)}.to-pink-900{--tw-gradient-to: #831843 var(--tw-gradient-to-position)}.to-pink-900\/30{--tw-gradient-to: rgb(131 24 67 / .3) var(--tw-gradient-to-position)}.to-pink-900\/60{--tw-gradient-to: rgb(131 24 67 / .6) var(--tw-gradient-to-position)}.to-purple-400{--tw-gradient-to: #c084fc var(--tw-gradient-to-position)}.to-purple-900\/30{--tw-gradient-to: rgb(88 28 135 / .3) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-white\/10{--tw-gradient-to: rgb(255 255 255 / .1) var(--tw-gradient-to-position)}.to-white\/5{--tw-gradient-to: rgb(255 255 255 / .05) var(--tw-gradient-to-position)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-28{padding-bottom:7rem}.pb-6{padding-bottom:1.5rem}.pl-10{padding-left:2.5rem}.pl-4{padding-left:1rem}.pr-24{padding-right:6rem}.pr-4{padding-right:1rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-8xl{font-size:6rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/10{color:#ffffff1a}.text-white\/20{color:#fff3}.text-white\/40{color:#fff6}.text-white\/50{color:#ffffff80}.text-white\/60{color:#fff9}.text-white\/70{color:#ffffffb3}.text-white\/80{color:#fffc}.text-white\/90{color:#ffffffe6}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400\/80{color:#facc15cc}.placeholder-white\/40::-moz-placeholder{color:#fff6}.placeholder-white\/40::placeholder{color:#fff6}.placeholder-white\/70::-moz-placeholder{color:#ffffffb3}.placeholder-white\/70::placeholder{color:#ffffffb3}.accent-pink-400{accent-color:#f472b6}.accent-red-500{accent-color:#ef4444}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_8px_32px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow: 0 8px 32px rgba(0,0,0,.3);--tw-shadow-colored: 0 8px 32px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(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)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(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)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-green-500\/50{--tw-shadow-color: rgb(34 197 94 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-purple-500\/50{--tw-shadow-color: rgb(168 85 247 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-red-500\/50{--tw-shadow-color: rgb(239 68 68 / .5);--tw-shadow: var(--tw-shadow-colored)}.ring{--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(3px + 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)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-2xl{--tw-backdrop-blur: blur(40px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.touch-manipulation{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@keyframes pulse-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes scroll-down{0%{transform:translateY(-120vh)}to{transform:translateY(120vh)}}@keyframes scroll-up{0%{transform:translateY(120vh)}to{transform:translateY(-120vh)}}@keyframes scroll-down-slow{0%{transform:translateY(-120vh)}to{transform:translateY(120vh)}}@keyframes scroll-up-slow{0%{transform:translateY(120vh)}to{transform:translateY(-120vh)}}.animate-scroll-down{animation:scroll-down 25s linear infinite}.animate-scroll-up{animation:scroll-up 30s linear infinite}.animate-scroll-down-slow{animation:scroll-down-slow 35s linear infinite}.animate-scroll-up-slow{animation:scroll-up-slow 40s linear infinite}@keyframes slide-in-top{0%{transform:translateY(-100%) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes slide-down{0%{transform:translate(-50%,-120%) scale(.9);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}@keyframes shrink-width{0%{width:100%}to{width:0%}}@keyframes bell-ring{0%,to{transform:rotate(0) scale(1)}10%{transform:rotate(15deg) scale(1.1)}20%{transform:rotate(-10deg) scale(1.05)}30%{transform:rotate(15deg) scale(1.1)}40%{transform:rotate(-10deg) scale(1.05)}50%{transform:rotate(10deg) scale(1.08)}60%{transform:rotate(-5deg) scale(1.03)}70%{transform:rotate(5deg) scale(1.05)}80%{transform:rotate(-2deg) scale(1.02)}90%{transform:rotate(2deg) scale(1.01)}}.animate-slide-in-top{animation:slide-in-top .4s ease-out}.animate-slide-down{animation:slide-down .4s ease-out}.animate-shrink-width{animation:shrink-width 4s linear}.animate-bell-ring{animation:bell-ring .8s ease-in-out}.hover\:scale-105: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))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;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))}.hover\:scale-125:hover{--tw-scale-x: 1.25;--tw-scale-y: 1.25;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))}.hover\:border-pink-400\/50:hover{border-color:#f472b680}.hover\:bg-black\/80:hover{background-color:#000c}.hover\:bg-red-500\/20:hover{background-color:#ef444433}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/15:hover{background-color:#ffffff26}.hover\:bg-white\/20:hover{background-color:#fff3}.hover\:bg-white\/30:hover{background-color:#ffffff4d}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:bg-white\/90:hover{background-color:#ffffffe6}.hover\:bg-gradient-to-r:hover{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.hover\:from-green-700:hover{--tw-gradient-from: #15803d var(--tw-gradient-from-position);--tw-gradient-to: rgb(21 128 61 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-purple-500\/30:hover{--tw-gradient-from: rgb(168 85 247 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-purple-600:hover{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-red-700:hover{--tw-gradient-from: #b91c1c var(--tw-gradient-from-position);--tw-gradient-to: rgb(185 28 28 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-white\/30:hover{--tw-gradient-from: rgb(255 255 255 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-blue-700:hover{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.hover\:to-pink-500\/30:hover{--tw-gradient-to: rgb(236 72 153 / .3) var(--tw-gradient-to-position)}.hover\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.hover\:to-pink-700:hover{--tw-gradient-to: #be185d var(--tw-gradient-to-position)}.hover\:to-white\/20:hover{--tw-gradient-to: rgb(255 255 255 / .2) var(--tw-gradient-to-position)}.hover\:text-red-400:hover{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:text-white\/60:hover{color:#fff9}.hover\:opacity-100:hover{opacity:1}.hover\:drop-shadow-2xl:hover{--tw-drop-shadow: drop-shadow(0 25px 25px rgb(0 0 0 / .15));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2: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(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)}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.focus\:ring-pink-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(244 114 182 / var(--tw-ring-opacity, 1))}.focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.active\:scale-95: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))}.active\:bg-blue-500:active{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.active\:bg-purple-500:active{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.active\:bg-red-500:active{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.active\:bg-white\/20:active{background-color:#fff3}.active\:bg-white\/30:active{background-color:#ffffff4d}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:bg-pink-400{--tw-bg-opacity: 1;background-color:rgb(244 114 182 / var(--tw-bg-opacity, 1))}.group:hover .group-hover\:text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width: 768px){.md\:bottom-4{bottom:1rem}.md\:left-4{left:1rem}.md\:left-auto{left:auto}.md\:right-4{right:1rem}.md\:top-4{top:1rem}.md\:mt-24{margin-top:6rem}.md\:h-16{height:4rem}.md\:h-2{height:.5rem}.md\:h-32{height:8rem}.md\:h-6{height:1.5rem}.md\:h-64{height:16rem}.md\:h-8{height:2rem}.md\:h-96{height:24rem}.md\:w-16{width:4rem}.md\:w-2{width:.5rem}.md\:w-32{width:8rem}.md\:w-6{width:1.5rem}.md\:w-8{width:2rem}.md\:max-w-md{max-width:28rem}.md\:max-w-sm{max-width:24rem}.md\:max-w-xs{max-width:20rem}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:items-center{align-items:center}.md\:justify-center{justify-content:center}.md\:gap-4{gap:1rem}.md\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.md\:overflow-visible{overflow:visible}.md\:rounded-2xl{border-radius:1rem}.md\:rounded-3xl{border-radius:1.5rem}.md\:rounded-xl{border-radius:.75rem}.md\:p-3{padding:.75rem}.md\:p-4{padding:1rem}.md\:p-6{padding:1.5rem}.md\:px-3{padding-left:.75rem;padding-right:.75rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:py-2{padding-top:.5rem;padding-bottom:.5rem}.md\:pb-24{padding-bottom:6rem}.md\:pb-8{padding-bottom:2rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}.pass-the-aux{width:100%;max-width:600px;margin:0 auto;padding:8px;position:relative}@media (min-width: 768px){.pass-the-aux{padding:20px}}.upload-progress-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:3000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.upload-progress-card{background:linear-gradient(135deg,#667eea,#764ba2);padding:40px;border-radius:20px;text-align:center;color:#fff;box-shadow:0 10px 40px #00000080;min-width:300px}.upload-spinner{font-size:48px;animation:spin 2s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.upload-text{font-size:18px;font-weight:600;margin-bottom:20px}.progress-bar-container{width:100%;height:8px;background:#fff3;border-radius:4px;overflow:hidden;margin-bottom:10px}.progress-bar-fill{height:100%;background:#fff;border-radius:4px;transition:width .3s ease}.upload-percentage{font-size:24px;font-weight:700}.music-player-container{position:fixed;inset:0;background:linear-gradient(135deg,#8b5cf6f2,#ec4899f2);backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 24px 100px;z-index:100;overflow-y:auto;overflow-x:hidden}@media (min-width: 768px){.music-player-container{padding:80px 48px 120px}}.player-close-btn{position:fixed;top:20px;right:20px;width:44px;height:44px;border-radius:50%;background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:101}.player-close-btn:hover{background:#ef444499;transform:scale(1.1)}.player-close-btn:active{transform:scale(.95)}@media (min-width: 768px){.player-close-btn{top:32px;right:32px;width:48px;height:48px}}.dj-scratch-container{display:flex;flex-direction:column;align-items:center;margin-bottom:40px;position:relative}.vinyl-disc{width:200px;height:200px;border-radius:50%;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border:4px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 20px 60px #0009,inset 0 0 40px #ffffff1a;transition:transform .3s ease}@media (min-width: 768px){.vinyl-disc{width:280px;height:280px;border:5px solid rgba(255,255,255,.3)}}.vinyl-disc.spinning{animation:spinVinyl 3s linear infinite}@keyframes spinVinyl{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vinyl-icon{color:#ffffff4d;position:absolute}.vinyl-center{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#f59e0b);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px #fbbf24b3;z-index:1}@media (min-width: 768px){.vinyl-center{width:80px;height:80px}}.crown-vinyl{color:#fff;filter:drop-shadow(0 3px 6px rgba(0,0,0,.4))}.dj-label-badge{margin-top:16px;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 24px;border-radius:24px;border:1px solid rgba(255,255,255,.3)}@media (min-width: 768px){.dj-label-badge{padding:10px 32px;margin-top:20px}}.dj-text{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (min-width: 768px){.dj-text{font-size:16px;letter-spacing:2px}}.player-song-info{text-align:center;margin-bottom:32px;max-width:600px}.song-title-main{font-size:24px;font-weight:700;color:#fff;margin-bottom:8px;text-shadow:0 3px 12px rgba(0,0,0,.4);line-height:1.2}@media (min-width: 768px){.song-title-main{font-size:36px;margin-bottom:12px}}.song-subtitle{font-size:16px;font-weight:500;color:#ffffffd9}@media (min-width: 768px){.song-subtitle{font-size:20px}}.player-progress{display:flex;align-items:center;gap:16px;margin-bottom:32px;width:100%;max-width:600px}.time-text{font-size:13px;font-weight:600;color:#fffc;min-width:50px;text-align:center}@media (min-width: 768px){.time-text{font-size:15px;min-width:60px}}.progress-slider{flex:1;height:8px;border-radius:4px;background:#ffffff4d;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (min-width: 768px){.progress-slider{height:10px;border-radius:5px}}.progress-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;cursor:pointer;box-shadow:0 3px 12px #0006}@media (min-width: 768px){.progress-slider::-webkit-slider-thumb{width:24px;height:24px}}.progress-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;cursor:pointer;border:none;box-shadow:0 3px 12px #0006}@media (min-width: 768px){.progress-slider::-moz-range-thumb{width:24px;height:24px}}.player-controls{display:flex;justify-content:center;align-items:center;gap:16px;margin-bottom:40px}@media (min-width: 768px){.player-controls{gap:24px}}.control-btn{border:none;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;color:#fff}.primary-btn{width:70px;height:70px;background:linear-gradient(135deg,#8b5cf6,#ec4899);box-shadow:0 8px 28px #8b5cf699}@media (min-width: 768px){.primary-btn{width:80px;height:80px}}.primary-btn:hover{transform:scale(1.1);box-shadow:0 10px 32px #8b5cf6cc}.primary-btn:active{transform:scale(.95)}.secondary-btn{width:56px;height:56px;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}@media (min-width: 768px){.secondary-btn{width:64px;height:64px}}.secondary-btn:hover{background:#ffffff4d;transform:translateY(-2px)}.secondary-btn:active{transform:translateY(0)}.reaction-buttons{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}@media (min-width: 768px){.reaction-buttons{gap:16px}}.reaction-btn{width:56px;height:56px;border-radius:50%;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);cursor:pointer;font-size:28px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}@media (min-width: 768px){.reaction-btn{width:64px;height:64px;font-size:32px}}.reaction-btn:hover{transform:scale(1.2);background:#ffffff40}.reaction-btn.active{transform:scale(1.3);background:#fff6;box-shadow:0 0 24px #fff9;animation:pulse .5s ease}@keyframes pulse{0%,to{transform:scale(1.3)}50%{transform:scale(1.5)}}.reactions-container{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:99}.floating-reaction{position:absolute;bottom:0;font-size:48px;animation:floatUp 3s ease-out forwards;pointer-events:none}@media (min-width: 768px){.floating-reaction{font-size:64px}}@keyframes floatUp{0%{bottom:0;opacity:1;transform:translateY(0) scale(1)}to{bottom:100%;opacity:0;transform:translateY(-100px) scale(1.5)}}.no-music-card{background:linear-gradient(135deg,#8b5cf626,#ec489926);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:32px;text-align:center;box-shadow:0 8px 32px #8b5cf633,inset 0 1px #ffffff4d}.no-music-content{display:flex;flex-direction:column;align-items:center;gap:16px}.no-music-icon{color:#fff6;animation:pulse-slow 2s ease-in-out infinite}@keyframes pulse-slow{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.no-music-text{font-size:16px;font-weight:600;color:#ffffffe6}.take-control-btn-modern{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border:none;border-radius:24px;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #8b5cf666}.take-control-btn-modern:hover{transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf699}.take-control-btn-modern:active{transform:translateY(0)}.music-banner-glass{position:relative;background:linear-gradient(135deg,#8b5cf626,#ec489926);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:12px 16px;margin-bottom:12px;box-shadow:0 8px 32px #8b5cf633,inset 0 1px #ffffff4d,0 1px 2px #0000001a;overflow:hidden}@media (min-width: 768px){.music-banner-glass{border-radius:20px;padding:20px 24px;margin-bottom:20px}}.music-visualizer{position:absolute;bottom:0;left:0;right:0;height:4px;display:flex;align-items:flex-end;gap:4px;padding:0 24px;opacity:.6}.visualizer-bar{flex:1;background:linear-gradient(to top,#8b5cf6,#ec4899);border-radius:2px 2px 0 0;animation:visualize .8s ease-in-out infinite}.visualizer-bar:nth-child(1){animation-delay:0s}.visualizer-bar:nth-child(2){animation-delay:.1s}.visualizer-bar:nth-child(3){animation-delay:.2s}.visualizer-bar:nth-child(4){animation-delay:.1s}.visualizer-bar:nth-child(5){animation-delay:0s}@keyframes visualize{0%,to{height:2px}50%{height:4px}}.banner-content{display:flex;align-items:center;gap:12px;position:relative;z-index:1}@media (min-width: 768px){.banner-content{gap:16px}}.crown-container{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#fbbf24,#f59e0b);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #fbbf2466;flex-shrink:0}@media (min-width: 768px){.crown-container{width:48px;height:48px;border-radius:12px}}.crown-icon-glass{color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.song-info-glass{flex:1;min-width:0}.now-playing-text{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px}.song-title-glass{font-size:14px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 2px 8px rgba(0,0,0,.3);margin-bottom:2px}@media (min-width: 768px){.song-title-glass{font-size:16px}}.dj-name-glass{font-size:12px;font-weight:500;color:#fffc}.no-aux-text{font-size:14px;font-weight:600;color:#ffffffe6;margin-bottom:8px}.take-control-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border:none;border-radius:12px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #8b5cf666}.take-control-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf699}.take-control-btn:active{transform:translateY(0)}.glass-controls{display:flex;gap:8px;flex-shrink:0}@media (min-width: 768px){.glass-controls{gap:10px}}.glass-btn{width:36px;height:36px;border-radius:10px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000001a}@media (min-width: 768px){.glass-btn{width:44px;height:44px;border-radius:12px}}.glass-btn:hover{background:#ffffff40;transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.glass-btn:active{transform:translateY(0)}.play-pause-btn{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.play-pause-btn:hover{background:linear-gradient(135deg,#7c3aed,#db2777)}.stop-btn{background:#ef444433}.stop-btn:hover{background:#ef44444d}.close-btn-glass{background:#ffffff1a}.close-btn-glass:hover{background:#fff3}.minimized-music-indicator{position:fixed;top:20px;right:20px;width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border:2px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:0 8px 24px #8b5cf666;z-index:1000;transition:all .3s ease;animation:pulse 2s ease-in-out infinite}.minimized-music-indicator:hover{transform:scale(1.1);box-shadow:0 12px 32px #8b5cf699}@keyframes pulse{0%,to{box-shadow:0 8px 24px #8b5cf666}50%{box-shadow:0 8px 32px #ec489999}}.aux-status,.crown-icon,.aux-text,.now-playing-label,.song-name-inline,.dj-label,.admin-controls,.control-btn-mini{display:none}.control-btn-mini:active{transform:scale(.95)}.quit-btn{background:#ff52524d}.quit-btn:hover{background:#ff525280}.youtube-player-container{border-radius:12px;overflow:hidden;margin-bottom:15px;box-shadow:0 4px 15px #0000004d}.music-control-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 30px;border-radius:25px;font-size:18px;font-weight:600;cursor:pointer;width:100%;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 15px #667eea66}.music-control-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #667eea99}.music-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.music-modal{background:linear-gradient(180deg,#2d1b69,#1a0f3d);border-radius:20px;padding:30px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;color:#fff;position:relative;box-shadow:0 10px 40px #00000080;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.close-btn{position:absolute;top:20px;right:20px;background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:20px;cursor:pointer;transition:background .3s,transform .2s}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-header{text-align:center;margin-bottom:30px}.modal-icon{font-size:48px;display:block;margin-bottom:10px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.modal-header h2{margin:10px 0;font-size:24px;background:linear-gradient(135deg,#ff6b9d,#c471f5,#ffa800);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-subtitle{color:#b8b8ff;margin:5px 0;font-size:16px}.music-options{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.option-card{background:#ffffff1a;padding:15px;border-radius:15px;display:flex;align-items:center;gap:15px;transition:background .3s,transform .2s;cursor:pointer}.option-card:hover{background:#ffffff26;transform:translate(5px)}.option-card.highlight{background:#ffd70033;border:1px solid rgba(255,215,0,.5)}.option-icon{font-size:32px;min-width:40px}.option-card h3{margin:0 0 5px;font-size:16px;font-weight:600}.option-card p{margin:0;color:#b8b8ff;font-size:14px}.option-card-large{background:linear-gradient(135deg,#8b5cf64d,#ec48994d);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3);border-radius:20px;padding:32px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;transition:all .3s ease;box-shadow:0 8px 32px #8b5cf633}.option-card-large:hover{transform:translateY(-4px);border-color:#ffffff80;box-shadow:0 12px 40px #8b5cf666}.option-card-large:active{transform:translateY(0)}.option-card-icon{font-size:64px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.option-card-content{width:100%}.option-card-content h3{font-size:24px;font-weight:700;color:#fff;margin-bottom:8px;text-shadow:0 2px 8px rgba(0,0,0,.3)}.option-card-content p{font-size:15px;color:#fffc;margin-bottom:16px}.upload-cta{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:24px;color:#fff;font-size:16px;font-weight:600;box-shadow:0 6px 20px #8b5cf680;transition:all .3s ease}.option-card-large:hover .upload-cta{transform:scale(1.05);box-shadow:0 8px 24px #8b5cf6b3}.modal-footer{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.modal-hint{text-align:center;color:#ffffffb3;font-size:14px;margin:0}.url-input-section{margin-bottom:20px}.url-input-section label{display:block;margin-bottom:10px;font-size:14px;font-weight:600}.url-input-section input{width:100%;padding:15px;border-radius:10px;border:2px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;font-size:14px;margin-bottom:10px;transition:border-color .3s;box-sizing:border-box}.url-input-section input:focus{outline:none;border-color:#ffffff80}.url-input-section input::-moz-placeholder{color:#ffffff80}.url-input-section input::placeholder{color:#ffffff80}.add-stream-btn{width:100%;padding:15px;background:#fff3;border:none;border-radius:10px;color:#fff;font-weight:600;font-size:15px;cursor:pointer;transition:background .3s,transform .2s}.add-stream-btn:hover{background:#ffffff4d;transform:scale(1.02)}.supported-platforms{background:#0000004d;padding:15px;border-radius:10px;margin-bottom:20px}.supported-platforms p{margin:0 0 10px;font-size:14px;font-weight:600}.platforms{display:flex;flex-wrap:wrap;gap:10px}.platforms span{background:#ffffff1a;padding:5px 10px;border-radius:5px;font-size:13px}.pro-tip{background:#8b5c2e80;padding:15px;border-radius:10px;display:flex;gap:10px;margin-bottom:20px;border:1px solid rgba(255,215,0,.3)}.pro-tip span{font-size:24px}.pro-tip div{flex:1}.pro-tip strong{display:block;margin-bottom:5px;color:#ffd89b}.pro-tip p{margin:0;font-size:14px;color:#ffd89b}.start-btn{width:100%;padding:18px;background:linear-gradient(135deg,#c471f5,#fa71cd);border:none;border-radius:15px;color:#fff;font-size:18px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 15px #c471f566}.start-btn:hover{transform:scale(1.02);box-shadow:0 6px 20px #c471f599}.current-song{margin-top:20px;padding:15px;background:#ffffff1a;border-radius:10px;color:#fff;border-left:4px solid #667eea}.current-song p{margin:5px 0}.added-by{font-size:12px;color:#b8b8ff;margin-top:5px}.music-player{background:linear-gradient(135deg,#667eea33,#764ba233);border-radius:16px;padding:20px;margin-top:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.youtube-player{border-radius:12px;overflow:hidden;margin-bottom:15px}.now-playing-info{display:flex;flex-direction:column;gap:15px}.song-details{display:flex;align-items:center;gap:15px}.song-icon{font-size:40px;animation:pulse 2s ease-in-out infinite}.song-text{flex:1}.song-name{font-size:16px;font-weight:600;color:#fff;margin-bottom:4px}.progress-container{display:flex;align-items:center;gap:10px}.time-label{font-size:12px;color:#b8b8ff;min-width:40px}.progress-bar{flex:1;height:6px;border-radius:3px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff3;cursor:pointer}.progress-bar::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;cursor:pointer;box-shadow:0 2px 8px #0000004d}.progress-bar::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;cursor:pointer;border:none;box-shadow:0 2px 8px #0000004d}.playback-controls{display:flex;justify-content:center;align-items:center;gap:20px}.control-btn{background:#ffffff26;border:none;border-radius:50%;width:50px;height:50px;font-size:20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.control-btn:hover:not(:disabled){background:#ffffff40;transform:scale(1.1)}.control-btn:disabled{opacity:.3;cursor:not-allowed}.play-btn{width:60px;height:60px;font-size:24px;background:linear-gradient(135deg,#667eea,#764ba2)}.play-btn:hover{background:linear-gradient(135deg,#7688f0,#8558b8);box-shadow:0 4px 15px #667eea80}.volume-container{display:flex;align-items:center;gap:10px}.volume-icon{font-size:20px}.volume-slider{flex:1;height:6px;border-radius:3px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff3;cursor:pointer}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;cursor:pointer}.volume-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;cursor:pointer;border:none}.volume-label{font-size:12px;color:#b8b8ff;min-width:40px;text-align:right}.playlist{margin-top:20px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.playlist h4{margin:0 0 10px;font-size:14px;color:#b8b8ff}.playlist-items{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.playlist-item{display:flex;align-items:center;gap:10px;padding:10px;background:#ffffff0d;border-radius:8px;cursor:pointer;transition:all .3s ease}.playlist-item:hover{background:#ffffff26;transform:translate(5px)}.playlist-item.active{background:#667eea4d;border-left:3px solid #667eea}.playlist-number{font-size:12px;color:#b8b8ff;min-width:20px}.playlist-name{flex:1;font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playlist-type{font-size:16px}.url-input-inline{width:100%;padding:10px;margin-top:10px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;font-size:13px}.url-input-inline::-moz-placeholder{color:#ffffff80}.url-input-inline::placeholder{color:#ffffff80}.url-input-inline:focus{outline:none;border-color:#fff6}.add-url-btn{width:100%;padding:8px;margin-top:8px;background:#fff3;border:none;border-radius:6px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease}.add-url-btn:hover{background:#ffffff4d}@media (max-width: 768px){.aux-status{padding:10px 15px;border-radius:20px}.crown-icon{font-size:20px}.now-playing-label{font-size:10px}.song-name-inline{font-size:13px}.control-btn-mini{width:32px;height:32px;font-size:14px}.admin-controls{gap:6px}.youtube-player-container{margin-bottom:12px}.music-player{padding:15px}.song-icon{font-size:32px}.song-name{font-size:14px}.control-btn{width:45px;height:45px;font-size:18px}.play-btn{width:55px;height:55px;font-size:22px}.playback-controls{gap:15px}.playlist-items{max-height:150px}}@media (max-width: 480px){.aux-status{padding:8px 12px;border-radius:18px;gap:8px}.crown-icon{font-size:18px}.now-playing-label{font-size:9px}.song-name-inline{font-size:12px}.control-btn-mini{width:28px;height:28px;font-size:12px}.admin-controls{gap:4px}.youtube-player-container iframe{height:180px}.music-player{padding:12px}.control-btn{width:40px;height:40px;font-size:16px}.play-btn{width:50px;height:50px;font-size:20px}.playback-controls{gap:10px}}.music-modal::-webkit-scrollbar{width:8px}.music-modal::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.music-modal::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.music-modal::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.reaction-notification{position:fixed;top:80px;left:50%;transform:translate(-50%);background:#000000e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:12px 24px;border-radius:24px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 32px #00000080;border:1px solid rgba(255,255,255,.2);animation:slideInDown .3s ease-out;z-index:102}@media (min-width: 768px){.reaction-notification{top:100px;padding:14px 28px}}@keyframes slideInDown{0%{transform:translate(-50%) translateY(-100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.reaction-emoji{font-size:28px;animation:bounceEmoji .5s ease}@media (min-width: 768px){.reaction-emoji{font-size:32px}}@keyframes bounceEmoji{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.reaction-from{font-size:14px;font-weight:600;color:#fff;white-space:nowrap}@media (min-width: 768px){.reaction-from{font-size:16px}}.dj-status-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;border:2px solid;margin-top:12px;animation:badgeAppear .5s ease-out,badgePulse 2s ease-in-out infinite;box-shadow:0 4px 16px #0000004d}@media (min-width: 768px){.dj-status-badge{padding:10px 20px;gap:10px;margin-top:16px}}@keyframes badgeAppear{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes badgePulse{0%,to{transform:scale(1);box-shadow:0 4px 16px #0000004d}50%{transform:scale(1.05);box-shadow:0 6px 24px #00000080}}.status-icon{font-size:20px;animation:rotateIcon 3s linear infinite}@media (min-width: 768px){.status-icon{font-size:24px}}@keyframes rotateIcon{0%,90%,to{transform:rotate(0)}92%,98%{transform:rotate(-10deg)}94%,96%{transform:rotate(10deg)}}.status-text{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}@media (min-width: 768px){.status-text{font-size:14px;letter-spacing:1.5px}}.status-count{font-size:11px;font-weight:600;color:#ffffffe6;background:#0000004d;padding:3px 8px;border-radius:12px}@media (min-width: 768px){.status-count{font-size:12px;padding:4px 10px}}.floating-reaction{cursor:help;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.floating-reaction:hover:after{content:attr(title);position:absolute;bottom:-30px;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;white-space:nowrap;pointer-events:none;z-index:1000}.announcement-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .3s ease-out;overflow-y:auto}.announcement-modal{background:linear-gradient(180deg,#2d1b69,#1a0f3d);border-radius:24px;padding:32px 24px 24px;max-width:480px;width:100%;max-height:85vh;overflow-y:auto;color:#fff;box-shadow:0 20px 60px #000c;animation:slideUp .4s ease-out;position:relative}@media (min-width: 768px){.announcement-modal{padding:36px 30px 28px}}.announcement-close-btn{position:absolute;top:16px;right:16px;background:#ffffff26;border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.announcement-close-btn:hover{background:#ffffff40;transform:rotate(90deg)}.announcement-close-btn:active{transform:rotate(90deg) scale(.95)}@keyframes slideUp{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.announcement-header{text-align:center;margin-bottom:24px}.announcement-icon{font-size:48px;display:block;margin-bottom:12px;animation:bounce 1s ease-in-out infinite}@media (min-width: 768px){.announcement-icon{font-size:56px}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.announcement-header h2{margin:10px 0 8px;font-size:24px;font-weight:800;background:linear-gradient(135deg,#ff6b9d,#c471f5,#ffa800);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.3}@media (min-width: 768px){.announcement-header h2{font-size:28px}}.announcement-subtitle{color:#b8b8ff;margin:0;font-size:15px;font-weight:500}@media (min-width: 768px){.announcement-subtitle{font-size:17px}}.announcement-features{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.feature-item{background:#ffffff14;padding:12px 14px;border-radius:14px;display:flex;align-items:flex-start;gap:12px;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}@media (min-width: 768px){.feature-item{padding:14px 16px}}.feature-item:hover{background:#ffffff1f;transform:translate(5px)}.feature-item.highlight{background:#ffd7001f;border:1.5px solid rgba(255,215,0,.35);box-shadow:0 0 16px #ffd70026}.feature-icon{font-size:28px;min-width:32px;display:flex;align-items:center;justify-content:center}@media (min-width: 768px){.feature-icon{font-size:32px;min-width:36px}}.feature-text{flex:1;padding-top:2px}.feature-text strong{display:block;font-size:14px;margin-bottom:3px;color:#fff}@media (min-width: 768px){.feature-text strong{font-size:15px}}.feature-text p,.feature-item:not(.highlight) .feature-text{color:#b8b8ff;font-size:13px;margin:0;line-height:1.4}@media (min-width: 768px){.feature-text p,.feature-item:not(.highlight) .feature-text{font-size:14px}}.feature-item.highlight .feature-text{color:#ffd89b}.pro-tip-announcement{background:linear-gradient(135deg,#8b5c2e66,#b8860b40);padding:14px 16px;border-radius:14px;display:flex;gap:12px;margin-bottom:20px;border:1px solid rgba(255,215,0,.25);align-items:flex-start}@media (min-width: 768px){.pro-tip-announcement{padding:16px 18px}}.tip-icon{font-size:28px;animation:pulse 2s ease-in-out infinite}@media (min-width: 768px){.tip-icon{font-size:30px}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.pro-tip-announcement div{flex:1}.pro-tip-announcement strong{display:block;margin-bottom:4px;color:#ffd89b;font-size:14px}@media (min-width: 768px){.pro-tip-announcement strong{font-size:15px}}.pro-tip-announcement p{margin:0;font-size:13px;color:#ffd89b;line-height:1.4}@media (min-width: 768px){.pro-tip-announcement p{font-size:14px}}.announcement-buttons{display:flex;flex-direction:column;gap:10px}.get-started-btn{width:100%;padding:14px;background:linear-gradient(135deg,#c471f5,#fa71cd);border:none;border-radius:14px;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #c471f566}@media (min-width: 768px){.get-started-btn{padding:16px;font-size:17px}}.get-started-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #c471f599}.get-started-btn:active{transform:translateY(0)}.skip-btn{width:100%;padding:12px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#ffffffb3;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}@media (min-width: 768px){.skip-btn{padding:14px;font-size:15px}}.skip-btn:hover{background:#ffffff0d;color:#ffffffe6;border-color:#ffffff4d}@media (max-width: 768px){.announcement-modal{padding:30px 20px;border-radius:20px;max-height:85vh}.announcement-close-btn{top:12px;right:12px;width:32px;height:32px;font-size:18px}.announcement-icon{font-size:48px;margin-bottom:10px}.announcement-header{margin-bottom:25px}.announcement-header h2{font-size:22px}.announcement-subtitle{font-size:15px}.announcement-features{gap:12px;margin-bottom:25px}.feature-item{padding:12px;gap:12px}.feature-icon{font-size:28px;min-width:32px}.feature-text strong{font-size:14px}.feature-text p,.feature-item:not(.highlight) .feature-text{font-size:13px}.pro-tip-announcement{padding:15px;gap:12px;margin-bottom:25px}.tip-icon{font-size:28px}.pro-tip-announcement strong{font-size:14px}.pro-tip-announcement p{font-size:13px}.get-started-btn{font-size:16px;padding:15px;margin-bottom:10px}.skip-btn{padding:12px;font-size:14px}}@media (max-width: 480px){.announcement-overlay{padding:15px}.announcement-modal{padding:25px 18px;border-radius:18px}.announcement-close-btn{width:30px;height:30px;font-size:16px}.announcement-icon{font-size:42px}.announcement-header h2{font-size:20px}.announcement-subtitle{font-size:14px}.feature-item{padding:10px;gap:10px;border-radius:12px}.feature-icon{font-size:24px;min-width:28px}.feature-text strong{font-size:13px;margin-bottom:2px}.feature-text p,.feature-item:not(.highlight) .feature-text{font-size:12px}.pro-tip-announcement{padding:12px;gap:10px}.tip-icon{font-size:24px}.pro-tip-announcement strong{font-size:13px;margin-bottom:4px}.pro-tip-announcement p{font-size:12px}.get-started-btn{font-size:15px;padding:14px;border-radius:14px}.skip-btn{padding:11px;font-size:13px;border-radius:10px}}@media (max-width: 360px){.announcement-modal{padding:20px 15px}.announcement-header h2{font-size:18px}.feature-item{flex-direction:column;align-items:flex-start;gap:8px}.feature-icon{font-size:28px}.get-started-btn{font-size:14px;padding:13px}}@media (max-height: 600px) and (orientation: landscape){.announcement-modal{max-height:95vh;padding:20px 25px}.announcement-icon{font-size:36px;margin-bottom:8px}.announcement-header{margin-bottom:20px}.announcement-header h2{font-size:20px;margin:8px 0 5px}.announcement-subtitle{font-size:14px}.announcement-features{gap:10px;margin-bottom:20px}.feature-item{padding:10px}.pro-tip-announcement{padding:12px;margin-bottom:20px}.get-started-btn{padding:14px;margin-bottom:8px}.skip-btn{padding:10px}}.announcement-modal::-webkit-scrollbar{width:8px}.announcement-modal::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.announcement-modal::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.announcement-modal::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.image-cropper-overlay{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.image-cropper-modal{background:var(--bg-primary, #ffffff);border-radius:16px;padding:24px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;z-index:10001;border:1px solid var(--border-color)}.cropper-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.cropper-header h3{margin:0;color:var(--text-primary);font-size:18px}.cropper-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease}.cropper-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.cropper-content{display:flex;flex-direction:column;gap:20px}.image-preview-container{position:relative;width:100%;height:400px;display:flex;justify-content:center;align-items:center;background:#1a1a1a;border-radius:12px;overflow:hidden}.image-preview{position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:100%}.image-preview img{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;transition:transform .2s ease}.image-loading{width:400px;height:300px;display:flex;align-items:center;justify-content:center;background-color:#2a2a2a;border-radius:8px;color:#fff}.crop-overlay-circular{position:absolute;inset:0;pointer-events:none;display:flex;justify-content:center;align-items:center}.crop-overlay-circular:before{content:"";position:absolute;inset:0;background:#00000080;mask:radial-gradient(circle at center,transparent 0,transparent 150px,black 150px);-webkit-mask:radial-gradient(circle at center,transparent 0,transparent 150px,black 150px)}.crop-frame-circular{width:300px;height:300px;border:3px solid #3b82f6;border-radius:50%;box-shadow:0 0 0 9999px #00000080;position:relative}.crop-grid{position:absolute;width:100%;height:100%;display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr 1fr;border-radius:50%;overflow:hidden}.grid-line{position:absolute;background:#ffffff4d}.grid-line:nth-child(1){left:33.33%;top:0;width:1px;height:100%}.grid-line:nth-child(2){left:66.66%;top:0;width:1px;height:100%}.grid-line.horizontal:nth-child(3){top:33.33%;left:0;width:100%;height:1px}.grid-line.horizontal:nth-child(4){top:66.66%;left:0;width:100%;height:1px}.crop-hint{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#000000b3;color:#fff;padding:8px 16px;border-radius:20px;font-size:13px;pointer-events:none}.cropper-controls{display:flex;flex-direction:column;gap:16px;padding:16px;background:var(--bg-secondary);border-radius:12px}.control-group{display:flex;flex-direction:column;gap:8px}.control-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.zoom-controls,.rotation-controls{display:flex;align-items:center;gap:12px}.zoom-controls button,.rotation-controls button{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:8px;border-radius:8px;cursor:pointer;transition:all .2s ease}.zoom-controls button:hover,.rotation-controls button:hover{background:var(--accent-primary);color:#fff}.zoom-controls input[type=range],.rotation-controls input[type=range]{flex:1;accent-color:#3b82f6;height:6px;border-radius:3px;background:#e5e7eb;cursor:pointer}.zoom-controls input[type=range]::-webkit-slider-thumb,.rotation-controls input[type=range]::-webkit-slider-thumb{width:18px;height:18px;border-radius:50%;background:#3b82f6;cursor:pointer;box-shadow:0 2px 4px #0003}.zoom-controls input[type=range]::-moz-range-thumb,.rotation-controls input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#3b82f6;cursor:pointer;box-shadow:0 2px 4px #0003;border:none}.cropper-actions{display:flex;gap:12px;justify-content:space-between;padding-top:16px;border-top:1px solid var(--border-color, #e5e7eb)}.btn-primary,.btn-secondary{flex:1;padding:14px 24px;border-radius:8px;font-weight:600;font-size:15px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;border:none}.btn-primary{background:#3b82f6;color:#fff;box-shadow:0 2px 8px #3b82f64d}.btn-primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-primary:disabled{background:#94a3b8;cursor:not-allowed;opacity:.6}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.btn-secondary:hover{background:#e5e7eb;transform:translateY(-1px)}@media (max-width: 768px){.image-cropper-modal{width:95%;padding:16px}.cropper-controls{padding:12px}.cropper-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.user-profile-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.user-profile-card{background:#fff;border-radius:1rem;box-shadow:0 20px 60px #0000004d;max-width:32rem;width:100%;padding:2rem;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease-out}.profile-close-btn{position:absolute;top:1rem;right:1rem;background:#f3f4f6;border:none;border-radius:.5rem;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.profile-close-btn:hover{background:#e5e7eb;color:#111827}.profile-header{text-align:center;margin-bottom:2rem}.profile-avatar-container{position:relative;display:inline-block;margin-bottom:1rem}.profile-avatar{width:5rem;height:5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden;position:relative;box-shadow:0 8px 20px #667eea4d}.profile-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-uploading-overlay{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;border-radius:50%}.change-photo-btn{position:absolute;bottom:0;right:0;width:2rem;height:2rem;background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid white;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .2s;box-shadow:0 2px 8px #0003;z-index:10;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.change-photo-btn:active{transform:scale(.95)}.change-photo-btn:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 12px #667eea66}.change-photo-btn:disabled{opacity:.6;cursor:not-allowed}.profile-header h2{font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 .5rem}.profile-bio-preview{color:#6b7280;font-size:.875rem;font-style:italic;margin:.5rem 0 0;max-width:20rem;margin-left:auto;margin-right:auto}.profile-hint{color:#667eea;font-size:.875rem;margin:.5rem 0 0;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.profile-alert{padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1.5rem;font-size:.875rem;animation:slideDown .3s ease-out}.profile-alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.profile-alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.profile-content{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.profile-field{display:flex;flex-direction:column;gap:.5rem}.profile-field label{font-size:.875rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.5rem}.profile-field p{color:#6b7280;margin:0;padding:.75rem 1rem;background:#f9fafb;border-radius:.5rem;font-size:.875rem}.profile-field input{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;transition:all .2s;outline:none}.profile-field input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.profile-field input:disabled{background:#f9fafb;cursor:not-allowed}.profile-field textarea{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;transition:all .2s;outline:none;font-family:inherit;resize:vertical;min-height:4rem}.profile-field textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.profile-field textarea:disabled{background:#f9fafb;cursor:not-allowed}.profile-bio{font-style:italic;color:#6b7280;white-space:pre-wrap;word-break:break-word}.bio-char-count{text-align:right;font-size:.75rem;color:#9ca3af;display:block;margin-top:.25rem}.profile-actions{display:flex;gap:.75rem;flex-wrap:wrap}.profile-btn{flex:1;min-width:120px;padding:.75rem 1.25rem;border:none;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.profile-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.profile-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d}.profile-btn-secondary{background:#f3f4f6;color:#374151}.profile-btn-secondary:hover:not(:disabled){background:#e5e7eb}.profile-btn-danger{background:#ef4444;color:#fff}.profile-btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-2px);box-shadow:0 10px 20px #ef44444d}.profile-btn:disabled{opacity:.7;cursor:not-allowed}.profile-btn:active:not(:disabled){transform:translateY(0)}.loading-spinner{width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@media (max-width: 640px){.user-profile-overlay{padding:0;align-items:flex-end}.user-profile-card{padding:1.5rem;border-radius:1.5rem 1.5rem 0 0;max-height:90vh;overflow-y:auto;animation:slideUpMobile .3s ease-out}@keyframes slideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.profile-actions{flex-direction:column}.profile-btn{min-width:100%;padding:.875rem 1.5rem;font-size:1rem}.profile-avatar{width:6rem;height:6rem}.change-photo-btn{width:2.5rem;height:2.5rem}.profile-field input,.profile-field textarea{font-size:16px}.profile-header h2{font-size:1.75rem}}@media (prefers-color-scheme: dark){.user-profile-card{background:#1f2937}.profile-close-btn{background:#374151;color:#9ca3af}.profile-close-btn:hover{background:#4b5563;color:#f9fafb}.profile-header h2{color:#f9fafb}.profile-field label{color:#d1d5db}.profile-field p{background:#374151;color:#d1d5db}.profile-field input{background:#374151;border-color:#4b5563;color:#f9fafb}.profile-field input:disabled{background:#1f2937}.profile-btn-secondary{background:#374151;color:#d1d5db}.profile-btn-secondary:hover:not(:disabled){background:#4b5563}}.bio-char-count{font-size:.75rem;color:#6b7280;text-align:right;margin-top:.25rem;display:block}.profile-field{margin-bottom:1.5rem}.profile-field:last-child{margin-bottom:0}.profile-field textarea{resize:vertical;min-height:80px}.profile-field label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#374151;margin-bottom:.5rem}.theme-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin-top:.5rem}.theme-option{display:flex;align-items:center;gap:.5rem;padding:.75rem;border:2px solid #e5e7eb;border-radius:.5rem;background:#fff;cursor:pointer;transition:all .2s ease;font-size:.875rem}.theme-option:hover{border-color:var(--theme-color);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.theme-option.selected{border-color:var(--theme-color);background:#3b82f61a;box-shadow:0 0 0 3px #3b82f633}.theme-preview{width:20px;height:20px;border-radius:50%;flex-shrink:0;box-shadow:0 2px 4px #0003}.theme-option span{font-weight:500;color:#374151}.theme-option.selected span{color:var(--theme-color);font-weight:600}.photo-upload-buttons{display:flex;gap:.5rem;position:absolute;bottom:-10px;right:-10px}.quick-upload-btn{background:#10b981;border:2px solid white;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.quick-upload-btn:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.quick-upload-btn:disabled{opacity:.5;cursor:not-allowed}.quick-upload-btn svg{color:#fff}@media (prefers-color-scheme: dark){.bio-char-count{color:#9ca3af}.profile-field label{color:#d1d5db}.profile-field textarea{background:#374151;border-color:#4b5563;color:#f9fafb}.theme-option{background:#374151;border-color:#4b5563}.theme-option span{color:#d1d5db}.theme-option:hover{background:#4b5563}.theme-option.selected{background:#3b82f633;border-color:var(--theme-color)}.quick-upload-btn{background:#059669}.quick-upload-btn:hover:not(:disabled){background:#047857}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;position:relative;overflow:hidden;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.auth-container:before{content:"";position:absolute;width:200%;height:200%;top:-50%;left:-50%;z-index:0;background:radial-gradient(circle at 20% 50%,rgba(102,126,234,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(118,75,162,.1) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(102,126,234,.08) 0%,transparent 50%);animation:float 20s ease-in-out infinite}.auth-background{position:absolute;inset:0;z-index:0;overflow:hidden}.auth-gradient{position:absolute;inset:0;background:linear-gradient(135deg,#667eea,#764ba2);opacity:.1;animation:pulse 4s ease-in-out infinite}.auth-card{position:relative;z-index:1;background:#fff;border-radius:1rem;box-shadow:0 20px 60px #0000001a;max-width:26rem;width:100%;padding:2rem 2rem 1.75rem;animation:slideUp .4s ease-out;transition:transform .3s ease,box-shadow .3s ease}.auth-card:hover{transform:translateY(-5px);box-shadow:0 25px 70px #00000026}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes iconRotate{0%{transform:rotate(0) scale(1)}50%{transform:rotate(5deg) scale(1.1)}to{transform:rotate(0) scale(1)}}.auth-header{text-align:center;margin-bottom:1.5rem;position:relative}.back-button{position:absolute;left:0;top:0;background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:all .2s;display:flex;align-items:center;justify-content:center}.back-button:hover:not(:disabled){background:#f3f4f6;color:#111827}.back-button:disabled{opacity:.5;cursor:not-allowed}.auth-icon{width:3rem;height:3rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#fff;animation:iconRotate 3s ease-in-out infinite;box-shadow:0 8px 20px #667eea4d;transition:all .3s ease}.auth-icon:hover{animation:float 1s ease-in-out infinite;box-shadow:0 12px 30px #667eea66}.auth-header h1{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:.35rem;animation:slideDown .5s ease-out .2s both}.auth-header p{color:#6b7280;font-size:.875rem;animation:slideDown .5s ease-out .3s both}.auth-alert{padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem;font-size:.875rem;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.auth-alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.auth-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem;animation:slideDown .4s ease-out both}.form-group:nth-child(1){animation-delay:.4s}.form-group:nth-child(2){animation-delay:.5s}.form-group:nth-child(3){animation-delay:.6s}.form-group:nth-child(4){animation-delay:.7s}.form-group label{font-size:.875rem;font-weight:500;color:#374151;display:flex;align-items:center;gap:.5rem}.form-group input{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;transition:all .3s;outline:none}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.form-group input:disabled{background:#f9fafb;cursor:not-allowed}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:3rem}.password-toggle{position:absolute;right:.75rem;background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.password-toggle:hover:not(:disabled){color:#111827}.password-toggle:disabled{cursor:not-allowed}.auth-submit-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);background-size:200% 200%;color:#fff;border:none;border-radius:.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;margin-top:.25rem;display:flex;align-items:center;justify-content:center;min-height:2.75rem;position:relative;overflow:hidden}.auth-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.auth-submit-btn:hover:before{left:100%}.auth-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d;background-position:100% 0}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{opacity:.7;cursor:not-allowed}.loading-spinner{width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.forgot-password-btn{background:none;border:none;color:#667eea;font-size:.875rem;cursor:pointer;text-align:right;margin-top:-.5rem;padding:.25rem;transition:color .2s}.forgot-password-btn:hover:not(:disabled){color:#764ba2;text-decoration:underline}.forgot-password-btn:disabled{opacity:.5;cursor:not-allowed}.auth-divider{position:relative;text-align:center;margin:.75rem 0}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb}.auth-divider span{position:relative;background:#fff;padding:0 1rem;color:#6b7280;font-size:.875rem}.google-signin-btn{padding:.75rem 1.5rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:.5rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:.75rem;position:relative;overflow:hidden}.google-signin-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#667eea1a;transform:translate(-50%,-50%);transition:width .6s,height .6s}.google-signin-btn:hover:before{width:300px;height:300px}.google-signin-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.google-signin-btn svg{position:relative;z-index:1}.google-signin-btn:hover:not(:disabled) svg{animation:iconRotate .6s ease}.google-signin-btn:disabled{opacity:.5;cursor:not-allowed}.auth-toggle{text-align:center;font-size:.875rem;color:#6b7280;margin-top:.75rem;padding:.75rem;background:linear-gradient(135deg,#f9fafb,#fff);border-radius:.5rem;border:1px solid #e5e7eb;position:relative;overflow:hidden;transition:all .3s ease}.auth-toggle:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(102,126,234,.1),transparent);transition:left .8s}.auth-toggle:hover:before{left:100%}.auth-toggle:hover{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.auth-toggle button{background:none;border:none;color:#667eea;font-weight:700;cursor:pointer;transition:all .2s;text-decoration:underline;font-size:.9rem;position:relative}.auth-toggle button:after{content:"→";margin-left:.25rem;display:inline-block;transition:transform .3s}.auth-toggle button:hover:after{transform:translate(3px)}.auth-toggle button:hover:not(:disabled){color:#764ba2;text-decoration:underline}.auth-toggle button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.auth-card{padding:2rem 1.5rem}.auth-header h1{font-size:1.5rem}.auth-icon{width:3.5rem;height:3.5rem}}@media (prefers-color-scheme: dark){.auth-card{background:#1f2937}.auth-header h1{color:#f9fafb}.auth-header p{color:#9ca3af}.form-group label{color:#d1d5db}.form-group input{background:#374151;border-color:#4b5563;color:#f9fafb}.form-group input:focus{border-color:#667eea}.form-group input:disabled{background:#1f2937}.password-toggle{color:#9ca3af}.password-toggle:hover:not(:disabled){color:#f9fafb}.auth-divider:before{background:#4b5563}.auth-divider span{background:#1f2937;color:#9ca3af}.google-signin-btn{background:#374151;border-color:#4b5563;color:#f9fafb}.google-signin-btn:hover:not(:disabled){background:#4b5563;border-color:#6b7280}.auth-toggle{color:#9ca3af}}
