*,:after,:before{--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:#3b82f680;--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:#3b82f680;--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: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}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,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height: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:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:0}.-bottom-2{bottom:-.5rem}.-right-2{right:-.5rem}.bottom-full{bottom:100%}.left-1\/2{left:50%}.left-4{left:1rem}.right-3{right:.75rem}.right-6{right:1.5rem}.top-0{top:0}.top-3{top:.75rem}.top-4{top:1rem}.top-6{top:1.5rem}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.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}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-20{height:5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.max-h-24{max-height:6rem}.max-h-\[70vh\]{max-height:70vh}.max-h-\[90vh\]{max-height:90vh}.min-h-\[2\.5rem\]{min-height:2.5rem}.min-h-\[300px\]{min-height:300px}.min-h-\[44px\]{min-height:44px}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[260px\]{min-width:260px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.animate-bounce{animation:bounce 1s infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.25rem*var(--tw-space-x-reverse))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.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-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-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-l-4{border-left-width:4px}.border-amber-200{--tw-border-opacity:1;border-color:#fde68a;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:#bfdbfe;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-blue-400{--tw-border-opacity:1;border-color:#60a5fa;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-600{--tw-border-opacity:1;border-color:#2563eb;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.border-emerald-200{--tw-border-opacity:1;border-color:#a7f3d0;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-200\/50{border-color:#e5e7eb80}.border-gray-300{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:#9ca3af;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:#bbf7d0;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-400{--tw-border-opacity:1;border-color:#4ade80;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.border-indigo-200{--tw-border-opacity:1;border-color:#c7d2fe;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-lime-200{--tw-border-opacity:1;border-color:#d9f99d;border-color:rgb(217 249 157/var(--tw-border-opacity,1))}.border-orange-200{--tw-border-opacity:1;border-color:#fed7aa;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.border-pink-200{--tw-border-opacity:1;border-color:#fbcfe8;border-color:rgb(251 207 232/var(--tw-border-opacity,1))}.border-purple-200{--tw-border-opacity:1;border-color:#e9d5ff;border-color:rgb(233 213 255/var(--tw-border-opacity,1))}.border-purple-400{--tw-border-opacity:1;border-color:#c084fc;border-color:rgb(192 132 252/var(--tw-border-opacity,1))}.border-purple-600{--tw-border-opacity:1;border-color:#9333ea;border-color:rgb(147 51 234/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-400{--tw-border-opacity:1;border-color:#f87171;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-teal-200{--tw-border-opacity:1;border-color:#99f6e4;border-color:rgb(153 246 228/var(--tw-border-opacity,1))}.border-white{--tw-border-opacity:1;border-color:#fff;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-yellow-200{--tw-border-opacity:1;border-color:#fef08a;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.bg-amber-100{--tw-bg-opacity:1;background-color:#fef3c7;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:#f59e0b;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-blue-100{--tw-bg-opacity:1;background-color:#dbeafe;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:#eff6ff;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:#3b82f6;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-emerald-100{--tw-bg-opacity:1;background-color:#d1fae5;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-500{--tw-bg-opacity:1;background-color:#10b981;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-100\/70{background-color:#f3f4f6b3}.bg-gray-200{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:#d1d5db;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:#4b5563;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:#111827;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:#dcfce7;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:#f0fdf4;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:#22c55e;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:#16a34a;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-indigo-100{--tw-bg-opacity:1;background-color:#e0e7ff;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-indigo-500{--tw-bg-opacity:1;background-color:#6366f1;background-color:rgb(99 102 241/var(--tw-bg-opacity,1))}.bg-lime-100{--tw-bg-opacity:1;background-color:#ecfccb;background-color:rgb(236 252 203/var(--tw-bg-opacity,1))}.bg-lime-500{--tw-bg-opacity:1;background-color:#84cc16;background-color:rgb(132 204 22/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:#ffedd5;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:#fff7ed;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-500{--tw-bg-opacity:1;background-color:#f97316;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-orange-600{--tw-bg-opacity:1;background-color:#ea580c;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.bg-pink-100{--tw-bg-opacity:1;background-color:#fce7f3;background-color:rgb(252 231 243/var(--tw-bg-opacity,1))}.bg-pink-500{--tw-bg-opacity:1;background-color:#ec4899;background-color:rgb(236 72 153/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:#f3e8ff;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:#faf5ff;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-purple-500{--tw-bg-opacity:1;background-color:#a855f7;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-purple-600{--tw-bg-opacity:1;background-color:#9333ea;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:#fee2e2;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:#ef4444;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-600{--tw-bg-opacity:1;background-color:#dc2626;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-teal-100{--tw-bg-opacity:1;background-color:#ccfbf1;background-color:rgb(204 251 241/var(--tw-bg-opacity,1))}.bg-teal-500{--tw-bg-opacity:1;background-color:#14b8a6;background-color:rgb(20 184 166/var(--tw-bg-opacity,1))}.bg-transparent{background-color:initial}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/20{background-color:#fff3}.bg-white\/90{background-color:#ffffffe6}.bg-yellow-100{--tw-bg-opacity:1;background-color:#fef9c3;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:#fefce8;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-yellow-500{--tw-bg-opacity:1;background-color:#eab308;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.bg-opacity-10{--tw-bg-opacity:0.1}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-opacity-60{--tw-bg-opacity:0.6}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-\[linear-gradient\(135deg\2c \#3b82f6_0\%\2c \#6366f1_100\%\)\]{background-image:linear-gradient(135deg,#3b82f6,#6366f1)}.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))}.from-amber-600{--tw-gradient-from:#d97706 var(--tw-gradient-from-position);--tw-gradient-to:#d9770600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:#3b82f600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from:#2563eb var(--tw-gradient-from-position);--tw-gradient-to:#2563eb00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-600{--tw-gradient-from:#059669 var(--tw-gradient-from-position);--tw-gradient-to:#05966900 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500{--tw-gradient-from:#22c55e var(--tw-gradient-from-position);--tw-gradient-to:#22c55e00 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:#16a34a00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from:#4f46e5 var(--tw-gradient-from-position);--tw-gradient-to:#4f46e500 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-lime-600{--tw-gradient-from:#65a30d var(--tw-gradient-from-position);--tw-gradient-to:#65a30d00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500{--tw-gradient-from:#f97316 var(--tw-gradient-from-position);--tw-gradient-to:#f9731600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-600{--tw-gradient-from:#ea580c var(--tw-gradient-from-position);--tw-gradient-to:#ea580c00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-pink-600{--tw-gradient-from:#db2777 var(--tw-gradient-from-position);--tw-gradient-to:#db277700 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:#a855f700 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:#9333ea00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500{--tw-gradient-from:#ef4444 var(--tw-gradient-from-position);--tw-gradient-to:#ef444400 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:#dc262600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-teal-600{--tw-gradient-from:#0d9488 var(--tw-gradient-from-position);--tw-gradient-to:#0d948800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-600{--tw-gradient-from:#ca8a04 var(--tw-gradient-from-position);--tw-gradient-to:#ca8a0400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-blue-200{--tw-gradient-to:#bfdbfe00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#bfdbfe var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-700{--tw-gradient-to:#b45309 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-blue-700{--tw-gradient-to:#1d4ed8 var(--tw-gradient-to-position)}.to-emerald-700{--tw-gradient-to:#047857 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to:#16a34a var(--tw-gradient-to-position)}.to-green-700{--tw-gradient-to:#15803d var(--tw-gradient-to-position)}.to-indigo-700{--tw-gradient-to:#4338ca var(--tw-gradient-to-position)}.to-lime-700{--tw-gradient-to:#4d7c0f var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to:#ea580c var(--tw-gradient-to-position)}.to-orange-700{--tw-gradient-to:#c2410c var(--tw-gradient-to-position)}.to-pink-700{--tw-gradient-to:#be185d var(--tw-gradient-to-position)}.to-purple-200{--tw-gradient-to:#e9d5ff var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to:#a855f7 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position)}.to-purple-700{--tw-gradient-to:#7e22ce var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.to-red-700{--tw-gradient-to:#b91c1c var(--tw-gradient-to-position)}.to-teal-700{--tw-gradient-to:#0f766e var(--tw-gradient-to-position)}.to-yellow-700{--tw-gradient-to:#a16207 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{object-fit:contain}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.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-1{padding-bottom:.25rem;padding-top:.25rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-16{padding-bottom:4rem;padding-top:4rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-20{padding-bottom:5rem;padding-top:5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pb-4{padding-bottom:1rem}.pr-12{padding-right:3rem}.pr-2{padding-right:.5rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.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-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-tight{line-height:1.25}.text-amber-800{--tw-text-opacity:1;color:#92400e;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-blue-100{--tw-text-opacity:1;color:#dbeafe;color:rgb(219 234 254/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:#1d4ed8;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:#065f46;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:#22c55e;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:#16a34a;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:#15803d;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:#166534;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-indigo-800{--tw-text-opacity:1;color:#3730a3;color:rgb(55 48 163/var(--tw-text-opacity,1))}.text-lime-800{--tw-text-opacity:1;color:#3f6212;color:rgb(63 98 18/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:#ea580c;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-orange-700{--tw-text-opacity:1;color:#c2410c;color:rgb(194 65 12/var(--tw-text-opacity,1))}.text-orange-800{--tw-text-opacity:1;color:#9a3412;color:rgb(154 52 18/var(--tw-text-opacity,1))}.text-pink-800{--tw-text-opacity:1;color:#9d174d;color:rgb(157 23 77/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:#9333ea;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-purple-700{--tw-text-opacity:1;color:#7e22ce;color:rgb(126 34 206/var(--tw-text-opacity,1))}.text-purple-800{--tw-text-opacity:1;color:#6b21a8;color:rgb(107 33 168/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:#991b1b;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-teal-800{--tw-text-opacity:1;color:#115e59;color:rgb(17 94 89/var(--tw-text-opacity,1))}.text-transparent{color:#0000}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:#ca8a04;color:rgb(202 138 4/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:#854d0e;color:rgb(133 77 14/var(--tw-text-opacity,1))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.line-through{-webkit-text-decoration-line:line-through;text-decoration-line:line-through}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-sm{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f)}.drop-shadow,.drop-shadow-lg{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)}.drop-shadow-lg{--tw-drop-shadow:drop-shadow(0 10px 8px #0000000a) drop-shadow(0 4px 3px #0000001a)}.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{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-md{-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)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,.transition-opacity{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f3f4f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}.dark body{background-color:#18181b}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.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)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rounded-xl:hover{border-radius:.75rem}.hover\:bg-blue-100:hover{--tw-bg-opacity:1;background-color:#dbeafe;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:#bfdbfe;background-color:rgb(191 219 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:#1d4ed8;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:#d1d5db;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:#374151;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.hover\:bg-green-100:hover{--tw-bg-opacity:1;background-color:#dcfce7;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.hover\:bg-green-200:hover{--tw-bg-opacity:1;background-color:#bbf7d0;background-color:rgb(187 247 208/var(--tw-bg-opacity,1))}.hover\:bg-green-700:hover{--tw-bg-opacity:1;background-color:#15803d;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:bg-orange-100:hover{--tw-bg-opacity:1;background-color:#ffedd5;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.hover\:bg-orange-700:hover{--tw-bg-opacity:1;background-color:#c2410c;background-color:rgb(194 65 12/var(--tw-bg-opacity,1))}.hover\:bg-pink-700:hover{--tw-bg-opacity:1;background-color:#be185d;background-color:rgb(190 24 93/var(--tw-bg-opacity,1))}.hover\:bg-purple-100:hover{--tw-bg-opacity:1;background-color:#f3e8ff;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.hover\:bg-purple-50:hover{--tw-bg-opacity:1;background-color:#faf5ff;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.hover\:bg-purple-700:hover{--tw-bg-opacity:1;background-color:#7e22ce;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.hover\:bg-red-200:hover{--tw-bg-opacity:1;background-color:#fecaca;background-color:rgb(254 202 202/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:#dc2626;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:#b91c1c;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:from-blue-700:hover{--tw-gradient-from:#1d4ed8 var(--tw-gradient-from-position);--tw-gradient-to:#1d4ed800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-green-600:hover{--tw-gradient-from:#16a34a var(--tw-gradient-from-position);--tw-gradient-to:#16a34a00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-orange-600:hover{--tw-gradient-from:#ea580c var(--tw-gradient-from-position);--tw-gradient-to:#ea580c00 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:#9333ea00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-red-600:hover{--tw-gradient-from:#dc2626 var(--tw-gradient-from-position);--tw-gradient-to:#dc262600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-green-700:hover{--tw-gradient-to:#15803d var(--tw-gradient-to-position)}.hover\:to-orange-700:hover{--tw-gradient-to:#c2410c var(--tw-gradient-to-position)}.hover\:to-purple-700:hover{--tw-gradient-to:#7e22ce var(--tw-gradient-to-position)}.hover\:to-red-800:hover{--tw-gradient-to:#991b1b var(--tw-gradient-to-position)}.hover\:text-blue-600:hover{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:#1d4ed8;color:rgb(29 78 216/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-gray-800:hover{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\:text-gray-900:hover{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.hover\:text-purple-700:hover{--tw-text-opacity:1;color:#7e22ce;color:rgb(126 34 206/var(--tw-text-opacity,1))}.hover\:text-red-600:hover{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.hover\:text-red-700:hover{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-lg:hover,.hover\:shadow-xl:hover{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:#3b82f6;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.focus\:border-orange-500:focus{--tw-border-opacity:1;border-color:#f97316;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.focus\:border-purple-500:focus{--tw-border-opacity:1;border-color:#a855f7;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.focus\:text-blue-600:focus{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.focus\:outline-none:focus{outline:2px solid #0000;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),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-green-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(34 197 94/var(--tw-ring-opacity,1))}.focus\:ring-orange-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(249 115 22/var(--tw-ring-opacity,1))}.focus\:ring-purple-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(168 85 247/var(--tw-ring-opacity,1))}.group:hover .group-hover\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width:640px){.sm\:mx-auto{margin-left:auto;margin-right:auto}.sm\:mb-2{margin-bottom:.5rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mt-0{margin-top:0}.sm\:mt-2{margin-top:.5rem}.sm\:h-20{height:5rem}.sm\:h-24{height:6rem}.sm\:min-h-\[100px\]{min-height:100px}.sm\:min-h-\[400px\]{min-height:400px}.sm\:w-20{width:5rem}.sm\:w-40{width:10rem}.sm\:w-48{width:12rem}.sm\:w-auto{width:auto}.sm\:max-w-lg{max-width:32rem}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:gap-4{gap:1rem}.sm\:gap-6{gap:1.5rem}.sm\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.sm\:space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.sm\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:px-3{padding-left:.75rem;padding-right:.75rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-1{padding-bottom:.25rem;padding-top:.25rem}.sm\:py-3{padding-bottom:.75rem;padding-top:.75rem}.sm\:py-4{padding-bottom:1rem}.sm\:pt-4,.sm\:py-4{padding-top:1rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:mb-16{margin-bottom:4rem}.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:gap-8{gap:2rem}.md\:p-8{padding:2rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-7xl{font-size:4.5rem;line-height:1}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.lg\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2rem*var(--tw-space-y-reverse));margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))}.lg\:p-10{padding:2.5rem}.lg\:p-6{padding:1.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width:1280px){.xl\:w-48{width:12rem}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:flex-row{flex-direction:row}.xl\:space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.xl\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}}.App{background-color:#f3f4f6;min-height:100vh}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],input[type=time],select,textarea{background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;font-size:.875rem;line-height:1.25rem;padding:.5rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}input[type=date]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=text]:focus,input[type=time]:focus,select:focus,textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}@media (max-width:768px){body{-webkit-overflow-scrolling:touch;overflow-x:hidden}.btn,.clickable,.mobile-touch-target,button,input[type=button],input[type=reset],input[type=submit],select{-webkit-tap-highlight-color:rgba(0,0,0,.1);border-radius:12px!important;font-size:16px!important;min-height:48px!important;min-width:48px!important;padding:14px 18px!important;touch-action:manipulation}input[type=checkbox],input[type=radio]{border-radius:4px!important;padding:0!important}input[type=checkbox],input[type=checkbox].h-5.w-5,input[type=radio]{height:20px!important;min-height:20px!important;min-width:20px!important;width:20px!important}.compact-button{border-radius:8px!important;font-size:14px!important;min-height:36px!important;min-width:auto!important;padding:8px 12px!important}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],input[type=time],textarea{border-radius:12px!important;border-width:2px!important;font-size:16px!important;line-height:1.4!important;min-height:48px!important;padding:14px 18px!important}select{background-position:right 16px center!important;border-radius:12px!important;border-width:2px!important;font-size:16px!important;min-height:52px!important;padding:14px 40px 14px 18px!important}textarea{line-height:1.5!important;min-height:120px!important;resize:vertical!important}.grid{gap:16px!important}.grid-cols-2,.grid-cols-3,.grid-cols-4,.lg\:grid-cols-2,.lg\:grid-cols-3,.lg\:grid-cols-4,.md\:grid-cols-2,.md\:grid-cols-3,.md\:grid-cols-4,.sm\:grid-cols-2,.xl\:grid-cols-4{grid-template-columns:1fr!important}.quick-actions-grid{gap:12px!important;grid-template-columns:1fr 1fr!important}.bg-white.rounded-lg,.bg-white.rounded-xl,.dashboard-card{border-radius:16px!important;box-shadow:0 4px 12px #0000001a!important;margin:12px 0!important;padding:20px!important}.p-3{padding:16px!important}.p-4{padding:20px!important}.p-6{padding:24px!important}.px-3{padding-left:16px!important;padding-right:16px!important}.px-4{padding-left:20px!important;padding-right:20px!important}.px-6{padding-left:24px!important;padding-right:24px!important}.py-3{padding-bottom:16px!important;padding-top:16px!important}.py-4{padding-bottom:20px!important;padding-top:20px!important}.py-6{padding-bottom:24px!important;padding-top:24px!important}.space-y-4>*+*{margin-top:20px!important}.space-y-6>*+*{margin-top:28px!important}.space-y-8>*+*{margin-top:36px!important}.text-3xl{font-size:1.875rem!important;line-height:2.25rem!important}.text-2xl{font-size:1.625rem!important;line-height:2rem!important}.text-xl{font-size:1.375rem!important;line-height:1.75rem!important}.text-lg{font-size:1.25rem!important;line-height:1.625rem!important}.text-base{font-size:1rem!important;line-height:1.5rem!important}.text-sm{font-size:.9rem!important;line-height:1.25rem!important}.text-xs{font-size:.8rem!important;line-height:1.125rem!important}nav{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;box-shadow:0 2px 12px #0000001a!important;padding:12px 16px!important;position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:50!important}.nav-brand{font-size:1.25rem!important;font-weight:700!important;margin-left:12px!important}.mobile-menu{-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;background:#2563ebf5!important;border-radius:0 0 16px 16px!important;box-shadow:0 8px 24px #00000026!important;padding:8px!important}.mobile-menu-item{border-radius:12px!important;font-weight:500!important;margin:6px 8px!important;padding:18px 20px!important;transition:all .2s ease!important}.mobile-menu-item:active{background:#ffffff26!important;transform:scale(.98)!important}.modal-overlay{align-items:flex-start!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;padding:12px!important}.bg-white.rounded-xl.max-w-md,.bg-white.rounded-xl.shadow-2xl,.modal-content{animation:modalSlideDown .3s cubic-bezier(.34,1.56,.64,1)!important;border-radius:16px!important;box-shadow:0 4px 24px #00000026!important;margin:12px 0!important;max-height:88vh!important;max-width:none!important;width:100%!important}@keyframes modalSlideDown{0%{opacity:0!important;transform:translateY(-20px)!important}to{opacity:1!important;transform:translateY(0)!important}}.modal-header{background:#fff!important;border-bottom:2px solid #f1f5f9!important;border-radius:16px 16px 0 0!important;padding:20px 20px 16px!important;position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:10!important}.modal-body{-webkit-overflow-scrolling:touch!important;overflow-y:auto!important;padding:24px!important}.fixed.top-6.right-6,.toast{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-radius:16px!important;box-shadow:0 8px 24px #00000026!important;left:12px!important;max-width:none!important;right:12px!important;top:12px!important;width:auto!important}.form-row{flex-direction:column!important;gap:20px!important}.form-group{margin-bottom:24px!important}.form-label{color:#374151!important;font-size:1rem!important;font-weight:600!important;margin-bottom:10px!important}.form-button,button:not(.compact-button){border-radius:12px!important;font-size:16px!important;font-weight:600!important;min-height:52px!important;padding:16px 20px!important;transition:all .2s ease!important;width:100%!important}button.compact-button{border-radius:6px!important;font-size:12px!important;font-weight:500!important;min-height:32px!important;padding:6px 12px!important;white-space:nowrap!important;width:auto!important}.form-button:active,button:not(.compact-button):active{transform:scale(.98)!important}.list-item{background:#fff!important;border:1px solid #f1f5f9!important;border-radius:12px!important;box-shadow:0 2px 8px #00000014!important;margin:12px 0!important;padding:20px!important}.list-item-actions{display:flex!important;flex-direction:row!important;gap:12px!important;justify-content:space-between!important;margin-top:16px!important}.list-item-action{border-radius:8px!important;flex:1 1!important;font-size:14px!important;font-weight:500!important;min-height:44px!important;padding:12px 16px!important}.quick-actions-grid>button{align-items:center!important;border-radius:16px!important;display:flex!important;flex-direction:column!important;gap:8px!important;justify-content:center!important;min-height:100px!important;padding:16px 12px!important;transition:all .2s ease!important}.quick-actions-grid>button:active{transform:scale(.95)!important}.filter-buttons{display:flex!important;flex-direction:column!important;gap:12px!important;width:100%!important}.filter-button{border-radius:12px!important;font-weight:500!important;justify-content:space-between!important;padding:16px 20px!important;width:100%!important}.file-upload-area{background:#f9fafb!important;border:3px dashed #d1d5db!important;border-radius:16px!important;padding:24px!important;text-align:center!important;transition:all .2s ease!important;width:100%!important}.file-upload-area:active{background:#eff6ff!important;border-color:#3b82f6!important}.grade-card,.homework-card,.timetable-card{border:1px solid #f1f5f9!important;border-radius:16px!important;box-shadow:0 4px 12px #00000014!important;margin:12px 0!important;padding:20px!important}.grade-card:active,.homework-card:active,.timetable-card:active{box-shadow:0 2px 8px #0000001f!important;transform:scale(.98)!important}.dashboard-card{border-radius:18px!important;box-shadow:0 6px 20px #0000001a!important;min-height:130px!important;padding:24px!important}.dashboard-card-icon{font-size:2.5rem!important;margin-bottom:12px!important}.dashboard-card-value{font-size:2rem!important;font-weight:700!important;line-height:1.2!important;margin:12px 0!important}.dashboard-card-label{font-size:.95rem!important;line-height:1.3!important;opacity:.9!important}.statistics-chart{height:auto!important;min-height:200px!important;padding:20px!important}.statistics-bar{border-radius:8px!important;margin:8px 0!important;min-height:40px!important}.timetable-day{background:#fff!important;border-radius:16px!important;box-shadow:0 4px 12px #00000014!important;margin:16px 0!important;padding:20px!important}.timetable-entry{border-left:4px solid #3b82f6!important;border-radius:12px!important;margin:8px 0!important;padding:16px!important}.loading-container{padding:48px 24px!important;text-align:center!important}.loading-spinner{height:48px!important;margin:0 auto 20px!important;width:48px!important}.loading-text{color:#6b7280!important;font-size:18px!important;font-weight:500!important}}@media (hover:none) and (pointer:coarse){.hover\:scale-105:active,.hover\:transform:active{transform:scale(.96)!important;transition:transform .1s ease!important}.hover\:bg-blue-700:active,.hover\:bg-green-700:active,.hover\:bg-orange-700:active,.hover\:bg-purple-700:active,.hover\:bg-red-700:active{filter:brightness(.95)!important}.hover\:shadow-lg,.hover\:shadow-xl{box-shadow:inherit!important}button:focus,input:focus,select:focus,textarea:focus{box-shadow:0 0 0 6px #3b82f61a!important;outline:3px solid #3b82f6!important;outline-offset:2px!important}}@media (min-width:769px) and (max-width:1024px){.grid-cols-2,.xl\:grid-cols-4{grid-template-columns:1fr 1fr!important}.lg\:grid-cols-4{grid-template-columns:1fr 1fr 1fr!important}.p-6{padding:32px!important}.space-y-6>*+*{margin-top:32px!important}}@media (max-width:768px){:focus{box-shadow:0 0 0 6px #3b82f626!important;outline:3px solid #3b82f6!important;outline-offset:2px!important}.skip-link{background:#3b82f6!important;border-radius:8px!important;color:#fff!important;font-weight:600!important;left:12px!important;padding:12px 20px!important;position:absolute!important;text-decoration:none!important;top:-48px!important;transition:top .3s ease!important;z-index:1000!important}.skip-link:focus{top:12px!important}.sr-only{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}*{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.reduce-motion *{animation-duration:.2s!important;transition-duration:.2s!important}.shadow-xl{box-shadow:0 6px 20px #0000001f!important}.shadow-lg{box-shadow:0 4px 12px #0000001a!important}.shadow-md{box-shadow:0 2px 8px #00000014!important}img{border-radius:8px!important;height:auto!important;max-width:100%!important;object-fit:cover!important}}.bg-white{transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.bg-white:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.rounded-xl:hover{border-radius:.75rem!important}.rounded-lg:hover{border-radius:.5rem!important}.dashboard-card-container{transition:transform .2s ease-in-out}.dashboard-card{border-radius:.75rem!important;transition:all .2s ease-in-out}.dashboard-card-container:hover{transform:translateY(-4px)}.dashboard-card:hover{border-radius:.75rem!important;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.hover\:scale-105:hover{border-radius:.75rem!important;transform:scale(1.05)}.grid>div{padding:.25rem}.transform{will-change:transform}input[type=checkbox]{background-color:#fff;border:1px solid #d1d5db;border-radius:.25rem;height:1rem;width:1rem}input[type=checkbox]:checked{background-color:#3b82f6;border-color:#3b82f6}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.grade-excellent{background-color:#d1fae5;color:#059669}.grade-good{background-color:#fef3c7;color:#d97706}.grade-fair{background-color:#fee2e2;color:#dc2626}@media (max-width:768px){.mobile-nav-button{border-radius:.375rem;display:block!important;font-weight:500;padding:.75rem 1rem;text-align:left;transition:all .2s ease-in-out;width:100%}.mobile-nav-button:hover{background-color:#3b82f61a}}@media (max-width:1024px){.mobile-nav-item{justify-content:flex-start!important;text-align:left!important;width:100%!important}.nav-icon{margin-right:12px!important;text-align:center!important;width:20px!important}.mobile-menu-backdrop{-webkit-backdrop-filter:blur(2px)!important;backdrop-filter:blur(2px)!important;background:#0000004d!important;bottom:0!important;left:0!important;position:fixed!important;right:0!important;top:0!important;z-index:30!important}nav{z-index:40!important}.mobile-menu,nav{position:relative!important}.mobile-menu{box-shadow:0 4px 12px #00000026!important;z-index:45!important}}.App{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.focus-ring:focus{outline:2px solid #3b82f6;outline-offset:2px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-slide-in{animation:slideIn .3s ease-out}.animate-slide-up{animation:slideUp .4s ease-out}.animate-fade-in{animation:fadeIn .2s ease-out}.hover-lift:hover{box-shadow:0 10px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-2px)}.hover-glow:hover{box-shadow:0 0 20px #3b82f626}.glass-effect{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text}input[type=checkbox]:checked{background-color:#10b981;border-color:#10b981}.loading-dots:after{animation:loading 1.5s infinite;content:""}@media (max-width:640px){.mobile-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.mobile-padding{padding-left:1rem;padding-right:1rem}}@media print{.no-print{display:none!important}.print-friendly{background:#fff!important;box-shadow:none!important;color:#000!important}}@media (prefers-contrast:high){.border-gray-300{border-color:#000}.text-gray-600{color:#000}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.text-shadow{text-shadow:0 1px 3px #0000001a}.backdrop-blur{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.border-dashed-custom{border-style:dashed;border-width:2px}.status-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.status-success{background-color:#10b981}.status-warning{background-color:#f59e0b}.status-error{background-color:#ef4444}.form-input:focus,.form-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.card-hover:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-4px);transition:all .3s ease}.dark{background-color:#18181b!important}.dark,.dark .bg-white{color:#e5e7eb!important}.dark .bg-white{background-color:#23272f!important}.dark .text-gray-600,.dark .text-gray-700,.dark .text-gray-800{color:#e5e7eb!important}.dark .bg-amber-100,.dark .bg-blue-50,.dark .bg-emerald-100,.dark .bg-gray-50,.dark .bg-green-50,.dark .bg-indigo-100,.dark .bg-lime-100,.dark .bg-orange-50,.dark .bg-pink-50,.dark .bg-purple-50,.dark .bg-red-50,.dark .bg-teal-100,.dark .bg-yellow-50{background-color:#23272f!important;color:#e5e7eb!important}.dark .border-gray-200,.dark .border-gray-300{border-color:#374151!important}.dark input,.dark select,.dark textarea{background-color:#23272f!important;border-color:#374151!important;color:#e5e7eb!important}.dark .shadow-lg,.dark .shadow-xl{box-shadow:0 4px 24px 0 #000000b3!important}.dark .bg-gradient-to-br,.dark .bg-gradient-to-r{filter:brightness(.85)}.dark .text-amber-800,.dark .text-blue-100,.dark .text-blue-600,.dark .text-blue-700,.dark .text-blue-800,.dark .text-emerald-800,.dark .text-green-600,.dark .text-green-700,.dark .text-indigo-800,.dark .text-lime-800,.dark .text-orange-600,.dark .text-orange-700,.dark .text-pink-700,.dark .text-pink-800,.dark .text-purple-600,.dark .text-purple-700,.dark .text-red-600,.dark .text-red-800,.dark .text-teal-800,.dark .text-yellow-800{color:#a5b4fc!important}.dashboard-card .absolute{background-color:#ffffff1a}.fixed.inset-0.bg-black.bg-opacity-40,.fixed.inset-0.bg-black.bg-opacity-50,.fixed.inset-0.bg-black.bg-opacity-60{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009!important;background-image:none!important;border:none!important;box-shadow:none!important;margin:0!important;padding:0!important;top:0!important}.fixed.inset-0{align-items:center!important;display:flex!important;justify-content:center!important;min-height:100vh;min-width:100vw}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.bg-white.rounded-2xl,.bg-white.rounded-lg{animation:modalFadeIn .25s cubic-bezier(.4,0,.2,1);box-shadow:0 12px 32px 0 #1f26872e,0 1.5px 6px 0 #00000014}button[title=Schlie\DF en]{transition:color .15s,transform .15s}button[title=Schlie\DF en]:hover{color:#ef4444;transform:scale(1.15) rotate(90deg)}.fixed.inset-0.bg-black.bg-opacity-40,.fixed.inset-0.bg-black.bg-opacity-50,.fixed.inset-0.bg-black.bg-opacity-60{box-shadow:inset 0 0 0 9999px #0000001a}@media (max-width:640px){.bg-white.rounded-2xl,.bg-white.rounded-lg{max-width:98vw!important;padding-left:.5rem!important;padding-right:.5rem!important;width:98vw!important}}@keyframes pulse{0%,to{box-shadow:0 0 0 0 #3b82f666}50%{box-shadow:0 0 0 8px #3b82f61a}}.bg-blue-600:focus,.bg-gradient-to-br:focus,.bg-gradient-to-r:focus,.bg-green-600:focus,.bg-orange-600:focus,.bg-purple-600:focus{animation:pulse 1.2s infinite}.bg-blue-600:hover,.bg-gradient-to-br:hover,.bg-gradient-to-r:hover,.bg-green-600:hover,.bg-orange-600:hover,.bg-purple-600:hover{box-shadow:0 6px 24px 0 #3b82f61a;filter:brightness(1.08)}@keyframes iconPop{0%{transform:scale(1)}30%{transform:scale(1.18)}60%{transform:scale(.95)}to{transform:scale(1)}}.bg-white.rounded-2xl .animate-bounce,.bg-white.rounded-lg .animate-bounce{animation:iconPop .7s}.glass-modal{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9!important;border:1px solid #ffffff40;box-shadow:0 12px 32px 0 #1f26872e,0 1.5px 6px 0 #00000014}.welcome-fade-in{opacity:1;transform:scale(1)}.welcome-fade-in,.welcome-fade-out{transition:opacity .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1)}.welcome-fade-out{opacity:0;pointer-events:none;transform:scale(.96) translateY(32px)}.welcome-modal-overlay{bottom:0!important;height:100vh!important;left:0!important;overflow:hidden!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important;z-index:9999!important}.welcome-modal-content{left:50%!important;max-height:90vh!important;max-width:90vw!important;position:absolute!important;top:50%!important;transform:translate(-50%,-50%)!important}body.welcome-modal-open{height:100%!important;overflow:hidden!important;position:fixed!important;width:100%!important}.dashboard-loading-container{display:flex!important;flex-direction:column!important;min-height:calc(100vh - 80px)!important}.loading-skeleton{animation:loading 1.5s infinite!important;background:linear-gradient(90deg,#f0f0f0 25%,#0000 50%,#f0f0f0 75%)!important;background-size:200% 100%!important;width:100%!important}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes slideInToast{0%{opacity:0;transform:translateY(-16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-slide-in{animation:slideInToast .35s cubic-bezier(.4,0,.2,1)}.dark .bg-white.border-blue-400,.dark .bg-white.border-green-400,.dark .bg-white.border-red-400{background-color:#23272f!important;border-color:#4ade80!important;color:#e5e7eb!important}.dark .border-red-400{border-color:#f87171!important}.dark .border-blue-400{border-color:#60a5fa!important}.dark .border-green-400{border-color:#4ade80!important}.dark .text-gray-800{color:#e5e7eb!important}.dark .text-green-500{color:#4ade80!important}.dark .text-red-500{color:#f87171!important}.dark .text-blue-500{color:#60a5fa!important}@supports (-webkit-touch-callout:none){.min-h-screen{min-height:-webkit-fill-available}body{overscroll-behavior-y:none!important}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],input[type=time],select,textarea{font-size:16px!important}}@supports not (-webkit-touch-callout:none){button{-webkit-tap-highlight-color:transparent!important}select{height:48px!important}}@media (hover:none){.hover\:bg-blue-700:active,.hover\:bg-green-700:active,.hover\:bg-red-700:active{background-color:var(--tw-bg-opacity)!important}.hover\:scale-105:active{transform:scale(.98)!important}}body.modal-open{overflow:hidden;position:fixed;width:100%}@media (max-width:768px){.stunden-modal-overlay{align-items:flex-start!important;background:#0009!important;bottom:0!important;height:100vh!important;justify-content:center!important;left:0!important;min-height:100vh!important;min-width:100vw!important;padding:0!important;position:fixed!important;right:0!important;z-index:9999!important}.stunden-modal-box,.stunden-modal-overlay{display:flex!important;margin:0!important;overflow:hidden!important;top:0!important;width:100vw!important}.stunden-modal-box{animation:modalFadeIn .25s cubic-bezier(.4,0,.2,1);background:#fff!important;border-radius:0 0 18px 18px!important;box-shadow:0 12px 32px 0 #1f26872e,0 1.5px 6px 0 #00000014;flex-direction:column!important;left:50%!important;max-height:95vh!important;max-width:100vw!important;min-height:0!important;min-height:auto!important;position:absolute!important;transform:translateX(-50%)!important;z-index:10000!important}.stunden-modal-header{background:#fff!important;border-radius:0 0 0 0!important;padding-bottom:16px!important;padding-top:20px!important;position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:10!important}.stunden-modal-body{-webkit-overflow-scrolling:touch!important;flex:1 1 auto!important;max-height:70vh!important;min-height:0!important;overflow-y:auto!important;padding-bottom:24px!important}.stunden-modal-actions{background:#fff!important;border-radius:0 0 18px 18px!important;border-top:1px solid #f1f5f9!important;bottom:0!important;padding:16px 0 8px!important;position:-webkit-sticky!important;position:sticky!important;z-index:20!important}}.login-container{align-items:center;background:linear-gradient(135deg,#3b82f6,#6366f1);display:flex;justify-content:center;min-height:100vh;padding:0}.login-card{animation:modalFadeIn .35s cubic-bezier(.4,0,.2,1);background:#fffffff7;border-radius:1.5rem;box-shadow:0 8px 32px 0 #1f26872e,0 1.5px 6px 0 #00000014;margin:0 auto;max-width:370px;padding:2.5rem 2rem 2rem;position:relative;width:100%}.login-card h2{color:#3b82f6;font-size:2rem;font-weight:800;letter-spacing:-1px;margin-bottom:.5rem;text-align:center}.login-card .subtitle{color:#64748b;font-size:1rem;margin-bottom:1.5rem;text-align:center}.login-card input[type=password],.login-card input[type=text]{background:#f8fafc;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;font-weight:500;margin-bottom:1.1rem;padding:14px 18px;transition:border .2s,box-shadow .2s;width:100%}.login-card input[type=password]:focus,.login-card input[type=text]:focus{background:#fff;border:2px solid #3b82f6;box-shadow:0 0 0 3px #3b82f614}.login-card .password-input-container{margin-bottom:1.1rem;position:relative}.login-card .password-input-field{background:#f8fafc;border:2px solid #e5e7eb;border-radius:12px;box-sizing:border-box;font-size:1rem;font-weight:500;line-height:1.5;margin-bottom:0;padding:14px 42px 14px 18px;transition:border .2s,box-shadow .2s;width:100%}.login-card .password-input-field:focus{background:#fff;border:2px solid #3b82f6;box-shadow:0 0 0 3px #3b82f614;outline:none}.login-card .password-toggle-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;height:24px;justify-content:center;padding:4px;position:absolute;right:12px;top:40%;transform:translateY(-50%);transition:all .15s ease;width:24px;z-index:10}.login-card .password-toggle-btn:hover{background:#6b728014;color:#6b7280}.login-card .password-toggle-btn:focus{background:#3b82f614;box-shadow:0 0 0 2px #3b82f626;color:#3b82f6;outline:none}.login-card .password-toggle-btn:active{transform:scale(.9)}.login-card .password-toggle-btn svg{stroke-width:2.5;flex-shrink:0;height:14px;width:14px}@media (max-width:768px){.login-card .password-input-field{font-size:16px!important;line-height:1.4!important;min-height:48px!important;padding:16px 48px 16px 18px!important}.login-card .password-toggle-btn{height:32px!important;padding:6px!important;right:8px;top:40%!important;transform:translateY(-50%)!important;width:32px!important}.login-card .password-toggle-btn svg{stroke-width:2.2!important;height:16px!important;width:16px!important}}@media (hover:none) and (pointer:coarse){.login-card .password-toggle-btn:active{background:#3b82f61f!important;transform:scale(.88)!important}}.login-card .login-btn{background:linear-gradient(90deg,#3b82f6,#6366f1);border:none;border-radius:12px;box-shadow:0 2px 8px #3b82f61a;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;margin-bottom:.5rem;margin-top:.5rem;padding:14px 0;transition:background .2s,transform .15s;width:100%}.login-card .login-btn:focus,.login-card .login-btn:hover{background:linear-gradient(90deg,#2563eb,#7c3aed);transform:translateY(-2px) scale(1.03)}.login-card .switch-btn{background:none;border:none;color:#6366f1;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;text-decoration:underline;transition:color .18s;width:100%}.login-card .switch-btn:hover{color:#3b82f6}.login-card .error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c}.login-card .error-message,.login-card .success-message{font-size:.98rem;margin-bottom:1rem;padding:10px 14px;text-align:center}.login-card .success-message{background:#d1fae5;border:1px solid #6ee7b7;border-radius:8px;color:#047857}.login-card .login-icon{align-items:center;animation:iconPop .7s;color:#6366f1;display:flex;font-size:2.5rem;justify-content:center;margin-bottom:1.2rem}@media (max-width:480px){.login-card{border-radius:1rem;padding:1.5rem .5rem}.login-card h2{font-size:1.5rem}}