@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@400;700;800;900&display=swap);*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/* ! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com */*,:after,:before{border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{bottom:0;top:0}.-bottom-0\.5{bottom:-.125rem}.-right-0\.5{right:-.125rem}.bottom-0{bottom:0}.bottom-2{bottom:.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\/3{left:33.333333%}.left-10{left:2.5rem}.left-2{left:.5rem}.left-7{left:1.75rem}.left-\[-100\%\]{left:-100%}.right-0{right:0}.right-1\/3{right:33.333333%}.right-2{right:.5rem}.right-20{right:5rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-16{top:4rem}.top-2{top:.5rem}.top-20{top:5rem}.top-24{top:6rem}.top-32{top:8rem}.top-4{top:1rem}.top-48{top:12rem}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.col-auto{grid-column:auto}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.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-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.me-1{-webkit-margin-end:.25rem;margin-inline-end:.25rem}.me-2{-webkit-margin-end:.5rem;margin-inline-end:.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.ms-2{-webkit-margin-start:.5rem;margin-inline-start:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.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}.contents{display:contents}.hidden{display:none}.h-1\/2{height:50%}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-96{max-height:24rem}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0}.min-w-\[140px\]{min-width:140px}.min-w-\[280px\]{min-width:280px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[200px\]{max-width:200px}.max-w-\[350px\]{max-width:350px}.max-w-\[400px\]{max-width:400px}.max-w-\[600px\]{max-width:600px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.flex-1{flex:1 1}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-rotate-90{--tw-rotate:-90deg}.-rotate-90,.scale-105{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[cardSlideIn_0\.8s_ease-out\]{animation:cardSlideIn .8s ease-out}.animate-\[cardSlideIn_0\.9s_ease-out\]{animation:cardSlideIn .9s ease-out}.animate-\[errorShake_0\.5s_ease-out\]{animation:errorShake .5s ease-out}.animate-\[fadeIn_0\.3s_ease-out\]{animation:fadeIn .3s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-rows-8{grid-template-rows:repeat(8,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.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-left:calc(.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.25rem*var(--tw-space-x-reverse))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(2rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(2rem*var(--tw-space-x-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(3rem*var(--tw-space-y-reverse));margin-top:calc(3rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1.5rem}.rounded-3xl{border-radius:2rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:1rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-amber-200{--tw-border-opacity:1;border-color:#fde68a;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-100{--tw-border-opacity:1;border-color:#dbeafe;border-color:rgb(219 234 254/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:#bfdbfe;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-blue-300{--tw-border-opacity:1;border-color:#93c5fd;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:#3b82f6;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-blue-600{--tw-border-opacity:1;border-color:#2563eb;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.border-error\/50{border-color:#ef444480}.border-gray-100{--tw-border-opacity:1;border-color:#f3f4f6;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:#9ca3af;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.border-gray-600{--tw-border-opacity:1;border-color:#4b5563;border-color:rgb(75 85 99/var(--tw-border-opacity,1))}.border-gray-800{--tw-border-opacity:1;border-color:#1f2937;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:#bbf7d0;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-300{--tw-border-opacity:1;border-color:#86efac;border-color:rgb(134 239 172/var(--tw-border-opacity,1))}.border-green-400{--tw-border-opacity:1;border-color:#4ade80;border-color:rgb(74 222 128/var(--tw-border-opacity,1))}.border-green-500{--tw-border-opacity:1;border-color:#22c55e;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.border-green-600{--tw-border-opacity:1;border-color:#16a34a;border-color:rgb(22 163 74/var(--tw-border-opacity,1))}.border-indigo-200{--tw-border-opacity:1;border-color:#c7d2fe;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-orange-200{--tw-border-opacity:1;border-color:#fed7aa;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.border-orange-300{--tw-border-opacity:1;border-color:#fdba74;border-color:rgb(253 186 116/var(--tw-border-opacity,1))}.border-orange-500{--tw-border-opacity:1;border-color:#f97316;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.border-primary{--tw-border-opacity:1;border-color:#2563eb;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.border-primary-500{--tw-border-opacity:1;border-color:#3b82f6;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-purple-200{--tw-border-opacity:1;border-color:#e9d5ff;border-color:rgb(233 213 255/var(--tw-border-opacity,1))}.border-purple-300{--tw-border-opacity:1;border-color:#d8b4fe;border-color:rgb(216 180 254/var(--tw-border-opacity,1))}.border-purple-600{--tw-border-opacity:1;border-color:#9333ea;border-color:rgb(147 51 234/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-300{--tw-border-opacity:1;border-color:#fca5a5;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-red-400{--tw-border-opacity:1;border-color:#f87171;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:#ef4444;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.border-red-600{--tw-border-opacity:1;border-color:#dc2626;border-color:rgb(220 38 38/var(--tw-border-opacity,1))}.border-sky-300{--tw-border-opacity:1;border-color:#7dd3fc;border-color:rgb(125 211 252/var(--tw-border-opacity,1))}.border-slate-500\/60{border-color:#64748b99}.border-slate-600\/30{border-color:#4755694d}.border-slate-600\/40{border-color:#47556966}.border-success\/50{border-color:#22c55e80}.border-transparent{border-color:#0000}.border-white\/10{border-color:#ffffff1a}.border-white\/20{border-color:#fff3}.border-white\/50{border-color:#ffffff80}.border-yellow-200{--tw-border-opacity:1;border-color:#fef08a;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.border-yellow-300{--tw-border-opacity:1;border-color:#fde047;border-color:rgb(253 224 71/var(--tw-border-opacity,1))}.border-yellow-400{--tw-border-opacity:1;border-color:#facc15;border-color:rgb(250 204 21/var(--tw-border-opacity,1))}.border-yellow-400\/40{border-color:#facc1566}.border-yellow-500{--tw-border-opacity:1;border-color:#eab308;border-color:rgb(234 179 8/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:#0000}.border-t-white{--tw-border-opacity:1;border-top-color:#fff;border-top-color:rgb(255 255 255/var(--tw-border-opacity,1))}.bg-accent{--tw-bg-opacity:1;background-color:#f59e0b;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-accent\/10{background-color:#f59e0b1a}.bg-amber-100{--tw-bg-opacity:1;background-color:#fef3c7;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-700{--tw-bg-opacity:1;background-color:#b45309;background-color:rgb(180 83 9/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/30{background-color:#0000004d}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity:1;background-color:#dbeafe;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:#eff6ff;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:#3b82f6;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:#059669;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-error{--tw-bg-opacity:1;background-color:#ef4444;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-error\/30{background-color:#ef44444d}.bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:#d1d5db;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:#9ca3af;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:#6b7280;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-gray-600{--tw-bg-opacity:1;background-color:#4b5563;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.bg-gray-700{--tw-bg-opacity:1;background-color:#374151;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.bg-gray-700\/50{background-color:#37415180}.bg-gray-800{--tw-bg-opacity:1;background-color:#1f2937;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-900{--tw-bg-opacity:1;background-color:#111827;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-100{--tw-bg-opacity:1;background-color:#dcfce7;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:#f0fdf4;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:#22c55e;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:#16a34a;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-info{--tw-bg-opacity:1;background-color:#06b6d4;background-color:rgb(6 182 212/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:#ffedd5;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:#fff7ed;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-500{--tw-bg-opacity:1;background-color:#f97316;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-primary,.bg-primary-600{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:#faf5ff;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-purple-600{--tw-bg-opacity:1;background-color:#9333ea;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:#fee2e2;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:#ef4444;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity:1;background-color:#dc2626;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-secondary{--tw-bg-opacity:1;background-color:#10b981;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-sky-100{--tw-bg-opacity:1;background-color:#e0f2fe;background-color:rgb(224 242 254/var(--tw-bg-opacity,1))}.bg-sky-50{--tw-bg-opacity:1;background-color:#f0f9ff;background-color:rgb(240 249 255/var(--tw-bg-opacity,1))}.bg-sky-600{--tw-bg-opacity:1;background-color:#0284c7;background-color:rgb(2 132 199/var(--tw-bg-opacity,1))}.bg-sky-600\/90{background-color:#0284c7e6}.bg-sky-600\/95{background-color:#0284c7f2}.bg-slate-700\/60{background-color:#33415599}.bg-slate-800\/50{background-color:#1e293b80}.bg-slate-800\/95{background-color:#1e293bf2}.bg-slate-900\/70{background-color:#0f172ab3}.bg-success{--tw-bg-opacity:1;background-color:#22c55e;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-success\/30{background-color:#22c55e4d}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/90{background-color:#ffffffe6}.bg-white\/95{background-color:#fffffff2}.bg-yellow-100{--tw-bg-opacity:1;background-color:#fef9c3;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-400{--tw-bg-opacity:1;background-color:#facc15;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:#fefce8;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-yellow-500{--tw-bg-opacity:1;background-color:#eab308;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.bg-yellow-500\/20{background-color:#eab30833}.bg-yellow-600{--tw-bg-opacity:1;background-color:#ca8a04;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-opacity-70{--tw-bg-opacity:0.7}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.from-accent{--tw-gradient-from:#f59e0b var(--tw-gradient-from-position);--tw-gradient-to:#f59e0b00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-100{--tw-gradient-from:#fef3c7 var(--tw-gradient-from-position);--tw-gradient-to:#fef3c700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-100{--tw-gradient-from:#dbeafe var(--tw-gradient-from-position);--tw-gradient-to:#dbeafe00 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:#eff6ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:#3b82f600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gray-100{--tw-gradient-from:#f3f4f6 var(--tw-gradient-from-position);--tw-gradient-to:#f3f4f600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from:#111827 var(--tw-gradient-from-position);--tw-gradient-to:#11182700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-100{--tw-gradient-from:#dcfce7 var(--tw-gradient-from-position);--tw-gradient-to:#dcfce700 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:#f0fdf400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500{--tw-gradient-from:#22c55e var(--tw-gradient-from-position);--tw-gradient-to:#22c55e00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-50{--tw-gradient-from:#eef2ff var(--tw-gradient-from-position);--tw-gradient-to:#eef2ff00 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:#ffedd500 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-primary-600{--tw-gradient-from:#2563eb var(--tw-gradient-from-position);--tw-gradient-to:#2563eb00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-100{--tw-gradient-from:#f3e8ff var(--tw-gradient-from-position);--tw-gradient-to:#f3e8ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-200{--tw-gradient-from:#e9d5ff var(--tw-gradient-from-position);--tw-gradient-to:#e9d5ff00 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:#faf5ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-50{--tw-gradient-from:#fef2f2 var(--tw-gradient-from-position);--tw-gradient-to:#fef2f200 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500{--tw-gradient-from:#ef4444 var(--tw-gradient-from-position);--tw-gradient-to:#ef444400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-400{--tw-gradient-from:#38bdf8 var(--tw-gradient-from-position);--tw-gradient-to:#38bdf800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-400\/10{--tw-gradient-from:#38bdf81a var(--tw-gradient-from-position);--tw-gradient-to:#38bdf800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-50{--tw-gradient-from:#f0f9ff var(--tw-gradient-from-position);--tw-gradient-to:#f0f9ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-50\/20{--tw-gradient-from:#f0f9ff33 var(--tw-gradient-from-position);--tw-gradient-to:#f0f9ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-500{--tw-gradient-from:#0ea5e9 var(--tw-gradient-from-position);--tw-gradient-to:#0ea5e900 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-600{--tw-gradient-from:#0284c7 var(--tw-gradient-from-position);--tw-gradient-to:#0284c700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-50{--tw-gradient-from:#f8fafc var(--tw-gradient-from-position);--tw-gradient-to:#f8fafc00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-800{--tw-gradient-from:#1e293b var(--tw-gradient-from-position);--tw-gradient-to:#1e293b00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-800\/95{--tw-gradient-from:#1e293bf2 var(--tw-gradient-from-position);--tw-gradient-to:#1e293b00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-transparent{--tw-gradient-from:#0000 var(--tw-gradient-from-position);--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-100{--tw-gradient-from:#fef9c3 var(--tw-gradient-from-position);--tw-gradient-to:#fef9c300 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-50{--tw-gradient-from:#fefce8 var(--tw-gradient-from-position);--tw-gradient-to:#fefce800 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:#eab30800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-blue-100{--tw-gradient-to:#dbeafe00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#dbeafe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-gray-800{--tw-gradient-to:#1f293700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#1f2937 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-purple-50{--tw-gradient-to:#faf5ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#faf5ff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-sky-300{--tw-gradient-to:#7dd3fc00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#7dd3fc var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-sky-300\/5{--tw-gradient-to:#7dd3fc00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#7dd3fc0d var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-900{--tw-gradient-to:#0f172a00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0f172a var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0000 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white\/20{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff3 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white\/30{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#ffffff4d var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-yellow-100{--tw-gradient-to:#fef9c300 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fef9c3 var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-100{--tw-gradient-to:#fef3c7 var(--tw-gradient-to-position)}.to-blue-50{--tw-gradient-to:#eff6ff var(--tw-gradient-to-position)}.to-blue-50\/20{--tw-gradient-to:#eff6ff33 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-blue-700{--tw-gradient-to:#1d4ed8 var(--tw-gradient-to-position)}.to-emerald-100{--tw-gradient-to:#d1fae5 var(--tw-gradient-to-position)}.to-emerald-600{--tw-gradient-to:#059669 var(--tw-gradient-to-position)}.to-gray-100{--tw-gradient-to:#f3f4f6 var(--tw-gradient-to-position)}.to-gray-200{--tw-gradient-to:#e5e7eb var(--tw-gradient-to-position)}.to-gray-800{--tw-gradient-to:#1f2937 var(--tw-gradient-to-position)}.to-gray-800\/95{--tw-gradient-to:#1f2937f2 var(--tw-gradient-to-position)}.to-gray-900{--tw-gradient-to:#111827 var(--tw-gradient-to-position)}.to-green-100{--tw-gradient-to:#dcfce7 var(--tw-gradient-to-position)}.to-indigo-100{--tw-gradient-to:#e0e7ff var(--tw-gradient-to-position)}.to-neutral-900{--tw-gradient-to:#171717 var(--tw-gradient-to-position)}.to-orange-100{--tw-gradient-to:#ffedd5 var(--tw-gradient-to-position)}.to-orange-200{--tw-gradient-to:#fed7aa 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-50{--tw-gradient-to:#fdf2f8 var(--tw-gradient-to-position)}.to-purple-50{--tw-gradient-to:#faf5ff var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to:#a855f7 var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.to-sky-100{--tw-gradient-to:#e0f2fe var(--tw-gradient-to-position)}.to-sky-200{--tw-gradient-to:#bae6fd var(--tw-gradient-to-position)}.to-sky-200\/10{--tw-gradient-to:#bae6fd1a var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position)}.object-cover{object-fit:cover}.object-center{object-position:center}.p-1{padding:.25rem}.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-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-16{padding-bottom:4rem;padding-top:4rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pl-10{padding-left:2.5rem}.pl-3\.5{padding-left:.875rem}.pr-12{padding-right:3rem}.pr-3\.5{padding-right:.875rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-20{padding-top:5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-end{text-align:end}.font-display{font-family:Nunito,ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.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-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-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.tracking-wide{letter-spacing:.025em}.text-accent{--tw-text-opacity:1;color:#f59e0b;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:#b45309;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:#1d4ed8;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-blue-900{--tw-text-opacity:1;color:#1e3a8a;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-error{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-gray-200{--tw-text-opacity:1;color:#e5e7eb;color:rgb(229 231 235/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:#d1d5db;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:#22c55e;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:#16a34a;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:#15803d;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:#166534;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-orange-500{--tw-text-opacity:1;color:#f97316;color:rgb(249 115 22/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:#ea580c;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-orange-700{--tw-text-opacity:1;color:#c2410c;color:rgb(194 65 12/var(--tw-text-opacity,1))}.text-primary{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-primary-500{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:#9333ea;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-purple-700{--tw-text-opacity:1;color:#7e22ce;color:rgb(126 34 206/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:#991b1b;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-secondary{--tw-text-opacity:1;color:#10b981;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-sky-200{--tw-text-opacity:1;color:#bae6fd;color:rgb(186 230 253/var(--tw-text-opacity,1))}.text-sky-600{--tw-text-opacity:1;color:#0284c7;color:rgb(2 132 199/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:#cbd5e1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-success{--tw-text-opacity:1;color:#22c55e;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-warning{--tw-text-opacity:1;color:#f59e0b;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/70{color:#ffffffb3}.text-yellow-300{--tw-text-opacity:1;color:#fde047;color:rgb(253 224 71/var(--tw-text-opacity,1))}.text-yellow-400{--tw-text-opacity:1;color:#facc15;color:rgb(250 204 21/var(--tw-text-opacity,1))}.text-yellow-500{--tw-text-opacity:1;color:#eab308;color:rgb(234 179 8/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:#ca8a04;color:rgb(202 138 4/var(--tw-text-opacity,1))}.text-yellow-700{--tw-text-opacity:1;color:#a16207;color:rgb(161 98 7/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:#854d0e;color:rgb(133 77 14/var(--tw-text-opacity,1))}.text-yellow-900{--tw-text-opacity:1;color:#713f12;color:rgb(113 63 18/var(--tw-text-opacity,1))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.line-through{-webkit-text-decoration-line:line-through;text-decoration-line:line-through}.placeholder-gray-400::placeholder{--tw-placeholder-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-placeholder-opacity,1))}.placeholder-info::placeholder{--tw-placeholder-opacity:1;color:#06b6d4;color:rgb(6 182 212/var(--tw-placeholder-opacity,1))}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-5{opacity:.05}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-65{opacity:.65}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-95{opacity:.95}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 #0000000d;--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-inner,.shadow-lg{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.blur{--tw-blur:blur(8px)}.blur,.blur-3xl{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-3xl{--tw-blur:blur(64px)}.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-lg{--tw-backdrop-blur:blur(16px)}.backdrop-blur-lg,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-shadow{transition-duration:.15s;transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--tutorial-primary:#7c3aed;--tutorial-primary-light:#a78bfa;--tutorial-primary-dark:#5b21b6;--tutorial-secondary:#f97316;--tutorial-secondary-light:#fb923c;--tutorial-secondary-dark:#ea580c;--tutorial-success:#22c55e;--tutorial-success-light:#4ade80;--tutorial-success-dark:#16a34a;--tutorial-info:#3b82f6;--tutorial-info-light:#60a5fa;--tutorial-info-dark:#2563eb;--tutorial-warning:#fbbf24;--tutorial-warning-light:#fcd34d;--tutorial-warning-dark:#f59e0b;--tutorial-danger:#ef4444;--tutorial-danger-light:#f87171;--tutorial-danger-dark:#dc2626;--tutorial-xp:#eab308;--tutorial-xp-gradient:linear-gradient(135deg,#fbbf24,#f59e0b 50%,#d97706);--tutorial-gradient-purple:linear-gradient(135deg,#7c3aed,#a78bfa);--tutorial-gradient-orange:linear-gradient(135deg,#f97316,#fb923c);--tutorial-gradient-green:linear-gradient(135deg,#22c55e,#4ade80);--tutorial-gradient-blue:linear-gradient(135deg,#3b82f6,#60a5fa);--tutorial-gradient-rainbow:linear-gradient(135deg,#7c3aed,#3b82f6 25%,#22c55e 50%,#fbbf24 75%,#f97316)}@keyframes crownGlow{0%{filter:drop-shadow(0 0 10px rgba(255,215,0,.5));transform:scale(1)}to{filter:drop-shadow(0 0 20px rgba(255,215,0,.8));transform:scale(1.05)}}@keyframes xpPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes achievementGlow{0%,90%,to{opacity:.3}45%{opacity:1;transform:scale(1.1)}}@keyframes errorShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-20px) rotate(5deg)}50%{transform:translateY(-10px) rotate(-3deg)}75%{transform:translateY(-15px) rotate(2deg)}}.animate-cardSlideIn{animation:cardSlideIn .8s ease-out forwards}.hero-soft-glow{background:radial-gradient(60% 50% at 50% 60%,#00000047 0,#0000 70%);inset:0;pointer-events:none;position:absolute}.stats-band{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);position:relative}.stats-band:before{background:radial-gradient(circle at 30% 80%,#0ea5e90d 0,#0000 50%),radial-gradient(circle at 70% 20%,#0284c708 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.landing-page{background-color:initial!important;background-image:none!important}.landing-page a[class*=bg-gradient]{all:unset;cursor:pointer;display:inline-block;text-decoration:none}.landing-page .game-mode-card-override{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll!important;background:initial!important;border:initial!important;color:inherit!important}#root,body,html{height:auto;margin:0;min-height:100%;padding:0;width:100%}*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;background-color:#fff;color:#334155;font-family:Nunito,sans-serif;margin:0;overflow-x:hidden;overflow-y:auto;padding:0;width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-container{display:flex;flex-direction:column;height:auto;margin:0 auto;max-width:1200px;min-height:100vh;padding:0 10px;position:relative;width:100%;z-index:2}.app-container.full-bleed,.app-container.full-bleed .content-wrapper,.app-container.full-bleed .main-content{margin:0;max-width:none;padding:0;width:100%}.app-container:has([data-page=landing]){height:auto;margin:0;max-width:none;padding:0;width:100%}.app-container:has([data-page=landing]) .app-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(90deg,#0088cc1f,#1e293b66 50%,#0088cc1f);border-bottom:1px solid #0088cc40;left:0;position:absolute;right:0;top:0;z-index:50}.app-container:has([data-page=landing]) .content-wrapper,.app-container:has([data-page=landing]) .main-content{margin:0;max-width:none;padding:0;width:100%}.app-container.game-in-landscape .app-header{display:none}.app-container.game-in-landscape{max-width:none;padding:0}.app-container.game-in-landscape .content-wrapper{height:100%}.app-container.game-in-landscape .main-content{height:100%;padding:0}.app-container.game-in-landscape .chess-game-container.landscape{height:100vh;left:0;padding:0;position:fixed;top:0;width:100vw;z-index:10}.app-container.game-in-landscape .chess-game-container.landscape .game-layout{height:100%}.app-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(90deg,#0088cc26,#1e293b80 50%,#0088cc26);border-bottom:1px solid #0088cc4d;box-shadow:0 2px 10px #08c3;display:flex;flex-shrink:0;justify-content:space-between;padding:10px 5px;z-index:1000}.logo{background:url(/static/media/logo.98e4dc3fa6de91c821d5.png) no-repeat 0;background-size:contain;color:#fff;display:inline-block;font-size:24px;font-weight:700;height:40px;line-height:40px;padding-left:50px;width:80px}.logo img{display:block;height:40px;width:auto}.auth-nav{align-items:center;display:flex;gap:15px}.nav-link{border-radius:4px;color:#eee;padding:8px 12px;transition:background-color .2s}.nav-link:hover{background-color:#fff3}.nav-button-play{background-color:#ffffff26;border:1px solid #ffffff4d;border-radius:20px;color:#fff;font-weight:500;margin:0 5px;padding:8px 15px;text-decoration:none;transition:background-color .2s,transform .2s}.nav-button-play:hover{background-color:#ffffff4d;transform:translateY(-1px)}.auth-button,.game-mode-button,button{background-color:#ffa640;border:1px solid #0000;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:500;line-height:1.4;padding:8px 16px;text-align:center;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .1s ease}.auth-button:hover,.game-mode-button:hover,button:hover:not(:disabled){background-color:#ff7c2a;border-color:#ff7c2a;transform:translateY(-1px)}.auth-button:active,.game-mode-button:active,button:active:not(:disabled){transform:translateY(0)}button:disabled{background-color:#ccc!important;border-color:#ccc!important;color:#666!important;opacity:.7;transform:none!important}.login-button{background-color:initial;border-color:#ffa640;color:#ffa640}.login-button:hover{background-color:#ffa64033;border-color:#ffa640}.logout-button,.logout-button:hover{border-color:#f56758}.game-mode-button{background-color:#fffc;border-color:#0000;border-radius:20px;color:#1d1d1d}.game-mode-button:hover{background-color:#fff;border-color:#0000}.play-button{border-radius:50px;box-shadow:0 4px 8px #0003;color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:40px;padding:15px 50px;transition:transform .3s ease,box-shadow .3s ease}.play-button,.play-button:hover{background:linear-gradient(90deg,#ffa640,#ff7c2a);border:none}.play-button:hover{box-shadow:0 6px 12px #0003;transform:translateY(-2px)}.play-button:active{box-shadow:0 4px 8px #0003;transform:translateY(0)}.content-wrapper{-webkit-overflow-scrolling:touch;overflow-x:hidden;overflow-y:auto}.content-wrapper,.main-content{display:flex;flex-grow:1;max-width:100%;padding:0;width:100%}.main-content{box-sizing:border-box}.landing-page{align-items:center;color:#fff;display:flex;flex-direction:column;flex-grow:1;justify-content:center;padding:20px;position:relative;text-align:center;z-index:2}.landing-title{color:#f4eeee;font-size:2.5rem;margin-bottom:20px}.landing-subtitle{color:#d9dcdf;font-size:1.2rem;margin-bottom:40px;max-width:600px}.game-modes{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:40px;max-width:800px;width:100%}.game-mode-card{border-radius:8px;box-shadow:0 2px 8px #0003;color:#fff;margin-bottom:20px;padding:20px;text-align:left;transition:transform .3s ease,box-shadow .3s ease;width:240px}.game-mode-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-5px)}.game-mode-card:first-child{background-color:#3a85e0}.game-mode-card:nth-child(2){background-color:#cb6f13}.game-mode-card:nth-child(3){background-color:#5bb567}.game-mode-title{color:#fff;font-size:1.2rem;font-weight:600;margin-bottom:10px}.game-mode-description{color:#ffffffd9;font-size:.9rem;margin-bottom:15px;min-height:50px}.chess-game-container{overflow:hidden;padding:.5rem;position:relative}.game-layout{gap:.5rem}@media (orientation:portrait){.game-layout{flex-direction:column}}@media (orientation:landscape){.game-layout{align-items:stretch;flex-direction:row}}.game-info-compact{flex:none}@media (orientation:portrait){.game-info-compact{width:100%}}@media (orientation:landscape){.game-info-compact{display:flex;flex-direction:column;justify-content:space-around;width:200px}}.score-timer-row{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:.75rem;display:flex;justify-content:space-between;margin-bottom:.25rem;padding:.5rem}@media (orientation:landscape){.score-timer-row{flex-direction:column;gap:.25rem;margin-bottom:.5rem}}.game-status-row{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:.75rem;padding:.5rem;text-align:center}.center-panel-full{align-items:center;display:flex;justify-content:center;min-height:0;min-width:0}@media (orientation:portrait){.center-panel-full{flex:none;width:100%}}@media (orientation:landscape){.center-panel-full{flex:1 1}}.game-controls-minimal{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:.75rem;flex:none;padding:.5rem}@media (orientation:portrait){.game-controls-minimal{width:100%}}@media (orientation:landscape){.game-controls-minimal{display:flex;flex-direction:column;justify-content:center;width:200px}}@media (max-width:768px){.game-layout{gap:.25rem}.game-controls-minimal,.game-status-row,.score-timer-row{margin-bottom:0;padding:.375rem}.game-status-row{margin-bottom:.25rem}}.board-container{aspect-ratio:1/1;max-height:100%;max-width:100%}@media (orientation:portrait){.board-container{height:min(85vh,90vw);margin:0;padding:0;width:min(85vh,90vw)}}@media (orientation:landscape){.board-container{height:min(80vh,60vw);width:min(80vh,60vw)}}@media (orientation:portrait) and (max-width:768px){.board-container{height:min(75vh,95vw);width:min(75vh,95vw)}}@media (orientation:landscape) and (max-height:600px){.board-container{height:min(85vh,50vw);width:min(85vh,50vw)}}@media (min-width:1400px) and (min-height:900px){.board-container{height:min(70vh,50vw,800px);width:min(70vh,50vw,800px)}}.chess-game-container{flex-direction:column;height:100vh;padding:1rem;width:100%}.game-header{align-items:center;display:flex;justify-content:space-between;padding:10px 0;position:relative;width:100%;z-index:1000}@media (max-width:768px){.chess-game-container{height:100vh;padding:.25rem}.game-header{margin-bottom:.25rem}.game-layout{gap:.25rem}}@media (orientation:portrait) and (max-width:768px){.game-layout{height:calc(100% - 3rem)}}@media (orientation:landscape) and (max-height:600px){.chess-game-container{padding:.125rem}.game-header{margin-bottom:.125rem}.game-layout{gap:.125rem;height:calc(100% - 2.5rem)}.game-controls-minimal,.game-info-compact{width:150px}.game-status-row,.score-timer-row{margin-bottom:.125rem;padding:.25rem}}.chessboard-area{align-items:center;display:flex;justify-content:center;position:relative}.active-border-bottom{border-bottom-color:#9dd65b;box-shadow:0 0 10px #9dd65b}.active-border-top{border-top-color:#9dd65b;box-shadow:0 0 10px #9dd65b}.game-controls,.game-info,.pre-game-setup h2,.pre-game-setup h3,.score-display,.timer-container{box-sizing:border-box;color:#67b548;flex-shrink:0;margin:8px auto;max-width:500px;padding:5px;text-align:center;width:100%}.chess-game-container.portrait .game-controls,.chess-game-container.portrait .game-info,.chess-game-container.portrait .score-display,.chess-game-container.portrait .timer-container{margin-left:0;margin-right:0;max-width:100%!important;padding-left:5px;padding-right:5px}.timer-container{display:flex;justify-content:space-around}.chess-game-container.portrait .timer-container{justify-content:space-between}.computer-timer,.player-timer{background-color:#0003;border:1px solid #0000;border-radius:4px;color:#de28db;font-size:.9em;padding:8px 12px;transition:background-color .3s ease,border-color .3s ease}.active-timer{background-color:#ffecb3!important;border-color:#ffa726!important;color:#333!important;font-weight:700}.timer-running{border-color:orange!important}.game-controls{gap:10px;justify-content:center}.game-info{color:#eee;font-size:.9em}.game-info div{margin-bottom:4px}.move-hint{color:#90ee90;font-style:italic;margin-top:10px}.pre-game-setup{align-items:center;color:#fff;display:flex;flex-direction:column;gap:3px;justify-content:center;left:50%;max-height:70vh;max-width:600px;overflow-y:auto;padding:6px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:999}@media (max-width:768px){.pre-game-setup{border-radius:1rem;gap:1.5rem;max-height:90vh;max-width:95vw;padding:1.5rem;width:95vw}}@media (max-width:480px){.pre-game-setup{font-size:.9rem;gap:1rem;max-height:95vh;max-width:98vw;padding:1rem;width:98vw}}.pre-game-setup h2{margin-bottom:6px}.pre-game-setup h3{color:#eee;font-size:1.1em;font-weight:500;margin-bottom:10px;text-align:center}.level-wheel-container{background-color:#0000001a;border:3px solid #ffffff4d;border-radius:50%;box-shadow:0 0 15px #0000004d;height:250px;margin:15px auto;position:relative;width:250px}.level-wheel-center,.level-wheel-container{align-items:center;display:flex;justify-content:center}.level-wheel-center{background-color:#333;border:2px solid #555;border-radius:50%;color:#fff;flex-direction:column;font-size:.8em;height:80px;position:absolute;text-align:center;width:80px;z-index:2}.level-wheel-center span{display:block;font-size:1.5em;font-weight:700}.level-segment{align-items:flex-start;border-radius:50%;-webkit-clip-path:polygon(50% 50%,50% 0,85% 15%);clip-path:polygon(50% 50%,50% 0,85% 15%);color:#fff;cursor:pointer;display:flex;font-size:1em;font-weight:700;height:100%;justify-content:center;left:0;padding-top:10px;position:absolute;text-shadow:1px 1px 2px #00000080;top:0;transform-origin:50% 50%;transition:transform .3s ease,filter .3s ease;width:100%}.level-segment:hover{filter:brightness(1.1);transform:scale(1.03) rotate(var(--rotation))}.level-segment.active{filter:brightness(1.2) saturate(1.5);transform:scale(1.05) rotate(var(--rotation));z-index:1}.level-segment-1{--rotation:0deg;background-color:#4caf50}.level-segment-1,.level-segment-2{-webkit-clip-path:polygon(50% 50%,50% 0,78.18% 30.9%);clip-path:polygon(50% 50%,50% 0,78.18% 30.9%);transform:rotate(var(--rotation))}.level-segment-2{--rotation:72deg;background-color:#2196f3}.level-segment-3{--rotation:144deg;background-color:#ff9800}.level-segment-3,.level-segment-4{-webkit-clip-path:polygon(50% 50%,50% 0,78.18% 30.9%);clip-path:polygon(50% 50%,50% 0,78.18% 30.9%);transform:rotate(var(--rotation))}.level-segment-4{--rotation:216deg;background-color:#e91e63}.level-segment-5{--rotation:288deg;background-color:#9c27b0;-webkit-clip-path:polygon(50% 50%,50% 0,78.18% 30.9%);clip-path:polygon(50% 50%,50% 0,78.18% 30.9%);transform:rotate(var(--rotation))}.color-selection-switch{align-items:center;display:flex;flex-direction:column;gap:8px;margin-top:15px}.switch-container{cursor:pointer;display:inline-block;height:34px;position:relative;width:60px}.switch-checkbox{height:0;opacity:0;width:0}.switch-slider{background-color:#555;border-radius:34px;bottom:0;left:0;position:absolute;right:0;top:0;transition:background-color .4s}.switch-slider:before{background-color:#fff;border-radius:50%;bottom:4px;box-shadow:0 1px 3px #0000004d;content:"";height:26px;left:4px;position:absolute;transition:transform .4s,background-color .4s;width:26px}.switch-checkbox:checked+.switch-slider{background-color:#333}.switch-checkbox:checked+.switch-slider:before{background-color:#000;border:1px solid #ddd;transform:translateX(26px)}.start-button{border:none;border-radius:5px;cursor:pointer;font-size:1.2em;font-weight:700;margin-top:5px;padding:12px 20px;transition:background-color .2s ease}.start-button.large{min-width:200px}.start-button.green{background-color:#4caf50;color:#fff}.start-button.green:hover:not(:disabled){background-color:#45a049}.start-button:disabled{background-color:#ccc!important;cursor:not-allowed}.countdown-in-setup{font-size:1.5em;margin-top:10px}.countdown-in-setup>div{color:#4caf50;font-size:2em}.pre-game-controls .game-controls{margin-top:15px}.training-hub{color:#fff;padding:20px}.training-hub h2{margin-bottom:20px;text-align:center}.training-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:20px}.training-card{background-color:#00000040;border:1px solid #fff3;border-radius:8px;box-shadow:0 4px 8px #0003;color:inherit;display:block;padding:20px;text-decoration:none;transition:transform .2s ease-out,box-shadow .2s ease-out}.training-card:hover{box-shadow:0 6px 12px #0000004d;transform:translateY(-5px)}.training-card h3{color:#eee;font-size:1.2em;margin-bottom:10px;margin-top:0}.training-card p{color:#ccc;font-size:.9em;margin-bottom:15px}.difficulty{border-radius:4px;display:inline-block;font-size:12px;font-weight:500;margin-bottom:0;padding:4px 8px;text-transform:uppercase}.beginner{background-color:#5cb85c;color:#fff}.intermediate{background-color:#f0ad4e;color:#fff}.advanced{background-color:#d9534f;color:#fff}.game-history-container{color:#333;padding:20px}.game-history-container h2{color:#eee;margin-bottom:20px;text-align:center}.filters{background-color:#ffffffe6;border-radius:5px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px;padding:15px}.filter-controls{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.filter-group label{color:#555;display:flex;flex-direction:column;font-size:.9em;gap:5px}.filter-group select{border:1px solid #ccc;border-radius:4px;padding:6px 8px}.game-history-content{display:flex;flex-direction:column;gap:20px}@media (min-width:768px){.game-history-content{flex-direction:row}}.game-list{background:#fff;border:1px solid #ddd;border-radius:5px;flex:1 1;max-height:60vh;padding:0}.game-list ul{list-style:none;margin:0;padding:0}.game-list li{border-bottom:1px solid #eee;cursor:pointer;padding:12px 15px;transition:background-color .2s}.game-list li:last-child{border-bottom:none}.game-list li:hover{background-color:#f9f9f9}.game-list li.selected{background-color:#e7f1ff;font-weight:700}.game-summary{font-size:.9em}.game-date{color:#333;font-weight:700;margin-bottom:4px}.game-result{color:#444;margin-bottom:4px}.game-details span{color:#555;font-size:.85em;margin-right:10px}.game-details-panel{background:#fff;border:1px solid #ddd;border-radius:5px;flex:2 1;max-height:80vh;overflow-y:auto;padding:20px}.selected-game-details h3{color:#333;margin-top:0}.detail-actions{display:flex;gap:10px;margin-bottom:15px}.game-metadata p{color:#444;font-size:.9em;margin:5px 0}.chessboard-review{align-items:center;display:flex;flex-direction:column;gap:10px;margin:15px 0}.chessboard-review .board-container{aspect-ratio:1/1;border:1px solid #ccc;max-width:350px;width:100%}.review-controls{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:10px}.move-list{border:1px solid #eee;border-radius:4px;font-size:.85em;margin-top:15px;max-height:300px;overflow-y:auto;padding-top:0}.move-list table{border-collapse:collapse;width:100%}.move-list td,.move-list th{border-bottom:1px solid #f0f0f0;padding:6px 8px;text-align:left}.move-list th{background-color:#f8f8f8;font-weight:700;position:-webkit-sticky;position:sticky;top:0}.move-list td.current-move{background-color:#fff3cd;font-weight:700}.move-list tr:hover td:not(.current-move){background-color:#f9f9f9}.move-list td:nth-child(2),.move-list td:nth-child(3){cursor:pointer}.no-selection{color:#777;font-size:1.1em;padding:40px 20px;text-align:center}.timer-button{align-items:center;background-color:#ffa640;border:none;border-radius:50%;bottom:15px;box-shadow:0 2px 5px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:11px;height:65px;justify-content:center;line-height:1.2;outline:none;padding:10px;position:fixed;right:15px;text-align:center;transform:none;transition:background-color .5s ease,transform .2s ease;width:65px;z-index:20}.timer-button:hover:not(:disabled){background-color:#ff7c2a;transform:scale(1.05)}.timer-button:disabled{background-color:#aaa!important;box-shadow:none;color:#eee!important;opacity:.7;transform:none}@keyframes pulse-timer-button{0%{box-shadow:0 2px 5px #0000004d;transform:scale(1)}50%{box-shadow:0 4px 10px #0006;transform:scale(1.08)}to{box-shadow:0 2px 5px #0000004d;transform:scale(1)}}.active-timer-pulse{animation:pulse-timer-button 1.2s ease-in-out infinite}@media (max-width:768px){.game-modes{align-items:center;flex-direction:column}.game-mode-card{max-width:350px;width:100%}.landing-title{font-size:2rem}.timer-button{bottom:10px;font-size:10px;height:60px;right:10px;width:60px}.pre-game-setup{max-width:95%}.level-wheel-container{height:200px;width:200px}.level-wheel-center{font-size:.7em;height:60px;width:60px}.level-wheel-center span{font-size:1.3em}.level-segment{font-size:.9em;padding-top:8px}}@media (max-width:480px){.app-header{padding:8px 5px}.logo{height:35px}.auth-button,.game-mode-button,button{font-size:13px;padding:6px 12px}.play-button{font-size:1.2rem;padding:12px 40px}.pre-game-setup{gap:15px}.level-wheel-container{height:180px;width:180px}.level-wheel-center{font-size:.6em;height:50px;width:50px}.level-wheel-center span{font-size:1.2em}.level-segment{font-size:.8em;padding-top:6px}.start-button{font-size:1.1em;min-width:160px;padding:10px 20px}}@media (orientation:portrait){.app-container{height:auto;max-width:100%;min-height:100vh;padding:0}.app-header{padding:10px}.content-wrapper{height:auto;overflow-y:auto}.main-content{height:auto;overflow-y:visible}.chess-game-container.portrait .left-panel,.chess-game-container.portrait .right-panel{align-items:center;display:flex;max-width:500px;order:1;padding:5px;width:100%}.chess-game-container.portrait .center-panel{height:auto;order:0;width:100%}.chess-game-container.portrait .game-controls{margin:10px auto 0;max-width:500px;order:2;width:100%}.chess-game-container.portrait .game-info{margin:5px auto;max-width:500px;order:3;width:100%}}.chess-game-container{align-items:flex-start;box-sizing:border-box;display:flex;flex-grow:1;justify-content:center;padding:10px}.game-layout{gap:15px;height:100%;width:100%}.chess-game-container.portrait .game-layout{align-items:center;flex-direction:column;height:auto}.left-panel,.right-panel{box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:15px;padding:10px}.center-panel{align-items:center;display:flex;flex-direction:column;gap:10px;min-width:0}.center-panel>*,.left-panel>*,.right-panel>*{box-sizing:border-box;width:100%}.color-toggle-container{align-items:center;cursor:pointer;display:flex;gap:10px;-webkit-user-select:none;user-select:none}.color-toggle-switch{display:inline-block;height:34px;position:relative;width:60px}.color-toggle-switch input{height:0;opacity:0;width:0}.color-toggle-slider{background-color:#ccc;border-radius:34px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.color-toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:26px;left:4px;position:absolute;transition:.4s;width:26px}.color-toggle-switch input:checked+.color-toggle-slider{background-color:#333}.color-toggle-switch input:focus+.color-toggle-slider{box-shadow:0 0 1px #333}.color-toggle-switch input:checked+.color-toggle-slider:before{transform:translateX(26px)}.start-button.large.green{background-color:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.5em;padding:5px;transition:background-color .3s ease}.start-button.large.green:disabled{background-color:#ccc;cursor:not-allowed}.start-button.large.green:hover:not(:disabled){background-color:#45a049}.countdown-in-setup{color:#555;font-size:1.2em;font-weight:700;text-align:center}.dashboard{background:#0009;border-radius:8px;box-shadow:0 4px 12px #0000004d;color:#c0c5cb;height:auto;margin:20px auto;overflow-y:auto;padding:30px;position:relative;width:100%;z-index:2}@media (max-width:768px){.dashboard{height:auto;margin:10px;overflow-y:visible;padding:15px}}.dashboard-header{border-bottom:2px solid #fff3;padding-bottom:15px}.dashboard-header h1{color:#f4eeee;font-size:2rem}.logout-button{background-color:initial;border:1px solid #f56758;border-radius:4px;color:#f56758;cursor:pointer;padding:8px 16px;transition:background-color .2s}.logout-button:hover{background-color:#f5675833}.quick-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-around;margin:30px 0}.quick-actions .action-button{background-color:#ffa640;border:none;border-radius:5px;box-shadow:0 4px 8px #0003;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:background-color .3s ease,transform .1s ease}.quick-actions .action-button:hover{background-color:#ff7c2a;transform:translateY(-2px)}.recent-games,.user-stats{margin:30px 0}.recent-games h2,.user-stats h2{color:#f4eeee;font-size:1.8rem;margin-bottom:15px;text-align:center}.game-list{background:#ffffffe6;border-radius:8px;box-shadow:0 2px 6px #0000001a;max-height:400px;overflow-y:auto;padding:15px}.game-item{align-items:center;background:#fffc;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:10px;padding:12px 15px;transition:background .2s ease}.game-item:hover{background:#fff}.game-info{color:#333;font-size:.9rem}.game-info span{margin-bottom:5px}.review-button{background-color:#ffa640;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 12px;transition:background .2s ease,transform .1s ease}.review-button:hover{background-color:#ff7c2a;transform:translateY(-1px)}.user-stats .stats-grid{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-around}.user-stats .stat-item{background:#fffc;border-radius:8px;box-shadow:0 4px 8px #0003;flex:1 1;margin:5px;min-width:150px;padding:15px 20px;text-align:center}.user-stats .stat-item .stat-value{color:#f4eeee;font-size:2rem;font-weight:700}.user-stats .stat-item .stat-label{color:#d9dcdf;font-size:1rem}@media (max-width:480px){.score-display{font-size:1.2rem;max-width:130px;padding:6px 4px}.timer-container{font-size:.8rem;gap:6px}.computer-timer,.player-timer{padding:6px}.timer-container{flex-wrap:nowrap}}@media (max-width:768px){html.landscape .app-header{min-height:auto;padding:3px 8px}html.landscape .logo{font-size:16px;height:25px;width:50px}html.landscape .auth-nav{gap:6px}html.landscape .auth-button,html.landscape .nav-link{font-size:12px;padding:4px 8px}}.chessboard-area{aspect-ratio:1/1;flex-shrink:0;height:min(85vh,85vw)!important;margin:0 auto;max-height:min(85vh,85vw)!important;max-width:min(85vh,85vw)!important;width:min(85vh,85vw)!important}@media (max-width:600px) and (orientation:portrait){.app-header{min-height:auto;padding:5px 8px}.logo{font-size:18px;height:30px;padding-left:35px;width:60px}.auth-nav{gap:8px}.auth-button,.nav-link{font-size:13px;padding:5px 10px}.content-wrapper,.main-content{height:calc(100vh - 50px);overflow:hidden;padding:0}.chessboard-area{height:min(70vh,95vw)!important;max-height:min(70vh,95vw)!important;max-width:min(70vh,95vw)!important;width:min(70vh,95vw)!important}}@media (max-width:600px) and (orientation:landscape){.app-header{left:0;min-height:auto;padding:3px 8px;position:fixed;right:0;top:0;transition:transform .3s ease,opacity .3s ease;z-index:1000}.app-header.auto-hide{opacity:0;pointer-events:none;transform:translateY(-100%)}footer.footer-hidden{bottom:0;transform:translateY(100%)}.header-hidden,footer.footer-hidden{left:0;opacity:0;pointer-events:none;position:fixed;right:0;transition:transform .3s ease,opacity .3s ease}.header-hidden{top:0;transform:translateY(-100%);z-index:999997}.logo{font-size:16px;height:25px;padding-left:30px;width:50px}.auth-nav{gap:6px}.auth-button,.nav-link{font-size:12px;padding:4px 8px}.content-wrapper,.main-content{height:calc(100vh - 40px);overflow:hidden;padding:0;transition:height .3s ease}body.header-hidden .content-wrapper,body.header-hidden .main-content{height:100vh;margin-top:0}.chessboard-area{height:min(80vh,50vw)!important;max-height:min(80vh,50vw)!important;max-width:min(80vh,50vw)!important;width:min(80vh,50vw)!important}.pre-game-setup{gap:8px;max-width:90vw;padding:10px 15px}.level-wheel-container{height:140px;width:140px}.level-wheel-center{font-size:.6em;height:45px;width:45px}.level-segment{font-size:.75em}.color-selection-switch{margin-top:8px}.start-button{font-size:1em;margin-top:12px;min-width:140px;padding:8px 12px}}@media (max-width:480px) and (orientation:landscape){.chessboard-area{height:min(80vh,45vw)!important;max-height:min(80vh,45vw)!important;max-width:min(80vh,45vw)!important;width:min(80vh,45vw)!important}}@media (min-width:601px) and (max-width:1024px) and (orientation:portrait){.chessboard-area{height:min(70vh,70vw)!important;max-height:min(70vh,70vw)!important;max-width:min(70vh,70vw)!important;width:min(70vh,70vw)!important}}@media (min-width:601px) and (max-width:1024px) and (orientation:landscape){.chessboard-area{height:min(75vh,55vw)!important;max-height:min(75vh,55vw)!important;max-width:min(75vh,55vw)!important;width:min(75vh,55vw)!important}}@media (min-width:1025px){.chessboard-area{height:min(80vh,60vw,800px)!important;max-height:min(80vh,60vw,800px)!important;max-width:min(80vh,60vw,800px)!important;width:min(80vh,60vw,800px)!important}}.chessboard-area>div{height:100%!important;width:100%!important}@media (max-width:600px){.timer-container{gap:4px}.computer-timer,.game-info,.player-timer{font-size:.75rem;padding:4px 6px}}.game-container{background:linear-gradient(135deg,#1e3c72,#2a5298);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:100vh;padding:1rem;width:100%}.game-header{flex:none;margin-bottom:1rem;text-align:center}.game-header h2{color:#fff;font-size:1.8rem;margin:0 0 .5rem}.game-status{align-items:center;display:flex;flex-direction:column;gap:.25rem}.connection-status{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.status-indicator{border-radius:4px;font-size:.9rem;font-weight:500;padding:.25rem .5rem}.status-indicator.connected{background-color:#4caf5033;border:1px solid #4caf50;color:#4caf50}.status-indicator.disconnected{background-color:#f4433633;border:1px solid #f44336;color:#f44336}.opponent-status{color:#90ee90;font-size:.8rem;font-weight:500}.turn-status{font-size:1.1rem;font-weight:600;margin-top:.25rem}.game-layout{align-items:stretch;display:flex;flex:1 1;gap:1rem}@media (orientation:portrait){.game-layout{flex-direction:column;gap:.5rem}}@media (orientation:landscape){.game-layout{flex-direction:row}}.board-section{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:1rem;justify-content:center}.player-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:8px;justify-content:space-between;max-width:400px;padding:.75rem;width:100%}.player-info.opponent{order:1}.player-info.current-player{order:3}.chessboard-wrapper{aspect-ratio:1/1;max-width:600px;order:2;width:min(85vh,90vw)}@media (orientation:portrait){.chessboard-wrapper{margin:0;padding:0}}.player-name{font-size:1rem}.game-controls{display:flex;flex-wrap:wrap;gap:.5rem}@media (orientation:portrait){.game-controls{margin-top:.5rem!important}}.new-game-button,.rematch-button,.resign-button,.resume-button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.resign-button{background-color:#f44336}.play-computer-layout{display:flex;height:100%;width:100%}.main-content-area{align-items:center;display:flex;flex-grow:1;justify-content:center}.sidebar{background-color:#0003;display:flex;flex-direction:column;gap:1rem;padding:1rem;width:300px}@media (max-width:768px){@media (orientation:portrait){.play-computer-layout{flex-direction:column!important;overflow-y:auto}.main-content-area{align-items:flex-start;flex-shrink:0;order:2!important;padding-bottom:.25rem;padding-top:.25rem;width:100%}.sidebar{flex-shrink:0;gap:.5rem;max-width:100%;order:1!important;padding:.5rem;width:100%}.chess-game-container{padding:.125rem}}@media (orientation:landscape){.play-computer-layout{flex-direction:row;gap:.5rem;height:100vh;overflow-y:auto;width:100vw}.sidebar{display:flex;flex-direction:column;flex-shrink:0;gap:.375rem;height:100vh;max-width:32vw;order:1;overflow-y:auto;padding:.375rem;width:280px}.sidebar>*{font-size:.85em;padding:.375rem}.main-content-area{align-items:center;display:flex;flex:1 1;height:100vh;justify-content:center;order:2;padding:.125rem}.chess-game-container{height:100%;padding:.0625rem;width:100%}.board-container,.chessboard-area{height:min(90vh,55vw)!important;width:min(90vh,55vw)!important}.chessboard-area{max-height:min(90vh,55vw)!important;max-width:min(90vh,55vw)!important}}.chess-game-container{padding:.125rem}}@media (max-width:480px){@media (orientation:portrait){.main-content-area{padding-bottom:.125rem;padding-top:.25rem}.chess-game-container{padding:.0625rem}.sidebar{order:1!important}.main-content-area{order:2!important}}@media (orientation:landscape){.sidebar{gap:.375rem;max-width:40vw;padding:.375rem;width:280px}}}.resign-button:hover{background-color:#d32f2f}.resume-button{background-color:#4caf50;color:#fff}.resume-button:hover{background-color:#45a049}.rematch-button{background-color:#ff9800;color:#fff}.rematch-button:hover{background-color:#f57c00}.new-game-button{background-color:#2196f3;color:#fff}.new-game-button:hover{background-color:#1976d2}.game-ended-controls{display:flex;flex-wrap:wrap;gap:.5rem}.game-sidebar{display:flex;flex:none;flex-direction:column;gap:1rem;width:300px}@media (orientation:portrait){.game-sidebar{order:1;width:100%}.board-section{flex:0 1 auto;gap:.5rem;justify-content:flex-start;order:2}}@media (orientation:landscape){.game-sidebar{flex-shrink:0;max-width:32vw;order:1;overflow-y:auto;width:280px}.board-section{flex:1 1;min-width:0;order:2}}.game-sidebar>.game-header{margin-bottom:.75rem;margin-top:0}.game-sidebar>.game-header h2{font-size:1.4rem;margin:0 0 .25rem}@media (orientation:landscape){.game-sidebar>.game-header{margin-bottom:.5rem}.game-sidebar>.game-header h2{font-size:1.2rem}}.error-message,.loading-message{align-items:center;display:flex;font-size:1.2rem;height:100vh;justify-content:center;text-align:center}.error-message{color:#f44336;flex-direction:column;gap:1rem}.back-button{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s ease}.back-button:hover{background-color:#1976d2}@media (max-width:768px){.game-container{padding:.5rem}.game-header h2{font-size:1.4rem}.chessboard-wrapper{width:min(85vh,95vw)}.game-sidebar{width:100%}.player-info{flex-direction:column;gap:.5rem;padding:.5rem;text-align:center}.game-controls{justify-content:center}.connection-status{flex-direction:column;gap:.5rem}}@media (orientation:landscape) and (max-width:900px){body.mobile-landscape .app-header.header-hidden{opacity:0!important;pointer-events:none!important;transform:translateY(-100%)!important}body.mobile-landscape footer.footer-hidden{opacity:0!important;pointer-events:none!important;transform:translateY(100%)!important}}.mobile-scroll-container{-webkit-overflow-scrolling:touch;height:100vh;overflow-y:auto;position:relative}@media (max-width:768px) and (orientation:portrait){.mobile-scroll-container{-webkit-overflow-scrolling:touch;height:100vh;min-height:-webkit-fill-available;min-height:100vh;overflow-y:auto}.mobile-scroll-container .flex{padding-bottom:2rem}}@media (max-width:768px) and (orientation:landscape){.mobile-scroll-container{-webkit-overflow-scrolling:touch;height:100vh;overflow-y:auto}}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-105:hover,.hover\:scale-110:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1}.hover\:scale-\[1\.02\]:hover{--tw-scale-x:1.02;--tw-scale-y:1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-200:hover{--tw-border-opacity:1;border-color:#bfdbfe;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.hover\:border-blue-300:hover{--tw-border-opacity:1;border-color:#93c5fd;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.hover\:border-blue-500:hover{--tw-border-opacity:1;border-color:#3b82f6;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.hover\:bg-accent-600:hover{--tw-bg-opacity:1;background-color:#d97706;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.hover\:bg-blue-400:hover{--tw-bg-opacity:1;background-color:#60a5fa;background-color:rgb(96 165 250/var(--tw-bg-opacity,1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:#eff6ff;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:#1d4ed8;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:#047857;background-color:rgb(4 120 87/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:#d1d5db;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.hover\:bg-gray-400:hover{--tw-bg-opacity:1;background-color:#9ca3af;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.hover\:bg-gray-600:hover{--tw-bg-opacity:1;background-color:#4b5563;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:#374151;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:#16a34a;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.hover\:bg-green-700:hover{--tw-bg-opacity:1;background-color:#15803d;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:bg-orange-600:hover{--tw-bg-opacity:1;background-color:#ea580c;background-color:rgb(234 88 12/var(--tw-bg-opacity,1))}.hover\:bg-primary-600:hover{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-purple-700:hover{--tw-bg-opacity:1;background-color:#7e22ce;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:#dc2626;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:#b91c1c;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.hover\:bg-secondary-600:hover{--tw-bg-opacity:1;background-color:#059669;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.hover\:bg-sky-700:hover{--tw-bg-opacity:1;background-color:#0369a1;background-color:rgb(3 105 161/var(--tw-bg-opacity,1))}.hover\:bg-sky-700\/50:hover{background-color:#0369a180}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-white\/20:hover{background-color:#fff3}.hover\:bg-yellow-500:hover{--tw-bg-opacity:1;background-color:#eab308;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.hover\:bg-yellow-600:hover{--tw-bg-opacity:1;background-color:#ca8a04;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.hover\:bg-yellow-700:hover{--tw-bg-opacity:1;background-color:#a16207;background-color:rgb(161 98 7/var(--tw-bg-opacity,1))}.hover\:from-green-600:hover{--tw-gradient-from:#16a34a var(--tw-gradient-from-position);--tw-gradient-to:#16a34a00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-red-600:hover{--tw-gradient-from:#dc2626 var(--tw-gradient-from-position);--tw-gradient-to:#dc262600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-emerald-700:hover{--tw-gradient-to:#047857 var(--tw-gradient-to-position)}.hover\:to-red-700:hover{--tw-gradient-to:#b91c1c var(--tw-gradient-to-position)}.hover\:text-blue-800:hover{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}.hover\:text-gray-200:hover{--tw-text-opacity:1;color:#e5e7eb;color:rgb(229 231 235/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-gray-900:hover{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.hover\:text-green-700:hover{--tw-text-opacity:1;color:#15803d;color:rgb(21 128 61/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:text-yellow-300:hover{--tw-text-opacity:1;color:#fde047;color:rgb(253 224 71/var(--tw-text-opacity,1))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:shadow-2xl:hover{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.hover\:shadow-2xl:hover,.hover\:shadow-lg:hover{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.hover\:shadow-md:hover,.hover\:shadow-xl:hover{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.hover\:shadow-accent\/50:hover{--tw-shadow-color:#f59e0b80;--tw-shadow:var(--tw-shadow-colored)}.hover\:shadow-primary-500\/50:hover{--tw-shadow-color:#3b82f680;--tw-shadow:var(--tw-shadow-colored)}.hover\:shadow-red-500\/50:hover{--tw-shadow-color:#ef444480;--tw-shadow:var(--tw-shadow-colored)}.focus\:border-blue-500:focus,.focus\:border-primary-500:focus{--tw-border-opacity:1;border-color:#3b82f6;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-gray-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(107 114 128/var(--tw-ring-opacity,1))}.focus\:ring-primary-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-yellow-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(234 179 8/var(--tw-ring-opacity,1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.active\:scale-100:active{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-70:disabled{opacity:.7}.disabled\:hover\:scale-100:hover:disabled{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:left-\[100\%\]{left:100%}@media (prefers-reduced-motion:reduce){.motion-reduce\:hidden{display:none}}@media (min-width:640px){.sm\:mx-0{margin-left:0;margin-right:0}.sm\:mb-16{margin-bottom:4rem}.sm\:mb-3{margin-bottom:.75rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:mb-8{margin-bottom:2rem}.sm\:mr-3{margin-right:.75rem}.sm\:mt-0{margin-top:0}.sm\:mt-2{margin-top:.5rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:hidden{display:none}.sm\:h-14{height:3.5rem}.sm\:h-6{height:1.5rem}.sm\:w-14{width:3.5rem}.sm\:w-auto{width:auto}.sm\:min-w-\[160px\]{min-width:160px}.sm\:min-w-\[300px\]{min-width:300px}.sm\:max-w-\[220px\]{max-width:220px}.sm\:max-w-\[380px\]{max-width:380px}.sm\:max-w-md{max-width:28rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-3{gap:.75rem}.sm\:gap-6{gap:1.5rem}.sm\:gap-8{gap:2rem}.sm\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.sm\:space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.sm\:p-2{padding:.5rem}.sm\:p-4{padding:1rem}.sm\:p-8{padding:2rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-12{padding-bottom:3rem;padding-top:3rem}.sm\:py-16{padding-bottom:4rem;padding-top:4rem}.sm\:py-2{padding-bottom:.5rem;padding-top:.5rem}.sm\:py-20{padding-bottom:5rem;padding-top:5rem}.sm\:py-4{padding-bottom:1rem;padding-top:1rem}.sm\:pt-24{padding-top:6rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:flex{display:flex}.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\:justify-center{justify-content:center}.md\:gap-4{gap:1rem}.md\:py-6{padding-bottom:1.5rem}.md\:pt-6,.md\:py-6{padding-top:1.5rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:mx-auto{margin-left:auto;margin-right:auto}.lg\:mb-0{margin-bottom:0}.lg\:mb-12{margin-bottom:3rem}.lg\:mb-3{margin-bottom:.75rem}.lg\:mb-4{margin-bottom:1rem}.lg\:mb-6{margin-bottom:1.5rem}.lg\:max-h-full{max-height:100%}.lg\:w-1\/3{width:33.333333%}.lg\:min-w-\[180px\]{min-width:180px}.lg\:min-w-\[320px\]{min-width:320px}.lg\:max-w-\[240px\]{max-width:240px}.lg\:max-w-\[400px\]{max-width:400px}.lg\:max-w-\[600px\]{max-width:600px}.lg\:max-w-md{max-width:28rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.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\:flex-row{flex-direction:row}.lg\:gap-10{gap:2.5rem}.lg\:gap-2{gap:.5rem}.lg\:gap-4{gap:1rem}.lg\:gap-6{gap:1.5rem}.lg\:gap-8{gap:2rem}.lg\:space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.lg\:p-3{padding:.75rem}.lg\:p-4{padding:1rem}.lg\:p-6{padding:1.5rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-16{padding-bottom:4rem;padding-top:4rem}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-base{font-size:1rem;line-height:1.5rem}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}.lg\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1280px){.xl\:w-1\/4{width:25%}.xl\:p-8{padding:2rem}.xl\:px-12{padding-left:3rem;padding-right:3rem}.xl\:text-2xl{font-size:1.5rem;line-height:2rem}.xl\:text-5xl{font-size:3rem;line-height:1}.xl\:text-6xl{font-size:3.75rem;line-height:1}}.chessboard-container{background:#f0d9b5;border-radius:8px;overflow:hidden;position:relative}.css-1d6rdtq{border-radius:4px!important;display:grid!important;grid-template-columns:repeat(8,1fr)!important;grid-template-rows:repeat(8,1fr)!important;height:100%!important;overflow:hidden!important;position:relative!important;width:100%!important}.css-1d6rdtq>div{align-items:center!important;cursor:pointer!important;display:flex!important;justify-content:center!important;position:relative!important;transition:all .2s ease!important}.css-1d6rdtq>div:nth-child(2n):nth-child(odd),.css-1d6rdtq>div:nth-child(odd):nth-child(2n){background-color:#f0d9b5!important;color:#b58863!important}.css-1d6rdtq>div:nth-child(2n):nth-child(2n),.css-1d6rdtq>div:nth-child(odd):nth-child(odd){background-color:#b58863!important;color:#f0d9b5!important}.css-1d6rdtq>div[style*="background: #000000"],.css-1d6rdtq>div[style*="background: rgb(0, 0, 0)"],.css-1d6rdtq>div[style*="background:#000"]{background-color:#f0d9b5!important}.css-1d6rdtq>div .piece{font-size:2.5em!important;line-height:1!important;pointer-events:none!important;position:relative!important;-webkit-user-select:none!important;user-select:none!important;z-index:2!important}.square-highlight{height:100%!important;left:0!important;pointer-events:none!important;position:absolute!important;top:0!important;width:100%!important;z-index:1!important}.square-highlight.dot{background:radial-gradient(circle,#0000004d 20%,#0000 0)!important;border-radius:50%!important}.square-highlight.circle{background:radial-gradient(circle,#0000004d 25%,#0000 0)!important;border-radius:50%!important}.square-highlight.selected{background-color:#ff06!important}.square-highlight.check{background-color:#f006!important}.square-highlight.right-click{background-color:#00f6!important}.arrow-overlay{height:100%!important;left:0!important;pointer-events:none!important;position:absolute!important;top:0!important;width:100%!important;z-index:3!important}.arrow-line{background-color:#ff0000b3!important;border-radius:2px!important;height:4px!important}.arrow-head,.arrow-line{pointer-events:none!important;position:absolute!important;transform-origin:left center!important;z-index:3!important}.arrow-head{border-color:#0000 #ff0000b3 #0000 #0000!important;border-style:solid!important;border-width:8px 8px 8px 0!important;height:0!important;width:0!important}.lesson-highlight-move{background-color:#00ff004d!important;box-shadow:inset 0 0 10px #00ff0080!important}.lesson-highlight-target{background-color:#ffa5004d!important;box-shadow:inset 0 0 10px #ffa50080!important}.css-1d6rdtq>div:hover{filter:brightness(1.1)!important}.css-1d6rdtq>div.dragging{opacity:.5!important}.css-1d6rdtq>div.drag-target{background-color:#ff03!important}.coordinate-label{color:#0009!important;font-size:10px!important;pointer-events:none!important;position:absolute!important;z-index:1!important}.coordinate-label.file{bottom:2px!important;right:2px!important}.coordinate-label.rank{left:2px!important;top:2px!important}@media (prefers-color-scheme:dark){.css-1d6rdtq>div:nth-child(2n):nth-child(odd),.css-1d6rdtq>div:nth-child(odd):nth-child(2n){background-color:#e6ccb2!important;color:#8b6914!important}.css-1d6rdtq>div:nth-child(2n):nth-child(2n),.css-1d6rdtq>div:nth-child(odd):nth-child(odd){background-color:#8b6914!important;color:#e6ccb2!important}.coordinate-label{color:#fff9!important}}@keyframes drawArrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.arrow-line{animation:drawArrow .3s ease-out!important}@keyframes pulseTarget{0%,to{box-shadow:inset 0 0 10px #ffa50080!important}50%{box-shadow:inset 0 0 20px #ffa500cc!important}}.lesson-highlight-target{animation:pulseTarget 2s infinite!important}@media (max-width:768px){.css-1d6rdtq>div .piece{font-size:2em!important}.coordinate-label{font-size:8px!important}.arrow-line{height:3px!important}.arrow-head{border-width:6px 6px 6px 0!important}}.game-end-card-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:1rem}.game-end-card-container,.player-card-score-circle{align-items:center;display:flex;justify-content:center}.player-card-score-circle{background:linear-gradient(135deg,#374151,#111827);border-radius:50%;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#fff;flex-shrink:0;font-size:.875rem;font-weight:700;height:3.5rem;max-width:3.5rem;min-width:3.5rem;overflow:hidden;padding:.25rem;text-overflow:ellipsis;white-space:nowrap;width:3.5rem}.card-branding-header{left:1rem;position:absolute;top:1rem;z-index:10}.card-logo{height:40px;opacity:.8;transition:opacity .3s ease;width:auto}.card-logo:hover{opacity:1}.card-branding-footer{margin-top:2rem}.result-icon{margin-bottom:1rem;text-shadow:2px 2px 4px #0000001a}.result-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;margin-bottom:2rem;text-shadow:none}.result-details{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:1rem;box-shadow:0 8px 32px #0000001a;padding:2rem}.result-text{font-size:1.125rem;line-height:1.75;margin-bottom:1.5rem}.vs-separator{-webkit-text-fill-color:#0000;animation:pulse 2s infinite;background:linear-gradient(45deg,#f59e0b,#ef4444,#8b5cf6);-webkit-background-clip:text;background-clip:text;text-shadow:none}.game-stats{margin:1.5rem 0}.stat-label{display:block;margin-bottom:.25rem}.stat-value{font-size:1.25rem}.rating-update-display{background:#fffc;border:1px solid #e5e7ebcc;border-radius:.75rem;margin-top:1.5rem;padding:1rem}.rating-label{color:#374151}.call-to-action{background:#fef08a99!important;border:2px dashed #f59e0b!important;transition:all .3s ease}.call-to-action:hover{box-shadow:0 12px 24px #f59e0b33;transform:translateY(-2px)}@media (max-width:768px){.game-end-card{margin:0 auto;max-width:95vw!important}.result-title{font-size:2.5rem}.result-icon{font-size:4rem}.card-logo{height:32px}.result-details{padding:1.5rem}}@media (max-width:480px){.game-end-card{border-radius:12px!important;max-height:calc(100vh - 180px)!important;max-width:95vw!important;overflow-y:visible!important}.game-end-card,.game-end-card>div:first-child{padding:8px!important}.result-title{font-size:1.25rem!important;margin-bottom:.5rem!important}.game-end-card .text-5xl,.result-icon{font-size:2rem!important}.game-end-card .md\:text-3xl,.game-end-card .text-2xl{font-size:1.25rem!important;margin-bottom:.5rem!important}.game-end-card .text-3xl{font-size:1.25rem!important}.game-end-card .text-xl{font-size:1rem!important}.game-end-card .text-lg{font-size:.95rem!important}.game-end-card .md\:text-base,.game-end-card .text-sm{font-size:.8rem!important}.game-end-card .text-xs{font-size:.7rem!important}.game-end-card .p-4{padding:.5rem!important}.game-end-card .p-3{padding:.4rem!important}.game-end-card .p-2{padding:.35rem!important}.game-end-card .px-6{padding-left:.75rem!important;padding-right:.75rem!important}.game-end-card .px-4{padding-left:.5rem!important;padding-right:.5rem!important}.game-end-card .py-2{padding-bottom:.35rem!important;padding-top:.35rem!important}.game-end-card .py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.game-end-card .mb-4{margin-bottom:.5rem!important}.game-end-card .mb-3{margin-bottom:.4rem!important}.game-end-card .mb-2{margin-bottom:.3rem!important}.game-end-card .mb-1{margin-bottom:.2rem!important}.game-end-card .mt-0\.5,.game-end-card .mt-1,.game-end-card .mt-2{margin-top:.2rem!important}.game-end-card .gap-2{gap:.25rem!important}.game-end-card .space-y-2>*+*{margin-top:.35rem!important}.game-end-card .h-12,.game-end-card .w-12{height:2.5rem!important;width:2.5rem!important}.game-end-card .h-5,.game-end-card .w-5{height:.9rem!important;width:.9rem!important}.game-end-card .grid-cols-3{gap:.3rem!important}.game-end-card [style*="width: 120px"]{height:22px!important;width:80px!important}.card-branding-header{left:.5rem;top:.5rem}.result-details{padding:.5rem!important}.game-end-card .h-10,.game-end-card .w-10{height:2rem!important;width:2rem!important}.game-end-card .border-2{border-width:1px!important}.game-end-card{line-height:1.3!important}.game-end-card .rounded-3xl{border-radius:12px!important}.game-end-card .rounded-xl{border-radius:8px!important}.game-end-card .rounded-full{border-radius:9999px!important}}.share-mode .result-title{color:#764ba2!important}.share-mode .result-title,.share-mode .vs-separator{-webkit-text-fill-color:initial!important;background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important}.share-mode .vs-separator{color:#8b5cf6!important}.share-mode .animate-bounce{animation:none!important}@media (max-width:480px){.game-end-card:after{background:linear-gradient(0deg,#fffffff2,#0000);bottom:0;content:"";height:40px;left:0;pointer-events:none;position:-webkit-sticky;position:sticky;right:0;z-index:5}.share-mode:after{display:none!important}}:root{--color-win-bg:#2ecc71d9;--color-loss-bg:#e74c3cd9;--color-win-accent:#27ae60;--color-loss-accent:#c0392b;--color-card-bg:#fff;--color-text-dark:#34495e;--color-text-medium:#7f8c8d;--color-text-light:#fff;--color-primary:#16213e;--color-secondary:#2980b9;--color-tertiary:#8e44ad;--border-radius-card:16px;--border-radius-btn:8px;--box-shadow-card:0 12px 35px #00000026;--box-shadow-btn-hover:0 6px 15px #00000026;--font-family-sans:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif}.completion-overlay{align-items:center;background-color:#0006;display:flex;inset:0;justify-content:center;opacity:0;position:fixed;transition:opacity .4s ease-in-out,background-color .4s ease-in-out;z-index:1000}.completion-overlay.win{background-color:#2ecc71d9;background-color:var(--color-win-bg)}.completion-overlay.loss{background-color:#e74c3cd9;background-color:var(--color-loss-bg)}.completion-overlay.visible{opacity:1}.completion-card{background:#fff;background:var(--color-card-bg);border-radius:16px;border-radius:var(--border-radius-card);box-shadow:0 12px 35px #00000026;box-shadow:var(--box-shadow-card);max-width:480px;opacity:0;padding:30px 40px;position:relative;text-align:center;transform:scale(.9) translateY(20px);transition:transform .4s cubic-bezier(.25,.8,.25,1),opacity .4s ease-out;width:90%}.completion-card.visible{opacity:1;transform:scale(1) translateY(0)}.result-icon{animation:bounce 1.2s ease-in-out infinite;font-size:4.5rem;line-height:1;margin-bottom:15px}.result-icon.win{color:#27ae60;color:var(--color-win-accent)}.result-icon.loss{color:#c0392b;color:var(--color-loss-accent)}.result-title{color:#34495e;color:var(--color-text-dark);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans);font-size:2.2rem;font-weight:600;margin:0 0 15px}.result-details{border-bottom:1px solid #eee;border-top:1px solid #eee;margin:20px 0;padding:20px 0}.result-text{color:#7f8c8d;color:var(--color-text-medium);font-size:1.1rem;line-height:1.5;margin-bottom:15px}.result-text,.score-display{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans)}.score-display{color:#34495e;color:var(--color-text-dark);font-size:1.8rem;font-weight:700;margin-top:10px}.score-display .positive{color:#27ae60;color:var(--color-win-accent)}.score-display .negative{color:#c0392b;color:var(--color-loss-accent)}.move-count-display{color:#7f8c8d;color:var(--color-text-medium);font-size:1rem;margin-top:10px}.move-count-display,.multiplayer-score-display{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans)}.multiplayer-score-display{background-color:#00000008;border-radius:8px;display:flex;flex-direction:column;gap:10px;margin:15px 0;padding:12px}.player-score-row{align-items:center;background-color:#ffffffb3;border:1px solid #0000000d;border-radius:6px;display:flex;justify-content:space-between;padding:8px 10px;transition:all .2s ease}.player-score-row:hover{background-color:#fffffff2;box-shadow:0 2px 6px #00000014;transform:translateY(-1px)}.player-score-row .player-name{color:#34495e;color:var(--color-text-dark);flex:1 1;font-size:1rem;font-weight:600;text-align:left}.player-score-row .player-rating{color:#7f8c8d;color:var(--color-text-medium);font-size:.85rem;margin:0 10px}.player-score-row .player-score{font-size:1.1rem;font-weight:700}.player-score-row .player-score.positive{color:#27ae60;color:var(--color-win-accent)}.rating-update-display{background-color:#00000008;border-radius:8px;margin:15px 0;padding:12px}.rating-loading{color:#7f8c8d;color:var(--color-text-medium);font-size:.95rem;font-style:italic}.rating-error,.rating-loading{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans);margin:0}.rating-error{color:#c0392b;color:var(--color-loss-accent);font-size:.9rem}.rating-change-container{align-items:center;display:flex;flex-direction:column;gap:8px}.rating-label{color:#7f8c8d;color:var(--color-text-medium);font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.rating-label,.rating-values{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans)}.rating-values{align-items:center;display:flex;font-size:1.3rem;font-weight:700;gap:8px}.old-rating{color:#7f8c8d;color:var(--color-text-medium)}.rating-change{font-size:1.1rem;font-weight:600}.rating-change.positive{color:#27ae60;color:var(--color-win-accent)}.rating-change.negative{color:#c0392b;color:var(--color-loss-accent)}.arrow{color:#7f8c8d;color:var(--color-text-medium);font-weight:400}.new-rating{color:#34495e;color:var(--color-text-dark);font-size:1.5rem}.completion-actions{margin-bottom:20px;margin-top:25px}.multiplayer-actions{align-items:center;display:flex;flex-direction:column;gap:12px;width:100%}.multiplayer-actions .btn{max-width:300px;pointer-events:auto;width:100%;z-index:10}.login-prompt{margin-top:15px}.login-prompt p{color:#7f8c8d;color:var(--color-text-medium);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans);font-size:.95rem;margin-bottom:15px}.completion-additional-buttons,.login-buttons{display:flex;gap:15px;justify-content:center}.completion-additional-buttons{flex-wrap:wrap;margin-top:20px}.btn{border-radius:var(--border-radius-btn);display:inline-block;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans);font-size:1rem;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.btn:hover{box-shadow:0 6px 15px #00000026;box-shadow:var(--box-shadow-btn-hover);transform:translateY(-2px)}.btn:active{box-shadow:none;transform:translateY(0)}.btn-primary{background-color:#16213e;background-color:var(--color-primary);color:var(--color-text-light)}.btn-primary:hover{background-color:#1a2b4e}.btn-secondary{background-color:#2980b9;background-color:var(--color-secondary);color:var(--color-text-light)}.btn-secondary:hover{background-color:#3498db}.btn-tertiary{background-color:#8e44ad;background-color:var(--color-tertiary);color:#fff;color:var(--color-text-light)}.btn-tertiary:hover{background-color:#9b59b6}.btn-continue{max-width:300px;width:80%}.close-button{background:none;border:none;color:#7f8c8d;color:var(--color-text-medium);cursor:pointer;font-size:1.8rem;line-height:1;padding:5px;position:absolute;right:15px;top:10px;transition:color .2s ease}.close-button:hover{color:#34495e;color:var(--color-text-dark)}.color-selection-section{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:8px;border-radius:var(--border-radius-btn);box-shadow:0 4px 12px #00000014;margin-bottom:15px;padding:15px;width:100%}.color-selection-label{color:#34495e;color:var(--color-text-dark);display:block;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans);font-size:1.1rem;font-weight:600;margin-bottom:12px;text-align:center}.color-selection-options{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:15px}.color-option{align-items:center;background-color:#ffffffb3;border:2px solid #0000;border-radius:8px;border-radius:var(--border-radius-btn);cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:10px 15px;transition:all .3s ease}.color-option:hover{background-color:#fffffff2;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.color-option.selected{background-color:#16213e1a;border-color:#16213e;border-color:var(--color-primary);box-shadow:0 4px 12px #16213e33}.color-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.color-box{font-size:2rem;line-height:1}.color-box.white{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.color-box.black{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.color-box.random{animation:rotate-dice 2s ease-in-out infinite}.color-option span:last-child{color:#34495e;color:var(--color-text-dark);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family-sans);font-size:.9rem;font-weight:500}.challenge-btn{background:linear-gradient(135deg,#16213e,#2c3e6b);background:linear-gradient(135deg,var(--color-primary) 0,#2c3e6b 100%);box-shadow:0 4px 12px #16213e4d;font-size:1.05rem;margin:0 auto;max-width:280px;padding:12px 24px;width:100%}.challenge-btn:hover{background:linear-gradient(135deg,#1a2b4e,#16213e);background:linear-gradient(135deg,#1a2b4e 0,var(--color-primary) 100%);box-shadow:0 6px 16px #16213e66;transform:translateY(-3px)}@keyframes rotate-dice{0%,to{transform:rotate(0deg)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}@media (max-width:500px){.completion-card{max-width:95%;padding:25px 20px}.result-title{font-size:1.8rem}.result-icon{font-size:3.5rem}.score-display{font-size:1.5rem}.btn{font-size:.9rem;padding:8px 16px}.color-selection-options,.completion-additional-buttons,.login-buttons{gap:10px}.color-option{padding:8px 12px}.color-box{font-size:1.6rem}.challenge-btn{font-size:1rem;padding:10px 20px}.multiplayer-score-display{gap:4px;margin:8px 0;padding:6px}.player-score-row{align-items:center;flex-direction:row;gap:4px;padding:4px 6px}.player-score-row .player-name{flex:1 1;font-size:.8rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-score-row .player-rating{font-size:.7rem;margin:0 3px;opacity:.8;white-space:nowrap}.player-score-row .player-score{font-size:.85rem;font-weight:600;white-space:nowrap}}.play-shell-container{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;display:flex;flex-direction:column;min-height:100vh;width:100%}.play-shell-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-bottom:1px solid #ffffff1a;flex-shrink:0;padding:1rem 2rem}.play-shell-setup{align-items:center;display:flex;flex:1 1;justify-content:center;max-width:100vw;overflow-x:hidden;padding:2rem;width:100%}@media (max-width:768px){.play-shell-setup{min-height:100vh;padding:1rem}.play-shell-setup .pre-game-setup{border-radius:1rem;margin:0 auto;max-height:90vh;max-width:95vw;overflow-y:auto;padding:.5rem;width:100%}.play-shell-setup .pre-game-setup h2{font-size:1.5rem;margin-bottom:1.5rem}.play-shell-setup .pre-game-setup .color-selection,.play-shell-setup .pre-game-setup .difficulty-selection{margin-bottom:.5rem}.play-shell-setup .pre-game-setup .start-button.large{font-size:1.1rem;margin:1rem 0;padding:.21rem 2rem}.play-shell-setup .pre-game-setup .countdown-in-setup{font-size:1.2rem;margin:1rem 0}}.play-shell-layout{grid-gap:2rem;display:grid;flex:1 1;gap:2rem;grid-template-columns:minmax(400px,2fr) minmax(300px,1fr);grid-template-rows:auto 1fr;margin:0 auto;max-width:1600px;padding:2rem;width:100%}.play-shell-timer-score{grid-column:1;grid-row:1;margin-bottom:1rem}.play-shell-board{align-items:center;grid-column:1;grid-row:2;justify-content:center;min-height:500px}.play-shell-board,.play-shell-sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;display:flex;flex-direction:column;padding:1.5rem}.play-shell-sidebar{gap:1rem;grid-column:2;grid-row:1/3;max-height:calc(100vh - 8rem);overflow-y:auto}@media (max-width:1024px){.play-shell-layout{gap:1rem;grid-template-columns:1fr;grid-template-rows:auto auto auto;padding:1rem}.play-shell-timer-score{grid-column:1;grid-row:1}.play-shell-board{grid-column:1;grid-row:2}.play-shell-sidebar{grid-column:1;grid-row:3;max-height:none}}@media (max-width:768px){.play-shell-header{padding:.75rem 1rem}.play-shell-board{min-height:300px;padding:1rem}.play-shell-sidebar{padding:1rem}.play-shell-layout{padding:.5rem}}@media (max-width:480px){.play-shell-setup{padding:.5rem}.play-shell-setup .pre-game-setup{font-size:.9rem;max-height:95vh;max-width:98vw;padding:1rem;width:100%}.play-shell-setup .pre-game-setup h2{font-size:1.3rem;margin-bottom:1rem}.play-shell-setup .pre-game-setup .color-selection,.play-shell-setup .pre-game-setup .difficulty-selection{margin-bottom:.5rem}.play-shell-setup .pre-game-setup .start-button.large{font-size:1rem;margin:.2rem 0;max-width:280px;padding:.2rem .5rem;width:100%}.play-shell-setup .pre-game-setup .countdown-in-setup{font-size:1.1rem;margin:.8rem 0}.play-shell-setup .pre-game-setup canvas{height:auto!important;max-width:100%!important}body.mobile-landscape .play-shell-setup .pre-game-setup .difficulty-selection{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:120px}body.mobile-landscape .play-shell-setup .pre-game-setup .difficulty-selection canvas{height:105px!important;max-height:105px!important;max-width:140px!important;width:140px!important}body.mobile-landscape .play-shell-setup .pre-game-setup .color-selection{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;min-height:120px}body.mobile-landscape .play-shell-setup .pre-game-setup .start-button.large{flex:0 0 auto;margin-top:1rem}}.play-shell-board,.play-shell-setup,.play-shell-sidebar{transition:opacity .3s ease,transform .3s ease}@media (orientation:landscape) and (max-width:900px){body.mobile-landscape .play-shell-layout{grid-gap:.4rem;display:grid;gap:.4rem;grid-template-columns:minmax(140px,30vw) 1fr;height:100vh;overflow:hidden;padding:.4rem;width:100vw}body.mobile-landscape .play-shell-sidebar{display:flex;flex-direction:column;gap:.5rem;justify-content:flex-start;max-height:100vh;order:1;overflow-y:auto;padding:.5rem}body.mobile-landscape .play-shell-board{align-items:center;background:#0000;border:none;border-radius:0;display:flex;justify-content:center;margin:0;min-height:auto;order:2;padding:0}body.mobile-landscape .board-container{height:min(95vh,65vw);width:min(95vh,65vw)}body.mobile-landscape .play-shell-setup{align-items:center;display:flex;height:100vh;justify-content:center;overflow:hidden;padding:.5rem;width:100vw}body.mobile-landscape .pre-game-setup{display:flex;flex-direction:column;justify-content:center;max-height:95vh;max-width:95vw;min-height:85vh;overflow-y:auto;padding:1rem;text-align:center;width:95vw}body.mobile-landscape .pre-game-setup .start-button.large{font-size:1.1rem;margin:.25rem;padding:.15rem .5rem}body.mobile-landscape .pre-game-setup h2{font-size:1.5rem;margin-bottom:.25rem}body.mobile-landscape .pre-game-setup .color-selection,body.mobile-landscape .pre-game-setup .difficulty-selection{margin-bottom:.5rem}body.mobile-landscape .play-shell-sidebar-timer-score .timer-score-display{font-size:12px!important;margin-bottom:0!important;width:100%!important}body.mobile-landscape .play-shell-sidebar-timer-score .timer-score-display>div:first-child,body.mobile-landscape .play-shell-sidebar-timer-score .timer-score-display>div:last-child{flex-direction:column!important;gap:6px!important;margin-bottom:6px!important}body.mobile-landscape .play-shell-sidebar-timer-score .timer-score-display>div>div{font-size:11px!important;min-width:0!important;min-width:auto!important;padding:4px 6px!important;width:100%!important}body.mobile-landscape .play-shell-sidebar-timer-score .timer-score-display span{font-size:11px!important}body.mobile-landscape .play-shell-sidebar-timer-score .timer-score-display .monospace{font-size:10px!important}.play-shell-sidebar-timer-score{display:none}}.play-shell-loading{align-items:center;color:#ffffffb3;display:flex;font-size:1.25rem;justify-content:center;min-height:400px}@media (orientation:landscape) and (max-width:900px){body.mobile-landscape .play-shell-layout{grid-gap:.3rem!important;display:grid!important;gap:.3rem!important;grid-template-columns:1fr 28vw!important;grid-template-rows:1fr!important;height:100vh!important;overflow:hidden!important;padding:.3rem!important;width:100vw!important}body.mobile-landscape .play-shell-timer-score{display:none!important}body.mobile-landscape .play-shell-board{align-items:center!important;background:#0000!important;border:none!important;display:flex!important;grid-column:1!important;grid-row:1!important;justify-content:center!important;order:1!important;padding:0!important}body.mobile-landscape .play-shell-sidebar{grid-column:2!important;grid-row:1!important;max-width:280px!important;order:2!important;overflow-y:auto!important;padding:.5rem!important;width:28vw!important}body.mobile-landscape .play-shell-sidebar-timer-score{display:block!important;margin-bottom:1rem!important;order:-1!important}body.mobile-landscape .board-container{height:min(95vh,75vw)!important;width:min(95vh,75vw)!important}body.mobile-landscape .play-shell-setup{align-items:center!important;display:flex!important;height:100vh!important;justify-content:center!important;width:100vw!important}}.championship-banner{align-items:center;animation:fadeIn .5s ease-in;background:linear-gradient(135deg,#667eea,#764ba2);border:1px solid #667eea66;border-radius:3px;box-shadow:0 1px 4px #667eea4d;box-sizing:border-box;color:#fff;display:flex;gap:8px;height:auto;margin:.25rem 0;max-width:100%;min-height:32px;overflow:hidden;padding:1px 4px;width:100%}.championship-badge{flex-shrink:0;font-size:1rem;line-height:1}.championship-info{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0;overflow:hidden}.championship-name{flex-shrink:1;font-size:.85rem;line-height:1.1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.championship-details{flex-shrink:0;font-size:.75rem;line-height:1.1;opacity:.9;white-space:nowrap}.game-header .game-status,.game-header .time-control-display{display:inline-block;margin:.5rem 0;vertical-align:top}.game-header .time-control-display{box-sizing:border-box;color:#666;font-size:.9rem;padding-right:1rem;width:50%}.game-header .game-status{box-sizing:border-box;font-size:.9rem;padding-left:1rem;width:50%}.game-header.championship-mode{display:flex;flex-direction:column;max-width:100%;overflow:hidden;width:100%}.game-header.championship-mode h2{display:none}.game-header.championship-mode .championship-banner{margin-bottom:.25rem;margin-top:0;order:1}.game-header.championship-mode .time-control-display{display:inline-block;order:2;width:50%}.game-header.championship-mode .game-status{display:inline-block;order:3;width:50%}@media screen and (max-width:768px) and (orientation:portrait){.game-container .app-footer,.game-container .footer,.game-container footer,.play-shell-container .app-footer,.play-shell-container .footer,.play-shell-container footer{display:none!important;height:0!important;overflow:hidden!important;visibility:hidden!important}.game-container,.play-shell-container{margin-bottom:0!important;padding-bottom:20px!important}.game-header .championship-banner{gap:6px!important;height:auto!important;margin:.15rem 0!important;max-width:100%!important;min-height:28px!important;padding:2px 6px!important;width:100%!important}.game-header .championship-badge{font-size:.9rem!important;line-height:1!important}.game-header .championship-info{gap:6px!important}.game-header .championship-name{font-size:.8rem!important;font-weight:600!important;line-height:1.1!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.game-header .championship-details{font-size:.7rem!important;line-height:1.1!important;opacity:.9!important}.game-header.championship-mode h2{display:none!important}.game-header .game-status,.game-header .time-control-display{display:inline-block!important;margin:0!important;vertical-align:top!important}.game-header .time-control-display{font-size:12px!important;padding-right:8px!important;width:50%!important}.game-header .game-status{font-size:12px!important;padding-left:8px!important;width:50%!important}.game-header .turn-status{font-size:11px!important;line-height:1.2!important}.game-controls{margin-bottom:20px!important;padding-bottom:30px!important;position:relative!important;z-index:10!important}.game-controls button{font-size:14px!important;margin:4px!important;padding:8px 16px!important}}@media screen and (max-width:812px) and (orientation:landscape){body.mobile-landscape .app-footer,body.mobile-landscape .app-header,body.mobile-landscape .footer,body.mobile-landscape .header,body.mobile-landscape footer,body.mobile-landscape header,body.mobile-landscape nav,html.mobile-landscape .app-footer,html.mobile-landscape .app-header,html.mobile-landscape .footer,html.mobile-landscape .header,html.mobile-landscape footer,html.mobile-landscape header,html.mobile-landscape nav{display:none!important;height:0!important;overflow:hidden!important;visibility:hidden!important}body.mobile-landscape #root,body.mobile-landscape .app-container,html.mobile-landscape #root,html.mobile-landscape .app-container{height:100vh!important;margin:0!important;overflow:hidden!important;padding:0!important}body.mobile-landscape .play-shell-container,html.mobile-landscape .play-shell-container{height:100vh!important;margin:0!important;overflow:hidden!important;padding:0!important;width:100vw!important}body.mobile-landscape .play-shell-layout,html.mobile-landscape .play-shell-layout{display:flex!important;flex-direction:row!important;gap:.5rem!important;height:100vh!important;margin:0!important;overflow:hidden!important;padding:.5rem!important;width:100vw!important}body.mobile-landscape .play-shell-sidebar,html.mobile-landscape .play-shell-sidebar{background:#000c!important;border-radius:8px!important;border-right:1px solid #ffffff1a!important;flex-shrink:0!important;height:100vh!important;max-width:240px!important;min-width:180px!important;order:1!important;overflow-x:hidden!important;overflow-y:auto!important;padding:.5rem!important;width:25vw!important}body.mobile-landscape .play-shell-board,html.mobile-landscape .play-shell-board{align-items:center!important;background:#0000!important;border:none!important;display:flex!important;flex:1 1!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;order:2!important;padding:.5rem!important}body.mobile-landscape .board-container,html.mobile-landscape .board-container{--board-size:min(calc(100vh - 2rem),calc(70vw - 2rem));height:var(--board-size)!important;max-height:var(--board-size)!important;max-width:var(--board-size)!important;width:var(--board-size)!important}body.mobile-landscape .game-controls,body.mobile-landscape .game-info,body.mobile-landscape .score-display,body.mobile-landscape .timer-display,html.mobile-landscape .game-controls,html.mobile-landscape .game-info,html.mobile-landscape .score-display,html.mobile-landscape .timer-display{font-size:.85rem!important;margin:.25rem 0!important;padding:.5rem!important}body.mobile-landscape .play-shell-setup,html.mobile-landscape .play-shell-setup{align-items:center!important;display:flex!important;height:100vh!important;justify-content:center!important;overflow-y:auto!important;padding:1rem!important;width:100vw!important}body.mobile-landscape .pre-game-setup,html.mobile-landscape .pre-game-setup{max-height:90vh!important;max-width:80vw!important;overflow-y:auto!important}body.mobile-landscape .board-container>div:first-child,html.mobile-landscape .board-container>div:first-child{font-size:.8rem!important;margin-bottom:.5rem!important}body.mobile-landscape .board-container>div:last-child,html.mobile-landscape .board-container>div:last-child{font-size:.8rem!important;margin-top:.5rem!important}body.mobile-landscape button,html.mobile-landscape button{font-size:.85rem!important;padding:.4rem .8rem!important}body.mobile-landscape .sidebar h2,body.mobile-landscape .sidebar h3,html.mobile-landscape .sidebar h2,html.mobile-landscape .sidebar h3{font-size:1rem!important;margin-bottom:.5rem!important}body.mobile-landscape.force-transform .play-shell-layout,html.mobile-landscape.force-transform .play-shell-layout{display:block!important;position:relative!important}body.mobile-landscape.force-transform .play-shell-sidebar,html.mobile-landscape.force-transform .play-shell-sidebar{height:100vh!important;left:0!important;position:absolute!important;top:0!important;width:200px!important;z-index:10!important}body.mobile-landscape.force-transform .play-shell-board,html.mobile-landscape.force-transform .play-shell-board{height:100vh!important;left:200px!important;position:absolute!important;top:0!important;width:calc(100vw - 200px)!important}body.mobile-landscape:before,html.mobile-landscape:before{background:#22c55ee6;border-radius:4px;color:#fff;content:"📱 Mobile Landscape Active";font-size:10px;padding:4px 8px;pointer-events:none;position:fixed;right:5px;top:5px;z-index:9999}}.network-error-overlay{align-items:center;animation:fadeIn .3s ease-out;background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.network-error-dialog{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:40px 32px;text-align:center;width:100%}.error-icon{animation:pulse 2s infinite;margin-bottom:24px}.error-title{color:#212121;font-size:24px;font-weight:600;margin-bottom:16px}.error-message{color:#616161;font-size:16px;line-height:1.6;margin-bottom:32px}.error-actions{flex-direction:column;margin-bottom:24px}.btn{font-size:16px;justify-content:center}.btn-primary{background:#2196f3}.btn-primary:hover{background:#1976d2;box-shadow:0 4px 12px #2196f366;transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#f5f5f5;color:#212121}.btn-secondary:hover{background:#e0e0e0}.btn-text{background:#0000;color:#757575;padding:8px 16px}.btn-text:hover{background:#f5f5f5;color:#424242}.error-tips{background:#f5f5f5;border-radius:8px;padding:16px;text-align:left}.tips-title{color:#424242;font-size:14px;font-weight:600;margin-bottom:8px}.error-tips ul{color:#616161;font-size:14px;line-height:1.8;margin:0;padding-left:20px}.error-tips li{margin-bottom:4px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (max-width:600px){.network-error-dialog{padding:32px 24px}.error-title{font-size:20px}.btn,.error-message{font-size:14px}.btn{padding:10px 20px}.error-tips{padding:12px}.error-tips ul,.tips-title{font-size:13px}}@media (prefers-color-scheme:dark){.network-error-dialog{background:#1e1e1e}.error-title{color:#e0e0e0}.error-message{color:#b0b0b0}.btn-secondary{background:#2a2a2a;color:#e0e0e0}.btn-secondary:hover{background:#3a3a3a}.btn-text{color:#b0b0b0}.btn-text:hover{color:#e0e0e0}.btn-text:hover,.error-tips{background:#2a2a2a}.tips-title{color:#e0e0e0}.error-tips ul{color:#b0b0b0}}.checkmate-notification{animation:slideIn .5s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;box-shadow:0 10px 40px #00000080;color:#fff;left:50%;padding:2rem 3rem;position:fixed;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:10000}.checkmate-notification.fade-out{animation:fadeOut .5s ease-out forwards}.checkmate-content h2{font-size:2rem;font-weight:700;margin:0 0 .5rem;text-shadow:2px 2px 4px #0000004d}.checkmate-content p{font-size:1.3rem;margin:0}@keyframes fadeOut{to{opacity:0;transform:translate(-50%,-45%)}}@keyframes kingFlicker{0%,to{background-color:initial}25%,75%{background-color:#f009}50%{background-color:#ff00004d}}.king-in-danger{animation:kingFlicker .5s ease-in-out 3}.new-game-request-overlay{align-items:center;animation:fadeIn .3s ease-in;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.new-game-request-dialog{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 12px 48px #0000004d;max-width:480px;padding:32px;text-align:center;width:90%}.new-game-request-icon{animation:bounce 1s ease-in-out infinite;font-size:64px;margin-bottom:16px}.new-game-request-title{color:#1a1a1a;font-size:24px;font-weight:600;margin-bottom:12px}.new-game-request-message{color:#666;font-size:16px;line-height:1.5;margin-bottom:24px}.new-game-request-details{background-color:#f5f5f5;border-radius:12px;margin:24px 0;padding:20px}.color-preference-note{background-color:#3498db1a;border-left:3px solid #3498db;border-radius:8px;color:#3498db;font-size:14px;font-weight:600;margin-bottom:16px;padding:8px 12px}.player-matchup{gap:16px;justify-content:space-around}.player,.player-matchup{align-items:center;display:flex}.player{flex-direction:column;gap:8px}.player-avatar{border:3px solid #3498db;height:60px;width:60px}.player-name{color:#1a1a1a;font-size:14px}.player-rating{color:#999;font-size:12px}.vs{color:#999;font-size:20px;font-weight:700}.new-game-request-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.new-game-request-actions .btn{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;min-width:120px;padding:12px 32px;transition:all .2s ease}.btn-accept{background-color:#27ae60}.btn-accept:hover{background-color:#229954;box-shadow:0 4px 12px #27ae604d;transform:translateY(-2px)}.btn-decline{background-color:#e74c3c}.btn-decline:hover{background-color:#c0392b;box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-2px)}.btn-accept:active,.btn-decline:active{transform:translateY(0)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width:500px){.new-game-request-dialog{padding:24px;width:95%}.new-game-request-icon{font-size:48px}.new-game-request-title{font-size:20px}.player-avatar{height:50px;width:50px}.new-game-request-actions{flex-direction:column}.new-game-request-actions .btn{width:100%}}:root{--brand:#0284c7;--brand-2:#0ea5e9;--accent:#f59e0b;--success:#10b981;--ink:#1f2937}.unified-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;box-shadow:0 4px 12px #0000002e;display:flex;flex-direction:column;gap:.75rem;overflow:hidden;padding:1.25rem;transition:all .3s ease}.unified-card.light-theme{background:#fff;border:1px solid #e5e7eb;box-shadow:0 2px 4px #0000000d;transition:all .2s ease-in-out}.unified-card.light-theme:hover{border-color:#d1d5db;box-shadow:0 8px 16px #0000001a;transform:translateY(-4px)}.unified-card:hover{border-color:#ffffff4d;box-shadow:0 6px 16px #00000040;transform:translateY(-2px)}.unified-card.horizontal{align-items:center;flex-direction:row;gap:1rem}.unified-card-avatar{align-items:center;border:2px solid #7289da80;border-radius:50%;display:flex;flex-shrink:0;font-size:1.5rem;height:56px;justify-content:center;object-fit:cover;width:56px}.unified-card.light-theme .unified-card-avatar{background:#f0f2f5;border:none;color:#4b5563}.unified-card.stat{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:180px;overflow:hidden;position:relative;text-align:center;transition:transform .25s ease,box-shadow .25s ease}.unified-card.stat:before{background:linear-gradient(90deg,#0284c7,#0ea5e9);background:linear-gradient(90deg,var(--brand),var(--brand-2));content:"";height:3px;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.unified-card.stat:hover:before{opacity:1}.unified-card.stat .unified-card-avatar{background:linear-gradient(135deg,#eef2ff,#e0e7ff);box-shadow:0 4px 12px #0284c726;color:#0284c7;color:var(--brand);font-size:1.75rem;height:72px;margin:0;transition:transform .3s ease,box-shadow .3s ease;width:72px}.unified-card.stat:hover .unified-card-avatar{box-shadow:0 8px 20px #0284c740;transform:translateY(-2px)}.unified-card.stat .unified-card-title{color:#1f2937;color:var(--ink);font-size:2.25rem;font-weight:900;letter-spacing:-.03em;line-height:1;margin:0}.unified-card.stat .unified-card-subtitle{color:#64748b;font-size:.875rem;font-weight:600;letter-spacing:.1em;margin:0;text-transform:uppercase}.unified-card.stat:hover{box-shadow:0 20px 40px #0000001a;transform:translateY(-8px) scale(1.02)}.unified-card.accented{border-top-color:#0284c7;border-top-color:var(--brand,#0284c7);border-top-width:4px;overflow:hidden;position:relative}.unified-card.accented:before{background:linear-gradient(135deg,#0284c705,#0ea5e903);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.unified-card.accented:hover:before{opacity:1}.unified-card.light-theme.accented .unified-card-avatar{background:linear-gradient(135deg,#0284c7,#0ea5e9);background:linear-gradient(135deg,var(--brand),var(--brand-2));box-shadow:0 4px 16px #0284c740;color:#fff;transition:all .3s ease}.unified-card.light-theme.accented:hover .unified-card-avatar{box-shadow:0 8px 24px #0284c759;transform:translateY(-4px) scale(1.05)}.unified-card.light-theme.accented:hover{border-top-color:#0ea5e9;border-top-color:var(--brand-2);box-shadow:0 20px 40px #0000001f;transform:translateY(-8px) scale(1.02)}.unified-card-avatar.bg-blue{background-color:#e0e7ff;color:#3730a3}.unified-card-avatar.bg-green{background-color:#d1fae5;color:#047857}.unified-card-avatar.bg-orange{background-color:#ffedd5;color:#9a3412}.unified-card-avatar.bg-purple{background-color:#f3e8ff;color:#6b21a8}.unified-card-avatar.bg-pink{background-color:#fce7f3;color:#9d174d}.unified-card.horizontal .unified-card-avatar{margin-right:0}.unified-card-content{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0;overflow:hidden}.unified-card-title{color:#fff;font-size:1.1rem;font-weight:600}.unified-card-subtitle,.unified-card-title{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unified-card-subtitle{color:#b9bbbe;font-size:.9rem}.unified-card.light-theme .unified-card-title{color:#1f2937;font-size:1.75rem;font-weight:700}.unified-card.light-theme .unified-card-subtitle{color:#6b7280;font-size:.875rem}.unified-card-meta{color:#72767d;font-size:.85rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unified-card-info{color:#43b581;font-size:.9rem;font-weight:500;margin:0}.unified-card-actions{display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem}.unified-card-actions.vertical{flex-direction:column;width:100%}.unified-card.horizontal .unified-card-actions{margin-left:auto}.unified-card-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;transition:all .3s ease;white-space:nowrap}.unified-card-btn.primary{background:linear-gradient(135deg,#0284c7,#0ea5e9);background:linear-gradient(135deg,var(--brand),var(--brand-2));box-shadow:0 2px 8px #0284c74d;color:#fff}.unified-card-btn.primary:hover{background:linear-gradient(135deg,#0ea5e9,#0284c7);background:linear-gradient(135deg,var(--brand-2),#0284c7);box-shadow:0 4px 12px #0284c766;transform:translateY(-1px)}.unified-card-btn.secondary{background-color:#10b981;background-color:var(--success);color:#fff}.unified-card-btn.secondary:hover{background-color:#0d9488;transform:translateY(-1px)}.unified-card-btn.danger{background-color:#f04747;color:#fff}.unified-card-btn.danger:hover{background-color:#d73c3c;transform:translateY(-1px)}.unified-card-btn.neutral{background-color:#72767d;color:#fff}.unified-card-btn.neutral:hover{background-color:#5f6368;transform:translateY(-1px)}.unified-card-btn:disabled{background-color:#72767d;cursor:not-allowed;opacity:.7;transform:none!important}.unified-card-status{align-items:center;border-radius:4px;display:inline-flex;font-size:.85rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.unified-card-status.online{background-color:#43b58133;color:#43b581}.unified-card-status.active{background-color:#4caf5033;color:#4caf50}.unified-card-status.paused{background-color:#ffc10733;color:#ffc107}.unified-card-grid{grid-gap:1.25rem;box-sizing:border-box;display:grid;gap:1.25rem;max-width:100%;width:100%}.unified-card-grid.cols-1{grid-template-columns:1fr}.unified-card-grid.cols-2{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}.unified-card-grid.cols-3{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}.unified-card-grid.cols-4{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))}@media (max-width:768px){.unified-card{padding:1rem}.unified-card.horizontal{flex-direction:column;text-align:center}.unified-card-avatar{height:48px;width:48px}.unified-card.horizontal .unified-card-avatar{margin:0 auto}.unified-card-title{font-size:1rem}.unified-card-meta,.unified-card-subtitle{font-size:.85rem}.unified-card-actions{justify-content:center;width:100%}.unified-card-btn{flex:1 1;min-width:100px}.unified-card-grid{gap:1rem;grid-template-columns:1fr}}@media (max-width:480px){.unified-card{padding:.75rem}.unified-card-avatar{height:44px;width:44px}.unified-card-title{font-size:.95rem}.unified-card-subtitle{font-size:.8rem}.unified-card-btn{font-size:.85rem;padding:.4rem .8rem}.unified-card-grid{gap:.75rem}}.unified-section{margin:2rem 0}.unified-section-header{align-items:center;color:#7289da;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin-bottom:1rem}@media (max-width:768px){.unified-section{margin:1.5rem 0}.unified-section-header{font-size:1.25rem}}@media (max-width:480px){.unified-section{margin:1rem 0}.unified-section-header{font-size:1.1rem}}.unified-empty-state{color:#b9bbbe;padding:3rem 1.5rem;text-align:center}.unified-empty-state p{font-size:1rem;margin:.5rem 0}.unified-empty-state p:first-child{font-size:1.2rem;font-weight:600}@media (max-width:768px){.unified-empty-state{padding:2rem 1rem}.unified-empty-state p{font-size:.9rem}.unified-empty-state p:first-child{font-size:1.1rem}}.centered{text-align:center}.unified-card.gradient-primary{background:linear-gradient(135deg,#7289da,#5f73bc);border-color:#7289da66}.unified-card.gradient-accent{background:linear-gradient(135deg,#ffa640,#ff7c2a);border-color:#ffa64066}.unified-card.gradient-success{background:linear-gradient(135deg,#43b581,#3ca374);border-color:#43b58166}.title-primary{color:#7289da!important}.title-success{color:#43b581!important}.title-accent{color:#ffa640!important}.title-error{color:#f04747!important}.title-info{color:#00b0ff!important}.title-large{font-size:2rem!important}.skill-assessment-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.skill-assessment-card{animation:slideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;padding:40px;width:100%}.skill-assessment-card.results{padding:60px 40px;text-align:center}.assessment-header{margin-bottom:32px}.assessment-header h2{color:#1a202c;font-size:28px;font-weight:700;margin:0 0 8px}.assessment-subtitle{color:#718096;font-size:15px;margin:0 0 20px}.progress-bar{background:#e2e8f0;border-radius:3px;height:6px;margin-bottom:8px}.progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease-out}.progress-text{color:#a0aec0;font-size:13px;margin:0;text-align:right}.question-section{margin-bottom:24px}.question-text{color:#2d3748;font-size:20px;font-weight:600;line-height:1.4;margin:0 0 24px}.options-list{display:flex;flex-direction:column;gap:12px}.option-button{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;color:#2d3748;cursor:pointer;font-size:16px;font-weight:500;padding:16px 20px;text-align:left;transition:all .2s ease;width:100%}.option-button:hover{background:#edf2f7;border-color:#667eea;transform:translateX(4px)}.option-button:active{transform:scale(.98)}.option-label{display:block}.assessment-footer{border-top:1px solid #e2e8f0;margin-top:24px;padding-top:24px;text-align:center}.skip-button{background:#0000;border:none;color:#718096;cursor:pointer;font-size:14px;text-decoration:underline;transition:color .2s ease}.skip-button:hover{color:#4a5568}.results-icon{font-size:64px;margin-bottom:16px}.results h2{color:#1a202c;font-size:24px;font-weight:700;margin:0 0 24px}.rating-display{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:72px;font-weight:800;margin:0 0 16px}.rating-description{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 16px}.provisional-note{background:#f7fafc;border-radius:8px;color:#718096;font-size:14px;line-height:1.6;margin:0;padding:16px}@media (max-width:640px){.skill-assessment-card{padding:24px}.assessment-header h2{font-size:24px}.question-text{font-size:18px}.option-button{font-size:15px;padding:14px 16px}.rating-display{font-size:56px}}.skill-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.skill-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #0006;max-height:90vh;max-width:650px;overflow-y:auto;position:relative;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.skill-modal-header{border-bottom:2px solid #e2e8f0;padding:32px 32px 24px;position:relative}.skill-modal-header h2{color:#1a202c;font-size:28px;font-weight:700;margin:0 0 8px}.skill-modal-header p{color:#718096;font-size:15px;margin:0}.skill-modal-close{align-items:center;background:#0000;border:none;border-radius:50%;color:#a0aec0;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;position:absolute;right:24px;top:24px;transition:all .2s ease;width:40px}.skill-modal-close:hover{background:#f7fafc;color:#4a5568}.skill-modal-close:disabled{cursor:not-allowed;opacity:.5}.skill-progress-bar{padding:0 32px 24px;position:relative}.skill-progress-bar .skill-progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;box-shadow:0 2px 8px #667eea4d;height:8px;transition:width .4s cubic-bezier(.4,0,.2,1)}.skill-progress-bar:before{background:#e2e8f0;border-radius:4px;content:"";height:8px;left:32px;position:absolute;right:32px;top:0}.skill-progress-text{color:#a0aec0;display:block;font-size:13px;font-weight:500;margin-top:8px;text-align:center}.skill-modal-body{padding:32px}.skill-question{color:#2d3748;font-size:22px;font-weight:600;line-height:1.4;margin:0 0 24px}.skill-options{display:flex;flex-direction:column;gap:12px}.skill-option-btn{align-items:center;background:#f7fafc;border:2px solid #e2e8f0;border-radius:14px;cursor:pointer;display:flex;gap:16px;padding:18px 20px;text-align:left;transition:all .2s ease;width:100%}.skill-option-btn:hover{background:#edf2f7;border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateX(6px)}.skill-option-btn:active{transform:translateX(6px) scale(.98)}.skill-option-btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.skill-option-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:32px;justify-content:center;width:32px}.skill-option-text{color:#2d3748;flex:1 1;font-size:16px;font-weight:500;line-height:1.4}.skill-option-rating{color:#667eea;flex-shrink:0;font-size:14px;font-weight:600}.skill-modal-footer{align-items:center;border-top:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 32px 32px}.skill-back-btn{background:#0000;border:2px solid #e2e8f0;border-radius:10px;color:#4a5568;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.skill-back-btn:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0}.skill-back-btn:disabled{cursor:not-allowed;opacity:.4}.skill-skip-btn{background:#0000;border:none;color:#a0aec0;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;text-decoration:underline;transition:color .2s ease}.skill-skip-btn:hover:not(:disabled){color:#718096}.skill-skip-btn:disabled{cursor:not-allowed;opacity:.5}.skill-submitting-overlay{align-items:center;background:#fffffff2;border-radius:20px;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.skill-spinner{animation:spin .8s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:48px;margin-bottom:16px;width:48px}.skill-submitting-overlay p{color:#4a5568;font-size:16px;font-weight:500;margin:0}@media (max-width:640px){.skill-modal{margin:10px;max-height:95vh}.skill-modal-header{padding:24px 20px 20px}.skill-modal-header h2{font-size:24px;padding-right:40px}.skill-modal-header p{font-size:14px}.skill-modal-close{font-size:24px;height:36px;right:20px;top:20px;width:36px}.skill-progress-bar{padding:0 20px 20px}.skill-modal-body{padding:24px 20px}.skill-question{font-size:19px}.skill-option-btn{gap:12px;padding:14px 16px}.skill-option-number{font-size:13px;height:28px;width:28px}.skill-option-text{font-size:15px}.skill-option-rating{font-size:13px}.skill-modal-footer{flex-direction:column;gap:12px;padding:16px 20px 24px}.skill-back-btn,.skill-skip-btn{width:100%}}.detailed-stats-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.detailed-stats-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 20px 60px #00000080;max-height:90vh;max-width:1200px;overflow-y:auto;width:100%}.detailed-stats-header{align-items:center;background:#0003;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:1.5rem 2rem}.detailed-stats-header h2{color:#fff;font-size:1.5rem;font-weight:600;margin:0}.close-btn{background:#ffffff1a;font-size:1.5rem;transition:all .2s ease}.close-btn:hover{background:#fff3;transform:scale(1.1)}.stats-summary{grid-gap:1rem;background:#0003;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:2rem}.summary-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:1.5rem;text-align:center;transition:all .3s ease}.summary-card:hover{background:#ffffff14;box-shadow:0 8px 16px #0003;transform:translateY(-2px)}.summary-card.success{background:#2ed5730d;border-color:#2ed5734d}.summary-card.error{background:#ff47570d;border-color:#ff47574d}.summary-card.neutral{background:#9e9e9e0d;border-color:#9e9e9e4d}.summary-card.info{background:#3498db0d;border-color:#3498db4d}.summary-value{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.summary-card.success .summary-value{color:#2ed573}.summary-card.error .summary-value{color:#ff4757}.summary-card.neutral .summary-value{color:#9e9e9e}.summary-card.info .summary-value{color:#3498db}.summary-label{color:#ffffffb3;font-size:.875rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.stats-table-container{overflow-x:auto;padding:2rem}.stats-table{background:#0003;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.stats-table thead{background:#0006}.stats-table th{border-bottom:2px solid #ffffff1a;color:#ffffffe6;font-size:.875rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.stats-table tbody tr{border-bottom:1px solid #ffffff0d;transition:all .2s ease}.stats-table tbody tr:hover{background:#ffffff0d}.stats-table tbody tr.row-win{background:#2ed5730d}.stats-table tbody tr.row-win:hover{background:#2ed5731a}.stats-table tbody tr.row-loss{background:#ff47570d}.stats-table tbody tr.row-loss:hover{background:#ff47571a}.stats-table tbody tr.row-draw{background:#9e9e9e0d}.stats-table tbody tr.row-draw:hover{background:#9e9e9e1a}.stats-table td{color:#fffc;font-size:.875rem;padding:1rem}.date-cell{display:flex;flex-direction:column;gap:.25rem}.date-main{color:#fff;font-weight:600}.date-time{color:#ffffff80;font-size:.75rem}.mode-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:600;gap:.25rem;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.mode-badge.computer{background:#3498db33;border:1px solid #3498db4d;color:#3498db}.mode-badge.multiplayer{background:#9b59b633;border:1px solid #9b59b64d;color:#9b59b6}.result-badge{align-items:center;border-radius:8px;display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.375rem .75rem;text-transform:uppercase}.result-badge.win{background:#2ed57333;border:1px solid #2ed5734d;color:#2ed573}.result-badge.loss{background:#ff475733;border:1px solid #ff47574d;color:#ff4757}.result-badge.draw{background:#9e9e9e33;border:1px solid #9e9e9e4d;color:#9e9e9e}.result-badge.unknown{background:#ffffff1a;border:1px solid #fff3;color:#fff9}.moves-cell,.score-cell{color:#fff;font-weight:600;text-align:center}@media (max-width:768px){.detailed-stats-modal{margin:.5rem;max-height:95vh}.detailed-stats-header{padding:1rem}.detailed-stats-header h2{font-size:1.25rem}.stats-summary{gap:.75rem;grid-template-columns:repeat(2,1fr);padding:1rem}.summary-card{padding:1rem}.summary-value{font-size:2rem}.stats-table-container{padding:1rem}.stats-table{font-size:.75rem}.stats-table td,.stats-table th{padding:.5rem}.stats-table td:nth-child(6),.stats-table td:nth-child(7),.stats-table th:nth-child(6),.stats-table th:nth-child(7){display:none}}.detailed-stats-modal::-webkit-scrollbar{width:8px}.detailed-stats-modal::-webkit-scrollbar-track{background:#0003}.detailed-stats-modal::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.detailed-stats-modal::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.stats-table-container::-webkit-scrollbar{height:8px}.stats-table-container::-webkit-scrollbar-track{background:#0003}.stats-table-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.stats-table-container::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.opponent-cell{align-items:center;display:flex;gap:.5rem}.opponent-avatar{border:2px solid #fff3;border-radius:50%;height:32px;object-fit:cover;width:32px}.computer-icon{font-size:1.5rem}.opponent-name{color:#fff;font-weight:500}.stats-charts{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.chart-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:1.5rem}.chart-title{color:#fff;font-size:1rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.bar-chart{display:flex;flex-direction:column;gap:1rem}.bar-item{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:80px 1fr 60px}.bar-label{color:#fffc;font-size:.875rem;font-weight:500}.bar-container{background:#0000004d;border-radius:16px;height:32px;overflow:hidden}.bar-fill{align-items:center;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:100%;justify-content:center;min-width:40px;transition:width .5s ease}.bar-fill.win{background:linear-gradient(90deg,#10b981,#059669)}.bar-fill.loss{background:linear-gradient(90deg,#ef4444,#dc2626)}.bar-fill.draw{background:linear-gradient(90deg,#f59e0b,#d97706)}.bar-percentage{color:#ffffffe6;font-size:.875rem;font-weight:600;text-align:right}.timeline-chart{flex-wrap:wrap;gap:.5rem;padding:1rem 0}.timeline-chart,.timeline-item{display:flex;justify-content:center}.timeline-item{align-items:center;border-radius:50%;cursor:pointer;font-size:1.25rem;font-weight:700;height:40px;transition:transform .2s ease,box-shadow .2s ease;width:40px}.timeline-item:hover{box-shadow:0 4px 12px #0000004d;transform:scale(1.1)}.timeline-item.win{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.timeline-item.loss{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.timeline-item.draw{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.timeline-icon{font-size:1.25rem}.timeline-legend{border-top:1px solid #ffffff1a;display:flex;gap:2rem;justify-content:center;margin-top:1rem;padding-top:1rem}.legend-item{color:#fffc;font-size:.875rem;gap:.5rem}.legend-icon{align-items:center;border-radius:50%;display:flex;font-size:.875rem;font-weight:700;height:24px;justify-content:center;width:24px}.legend-icon.win{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.legend-icon.loss{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.legend-icon.draw{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.dashboard-container{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#202225d9;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 4px 30px #00000040;color:#fff;display:flex;flex-direction:column;height:auto;margin:.1rem auto;max-width:1200px;overflow-y:auto;padding:.1rem;width:100%}.dashboard,.dashboard-container{box-sizing:border-box;overflow-x:hidden}.dashboard{margin:0 auto;max-width:100%}.rating-prompt-banner{align-items:center;animation:slideDown .4s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#667eea33,#764ba233);border:2px solid #667eea80;border-radius:12px;box-shadow:0 8px 20px #667eea26;display:flex;gap:20px;justify-content:space-between;margin-top:24px;padding:20px 24px}.rating-prompt-text{color:#e2e8f0;flex:1 1;font-size:15px;font-weight:500;line-height:1.5;margin:0}.rating-prompt-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease;white-space:nowrap}.rating-prompt-btn:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.rating-prompt-btn:active{transform:translateY(0)}@media (max-width:640px){.rating-prompt-banner{align-items:stretch;flex-direction:column;padding:16px 20px;text-align:center}.rating-prompt-btn{width:100%}}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));overflow-y:auto}.dashboard-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000001a;overflow:hidden;padding:1.5rem}.card-title{color:#fff;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.quick-actions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}.action-button{border-radius:8px;color:#fff;font-size:1.1rem;font-weight:600;padding:1rem;text-align:center;transition:all .3s ease}.action-button:hover{transform:translateY(-2px)}.game-info{min-width:0;overflow:hidden}.game-info span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:1024px){.dashboard-container{max-width:100%;padding:.5rem}.dashboard{padding:1rem}.dashboard-header h1{font-size:2.5rem}.dashboard-grid{gap:1.25rem;grid-template-columns:1fr}}@media (max-width:768px){.dashboard-container{border-radius:8px;margin:0;padding:.25rem}.dashboard{padding:.5rem}.dashboard-header{margin-bottom:1.5rem}.dashboard-header h1{font-size:2rem}.dashboard-grid{gap:1rem;grid-template-columns:1fr}.dashboard-card{padding:1rem}.game-item{align-items:flex-start;flex-direction:column;gap:.5rem}.game-info{width:100%}.rating-prompt-banner{flex-direction:column;padding:1rem}.rating-prompt-text{font-size:14px}.unified-card-btn{text-align:center;width:100%}}@media (max-width:480px){.dashboard-container{border-radius:4px;padding:.1rem}.dashboard{padding:.25rem}.dashboard-header{margin-bottom:1rem}.dashboard-header h1{font-size:1.5rem}.dashboard-grid{gap:.75rem}.dashboard-card{padding:.75rem}.card-title{font-size:1.25rem}.quick-actions-grid{gap:.75rem}.action-button{font-size:1rem;padding:.75rem}.rating-prompt-banner{padding:.75rem}.rating-prompt-text{font-size:13px}.rating-prompt-btn{font-size:13px;padding:10px 20px}}.lobby-container{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#202225d9;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 4px 30px #00000040;color:#fff;display:flex;flex-direction:column;height:auto;margin:.1rem auto;max-width:1200px;overflow-y:auto;padding:.1rem;width:100%}.lobby,.lobby-container{box-sizing:border-box;overflow-x:hidden}.lobby{margin:0 auto;max-width:100%}.loading-spinner{flex-direction:column;min-height:200px}.lobby-topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#20222599;border-bottom:1px solid #ffffff14;border-radius:12px;box-shadow:0 2px 12px #0003;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.lobby-topbar,.logo-title{align-items:center;display:flex}.logo-title{gap:.5rem}.logo-title .logo{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:32px}.logo-title h1{color:#7289da;font-size:1.5rem;margin:0;text-shadow:0 2px 4px #0000004d}.user-compact{gap:.75rem}.user-name span{font-size:.95rem}.user-name small{font-size:.8rem}.user-avatar img{height:36px;width:36px}.dropdown-menu{z-index:999}.stats-row{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;margin:1rem 0 1.5rem}.stat-tile{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;color:#e5e7eb;display:flex;font-size:.95rem;font-weight:600;gap:.4rem;padding:.6rem 1.2rem;transition:transform .2s,background .2s}.stat-tile:hover{background:#ffffff14;transform:translateY(-2px)}.stat-icon{font-size:1.2rem}.stat-number{font-size:1rem}.stat-label{color:#9ca3af;font-weight:500}.lobby-header{align-items:center;border-bottom:2px solid #ffffff14;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}@media (max-width:768px){.lobby-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:50}.lobby-container{margin:1rem auto;padding:1rem .5rem}}.lobby-header .nav-buttons{display:flex;gap:1rem}.lobby-header .nav-buttons button{background:#0000;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.4rem .9rem;transition:all .2s ease}.lobby-header .nav-buttons button:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-1px)}.user-info{flex-wrap:wrap;gap:2rem;justify-content:space-between}.current-user,.user-info{align-items:center;display:flex}.current-user{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#40444b99;border:1px solid #7289da4d;border-radius:10px;box-shadow:0 4px 12px #00000026;padding:1rem}.current-user-avatar{border:3px solid #7289da;border-radius:50%;height:60px;margin-right:1rem;width:60px}.current-user-details h3{color:#7289da;font-size:1.2rem;margin:0 0 .25rem}.user-email,.user-rating{color:#b9bbbe;font-size:.9rem;margin:.2rem 0}.online-stats{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.stat{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;min-width:110px;padding:.75rem 1.25rem;text-align:center;transition:transform .25s ease}.stat:hover{box-shadow:0 4px 12px #7289da33;transform:translateY(-3px)}.stat-number{color:#43b581;display:block;font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.stat-label{color:#b9bbbe;letter-spacing:.05em}.available-players-section{margin-top:2rem}.available-players-section h2{color:#7289da;font-size:1.5rem;margin-bottom:1rem}.player-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:1rem}.player-card{align-items:center;animation:fadeInUp .4s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#40444b99;border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 4px 12px #00000026;display:flex;padding:1.5rem;transition:all .3s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.player-card:hover{background:#40444bcc;border-color:#7289da80;box-shadow:0 8px 25px #7289da40;transform:translateY(-3px)}.player-avatar{border:2px solid #7289da;height:56px;margin-right:1rem;width:56px}.player-info{min-width:0;overflow:hidden}.player-info h3{color:#fff;font-size:1.1rem;margin:0 0 .25rem}.player-email,.player-info h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-email{color:#b9bbbe;font-size:.85rem;margin:.2rem 0}.player-rating{color:#43b581;font-size:.9rem;font-weight:600;margin:.2rem 0}.player-status{color:#43b581;font-size:.8rem;font-weight:500;margin:.2rem 0}.no-players{color:#b9bbbe;grid-column:1/-1;padding:3rem;text-align:center}.no-players p{font-size:1.1rem;margin:.5rem 0}.invite-btn{background:linear-gradient(135deg,#7289da,#5f73bc);border:none;border-radius:8px;box-shadow:0 2px 8px #7289da4d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;margin-left:auto;padding:.75rem 1.25rem;transition:all .3s ease}.invite-btn:hover{background:linear-gradient(135deg,#5f73bc,#4e5d94);box-shadow:0 4px 12px #7289da66;transform:translateY(-1px)}.invite-btn:active{transform:translateY(0)}.invite-btn.invited{background:#72767d;cursor:not-allowed;opacity:.7}.invite-btn.invited:hover{background:#72767d;box-shadow:0 2px 8px #72767d4d;transform:none}.invitation-modal{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{background-color:#2c2f33;border-radius:8px;padding:2rem;text-align:center}.loader{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#7289da;height:40px;margin:1rem auto;width:40px}@media (max-width:768px){.lobby-container{height:auto;margin:.2rem;min-height:auto;overflow-y:visible;padding:.2rem .15rem}.lobby-header{flex-direction:column;gap:1rem;text-align:center}.lobby-header h1{font-size:2rem}.lobby-header .nav-buttons{flex-wrap:wrap;justify-content:center}.user-info{align-items:stretch;flex-direction:column;gap:1rem}.current-user{flex-direction:column;text-align:center}.current-user-avatar{margin:0 0 1rem}.online-stats{align-items:center;flex-direction:column}.lobby-tabs{gap:.25rem}.tab-button{font-size:.9rem;padding:.5rem .9rem}.player-list{gap:1rem;grid-template-columns:1fr}.player-card{padding:1rem}.player-avatar{height:48px;width:48px}.invite-btn{font-size:.8rem;padding:.5rem 1rem}}@media (max-width:480px){.lobby-container{height:auto;margin:.1rem;min-height:auto;overflow-y:visible;padding:.2rem .15rem}.lobby-header{padding:1rem 0}.lobby-header h1{font-size:1.5rem}.lobby-header .nav-buttons{gap:.5rem}.lobby-header .nav-buttons button{font-size:.8rem;padding:.3rem .7rem}.stat{min-width:90px;padding:.6rem 1rem}.stat-number{font-size:1.5rem}.stat-label{font-size:.7rem}.available-players-section h2{font-size:1.25rem}.tab-button{font-size:.85rem;padding:.4rem .7rem}.invitation-info h4,.player-info h3{font-size:1rem}.invitation-info p,.player-email{font-size:.8rem}}.invitations-section{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#36393f99;border:1px solid #7289da4d;border-radius:12px;margin:2rem 0;padding:1.5rem}.invitations-section h2{color:#7289da;font-size:1.5rem;margin-bottom:1rem}.invitations-list{display:flex;flex-direction:column;gap:1rem}.invitation-card{align-items:center;animation:slideIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#40444b99;border:1px solid #ffffff1a;border-radius:10px;box-shadow:0 4px 12px #00000026;display:flex;padding:1rem;transition:all .3s ease}.invitation-card:hover{background:#40444bcc;border-color:#7289da80;box-shadow:0 8px 25px #7289da40;transform:translateY(-3px)}.invitation-avatar{border:2px solid #7289da;border-radius:50%;height:50px;margin-right:1rem;width:50px}.invitation-info{flex:1 1;min-width:0;overflow:hidden}.invitation-info h4{color:#fff;font-size:1.1rem;margin:0 0 .5rem}.invitation-info h4,.invitation-info p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invitation-info p{color:#b9bbbe;font-size:.9rem;margin:.2rem 0}.invitation-time{color:#72767d!important;font-size:.8rem!important;font-style:italic}.invitation-actions{display:flex;gap:.5rem}.accept-btn,.cancel-btn,.decline-btn{border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .3s ease}.accept-btn{background-color:#43b581;color:#fff}.accept-btn:hover{background-color:#3ca374;transform:translateY(-1px)}.decline-btn{background-color:#f04747;color:#fff}.decline-btn:hover{background-color:#d73c3c;transform:translateY(-1px)}.cancel-btn{background-color:#72767d}.cancel-btn:hover{background-color:#5f6368;transform:translateY(-1px)}@media (max-width:768px){.invitations-section{margin:1rem 0;padding:1rem}.invitation-card{flex-direction:column;gap:1rem;text-align:center}.invitation-avatar{margin:0}.invitation-actions{justify-content:center;width:100%}.accept-btn,.cancel-btn,.decline-btn{flex:1 1;min-width:80px}}.lobby-tabs{-webkit-overflow-scrolling:touch;border-bottom:1px solid #ffffff14;cursor:grab;display:flex;gap:.2rem;margin:.2rem -.75rem 1.25rem;overflow-x:auto;padding:0 .25rem;position:relative;scroll-snap-type:x proximity;scrollbar-width:none}.lobby-tabs:active{cursor:grabbing}.lobby-tabs::-webkit-scrollbar{display:none}.lobby-tabs:after,.lobby-tabs:before{content:"";flex:0 0 12px;pointer-events:none;position:-webkit-sticky;position:sticky;top:0;width:12px;z-index:1}.lobby-tabs:before{background:linear-gradient(90deg,#202225cc,#20222500);left:0}.lobby-tabs:after{background:linear-gradient(-90deg,#202225cc,#20222500);right:0}.tab-button{background:#ffffff0a;border:1px solid #ffffff1a;border-bottom:none;border-radius:10px 10px 0 0;color:#cbd5e1;display:inline-flex;flex:0 0 auto;font-size:1rem;font-weight:700;gap:.5rem;letter-spacing:.01em;min-height:44px;padding:.6rem 2rem .6rem 1rem;position:relative;scroll-snap-align:start;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.tab-ico{display:none;font-size:1.05rem;margin-right:.35rem}.tab-text-full{display:inline}.tab-ico:not(:empty)~.tab-text-full,.tab-text-short{display:none}.tab-ico:not(:empty)~.tab-text-short{display:inline}.tab-button:hover{background:#ffffff12;color:#fff}.tab-button.active{background:#7289da2e;border-color:#7289da73;box-shadow:0 6px 14px #7289da38;color:#fff}.tab-badge{align-items:center;background:#fbbf24;border-radius:9999px;box-shadow:0 2px 6px #fbbf2473;color:#0b1220;display:inline-flex;font-size:.75rem;font-weight:700;height:20px;justify-content:center;line-height:1;min-width:22px;padding:0 .45rem}.tab-button.active .tab-badge{background:#22c55e;box-shadow:0 2px 8px #22c55e73;color:#071118}@media (max-width:520px){.tab-text-full{display:none}.tab-ico,.tab-text-short{display:inline}}@media (max-width:380px){.tab-text-full,.tab-text-short{display:none}.tab-ico{display:inline;margin-right:0}.tab-button{padding-right:1.2rem}}.tab-button{max-width:42vw}.tab-text-full,.tab-text-short{display:inline-block;max-width:24ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-badge{position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}@media (max-width:480px){.tab-button{font-size:.95rem;padding:.5rem .9rem}}@media (max-width:340px){.lobby-tabs{display:none}}.lobby-tabs-select{background:#ffffff0f;border:1px solid #ffffff24;border-radius:10px;color:#e5e7eb;cursor:pointer;font-size:1rem;font-weight:600;margin:.5rem 0 1.25rem;padding:.6rem .8rem;width:100%}.lobby-tabs-select option{background:#2c2f33;color:#e5e7eb;padding:.5rem}.lobby-content{margin-top:1rem;max-width:100%;padding-top:1rem}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;height:calc(100% + .5px);left:0;pointer-events:none;position:absolute;right:0;top:0;width:calc(100% + .5px)}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}.ReactCrop__crop-selection:focus{outline:2px solid #08f;outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:#0003;background-color:var(--rc-drag-handle-bg-colour);border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);height:12px;height:var(--rc-drag-handle-size);position:absolute;width:12px;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:#08f;background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:6px;height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:6px;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:24px;height:var(--rc-drag-handle-mobile-size);width:24px;width:var(--rc-drag-handle-mobile-size)}}.social-share{display:flex;flex-direction:column;gap:12px;margin:16px 0}.social-share-label{color:#374151;font-size:14px;font-weight:600;margin-bottom:4px}.social-share-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.social-share-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.social-share-btn:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.social-share-btn:active{box-shadow:0 1px 2px #0000001a;transform:translateY(0)}.social-share-btn .social-icon{font-size:18px;line-height:1}.social-share-btn .social-label{font-size:13px;font-weight:500}.whatsapp-btn:hover{background-color:#1fb855!important}.facebook-btn:hover{background-color:#145dbf!important}.twitter-btn:hover{background-color:#1a1a1a!important}.telegram-btn:hover{background-color:#0077b3!important}.instagram-btn:hover{background:linear-gradient(45deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888)!important}.email-btn:hover{background-color:#d33b2c!important}.copy-btn{background-color:#6b7280!important}.copy-btn:hover{background-color:#4b5563!important}.copy-btn.copied{background-color:#10b981!important}.native-share:hover{background-color:#0056d6!important}.instagram-message{animation:slideDown .3s ease;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:6px;color:#92400e;font-size:13px;padding:8px 12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.social-share.compact .social-share-btn{justify-content:center;min-width:36px;padding:8px}.social-share.compact .social-label{display:none}@media (max-width:640px){.social-share-buttons{justify-content:center}.social-share-btn{flex:0 0 auto}.social-share-btn .social-label{display:none}.social-share-btn{justify-content:center;min-width:44px;padding:10px}}@media (prefers-color-scheme:dark){.social-share-label{color:#e5e7eb}.instagram-message{background-color:#78350f;border-color:#92400e;color:#fef3c7}}.profile-container{margin:0 auto;max-width:800px;padding:1rem}.profile-header{margin-bottom:2rem;text-align:center}.profile-section{background:#202225d9;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.profile-section h2{margin-bottom:1rem;margin-top:0}.profile-form{gap:1rem}.form-group,.profile-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#fff;font-weight:700}.form-group input{background:#ffffffe6;border:1px solid #ccc;border-radius:4px;padding:.5rem}.current-avatar{border-radius:50%;height:60px;margin-top:.5rem;object-fit:cover;width:60px}.avatar-preview{margin-top:1rem}.avatar-preview p{color:#fff;font-size:.9rem;margin-bottom:.5rem}.avatar-preview-img{border:2px solid #007bff;border-radius:50%;height:80px;object-fit:cover;width:80px}.error{color:#ff6b6b;margin:.5rem 0}.friends-list,.requests-list,.search-results{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.friend-item,.request-item,.search-item{align-items:center;background:#ffffff1a;border-radius:4px;display:flex;gap:1rem;padding:1rem}.friend-item img,.request-item img,.search-item img{border-radius:50%;height:40px;object-fit:cover;width:40px}.friend-item span,.request-item span,.search-item span{color:#fff;flex:1 1}.search-form{display:flex;gap:.5rem;margin-top:1rem}.search-form input{background:#ffffffe6;border:1px solid #ccc;border-radius:4px;flex:1 1;padding:.5rem}button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}button:hover{background:#0056b3}button:disabled{background:#6c757d;cursor:not-allowed}.crop-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.crop-modal-content{background:#2c2f33;border-radius:8px;max-height:90vh;max-width:600px;overflow-y:auto;padding:2rem;width:90%}.crop-modal-content h3{color:#fff;margin-bottom:1.5rem;margin-top:0;text-align:center}.crop-container{margin-bottom:1.5rem}.crop-actions,.crop-container{display:flex;justify-content:center}.crop-actions{gap:1rem}.cancel-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.cancel-btn:hover{background:#c82333}.confirm-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem}.confirm-btn:hover:not(:disabled){background:#218838}.confirm-btn:disabled{background:#6c757d;cursor:not-allowed}.tutorial-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:16px 0}.stat-card{background:#ffffff14;border:2px solid #0000;border-radius:16px;overflow:hidden;position:relative;text-align:center;transition:all .3s ease}.stat-card:before{background:var(--tutorial-gradient-rainbow);border-radius:16px;bottom:0;content:"";left:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;padding:2px;position:absolute;right:0;top:0;transition:opacity .3s ease}.stat-card:hover{background:#ffffff1f;box-shadow:0 12px 30px #7c3aed4d;transform:translateY(-4px) scale(1.02)}.stat-card:hover:before{opacity:1}.stat-title{color:#fffc;font-size:.875rem;font-weight:500;margin-bottom:8px}.stat-value{-webkit-text-fill-color:#0000;background:var(--tutorial-gradient-purple);-webkit-background-clip:text;background-clip:text;margin-bottom:4px}.stat-subtitle{color:#fff9;font-size:.75rem}.xp-progress{width:100%}.level-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.level{-webkit-text-fill-color:#0000;background:var(--tutorial-gradient-purple);-webkit-background-clip:text;background-clip:text;font-weight:700}.xp{color:var(--tutorial-xp);font-size:.875rem;font-weight:600}.xp-bar{background:#ffffff1a;height:8px;overflow:hidden;width:100%}.xp-bar,.xp-fill{border-radius:4px}.xp-fill{background:var(--tutorial-xp-gradient);box-shadow:0 0 10px #eab30880;height:100%;transition:width .3s ease}.progress-circle{display:inline-block;margin:8px 0;position:relative}.progress-text{-webkit-text-fill-color:#0000;background:var(--tutorial-gradient-purple);-webkit-background-clip:text;background-clip:text;font-size:.75rem;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.skill-tier-badge{animation:subtle-pulse 2s ease-in-out infinite;background:var(--tutorial-gradient-rainbow);border-radius:20px;box-shadow:0 4px 15px #7c3aed66;color:#fff;font-size:.875rem;font-weight:600;margin:8px 0;padding:8px 16px}@keyframes subtle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.tutorial-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.tutorial-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;padding:12px 24px;text-decoration:none;transition:all .2s ease}.tutorial-btn.primary{background:var(--tutorial-gradient-purple);box-shadow:0 4px 15px #7c3aed4d;color:#fff}.tutorial-btn.primary:hover{background:var(--tutorial-gradient-blue);box-shadow:0 6px 20px #7c3aed80;transform:translateY(-2px)}.tutorial-btn.secondary{background:var(--tutorial-gradient-orange);box-shadow:0 4px 15px #f973164d;color:#fff}.tutorial-btn.secondary:hover{background:var(--tutorial-xp-gradient);box-shadow:0 6px 20px #f9731680;transform:translateY(-2px)}@media (max-width:768px){.tutorial-stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.tutorial-actions{flex-direction:column}.tutorial-btn{justify-content:center;width:100%}}@media (max-width:480px){.tutorial-stats-grid{grid-template-columns:1fr}}.profile-section{background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:20px;padding:20px}.profile-section h2{color:#fff;font-size:1.25rem;font-weight:600;margin-bottom:16px}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stat-card{animation:slideInUp .5s ease forwards}.stat-card:first-child{animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.stat-card:nth-child(4){animation-delay:.4s}.stat-card:nth-child(5){animation-delay:.5s}.stat-card:nth-child(6){animation-delay:.6s}.stat-card:nth-child(7){animation-delay:.7s}.stat-card:nth-child(8){animation-delay:.8s}.global-invitation-overlay{align-items:center;animation:fadeIn .3s ease-in-out;background-color:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.global-invitation-dialog{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#2c2c2c,#1a1a1a);border-radius:16px;box-shadow:0 8px 32px #00000080;max-width:500px;overflow:hidden;width:90%}.dialog-header{background:linear-gradient(135deg,#ffa726,#ff6f00);padding:20px;text-align:center}.dialog-header h2{color:#fff;font-size:24px;font-weight:700;margin:0}.dialog-body{padding:32px 24px}.invitation-info{align-items:center;display:flex;gap:20px}.inviter-avatar{border:3px solid #ffa726;border-radius:50%;height:80px;object-fit:cover;width:80px}.invitation-text{flex:1 1}.inviter-name{color:#ffa726;font-size:20px;font-weight:700;margin:0 0 8px}.invitation-message{color:#fff;font-size:16px;margin:0 0 8px}.invitation-meta{color:#aaa;font-size:14px;margin:0}.resume-info{text-align:center}.resume-message{color:#fff;font-size:18px;margin:0 0 12px}.resume-meta{color:#ffa726;font-size:14px;margin:0}.color-choice-intro{color:#fff;font-size:16px;margin:0 0 24px;text-align:center}.color-choices{gap:12px}.color-choice-btn,.color-choices{display:flex;flex-direction:column}.color-choice-btn{align-items:center;background:linear-gradient(135deg,#4caf50,#388e3c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;gap:4px;padding:16px 20px;transition:all .2s ease}.color-choice-btn:hover:not(:disabled){box-shadow:0 4px 12px #4caf5066;transform:translateY(-2px)}.color-choice-btn:disabled{cursor:not-allowed;opacity:.6}.color-choice-btn.opposite{background:linear-gradient(135deg,#2196f3,#1976d2)}.color-choice-btn.opposite:hover:not(:disabled){box-shadow:0 4px 12px #2196f366}.color-choice-btn small{font-size:12px;font-weight:400;opacity:.9}.dialog-actions{justify-content:center;padding:0 24px 24px}.btn-accept,.btn-cancel,.btn-decline{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:16px;font-weight:700;max-width:200px;padding:14px 24px;transition:all .2s ease}.btn-accept{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff}.btn-accept:hover:not(:disabled){box-shadow:0 4px 12px #4caf5066;transform:translateY(-2px)}.btn-accept.resume{background:linear-gradient(135deg,#ffa726,#ff6f00)}.btn-accept.resume:hover:not(:disabled){box-shadow:0 4px 12px #ffa72666}.btn-accept.championship{background:linear-gradient(135deg,gold,orange);color:#000}.btn-accept.championship:hover:not(:disabled){box-shadow:0 4px 12px #ffd70099;transform:translateY(-2px)}.btn-decline{background:linear-gradient(135deg,#f44336,#c62828);color:#fff}.btn-decline:hover:not(:disabled){box-shadow:0 4px 12px #f4433666;transform:translateY(-2px)}.btn-cancel{background:linear-gradient(135deg,#757575,#424242);color:#fff}.btn-cancel:hover:not(:disabled){box-shadow:0 4px 12px #75757566;transform:translateY(-2px)}.btn-accept:disabled,.btn-cancel:disabled,.btn-decline:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:600px){.global-invitation-dialog{max-width:95%}.dialog-header h2{font-size:20px}.invitation-info{flex-direction:column;text-align:center}.inviter-avatar{height:60px;width:60px}.inviter-name{font-size:18px}.invitation-message{font-size:14px}.dialog-actions{flex-direction:column}.btn-accept,.btn-cancel,.btn-decline{max-width:100%}}.app-container .app-header.glass-header{align-items:center!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background:#202225b3!important;border-bottom:1px solid #ffffff14!important;box-shadow:0 2px 10px #0003!important;color:#e5e7eb!important;display:flex!important;flex-shrink:0!important;height:48px!important;justify-content:flex-start!important;max-height:48px!important;padding:.4rem .75rem!important;position:-webkit-sticky!important;position:sticky!important;top:0!important;width:100%!important;z-index:999997!important}.left-section,.right-section{align-items:center;display:flex;gap:1rem}.left-section{gap:1rem;justify-content:flex-start}.left-section,.right-section{align-items:center;display:flex;flex:0 0 auto;height:32px;max-height:32px}.right-section{gap:.5rem;margin-left:auto}.app-container .app-header.glass-header .logo{align-items:center!important;background:url(/static/media/logo.98e4dc3fa6de91c821d5.png) no-repeat 0!important;background-size:contain!important;color:#fff!important;display:inline-block!important;font-size:24px!important;font-weight:700!important;height:32px!important;line-height:32px!important;padding-left:40px!important;text-decoration:none!important;transition:opacity .2s!important;width:64px!important}.app-container .app-header.glass-header .logo:hover{opacity:.8!important}.app-container .app-header.glass-header .logo-image{display:block!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))!important;height:32px!important;width:auto!important}.nav-link{background:none;border:none;border-radius:6px;color:#e5e7eb;cursor:pointer;font-size:.95rem;font-weight:500;padding:.35rem .5rem;text-decoration:none;transition:all .2s}.nav-link:hover{background:#ffffff1a;color:#fff}.nav-link.resume-btn{background:#4caf5033;border:1px solid #4caf504d;color:#4caf50}.nav-link.resume-btn:hover{background:#4caf504d;color:#66bb6a}.nav-link.championship-btn{background:#ffd70026;border:1px solid #ffd7004d;color:gold;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-link.championship-btn:hover{background:#ffd70040;border-color:#ffd70080;color:#ffed4e}.stats-row.compact{align-items:center;display:flex;gap:1rem;height:20px;max-height:28px}@media (max-width:480px){.stats-row.compact{padding-top:3px}}.stat-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;color:#e5e7eb;font-size:.8rem;font-weight:600;gap:.25rem;line-height:1;padding:.2rem .4rem}.stat-item span:first-child{font-size:.85rem;line-height:1}.user-compact{align-items:center;display:flex;gap:.4rem;height:32px;max-height:32px;position:relative}.user-name{align-items:flex-end;color:#e5e7eb;display:flex;flex-direction:column}.user-name span{font-size:.85rem;font-weight:600;line-height:1}.user-name small{color:#9ca3af;font-size:.75rem;font-weight:500;line-height:1}.user-avatar{cursor:pointer;position:relative}.user-avatar img{border:2px solid #7289da;border-radius:50%;cursor:pointer;height:30px;transition:transform .2s,border-color .2s;width:30px}.user-avatar img:hover{border-color:#8ba2e6;transform:scale(1.05)}.dropdown-menu{background:#202225f2;border:1px solid #ffffff1a;border-radius:10px;box-shadow:0 4px 12px #0000004d;display:none;min-width:150px;overflow:hidden;position:absolute;right:0;top:120%;z-index:99999}.dropdown-menu.show{display:block}.dropdown-menu button{background:none;border:none;color:#fff;cursor:pointer;display:block;font-size:.9rem;padding:.6rem 1rem;text-align:left;transition:background .2s;width:100%}.dropdown-menu button:hover{background:#ffffff1a}.dropdown-menu button.logout-btn{border-top:1px solid #ffffff1a;color:#f87171}.dropdown-menu button.logout-btn:hover{background:#f871711a}.auth-button{border:1px solid #0000;border-radius:6px;color:#fff;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.auth-button.login-button{background:#7289da33;border-color:#7289da4d;color:#7289da}.auth-button.login-button:hover{background:#7289da4d;color:#8ba2e6}@media (max-width:768px){.app-header.glass-header{padding:.35rem .75rem}.lobby-container~.app-header.glass-header,.lobby-page .app-header.glass-header,body:has(.lobby-container) .app-header.glass-header{height:40px!important;max-height:40px!important;padding:.25rem .5rem!important}.left-section,.right-section{gap:.5rem;height:28px;max-height:28px}.right-section{margin-left:auto}.left-section{flex:0 0 auto;min-width:-webkit-fit-content;min-width:fit-content}.left-section .logo{font-size:16px!important;height:26px!important;padding-left:32px!important;width:52px!important}.nav-link{font-size:.9rem;padding:.3rem .45rem}.user-name span{font-size:.85rem}.user-name small{font-size:.75rem}.user-avatar img{height:28px;width:28px}.stats-row.compact{gap:.4rem}.stat-item{font-size:.75rem;padding:.2rem .4rem}}@media (max-width:600px){.nav-link{font-size:.85rem;padding:.25rem .4rem}.left-section{flex:0 0 auto}.right-section{gap:.5rem;margin-left:auto}.stats-row.compact{gap:.5rem}.stat-item{font-size:.7rem;padding:.2rem .4rem}.left-section .logo{margin-right:.5rem}}@media (max-width:480px){.app-header.glass-header{padding:.25rem .5rem}.lobby-container~.app-header.glass-header,.lobby-page .app-header.glass-header,body:has(.lobby-container) .app-header.glass-header{padding:.25rem .5rem!important}.user-name{display:none}.stats-row.compact{gap:.4rem}.left-section{flex:0 0 auto;justify-content:flex-start}.right-section{gap:.3rem;margin-left:auto}.nav-link{font-size:.75rem;padding:.2rem .35rem}.stat-item{font-size:.65rem;padding:.2rem .35rem}.left-section .logo{font-size:14px!important;height:20px!important;margin-right:.3rem;padding-left:26px!important;width:40px!important}}.nav-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#202225f2;border-right:1px solid #ffffff1a;box-shadow:4px 0 20px #0000004d;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:280px;z-index:999999}.nav-panel.open{transform:translateX(0)}.nav-panel-header{align-items:center;background:#ffffff0d;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:1.5rem}.nav-user-info{align-items:center;display:flex;gap:1rem}.nav-user-avatar{border:2px solid #7289da;border-radius:50%;height:50px;width:50px}.nav-user-details h3{color:#fff;font-size:1.1rem;font-weight:600;margin:0}.nav-user-details p{color:#9ca3af;font-size:.9rem;margin:0}.nav-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:.5rem;transition:all .2s;width:40px}.nav-close-btn:hover{background:#ffffff1a;color:#fff}.nav-menu{padding:1rem 0}.nav-section{margin-bottom:2rem}.nav-section:last-child{margin-bottom:0}.nav-section h4{color:#9ca3af;font-size:.8rem;font-weight:600;letter-spacing:.05em;margin:0 0 1rem;padding:0 1.5rem;text-transform:uppercase}.nav-item{align-items:center;background:none;border:none;border-left:3px solid #0000;color:#e5e7eb;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.75rem;padding:.875rem 1.5rem;text-align:left;transition:all .2s;width:100%}.nav-item:hover{background:#ffffff1a;border-left-color:#7289da;color:#fff}.nav-item-resume{background:#4caf5033;border-left-color:#4caf5080;color:#4caf50}.nav-item-resume:hover{background:#4caf504d;border-left-color:#4caf50;color:#66bb6a}.nav-item-championship{background:#ffd70026;border-left-color:#ffd70080;color:gold}.nav-item-championship:hover{background:#ffd70040;border-left-color:gold;color:#ffed4e}.nav-item-logout{color:#f87171}.nav-item-logout:hover{background:#f871711a;border-left-color:#f87171;color:#fca5a5}.nav-stats{display:flex;flex-direction:column;gap:.5rem;padding:0 1.5rem 1rem}.nav-stat-item{align-items:center;background:#ffffff0d;border-radius:6px;color:#e5e7eb;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem .75rem}.nav-overlay{animation:fadeIn .3s ease-out;background:#00000080;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:999998}.dropdown-menu{display:none!important}@media (max-width:768px){.nav-panel{max-width:320px;width:80vw}}@media (max-width:480px){.nav-panel{max-width:280px;width:90vw}.nav-panel-header{padding:1rem}.nav-user-avatar{height:40px;width:40px}.nav-user-details h3{font-size:1rem}.nav-user-details p{font-size:.8rem}.nav-item{font-size:.95rem;padding:.75rem 1rem}}.championship-list-container{margin:0 auto;max-width:1200px;padding:20px}.championship-list-header{align-items:center;background:linear-gradient(135deg,#1e1b4b,#4c1d95);border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 10px 25px #0006;display:flex;justify-content:space-between;margin-bottom:32px;overflow:hidden;padding:32px;position:relative}.championship-list-header:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:0}.championship-list-header h1{align-items:center;color:#fff;display:flex;font-family:Georgia,Times New Roman,serif;font-size:2.5rem;font-weight:800;gap:16px;letter-spacing:-.5px;margin:0;text-shadow:0 2px 10px #00000080}.create-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid #fff3;border-radius:10px;box-shadow:0 4px 15px #f59e0b4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;letter-spacing:.5px;padding:14px 28px;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.create-btn:hover{background:linear-gradient(135deg,#fbbf24,#b45309);box-shadow:0 8px 25px #f59e0b80;transform:translateY(-2px) scale(1.02)}.create-btn:active{transform:translateY(1px)}.championship-filters{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.filter-group{flex:1 1;min-width:200px}.filter-input,.filter-select{border:2px solid #e2e8f0;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s ease;width:100%}.filter-input:focus,.filter-select:focus{border-color:#667eea;outline:none}.filter-checkboxes{display:flex;gap:15px}.checkbox-label{display:flex;font-size:14px;gap:6px}.championships-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.championship-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;border-top:4px solid #f59e0b;box-shadow:0 4px 6px -1px #0000000d;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.championship-card:hover{border-top-color:#d97706;box-shadow:0 20px 25px -5px #f59e0b26,0 10px 10px -5px #f59e0b1a;transform:translateY(-8px)}.championship-card .card-header{background:#fff;padding:24px 24px 16px}.championship-name{color:#1e1b4b;font-size:1.35rem;font-weight:800;letter-spacing:-.5px;margin-bottom:8px}.championship-status{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:700;gap:6px;letter-spacing:.05em;padding:6px 12px}.championship-status.in_progress{background:#ecfdf5;border:1px solid #a7f3d0;color:#059669}.championship-status.completed{background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b}.card-stats-grid{grid-gap:12px;background:#fff;border-top:1px dashed #e2e8f0;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);padding:16px 24px 24px}.stat-box{align-items:center;background:#f8fafc;border:1px solid #0000;border-radius:12px;display:flex;flex-direction:column;justify-content:center;padding:12px 8px;text-align:center;transition:all .2s ease}.championship-card:hover .stat-box{background:#fff;border-color:#e2e8f0;box-shadow:0 2px 4px #0000000d}.stat-icon{color:#6366f1;font-size:1.25rem;margin-bottom:6px}.stat-value{color:#1e293b;font-size:.9rem}.stat-label{color:#64748b;font-size:.7rem;font-weight:600;margin-top:2px;text-transform:uppercase}.prize-badge{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fcd34d;border-radius:8px;color:#b45309;display:inline-block;font-weight:700;margin-top:12px;padding:8px 12px}.championship-card.archived{background:#f7fafc;border:1px dashed #cbd5e0;opacity:.85}.championship-card.archived:hover{opacity:1;transform:translateY(-2px)}.championship-card.archived .championship-name{color:#718096}.championship-card.archived .championship-status.archived{background:#e2e8f0;color:#4a5568}.championship-card.archived .detail-label,.championship-card.archived .detail-value{color:#718096}.archived-toggle{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;padding:6px 12px}.archived-toggle input[type=checkbox]:checked{accent-color:#ffc107}.championship-header{align-items:flex-start;justify-content:space-between;margin-bottom:12px}.championship-name{color:#1a202c;font-size:1.1rem;font-weight:700;line-height:1.3;margin:0 0 6px}.championship-meta{gap:8px}.championship-status{display:inline-block;letter-spacing:.3px;text-transform:uppercase}.championship-prize,.championship-status{border-radius:12px;font-size:.7rem;font-weight:600;padding:3px 8px}.championship-prize{background:linear-gradient(135deg,#f6d365,#fda085);color:#fff;white-space:nowrap}.championship-summary{margin-bottom:12px}.summary-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:6px}.summary-row:last-child{margin-bottom:0}.summary-item{border-radius:6px;font-size:.75rem;padding:4px 8px;white-space:nowrap}.summary-icon{font-size:.8rem;line-height:1}.summary-text{color:#374151;font-weight:500}.championship-deadline{background:#f0f9ff;border-left:3px solid #3b82f6;border-radius:6px;margin-bottom:12px;padding:8px 12px}.deadline-label{color:#1f2937;font-size:.8rem;font-weight:500}.urgency{color:#dc2626;font-weight:600}.championship-actions-container{position:absolute;right:12px;top:12px;z-index:10}.actions-backdrop{background:#0000004d;bottom:0;display:none;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:9}.actions-backdrop.visible{display:block;opacity:1}.actions-toggle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 2px 8px #667eea66;cursor:pointer;display:flex;height:40px;justify-content:center;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:40px;z-index:12}.actions-toggle:hover{box-shadow:0 4px 12px #667eea99;transform:scale(1.1)}.toggle-icon{display:inline-block;font-size:1.2rem;transition:transform .3s cubic-bezier(.4,0,.2,1)}.actions-toggle.active .toggle-icon{transform:rotate(90deg)}.actions-panel{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-height:0;max-width:min(300px,calc(100vw - 80px));opacity:0;overflow:hidden;padding:12px;position:absolute;right:0;top:48px;transform:translateY(-10px);transition:all .3s cubic-bezier(.4,0,.2,1);width:-webkit-max-content;width:max-content;z-index:11}.actions-panel.expanded{max-height:500px;opacity:1;transform:translateY(0)}.championship-actions{flex-direction:column;gap:8px}.btn{font-size:.875rem;font-weight:600;justify-content:flex-start;min-height:40px;min-width:-webkit-fit-content;min-width:fit-content;padding:10px 16px;white-space:nowrap;width:auto}.btn .btn-text{color:inherit;flex:none;line-height:1;transition:opacity .2s ease}.btn .btn-icon{align-items:center;display:flex;flex-shrink:0;font-size:1.1rem;height:16px;justify-content:center;width:16px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 8px #667eea4d}.btn-secondary{background:#e2e8f0;color:#1a1a1a}.btn-secondary:hover:not(:disabled){background:#cbd5e0}.btn-success{background:linear-gradient(135deg,#48bb78,#38a169)}.btn-success:hover:not(:disabled){box-shadow:0 4px 8px #48bb784d}.btn-admin{background:linear-gradient(135deg,#ed8936,#dd6b20);color:#fff}.btn-admin:hover:not(:disabled){box-shadow:0 4px 8px #ed89364d;transform:translateY(-1px)}.btn-warning{background:linear-gradient(135deg,#ffc107,#ff9800);color:#1a1a1a}.btn-warning:hover:not(:disabled){box-shadow:0 4px 8px #ffc1074d}.empty-state,.error-state,.loading-state{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.spinner{border:4px solid #e2e8f0;height:40px;margin:0 auto 20px;width:40px}.error-state{color:#e53e3e}.error-state p{font-size:1.1rem;margin-bottom:20px}.error-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:20px}.error-actions .btn{min-width:140px}.empty-state h3{margin-bottom:10px}.empty-state p{color:#718096;margin-bottom:20px}.modal-overlay{background:#00000080}.modal{background:#fff;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:20px 24px}.modal-close,.modal-header{align-items:center;display:flex}.modal-close{background:none;border:2px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:1.5rem;font-weight:600;height:32px;justify-content:center;padding:0;width:32px}.modal-close:hover{background:#f3f4f6;border-color:#9ca3af;color:#1a202c}.modal-content{background:#fff;color:#1a202c;padding:24px}.text-blue-600{color:#3182ce}.bg-blue-100{background-color:#e6f3ff}.text-yellow-600{color:#d69e2e}.bg-yellow-100{background-color:#fffbeb}.text-green-600{color:#38a169}.bg-green-100{background-color:#f0fff4}.text-orange-600{color:#dd6b20}.bg-orange-100{background-color:#fffdf7}.text-gray-600{color:#4a5568}.bg-gray-100{background-color:#f7fafc}.text-red-600{color:#e53e3e}.bg-red-100{background-color:#fff5f5}.create-championship-modal{max-height:90vh;max-width:700px}.progress-steps{background:#f9fafb;border-bottom:1px solid #d1d5db;display:flex;justify-content:space-between;padding:20px 24px}.step{flex:1 1;gap:10px}.step,.step-number{align-items:center;display:flex}.step-number{background:#d1d5db;border:2px solid #9ca3af;border-radius:50%;color:#374151;font-size:.875rem;font-weight:700;height:32px;justify-content:center;width:32px}.step.active .step-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.step.completed .step-number{background:#48bb78;color:#fff}.step-label{color:#374151;font-size:.875rem;font-weight:600}.step.active .step-label{color:#2d3748;font-weight:600}.step.completed .step-label{color:#2d3748}.step-content{background:#fff;color:#1a202c;padding:16px}.step-content h3{color:#1a202c;font-size:1.25rem;font-weight:600;margin:0 0 16px}.form-group{margin-bottom:12px}.form-group label{display:block;font-weight:600;margin-bottom:4px}.form-group label,.form-input{color:#1a202c;font-size:.875rem}.form-input{background-color:#fff;border:2px solid #374151;border-radius:6px;font-weight:500;padding:8px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-input:focus{background-color:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea33;color:#1a202c;outline:none}.form-input[type=date],.form-input[type=datetime-local],.form-input[type=email],.form-input[type=number],.form-input[type=password],.form-input[type=search],.form-input[type=tel],.form-input[type=text],.form-input[type=time],.form-input[type=url],select.form-input,textarea.form-input{background-color:#fff!important;border-color:#374151!important;color:#1a202c!important;font-weight:600!important}select.form-input{cursor:pointer}select.form-input option{background-color:#fff;color:#1a202c;font-weight:600;padding:8px 12px}textarea.form-input{line-height:1.5;min-height:100px;resize:vertical}.form-input[type=datetime-local]::-webkit-datetime-edit-day-field,.form-input[type=datetime-local]::-webkit-datetime-edit-hour-field,.form-input[type=datetime-local]::-webkit-datetime-edit-minute-field,.form-input[type=datetime-local]::-webkit-datetime-edit-month-field,.form-input[type=datetime-local]::-webkit-datetime-edit-text-field,.form-input[type=datetime-local]::-webkit-datetime-edit-year-field{background-color:#fff!important;color:#1a202c!important;font-weight:600!important}.form-input[type=datetime-local]::-webkit-calendar-picker-indicator{background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;padding:2px}.form-input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{background-color:#e5e7eb}.form-input[type=datetime-local]::-moz-datetime-edit-day-field,.form-input[type=datetime-local]::-moz-datetime-edit-hour-field,.form-input[type=datetime-local]::-moz-datetime-edit-minute-field,.form-input[type=datetime-local]::-moz-datetime-edit-month-field,.form-input[type=datetime-local]::-moz-datetime-edit-text-field,.form-input[type=datetime-local]::-moz-datetime-edit-year-field{background-color:#fff!important;color:#1a202c!important;font-weight:600!important}.form-input[type=number]::-webkit-inner-spin-button,.form-input[type=number]::-webkit-outer-spin-button{height:40px;opacity:1}.form-input[type=number]::-moz-number-spin-down,.form-input[type=number]::-moz-number-spin-up{background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px}.form-input::placeholder{color:#374151!important;font-weight:500!important;opacity:1!important}@media (prefers-contrast:high){.form-input{background-color:#fff!important;border-color:#000!important;color:#000!important;font-weight:600!important}.form-input:focus{border-color:#06c!important;box-shadow:0 0 0 2px #06c!important}}.form-input.error{border-color:#ef4444}.form-input.small{width:80px}.form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.error-message{border-left:3px solid #b91c1c;border-radius:4px;color:#b91c1c;display:block;font-size:.75rem;font-weight:700;margin-top:2px;padding:4px 8px}.error-message.global{background:#fef2f2;border:2px solid #fecaca;border-radius:6px;color:#dc2626;font-weight:600;margin-bottom:20px;padding:12px}.form-group small{background:#f9fafb;border-left:2px solid #d1d5db;border-radius:4px;color:#1f2937;display:block;font-size:.75rem;font-weight:600;margin-top:4px;padding:4px 8px}.prizes-list{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:16px}.prize-item{border-bottom:1px solid #e5e7eb;margin-bottom:16px;padding-bottom:16px}.prize-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.checkbox-group{display:flex;flex-direction:column;gap:8px}.checkbox-label{align-items:center;color:#1f2937!important;cursor:pointer;display:flex!important;font-weight:500!important;gap:8px;margin-bottom:0!important}.checkbox-label input[type=checkbox]{margin:0;width:auto}.modal-footer{background:#f9fafb;border-top:1px solid #d1d5db;padding:20px 24px}.step-navigation{display:flex;gap:16px;justify-content:space-between}.btn-danger{background:#ef4444}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-small{min-height:auto;padding:4px 8px}.championship-details-container{margin:0 auto;max-width:1200px;padding:20px}.championship-header{align-items:center;background-color:#fff;background-image:radial-gradient(#e2e8f0 1px,#0000 0);background-size:20px 20px;border-bottom:4px solid #1e1b4b;border-radius:16px;box-shadow:0 10px 15px -3px #0000001a;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:24px;padding:32px;position:relative}.back-btn{align-items:center;background:#0000;border:1px solid #e2e8f0;border-radius:8px;box-shadow:none;color:#64748b;display:inline-flex;font-size:.875rem;font-weight:600;gap:8px;min-width:-webkit-fit-content;min-width:fit-content;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.back-btn:after{content:none!important}.back-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#1e1b4b;transform:translateX(-3px)}.championship-title-section{flex:1 1;min-width:300px}.championship-title{color:#1a202c;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 12px}.championship-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.participant-count{background:#f3f4f6;border-radius:20px;color:#374151;font-size:.75rem;font-weight:600;padding:4px 10px}.championship-actions{display:flex;flex-wrap:wrap;gap:12px}.warning-message{background:#fef3c7;border:1px solid #fde68a;border-radius:8px;color:#d97706;font-size:.875rem;margin-bottom:20px;padding:12px 16px}.championship-tabs{box-shadow:0 2px 12px #0000001a;margin-bottom:0;overflow:hidden}.tab{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;border-radius:8px 8px 0 0;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-size:.875rem;font-weight:500;gap:6px;justify-content:center;min-width:120px;padding:16px 20px;position:relative;transition:all .2s ease;z-index:1}.tab span{font-size:1rem;line-height:1}.tab:hover:not(:disabled){background:#ffffff80;color:#1e293b;transform:translateY(-1px)}.tab.active{background:#fff!important;border-bottom:3px solid #7c3aed;box-shadow:0 -2px 5px #0000000d;color:#1e293b!important;font-weight:700;transform:translateY(-1px);z-index:2}.tab:disabled{cursor:not-allowed;opacity:.5}.tab-content{background:#fff;border-radius:0 0 12px 12px;box-shadow:0 2px 12px #0000001a}.championship-overview{padding:24px}.overview-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:24px}.overview-section{background:#f8fafc;border-left:4px solid #667eea;border-radius:8px;padding:20px}.overview-section h3{color:#1a202c;font-size:1.125rem;font-weight:600;margin:0 0 16px}.overview-section p{color:#4b5563;line-height:1.6;margin:0}.format-details,.prize-breakdown,.schedule-details{display:flex;flex-direction:column;gap:12px}.prize-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:12px;padding:12px}.prize-position{background:#667eea;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;min-width:40px;padding:4px 8px;text-align:center}.prize-amount{color:#059669;font-size:1rem;font-weight:600}.prize-desc{color:#6b7280;font-size:.875rem}.total-prize{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:6px;color:#1f2937;font-size:1rem;padding:12px;text-align:center}.progress-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;margin-top:24px;padding:24px}.progress-section h3{font-size:1.25rem;font-weight:600;margin:0 0 16px}.progress-bar-container{display:flex;flex-direction:column;gap:8px}.progress-info{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;opacity:.9}.progress-bar{background:#fff3;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#10b981,#059669);border-radius:4px;height:100%;transition:width .3s ease}.championship-matches{padding:24px}.matches-header{gap:16px;margin-bottom:24px}.matches-header h2{color:#1a202c;margin:0}.header-right{gap:.5rem}.header-right,.matches-filters{align-items:center;display:flex}.matches-filters{gap:12px}.matches-content{gap:32px}.matches-content,.round-section{display:flex;flex-direction:column}.round-section{gap:16px}.round-title{border-bottom:2px solid #e5e7eb;color:#374151;margin:0;padding-bottom:8px}.round-section button.btn-info.btn-small{box-sizing:border-box;margin-top:8px;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.matches-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));max-width:100%;overflow-x:hidden;width:100%}.match-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;max-width:100%;overflow:hidden;padding:20px;transition:all .2s ease;width:100%}.match-card,.match-card *{box-sizing:border-box}.match-card .match-actions,.match-card .match-details,.match-card .match-header{max-width:100%;overflow:hidden}.match-card[class*=border-l-4]{box-sizing:border-box}.match-card.border-l-4{border-left-width:4px;box-sizing:border-box}.match-card:hover{box-shadow:0 4px 12px #0000001a}.match-header{align-items:flex-start;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px;max-width:100%;width:100%}.match-players{align-items:center;display:flex;flex:1 1;gap:8px}.player-info{flex:1 1;min-width:80px;text-align:center}.player-name{margin-bottom:4px}.player-name.current-user{color:#667eea}.player-rating{font-size:.875rem}.you-indicator{color:#667eea}.vs-separator{color:#9ca3af;font-size:.875rem;font-weight:600}.match-meta{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:space-between;max-width:100%;width:100%}.match-status{border-radius:12px}.round-info{color:#6b7280;font-size:.75rem}.match-details{background:#f8fafc;border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;margin-bottom:16px;max-width:100%;overflow:hidden;padding:12px;width:100%}.result-label,.schedule-label{color:#6b7280;font-size:.75rem;font-weight:500}.result-value,.schedule-time{color:#1f2937;font-size:.875rem;font-weight:600}.game-link{margin-top:8px}.match-actions{box-sizing:border-box;gap:12px;max-width:100%;width:100%}.action-message{color:#6b7280;font-size:.875rem;font-style:italic}.championship-standings{padding:24px}.standings-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.standings-header h2{color:#1a202c;margin:0}.standings-controls{align-items:center;display:flex;gap:16px}.sort-controls{align-items:center;display:flex;gap:8px}.sort-controls label{color:#374151;font-size:.875rem;font-weight:500}.standings-table-container{margin-bottom:32px;overflow-x:auto}.standings-table{border:1px solid #e5e7eb;border-radius:12px;min-width:800px;overflow:hidden}.standings-header-row,.standings-row{grid-gap:1px;background:#f3f4f6;display:grid;gap:1px;grid-template-columns:80px 1fr 100px 80px 100px 80px repeat(3,100px)}.standings-header-row{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.standings-row{align-items:center;background:#fff;transition:background-color .2s ease}.standings-row:hover{background:#f8fafc}.standings-row.current-user-row{background:#f0f4ff;border:2px solid #667eea;margin:0 -2px}.games-cell,.performance-cell,.player-cell,.rank-cell,.score-cell,.streak-cell,.tiebreak-cell{align-items:center;display:flex;font-size:.875rem;justify-content:center;padding:12px 8px;text-align:center}.rank-cell{justify-content:flex-start;padding-left:16px}.rank-number{color:#1f2937;font-size:1.125rem;font-weight:700}.medal{font-size:1rem;margin-left:4px}.player-cell{justify-content:flex-start;padding-left:16px}.player-info{align-items:flex-start}.player-name{color:#1f2937;margin-bottom:2px}.score-cell{flex-direction:column;gap:2px}.score-value{color:#059669;font-size:1.125rem;font-weight:700}.score-breakdown{color:#6b7280;font-size:.75rem}.performance-value{color:#1f2937;font-weight:600}.performance-value.perfect{color:#059669}.streak-value{color:#1f2937;font-weight:600}.streak-value.hot-streak{color:#dc2626}.streak-value.cold-streak{color:#3b82f6}.standings-legend{background:#f8fafc;border-radius:8px;margin-bottom:24px;padding:20px}.standings-legend h4{color:#374151;font-size:1rem;margin:0 0 12px}.legend-items{display:flex;flex-wrap:wrap;gap:16px}.legend-item{align-items:center;display:flex;gap:6px}.legend-symbol{color:#374151;font-weight:600}.legend-desc{color:#6b7280;font-size:.875rem}.tiebreaker-rules{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:8px;margin-bottom:24px;padding:20px}.tiebreaker-rules h4{color:#0369a1;font-size:1rem;margin:0 0 12px}.tiebreaker-rules>p{color:#374151;font-size:.875rem;margin:0 0 16px}.tiebreaker-list{display:flex;flex-direction:column;gap:12px}.tiebreaker-item{align-items:flex-start;background:#fff;border:1px solid #dbeafe;border-radius:6px;box-shadow:0 1px 3px #0000000d;display:flex;gap:12px;padding:12px}.tiebreaker-rank{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:4px;color:#fff;flex-shrink:0;font-size:.75rem;font-weight:600;min-width:40px;padding:4px 8px;text-align:center}.tiebreaker-details{flex:1 1}.tiebreaker-details strong{color:#1e40af;display:block;font-size:.875rem;margin-bottom:2px}.tiebreaker-desc{color:#64748b;font-size:.8rem;line-height:1.4}.tiebreaker-note{background:#f8fafc;border-left:3px solid #3b82f6;border-radius:4px;color:#475569;font-size:.8rem;margin-top:16px;padding:12px}.tiebreaker-note small{display:block;line-height:1.4}.standings-summary{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:12px;padding:24px}.standings-summary h3{color:#1a202c;font-size:1.125rem;margin:0 0 16px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-item{background:#fff;border-radius:8px;padding:16px;text-align:center}.stat-label{font-size:.75rem;margin-bottom:4px}.championship-participants{padding:24px}.participants-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.participants-header h2{color:#1a202c;margin:0}.participants-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.search-box{flex:1 1;min-width:200px}.participants-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-card{align-items:center;background:#fff;border:1px solid #e5e7eb;display:flex;gap:16px}.stat-icon{font-size:2rem}.stat-content{display:flex;flex-direction:column}.stat-value{color:#1f2937;font-size:1.5rem;font-weight:700;line-height:1}.stat-label{color:#6b7280;font-size:.875rem;margin-top:4px}.participants-list{margin-bottom:24px}.participants-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.participant-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;position:relative;transition:all .2s ease}.participant-card:hover{box-shadow:0 4px 12px #0000001a}.participant-card.current-user{background:#f0f4ff;border-color:#667eea}.participant-avatar{height:60px;margin:0 auto 12px;position:relative;width:60px}.avatar-image{border-radius:50%;height:100%;object-fit:cover;width:100%}.you-badge{background:#667eea;border-radius:8px;color:#fff;font-size:.625rem;font-weight:600;padding:2px 6px;position:absolute;right:-4px;top:-4px}.participant-info{margin-bottom:12px;text-align:center}.participant-name{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 4px}.participant-rating{color:#6b7280;font-size:.875rem}.participant-meta{border-top:1px solid #f3f4f6;display:flex;flex-direction:column;gap:8px;padding-top:12px}.payment-info,.registration-info,.seed-info{align-items:center;display:flex;font-size:.75rem;justify-content:space-between}.registration-label,.seed-label{color:#6b7280}.registration-date{color:#1f2937;font-weight:500}.entry-fee{color:#059669;font-weight:600}.payment-badge{border-radius:4px;font-size:.625rem;font-weight:600;padding:2px 6px;text-transform:uppercase}.payment-badge.success{background:#d1fae5;color:#065f46}.payment-badge.warning{background:#fef3c7;color:#92400e}.payment-badge.error{background:#fee2e2;color:#991b1b}.payment-badge.info{background:#dbeafe;color:#1e40af}.seed-number{color:#667eea;font-weight:600}.participants-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.tournament-admin-dashboard{padding:20px}.admin-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:24px}.admin-title-section{flex:1 1;min-width:300px}.admin-title-section h1{color:#1a202c;font-size:2rem;font-weight:700;margin:0 0 12px}.admin-championship-info{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.championship-name{color:#374151;font-size:1.125rem;font-weight:600}.status-badge{border-radius:20px;font-size:.75rem;font-weight:600;padding:4px 10px;text-transform:uppercase}.admin-tabs{background:#fff;border-radius:12px 12px 0 0;box-shadow:0 2px 12px #0000001a;display:flex;margin-bottom:0;overflow:hidden}.admin-tab{background:none;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;min-width:140px;padding:16px 20px;transition:all .2s ease}.admin-tab:hover{background:#f9fafb;color:#374151}.admin-tab.active{background:#f0f4ff;border-bottom-color:#667eea;color:#667eea}.admin-tab-content{background:#fff;border-radius:0 0 12px 12px;box-shadow:0 2px 12px #0000001a;min-height:500px;padding:24px}.admin-overview{display:flex;flex-direction:column;gap:32px}.admin-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.admin-stat-card{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;box-shadow:0 2px 8px #667eea4d;color:#fff;display:flex;gap:12px;padding:16px;transition:transform .2s ease}.admin-stat-card:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.admin-stat-card .stat-icon{flex-shrink:0;font-size:1.75rem;opacity:.9}.admin-stat-card .stat-content{flex:1 1;min-width:0}.admin-stat-card .stat-value{color:#fff;font-size:1.25rem;font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-stat-card .stat-label{color:#ffffffe6;font-size:.75rem;line-height:1.3;margin-top:2px}.admin-actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.admin-action-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:24px;transition:all .2s ease}.admin-action-card:hover{box-shadow:0 4px 12px #0000001a}.admin-action-card h3{color:#1a202c;font-size:1.125rem;font-weight:600;margin:0 0 12px}.admin-action-card p{color:#6b7280;line-height:1.6;margin:0 0 20px}.admin-actions{display:flex;flex-wrap:wrap;gap:12px}.admin-progress-section{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:12px;padding:32px}.admin-progress-section h3{color:#1a202c;font-size:1.25rem;font-weight:600;margin:0 0 20px}.progress-details{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px}.progress-item{display:flex;flex-direction:column;gap:4px}.progress-label{color:#6b7280;font-size:.875rem;font-weight:500}.progress-value{color:#1f2937;font-size:1rem;font-weight:600}.pairing-manager-modal{max-height:90vh;max-width:900px;overflow-y:auto}.pairing-method-section{border-bottom:1px solid #e5e7eb;margin-bottom:24px;padding-bottom:24px}.pairing-methods{display:flex;flex-direction:column;gap:12px;margin-top:16px}.radio-label{align-items:flex-start;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.radio-label:hover{background:#f0f4ff;border-color:#667eea}.radio-label input[type=radio]{margin:2px 0 0}.radio-content{flex:1 1}.radio-title{color:#1f2937;font-weight:600;margin-bottom:4px}.radio-desc{color:#6b7280;font-size:.875rem}.round-selection{border-bottom:1px solid #e5e7eb;margin-bottom:24px;padding-bottom:24px}.round-selection h3{color:#1a202c;margin:0 0 16px}.round-controls{align-items:center;gap:12px}.round-controls label{color:#374151;font-weight:500}.existing-pairings,.generated-pairings{margin-bottom:24px}.existing-pairings h3,.generated-pairings h3{color:#1a202c;margin:0 0 16px}.pairings-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.pairing-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s ease}.pairing-card:hover{box-shadow:0 4px 12px #0000001a}.pairing-card.existing{border-left:4px solid #667eea}.pairing-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.board-number{color:#1f2937;font-weight:600}.bye-badge{background:#fef3c7;color:#92400e;font-size:.75rem;text-transform:uppercase}.bye-badge,.match-status{border-radius:4px;font-weight:600;padding:4px 8px}.pairing-players{gap:16px;margin-bottom:16px}.pairing-players,.player-slot{align-items:center;display:flex}.player-slot{flex:1 1;flex-direction:column;position:relative;text-align:center}.player-slot.white{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:8px;padding:12px}.player-slot.black{background:linear-gradient(135deg,#1f2937,#111827);border-radius:8px;color:#fff;padding:12px}.player-info{align-items:center;display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.player-avatar{border-radius:50%;height:50px;object-fit:cover;width:50px}.player-name{font-size:.875rem;font-weight:600}.player-slot.black .player-name{color:#fff}.player-rating{color:#6b7280}.player-slot.black .player-rating{color:#d1d5db}.player-color{font-size:.75rem;font-weight:500;text-transform:uppercase}.player-slot.black .player-color{color:#9ca3af}.vs-divider{color:#6b7280;font-size:.875rem;font-weight:600}.bye-indicator{align-items:center;display:flex;flex-direction:column;gap:8px;padding:16px}.bye-icon{font-size:2rem}.bye-text{color:#6b7280;font-weight:600;text-align:center}.pairing-actions{display:flex;gap:8px;justify-content:center}.pairing-schedule{margin-top:8px;text-align:center}.pairing-summary{background:#f8fafc;border-radius:8px;margin-top:16px;padding:16px}.summary-item{align-items:center;justify-content:space-between;padding:4px 0}.no-pairings{color:#6b7280;padding:60px 20px;text-align:center}.no-pairings-icon{font-size:4rem;margin-bottom:16px;opacity:.5}.no-pairings h3{color:#374151;margin:0 0 8px}.tournament-settings-modal{max-height:90vh;max-width:800px;overflow-y:auto}.settings-nav{background:#f8fafc;border-radius:8px;display:flex;gap:4px;margin-bottom:24px;padding:4px}.settings-nav-btn{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:12px 16px;transition:all .2s ease}.settings-nav-btn:hover{background:#fff;color:#374151}.settings-nav-btn.active{background:#fff;box-shadow:0 2px 4px #0000001a;color:#667eea}.settings-content{min-height:400px}.settings-section{margin-bottom:32px}.settings-section h4{border-bottom:2px solid #e5e7eb;color:#1a202c;font-size:1.125rem;margin:0 0 20px;padding-bottom:8px}.tiebreak-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (max-width:1024px){.matches-grid{gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.match-card{padding:18px}.match-card,.match-card[class*=border-l-4]{box-sizing:border-box}.player-info{min-width:70px}.match-players{gap:6px}.match-details,.match-header{box-sizing:border-box;max-width:100%;width:100%}.match-details{overflow:hidden}.match-actions{box-sizing:border-box;max-width:100%;width:100%}}@media (max-width:768px){.championship-list-container{padding:15px}.championship-list-header{align-items:stretch;flex-direction:column;gap:15px}.championship-list-header h1{font-size:2rem}.championship-filters{flex-direction:column;gap:15px}.filter-checkboxes{flex-direction:column;gap:10px}.championships-grid{gap:20px;grid-template-columns:1fr}.championship-card{padding:16px}.championship-header{gap:8px}.championship-name{font-size:1rem}.championship-meta{gap:6px}.championship-prize,.championship-status{font-size:.65rem;padding:2px 6px}.summary-row{gap:6px}.summary-item{font-size:.7rem;padding:3px 6px}.summary-icon{font-size:.75rem}.championship-deadline{padding:6px 8px}.deadline-label{font-size:.75rem}.championship-actions{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:4px}.championship-actions::-webkit-scrollbar{height:4px}.championship-actions::-webkit-scrollbar-track{background:#f1f1f1;border-radius:2px}.championship-actions::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:2px}.championship-actions-container{right:8px;top:8px}.actions-toggle{height:36px;width:36px}.toggle-icon{font-size:1rem}.actions-panel{max-width:min(280px,calc(100vw - 60px));top:44px;width:-webkit-max-content;width:max-content}.actions-backdrop.visible{display:block}.actions-panel .btn{align-items:center!important;display:flex!important;flex-direction:row!important;flex-shrink:0;font-size:.9rem;gap:8px!important;justify-content:flex-start!important;line-height:1.3;min-width:-webkit-fit-content;min-width:fit-content;padding:14px 16px;text-align:left!important;width:auto}.actions-panel .btn .btn-icon{align-items:center!important;display:inline-flex!important;flex-shrink:0!important;font-size:1.1rem;height:20px;justify-content:center!important;margin:0!important;min-width:20px;order:1!important;width:20px}.actions-panel .btn .btn-text{color:#1a1a1a!important;display:inline-block!important;flex:1 1!important;line-height:1.2;order:2!important;text-align:left!important;white-space:nowrap}.btn .btn-text{display:none}.actions-panel .btn .btn-text,.championship-actions .btn .btn-text,.create-btn .btn-text{display:block}.create-btn{min-width:auto;padding:10px 16px}.championship-actions .btn{font-size:.75rem;min-width:auto;padding:8px 12px}.btn .btn-icon{display:inline-flex!important;flex-shrink:0!important;font-size:1.1rem;height:20px!important;justify-content:center!important;margin:0!important;min-width:20px!important;order:1!important;width:20px!important}.btn,.btn .btn-icon{align-items:center!important}.btn{display:flex!important;gap:8px!important;justify-content:flex-start!important}.btn .btn-text{color:inherit!important;display:inline-block!important;flex:1 1!important;order:2!important;text-align:left!important;white-space:nowrap}.back-btn{font-size:.8rem!important;min-width:-webkit-fit-content!important;min-width:fit-content!important;padding:8px 14px!important}.btn[data-tooltip]:hover:after{background:#000000e6;border-radius:4px;bottom:100%;color:#fff;content:attr(data-tooltip);font-size:.75rem;left:50%;margin-bottom:4px;padding:4px 8px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}.championship-details-container{padding:15px}.championship-header{flex-direction:column;gap:15px}.championship-title{font-size:1.5rem}.championship-actions,.championship-meta{justify-content:center}.championship-actions .btn{justify-content:flex-start!important;text-align:left!important}.championship-tabs{flex-wrap:wrap}.tab{font-size:.8rem;min-width:100px;padding:12px 16px}.overview-grid{gap:16px;grid-template-columns:1fr}.admin-stats-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.admin-stat-card{gap:8px;padding:12px}.admin-stat-card .stat-icon{font-size:1.5rem}.admin-stat-card .stat-value{font-size:1.1rem}.admin-stat-card .stat-label{font-size:.7rem}.admin-actions-grid{gap:16px;grid-template-columns:1fr}.admin-tab{font-size:.8rem;min-width:120px;padding:12px 16px}.matches-header{flex-direction:column;gap:16px}.matches-filters{justify-content:space-between;width:100%}.match-card{margin:0;padding:12px}.match-card,.match-card[class*=border-l-4]{box-sizing:border-box}.matches-grid{gap:12px;grid-template-columns:1fr}.match-header{box-sizing:border-box;flex-direction:column;gap:8px;max-width:100%;width:100%}.match-players{gap:4px;justify-content:space-between;width:100%}.player-info{flex:1 1;min-width:60px;padding:0 4px}.player-name{font-size:.85rem;line-height:1.2;margin-bottom:2px;max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-name.current-user{color:#fff!important}.player-rating{font-size:.75rem;max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.participant-card.current-user .player-name{color:#fff!important}.vs-separator{font-size:.75rem;padding:0 4px}.match-details{box-sizing:border-box;margin-bottom:8px;max-width:100%;overflow:hidden;padding:8px;width:100%}.match-meta{flex-wrap:wrap;gap:6px}.match-actions{box-sizing:border-box;gap:8px;max-width:100%;width:100%}.match-actions .btn{flex:0 0 auto;font-size:.8rem;max-width:100%;min-width:-webkit-fit-content;min-width:fit-content;padding:6px 12px}.round-section button.btn-info.btn-small{box-sizing:border-box;font-size:.85rem;-webkit-hyphens:auto;hyphens:auto;max-width:100%;padding:8px 12px;text-align:center;width:100%;word-break:break-word}.standings-header{flex-direction:column;gap:16px}.standings-controls{flex-direction:column;gap:12px;width:100%}.participants-header{flex-direction:column;gap:16px}.participants-filters{flex-direction:column;gap:12px;width:100%}.pairings-grid,.participants-grid{grid-template-columns:1fr}.create-championship-modal{margin:10px;max-width:95%}.progress-steps{gap:8px;padding:16px}.step-label{font-size:.75rem}.form-row{gap:12px;grid-template-columns:1fr}.prize-item .form-row{grid-template-columns:1fr 1fr}.step-navigation{flex-direction:column}.modal{margin:10px;max-width:95%}.modal-header{padding:16px 20px}.modal-content{padding:20px}.modal-footer{padding:16px 20px}}@media (max-width:480px){.championship-list-container{padding:10px}.championship-list-header h1{font-size:1.75rem}.championship-card{padding:16px}.championship-name{font-size:1.1rem}.championship-actions{gap:6px}.championship-actions .btn{justify-content:flex-start!important;text-align:left!important}.btn{font-size:.8rem}.btn .btn-icon{align-items:center!important;display:inline-flex!important;flex-shrink:0!important;font-size:.95rem;height:18px!important;justify-content:center!important;margin:0!important;min-width:18px!important;order:1!important;width:18px!important}.championship-actions .btn .btn-text,.create-btn .btn-text{display:block}.championship-actions .btn .btn-icon{display:flex}.actions-panel .btn,.championship-actions .btn,.create-btn{align-items:center!important;display:flex!important;flex-direction:row!important;gap:8px!important;justify-content:flex-start!important;min-width:auto}.actions-panel .btn .btn-icon,.championship-actions .btn .btn-icon,.create-btn .btn-icon{align-items:center!important;display:inline-flex!important;flex-shrink:0!important;height:20px!important;justify-content:center!important;margin:0!important;min-width:20px!important;order:1!important;width:20px!important}.actions-panel .btn .btn-text,.championship-actions .btn .btn-text,.create-btn .btn-text{color:#1a1a1a!important;display:inline-block!important;flex:1 1!important;order:2!important;text-align:left!important}.championship-details-container{padding:10px}.championship-title{font-size:1.25rem}.championship-meta{flex-direction:column;gap:8px}.championship-actions{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:4px}.championship-actions::-webkit-scrollbar{height:4px}.championship-actions::-webkit-scrollbar-track{background:#f1f1f1;border-radius:2px}.championship-actions::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:2px}.btn{align-items:center!important;display:flex!important;flex-shrink:0;font-size:.7rem;gap:6px!important;justify-content:flex-start!important;min-height:40px;min-width:-webkit-fit-content;min-width:fit-content;padding:8px 12px;position:relative;white-space:nowrap;width:auto}.back-btn{font-size:.75rem!important;min-width:-webkit-fit-content!important;min-width:fit-content!important;padding:7px 12px!important}.tab{font-size:.75rem;min-width:80px;padding:10px 12px}.overview-section{padding:16px}.overview-section h3{font-size:1rem}.admin-stats-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.admin-stat-card{flex-direction:column;gap:6px;padding:10px;text-align:center}.admin-stat-card .stat-icon{font-size:1.5rem}.admin-stat-card .stat-value{font-size:1rem}.admin-stat-card .stat-label{font-size:.65rem;margin-top:2px}.admin-tab{font-size:.75rem;min-width:100px;padding:10px 12px}.matches-grid{gap:12px}.match-card{padding:12px}.match-players{gap:12px}.player-info{min-width:80px}.player-name{font-size:.875rem}.player-rating{font-size:.75rem}.standings-table-container{margin-bottom:20px}.participants-stats{gap:12px;grid-template-columns:1fr}.stat-card{padding:16px}.participant-card{padding:12px}.participant-avatar{height:50px;width:50px}.modal{margin:5px;max-height:95vh;width:95%}.modal-header{padding:12px 16px}.modal-header h2{font-size:1.25rem}.modal-content{padding:16px}.modal-footer{padding:12px 16px}.step-content{padding:12px}.progress-steps{gap:6px;padding:12px}.step{gap:6px}.step-number{font-size:.625rem;height:24px;width:24px}.step-label{display:none;font-size:.625rem}.form-group{margin-bottom:10px}.form-group label,.form-input{font-size:.8rem}.form-input{padding:8px 10px}.step-navigation{gap:8px}.pairings-grid{gap:12px}.pairing-card{padding:16px}.pairing-players{gap:12px}.player-slot{padding:8px}.player-avatar{height:40px;width:40px}.player-name{font-size:.75rem}.player-rating{font-size:.625rem}.settings-nav{flex-wrap:wrap;gap:2px}.settings-nav-btn{font-size:.75rem;min-width:80px;padding:8px 12px}}@media (max-width:768px){body,html{-webkit-overflow-scrolling:touch;height:100%;overflow-x:hidden}.championship-list-container{-webkit-overflow-scrolling:touch;overflow-y:auto}.tiebreaker-rules{padding:16px}.tiebreaker-item{align-items:flex-start;flex-direction:column;gap:8px;padding:8px}.tiebreaker-rank{align-self:flex-start;margin-bottom:4px}.tiebreaker-list{gap:8px}.btn,.create-btn,.tab{min-height:44px}.championship-card{margin-bottom:16px}.detail-item{padding:8px 0}.championships-grid{padding-bottom:20px}.modal-overlay{padding:10px}.modal,.modal-overlay{-webkit-overflow-scrolling:touch;overflow-y:auto}.modal{max-height:95vh}.form-input{font-size:16px;min-height:44px}.checkbox-label,.radio-label{align-items:center;display:flex;min-height:44px}.championship-details-container,.championship-matches,.championship-overview,.championship-participants,.championship-standings,.tournament-admin-dashboard{-webkit-overflow-scrolling:touch;overflow-x:hidden}.standings-table{font-size:.75rem}.standings-header-row,.standings-row{gap:0;grid-template-columns:60px 1fr 60px 40px 60px 40px repeat(3,60px)}.games-cell,.performance-cell,.player-cell,.rank-cell,.score-cell,.streak-cell,.tiebreak-cell{font-size:.7rem;padding:8px 4px}.participant-card{padding:12px}.participant-avatar{height:50px;width:50px}.match-card{padding:12px}.player-info{min-width:80px}.pairing-card{padding:12px}.player-slot{padding:8px}.player-avatar{height:40px;width:40px}.admin-action-card,.admin-stat-card{padding:16px}.settings-nav{flex-wrap:wrap}.settings-nav-btn{font-size:.75rem;min-width:100px}.step-number{font-size:.75rem;height:28px;width:28px}.step-label{font-size:.7rem}.filter-group{min-width:150px}.filter-input,.filter-select{font-size:16px;min-height:44px}.search-box{min-width:150px}.admin-actions,.match-actions,.participants-actions{flex-wrap:wrap;gap:8px}.championship-status,.match-status,.payment-badge,.status-badge{font-size:.625rem;padding:2px 6px}.championship-prize{font-size:.8rem;padding:4px 8px}.date-value,.result-value,.schedule-time{font-size:.75rem}.participant-count,.round-info{font-size:.625rem}}@media (max-width:360px){.championship-list-container{padding:8px}.championship-list-header h1{font-size:1.5rem}.championship-card{padding:12px}.championship-name{font-size:1rem}.btn{display:flex!important;font-size:.75rem;justify-content:flex-start!important;min-width:-webkit-fit-content;min-width:fit-content;padding:7px 10px;text-align:left!important;white-space:nowrap}.btn,.btn .btn-icon{align-items:center!important}.btn .btn-icon{display:inline-flex!important;flex-shrink:0!important;font-size:.85rem;height:16px!important;justify-content:center!important;margin:0!important;min-width:16px!important;order:1!important;width:16px!important}.btn .btn-text{color:inherit!important;display:inline-block!important;flex:1 1!important;order:2!important;text-align:left!important}.back-btn{font-size:.7rem!important;min-width:-webkit-fit-content!important;min-width:fit-content!important;padding:6px 10px!important}.championship-actions{gap:4px}.detail-label,.detail-value{font-size:.75rem}.championship-title{font-size:1.125rem}.tab{font-size:.7rem;min-width:70px;padding:8px 10px}.admin-stats-grid{gap:6px;grid-template-columns:repeat(2,1fr)}.admin-stat-card{flex-direction:column;gap:4px;padding:8px;text-align:center}.admin-stat-card .stat-icon{font-size:1.25rem}.admin-stat-card .stat-value{font-size:.9rem}.admin-stat-card .stat-label{font-size:.6rem}.admin-tab{font-size:.7rem;min-width:80px;padding:8px 10px}.match-card{padding:8px}.player-info{min-width:60px}.player-name{font-size:.75rem}.player-rating{font-size:.625rem}.participant-card{padding:8px}.participant-avatar{height:40px;width:40px}.participant-name{font-size:.875rem}.participant-rating{font-size:.75rem}.modal{margin:2px;width:98%}.modal-header{padding:8px 12px}.modal-content{padding:12px}.modal-footer{padding:8px 12px}.step-content{padding:8px}.progress-steps{gap:4px;padding:8px}.step-number{font-size:.625rem;height:24px;width:24px}.step-label{font-size:.6rem}.form-group{margin-bottom:8px}.form-group label,.form-input{font-size:.75rem}.form-input{min-height:36px;padding:6px 8px}.step-navigation{gap:6px}.pairing-card{padding:8px}.player-slot{padding:6px}.player-avatar{height:32px;width:32px}.player-name{font-size:.625rem}.player-rating{font-size:.5rem}.settings-nav-btn{font-size:.625rem;min-width:70px;padding:6px 8px}}@media (max-width:768px){.actions-panel .btn,.btn,.championship-actions .btn,.create-btn{align-items:center!important;display:flex!important;flex-direction:row!important;gap:8px!important;justify-content:flex-start!important;text-align:left!important}.actions-panel .btn .btn-icon,.btn .btn-icon,.championship-actions .btn .btn-icon,.create-btn .btn-icon{align-items:center!important;display:inline-flex!important;flex-shrink:0!important;height:20px!important;justify-content:center!important;margin:0!important;min-width:20px!important;order:1!important;width:20px!important}.actions-panel .btn .btn-text,.btn .btn-text,.championship-actions .btn .btn-text,.create-btn .btn-text{color:#1a1a1a!important;display:inline-block!important;flex:1 1!important;order:2!important;text-align:left!important;white-space:nowrap!important}}.payment-championship-info{background:#f7fafc;border-radius:8px;margin-bottom:20px;padding:20px}.payment-championship-info h3{color:#2d3748;font-size:1.25rem;margin:0 0 15px}.payment-details{display:flex;flex-direction:column;gap:10px}.payment-row{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:8px 0}.payment-row:last-child{border-bottom:none}.payment-label{color:#4a5568;font-weight:600}.payment-value{color:#2d3748;font-size:1.1rem;font-weight:700}.payment-value.mock-text{background:#edf2f7;border-radius:4px;font-family:Courier New,monospace;font-size:.9rem;padding:4px 8px}.payment-steps{align-items:center;background:#f7fafc;border-radius:8px;display:flex;justify-content:center;margin-bottom:20px;min-height:200px;padding:30px}.payment-step{text-align:center;width:100%}.payment-step p{color:#4a5568;margin:10px 0}.payment-note{color:#718096;font-size:.9rem;font-style:italic}.payment-success{color:#22543d}.payment-error{color:#742a2a}.error-icon,.success-icon{font-size:4rem;margin-bottom:15px}.payment-success h3{color:#22543d;margin:15px 0}.payment-error h3{color:#742a2a;margin:15px 0}.payment-error p{color:#742a2a;margin:10px 0 20px}.mock-payment-info{background:#fef5e7;border-left:4px solid #f39c12;border-radius:4px;margin-top:20px;padding:15px}.mock-payment-info p{color:#856404;font-size:.9rem;margin:5px 0}.mock-payment-info strong{font-weight:700}@keyframes slideInRight{0%{opacity:0;transform:translateX(400px)}to{opacity:1;transform:translateX(0)}}@media (max-width:480px){.match-card{padding:10px}.match-card,.match-card[class*=border-l-4]{box-sizing:border-box}.matches-grid{gap:10px}.match-header{box-sizing:border-box;gap:6px;max-width:100%;width:100%}.match-players{gap:2px}.player-info{min-width:50px;padding:0 2px}.player-name{font-size:.8rem;max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-name.current-user{color:#fff!important}.player-rating{font-size:.7rem;max-width:10ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vs-separator{font-size:.7rem;padding:0 2px}.match-details{margin-bottom:6px;overflow:hidden;padding:6px}.match-actions,.match-details{box-sizing:border-box;max-width:100%;width:100%}.match-actions{gap:6px}.match-actions .btn{flex:0 0 auto;font-size:.75rem;max-width:100%;min-width:-webkit-fit-content;min-width:fit-content;padding:5px 10px}.round-section button.btn-info.btn-small{box-sizing:border-box;font-size:.8rem;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;max-width:100%;padding:6px 8px;text-align:center;width:100%;word-break:break-word}.match-meta{font-size:.7rem;gap:4px;justify-content:space-between}.match-meta .match-status{font-size:.65rem;padding:2px 6px}.match-meta .round-info{font-size:.65rem}}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirmation-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;overflow:hidden;padding:0;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:2px solid #f0f0f0;padding:24px;text-align:center}.modal-icon{font-size:3rem;margin-bottom:12px}.modal-header h2{color:#1a202c;font-size:1.5rem;font-weight:700;margin:0}.confirmation-modal.warning .modal-header{background:#fff3cd;border-bottom-color:#ffc107}.confirmation-modal.success .modal-header{background:#d4edda;border-bottom-color:#28a745}.confirmation-modal.danger .modal-header{background:#f8d7da;border-bottom-color:#dc3545}.modal-body{padding:24px}.modal-message{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 12px}.modal-description{color:#718096;font-size:.95rem;margin:0 0 20px}.modal-details{margin-top:20px}.confirmation-details{border-radius:8px;font-size:.9rem;padding:16px}.confirmation-details.warning{background:#fff3cd;border:1px solid #ffc107;color:#856404}.confirmation-details.danger{background:#f8d7da;border:1px solid #dc3545;color:#721c24}.confirmation-details p{margin:8px 0}.confirmation-details ul{margin:12px 0;padding-left:20px}.confirmation-details li{margin:6px 0}.delete-warning{border-top:1px solid #dc3545;font-weight:600;margin-top:12px;padding-top:12px}.confirmation-input{margin-top:20px}.confirmation-input label{color:#4a5568;display:block;font-size:.9rem;margin-bottom:8px}.confirmation-input input{border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;font-weight:600;padding:12px;text-align:center;transition:border-color .2s ease;width:100%}.confirmation-input input:focus{border-color:#dc3545;outline:none}.confirmation-input input::placeholder{color:#cbd5e0;font-weight:400}.modal-actions{background:#f7fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.modal-actions .btn{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 24px;transition:all .2s ease}.modal-actions .btn-secondary{background:#e2e8f0;color:#4a5568}.modal-actions .btn-secondary:hover:not(:disabled){background:#cbd5e0}.modal-actions .btn-warning{background:#ffc107;color:#856404}.modal-actions .btn-warning:hover:not(:disabled){background:#e0a800}.modal-actions .btn-success{background:#28a745;color:#fff}.modal-actions .btn-success:hover:not(:disabled){background:#218838}.modal-actions .btn-danger{background:#dc3545;color:#fff}.modal-actions .btn-danger:hover:not(:disabled){background:#c82333}.modal-actions .btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:600px){.confirmation-modal{max-width:none;width:95%}.modal-body,.modal-header{padding:20px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.tournament-config-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.tournament-config-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:90%}.tournament-config-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e2e8f0;color:#fff;display:flex;justify-content:space-between;padding:24px 32px}.tournament-config-header h2{font-size:24px;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:32px;height:36px;justify-content:center;opacity:.8;padding:0;transition:opacity .2s;width:36px}.close-btn:hover{background-color:#ffffff1a;opacity:1}.tournament-config-tabs{background:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex}.tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:16px 24px;transition:all .2s}.tab-btn:hover:not(:disabled){background-color:#e2e8f0;color:#334155}.tab-btn.active{background-color:#fff;border-bottom-color:#7c3aed;color:#7c3aed}.tab-btn:disabled{cursor:not-allowed;opacity:.5}.tournament-config-content{flex:1 1;overflow-y:auto;padding:24px 32px}.championship-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;padding:20px}.championship-info h3{color:#1e293b;font-size:18px;margin:0 0 8px}.championship-info p{color:#64748b;font-size:14px;margin:0}.presets-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:24px}.preset-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:24px;position:relative;text-align:center;transition:all .2s}.preset-card:hover{border-color:#7c3aed;box-shadow:0 4px 12px #7c3aed1a;transform:translateY(-2px)}.preset-card.selected{background:linear-gradient(135deg,#7c3aed08,#764ba208);border-color:#7c3aed;box-shadow:0 4px 16px #7c3aed26}.preset-card.recommended{background:linear-gradient(135deg,#10b98108,#05966908);border-color:#10b981}.preset-icon{font-size:48px;margin-bottom:12px}.preset-name{color:#1e293b;font-size:18px;font-weight:600;margin-bottom:8px}.preset-description{color:#64748b;font-size:14px;line-height:1.5;margin-bottom:16px}.preset-details{color:#94a3b8;display:flex;font-size:13px;gap:16px;justify-content:center}.preset-badge{background:#10b981;border-radius:12px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 12px;position:absolute;right:16px;text-transform:uppercase;top:-8px}.preset-selection{background:linear-gradient(135deg,#7c3aed08,#764ba208);border:1px solid #7c3aed20;border-radius:12px;padding:20px}.preset-selection h4{color:#7c3aed;font-size:16px;margin:0 0 8px}.preset-selection p{color:#64748b;margin:0}.config-section{margin-bottom:32px}.config-section h4{color:#1e293b}.section-header{margin-bottom:16px}.add-round-btn{background:#7c3aed;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.add-round-btn:hover{background:#6d28d9}.config-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.config-field{display:flex;flex-direction:column;gap:6px}.config-field label{color:#374151;font-size:14px;font-weight:500}.config-field input,.config-field select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s}.config-field input:focus,.config-field select:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a;outline:none}.config-field.checkbox{align-items:center;flex-direction:row}.config-field.checkbox input[type=checkbox]{height:16px;margin-right:8px;width:16px}.round-config{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:16px}.round-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.round-header h5{color:#1e293b;font-size:15px;font-weight:600;margin:0}.remove-round-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;transition:background-color .2s;width:24px}.remove-round-btn:hover{background:#dc2626}.loading{color:#64748b;font-size:16px;padding:40px;text-align:center}.tournament-preview{max-width:700px}.preview-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;padding:24px}.preview-summary h3{color:#1e293b;font-size:18px;margin:0 0 20px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.summary-item{background:#fff}.summary-item .value{font-size:24px}.round-breakdown{margin-bottom:24px}.round-breakdown h4{color:#1e293b;font-size:16px;margin:0 0 20px}.round-preview-item{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #7c3aed;border-radius:8px;margin-bottom:16px;padding:20px}.round-preview-item .round-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.round-preview-item h5{color:#1e293b;font-size:16px;font-weight:600;margin:0}.round-stats{color:#64748b;display:flex;font-size:13px;gap:12px}.round-details{color:#64748b;font-size:14px;line-height:1.6}.round-details p{margin:4px 0}.round-details strong{color:#374151}.generation-estimate{background:#fffbeb;border:1px solid #fed7aa;border-radius:8px;padding:20px}.generation-estimate h4{color:#92400e;font-size:16px;margin:0 0 12px}.generation-estimate p{color:#78350f;font-size:14px;margin:8px 0}.warnings{margin-top:16px}.warnings ul{margin:8px 0 0;padding-left:20px}.warnings li{color:#92400e;margin:4px 0}.no-preview{background:#f8fafc;border:2px dashed #d1d5db;border-radius:8px;color:#64748b;font-size:16px;padding:60px 20px;text-align:center}.error-message{background:#fef2f2;border:1px solid #fecaca;margin:0 32px 24px}.tournament-config-actions{background:#f7fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 32px}.btn{padding:12px 24px}.btn-primary{background:#7c3aed}.btn-primary:hover:not(:disabled){background:#6d28d9}.btn-secondary{background:#64748b}.btn-secondary:hover:not(:disabled){background:#475569}.btn-warning{background:#f59e0b;color:#fff}.btn-warning:hover:not(:disabled){background:#d97706}@media (max-width:768px){.tournament-config-modal{max-height:95vh;width:95%}.tournament-config-actions,.tournament-config-content,.tournament-config-header{padding:16px 20px}.config-grid,.presets-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.round-stats{gap:4px}.round-stats,.tournament-config-actions{flex-direction:column}.btn{justify-content:center;width:100%}}.tournament-admin-dashboard{background:#f8fafc;min-height:100vh}.matches-section{margin-top:32px}.matches-section-header{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;margin-bottom:16px;padding:16px}.matches-section-header h3{color:#1e293b;font-size:20px;font-weight:600;margin:0}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;box-shadow:0 2px 4px #ef444433;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 8px #ef44444d}.btn-danger:active:not(:disabled){box-shadow:0 2px 4px #ef444433;transform:translateY(0)}.btn-danger:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed}.btn-danger.btn-small{font-size:12px;padding:6px 12px}.match-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.tournament-admin-dashboard h2{color:#1e293b;font-size:28px}.championship-summary{background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;margin-bottom:32px}.championship-summary h3{color:#1e293b;font-size:20px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.summary-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;text-align:center}.summary-item.generated{background:linear-gradient(135deg,#10b98108,#05966908);border-color:#10b981}.summary-item .label{color:#64748b;display:block;font-size:12px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.summary-item .value{color:#1e293b;display:block;font-size:18px;font-weight:600}.tournament-generation-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px;padding:24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-header h3{color:#1e293b;font-size:18px;font-weight:600;margin:0}.recommended-preset{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:14px;padding:8px 12px}.tournament-actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:24px}.btn{align-items:flex-start;border-radius:12px;display:flex;flex-direction:column;font-size:15px;gap:4px;overflow:hidden;padding:16px 20px;position:relative;text-align:left;transition:all .2s}.btn:disabled{opacity:.5}.btn-icon{font-size:20px;position:absolute;right:16px;top:16px}.btn-text{font-size:16px;font-weight:600;margin-right:40px}.btn-subtitle{font-size:13px;font-weight:400;opacity:.8}.btn-success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b98140}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 6px 20px #10b98159}.btn-primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 4px 12px #7c3aed40}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#5b21b6);box-shadow:0 6px 20px #7c3aed59}.btn-secondary{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 4px 12px #64748b40}.btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#475569,#334155);box-shadow:0 6px 20px #64748b59}.btn-outline{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;flex-direction:row;font-size:14px;gap:8px;padding:12px 20px}.btn-outline:hover:not(:disabled){background:#7c3aed08;border-color:#7c3aed;color:#7c3aed}.tournament-status{border-radius:8px;display:flex;gap:16px;margin-bottom:16px;padding:16px}.tournament-status.success{background:linear-gradient(135deg,#10b98108,#05966908);border:1px solid #10b981;color:#065f46}.tournament-status.warning{background:linear-gradient(135deg,#f59e0b08,#d9770608);border:1px solid #f59e0b;color:#92400e}.status-icon{flex-shrink:0;font-size:20px}.status-content strong{display:block;font-size:14px;margin-bottom:4px}.status-content p{font-size:13px;line-height:1.4;margin:0;opacity:.9}.legacy-generation-section{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;margin-bottom:32px;padding:20px}.legacy-generation-section h3{color:#64748b;font-size:16px;font-weight:500;margin:0 0 16px}.error-message{background:linear-gradient(135deg,#ef444408,#dc262608);border:1px solid #ef4444;color:#991b1b;font-size:14px;padding:16px}.dialog-overlay{background-color:#0009;height:100%;width:100%;z-index:1000}.dialog-content{box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:600px;padding:24px}.dialog-content h3{color:#1e293b;font-size:18px;margin:0 0 20px}.config-section h4{color:#374151;font-size:16px;margin:0 0 12px}.config-table td{border-bottom:1px solid #f3f4f6;padding:8px 0}.config-table td:first-child{color:#374151;font-weight:500;width:40%}.pairings-table td,.pairings-table th{border-bottom:1px solid #e5e7eb;padding:8px;text-align:left}.pairings-table th{background:#f9fafb;color:#374151;font-weight:500}.dialog-actions{margin-top:24px}.dialog-actions .btn{align-items:center;flex-direction:row;gap:8px;padding:12px 20px}@media (max-width:768px){.tournament-admin-dashboard{padding:16px}.tournament-admin-dashboard h2{font-size:24px}.summary-grid{grid-template-columns:repeat(2,1fr)}.tournament-actions-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:12px}.recommended-preset{align-self:stretch;text-align:center}.btn-icon{margin-bottom:8px;position:static}.btn{align-items:center;gap:8px;text-align:center}.btn-text{margin-right:0}.tournament-status{flex-direction:column;gap:8px}}.dashboard-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e9ecef;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.dashboard-header h2{font-size:1.5rem;font-weight:600;margin:0}.tournament-info{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.tournament-name{font-size:1.1rem;font-weight:600}.round-indicator{font-size:.9rem;opacity:.9}.error-banner{align-items:center;background:#dc3545;border-radius:8px;box-shadow:0 4px 12px #dc35454d;color:#fff;display:flex;gap:12px;padding:12px 16px;position:fixed;right:20px;top:20px;z-index:1000}.error-icon{font-size:1.2rem}.error-message{flex:1 1}.dismiss-error{background:none;border:none;color:#fff;cursor:pointer;font-size:1.5rem;line-height:1;opacity:.7;padding:0}.dismiss-error:hover{opacity:1}.dashboard-tabs{background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;overflow-x:auto}.tab-button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#6c757d;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:16px 24px;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:#e9ecef;color:#495057}.tab-button.active{background:#fff;border-bottom-color:#667eea;color:#667eea}.tab-content{min-height:400px;padding:24px}.overview-tab{display:flex;flex-direction:column;gap:24px}.overview-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.stat-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-2px)}.stat-card h3{color:#495057;font-size:1.1rem;font-weight:600;margin:0 0 16px}.stat-details{display:flex;flex-direction:column;gap:8px}.stat-item{align-items:center;display:flex;justify-content:space-between}.stat-item .label{color:#6c757d;font-size:.9rem}.stat-item .value{color:#495057;font-weight:600}.action-buttons{display:flex;flex-wrap:wrap;gap:12px}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:8px;padding:10px 20px;text-decoration:none;transition:all .2s ease}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.btn-success{background:#28a745;color:#fff}.btn-success:hover:not(:disabled){background:#218838;transform:translateY(-1px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.btn-warning{background:#ffc107;color:#212529}.btn-warning:hover:not(:disabled){background:#e0a800;transform:translateY(-1px)}.swiss-elimination-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #5a67d8;color:#fff;overflow:hidden;position:relative}.swiss-elimination-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.swiss-elimination-btn:hover:before{left:100%}.swiss-elimination-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#667eea);box-shadow:0 4px 20px #5a67d866;transform:translateY(-2px)}.swiss-elimination-btn:disabled{background:#e9ecef;border-color:#dee2e6;color:#6c757d;cursor:not-allowed;transform:none}.swiss-elimination-btn:disabled:before{display:none}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover:not(:disabled){background:#c82333;transform:translateY(-1px)}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover:not(:disabled){background:#138496;transform:translateY(-1px)}.btn-small{font-size:.8rem;padding:6px 12px}.round-controls{display:flex;flex-direction:column;gap:32px}.control-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:24px}.control-section h3{color:#495057;font-size:1.2rem;font-weight:600;margin:0 0 16px}.round-info{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:2px;padding:2px 6px}.round-info p{color:#495057;margin:4px 0}.action-section,.scheduling-section{margin-bottom:24px}.action-section h4,.scheduling-section h4{color:#6c757d;font-size:1rem;font-weight:600;margin:0 0 16px}.action-options,.schedule-options{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.schedule-options input[type=datetime-local]{border:1px solid #ced4da;border-radius:8px;font-size:.9rem;min-width:200px;padding:10px 12px}.matches-header{margin-bottom:20px}.matches-header h3{color:#495057;margin:0}.statistics-tab h3{color:#495057;margin:0 0 20px}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.settings-tab{display:flex;flex-direction:column;gap:32px}.settings-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:24px}.settings-section h4{color:#495057;font-size:1.1rem;font-weight:600;margin:0 0 16px}.setting-item{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.setting-item label{color:#495057;font-weight:500}.setting-item input[type=number]{border:1px solid #ced4da;border-radius:8px;font-size:.9rem;padding:10px 12px;width:200px}.danger-zone{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;margin-top:16px;padding:20px}.danger-zone p{color:#c53030;margin:0 0 16px}.loading-spinner{align-items:center;color:#6c757d;display:flex;gap:12px;justify-content:center;padding:40px}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:24px;width:24px}.loading-overlay{align-items:center;background:#fffc;border-radius:12px;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:100}.pairing-preview-modal{max-height:85vh;max-width:800px;overflow-y:auto;width:90vw}.tournament-admin-dashboard{margin:0 auto;max-width:1400px;padding:24px}.tournament-admin-dashboard h2{color:#495057;font-size:1.8rem;font-weight:700;margin:0 0 24px}.championship-summary{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 16px #667eea4d;color:#fff;margin-bottom:24px;padding:24px}.championship-summary h3{font-size:1.4rem;font-weight:600;margin:0 0 20px}.summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-item .label{font-size:.85rem;font-weight:500;opacity:.9}.summary-item .value{font-size:1.5rem;font-weight:700}.admin-actions{margin-bottom:32px}.error-message{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;color:#c53030;font-size:.9rem;margin-top:16px;padding:12px 16px}.dialog-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.dialog-content{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-height:85vh;max-width:700px;overflow-y:auto;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.dialog-content h3{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;color:#fff;font-size:1.3rem;font-weight:600;margin:0;padding:20px 24px}.dialog-body{max-height:calc(85vh - 180px);overflow-y:auto;padding:24px}.config-section{margin-bottom:24px}.config-section:last-child{margin-bottom:0}.config-section h4{border-bottom:2px solid #e9ecef;color:#495057;font-size:1.1rem;font-weight:600;margin:0 0 16px;padding-bottom:8px}.config-table{border-collapse:collapse;width:100%}.config-table tr{border-bottom:1px solid #e9ecef}.config-table tr:last-child{border-bottom:none}.config-table td{font-size:.95rem;padding:10px 0}.config-table td:first-child{color:#6c757d;width:200px}.config-table td:last-child{color:#495057;font-weight:500}.pairings-table{border-collapse:collapse;margin-top:12px;width:100%}.pairings-table thead{background:#f8f9fa}.pairings-table th{border-bottom:2px solid #e9ecef;color:#495057;font-size:.9rem;font-weight:600;padding:12px 16px;text-align:left}.pairings-table td{border-bottom:1px solid #e9ecef;color:#495057;font-size:.9rem;padding:10px 16px}.pairings-table tbody tr:last-child td{border-bottom:none}.dialog-actions,.pairings-table tbody tr:hover{background:#f8f9fa}.dialog-actions{border-radius:0 0 12px 12px;border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}@media (max-width:768px){.tournament-management-dashboard{border-radius:0;max-height:100vh;width:100vw}.dashboard-header{padding:16px}.dashboard-header h2{font-size:1.2rem}.tournament-info{align-items:flex-start}.dashboard-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab-button{font-size:.8rem;padding:12px 16px}.tab-content{padding:16px}.overview-cards{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-options,.schedule-options{align-items:stretch;flex-direction:column}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.dashboard-header{flex-direction:column;gap:12px;text-align:center}.tournament-info{align-items:center}}.championship-tabs{background:#f1f5f9;border-bottom:1px solid #e2e8f0;border-radius:12px 12px 0 0;display:flex;gap:8px;overflow-x:auto;padding:12px 12px 0}.championship-tabs .tab{background:#0000;border:none;border-radius:8px 8px 0 0;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.championship-tabs .tab:hover{background:#ffffff80;color:#1e293b}.championship-tabs .tab.active{background:#fff!important;border-bottom:3px solid #7c3aed;box-shadow:0 -2px 5px #0000000d;color:#1e293b!important;font-weight:700}.championship-matches-edit{padding:1rem}.matches-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:1.5rem}.header-left,.matches-header{align-items:center;display:flex;gap:1rem}.header-left h2{color:#2d3748;margin:0}.header-actions{align-items:center;display:flex;gap:.5rem}.edit-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.filter-select{background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;min-width:150px;padding:.5rem}.filter-select:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a;outline:none}.round-section{margin-bottom:2rem}.round-title{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.matches-table{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.matches-header-row{background-color:#f7fafc;color:#2d3748;font-weight:600}.match-row,.matches-header-row{border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:1fr auto 1fr auto auto auto auto auto}.match-row{transition:background-color .2s ease}.match-row:hover{background-color:#f7fafc}.match-row:last-child{border-bottom:none}.match-cell{align-items:center;border-right:1px solid #e2e8f0;display:flex;min-width:0;padding:.75rem}.match-cell:last-child{border-right:none}.header-cell{background-color:#f7fafc;color:#2d3748;font-size:.875rem;font-weight:600}.white-player{justify-content:flex-start}.vs-cell{color:#718096;font-size:.875rem;font-weight:600;justify-content:center;min-width:40px}.black-player{justify-content:flex-start}.actions-cell,.game-cell,.result-cell,.scheduled-cell,.status-cell{font-size:.875rem;justify-content:center}.player-name{color:#2d3748;font-weight:500;line-height:1.2;word-break:break-word}.player-name.current-user{color:#4299e1;font-weight:600}.you-indicator{color:#4299e1;font-size:.75rem;font-weight:500;margin-left:.25rem}.player-rating{color:#718096;font-size:.75rem;margin-top:.25rem}.match-status{border-radius:.25rem;font-size:.75rem;font-weight:500;letter-spacing:.025em;padding:.25rem .5rem;text-transform:uppercase;white-space:nowrap}.match-status.scheduled{background-color:#bee3f8;color:#2c5282}.match-status.active{background-color:#fbd38d;color:#975a16}.match-status.completed{background-color:#c6f6d5;color:#276749}.match-status.expired{background-color:#fed7d7;color:#c53030}.scheduled-cell{color:#4a5568;font-size:.8rem;white-space:nowrap}.result-cell{color:#2d3748;font-weight:500}.btn-small{font-size:.75rem;line-height:1.2;padding:.375rem .75rem}.empty-state{color:#718096;padding:3rem 1rem;text-align:center}.empty-state h3{color:#4a5568;margin-bottom:.5rem}.error-state,.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem 1rem;text-align:center}.loading-state .spinner{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#4299e1;height:2rem;margin-bottom:1rem;width:2rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-state p{color:#e53e3e;margin-bottom:1rem}@media (max-width:768px){.matches-header{align-items:stretch;flex-direction:column}.edit-filters,.header-actions,.header-left{justify-content:center}.match-row,.matches-header-row{gap:0;grid-template-columns:1fr}.match-cell{border-bottom:1px solid #e2e8f0;border-right:none;padding:.5rem}.match-cell:last-child{border-bottom:none}.header-cell.vs-cell,.vs-cell{display:none}.match-cell:before{color:#2d3748;content:attr(data-label);font-weight:600;margin-right:.5rem;min-width:80px}.white-player:before{content:"White:"}.black-player:before{content:"Black:"}.status-cell:before{content:"Status:"}.scheduled-cell:before{content:"Scheduled:"}.result-cell:before{content:"Result:"}.game-cell:before{content:"Game:"}.actions-cell:before{content:"Actions:"}}@media (max-width:480px){.championship-matches-edit{padding:.5rem}.match-cell{padding:.375rem}.match-cell,.player-name{font-size:.8rem}.btn-small,.player-rating{font-size:.7rem}.btn-small{padding:.25rem .5rem}}
/*# sourceMappingURL=main.a7226c5e.css.map*/