*,: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]{display:none}input:where([type=text]),input:where(:not([type])),input:where([type=email]),input:where([type=url]),input:where([type=password]),input:where([type=number]),input:where([type=date]),input:where([type=datetime-local]),input:where([type=month]),input:where([type=search]),input:where([type=tel]),input:where([type=time]),input:where([type=week]),select:where([multiple]),textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}input:where([type=text]):focus,input:where(:not([type])):focus,input:where([type=email]):focus,input:where([type=url]):focus,input:where([type=password]):focus,input:where([type=number]):focus,input:where([type=date]):focus,input:where([type=datetime-local]):focus,input:where([type=month]):focus,input:where([type=search]):focus,input:where([type=tel]):focus,input:where([type=time]):focus,input:where([type=week]):focus,select:where([multiple]):focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}select:where([multiple]),select:where([size]:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}input:where([type=checkbox]),input:where([type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}input:where([type=checkbox]){border-radius:0}input:where([type=radio]){border-radius:100%}input:where([type=checkbox]):focus,input:where([type=radio]):focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--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)}input:where([type=checkbox]):checked,input:where([type=radio]):checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}input:where([type=checkbox]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){input:where([type=checkbox]):checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=radio]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){input:where([type=radio]):checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=checkbox]):checked:hover,input:where([type=checkbox]):checked:focus,input:where([type=radio]):checked:hover,input:where([type=radio]):checked:focus{border-color:transparent;background-color:currentColor}input:where([type=checkbox]):indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){input:where([type=checkbox]):indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=checkbox]):indeterminate:hover,input:where([type=checkbox]):indeterminate:focus{border-color:transparent;background-color:currentColor}input:where([type=file]){background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}input:where([type=file]):focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}*,: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: }.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.btn-primary{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(2 132 199 / var(--tw-bg-opacity));padding:.5rem 1rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(3 105 161 / var(--tw-bg-opacity))}.btn-secondary{border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));padding:.5rem 1rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.card{border-radius:.75rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1.5rem;--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)}.card-hover{border-radius:.75rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1.5rem;--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);cursor:pointer;transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.card-hover:hover{--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)}.input-field{display:block;width:100%;border-radius:.5rem;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.input-field:focus{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity));--tw-ring-opacity: 1;--tw-ring-color: rgb(14 165 233 / var(--tw-ring-opacity))}.badge{display:inline-flex;align-items:center;border-radius:9999px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500}.badge-success{display:inline-flex;align-items:center;border-radius:9999px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity))}.badge-warning{display:inline-flex;align-items:center;border-radius:9999px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity))}.badge-info{display:inline-flex;align-items:center;border-radius:9999px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity))}.badge-danger{display:inline-flex;align-items:center;border-radius:9999px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity))}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-inset-3{top:-.75rem;right:-.75rem;bottom:-.75rem;left:-.75rem}.inset-0{top:0;right:0;bottom:0;left:0}.-inset-x-6{left:-1.5rem;right:-1.5rem}.-inset-y-3{top:-.75rem;bottom:-.75rem}.inset-x-4{left:1rem;right:1rem}.-bottom-1{bottom:-.25rem}.-bottom-1\.5{bottom:-.375rem}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.bottom-0{bottom:0}.bottom-2{bottom:.5rem}.bottom-4{bottom:1rem}.bottom-\[10\%\]{bottom:10%}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-16{top:4rem}.top-2{top:.5rem}.top-20{top:5rem}.top-\[10\%\]{top:10%}.top-\[60px\]{top:60px}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.-mx-4{margin-left:-1rem;margin-right:-1rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-2{margin-left:-.5rem}.-mr-2{margin-right:-.5rem}.-mt-1{margin-top:-.25rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.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}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0{margin-top:0}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-16{margin-top:4rem}.mt-2{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}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0{height:0px}.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-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[70vh\]{height:70vh}.h-full{height:100%}.max-h-\[560px\]{max-height:560px}.max-h-\[70vh\]{max-height:70vh}.max-h-\[calc\(70vh-80px\)\]{max-height:calc(70vh - 80px)}.min-h-\[150px\]{min-height:150px}.min-h-\[400px\]{min-height:400px}.min-h-\[64px\]{min-height:64px}.min-h-\[calc\(100vh-64px\)\]{min-height:calc(100vh - 64px)}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-\[300px\]{width:300px}.w-\[92vw\]{width:92vw}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[60px\]{min-width:60px}.min-w-\[64px\]{min-width:64px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[280px\]{max-width:280px}.max-w-\[45\%\]{max-width:45%}.max-w-\[92\%\]{max-width:92%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-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-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))}.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))}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.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-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * 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-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-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.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}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.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-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-t-2xl{border-top-left-radius:1rem;border-top-right-radius:1rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-b-\[6px\]{border-bottom-width:6px}.border-l-\[6px\]{border-left-width:6px}.border-r{border-right-width:1px}.border-r-\[6px\]{border-right-width:6px}.border-t{border-top-width:1px}.border-t-\[6px\]{border-top-width:6px}.border-dashed{border-style:dashed}.border-dotted{border-style:dotted}.border-accent-500{--tw-border-opacity: 1;border-color:rgb(217 70 239 / var(--tw-border-opacity))}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity))}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity))}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity))}.border-emerald-400{--tw-border-opacity: 1;border-color:rgb(52 211 153 / var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity))}.border-green-400{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity))}.border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity))}.border-indigo-200{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity))}.border-orange-200{--tw-border-opacity: 1;border-color:rgb(254 215 170 / var(--tw-border-opacity))}.border-primary-400{--tw-border-opacity: 1;border-color:rgb(56 189 248 / var(--tw-border-opacity))}.border-primary-500{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity))}.border-primary-600{--tw-border-opacity: 1;border-color:rgb(2 132 199 / var(--tw-border-opacity))}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity))}.border-purple-300{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity))}.border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity))}.border-rose-200{--tw-border-opacity: 1;border-color:rgb(254 205 211 / var(--tw-border-opacity))}.border-sky-200{--tw-border-opacity: 1;border-color:rgb(186 230 253 / var(--tw-border-opacity))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-violet-200{--tw-border-opacity: 1;border-color:rgb(221 214 254 / var(--tw-border-opacity))}.border-white\/20{border-color:#fff3}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity))}.border-b-gray-900{--tw-border-opacity: 1;border-bottom-color:rgb(17 24 39 / var(--tw-border-opacity))}.border-l-transparent{border-left-color:transparent}.border-r-transparent{border-right-color:transparent}.border-t-gray-900{--tw-border-opacity: 1;border-top-color:rgb(17 24 39 / var(--tw-border-opacity))}.bg-accent-50{--tw-bg-opacity: 1;background-color:rgb(253 244 255 / var(--tw-bg-opacity))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))}.bg-black\/20{background-color:#0003}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity))}.bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))}.bg-gray-900\/95{background-color:#111827f2}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity))}.bg-orange-100\/50{background-color:#ffedd580}.bg-orange-200{--tw-bg-opacity: 1;background-color:rgb(254 215 170 / var(--tw-bg-opacity))}.bg-orange-200\/20{background-color:#fed7aa33}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity))}.bg-pink-100{--tw-bg-opacity: 1;background-color:rgb(252 231 243 / var(--tw-bg-opacity))}.bg-primary-100{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity))}.bg-primary-50{--tw-bg-opacity: 1;background-color:rgb(240 249 255 / var(--tw-bg-opacity))}.bg-primary-500{--tw-bg-opacity: 1;background-color:rgb(14 165 233 / var(--tw-bg-opacity))}.bg-primary-600{--tw-bg-opacity: 1;background-color:rgb(2 132 199 / var(--tw-bg-opacity))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-rose-100{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity))}.bg-rose-50{--tw-bg-opacity: 1;background-color:rgb(255 241 242 / var(--tw-bg-opacity))}.bg-sky-100{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity))}.bg-sky-50{--tw-bg-opacity: 1;background-color:rgb(240 249 255 / var(--tw-bg-opacity))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity))}.bg-violet-100{--tw-bg-opacity: 1;background-color:rgb(237 233 254 / var(--tw-bg-opacity))}.bg-violet-50{--tw-bg-opacity: 1;background-color:rgb(245 243 255 / var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/20{background-color:#fff3}.bg-white\/35{background-color:#ffffff59}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity))}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity))}.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-100{--tw-gradient-from: #fef3c7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(254 243 199 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-400{--tw-gradient-from: #fbbf24 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 191 36 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-50{--tw-gradient-from: #fffbeb var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 251 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-500{--tw-gradient-from: #f59e0b var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-400{--tw-gradient-from: #60a5fa var(--tw-gradient-from-position);--tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) 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: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-400{--tw-gradient-from: #34d399 var(--tw-gradient-from-position);--tw-gradient-to: rgb(52 211 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-500{--tw-gradient-from: #10b981 var(--tw-gradient-from-position);--tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-400{--tw-gradient-from: #4ade80 var(--tw-gradient-from-position);--tw-gradient-to: rgb(74 222 128 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-50{--tw-gradient-from: #f0fdf4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(240 253 244 / 0) 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: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-50{--tw-gradient-from: #eef2ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-100{--tw-gradient-from: #ffedd5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 237 213 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-400{--tw-gradient-from: #fb923c var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 146 60 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-50{--tw-gradient-from: #fff7ed var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 247 237 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary-50{--tw-gradient-from: #f0f9ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(240 249 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary-500{--tw-gradient-from: #0ea5e9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 165 233 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary-600{--tw-gradient-from: #0284c7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(2 132 199 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-100{--tw-gradient-from: #f3e8ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(243 232 255 / 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-50{--tw-gradient-from: #faf5ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(250 245 255 / 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-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\/90{--tw-gradient-from: rgb(88 28 135 / .9) 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{--tw-gradient-from: #ef4444 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-rose-400{--tw-gradient-from: #fb7185 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 113 133 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-sky-400{--tw-gradient-from: #38bdf8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(56 189 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-400{--tw-gradient-from: #94a3b8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(148 163 184 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent 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-violet-400{--tw-gradient-from: #a78bfa var(--tw-gradient-from-position);--tw-gradient-to: rgb(167 139 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-violet-500{--tw-gradient-from: #8b5cf6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(139 92 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-orange-400{--tw-gradient-to: rgb(251 146 60 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #fb923c 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)}.via-purple-50{--tw-gradient-to: rgb(250 245 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #faf5ff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a855f7 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-red-500{--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #ef4444 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-sky-500{--tw-gradient-to: rgb(14 165 233 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #0ea5e9 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-slate-500{--tw-gradient-to: rgb(100 116 139 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #64748b var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-teal-400{--tw-gradient-to: rgb(45 212 191 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #2dd4bf var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #fff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/30{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .3) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/40{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .4) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-yellow-400{--tw-gradient-to: rgb(250 204 21 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #facc15 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-accent-50{--tw-gradient-to: #fdf4ff var(--tw-gradient-to-position)}.to-accent-500{--tw-gradient-to: #d946ef var(--tw-gradient-to-position)}.to-accent-600{--tw-gradient-to: #c026d3 var(--tw-gradient-to-position)}.to-amber-300{--tw-gradient-to: #fcd34d var(--tw-gradient-to-position)}.to-amber-50{--tw-gradient-to: #fffbeb var(--tw-gradient-to-position)}.to-amber-600{--tw-gradient-to: #d97706 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-cyan-400{--tw-gradient-to: #22d3ee var(--tw-gradient-to-position)}.to-cyan-500{--tw-gradient-to: #06b6d4 var(--tw-gradient-to-position)}.to-emerald-100{--tw-gradient-to: #d1fae5 var(--tw-gradient-to-position)}.to-emerald-500{--tw-gradient-to: #10b981 var(--tw-gradient-to-position)}.to-emerald-600{--tw-gradient-to: #059669 var(--tw-gradient-to-position)}.to-fuchsia-400{--tw-gradient-to: #e879f9 var(--tw-gradient-to-position)}.to-gray-100{--tw-gradient-to: #f3f4f6 var(--tw-gradient-to-position)}.to-indigo-100{--tw-gradient-to: #e0e7ff var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to: #eef2ff var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-indigo-900\/90{--tw-gradient-to: rgb(49 46 129 / .9) var(--tw-gradient-to-position)}.to-orange-100{--tw-gradient-to: #ffedd5 var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to: #fb923c var(--tw-gradient-to-position)}.to-orange-50{--tw-gradient-to: #fff7ed var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to: #f97316 var(--tw-gradient-to-position)}.to-pink-400{--tw-gradient-to: #f472b6 var(--tw-gradient-to-position)}.to-pink-50{--tw-gradient-to: #fdf2f8 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-pink-600{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.to-primary-700{--tw-gradient-to: #0369a1 var(--tw-gradient-to-position)}.to-purple-400{--tw-gradient-to: #c084fc var(--tw-gradient-to-position)}.to-purple-50{--tw-gradient-to: #faf5ff var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-100{--tw-gradient-to: #fee2e2 var(--tw-gradient-to-position)}.to-red-500{--tw-gradient-to: #ef4444 var(--tw-gradient-to-position)}.to-slate-600{--tw-gradient-to: #475569 var(--tw-gradient-to-position)}.to-teal-400{--tw-gradient-to: #2dd4bf var(--tw-gradient-to-position)}.to-teal-500{--tw-gradient-to: #14b8a6 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-yellow-300{--tw-gradient-to: #fde047 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-amber-400{fill:#fbbf24}.fill-emerald-100{fill:#d1fae5}.fill-red-500{fill:#ef4444}.fill-white{fill:#fff}.fill-yellow-300{fill:#fde047}.fill-yellow-500{fill:#eab308}.p-1{padding:.25rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.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-0{padding-top:0;padding-bottom:0}.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-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-24{padding-bottom:6rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pl-10{padding-left:2.5rem}.pr-1{padding-right:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.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-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-\[9px\]{font-size:9px}.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}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-accent-600{--tw-text-opacity: 1;color:rgb(192 38 211 / var(--tw-text-opacity))}.text-amber-300{--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity))}.text-amber-50{--tw-text-opacity: 1;color:rgb(255 251 235 / var(--tw-text-opacity))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity))}.text-emerald-100{--tw-text-opacity: 1;color:rgb(209 250 229 / var(--tw-text-opacity))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity))}.text-emerald-900{--tw-text-opacity: 1;color:rgb(6 78 59 / var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity))}.text-primary-500{--tw-text-opacity: 1;color:rgb(14 165 233 / var(--tw-text-opacity))}.text-primary-600{--tw-text-opacity: 1;color:rgb(2 132 199 / var(--tw-text-opacity))}.text-primary-700{--tw-text-opacity: 1;color:rgb(3 105 161 / var(--tw-text-opacity))}.text-primary-900{--tw-text-opacity: 1;color:rgb(12 74 110 / var(--tw-text-opacity))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity))}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity))}.text-rose-700{--tw-text-opacity: 1;color:rgb(190 18 60 / var(--tw-text-opacity))}.text-sky-700{--tw-text-opacity: 1;color:rgb(3 105 161 / var(--tw-text-opacity))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity))}.text-transparent{color:transparent}.text-violet-700{--tw-text-opacity: 1;color:rgb(109 40 217 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-white\/90{color:#ffffffe6}.text-yellow-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity))}.text-yellow-900{--tw-text-opacity: 1;color:rgb(113 63 18 / var(--tw-text-opacity))}.line-through{text-decoration-line:line-through}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px 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-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_10px_30px_rgba\(0\,0\,0\,0\.15\)\]{--tw-shadow: 0 10px 30px rgba(0,0,0,.15);--tw-shadow-colored: 0 10px 30px 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-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.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-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.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)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.blur-2xl{--tw-blur: blur(40px);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)}.blur-sm{--tw-blur: blur(4px);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{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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 rgb(0 0 0 / .04)) drop-shadow(0 4px 3px rgb(0 0 0 / .1));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-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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.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-shadow{transition-property:box-shadow;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-300{transition-duration:.3s}.animate-shake{animation:shake .5s ease-in-out}.recording-glow{animation:recordingGlow 1.2s ease-in-out infinite}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}@keyframes pop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes confetti{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(-100px) rotate(720deg);opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes recordingGlow{0%{box-shadow:0 0 #ef44444d}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}.last\:border-0:last-child{border-width:0px}.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\:rounded:hover{border-radius:.25rem}.hover\:border-accent-300:hover{--tw-border-opacity: 1;border-color:rgb(240 171 252 / var(--tw-border-opacity))}.hover\:border-green-300:hover{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity))}.hover\:border-green-400:hover{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity))}.hover\:border-primary-300:hover{--tw-border-opacity: 1;border-color:rgb(125 211 252 / var(--tw-border-opacity))}.hover\:border-purple-500:hover{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity))}.hover\:bg-blue-200:hover{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity))}.hover\:bg-emerald-600:hover{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.hover\:bg-green-50:hover{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.hover\:bg-primary-600:hover{--tw-bg-opacity: 1;background-color:rgb(2 132 199 / var(--tw-bg-opacity))}.hover\:bg-primary-700:hover{--tw-bg-opacity: 1;background-color:rgb(3 105 161 / var(--tw-bg-opacity))}.hover\:bg-purple-200:hover{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity))}.hover\:bg-purple-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity))}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.hover\:bg-yellow-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))}.hover\:text-amber-900:hover{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--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)}.hover\:shadow-md:hover{--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)}.hover\:shadow-xl:hover{--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)}.focus\:border-primary-500:focus{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity))}.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-primary-200:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(186 230 253 / var(--tw-ring-opacity))}.focus\:ring-primary-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(14 165 233 / var(--tw-ring-opacity))}.active\:bg-gray-200:active{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.active\:bg-gray-800:active{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width: 640px){.sm\:left-auto{left:auto}.sm\:right-0{right:0}.sm\:mx-0{margin-left:0;margin-right:0}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:hidden{display:none}.sm\:h-10{height:2.5rem}.sm\:h-4{height:1rem}.sm\:h-5{height:1.25rem}.sm\:h-6{height:1.5rem}.sm\:h-7{height:1.75rem}.sm\:min-h-\[80px\]{min-height:80px}.sm\:w-10{width:2.5rem}.sm\:w-4{width:1rem}.sm\:w-5{width:1.25rem}.sm\:w-6{width:1.5rem}.sm\:w-64{width:16rem}.sm\:w-7{width:1.75rem}.sm\:min-w-\[80px\]{min-width:80px}.sm\:max-w-\[80\%\]{max-width:80%}.sm\:flex-none{flex:none}.sm\:translate-x-0{--tw-translate-x: 0px;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))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:.5rem}.sm\:gap-3{gap:.75rem}.sm\: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)))}.sm\: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)))}.sm\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.sm\:rounded-2xl{border-radius:1rem}.sm\:p-2{padding:.5rem}.sm\:p-4{padding:1rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-3{padding-left:.75rem;padding-right:.75rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-2{padding-top:.5rem;padding-bottom:.5rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-\[10px\]{font-size:10px}.sm\:text-base{font-size:1rem;line-height:1.5rem}.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\:inset-x-auto{left:auto;right:auto}.md\:left-1\/2{left:50%}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-\[500px\]{height:500px}.md\:w-\[600px\]{width:600px}.md\:w-auto{width:auto}.md\:-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))}.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\:space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.md\:p-6{padding:1.5rem}.md\:pb-6{padding-bottom:1.5rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-6xl{font-size:3.75rem;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\:px-8{padding-left:2rem;padding-right:2rem}}.speed-match-container{position:fixed;top:64px;left:0;right:0;bottom:56px;z-index:40;display:flex;flex-direction:column;background:radial-gradient(circle at top,rgba(59,130,246,.25),transparent 45%),linear-gradient(135deg,#0f172a,#16263f 45%,#1e293b);overflow:hidden;font-family:Inter,system-ui,sans-serif;color:#e2e8f0}.sm-round-toast{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:10;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sm-round-toast-text{font-size:22px;font-weight:800;padding:14px 22px;border-radius:14px;background:linear-gradient(90deg,#22d3ee,#3b82f6);color:#0b1224;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 16px 30px #0f172a73;animation:roundToastPop .5s ease-out}@keyframes roundToastPop{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.sm-bg-particles{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.sm-particle{position:absolute;font-size:12px;color:#94a3b82e;animation:floatWords 18s linear infinite;top:calc(10% + (var(--i) * 10%));left:calc(5% + (var(--i) * 9%))}.sm-particle:nth-child(2n){animation-duration:22s}@media (min-width: 768px){.speed-match-container{bottom:0}}.speed-match-shell{min-height:calc(100vh - 120px);display:flex;flex-direction:column;gap:24px;padding:32px 20px;align-items:center;justify-content:center;position:relative;overflow-x:hidden;overflow-y:auto;background:#1d4ed8}@media (max-width: 767px){.speed-match-shell{padding:24px 16px 96px;justify-content:flex-start}}.sm-gameover{background:radial-gradient(circle at 15% 10%,rgba(56,189,248,.35),transparent 45%),radial-gradient(circle at 85% 15%,rgba(14,165,233,.25),transparent 40%),radial-gradient(circle at 20% 90%,rgba(99,102,241,.25),transparent 45%),linear-gradient(180deg,#0b1224,#0f1b3d 55%,#0f2c6b);color:#e2e8f0}.sm-gameover:before,.sm-gameover:after{content:"";position:absolute;width:220px;height:220px;border-radius:999px;filter:blur(0px);opacity:.55;pointer-events:none}.sm-gameover:before{top:-60px;left:-40px;background:radial-gradient(circle,rgba(34,211,238,.65),transparent 65%)}.sm-gameover:after{bottom:-80px;right:-30px;background:radial-gradient(circle,rgba(99,102,241,.6),transparent 65%)}.sm-gameover .sm-header:after{content:"";display:block;width:72px;height:4px;margin:12px auto 0;border-radius:999px;background:linear-gradient(90deg,#22d3ee,#3b82f6);box-shadow:0 0 12px #38bdf899}.sm-level-badge{margin-top:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#0f172a73;color:#e2e8f0;font-weight:700;font-size:12px;border:1px solid rgba(148,197,255,.35);box-shadow:0 8px 16px #0f172a59}.sm-next-round{margin-top:8px;font-size:12px;color:#e2e8f0cc}.sm-modal-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:20}.sm-modal-card{width:min(360px,90%);background:linear-gradient(145deg,#1e3a8ad9,#0f172af2);border:1px solid rgba(148,197,255,.35);border-radius:18px;padding:20px;text-align:center;box-shadow:0 18px 36px #0f172a8c;color:#f8fafc}.sm-modal-title{font-size:20px;font-weight:800}.sm-modal-subtitle{margin-top:4px;color:#e2e8f0bf;font-size:13px}.sm-modal-actions{margin-top:18px;display:flex;gap:10px;justify-content:center}.sm-modal-points{margin-top:10px;font-size:18px;font-weight:800;color:#22d3ee}.sm-coin-burst{margin-top:14px;position:relative;height:64px}.sm-coin{position:absolute;width:22px;height:22px;font-size:20px;line-height:22px;text-align:center;filter:drop-shadow(0 6px 10px rgba(15,23,42,.35));animation:coinPop .9s ease-out infinite;top:22px;left:calc(50% + (var(--i) - 5) * 14px)}.sm-coin:nth-child(odd){animation-delay:.1s}.sm-topic-picker{text-align:left}.sm-topic-list{margin-top:12px;display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto}.sm-topic-choice{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid rgba(148,197,255,.2);background:#0f172a66;color:#f8fafc;cursor:pointer}.sm-topic-choice:hover{background:#0f172a8c}.sm-topic-choice-meta{font-size:12px;color:#e2e8f0b3}@keyframes coinPop{0%{transform:translateY(8px) scale(.8);opacity:.6}60%{transform:translateY(-8px) scale(1);opacity:1}to{transform:translateY(-16px) scale(.9);opacity:0}}.sm-gameover .sm-header{text-shadow:0 8px 24px rgba(15,23,42,.5)}.sm-gameover .sm-title{color:#f8fafc;background:linear-gradient(90deg,#f8fafc,#60a5fa,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 10px 30px rgba(56,189,248,.35)}.sm-gameover .sm-subtitle{color:#e2e8f0d9}.sm-header{text-align:center}.sm-title{font-size:28px;font-weight:800;color:#f8fafc;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:10px}.sm-title-emoji{font-size:30px;line-height:1;filter:drop-shadow(0 6px 12px rgba(15,23,42,.45))}.sm-subtitle{margin-top:6px;color:#f8fafcd9;font-weight:500}.sm-title-animate{animation:titleSlide .6s ease-out}.sm-subtitle-animate{animation:subtitleFade .7s ease-out}.sm-difficulty-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;width:min(720px,100%)}.sm-difficulty-card{background:linear-gradient(145deg,#60a5fa,#2563eb);border-radius:16px;padding:18px;text-align:left;box-shadow:0 12px 28px #0f172a40,inset 0 1px #ffffff59;color:#f8fafc;border:1px solid rgba(148,197,255,.6)}.sm-difficulty-toggle{display:block;width:100%;text-align:left;background:transparent;border:none;color:inherit;padding:0;cursor:pointer}.sm-difficulty-card:nth-child(2n){background:linear-gradient(145deg,#fde047,#f59e0b);color:#f8fafc;border-color:#facc15bf}.sm-difficulty-card:nth-child(3){background:linear-gradient(145deg,#f87171,#dc2626);color:#f8fafc;border-color:#ef4444bf}.sm-difficulty-label{font-weight:800;font-size:18px;color:inherit;letter-spacing:-.01em;text-shadow:0 6px 16px rgba(15,23,42,.25)}.sm-difficulty-meta{font-size:13px;color:#0f172abf;margin-top:4px;text-shadow:0 3px 8px rgba(15,23,42,.15)}.sm-difficulty-mode{margin-top:10px;display:inline-block;padding:4px 10px;border-radius:999px;background:#fff3;color:#f8fafc;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;box-shadow:inset 0 1px #ffffff40}.sm-difficulty-card:nth-child(2n) .sm-difficulty-mode{background:#0f172a26;color:#0f172a}.sm-difficulty-card:nth-child(3) .sm-difficulty-mode{background:#0f172a2e;color:#f8fafc}.sm-topic-dropdown{margin-top:12px;display:flex;flex-direction:column;gap:8px}.sm-topic-row{display:flex;align-items:stretch;gap:8px}.sm-topic-item{display:flex;justify-content:space-between;align-items:center;background:#ffffff2e;border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:8px 10px;color:inherit;cursor:pointer;text-align:left;position:relative;overflow:hidden;--progress: 0}.sm-topic-play{flex:1}.sm-topic-train{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff2e;color:inherit;font-weight:700;font-size:12px;cursor:pointer;min-width:86px;justify-content:center;transition:background .2s ease,transform .2s ease}.sm-topic-train:hover{background:#ffffff47}.sm-topic-train:active{transform:scale(.98)}.sm-topic-train-icon{width:16px;height:16px}.sm-topic-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#38bdf873,#3b82f666);transform-origin:left;transform:scaleX(var(--progress));transition:transform .2s ease}.sm-topic-item:hover{background:#ffffff42}.sm-difficulty-card:nth-child(2n) .sm-topic-item{background:#0f172a33;border-color:#0f172a33;color:#f8fafc}.sm-difficulty-card:nth-child(2n) .sm-topic-item:hover{background:#0f172a4d}.sm-difficulty-card:nth-child(3) .sm-topic-item{background:#0f172a33;border-color:#0f172a33;color:#f8fafc}.sm-difficulty-card:nth-child(3) .sm-topic-item:hover{background:#0f172a4d}.sm-difficulty-card:nth-child(2n) .sm-topic-train,.sm-difficulty-card:nth-child(3) .sm-topic-train{background:#0f172a38;border-color:#0f172a33}.sm-difficulty-card:nth-child(2n) .sm-topic-train:hover,.sm-difficulty-card:nth-child(3) .sm-topic-train:hover{background:#0f172a4d}.sm-topic-name{font-weight:600;font-size:13px;display:flex;align-items:center;gap:6px;position:relative;z-index:1}.sm-topic-progress{font-size:12px;opacity:.85;position:relative;z-index:1}.sm-topic-empty{font-size:12px;opacity:.8}.sm-topic-emoji{font-size:14px}.sm-footer{display:flex;gap:12px}.sm-training-grid{width:min(860px,100%);display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:12px}.sm-training-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:#0f172a59;border:1px solid rgba(148,197,255,.35);box-shadow:0 12px 24px #0f172a59}.sm-training-word{font-weight:800;color:#f8fafc;font-size:16px}.sm-training-translation{margin-top:4px;color:#e2e8f0bf;font-size:12px}.sm-training-audio{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff26;color:#f8fafc;cursor:pointer;transition:background .2s ease,transform .2s ease}.sm-training-audio svg{width:18px;height:18px}.sm-training-audio:hover{background:#ffffff40}.sm-training-audio:active{transform:scale(.96)}@media (min-width: 640px){.sm-training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.sm-training-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.sm-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;width:min(720px,100%)}.sm-stat{position:relative;background:linear-gradient(145deg,#ffffffeb,#fffffffa);border-radius:18px;padding:16px;box-shadow:0 12px 26px #0f172a1f,inset 0 1px #fffc;border:1px solid rgba(148,197,255,.35);text-align:center}.sm-gameover .sm-stat{background:linear-gradient(145deg,#1e3a8a99,#0f172af2);border:1px solid rgba(148,197,255,.35);box-shadow:0 18px 36px #0f172a73,0 0 18px #38bdf81f,inset 0 1px #ffffff1f}.sm-gameover .sm-stat-label{color:#e2e8f0b3;letter-spacing:.18em;text-shadow:0 4px 10px rgba(15,23,42,.5)}.sm-gameover .sm-stat-value{color:#f8fafc;font-size:22px;text-shadow:0 6px 18px rgba(59,130,246,.45)}.sm-gameover .sm-stat:before{background:linear-gradient(90deg,#38bdf8,#6366f1)}.sm-gameover .sm-footer .btn-secondary{background:#0f172a66;color:#e2e8f0;border:1px solid rgba(148,197,255,.45);box-shadow:0 10px 18px #0f172a59}.sm-gameover .sm-footer .btn-primary{background:linear-gradient(90deg,#22d3ee,#3b82f6);border:none;box-shadow:0 12px 24px #3b82f659}.sm-stat:before{content:"";position:absolute;inset:8px 12px auto 12px;height:3px;border-radius:999px;background:linear-gradient(90deg,#38bdf8,#6366f1);opacity:.7}.sm-stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:600}.sm-stat-value{margin-top:6px;font-size:20px;font-weight:800;color:#0f172a}.sm-hud{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#0f172a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);gap:8px;position:relative;z-index:2}.sm-hud-left,.sm-hud-right{display:flex;align-items:center;gap:10px;flex:1}.sm-hud-center{flex:2;display:flex;justify-content:center}.sm-back-btn{padding:6px;border-radius:8px;background:#ffffff1a;color:#fff;border:none;cursor:pointer;display:flex;align-items:center}.sm-back-btn:hover{background:#fff3}.sm-badge{background:linear-gradient(90deg,#22d3ee,#3b82f6);padding:4px 10px;border-radius:8px}.sm-badge-title{font-size:12px;font-weight:700;color:#fff}.sm-badge-sub{font-size:10px;color:#ffffffbf}.sm-level-pill{background:#ffffff24;color:#e2e8f0;font-weight:700;font-size:10px;padding:4px 8px;border-radius:999px;border:1px solid rgba(148,197,255,.35);text-transform:uppercase}.sm-score{display:flex;align-items:center;gap:16px;background:#ffffff1a;padding:6px 14px;border-radius:12px}.sm-score-item{display:flex;flex-direction:column;align-items:center}.sm-score-label{font-size:9px;color:#fff9;text-transform:uppercase;letter-spacing:.08em}.sm-score-value{font-size:16px;font-weight:700;color:#fff}.sm-timer{display:flex;flex-direction:column;align-items:center}.sm-timer-label{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#fff9}.sm-timer-value{font-size:16px;font-weight:800;color:#fff}.sm-timer-value.danger{color:#f97316;animation:timerPulse 1s ease-in-out infinite}.sm-timer-bar{width:84px;height:4px;background:#ffffff26;border-radius:999px;overflow:hidden;margin-top:4px}.sm-timer-progress{height:100%;background:linear-gradient(90deg,#38bdf8,#f97316);transition:width .3s ease}.sm-xp{display:flex;align-items:center;gap:4px;font-size:12px;color:#fffc}.sm-xp.pop{animation:xpPop .2s ease-out}.sm-streak-meter{display:flex;gap:6px;padding:8px 16px 0;position:relative;z-index:2}.sm-mastery{margin:8px 16px 0;display:flex;align-items:center;gap:10px;color:#e2e8f0bf;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.sm-mastery-bar{flex:1;height:6px;border-radius:999px;background:#ffffff1f;overflow:hidden}.sm-mastery-progress{height:100%;background:linear-gradient(90deg,#22d3ee,#3b82f6);transition:width .2s ease}.sm-mastery-count{font-size:11px;text-transform:none;letter-spacing:0;color:#e2e8f0cc}.sm-streak-seg{flex:1;height:6px;border-radius:999px;background:#ffffff1f;transition:background .2s ease,box-shadow .2s ease}.sm-streak-seg.active{background:linear-gradient(90deg,#22d3ee,#3b82f6);box-shadow:0 0 8px #3b82f699}.sm-board{flex:1;padding:18px;overflow:auto;position:relative;z-index:2}.sm-typing-panel{flex:1;margin:24px;padding:24px;border-radius:18px;background:#0f172a99;border:1px solid rgba(148,197,255,.25);box-shadow:0 16px 30px #0f172a59;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}.sm-typing-title{font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:#e2e8f0b3}.sm-typing-prompt{font-size:20px;font-weight:700;color:#f8fafc}.sm-typing-input{width:min(360px,90%);padding:12px 14px;border-radius:10px;border:1px solid rgba(148,197,255,.35);background:#0f172a59;color:#f8fafc;font-size:16px;text-align:center;outline:none}.sm-typing-input.error{border-color:#f87171d9;box-shadow:0 0 12px #f8717173}.sm-typing-submit{padding:10px 18px}.sm-typing-progress{font-size:12px;color:#e2e8f0b3}.sm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;width:min(960px,100%);margin:0 auto}@media (min-width: 768px){.sm-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;width:min(1100px,100%)}.sm-card{min-height:110px;font-size:clamp(14px,1.6vw,18px)}.sm-typing-panel{margin:32px auto;max-width:720px}}@media (min-width: 1024px){.sm-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));width:min(1200px,100%)}.sm-card{min-height:120px}}.sm-card{position:relative;border:1px solid rgba(148,197,255,.45);border-radius:16px;background:linear-gradient(145deg,#3b82f659,#2563eb73),radial-gradient(circle at top right,rgba(14,165,233,.35),transparent 60%);color:#f8fafc;padding:16px;min-height:96px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:clamp(12px,2.4vw,16px);font-weight:700;letter-spacing:.01em;box-shadow:0 12px 26px #0f172a40,inset 0 1px #fff6;transition:transform .12s ease,box-shadow .2s ease,border-color .2s ease}.sm-card:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:14px;background:linear-gradient(135deg,#bfdbfe2e,#3b82f614);opacity:.7;pointer-events:none}.sm-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.35),transparent 55%);opacity:.5;pointer-events:none}.sm-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px #0f172a4d,inset 0 1px #ffffff8c}.sm-card.is-revealed{border-color:#7dd3fcbf}.sm-card.is-selected{border-color:#38bdf8f2;box-shadow:0 0 0 2px #38bdf8b3,0 0 18px #38bdf8a6,0 0 32px #0ea5e973;animation:selectPulse .8s ease-in-out infinite}.sm-card.is-matched{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:transparent;box-shadow:0 14px 28px #22c55e59;animation:matchSnap .25s ease-out}.sm-card.is-mismatch{border-color:#f87171;animation:shake .4s ease,mismatchPulse .4s ease}.sm-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.sm-confetti-piece{position:absolute;top:-10px;left:calc(5% + (var(--i, 0) * 5%));width:8px;height:12px;background:#38bdf8;animation:confettiFall 1.2s ease-out forwards;animation-delay:calc(var(--i, 0) * .03s);opacity:.9}.sm-confetti-piece:nth-child(3n){background:#f97316}.sm-confetti-piece:nth-child(3n+1){background:#22c55e}.sm-confetti-piece:nth-child(3n+2){background:#f472b6}.sm-confetti-piece:nth-child(n){left:calc(5% + (var(--i, 0) * 5%))}@keyframes floatWords{0%{transform:translateY(0) translate(0);opacity:.1}50%{transform:translateY(-20px) translate(10px);opacity:.2}to{transform:translateY(0) translate(0);opacity:.1}}@keyframes selectPulse{0%{transform:translateY(-2px) scale(1.01)}50%{transform:translateY(-2px) scale(1.03)}to{transform:translateY(-2px) scale(1.01)}}@keyframes matchSnap{0%{transform:scale(.95)}to{transform:scale(1)}}@keyframes timerPulse{0%,to{text-shadow:0 0 0 rgba(249,115,22,0)}50%{text-shadow:0 0 8px rgba(249,115,22,.6)}}@keyframes xpPop{0%{transform:scale(.9)}to{transform:scale(1)}}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(220px) rotate(180deg);opacity:0}}.sm-pinata{position:absolute;top:20px;right:18px;width:86px;height:86px;z-index:3;animation:pinataBob 1.6s ease-in-out infinite}.sm-pinata-body{position:relative;width:100%;height:100%;border-radius:18px;background:linear-gradient(145deg,#60a5fa,#2563eb);box-shadow:0 12px 20px #0f172a66;overflow:hidden}.sm-pinata-stripe{position:absolute;width:120%;height:10px;left:-10%;opacity:.8}.sm-pinata-stripe.stripe-1{top:18px;background:#f97316}.sm-pinata-stripe.stripe-2{top:36px;background:#22d3ee}.sm-pinata-stripe.stripe-3{top:54px;background:#facc15}.sm-pinata-glow{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border-radius:22px;background:radial-gradient(circle,rgba(56,189,248,.45),transparent 70%);filter:blur(6px);z-index:-1}.sm-pinata-burst{position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;border-radius:24px;border:2px dashed rgba(56,189,248,.5);animation:pinataBurst 1.4s ease-out infinite}@keyframes pinataBob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes pinataBurst{0%{transform:scale(.9);opacity:.4}to{transform:scale(1.2);opacity:0}}@keyframes titleSlide{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes subtitleFade{0%{opacity:0}to{opacity:1}}@keyframes mismatchPulse{0%{box-shadow:0 0 #f8717100}50%{box-shadow:0 0 12px #f8717199}to{box-shadow:0 0 #f8717100}}.sm-card:disabled{cursor:default;opacity:.9}.sm-card-text{line-height:1.3;word-break:break-word;text-shadow:0 1px 2px rgba(15,23,42,.35)}@media (max-width: 768px){.sm-score{gap:8px}.sm-score-value{font-size:14px}.sm-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}.word-tetris-container{position:fixed;top:64px;left:0;right:0;bottom:56px;z-index:40;display:flex;flex-direction:column;background:linear-gradient(135deg,#0f172a,#1e3a5f,#2d1b69);overflow:hidden;font-family:Inter,system-ui,sans-serif;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (min-width: 768px){.word-tetris-container{bottom:0}}.game-hud{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#00000059;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);flex-shrink:0;gap:6px}.hud-left{display:flex;align-items:center;gap:8px;flex:1}.back-btn{padding:6px;border-radius:8px;background:#ffffff1a;color:#fff;border:none;cursor:pointer;display:flex;align-items:center}.back-btn:hover{background:#fff3}.level-badge{display:flex;flex-direction:column;background:linear-gradient(90deg,#3b82f6,#8b5cf6);padding:2px 8px;border-radius:6px}.level-number{color:#fff;font-weight:700;font-size:12px;line-height:1.3}.phase-name{color:#ffffffbf;font-size:10px;line-height:1.2}.block-count-badge{background:linear-gradient(90deg,#f59e0b,#ef4444);color:#fff;font-weight:800;font-size:11px;padding:2px 6px;border-radius:6px;animation:pulseBadge .4s ease-out}@keyframes pulseBadge{0%{transform:scale(1.4)}to{transform:scale(1)}}.hud-center{flex:2;display:flex;justify-content:center}.score-display{display:flex;align-items:center;gap:16px;background:#ffffff1a;padding:4px 14px;border-radius:10px}.score-item{display:flex;flex-direction:column;align-items:center}.score-label{font-size:9px;font-weight:600;color:#ffffff8c;text-transform:uppercase;letter-spacing:.05em}.score-value{font-size:16px;font-weight:700;color:#fff;line-height:1.2}.hearts{display:flex;gap:2px}.heart{font-size:14px;transition:all .2s}.heart.lost{opacity:.35;transform:scale(.8)}.hud-right{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:8px}.timer-box{display:flex;flex-direction:column;align-items:center}.timer-label{font-size:9px;font-weight:600;color:#ffffff8c;text-transform:uppercase}.timer-value{font-size:16px;font-weight:800;color:#fff;line-height:1.2;transition:color .3s}.hold-queue{display:flex;flex-direction:column;align-items:center}.hold-label{font-size:9px;font-weight:600;color:#ffffff8c;text-transform:uppercase}.hold-box{width:60px;height:28px;border-radius:6px;border:1.5px dashed rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;background:#ffffff0a;transition:all .2s}.hold-box.has-word{border-style:solid;border-color:#facc1580;background:#facc1514}.held-word{font-size:11px;font-weight:600;color:#fde68a}.empty-hold{color:#ffffff40;font-size:12px}.phase-description{text-align:center;font-size:11px;color:#ffffff8c;padding:3px 8px;background:#0003;flex-shrink:0}.tetris-stage{flex:1;display:flex;gap:16px;padding:8px 12px;min-height:0}.tetris-board{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0;min-height:0}.columns-container{display:flex;gap:8px;width:100%;max-width:520px;height:100%}.column{flex:1;position:relative;border-radius:12px;border:2px solid rgba(255,255,255,.08);background:#ffffff0a;overflow:hidden;cursor:pointer;transition:border-color .15s,background .15s}.column:hover{border-color:#ffffff26;background:#ffffff12}.column.active{border-color:#63b3ed80;background:#3b82f614}.column.drop-target{border-color:#facc1566;cursor:crosshair}.column.drop-target:hover{border-color:#facc15cc;background:#facc150f}.falling-block{position:absolute;left:4px;right:4px;padding:6px 4px;border-radius:10px;font-size:15px;font-weight:700;color:#fff;text-align:center;word-break:break-word;background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 3px 14px #3b82f673;z-index:10;transition:background .25s}.falling-block.fast{box-shadow:0 3px 20px #3b82f6a6;outline:2px solid rgba(147,197,253,.5)}.falling-block.selected{outline:2.5px solid rgba(255,255,255,.9);box-shadow:0 0 16px #ffffff59;cursor:pointer;animation:pulseSelected 1.2s ease-in-out infinite}@keyframes pulseSelected{0%,to{outline-color:#ffffffe6;box-shadow:0 0 16px #ffffff59}50%{outline-color:#facc15;box-shadow:0 0 24px #facc1599}}.falling-block.dragging{outline:3px solid rgba(250,204,21,1);box-shadow:0 0 30px #facc15cc;animation:none;cursor:grabbing;z-index:100}.falling-block.ghost-preview{opacity:.6;background:linear-gradient(135deg,#3b82f699,#1d4ed899);outline:2px dashed rgba(250,204,21,.8);box-shadow:0 0 20px #facc1566;pointer-events:none;z-index:90}.falling-block.matched{background:linear-gradient(135deg,#22c55e,#15803d);box-shadow:0 3px 14px #22c55e80;animation:matchPop .45s ease-out forwards}.falling-block.blocked{background:linear-gradient(135deg,#ef4444,#991b1b);box-shadow:0 3px 14px #ef444480;animation:missPop .45s ease-out forwards}.base-word{position:absolute;bottom:0;left:0;right:0;padding:8px 6px;text-align:center;font-size:14px;font-weight:700;color:#fff;word-break:break-word;background:linear-gradient(to top,#6d28d9e6,#6d28d98c);border-top:2px solid rgba(167,139,250,.4);min-height:38px;display:flex;align-items:center;justify-content:center}.base-word.blocked{background:linear-gradient(to top,#b91c1ce6,#b91c1c8c);border-top-color:#fca5a580;animation:shake .4s ease-in-out}@keyframes matchPop{0%{opacity:1;transform:scale(1)}50%{transform:scale(1.25)}to{opacity:0;transform:scale(0)}}@keyframes missPop{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.swipe-hint{display:none;color:#ffffff4d;font-size:11px;text-align:center;margin-top:6px;flex-shrink:0}.word-progress-panel{display:none;width:240px;background:#0f172a8c;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;color:#fff;box-shadow:0 10px 24px #0f172a66;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-shrink:0}.word-progress-title{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#ffffffbf;margin-bottom:10px}.word-progress-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:100%;padding-right:4px}.word-progress-item{position:relative;padding:8px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.08);overflow:hidden;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:#fff}.word-progress-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:var(--progress, 0%);background:var(--progress-color, #ef4444);opacity:.35}.word-progress-text,.word-progress-count{position:relative;z-index:1}.word-progress-count{font-size:11px;color:#fffc}@media (min-width: 1024px){.word-progress-panel{display:flex;flex-direction:column}}.countdown-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#060a168c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:70}.countdown-text{font-size:64px;font-weight:900;color:#fff;text-shadow:0 10px 30px rgba(0,0,0,.5);animation:countdownPop .8s ease}@keyframes countdownPop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.combo-popup{position:fixed;top:35%;left:50%;transform:translate(-50%,-50%);z-index:60;pointer-events:none}.combo-text{font-size:36px;font-weight:900;color:#fbbf24;text-shadow:0 0 18px rgba(251,191,36,.6);animation:comboPulse .5s ease-out}@keyframes comboPulse{0%{transform:scale(.5);opacity:0}55%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.start-screen{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50}.start-modal{background:#fff;border-radius:18px;padding:24px 22px;max-width:400px;width:calc(100% - 32px);text-align:center;box-shadow:0 20px 60px #0006}.difficulty-btn{padding:8px 10px;border-radius:10px;border:2px solid #e5e7eb;cursor:pointer;font-weight:600;color:#374151;background:#fff;transition:border-color .15s}.difficulty-btn:hover{border-color:#93c5fd}.difficulty-btn.selected{background:#2563eb;color:#fff;border-color:#2563eb}.game-over-screen{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50}.game-over-modal{background:#fff;border-radius:18px;padding:24px 22px;max-width:380px;width:calc(100% - 32px);text-align:center;box-shadow:0 20px 60px #0006}.game-over-modal.won{background:linear-gradient(135deg,#ecfdf5,#d1fae5)}.game-over-modal.won h2{color:#059669}.game-over-modal.lost{background:linear-gradient(135deg,#eff6ff,#dbeafe)}.game-over-modal.lost h2{color:#1d4ed8}.stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:14px 0}.stat-item{background:#0000000f;padding:8px 4px;border-radius:8px}.stat-label{font-size:10px;color:#6b7280;text-transform:uppercase;font-weight:600}.stat-value{font-size:18px;font-weight:700;color:#111827}.btn-primary{background:#2563eb;color:#fff;font-weight:600;padding:10px 16px;border-radius:10px;border:none;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#e5e7eb;color:#374151;font-weight:600;padding:10px 16px;border-radius:10px;border:none;cursor:pointer;transition:background .15s}.btn-secondary:hover{background:#d1d5db}@media (max-width: 640px){.game-hud{padding:4px 8px;gap:4px}.score-display{gap:10px;padding:3px 10px}.score-value{font-size:13px}.score-label{font-size:8px}.timer-value{font-size:13px}.hold-box{width:46px;height:24px}.held-word{font-size:10px}.level-number{font-size:11px}.phase-name{font-size:9px}.columns-container{gap:5px}.falling-block{font-size:12px;padding:5px 4px;border-radius:8px}.base-word{font-size:11px;padding:6px 4px;min-height:32px}.phase-description{font-size:10px}.swipe-hint{display:block}.start-modal,.game-over-modal{padding:18px 16px}.stats-grid{gap:6px}.stat-value{font-size:15px}}@media (max-width: 375px){.score-display{gap:8px;padding:2px 8px}.score-value{font-size:12px}.hearts .heart{font-size:11px}.falling-block{font-size:11px;padding:4px 3px;left:3px;right:3px}.base-word{font-size:10px;padding:5px 3px;min-height:30px}.combo-text{font-size:28px}}.topic-selection-screen{width:100%;height:100%;overflow-y:auto;padding:20px;background:linear-gradient(135deg,#0f172a,#1e3a5f,#2d1b69)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#fff}.spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.error-container h2{margin-bottom:12px;font-size:24px}.error-container p{margin-bottom:20px;opacity:.8}.retry-button,.back-button{padding:10px 20px;margin:8px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.retry-button{background:#3b82f6;color:#fff}.retry-button:hover{background:#2563eb}.back-button{background:#ffffff1a;color:#fff}.back-button:hover{background:#fff3}.topic-header{margin-bottom:24px;color:#fff}.back-button-small{background:#ffffff1a;color:#fff;border:none;padding:8px 12px;border-radius:8px;font-size:14px;cursor:pointer;margin-bottom:12px;transition:background .2s}.back-button-small:hover{background:#fff3}.header-content{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.header-content h1{font-size:28px;font-weight:700;margin:0}.difficulty-badge{background:linear-gradient(90deg,#f59e0b,#ef4444);color:#fff;padding:6px 12px;border-radius:8px;font-size:14px;font-weight:600;text-transform:capitalize}.topic-filters{margin-bottom:24px}.search-bar{margin-bottom:16px}.search-input{width:100%;padding:12px 16px;border:2px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffff1a;color:#fff;font-size:16px;outline:none;transition:all .2s}.search-input::-moz-placeholder{color:#ffffff80}.search-input::placeholder{color:#ffffff80}.search-input:focus{border-color:#3b82f6;background:#ffffff26}.category-filters{display:flex;gap:8px;flex-wrap:wrap;overflow-x:auto;padding-bottom:8px}.category-filter-btn{padding:8px 16px;border:2px solid rgba(255,255,255,.2);border-radius:20px;background:#ffffff1a;color:#fffc;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s}.category-filter-btn:hover{background:#ffffff26;color:#fff}.category-filter-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.no-topics{text-align:center;color:#ffffffb3;padding:40px 20px}.clear-filters-button{margin-top:16px;padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.clear-filters-button:hover{background:#2563eb}.topics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:24px}@media (max-width: 768px){.topics-grid{grid-template-columns:1fr}}.topic-stats-summary{text-align:center;color:#fff9;font-size:14px;padding:12px}.topic-card{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:2px solid rgba(255,255,255,.1);border-radius:16px;padding:16px;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}.topic-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);opacity:0;transition:opacity .3s}.topic-card:hover{border-color:#3b82f6;transform:translateY(-4px);box-shadow:0 8px 24px #3b82f64d}.topic-card:hover:before{opacity:1}.topic-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;position:relative;z-index:1}.topic-icon{font-size:32px;line-height:1}.topic-info{flex:1}.topic-name{color:#fff;font-size:18px;font-weight:700;margin:0 0 4px}.topic-category{color:#fff9;font-size:12px;margin:0}.premium-badge,.review-badge{padding:4px 8px;border-radius:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.premium-badge{background:linear-gradient(90deg,#f59e0b,#ef4444);color:#fff}.review-badge{background:#ef4444;color:#fff;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.topic-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:12px;margin-bottom:12px;position:relative;z-index:1}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{color:#fff9;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{color:#fff;font-size:16px;font-weight:700}.stat-value.accuracy-high{color:#10b981}.stat-value.accuracy-medium{color:#f59e0b}.stat-value.accuracy-low{color:#ef4444}.progress-bar-container{position:relative;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;z-index:1}.progress-bar-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;transition:width .5s ease}.progress-text{position:absolute;top:12px;right:0;color:#fffc;font-size:11px;font-weight:600}.wt-shell .sm-difficulty-card:nth-child(4){background:linear-gradient(145deg,#a855f7,#7c3aed);color:#f8fafc;border-color:#c084fcbf}.wt-shell .sm-difficulty-card:nth-child(4) .sm-difficulty-mode{background:#0f172a2e;color:#f8fafc}.wt-instructions{width:min(720px,100%);display:grid;gap:4px;padding:12px 16px;border-radius:14px;background:#0f172a59;border:1px solid rgba(148,197,255,.35);color:#e2e8f0e6;font-size:12px;line-height:1.5;box-shadow:0 12px 24px #0f172a59}.wt-instruction-title{font-weight:700;color:#f8fafc}.wt-instruction-line strong{color:#f8fafc}:root{--gb-bg: #0f172a;--gb-bg-gradient: linear-gradient(135deg, #0f172a 0%, #1e3a5f 50%, #2d1b69 100%);--gb-surface: #1e293b;--gb-surface-elevated: #334155;--gb-text: #f8fafc;--gb-text-muted: #94a3b8;--gb-primary: #3b82f6;--gb-success: #10b981;--gb-warning: #f59e0b;--gb-danger: #ef4444;--gb-purple: #8b5cf6;--gb-border: #475569;--gb-radius: 12px;--gb-radius-sm: 8px;--gb-glass: rgba(255, 255, 255, .08);--gb-glass-strong: rgba(255, 255, 255, .12);--gb-glass-border: rgba(255, 255, 255, .1);--gb-glass-border-strong: rgba(255, 255, 255, .16);--gb-panel: rgba(0, 0, 0, .35);--gb-accent-gradient: linear-gradient(90deg, #3b82f6, #8b5cf6);--gb-safe-bottom: env(safe-area-inset-bottom, 0px)}.gb-screen{min-height:100vh;min-height:100dvh;background:var(--gb-bg-gradient);color:var(--gb-text);padding:1.5rem;overflow-x:hidden;position:relative}.gb-screen-header{text-align:center;margin-bottom:2rem}.gb-screen-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem}.gb-subtitle{color:var(--gb-text-muted);font-size:1rem}.gb-back-btn{background:none;border:none;color:var(--gb-text-muted);font-size:1rem;cursor:pointer;padding:.5rem;position:absolute;left:1rem;top:1rem}.gb-back-btn:hover{color:var(--gb-text)}.gb-btn{padding:.75rem 1.5rem;border-radius:var(--gb-radius-sm);border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.gb-btn-primary{background:var(--gb-primary);color:#fff}.gb-btn-primary:hover:not(:disabled){background:#2563eb}.gb-btn-secondary{background:var(--gb-surface-elevated);color:var(--gb-text)}.gb-btn-secondary:hover:not(:disabled){background:#475569}.gb-btn-large{padding:1rem 2rem;font-size:1.125rem}.gb-btn:disabled{opacity:.5;cursor:not-allowed}.gb-difficulty-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;max-width:1200px;margin:0 auto}.gb-difficulty-card{background:linear-gradient(135deg,#ffffff1a,#ffffff0a);border:2px solid var(--gb-glass-border);border-radius:var(--gb-radius);padding:1.5rem;text-align:left;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 10px 30px #0000002e}.gb-difficulty-card:hover{border-color:var(--accent-color, var(--gb-primary));transform:translateY(-2px);box-shadow:0 14px 36px #0000003d}.gb-difficulty-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.gb-difficulty-header h2{font-size:1.5rem;margin:0}.gb-difficulty-badge{padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;color:#fff}.gb-difficulty-desc{color:var(--gb-text-muted);margin-bottom:1rem}.gb-difficulty-stats{display:flex;gap:1.5rem;margin-bottom:1rem}.gb-stat{text-align:center}.gb-stat-value{display:block;font-size:1.25rem;font-weight:700}.gb-stat-label{font-size:.75rem;color:var(--gb-text-muted)}.gb-starting-phase{font-size:.875rem;color:var(--gb-text-muted);padding-top:.75rem;border-top:1px solid var(--gb-glass-border)}.gb-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;max-width:1000px;margin:0 auto}.gb-category-card{background:linear-gradient(135deg,#ffffff1a,#ffffff0a);border:2px solid var(--gb-glass-border);border-radius:var(--gb-radius);padding:1rem;display:flex;flex-direction:column;gap:.5rem;cursor:pointer;transition:all .2s;text-align:left;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 10px 30px #0000002e}.gb-category-card:hover{border-color:#3b82f6b3}.gb-category-all{border-color:#3b82f699;background:linear-gradient(135deg,#3b82f624,#8b5cf61a)}.gb-category-icon{font-size:2rem}.gb-category-info h3{margin:0;font-size:1.125rem}.gb-category-desc{font-size:.875rem;color:var(--gb-text-muted)}.gb-category-stats{display:flex;gap:.5rem;align-items:center;font-size:.875rem;color:var(--gb-text-muted)}.gb-progress-bar{height:4px;background:var(--gb-border);border-radius:2px;overflow:hidden}.gb-progress-fill{height:100%;background:var(--gb-success);transition:width .3s}.gb-game-container{position:fixed;top:64px;left:0;right:0;bottom:56px;z-index:40;min-height:100vh;min-height:100dvh;background:var(--gb-bg-gradient);color:var(--gb-text);display:flex;flex-direction:column;overflow-x:hidden;overflow-y:hidden}@media (min-width: 768px){.gb-game-container{bottom:0}}.gb-game-content{flex:1;display:flex;flex-direction:column;padding:.75rem;padding-bottom:calc(2.5rem + var(--gb-safe-bottom));max-width:800px;margin:0 auto;width:100%;overflow-y:auto;overflow-x:hidden;min-height:0}@media (min-width: 900px){.gb-game-content{max-width:1100px;padding:1rem;padding-bottom:calc(3.25rem + var(--gb-safe-bottom))}}.gb-rule-info{text-align:center;margin-bottom:1rem}.gb-rule-info h3{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .9rem;border-radius:999px;background:linear-gradient(135deg,#38bdf833,#6366f140);border:1px solid rgba(99,102,241,.35);color:#e0f2fe;font-size:.85rem;font-weight:700;letter-spacing:.02em;text-shadow:0 0 12px rgba(56,189,248,.35);box-shadow:0 0 16px #38bdf82e,0 6px 18px #0f172a59;animation:gb-tense-glow 2.6s ease-in-out infinite}@keyframes gb-tense-glow{0%,to{box-shadow:0 0 14px #38bdf82e,0 6px 18px #0f172a59}50%{box-shadow:0 0 22px #38bdf852,0 8px 22px #0f172a66}}.gb-hud{background:var(--gb-panel);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:.75rem 1rem;border-bottom:1px solid var(--gb-glass-border);color:#ffffffeb}.gb-hud-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.gb-hud-btn{background:#ffffff1a;border:1px solid var(--gb-glass-border);color:#ffffffeb;padding:.5rem 1rem;border-radius:var(--gb-radius-sm);cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.gb-hud-btn:hover{background:#ffffff2e;border-color:var(--gb-glass-border-strong);transform:translateY(-1px)}.gb-hud-center{text-align:center}.gb-score{font-size:1.5rem;font-weight:700;color:#fffffffa;text-shadow:0 2px 10px rgba(0,0,0,.35)}.gb-phase-badge{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;color:#fff}.gb-timer{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;color:#fffffff5;text-shadow:0 2px 10px rgba(0,0,0,.35)}.gb-timer[data-warning=true]{color:var(--gb-danger);animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.5}}.gb-hud-bottom{display:flex;justify-content:space-between;align-items:center}.gb-lives{display:flex;gap:.25rem}.gb-life{font-size:1.25rem;color:#ffffffe6}.gb-life-lost{opacity:1;color:#ffffff59}.gb-level-info{display:flex;align-items:center;gap:1rem}.gb-level{color:#ffffffe0;font-weight:650}.gb-accuracy{color:#ffffffd9;font-weight:700;font-variant-numeric:tabular-nums}.gb-combo{color:var(--gb-warning);font-weight:700;animation:pop .3s}@keyframes pop{50%{transform:scale(1.2)}}.gb-phase{flex:1;display:flex;flex-direction:column;gap:1.5rem;min-height:0}.gb-phase-header{text-align:center}.gb-phase-header h2{font-size:1.25rem;margin-bottom:.25rem}.gb-phase-header p{color:var(--gb-text-muted);font-size:.875rem}.gb-sentence-container{background:var(--gb-glass);border:1px solid var(--gb-glass-border);padding:1.1rem;border-radius:var(--gb-radius);text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.gb-sentence{font-size:clamp(1.05rem,3.8vw,1.5rem);margin-bottom:.5rem;line-height:1.75}.gb-translation{color:var(--gb-text-muted);font-style:italic}.gb-pattern-display{background:var(--gb-glass);border:1px solid var(--gb-glass-border);padding:.9rem;border-radius:var(--gb-radius);text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.gb-pattern-structure{font-size:1rem;margin-bottom:.75rem}.gb-pattern-components{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}.gb-component-tag{padding:.25rem .75rem;border-radius:var(--gb-radius-sm);font-size:.875rem;color:#fff}.gb-word-btn{display:inline-block;padding:.45rem .85rem;margin:.25rem;background:#ffffff1a;border:1px solid var(--gb-glass-border-strong);border-radius:var(--gb-radius-sm);color:var(--gb-text);font-size:clamp(.95rem,3.6vw,1.25rem);cursor:pointer;transition:all .2s}.gb-word-btn:hover{border-color:var(--gb-primary)}.gb-word-btn:active{transform:scale(.95)}.gb-word-selected{border-color:transparent;color:#fff}.gb-translation-hint{background:var(--gb-surface);padding:.75rem 1rem;border-radius:var(--gb-radius-sm);text-align:center}.gb-hint-label{color:var(--gb-text-muted);margin-right:.5rem}.gb-slots-container{display:flex;flex-wrap:wrap;gap:.375rem;justify-content:center;padding:.75rem;min-height:70px;background:var(--gb-surface);border-radius:var(--gb-radius)}.gb-slot{min-width:70px;padding:.5rem .75rem;background:var(--gb-bg);border:2px dashed var(--gb-border);border-radius:var(--gb-radius-sm);text-align:center;cursor:pointer;transition:all .2s}.gb-slot-filled{border-style:solid;border-color:var(--gb-primary);background:#3b82f61a}.gb-slot-filled:active{transform:scale(.95)}.gb-slot-placeholder{color:var(--gb-text-muted)}.gb-word-bank{display:flex;flex-wrap:wrap;gap:.375rem;justify-content:center;padding:.625rem;background:var(--gb-surface);border-radius:var(--gb-radius)}.gb-word-block{padding:.5rem .875rem;background:var(--gb-surface-elevated);border:2px solid var(--gb-border);border-radius:var(--gb-radius-sm);color:var(--gb-text);font-size:.9rem;cursor:grab;transition:all .2s}.gb-word-block:hover{border-color:var(--gb-primary);transform:translateY(-2px)}.gb-word-block:active{transform:scale(.95);background:var(--gb-primary);border-color:var(--gb-primary)}.gb-tetris-phase{display:flex;flex-direction:column;flex:1;gap:.5rem;padding:.5rem;min-height:0}.gb-tetris-prompt{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff14;border-radius:10px;border:1px solid rgba(255,255,255,.1)}.gb-prompt-icon{font-size:1rem}.gb-prompt-text{color:#ffffffe6;font-size:.95rem;font-weight:500;text-align:center}.gb-puzzle-area{flex:1;display:flex;flex-direction:column;justify-content:center;gap:.5rem;padding:.75rem;background:#ffffff0a;border:2px solid rgba(255,255,255,.08);border-radius:12px;min-height:120px}.gb-puzzle-area.shake{animation:puzzleShake .5s ease-in-out}.gb-puzzle-area.success{border-color:#10b98180;background:#10b98114}@keyframes puzzleShake{0%,to{transform:translate(0)}10%{transform:translate(-8px)}20%{transform:translate(8px)}30%{transform:translate(-6px)}40%{transform:translate(6px)}50%{transform:translate(-4px)}60%{transform:translate(4px)}70%{transform:translate(-2px)}80%{transform:translate(2px)}}.gb-puzzle-row{display:flex;gap:.375rem;justify-content:center;flex-wrap:wrap}.gb-puzzle-slot{flex:1;min-width:60px;max-width:100px;min-height:50px;display:flex;align-items:center;justify-content:center;background:#ffffff0f;border:2px dashed rgba(255,255,255,.15);border-radius:10px;cursor:pointer;transition:all .2s}.gb-puzzle-slot.empty:hover{border-color:#3b82f680;background:#3b82f614}.gb-puzzle-slot.filled{border-style:solid;border-color:#3b82f666;background:#3b82f61a}.gb-puzzle-slot.clashing{border-color:#f59e0b99!important;background:#f59e0b1f!important;animation:slotClash .4s ease-in-out}.gb-puzzle-slot.matched{border-color:#10b98199!important;background:#10b9811f!important}.gb-puzzle-slot.success{border-color:#10b981cc!important;background:#10b98126!important;box-shadow:0 0 12px #10b9814d}@keyframes slotClash{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.gb-slot-num{color:#ffffff40;font-size:.875rem;font-weight:600}.gb-tetris-bank{display:flex;flex-wrap:wrap;gap:.375rem;justify-content:center;padding:.625rem;background:#00000040;border-radius:10px;border:1px solid rgba(255,255,255,.08)}.gb-tetris-word{padding:.5rem .875rem;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.25rem;box-shadow:0 2px 8px #3b82f64d}.gb-tetris-word:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.gb-tetris-word:active{transform:scale(.95)}.gb-tetris-word.selected{outline:2.5px solid rgba(255,255,255,.9);box-shadow:0 0 16px #ffffff59;animation:pulseWord 1.2s ease-in-out infinite}@keyframes pulseWord{0%,to{outline-color:#ffffffe6;box-shadow:0 0 16px #ffffff59}50%{outline-color:#facc15;box-shadow:0 0 24px #facc1599}}.gb-variant-arrow{font-size:.75rem;opacity:.75;margin-left:.125rem}.gb-tetris-hint{text-align:center;font-size:.7rem;color:#fff6;padding:.25rem}.gb-check-btn{width:100%;padding:.875rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;color:#fff;font-size:1.125rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #3b82f666}.gb-check-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.gb-check-btn:active:not(:disabled){transform:scale(.98)}.gb-check-btn.disabled,.gb-check-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.gb-check-btn.success{background:linear-gradient(135deg,#22c55e,#15803d)!important;box-shadow:0 4px 15px #22c55e80;animation:successPop .4s ease-out}.gb-check-btn.error{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;box-shadow:0 4px 15px #ef444480;animation:btnShake .4s ease-in-out}@keyframes successPop{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes btnShake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.gb-tetris-block{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #3b82f64d;min-height:44px}.gb-tetris-block.selected{outline:2px solid rgba(255,255,255,.9);box-shadow:0 0 12px #ffffff4d}.gb-tetris-block.clashing{background:linear-gradient(135deg,#f59e0b,#d97706)!important;box-shadow:0 2px 8px #f59e0b66;animation:blockClash .4s ease-in-out}.gb-tetris-block.matched{background:linear-gradient(135deg,#22c55e,#15803d)!important;box-shadow:0 2px 8px #22c55e66}@keyframes blockClash{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.gb-block-text{padding:.375rem .5rem;font-size:.9rem;text-align:center}.gb-variant-drum{perspective:400px;width:100%;min-width:50px;height:38px;position:relative;touch-action:pan-x;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none}.gb-variant-drum:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px;border-radius:6px}.gb-drum-face{position:absolute;width:100%;height:100%;display:flex;align-items:center;justify-content:center;backface-visibility:hidden;font-size:.85rem;font-weight:600;color:#fff;background:transparent;border-radius:6px}.gb-drum-arrow{position:absolute;left:50%;transform:translate(-50%);font-size:.5rem;color:#ffffff80;opacity:.6;pointer-events:none;transition:opacity .2s}.gb-drum-arrow-up{top:-1px}.gb-drum-arrow-down{bottom:-1px}.gb-drum-single{padding:.375rem .5rem;font-size:.85rem;font-weight:600;text-align:center;color:#fff}.gb-agreement-feedback{padding:.5rem 1rem;border-radius:var(--gb-radius-sm);text-align:center;font-size:.875rem;font-weight:500}.gb-feedback-matched{background:#10b98126;color:var(--gb-success);border:1px solid var(--gb-success)}.gb-feedback-clash{background:#f59e0b26;color:var(--gb-warning);border:1px solid var(--gb-warning)}.gb-agreement-block{display:flex;flex-direction:column;align-items:center;min-width:60px;padding:.125rem;background:var(--gb-surface-elevated);border:2px solid var(--gb-border);border-radius:var(--gb-radius-sm);cursor:pointer;transition:all .2s;position:relative}.gb-agreement-block:hover{border-color:var(--gb-primary)}.gb-block-selected{border-color:var(--gb-primary);box-shadow:0 0 0 3px #3b82f64d}.gb-block-clashing{border-color:var(--gb-warning)!important;animation:gb-clash-shake .4s ease-in-out}.gb-block-matched{border-color:var(--gb-success)!important;box-shadow:0 0 12px #10b98166;animation:gb-snap .3s ease-out}.gb-block-disabled{opacity:.5;cursor:not-allowed}.gb-block-word{padding:.375rem .5rem;font-size:.9rem;font-weight:500}.gb-block-type-badge{position:absolute;top:-8px;right:-8px;width:18px;height:18px;border-radius:50%;background:var(--gb-primary);color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center}.gb-slot-clashing{border-color:var(--gb-warning);background:#f59e0b1a}.gb-slot-matched{border-color:var(--gb-success);background:#10b9811a}.gb-variant-drum{perspective:400px;width:100%;min-width:55px;height:42px;position:relative;touch-action:pan-x;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none}.gb-variant-drum:focus{outline:2px solid var(--gb-primary);outline-offset:2px;border-radius:var(--gb-radius-sm)}.gb-drum-viewport{width:100%;height:100%;overflow:hidden;position:relative}.gb-drum-rotator{width:100%;height:100%;position:relative;transform-style:preserve-3d}.gb-drum-face{position:absolute;width:100%;height:100%;display:flex;align-items:center;justify-content:center;backface-visibility:hidden;font-size:.9rem;font-weight:600;color:var(--gb-text);background:var(--gb-surface-elevated);border-radius:var(--gb-radius-sm)}.gb-drum-arrow{position:absolute;left:50%;transform:translate(-50%);font-size:.6rem;color:var(--gb-text-muted);opacity:.6;pointer-events:none;transition:opacity .2s}.gb-drum-arrow-up{top:-2px}.gb-drum-arrow-down{bottom:-2px}.gb-variant-drum:hover .gb-drum-arrow,.gb-variant-drum:focus .gb-drum-arrow{opacity:1}.gb-drum-clashing .gb-drum-face{background:#f59e0b33}.gb-drum-matched .gb-drum-face{background:#10b98133}.gb-drum-single{padding:.5rem .75rem;font-size:1rem;font-weight:500;text-align:center}.gb-word-with-variants{display:flex;align-items:center;gap:.25rem}.gb-variant-indicator{font-size:.75rem;color:var(--gb-primary);opacity:.8}.gb-agreement-links{position:relative;height:8px;margin:-.5rem 0}.gb-agreement-link{position:absolute;height:3px;background:linear-gradient(90deg,var(--gb-success),var(--gb-primary));border-radius:2px;opacity:0;transition:opacity .3s}.gb-agreement-link.visible{opacity:1}@keyframes gb-clash-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@keyframes gb-snap{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.gb-btn-success{background:var(--gb-success)!important}.gb-btn-success:hover:not(:disabled){background:#059669!important}.gb-blank{display:inline-block;min-width:100px;padding:.25rem .5rem;border-bottom:3px solid var(--gb-primary)}.gb-blank-filled{background:#3b82f633;border-radius:var(--gb-radius-sm)}.gb-options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.gb-option-btn{padding:.85rem;background:#ffffff14;border:1px solid var(--gb-glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--gb-radius);color:var(--gb-text);font-size:clamp(.95rem,3.4vw,1.125rem);cursor:pointer;transition:all .2s}.gb-option-btn:hover{border-color:var(--gb-primary)}.gb-option-btn:active{transform:scale(.98)}.gb-option-selected{border-color:var(--gb-primary);background:#3b82f61a}.gb-verb-info{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.85rem;background:#ffffff14;border:1px solid var(--gb-glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--gb-radius);flex-wrap:wrap}.gb-verb-infinitive-large{font-size:1.5rem;font-weight:700;color:var(--gb-primary)}.gb-verb-subject{color:var(--gb-text-muted)}.gb-input-container{padding:0 1rem}.gb-text-input{width:100%;padding:.85rem;background:#ffffff14;border:1px solid var(--gb-glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--gb-radius);color:var(--gb-text);font-size:clamp(1rem,3.6vw,1.25rem);text-align:center}.gb-text-input:focus{outline:none;border-color:var(--gb-primary)}.gb-textarea-input{width:100%;padding:.85rem;background:#ffffff14;border:1px solid var(--gb-glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--gb-radius);color:var(--gb-text);font-size:clamp(.95rem,3.2vw,1.125rem);resize:none}.gb-textarea-input:focus{outline:none;border-color:var(--gb-primary)}.gb-conjugation-table{background:var(--gb-surface);padding:1rem;border-radius:var(--gb-radius)}.gb-conjugation-table h4{text-align:center;margin-bottom:.75rem;color:var(--gb-text-muted)}.gb-table-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.gb-table-cell{display:flex;justify-content:space-between;padding:.5rem .75rem;background:var(--gb-surface-elevated);border-radius:var(--gb-radius-sm)}.gb-cell-highlight{background:#3b82f633;border:1px solid var(--gb-primary)}.gb-pronoun{color:var(--gb-text-muted)}.gb-pattern-reminder{text-align:center;padding:.75rem;background:#ffffff14;border:1px solid var(--gb-glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--gb-radius-sm)}.gb-pattern-label{color:var(--gb-text-muted);margin-right:.5rem}.gb-prompt-container{background:#ffffff14;border:1px solid var(--gb-glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:1.1rem;border-radius:var(--gb-radius);text-align:center}.gb-prompt-label{color:var(--gb-text-muted);margin-bottom:.5rem}.gb-prompt-text{font-size:clamp(1rem,3.5vw,1.25rem);font-style:italic}.gb-char-count{text-align:right;font-size:.75rem;color:var(--gb-text-muted);padding:0 1rem}.gb-hint-display{background:#f59e0b1a;border:1px solid var(--gb-warning);padding:.75rem 1rem;border-radius:var(--gb-radius-sm);display:flex;align-items:center;gap:.5rem}.gb-hint-icon{color:var(--gb-warning);font-weight:600}.gb-hint-words{display:flex;flex-wrap:wrap;gap:.5rem}.gb-hint-word{padding:.25rem .5rem;background:var(--gb-surface-elevated);border-radius:var(--gb-radius-sm);font-size:.875rem}.gb-action-area{display:flex;justify-content:center;gap:1rem;padding:1rem;margin-top:auto;margin-bottom:.75rem}@media (max-width: 640px){.gb-game-content{padding:.5rem;overflow-y:auto;padding-bottom:calc(5.5rem + var(--gb-safe-bottom))}.gb-rule-info{margin-bottom:.5rem}.gb-phase{gap:1.2rem;justify-content:flex-start}.gb-sentence-container{padding:.75rem}.gb-pattern-display{padding:.7rem}.gb-options-grid{gap:.5rem}.gb-option-btn{padding:.65rem}.gb-action-area{padding:.5rem;gap:.6rem;position:static;margin-top:.9rem;margin-bottom:calc(.75rem + var(--gb-safe-bottom))}.gb-tetris-bank{max-height:22vh;overflow-y:auto}.gb-puzzle-area{padding:.5rem;min-height:96px;max-height:44vh}.gb-tetris-hint{font-size:.65rem;padding:.15rem}.gb-check-btn{position:static;z-index:25;border-top:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,#0f172aeb,#2d1b69e0);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin-top:.5rem;margin-bottom:calc(.75rem + var(--gb-safe-bottom))}}@media (min-width: 900px){.gb-tetris-phase{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:auto 1fr auto auto;grid-template-areas:"prompt prompt" "puzzle bank" "hint bank" "check check";gap:.75rem;padding:.75rem .25rem}.gb-tetris-prompt{grid-area:prompt}.gb-puzzle-area{grid-area:puzzle;max-height:none;min-height:320px}.gb-tetris-bank{grid-area:bank;max-height:none;overflow-y:auto;align-content:flex-start}.gb-tetris-hint{grid-area:hint}.gb-check-btn{grid-area:check;position:sticky;bottom:calc(1.25rem + var(--gb-safe-bottom));z-index:30;margin-top:.25rem;margin-bottom:calc(.5rem + var(--gb-safe-bottom));border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 14px 40px #00000059}}@media (max-width: 640px) and (max-height: 740px){.gb-phase-header p,.gb-tetris-hint{display:none}}.gb-gameover-screen{display:flex;flex-direction:column;align-items:center;padding-top:3rem}.gb-gameover-header{text-align:center;margin-bottom:2rem}.gb-gameover-header h1{font-size:2.5rem;margin-bottom:.5rem}.gb-xp-earned{font-size:1.5rem;color:var(--gb-success);font-weight:700}.gb-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:500px;margin-bottom:2rem}.gb-stat-card{background:var(--gb-surface);padding:1rem;border-radius:var(--gb-radius);text-align:center}.gb-stat-primary{grid-column:span 3;background:#3b82f61a;border:2px solid var(--gb-primary)}.gb-stat-primary .gb-stat-value{font-size:2.5rem}.gb-rules-progress{width:100%;max-width:500px;margin-bottom:2rem}.gb-rules-progress h3{margin-bottom:1rem}.gb-rules-list{display:flex;flex-direction:column;gap:.5rem}.gb-rule-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--gb-surface);border-radius:var(--gb-radius-sm)}.gb-mastery-badge{padding:.25rem .5rem;border-radius:var(--gb-radius-sm);font-size:.75rem;background:var(--gb-surface-elevated)}.gb-mastery-badge[data-level="4"]{background:var(--gb-success);color:#fff}.gb-mastery-badge[data-level="3"]{background:var(--gb-primary);color:#fff}.gb-gameover-actions{display:flex;gap:1rem}.gb-loading-screen,.gb-loading-exercise{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem}.gb-spinner,.gb-spinner-large{width:40px;height:40px;border:3px solid var(--gb-border);border-top-color:var(--gb-primary);border-radius:50%;animation:spin 1s linear infinite}.gb-spinner-large{width:60px;height:60px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.gb-error-banner{background:#ef44441a;border:1px solid var(--gb-danger);color:var(--gb-danger);padding:.75rem 1rem;border-radius:var(--gb-radius-sm);margin-bottom:1rem;text-align:center}.gb-pause-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100}.gb-pause-modal{background:linear-gradient(135deg,#ffffff24,#ffffff0f);border:1px solid var(--gb-glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:var(--gb-radius);text-align:center;box-shadow:0 18px 60px #00000073}.gb-pause-modal h2{margin-bottom:1.5rem}.gb-pause-modal button{display:block;width:100%;margin-bottom:.5rem}.gb-empty-state{text-align:center;padding:3rem 1rem}.gb-empty-state p{color:var(--gb-text-muted);margin-bottom:1rem}@media (max-width: 768px){.gb-screen{padding:1rem}.gb-screen-header h1{font-size:1.75rem}.gb-game-content{padding:.75rem}.gb-sentence{font-size:1.25rem;line-height:1.8}.gb-verb-infinitive-large{font-size:1.25rem}}@media (max-width: 640px){.gb-screen{padding:3rem .75rem .75rem}.gb-screen-header{margin-bottom:1rem}.gb-screen-header h1{font-size:1.5rem}.gb-subtitle{font-size:.875rem}.gb-back-btn{top:.5rem;left:.5rem;font-size:.875rem;padding:.25rem .5rem}.gb-difficulty-grid{grid-template-columns:1fr;gap:.75rem}.gb-difficulty-card{padding:1rem}.gb-difficulty-header h2{font-size:1.25rem}.gb-difficulty-badge{font-size:.7rem;padding:.2rem .5rem}.gb-difficulty-desc{font-size:.875rem;margin-bottom:.75rem}.gb-difficulty-stats{gap:1rem;margin-bottom:.75rem}.gb-stat-value{font-size:1.125rem}.gb-stat-label{font-size:.7rem}.gb-starting-phase{font-size:.8rem;padding-top:.5rem}.gb-category-grid{grid-template-columns:1fr;gap:.75rem}.gb-category-card{padding:.875rem}.gb-category-icon{font-size:1.5rem}.gb-category-info h3{font-size:1rem}.gb-hud{padding:.5rem .75rem}.gb-hud-top{margin-bottom:.25rem}.gb-hud-btn{padding:.375rem .75rem;font-size:.875rem}.gb-score{font-size:1.25rem}.gb-phase-badge{font-size:.65rem;padding:.2rem .5rem}.gb-timer{font-size:1rem}.gb-lives{gap:.125rem}.gb-life{font-size:1rem}.gb-level-info{gap:.5rem;font-size:.875rem}.gb-combo,.gb-accuracy{font-size:.875rem}.gb-game-content{padding:.5rem}.gb-rule-info h3{font-size:.75rem}.gb-phase{gap:1rem}.gb-phase-header h2{font-size:1rem}.gb-phase-header p{font-size:.8rem}.gb-sentence-container{padding:1rem}.gb-sentence{font-size:1.125rem;line-height:1.6;word-break:break-word}.gb-translation{font-size:.875rem}.gb-pattern-display{padding:.75rem}.gb-pattern-structure{font-size:.875rem;margin-bottom:.5rem}.gb-component-tag{padding:.2rem .5rem;font-size:.75rem}.gb-word-btn{padding:.5rem .75rem;font-size:1rem;margin:.2rem;min-height:44px}.gb-translation-hint{padding:.5rem .75rem;font-size:.875rem}.gb-slots-container{gap:.375rem;padding:.75rem .5rem;min-height:60px}.gb-slot{min-width:60px;padding:.5rem .75rem;font-size:.9rem;min-height:44px}.gb-word-bank{padding:.75rem;gap:.375rem}.gb-word-block{padding:.5rem .875rem;font-size:.9rem;min-height:44px;display:flex;align-items:center}.gb-blank{min-width:70px;font-size:.9rem}.gb-options-grid{grid-template-columns:1fr;gap:.5rem}.gb-option-btn{padding:.875rem;font-size:1rem;min-height:48px}.gb-verb-info{padding:.75rem;flex-direction:column;gap:.5rem}.gb-verb-infinitive-large{font-size:1.25rem}.gb-input-container{padding:0 .5rem}.gb-text-input{padding:.875rem;font-size:1.125rem}.gb-textarea-input{padding:.875rem;font-size:1rem}.gb-conjugation-table{padding:.75rem}.gb-conjugation-table h4{font-size:.875rem;margin-bottom:.5rem}.gb-table-grid{grid-template-columns:1fr;gap:.375rem}.gb-table-cell{padding:.375rem .5rem;font-size:.875rem}.gb-pattern-reminder{padding:.5rem;font-size:.8rem}.gb-prompt-container{padding:1rem}.gb-prompt-label{font-size:.8rem}.gb-prompt-text{font-size:1rem}.gb-char-count{font-size:.7rem;padding:0 .5rem}.gb-hint-display{padding:.5rem .75rem;font-size:.875rem}.gb-hint-word{padding:.2rem .4rem;font-size:.8rem}.gb-action-area{padding:.75rem;gap:.75rem;flex-wrap:wrap}.gb-btn{padding:.625rem 1.25rem;font-size:.9rem;min-height:44px}.gb-btn-large{padding:.875rem 1.5rem;font-size:1rem;width:100%}.gb-gameover-screen{padding-top:2rem}.gb-gameover-header h1{font-size:1.75rem}.gb-xp-earned{font-size:1.25rem}.gb-stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;padding:0 .5rem;max-width:100%}.gb-stat-primary{grid-column:span 2}.gb-stat-card{padding:.75rem}.gb-stat-primary .gb-stat-value{font-size:2rem}.gb-rules-progress{padding:0 .5rem;max-width:100%}.gb-rules-progress h3{font-size:1rem;margin-bottom:.75rem}.gb-rule-item{padding:.5rem .75rem;font-size:.875rem}.gb-mastery-badge{font-size:.7rem;padding:.2rem .4rem}.gb-gameover-actions{flex-direction:column;width:100%;padding:0 1rem;gap:.75rem}.gb-gameover-actions .gb-btn{width:100%}.gb-pause-modal{padding:1.5rem;margin:1rem;width:calc(100% - 2rem);max-width:300px}.gb-pause-modal h2{font-size:1.25rem;margin-bottom:1rem}.gb-loading-screen,.gb-loading-exercise{min-height:40vh}.gb-spinner{width:32px;height:32px}.gb-error-banner{font-size:.875rem;padding:.5rem .75rem}.gb-empty-state{padding:2rem 1rem}.gb-empty-state p{font-size:.875rem}.gb-tetris-phase{gap:.375rem;padding:.375rem}.gb-tetris-prompt{padding:.375rem .75rem;gap:.375rem}.gb-prompt-icon{font-size:.875rem}.gb-prompt-text{font-size:.85rem}.gb-puzzle-area{padding:.5rem;gap:.375rem;min-height:100px}.gb-puzzle-row{gap:.25rem}.gb-puzzle-slot{min-width:55px;max-width:85px;min-height:44px;border-radius:8px}.gb-tetris-bank{padding:.5rem;gap:.25rem}.gb-tetris-word{padding:.4rem .7rem;font-size:.8rem;border-radius:6px}.gb-tetris-hint{font-size:.65rem;padding:.125rem}.gb-check-btn{padding:.75rem 1rem;font-size:1rem;border-radius:10px}.gb-tetris-block{min-height:40px;border-radius:6px}.gb-block-text{font-size:.8rem;padding:.25rem .375rem}.gb-variant-drum{height:34px;min-width:45px}.gb-drum-face{font-size:.8rem}.gb-compact-layout{min-height:calc(100vh - 140px);min-height:calc(100dvh - 140px);padding:.25rem}.gb-translation-hint.gb-compact{padding:.375rem .5rem;font-size:.85rem}.gb-word-bank.gb-compact{padding:.375rem;gap:.25rem}.gb-word-bank.gb-compact .gb-word-block{padding:.4rem .6rem;font-size:.85rem;min-height:40px}.gb-agreement-instructions.gb-compact{font-size:.7rem;padding:.125rem}.gb-action-area.gb-compact{padding:.375rem}.gb-btn-check{padding:.75rem 1rem;font-size:1rem}}@media (max-width: 380px){.gb-screen{padding:2.5rem .5rem .5rem}.gb-screen-header h1{font-size:1.25rem}.gb-difficulty-card{padding:.75rem}.gb-difficulty-header h2{font-size:1.125rem}.gb-sentence{font-size:1rem}.gb-word-btn{padding:.4rem .6rem;font-size:.9rem}.gb-slot{min-width:50px;padding:.4rem .5rem;font-size:.85rem}.gb-word-block{padding:.4rem .6rem;font-size:.85rem}.gb-hud{padding:.375rem .5rem}.gb-score{font-size:1.125rem}.gb-timer{font-size:.9rem}.gb-gameover-header h1{font-size:1.5rem}.gb-stat-primary .gb-stat-value{font-size:1.75rem}}.gb-shell .sm-difficulty-card:nth-child(4){background:linear-gradient(145deg,#a855f7,#7c3aed);color:#f8fafc;border-color:#c084fcbf}.gb-shell .sm-difficulty-card:nth-child(4) .sm-difficulty-mode{background:#0f172a2e;color:#f8fafc}.gb-start-error{width:min(720px,100%)}.gb-tense-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;padding:1rem;max-width:1200px;margin:0 auto}.gb-tense-card{background:linear-gradient(135deg,var(--gb-surface) 0%,var(--gb-surface-elevated) 100%);border:2px solid var(--gb-border);border-radius:var(--gb-radius);padding:1.5rem;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}.gb-tense-card:hover:not(.gb-tense-locked){border-color:var(--gb-primary);transform:translateY(-4px);box-shadow:0 8px 20px #3b82f64d}.gb-tense-locked{opacity:.5;cursor:not-allowed}.gb-tense-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.gb-tense-icon{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3b82f633,#8b5cf633)}.gb-tense-icon.from-blue-500{background:linear-gradient(135deg,#3b82f64d,#60a5fa33)}.gb-tense-icon.from-purple-500{background:linear-gradient(135deg,#8b5cf64d,#a855f733)}.gb-tense-icon.from-green-500{background:linear-gradient(135deg,#10b9814d,#34d39933)}.gb-tense-lock,.gb-tense-complete{background:var(--gb-surface);padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.gb-tense-lock{color:var(--gb-text-muted)}.gb-tense-complete{color:var(--gb-success)}.gb-tense-name{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:var(--gb-text)}.gb-tense-desc{font-size:.9rem;color:var(--gb-text-muted);margin-bottom:1rem}.gb-tense-progress{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}.gb-progress-row{display:flex;justify-content:space-between;align-items:center}.gb-progress-label{font-size:.85rem;color:var(--gb-text-muted);width:100px}.gb-progress-dots{display:flex;gap:.4rem}.gb-progress-dot{width:12px;height:12px;border-radius:50%;transition:all .3s}.gb-tense-overall{display:flex;align-items:center;gap:.75rem;margin-top:1rem}.gb-progress-bar-bg{flex:1;height:8px;background:var(--gb-surface);border-radius:4px;overflow:hidden}.gb-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--gb-primary),var(--gb-success));transition:width .5s ease}.gb-progress-percent{font-size:.9rem;font-weight:600;color:var(--gb-text);min-width:40px;text-align:right}.gb-legend{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-top:2rem;padding:1rem;background:var(--gb-surface);border-radius:var(--gb-radius)}.gb-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--gb-text-muted)}.gb-type-grid{display:flex;flex-direction:column;gap:1.5rem;padding:1rem;max-width:600px;margin:0 auto}.gb-type-card{background:linear-gradient(135deg,var(--gb-surface) 0%,var(--gb-surface-elevated) 100%);border:2px solid var(--gb-border);border-radius:var(--gb-radius);padding:1.5rem;cursor:pointer;transition:all .3s;position:relative}.gb-type-card:hover:not(.gb-type-locked){border-color:var(--gb-primary);transform:translate(8px);box-shadow:-8px 0 20px #3b82f64d}.gb-type-locked{opacity:.5;cursor:not-allowed}.gb-type-complete{border-color:var(--gb-success);background:linear-gradient(135deg,var(--gb-surface) 0%,rgba(16,185,129,.1) 100%)}.gb-type-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.gb-type-icon-lg{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(59,130,246,.2),transparent);border-radius:50%}.gb-type-lock{background:var(--gb-surface);padding:.75rem;border-radius:50%;color:var(--gb-text-muted)}.gb-type-complete-badge{display:flex;align-items:center;gap:.5rem;background:var(--gb-success);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600}.gb-type-name{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;color:var(--gb-text)}.gb-type-desc{font-size:.95rem;color:var(--gb-text-muted);margin-bottom:1.25rem}.gb-type-phases{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0;padding:1rem;background:#0003;border-radius:var(--gb-radius-sm)}.gb-phase-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:var(--gb-radius-sm);transition:all .3s}.gb-phase-current{background:#3b82f626;border-left:3px solid var(--gb-primary)}.gb-phase-mastered{background:#10b9811a}.gb-phase-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--gb-surface);border-radius:50%}.gb-phase-name{flex:1;font-size:.95rem;font-weight:600;color:var(--gb-text)}.gb-phase-streak{font-size:.85rem;font-weight:600;color:var(--gb-primary);background:#3b82f633;padding:.25rem .75rem;border-radius:12px}.gb-type-status{text-align:center;margin-top:1rem;font-size:.9rem}.gb-status-complete{color:var(--gb-success);font-weight:600}.gb-status-next{color:var(--gb-primary);font-weight:600}.gb-type-locked-msg{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;padding:.75rem;background:#ef44441a;border-radius:var(--gb-radius-sm);color:var(--gb-text-muted);font-size:.9rem}.gb-help-box{background:var(--gb-surface);border:2px solid var(--gb-border);border-radius:var(--gb-radius);padding:1.5rem;margin-top:2rem;max-width:600px;margin-left:auto;margin-right:auto}.gb-help-box h4{margin-bottom:1rem;color:var(--gb-text);font-size:1.1rem}.gb-help-box ul{list-style:none;padding:0;margin:0}.gb-help-box li{padding:.5rem 0;color:var(--gb-text-muted);font-size:.95rem}.gb-help-box strong{color:var(--gb-text)}.gb-writing-phase{display:flex;flex-direction:column;gap:1.5rem;padding:2rem 1rem;max-width:700px;margin:0 auto}.gb-mastery-progress{background:var(--gb-surface);border:2px solid var(--gb-border);border-radius:var(--gb-radius);padding:1rem}.gb-mastery-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.gb-mastery-label{font-size:.9rem;color:var(--gb-text-muted);font-weight:600}.gb-mastery-count{font-size:1.25rem;font-weight:700;color:var(--gb-primary)}.gb-mastery-dots{display:flex;gap:.75rem;justify-content:center}.gb-mastery-dot{width:40px;height:40px;border-radius:50%;background:var(--gb-surface-elevated);border:3px solid var(--gb-border);transition:all .3s}.gb-mastery-dot-filled{background:linear-gradient(135deg,var(--gb-primary),var(--gb-success));border-color:var(--gb-success);box-shadow:0 0 20px #10b98180}.gb-writing-prompt{background:linear-gradient(135deg,var(--gb-surface) 0%,var(--gb-surface-elevated) 100%);border:2px solid var(--gb-primary);border-radius:var(--gb-radius);padding:1.5rem;text-align:center}.gb-prompt-label{font-size:.9rem;color:var(--gb-text-muted);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.gb-prompt-sentence{font-size:1.75rem;font-weight:700;color:var(--gb-text);line-height:1.4}.gb-writing-hint{display:flex;align-items:center;gap:.75rem;background:#f59e0b1a;border:2px solid var(--gb-warning);border-radius:var(--gb-radius);padding:1rem;font-size:.95rem;color:var(--gb-text)}.gb-writing-input-area{position:relative}.gb-writing-input{width:100%;padding:1.25rem 1.5rem;font-size:1.25rem;background:var(--gb-surface);border:3px solid var(--gb-border);border-radius:var(--gb-radius);color:var(--gb-text);transition:all .3s;font-family:inherit}.gb-writing-input:focus{outline:none;border-color:var(--gb-primary);box-shadow:0 0 0 4px #3b82f61a}.gb-writing-input::-moz-placeholder{color:var(--gb-text-muted);opacity:.6}.gb-writing-input::placeholder{color:var(--gb-text-muted);opacity:.6}.gb-input-correct{border-color:var(--gb-success);background:#10b9811a}.gb-input-incorrect{border-color:var(--gb-danger);background:#ef44441a;animation:inputShake .5s ease}@keyframes inputShake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.gb-writing-feedback{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.gb-feedback-correct{background:var(--gb-success);color:#fff}.gb-feedback-incorrect{background:var(--gb-danger);color:#fff}.gb-writing-answer{background:var(--gb-surface);border:2px solid var(--gb-success);border-radius:var(--gb-radius);padding:1.25rem;text-align:center}.gb-answer-label{font-size:.85rem;color:var(--gb-text-muted);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}.gb-answer-text{font-size:1.5rem;font-weight:700;color:var(--gb-success)}.gb-writing-actions{display:flex;gap:1rem;justify-content:center}.gb-btn-hint{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--gb-warning);color:#fff;border:none;border-radius:var(--gb-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.gb-btn-hint:hover:not(:disabled){background:#d97706;transform:translateY(-2px)}.gb-btn-hint:disabled{opacity:.5;cursor:not-allowed}.gb-btn-submit{flex:1;padding:1rem 2rem;background:linear-gradient(135deg,var(--gb-primary),var(--gb-purple));color:#fff;border:none;border-radius:var(--gb-radius);font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:1px}.gb-btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.gb-btn-submit:disabled{opacity:.5;cursor:not-allowed}.gb-writing-keyboard-hint{text-align:center;font-size:.85rem;color:var(--gb-text-muted);font-style:italic}@media (max-width: 768px){.gb-writing-phase{padding:1rem .5rem}.gb-prompt-sentence{font-size:1.4rem}.gb-writing-input{font-size:1.1rem;padding:1rem}.gb-mastery-dot{width:32px;height:32px}.gb-type-grid{padding:.5rem}.gb-tense-grid{grid-template-columns:1fr}}.story-text{font-family:Georgia,serif;line-height:2}.story-text .blank{position:relative;display:inline-block;min-width:100px;text-align:center}.story-blank-highlight{animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 #fbbf2466}50%{box-shadow:0 0 0 10px #fbbf2400}}.blank-reveal{animation:blank-reveal .5s ease-out}@keyframes blank-reveal{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.combo-streak{animation:combo-bounce .6s ease-out}@keyframes combo-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.story-card{transition:all .3s ease}.story-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000026}.progress-bar-fill{transition:width .5s ease-out}.answer-option{position:relative;overflow:hidden}.answer-option:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#22c55e4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.answer-option.correct:before{width:300px;height:300px}.hint-reveal{animation:hint-slide .4s ease-out}@keyframes hint-slide{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.life-lost{animation:shake .5s ease-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.score-increase{animation:score-pop .6s ease-out}@keyframes score-pop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.feedback-correct{animation:feedback-success .5s ease-out}.feedback-incorrect{animation:feedback-error .5s ease-out}@keyframes feedback-success{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes feedback-error{0%{opacity:0}25%,75%{transform:translate(-10px)}50%,to{transform:translate(10px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.story-text{font-size:16px;line-height:1.8}.story-text .blank{min-width:80px}}@media (prefers-color-scheme: dark){.story-text{color:#e5e7eb}}.diary-page{padding-bottom:140px}@media (min-width: 768px){.diary-page{padding-bottom:24px}}.diary-header{flex-direction:column;gap:12px;align-items:flex-start}@media (min-width: 640px){.diary-header{flex-direction:row;align-items:center;justify-content:space-between}}.diary-writing-area{transition:box-shadow .2s ease-in-out}.diary-writing-area:focus-within{box-shadow:0 0 0 3px #3b82f633}.diary-submit-bar{display:flex;justify-content:flex-end}@media (max-width: 767px){.diary-submit-bar{position:fixed;bottom:56px;left:0;right:0;padding:12px 16px;background:#fff;box-shadow:0 -4px 12px #0000001a;z-index:40;justify-content:stretch}.diary-submit-bar button{width:100%;justify-content:center}}@media (max-width: 767px){.diary-writing-area textarea,.diary-writing-area input{font-size:16px!important}.diary-writing-area textarea{min-height:180px}}.correction-underline-grammar{-webkit-text-decoration:underline wavy #ef4444;text-decoration:underline wavy #ef4444;text-underline-offset:3px}.correction-underline-spelling{-webkit-text-decoration:underline wavy #f97316;text-decoration:underline wavy #f97316;text-underline-offset:3px}.correction-underline-word-choice{-webkit-text-decoration:underline wavy #3b82f6;text-decoration:underline wavy #3b82f6;text-underline-offset:3px}.correction-locked{border-bottom:2px dashed #9ca3af;cursor:not-allowed}@keyframes flicker{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.streak-fire{animation:flicker 1.5s ease-in-out infinite}.suggestion-chip{transition:all .15s ease-out}.suggestion-chip:hover{transform:translateY(-1px)}.suggestion-chip:active{transform:translateY(0)}@media (max-width: 767px){.suggestion-chip{min-height:40px;display:inline-flex;align-items:center;padding:8px 14px}}.diary-tabs{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.diary-tabs::-webkit-scrollbar{display:none}.diary-tabs button{white-space:nowrap;flex-shrink:0}@media (max-width: 767px){.entry-card{padding:12px}.entry-card .entry-actions{flex-direction:column;align-items:stretch;gap:8px;margin-top:12px}.entry-card .entry-actions button{justify-content:center}}@media (max-width: 767px){.feedback-panel{top:0!important;right:0!important;bottom:0!important;left:0!important;border-radius:0!important;max-height:100vh!important}}.feedback-panel-content{scrollbar-width:thin;scrollbar-color:#d1d5db transparent}.feedback-panel-content::-webkit-scrollbar{width:6px}.feedback-panel-content::-webkit-scrollbar-track{background:transparent}.feedback-panel-content::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:3px}@keyframes progress-pulse{0%,to{opacity:1}50%{opacity:.7}}.progress-bar-active{animation:progress-pulse 2s ease-in-out infinite}@keyframes xp-pop{0%{transform:scale(0) translateY(0);opacity:0}50%{transform:scale(1.2) translateY(-10px);opacity:1}to{transform:scale(1) translateY(-20px);opacity:0}}.xp-animation{animation:xp-pop 1s ease-out forwards}.entry-card{transition:transform .15s ease-out,box-shadow .15s ease-out}@media (min-width: 768px){.entry-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}}@keyframes score-fill{0%{stroke-dashoffset:100}to{stroke-dashoffset:var(--score-offset)}}.score-gauge{animation:score-fill 1s ease-out forwards}@media (max-width: 767px){.diary-success-message{flex-direction:column;gap:12px}.diary-success-message>div:last-child{display:flex;width:100%;gap:8px}.diary-success-message>div:last-child button{flex:1}}.long-press-hint{opacity:0;transition:opacity .2s ease-in-out}.card:hover .long-press-hint,.card:focus-within .long-press-hint{opacity:1}@media (max-width: 767px){.long-press-hint{opacity:1}}.reader-page{padding-bottom:env(safe-area-inset-bottom,0)}.book-card{transition:transform .15s ease-out,box-shadow .15s ease-out}@media (min-width: 768px){.book-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}}.book-cover{aspect-ratio:2/3;-o-object-fit:cover;object-fit:cover}.reader-content{font-family:Georgia,Times New Roman,serif;line-height:1.8}.reader-content p{margin-bottom:1.25em}.translatable-word{cursor:pointer;transition:background-color .15s ease;border-radius:2px;padding:0 1px}.translatable-word:hover{background-color:#3b82f61a}.translatable-word.pressed{background-color:#3b82f633}.translation-popup{animation:slideUp .25s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@supports (padding-bottom: env(safe-area-inset-bottom)){.translation-popup{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}.reading-progress-bar{transition:width .3s ease-out}.book-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#fffffff2}.word-card{background:linear-gradient(135deg,#667eea,#764ba2)}@media (max-width: 767px){.reader-content{font-size:18px}.translatable-word{padding:2px 4px;margin:-2px -4px}}.difficulty-easy{background-color:#d1fae5;color:#065f46}.difficulty-medium{background-color:#fef3c7;color:#92400e}.difficulty-hard{background-color:#fee2e2;color:#991b1b}.reading-timer{font-variant-numeric:tabular-nums}
