*,: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:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,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::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.bottom-0\.5{bottom:.125rem}.left-0\.5{left:.125rem}.left-1{left:.25rem}.right-0\.5{right:.125rem}.top-0\.5{top:.125rem}.top-1{top:.25rem}.z-10{z-index:10}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-2\.5{height:.625rem}.h-4{height:1rem}.h-5{height:1.25rem}.min-h-0{min-height:0}.w-2\.5{width:.625rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-full{width:100%}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.flex-1{flex:1 1 0%}.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))}.cursor-pointer{cursor:pointer}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-amber-300\/20{border-color:rgba(252,211,77,.2)}.border-amber-300\/40{border-color:rgba(252,211,77,.4)}.border-amber-300\/50{border-color:rgba(252,211,77,.5)}.border-amber-300\/60{border-color:rgba(252,211,77,.6)}.border-blue-300\/50{border-color:rgba(147,197,253,.5)}.border-emerald-300\/40{border-color:rgba(110,231,183,.4)}.border-emerald-300\/45{border-color:rgba(110,231,183,.45)}.border-emerald-300\/50{border-color:rgba(110,231,183,.5)}.border-emerald-400\/40{border-color:rgba(52,211,153,.4)}.border-sky-300\/40{border-color:rgba(125,211,252,.4)}.border-sky-400\/40{border-color:rgba(56,189,248,.4)}.border-violet-300\/50{border-color:rgba(196,181,253,.5)}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/15{border-color:hsla(0,0%,100%,.15)}.border-white\/20{border-color:hsla(0,0%,100%,.2)}.border-white\/25{border-color:hsla(0,0%,100%,.25)}.bg-amber-400\/10{background-color:rgba(251,191,36,.1)}.bg-amber-500\/10{background-color:rgba(245,158,11,.1)}.bg-amber-500\/15{background-color:rgba(245,158,11,.15)}.bg-amber-600\/55{background-color:rgba(217,119,6,.55)}.bg-amber-700\/50{background-color:rgba(180,83,9,.5)}.bg-amber-950\/70{background-color:rgba(69,26,3,.7)}.bg-black\/20{background-color:rgba(0,0,0,.2)}.bg-black\/25{background-color:rgba(0,0,0,.25)}.bg-black\/30{background-color:rgba(0,0,0,.3)}.bg-black\/35{background-color:rgba(0,0,0,.35)}.bg-black\/40{background-color:rgba(0,0,0,.4)}.bg-blue-600\/50{background-color:rgba(37,99,235,.5)}.bg-blue-700\/50{background-color:rgba(29,78,216,.5)}.bg-emerald-400\/10{background-color:rgba(52,211,153,.1)}.bg-emerald-400\/20{background-color:rgba(52,211,153,.2)}.bg-emerald-500\/10{background-color:rgba(16,185,129,.1)}.bg-emerald-600\/50{background-color:rgba(5,150,105,.5)}.bg-emerald-600\/60{background-color:rgba(5,150,105,.6)}.bg-emerald-700\/60{background-color:rgba(4,120,87,.6)}.bg-emerald-950\/25{background-color:rgba(2,44,34,.25)}.bg-emerald-950\/30{background-color:rgba(2,44,34,.3)}.bg-emerald-950\/40{background-color:rgba(2,44,34,.4)}.bg-fuchsia-600\/50{background-color:rgba(192,38,211,.5)}.bg-fuchsia-600\/60{background-color:rgba(192,38,211,.6)}.bg-fuchsia-700\/40{background-color:rgba(162,28,175,.4)}.bg-orange-400\/20{background-color:rgba(251,146,60,.2)}.bg-rose-400\/20{background-color:rgba(251,113,133,.2)}.bg-sky-400\/10{background-color:rgba(56,189,248,.1)}.bg-sky-400\/20{background-color:rgba(56,189,248,.2)}.bg-sky-950\/40{background-color:rgba(8,47,73,.4)}.bg-white\/5{background-color:hsla(0,0%,100%,.05)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.from-amber-600\/80{--tw-gradient-from:rgba(217,119,6,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(217,119,6,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-700\/80{--tw-gradient-from:rgba(180,83,9,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(180,83,9,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-700\/80{--tw-gradient-from:rgba(29,78,216,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(29,78,216,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-500\/80{--tw-gradient-from:rgba(6,182,212,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-700\/80{--tw-gradient-from:rgba(14,116,144,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(14,116,144,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-600\/80{--tw-gradient-from:rgba(5,150,105,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(5,150,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-fuchsia-600\/80{--tw-gradient-from:rgba(192,38,211,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(192,38,211,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-700\/80{--tw-gradient-from:rgba(21,128,61,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(21,128,61,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-700\/80{--tw-gradient-from:rgba(67,56,202,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(67,56,202,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-lime-500\/80{--tw-gradient-from:rgba(132,204,22,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(132,204,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-lime-700\/80{--tw-gradient-from:rgba(77,124,15,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(77,124,15,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-600\/80{--tw-gradient-from:rgba(234,88,12,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(234,88,12,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-700\/80{--tw-gradient-from:rgba(194,65,12,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(194,65,12,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-700\/80{--tw-gradient-from:rgba(185,28,28,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(185,28,28,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-rose-600\/80{--tw-gradient-from:rgba(225,29,72,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(225,29,72,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-600\/80{--tw-gradient-from:rgba(2,132,199,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,132,199,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-sky-700\/80{--tw-gradient-from:rgba(3,105,161,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(3,105,161,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-900\/75{--tw-gradient-from:rgba(15,23,42,.75) var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-stone-700\/80{--tw-gradient-from:rgba(68,64,60,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(68,64,60,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-teal-600\/80{--tw-gradient-from:rgba(13,148,136,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(13,148,136,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-violet-600\/80{--tw-gradient-from:rgba(124,58,237,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(124,58,237,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-slate-950\/85{--tw-gradient-to:rgba(2,6,23,.85) var(--tw-gradient-to-position)}.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}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pl-4{padding-left:1rem}.text-left{text-align:left}.text-center{text-align:center}.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-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-none{line-height:1}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.2em\]{letter-spacing:.2em}.text-amber-100{--tw-text-opacity:1;color:rgb(254 243 199/var(--tw-text-opacity,1))}.text-amber-100\/80{color:hsla(48,96%,89%,.8)}.text-amber-200{--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.text-amber-200\/85{color:hsla(48,97%,77%,.85)}.text-amber-200\/95{color:hsla(48,97%,77%,.95)}.text-emerald-100{--tw-text-opacity:1;color:rgb(209 250 229/var(--tw-text-opacity,1))}.text-emerald-200{--tw-text-opacity:1;color:rgb(167 243 208/var(--tw-text-opacity,1))}.text-emerald-200\/80{color:rgba(167,243,208,.8)}.text-fuchsia-200\/80{color:rgba(245,208,254,.8)}.text-fuchsia-200\/85{color:rgba(245,208,254,.85)}.text-orange-100{--tw-text-opacity:1;color:rgb(255 237 213/var(--tw-text-opacity,1))}.text-rose-100{--tw-text-opacity:1;color:rgb(255 228 230/var(--tw-text-opacity,1))}.text-sky-100{--tw-text-opacity:1;color:rgb(224 242 254/var(--tw-text-opacity,1))}.text-white\/50{color:hsla(0,0%,100%,.5)}.text-white\/55{color:hsla(0,0%,100%,.55)}.text-white\/60{color:hsla(0,0%,100%,.6)}.text-white\/65{color:hsla(0,0%,100%,.65)}.text-white\/70{color:hsla(0,0%,100%,.7)}.text-white\/75{color:hsla(0,0%,100%,.75)}.text-white\/80{color:hsla(0,0%,100%,.8)}.text-white\/85{color:hsla(0,0%,100%,.85)}.text-white\/90{color:hsla(0,0%,100%,.9)}.accent-emerald-400{accent-color:#34d399}.accent-sky-400{accent-color:#38bdf8}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{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 rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.drop-shadow,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--bg-1:#0b1120;--bg-2:#111a2d;--bg-3:#171f30;--text-1:#ecf2fb;--accent-ally:#34d399;--accent-ally-glow:rgba(52,211,153,.55);--accent-supply:#38bdf8;--accent-supply-glow:rgba(56,189,248,.5);--accent-objective:#fbbf24;--accent-objective-glow:rgba(251,191,36,.55);--accent-enemy:#fb7185;--accent-enemy-glow:rgba(251,113,133,.5);--accent-hit:#fb923c;--accent-crit:#f0abfc}body{margin:0;min-height:100vh;color:var(--text-1);font-family:Trebuchet MS,Avenir Next,Segoe UI,Helvetica Neue,sans-serif;background:radial-gradient(120% 80% at 20% 10%,#273d58 0,transparent 58%),radial-gradient(90% 60% at 80% 120%,#0f2f3f 0,transparent 55%),linear-gradient(170deg,var(--bg-1) 0,var(--bg-2) 45%,var(--bg-3) 100%)}a{color:inherit;text-decoration:none}.game-shell{min-height:100vh;padding:1rem}.game-board{display:grid;width:-moz-max-content;width:max-content;margin:0 auto;gap:2px;border-radius:.75rem;padding:.25rem;background:linear-gradient(150deg,rgba(19,35,55,.85),rgba(8,14,23,.96));--cell-size:58px}.game-board-viewport{width:100%;height:min(64vh,760px);min-height:min(64vh,760px);max-height:min(64vh,760px);overflow:auto;overflow-anchor:none;border:1px solid hsla(0,0%,100%,.22);background:rgba(6,13,24,.85);padding:.35rem}.selected-unit-panel{height:clamp(460px,70vh,600px);display:flex;flex-direction:column;overflow:hidden}.selected-unit-scroll{height:clamp(9rem,22vh,12rem);max-height:clamp(9rem,22vh,12rem);overflow-y:auto;scrollbar-width:thin;padding-right:.25rem;flex-shrink:0}.cell{width:var(--cell-size);height:var(--cell-size);position:relative;display:flex;align-items:center;justify-content:center;border-radius:.4rem;border:1px solid rgba(221,228,238,.2);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease;overflow:hidden}.cell:hover{transform:translateY(-1px)}.cell:active{transform:scale(.985)}.cell:focus-visible{outline:2px solid rgba(250,204,21,.55);outline-offset:-2px}.cell-inactive{cursor:not-allowed;opacity:.58;filter:saturate(.48)}.cell-inactive:hover{transform:none}.play-action-toolbar{display:flex;flex-wrap:wrap;gap:.45rem}.turn-chip{display:inline-flex;align-items:center;gap:.3rem;border-radius:9999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700;letter-spacing:.02em;border:1px solid rgba(148,163,184,.35);text-transform:uppercase;margin-right:.35rem}.turn-chip-ok{border-color:rgba(74,222,128,.6);background:rgba(6,78,59,.28);color:rgba(187,247,208,.95)}.turn-chip-enemy{border-color:hsla(0,91%,71%,.7);background:rgba(88,28,28,.32);color:hsla(0,96%,89%,.95)}.status-strip{border-radius:.65rem;padding:.45rem .55rem;border:1px solid hsla(0,0%,100%,.18);background:rgba(15,23,42,.45)}.status-strip-neutral{border-color:rgba(148,163,184,.32);background:rgba(15,23,42,.55);color:rgba(226,232,240,.95)}.status-strip-ok{border-color:rgba(74,222,128,.55);background:rgba(20,83,45,.35);color:rgba(187,247,208,.95)}.status-strip-warning{border-color:rgba(251,191,36,.45);background:rgba(120,53,15,.32);color:hsla(32,98%,83%,.95)}.status-strip-enemy,.status-strip-error{border-color:hsla(0,91%,71%,.45);background:rgba(69,10,10,.42);color:hsla(0,93%,94%,.95)}.battle-feedback{border-radius:.55rem;border:1px dashed rgba(74,222,128,.45);padding:.42rem .5rem;background:rgba(6,78,59,.28);color:rgba(187,247,208,.95)}.battle-impact-banner{margin-top:.5rem;border-radius:.5rem;border:1px solid rgba(250,204,21,.45);background:rgba(69,26,9,.28);color:hsla(55,97%,88%,.98);padding:.45rem .55rem;font-size:.84rem;line-height:1.3}.battle-impact-banner-hit{border-color:rgba(74,222,128,.7);background:rgba(15,118,110,.24);color:rgba(209,250,229,.95)}.battle-impact-banner-guard{border-color:rgba(251,191,36,.65);background:rgba(120,53,15,.26);color:hsla(32,98%,83%,.97)}.battle-impact-banner-defeat{border-color:hsla(0,91%,71%,.75);background:rgba(76,5,25,.28);color:hsla(0,93%,94%,.98)}.cell-label{font-size:10px;line-height:1;color:hsla(0,0%,100%,.68);text-shadow:0 1px 2px rgba(0,0,0,.75)}.cell-icon{font-size:13px;opacity:.72;color:hsla(0,0%,100%,.82);text-shadow:0 1px 3px rgba(0,0,0,.85)}.cell-move{box-shadow:inset 0 0 0 2px rgba(74,222,128,.8),0 0 0 1px rgba(74,222,128,.5),inset 0 0 10px rgba(74,222,128,.25);background-color:rgba(74,222,128,.2)}.cell-move-close{box-shadow:inset 0 0 0 2px rgba(74,222,128,.9),0 0 0 2px rgba(94,234,212,.7),inset 0 0 14px rgba(94,234,212,.38)}.cell-move-mid{box-shadow:inset 0 0 0 2px rgba(52,211,153,.9),0 0 0 1px rgba(52,211,153,.55),inset 0 0 10px rgba(52,211,153,.25)}.cell-move-far{box-shadow:inset 0 0 0 2px rgba(250,204,21,.75),0 0 0 1px rgba(250,204,21,.45),inset 0 0 8px rgba(250,204,21,.18)}.cell-move-teleport{box-shadow:inset 0 0 0 2px rgba(56,189,248,.9),0 0 0 2px rgba(14,165,233,.7),inset 0 0 10px rgba(14,165,233,.28);animation:moveTeleport 1.4s ease-in-out infinite}.cell-attack{box-shadow:inset 0 0 0 2px rgba(251,146,60,.95),0 0 0 1px rgba(251,146,60,.75),inset 0 0 10px rgba(251,146,60,.25);background-color:rgba(251,146,60,.25)}.cell-attack-target-zone{box-shadow:inset 0 0 0 2px rgba(244,63,94,.95),0 0 12px rgba(244,63,94,.28),0 0 0 1px rgba(253,164,175,.8)}.cell-impact-hit{box-shadow:inset 0 0 0 2px rgba(125,211,153,.95),0 0 0 1px rgba(125,211,153,.75),0 0 10px rgba(125,211,153,.3);animation:impactPulse .72s ease-out}.cell-impact-guard{box-shadow:inset 0 0 0 2px rgba(250,204,21,.95),0 0 0 1px rgba(250,204,21,.75),0 0 10px rgba(250,204,21,.3);animation:impactPulse .72s ease-out}.cell-impact-defeat{box-shadow:inset 0 0 0 2px hsla(0,91%,71%,.95),0 0 0 1px hsla(0,91%,71%,.75),0 0 12px hsla(0,91%,71%,.5);animation:impactPulse .72s ease-out}.cell-impact-defeat:before,.cell-impact-guard:before,.cell-impact-hit:before{content:"";position:absolute;pointer-events:none;z-index:4;mix-blend-mode:screen}.cell-impact-hit:before{left:8%;right:8%;top:48%;height:4px;border-radius:9999px;background:linear-gradient(90deg,transparent,#fef3c7 22%,#fb923c 55%,transparent);box-shadow:0 0 12px rgba(251,146,60,.82);transform:rotate(-24deg) scaleX(.2);animation:impactSlash .58s ease-out forwards}.cell-impact-guard:before{inset:8%;border:2px solid hsla(48,97%,77%,.96);border-radius:9999px;background:radial-gradient(circle,hsla(55,97%,88%,.22),transparent 62%);box-shadow:0 0 14px rgba(250,204,21,.7),inset 0 0 10px rgba(250,204,21,.35);transform:scale(.68);animation:impactWard .68s ease-out forwards}.cell-impact-defeat:before{inset:-18%;border-radius:9999px;background:radial-gradient(circle,hsla(0,93%,94%,.9) 0 10%,transparent 11%),conic-gradient(from 18deg,transparent,hsla(0,91%,71%,.94),transparent 18%,rgba(251,146,60,.7),transparent 38%);filter:blur(.2px);transform:scale(.3) rotate(0deg);animation:impactBurst .72s ease-out forwards}.cell-invalid{box-shadow:inset 0 0 0 2px rgba(239,68,68,.85),0 0 10px rgba(239,68,68,.35);background-color:rgba(239,68,68,.18)!important}.cell-selected{box-shadow:inset 0 0 0 2px rgba(125,211,252,.95),0 0 12px 2px rgba(56,189,248,.5);transform:translateY(-1px);animation:selectedPulse 1.1s ease-in-out infinite}.settlement-player{box-shadow:inset 0 0 0 2px rgba(52,211,153,.55),0 0 0 1px rgba(110,231,183,.4)}.settlement-ai{box-shadow:inset 0 0 0 2px rgba(251,113,133,.5),0 0 0 1px rgba(251,113,133,.35)}.settlement-neutral{box-shadow:inset 0 0 0 2px rgba(251,191,36,.22),0 0 0 1px rgba(251,191,36,.2)}.objective-cell{outline:1px dashed rgba(250,204,21,.55);outline-offset:-3px}.event-cell{box-shadow:inset 0 0 0 2px rgba(244,114,182,.55),0 0 0 1px rgba(244,114,182,.4)}.settlement-badge{top:1px;font-size:11px;opacity:.9}.objective-badge,.settlement-badge{position:absolute;inset:auto;right:1px}.objective-badge{bottom:1px;font-size:10px;color:rgba(250,204,21,.95)}.event-badge{position:absolute;inset:auto;top:1px;right:1px;font-size:12px;color:rgba(245,158,11,.95)}.cell-hover{transform:translateY(-1px) scale(1.01);z-index:2}.unit{width:90%;height:90%;border-radius:.68rem .68rem .5rem .5rem;display:flex;align-items:center;justify-content:center;color:#f8fafc;font-size:.82rem;font-weight:700;position:relative;border:2px solid hsla(0,0%,96%,.5);background:rgba(16,24,37,.7);isolation:isolate;overflow:visible;z-index:2;text-shadow:0 1px 3px rgba(0,0,0,.85);--unit-accent:rgba(226,232,240,.92);--unit-silhouette:hsla(0,0%,100%,.18);box-shadow:inset 0 -10px 16px rgba(2,6,14,.34),0 4px 8px rgba(2,6,14,.45)}.unit.player{border-color:rgba(125,211,252,.85);background:radial-gradient(circle at 30% 18%,hsla(0,0%,100%,.26),transparent 24%),linear-gradient(160deg,rgba(34,211,238,.72),rgba(21,94,117,.96) 52%,rgba(15,23,42,.95))}.unit.ai{border-color:rgba(254,205,211,.8);background:radial-gradient(circle at 30% 18%,hsla(0,0%,100%,.22),transparent 24%),linear-gradient(160deg,rgba(251,113,133,.72),rgba(127,29,29,.96) 52%,rgba(30,41,59,.95))}.unit.commander{border-width:3px;box-shadow:0 0 0 1px rgba(255,226,109,.75),0 0 12px rgba(251,191,36,.25),inset 0 -10px 16px rgba(2,6,14,.34)}.unit-elite{border-color:#fde68a;background:radial-gradient(circle at 30% 20%,hsla(32,98%,83%,.7),transparent 28%),linear-gradient(160deg,rgba(217,119,6,.78),rgba(153,27,27,.92) 54%,rgba(41,37,36,.96));box-shadow:0 0 0 2px hsla(48,97%,77%,.35),0 0 12px 2px rgba(251,146,60,.52)}.unit-large{transform:scale(1.06);box-shadow:0 0 0 3px rgba(252,211,77,.7),0 0 14px 2px rgba(252,211,77,.4),inset 0 -12px 18px rgba(2,6,14,.36)}.unit-role-commander{--unit-accent:rgba(251,191,36,.96);--unit-silhouette:hsla(53,98%,77%,.22)}.unit-role-vanguard{--unit-accent:rgba(191,219,254,.95);--unit-silhouette:rgba(219,234,254,.2)}.unit-role-ranger{--unit-accent:rgba(134,239,172,.96);--unit-silhouette:rgba(187,247,208,.2)}.unit-role-rogue{--unit-accent:rgba(251,207,232,.96);--unit-silhouette:rgba(245,208,254,.18)}.unit-role-mystic{--unit-accent:rgba(196,181,253,.96);--unit-silhouette:rgba(221,214,254,.2)}.unit-role-beast{--unit-accent:hsla(31,97%,72%,.96);--unit-silhouette:hsla(32,98%,83%,.2)}.unit-role-support{--unit-accent:rgba(94,234,212,.96);--unit-silhouette:rgba(153,246,228,.19)}.unit-role-scout{--unit-accent:rgba(103,232,249,.96);--unit-silhouette:rgba(165,243,252,.18)}.unit-role-elite{--unit-accent:hsla(48,97%,77%,.98);--unit-silhouette:hsla(48,96%,89%,.24)}.unit.attack-target{border-color:hsla(0,91%,71%,.98);box-shadow:0 0 0 2px hsla(0,91%,71%,.75),0 0 8px 2px hsla(0,91%,71%,.7)}.unit.unit-impact-hit{box-shadow:0 0 0 2px rgba(125,211,153,.95),0 0 10px 2px rgba(125,211,153,.55)}.unit.unit-impact-guard{box-shadow:0 0 0 2px rgba(250,204,21,.95),0 0 10px 2px rgba(250,204,21,.5)}.unit.unit-impact-defeat{border-color:#f87171!important;box-shadow:0 0 0 2px #f87171,0 0 12px 2px hsla(0,91%,71%,.7);filter:saturate(1.45) grayscale(.15);animation:unitImpact .72s ease-out}.unit.moved{filter:saturate(.7)}.unit.acted{opacity:.72}.unit.ready{animation:unitPulse .9s ease-in-out infinite}.unit.unit-selected{border-color:#fef08a;box-shadow:0 0 0 2px hsla(53,98%,77%,.9),0 0 8px 1px hsla(53,98%,77%,.6);animation:selectedUnitHalo 1.15s ease-in-out infinite}.unit-role{bottom:2px;left:3px;right:3px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.85}.unit-role,.unit-threat-pill{position:absolute;inset:auto;font-size:8px;line-height:1}.unit-threat-pill{top:-.22rem;right:-.18rem;border-radius:.4rem;border:1px solid hsla(48,97%,77%,.9);background:rgba(5,23,32,.75);color:hsla(48,97%,77%,.95);padding:.08rem .24rem}.move-cost-badge{position:absolute;left:1px;top:1px;border-radius:.33rem;background:rgba(15,23,42,.8);color:hsla(0,0%,98%,.9);border:1px solid rgba(34,197,94,.55);font-size:9px;line-height:1;padding:.04rem .2rem}@keyframes moveTeleport{0%{box-shadow:inset 0 0 0 2px rgba(56,189,248,.95),0 0 0 2px rgba(14,165,233,.7),inset 0 0 12px rgba(14,165,233,.25)}50%{box-shadow:inset 0 0 0 2px rgba(56,189,248,.75),0 0 0 3px rgba(125,211,252,.9),inset 0 0 16px rgba(125,211,252,.34)}to{box-shadow:inset 0 0 0 2px rgba(56,189,248,.95),0 0 0 2px rgba(14,165,233,.7),inset 0 0 12px rgba(14,165,233,.25)}}.reel-btn,button.reel-btn{border-radius:.65rem;border:1px solid hsla(0,0%,100%,.22);background:linear-gradient(180deg,rgba(37,60,95,.82),rgba(20,31,52,.88));padding:.4rem .85rem;font-size:.85rem;transition:transform .15s ease;color:#f8fafc}.reel-btn:hover{transform:translateY(-1px)}.reel-btn:disabled{cursor:not-allowed;opacity:.45;filter:saturate(.55)}.reel-btn.reel-btn-muted:active,.reel-btn.reel-btn-primary:active,.reel-btn:active{transform:translateY(-1px)}.reel-btn-primary{border-color:rgba(251,191,36,.68);background:linear-gradient(180deg,rgba(133,77,14,.82),rgba(76,35,13,.9))}.reel-btn-primary:hover{background:linear-gradient(180deg,rgba(180,83,9,.9),rgba(120,53,15,.95))}.reel-btn-muted{border-color:rgba(148,163,184,.45);background:linear-gradient(180deg,rgba(30,41,59,.75),rgba(15,23,42,.82));color:rgba(226,232,240,.92)}.reel-btn-muted:hover{background:linear-gradient(180deg,rgba(51,65,85,.78),rgba(24,35,55,.85))}.log-panel{max-height:200px;overflow-y:auto}.stat-pill{display:inline-flex;align-items:center;gap:.3rem;border-radius:9999px;border:1px solid hsla(0,0%,100%,.2);background:rgba(15,23,42,.55);padding:.25rem .6rem}.campaign-view{padding-bottom:2rem}.campaign-hero{display:grid;gap:.35rem}.campaign-line{padding-bottom:.5rem}.campaign-node{border-radius:.9rem;border:1px solid hsla(0,0%,100%,.2);background:rgba(15,23,42,.42);padding:1rem}.campaign-node.unlocked{background:linear-gradient(165deg,rgba(12,56,37,.58),rgba(15,23,42,.42));border-color:rgba(125,211,252,.4)}.battle-result-win{border-color:rgba(74,222,128,.45);background:linear-gradient(165deg,rgba(6,78,59,.7),rgba(8,47,30,.85))}.battle-result-loss{border-color:hsla(0,91%,71%,.45);background:linear-gradient(165deg,rgba(69,10,10,.7),rgba(38,18,18,.9))}.battle-result-standout{color:rgba(250,204,21,.95);border-bottom:1px solid rgba(250,204,21,.35);padding-bottom:.3rem;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}@keyframes unitPulse{0%{box-shadow:0 0 0 0 rgba(56,189,248,.35)}70%{box-shadow:0 0 0 0 rgba(56,189,248,0)}to{box-shadow:0 0 0 0 rgba(56,189,248,.35)}}@keyframes selectedPulse{0%{box-shadow:inset 0 0 0 2px rgba(125,211,252,.95),0 0 8px 0 rgba(56,189,248,.25)}50%{box-shadow:inset 0 0 0 2px rgba(125,211,252,.75),0 0 14px 3px rgba(56,189,248,.45)}to{box-shadow:inset 0 0 0 2px rgba(125,211,252,.95),0 0 8px 0 rgba(56,189,248,.25)}}@keyframes selectedUnitHalo{0%{box-shadow:0 0 0 0 hsla(53,98%,77%,.45),inset 0 0 0 0 hsla(53,98%,77%,.25)}50%{box-shadow:0 0 0 6px hsla(53,98%,77%,.05),0 0 10px 4px hsla(53,98%,77%,.45)}to{box-shadow:0 0 0 0 hsla(53,98%,77%,.45),inset 0 0 0 0 hsla(53,98%,77%,.25)}}@keyframes impactPulse{0%{opacity:.85}to{opacity:1}}@keyframes impactSlash{0%{opacity:0;transform:rotate(-24deg) scaleX(.15) translateX(-18%)}28%{opacity:1}to{opacity:0;transform:rotate(-24deg) scaleX(1.1) translateX(14%)}}@keyframes impactWard{0%{opacity:0;transform:scale(.58)}34%{opacity:1}to{opacity:0;transform:scale(1.16)}}@keyframes impactBurst{0%{opacity:0;transform:scale(.28) rotate(0deg)}30%{opacity:1}to{opacity:0;transform:scale(1.05) rotate(42deg)}}@media (min-width:768px){.game-board{--cell-size:66px}.game-board-viewport{height:min(70vh,800px);min-height:min(70vh,800px);max-height:min(70vh,800px)}}@media (max-width:768px){.game-shell{padding:.75rem}.cell{--cell-size:44px}.play-action-toolbar{width:100%;overflow-x:auto;padding-bottom:.2rem;scrollbar-width:thin}.play-action-toolbar .reel-btn{white-space:nowrap}.turn-chip{margin-right:0}.reel-btn,button.reel-btn{width:auto;padding:.5rem .7rem;font-size:.8rem}}@keyframes unitImpact{0%{transform:scale(1);filter:saturate(1.6) brightness(1.3)}35%{transform:scale(1.16) rotate(-3deg)}to{transform:scale(1);filter:saturate(1.1) grayscale(.1)}}.game-board-stage{position:relative;width:-moz-max-content;width:max-content;margin:0 auto;transform:scale(var(--board-zoom,1));transform-origin:top center;transition:transform .18s ease}.game-board-viewport{position:relative}.game-board-viewport:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 90px rgba(2,6,14,.62),inset 0 60px 60px -50px rgba(120,170,255,.12),inset 0 0 0 1px hsla(0,0%,100%,.06);z-index:5}.game-board-stage:before{content:"";position:absolute;inset:-6% -4%;pointer-events:none;z-index:0;background:radial-gradient(60% 45% at 30% 12%,rgba(56,189,248,.14),transparent 70%),radial-gradient(55% 45% at 78% 92%,rgba(52,211,153,.12),transparent 72%);filter:blur(6px)}.game-board-stage>.game-board{position:relative;z-index:1}.board-hit-stop{animation:boardHitStop .2s ease-out}@keyframes boardHitStop{0%{filter:brightness(1.55) contrast(1.14) saturate(1.1)}to{filter:brightness(1) contrast(1) saturate(1)}}.particle-layer{position:absolute;inset:0;pointer-events:none;z-index:6;overflow:visible}.particle-burst{width:0;height:0}.particle-burst,.particle-ring{position:absolute;transform:translate(-50%,-50%)}.particle-ring{left:0;top:0;width:12px;height:12px;border-radius:9999px;border:2px solid var(--burst-color,var(--accent-hit));opacity:0;animation:ringPop .5s ease-out forwards}.particle-shard{position:absolute;left:0;top:0;width:5px;height:5px;border-radius:9999px;background:var(--burst-color,var(--accent-hit));box-shadow:0 0 6px var(--burst-color,var(--accent-hit));opacity:0;transform:translate(-50%,-50%) rotate(var(--shard-angle,0deg)) translateY(0);animation:shardFly .62s ease-out forwards}.particle-hit{--burst-color:var(--accent-hit)}.particle-guard{--burst-color:var(--accent-objective)}.particle-defeat{--burst-color:var(--accent-crit)}@keyframes shardFly{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--shard-angle,0deg)) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--shard-angle,0deg)) translateY(calc(-1 * var(--shard-distance, 22px))) scale(.4)}}@keyframes ringPop{0%{opacity:.9;width:6px;height:6px}to{opacity:0;width:58px;height:58px}}.floating-layer{position:absolute;inset:0;pointer-events:none;z-index:6;overflow:visible}.floating-number{position:absolute;transform:translate(-50%,-50%);font-weight:800;font-size:1.05rem;line-height:1;letter-spacing:.01em;text-shadow:0 1px 2px rgba(0,0,0,.85),0 0 8px rgba(0,0,0,.6);animation:floatRise 1s ease-out forwards;will-change:transform,opacity}.floating-damage{color:#fde68a}.floating-crit{color:#f0abfc;font-size:1.25rem}.floating-heal{color:#6ee7b7}.floating-guard{color:#fcd34d}.floating-miss{color:#cbd5e1}.floating-defeat{color:#fca5a5;font-size:1.3rem}.floating-static{animation:floatStatic .7s ease-out forwards}@keyframes floatRise{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}18%{opacity:1;transform:translate(-50%,-65%) scale(1.12)}70%{opacity:1;transform:translate(-50%,-110%) scale(1)}to{opacity:0;transform:translate(-50%,-150%) scale(.92)}}@keyframes floatStatic{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}.screen-shake-heavy{animation:screenShake .38s cubic-bezier(.36,.07,.19,.97)}.screen-shake-light{animation:screenShakeLight .24s cubic-bezier(.36,.07,.19,.97)}@keyframes screenShake{0%,to{transform:translateZ(0)}20%{transform:translate3d(-5px,3px,0)}40%{transform:translate3d(5px,-4px,0)}60%{transform:translate3d(-4px,4px,0)}80%{transform:translate3d(4px,-2px,0)}}.combat-hud{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto auto;align-items:stretch;gap:.6rem;border-radius:1rem;border:1px solid hsla(0,0%,100%,.14);background:linear-gradient(160deg,rgba(17,26,45,.85),rgba(8,13,23,.92));box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 10px 30px -18px rgba(0,0,0,.7);padding:.65rem .8rem}.combat-hud-meter{display:flex;flex-direction:column;gap:.28rem;min-width:0}.combat-hud-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.combat-hud-label{font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(236,242,251,.72)}.combat-hud-value{font-size:.82rem;font-weight:800;font-variant-numeric:tabular-nums;color:rgba(236,242,251,.95)}.combat-hud-track{position:relative;height:8px;border-radius:9999px;background:rgba(2,6,14,.7);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.06);overflow:hidden}.combat-hud-fill{height:100%;border-radius:inherit;transition:width .4s cubic-bezier(.22,1,.36,1);min-width:2px}.combat-hud-fill-health{background:linear-gradient(90deg,#059669,var(--accent-ally));box-shadow:0 0 10px var(--accent-ally-glow)}.combat-hud-fill-ammo{background:linear-gradient(90deg,#0284c7,var(--accent-supply));box-shadow:0 0 10px var(--accent-supply-glow)}.combat-hud-fill-progress{background:linear-gradient(90deg,#d97706,var(--accent-objective));box-shadow:0 0 10px var(--accent-objective-glow)}.combat-hud-sub{font-size:.6rem;color:rgba(236,242,251,.55);letter-spacing:.02em}.combat-hud-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05rem;padding:0 .5rem;border-left:1px solid hsla(0,0%,100%,.08);min-width:3rem}.combat-hud-stat-value{font-size:1.35rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;color:hsla(48,97%,77%,.95);text-shadow:0 0 12px var(--accent-objective-glow)}.combat-hud-stat-enemy{color:var(--accent-enemy);text-shadow:0 0 12px var(--accent-enemy-glow)}.combat-hud-stat-label{font-size:.58rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(236,242,251,.6)}@media (max-width:640px){.combat-hud{grid-template-columns:repeat(2,minmax(0,1fr))}.combat-hud-stat{border-left:none;border-top:1px solid hsla(0,0%,100%,.08);padding-top:.3rem}}:root[data-motion=reduced] .combat-hud-fill{transition:none!important}@media (prefers-reduced-motion:reduce){.combat-hud-fill{transition:none}}@keyframes screenShakeLight{0%,to{transform:translateZ(0)}30%{transform:translate3d(-2px,1px,0)}60%{transform:translate3d(2px,-1px,0)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sparks-chip-host{position:fixed;top:.75rem;left:.75rem;z-index:50}.sparks-session-offer{min-height:1px}.settings-backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(2,6,14,.66);backdrop-filter:blur(4px);animation:fadeIn .18s ease-out}.settings-panel{width:min(420px,100%);border-radius:1rem;border:1px solid hsla(0,0%,100%,.16);background:linear-gradient(170deg,rgba(23,35,58,.97),rgba(10,16,28,.98));box-shadow:0 24px 60px rgba(0,0,0,.55);padding:1.1rem 1.2rem;outline:none;animation:panelPop .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes panelPop{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.battle-result-overlay{position:relative;overflow:hidden;animation:resultRise .4s ease-out}.result-eyebrow{text-transform:uppercase;letter-spacing:.4em;font-size:.7rem;color:hsla(48,97%,77%,.9)}.result-title{margin-top:.1rem;text-shadow:0 2px 18px rgba(250,204,21,.3)}.battle-result-loss .result-eyebrow{color:hsla(0,96%,89%,.85);letter-spacing:.2em}.victory-rays{position:absolute;inset:-40%;background:conic-gradient(from 0deg,rgba(250,204,21,.16),transparent 12%,rgba(250,204,21,.16) 25%,transparent 37%,rgba(250,204,21,.16) 50%,transparent 62%,rgba(250,204,21,.16) 75%,transparent 87%,rgba(250,204,21,.16));animation:rayspin 9s linear infinite;pointer-events:none;z-index:0}.battle-result-overlay>:not(.victory-rays){position:relative;z-index:1}@keyframes rayspin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes resultRise{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.unit:before{inset:1px;border-radius:inherit;background:radial-gradient(circle at 32% 22%,hsla(0,0%,100%,.36),transparent 46%),linear-gradient(160deg,color-mix(in srgb,var(--unit-accent) 28%,transparent),transparent 60%)}.unit:after,.unit:before{content:"";position:absolute;pointer-events:none;z-index:0}.unit:after{left:21%;right:21%;top:18%;bottom:24%;background:radial-gradient(circle at 50% 16%,var(--unit-silhouette) 0 18%,transparent 19%),linear-gradient(180deg,var(--unit-silhouette),transparent 74%);border-radius:46% 46% 36% 36%;clip-path:polygon(50% 0,72% 22%,78% 62%,58% 100%,42% 100%,22% 62%,28% 22%);opacity:.95}.unit-role-ranger:after,.unit-role-scout:after{clip-path:polygon(50% 0,82% 38%,63% 44%,74% 100%,50% 72%,26% 100%,37% 44%,18% 38%)}.unit-role-support:after,.unit-role-vanguard:after{clip-path:polygon(50% 0,82% 18%,76% 74%,50% 100%,24% 74%,18% 18%)}.unit-role-mystic:after,.unit-role-rogue:after{clip-path:polygon(50% 0,72% 28%,100% 42%,68% 58%,58% 100%,42% 100%,32% 58%,0 42%,28% 28%)}.unit-role-beast:after,.unit-role-elite:after{clip-path:polygon(50% 0,64% 22%,92% 12%,76% 48%,92% 78%,62% 72%,50% 100%,38% 72%,8% 78%,24% 48%,8% 12%,36% 22%)}@media (max-width:768px){.floating-number{font-size:.92rem}.settings-panel{padding:.9rem 1rem}}:root[data-motion=reduced] .battle-result-overlay,:root[data-motion=reduced] .board-hit-stop,:root[data-motion=reduced] .cell,:root[data-motion=reduced] .cell-impact-defeat:before,:root[data-motion=reduced] .cell-impact-guard:before,:root[data-motion=reduced] .cell-impact-hit:before,:root[data-motion=reduced] .cell-move-teleport,:root[data-motion=reduced] .cell-selected,:root[data-motion=reduced] .floating-number,:root[data-motion=reduced] .game-board-stage,:root[data-motion=reduced] .particle-burst,:root[data-motion=reduced] .particle-ring,:root[data-motion=reduced] .particle-shard,:root[data-motion=reduced] .reel-btn,:root[data-motion=reduced] .screen-shake-heavy,:root[data-motion=reduced] .screen-shake-light,:root[data-motion=reduced] .unit,:root[data-motion=reduced] .unit.ready,:root[data-motion=reduced] .unit.unit-selected,:root[data-motion=reduced] .victory-rays{animation:none!important;transition:none!important}@media (prefers-reduced-motion:reduce){.battle-impact-banner,.battle-result-loss,.battle-result-overlay,.battle-result-win,.board-hit-stop,.cell,.cell-impact-defeat,.cell-impact-defeat:before,.cell-impact-guard,.cell-impact-guard:before,.cell-impact-hit,.cell-impact-hit:before,.cell-move-teleport,.cell-selected,.floating-number,.game-board-stage,.particle-burst,.particle-ring,.particle-shard,.reel-btn,.screen-shake-heavy,.screen-shake-light,.unit.ready,.unit.unit-impact-defeat,.unit.unit-impact-guard,.unit.unit-impact-hit,.unit.unit-selected,.victory-rays{transition:none;animation:none;transform:none}}:root[data-motion=full] .unit.ready{animation:unitPulse .9s ease-in-out infinite}:root[data-motion=full] .floating-number{animation:floatRise 1s ease-out forwards}.qmai-badge{position:fixed;right:max(.6rem,env(safe-area-inset-right));bottom:max(.6rem,env(safe-area-inset-bottom));z-index:40;pointer-events:none}.qmai-badge-link{pointer-events:auto;display:inline-flex;align-items:center;gap:.35rem;border-radius:9999px;border:1px solid hsla(0,0%,100%,.14);background:rgba(11,17,32,.55);backdrop-filter:blur(4px);padding:.28rem .6rem;font-size:.68rem;font-weight:600;letter-spacing:.01em;color:rgba(236,242,251,.62);box-shadow:0 6px 18px rgba(2,6,14,.35);opacity:.62;transition:opacity .18s ease,color .18s ease,border-color .18s ease,background-color .18s ease,transform .18s ease}.qmai-badge-link:focus-visible,.qmai-badge-link:hover{opacity:1;transform:translateY(-1px);color:hsla(55,97%,88%,.98);border-color:rgba(251,191,36,.55);background:rgba(69,26,9,.5);outline:none}.qmai-badge-link strong{font-weight:800;color:hsla(48,97%,77%,.95)}.qmai-badge-spark{font-size:.7rem;color:hsla(48,97%,77%,.85)}@media (max-width:768px){.qmai-badge{right:max(.45rem,env(safe-area-inset-right));bottom:max(.45rem,env(safe-area-inset-bottom))}.qmai-badge-link{font-size:.62rem;padding:.24rem .5rem}}:root[data-motion=reduced] .qmai-badge-link{transition:none!important}@media (prefers-reduced-motion:reduce){.qmai-badge-link{transition:none}.qmai-badge-link:focus-visible,.qmai-badge-link:hover{transform:none}}.menu-sprite-row{display:flex;flex-wrap:wrap;gap:.55rem;padding:.65rem .5rem;border-radius:.85rem;border:1px solid hsla(0,0%,100%,.1);background:radial-gradient(120% 80% at 10% 0,rgba(251,191,36,.12),transparent 55%),radial-gradient(100% 80% at 90% 100%,rgba(56,189,248,.1),transparent 50%),rgba(2,6,14,.55)}.menu-sprite{width:4.25rem;min-height:4.6rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--unit-accent,#fbbf24) 55%,transparent);background:linear-gradient(160deg,color-mix(in srgb,var(--unit-accent,#fbbf24) 28%,transparent),transparent 60%),linear-gradient(0deg,rgba(0,0,0,.35),rgba(0,0,0,.1)),var(--unit-silhouette,hsla(0,0%,100%,.08));box-shadow:inset 0 -10px 16px rgba(0,0,0,.28),0 0 0 1px hsla(0,0%,100%,.04),0 6px 14px rgba(0,0,0,.25);position:relative;overflow:hidden}.menu-sprite:before{content:"";position:absolute;inset:8% 18% auto;height:42%;border-radius:40% 40% 30% 30%;background:color-mix(in srgb,var(--unit-accent,#fde68a) 35%,transparent);filter:blur(.5px);opacity:.85}.menu-sprite-sigil{position:relative;z-index:1;font-size:1.35rem;line-height:1;text-shadow:0 0 10px color-mix(in srgb,var(--unit-accent,#fbbf24) 70%,transparent)}.menu-sprite-name{position:relative;z-index:1;font-size:.58rem;letter-spacing:.04em;text-transform:uppercase;color:hsla(0,0%,100%,.78)}.menu-card{display:flex;flex-direction:column;align-items:flex-start;min-height:5.25rem;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06)}.menu-card-glyph{font-size:1.15rem;line-height:1;margin-bottom:.35rem;opacity:.95;filter:drop-shadow(0 0 6px rgba(255,255,255,.15))}.unit.unit-role:before{top:18%;width:42%;height:28%;border-radius:50%;background:color-mix(in srgb,var(--unit-accent,#fbbf24) 55%,#0b1220);box-shadow:0 0 0 1px hsla(0,0%,100%,.15)}.unit.unit-role:after,.unit.unit-role:before{content:"";position:absolute;left:50%;transform:translateX(-50%);pointer-events:none;z-index:0}.unit.unit-role:after{top:42%;width:58%;height:40%;border-radius:40% 40% 28% 28%/30% 30% 55% 55%;background:linear-gradient(180deg,color-mix(in srgb,var(--unit-accent,#fbbf24) 45%,transparent),rgba(2,6,14,.35));opacity:.9}.qmai-hub{min-height:100vh;padding:1.25rem;background:radial-gradient(120% 80% at 10% -10%,rgba(251,191,36,.08),transparent 50%),radial-gradient(90% 70% at 100% 0,rgba(56,189,248,.07),transparent 45%),linear-gradient(180deg,#07080d,#0b1020 55%,#05060a);color:#e8edf5}.qmai-hub-panel{max-width:56rem;margin:0 auto;border:1px solid hsla(0,0%,100%,.08);border-radius:1rem;background:rgba(8,10,16,.82);box-shadow:0 24px 60px rgba(0,0,0,.45);padding:1.25rem 1.35rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem}.qmai-hub-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:flex-start;border-bottom:1px solid hsla(0,0%,100%,.06);padding-bottom:1rem}.qmai-hub-brand{display:flex;gap:.85rem;align-items:center}.qmai-hub-mark{width:2.75rem;height:2.75rem;border-radius:.7rem;display:grid;place-items:center;font-weight:800;letter-spacing:.04em;font-size:.85rem;color:#0b1020;background:linear-gradient(145deg,#fbbf24,#f59e0b);box-shadow:0 0 24px rgba(251,191,36,.35)}.qmai-hub-kicker{font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(251,191,36,.75);margin:0 0 .2rem}.qmai-hub h1{margin:0;font-size:1.75rem;letter-spacing:-.02em}.qmai-hub-lede{margin:.25rem 0 0;color:rgba(232,237,245,.7);font-size:.9rem}.qmai-hub-meta{font-size:.75rem;color:rgba(232,237,245,.65);text-align:right;display:grid;gap:.25rem}.qmai-hub-meta strong{color:#fde68a}.qmai-hub-section h2{margin:0 0 .35rem;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(148,163,184,.95)}.qmai-hub-note{margin:0 0 .65rem;font-size:.75rem;color:rgba(148,163,184,.85)}.qmai-hub-sprite-row,.qmai-hub-terrain-row{display:flex;flex-wrap:wrap;gap:.55rem}.qmai-hub-sprite-card,.qmai-hub-terrain-card{margin:0;padding:.4rem;border-radius:.65rem;border:1px solid hsla(0,0%,100%,.08);background:rgba(0,0,0,.28);display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:4.5rem}.qmai-hub-sprite-card figcaption,.qmai-hub-terrain-card figcaption{display:flex;flex-direction:column;align-items:center;font-size:.58rem;letter-spacing:.04em;text-transform:uppercase;color:rgba(226,232,240,.75)}.qmai-hub-sprite-card .role{color:rgba(148,163,184,.85);font-size:.52rem}.terrain-sprite-token,.unit-sprite-token{display:inline-flex;line-height:0;border-radius:.55rem;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.35)}.terrain-sprite-token img,.unit-sprite-token img{display:block;image-rendering:auto}.qmai-hub-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.55rem}.qmai-hub-link{display:flex;flex-direction:column;gap:.2rem;padding:.75rem .8rem;border-radius:.7rem;border:1px solid hsla(0,0%,100%,.1);background:linear-gradient(160deg,rgba(30,41,59,.55),rgba(2,6,14,.7));color:inherit;text-decoration:none;transition:border-color .15s,background .15s,transform .15s}.qmai-hub-link:hover{border-color:rgba(251,191,36,.45);transform:translateY(-1px)}.qmai-hub-link.is-primary{border-color:rgba(251,191,36,.55);background:linear-gradient(160deg,rgba(180,120,20,.35),rgba(20,16,8,.85))}.qmai-hub-link.is-locked{opacity:.55}.qmai-hub-link .title{font-weight:650;font-size:.92rem}.qmai-hub-link .blurb{font-size:.68rem;color:rgba(148,163,184,.95)}.qmai-hub-footer{display:flex;flex-direction:column;gap:.75rem;border-top:1px solid hsla(0,0%,100%,.06);padding-top:.85rem}.qmai-hub-footer a{color:hsla(48,97%,77%,.9);font-size:.78rem;text-decoration:none}.qmai-hub-footer a:hover{color:#fde68a}.cell-terrain-sprite{position:absolute;right:2px;bottom:2px;width:16px;height:16px;opacity:.92;pointer-events:none;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.35)}.cell-terrain-sprite img{width:100%;height:100%;display:block}.unit.unit-impact-hit{animation:unitHitFlash .42s ease-out;box-shadow:0 0 0 2px rgba(255,240,200,.95),0 0 18px 4px rgba(255,120,60,.75),0 0 28px 8px rgba(255,60,40,.35);filter:brightness(1.45) saturate(1.35)}.unit.unit-impact-hit:after{content:"";position:absolute;inset:-6px;border-radius:999px;pointer-events:none;background:radial-gradient(circle,rgba(255,250,220,.85) 0,rgba(255,140,60,.35) 45%,transparent 70%);animation:hitFlashRing .42s ease-out forwards;z-index:2}.unit.unit-impact-guard{animation:unitHitFlash .48s ease-out;box-shadow:0 0 0 2px rgba(160,220,255,.9),0 0 16px 4px rgba(80,180,255,.55)}.unit.unit-impact-defeat{animation:unitImpact .55s ease-out;filter:brightness(1.6) saturate(.4)}@keyframes unitHitFlash{0%{transform:scale(1);filter:brightness(1)}20%{transform:scale(1.18);filter:brightness(1.7) saturate(1.5)}to{transform:scale(1);filter:brightness(1)}}@keyframes hitFlashRing{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}.unit.moved{position:relative}.unit.moved:before{content:"";position:absolute;inset:2px;border-radius:inherit;pointer-events:none;background:inherit;background-size:cover;background-position:50%;opacity:.35;transform:translate(-10%,8%) scale(.92);filter:blur(.6px) brightness(.85);z-index:-1;animation:moveTrailGhost .9s ease-out forwards}@keyframes moveTrailGhost{0%{opacity:.45;transform:translate(-14%,10%) scale(.9)}to{opacity:0;transform:translate(-28%,18%) scale(.75)}}.cell.cell-move:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,rgba(125,211,252,0),rgba(125,211,252,.18) 40%,rgba(52,211,153,.12) 70%,transparent);animation:movePathGleam 1.4s ease-in-out infinite}@keyframes movePathGleam{0%,to{opacity:.45}50%{opacity:.9}}.cell.cell-move-close:after{animation-duration:1s}.cell.cell-move-mid:after{animation-duration:1.3s}.cell.cell-move-far:after{animation-duration:1.6s}.cell.cell-move-teleport:after{background:radial-gradient(circle at 50% 50%,rgba(196,181,253,.35),transparent 65%)}:root[data-motion=reduced] .cell.cell-move:after,:root[data-motion=reduced] .unit.moved:before,:root[data-motion=reduced] .unit.unit-impact-hit:after{animation:none!important;opacity:0!important}@media (prefers-reduced-motion:reduce){.cell.cell-move:after,.unit.moved:before,.unit.unit-impact-hit:after{animation:none!important;opacity:0!important}}.unit:after{display:none}.unit-role,.unit-threat-pill{z-index:10}.unit-bob{inset:0;z-index:1;transform-origin:50% 100%;animation:unitIdle 2.6s ease-in-out infinite;will-change:transform}.unit-bob,.unit-figure{position:absolute;pointer-events:none}.unit-figure{inset:-8% -6% 3% -6%;background-size:contain;background-repeat:no-repeat;background-position:bottom;filter:drop-shadow(0 2px 2px rgba(2,6,14,.55))}@keyframes unitIdle{0%,to{transform:translateY(0)}50%{transform:translateY(-7%)}}.unit.unit-moving{z-index:6;animation:unitSlide .34s cubic-bezier(.22,.61,.36,1)}@keyframes unitSlide{0%{transform:translate(calc(var(--mv-dx, 0) * (var(--cell-size) + 2px)),calc(var(--mv-dy, 0) * (var(--cell-size) + 2px)))}to{transform:translate(0)}}.unit-figure.unit-lunging{animation:unitLunge .42s ease-out}@keyframes unitLunge{0%{transform:translate(0)}38%{transform:translate(calc(var(--lg-dx, 0) * 36%),calc(var(--lg-dy, 0) * 36%))}to{transform:translate(0)}}.unit-sprite-token{align-items:flex-end;justify-content:center;overflow:visible;background:radial-gradient(circle at 50% 116%,rgba(56,189,248,.18),transparent 68%),linear-gradient(160deg,rgba(30,41,59,.65),rgba(2,6,14,.82));border:1px solid hsla(0,0%,100%,.12)}.unit-sprite-token img{animation:spriteIdle 2.8s ease-in-out infinite;will-change:transform}@keyframes spriteIdle{0%,to{transform:translateY(0)}50%{transform:translateY(-6%)}}@media (prefers-reduced-motion:reduce){.unit-bob,.unit-figure,.unit-figure.unit-lunging,.unit-sprite-token img,.unit.unit-moving{animation:none!important;transform:none!important}}:root[data-motion=reduced] .unit-bob,:root[data-motion=reduced] .unit-figure,:root[data-motion=reduced] .unit-figure.unit-lunging,:root[data-motion=reduced] .unit-sprite-token img,:root[data-motion=reduced] .unit.unit-moving{animation:none!important;transform:none!important}:root[data-motion=full] .unit-bob{animation:unitIdle 2.6s ease-in-out infinite!important}.unit-figure{filter:drop-shadow(0 3px 3px rgba(2,6,14,.5)) drop-shadow(0 7px 9px rgba(2,6,14,.32))}.unit-ground-shadow{position:absolute;left:50%;bottom:4%;width:60%;height:15%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(2,6,14,.6) 0,rgba(2,6,14,.26) 55%,transparent 74%);z-index:0;pointer-events:none;animation:unitGroundShadow 2.6s ease-in-out infinite;will-change:transform,opacity}@keyframes unitGroundShadow{0%,to{transform:translateX(-50%) scale(1);opacity:.62}50%{transform:translateX(-50%) scale(.8);opacity:.4}}.unit.unit-selected .unit-figure{filter:drop-shadow(0 5px 4px rgba(2,6,14,.55)) drop-shadow(0 11px 14px rgba(2,6,14,.42)) brightness(1.08) saturate(1.05)}.unit.unit-selected .unit-ground-shadow{animation-name:unitGroundShadowSelected}@keyframes unitGroundShadowSelected{0%,to{transform:translateX(-50%) scale(1.2);opacity:.5}50%{transform:translateX(-50%) scale(1.02);opacity:.34}}.cell:hover:not(.cell-inactive){filter:brightness(1.08) saturate(1.04)}.cell-hover,.cell:hover:not(.cell-inactive){transform:translateY(-2px) scale(1.02);z-index:3}.cell-hover{filter:brightness(1.1) saturate(1.05);outline:1px solid rgba(148,197,255,.5);outline-offset:-2px}.floating-number{-webkit-text-stroke:.6px rgba(2,6,14,.6);paint-order:stroke fill}.floating-number:not(.floating-static){animation-name:floatRisePop}@keyframes floatRisePop{0%{opacity:0;transform:translate(-50%,-26%) scale(.5)}16%{opacity:1;transform:translate(-50%,-68%) scale(1.3)}34%{opacity:1;transform:translate(-50%,-82%) scale(.98)}72%{opacity:1;transform:translate(-50%,-116%) scale(1.02)}to{opacity:0;transform:translate(-50%,-156%) scale(.9)}}.floating-defeat{text-shadow:0 0 10px hsla(0,91%,71%,.6),0 1px 2px rgba(0,0,0,.85)}.turn-banner-layer{position:fixed;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;pointer-events:none;z-index:60}.turn-banner{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.7rem 2.6rem;border-radius:.9rem;border:1px solid hsla(0,0%,100%,.16);background:linear-gradient(160deg,rgba(15,23,42,.92),rgba(2,6,14,.94));box-shadow:0 18px 50px rgba(0,0,0,.55),inset 0 1px 0 hsla(0,0%,100%,.08);animation:turnBannerIn 1.25s cubic-bezier(.2,.9,.2,1) forwards}.turn-banner-kicker{font-size:.6rem;letter-spacing:.34em;text-transform:uppercase;color:rgba(148,163,184,.9)}.turn-banner-title{font-size:1.55rem;font-weight:800;letter-spacing:.02em;line-height:1}.turn-banner-player{border-color:rgba(74,222,128,.55)}.turn-banner-player .turn-banner-title{color:#bbf7d0;text-shadow:0 0 18px rgba(52,211,153,.5)}.turn-banner-player .turn-banner-kicker{color:rgba(134,239,172,.85)}.turn-banner-enemy{border-color:rgba(248,113,133,.6)}.turn-banner-enemy .turn-banner-title{color:#fecaca;text-shadow:0 0 18px hsla(0,91%,71%,.5)}.turn-banner-enemy .turn-banner-kicker{color:hsla(0,94%,82%,.85)}@keyframes turnBannerIn{0%{opacity:0;transform:translateY(-14px) scale(.94)}16%{opacity:1;transform:translateY(0) scale(1)}74%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.98)}}.turn-banner-static{animation:none;opacity:1}.qmai-hub-sprite-row,.qmai-hub-terrain-row{gap:.7rem}.qmai-hub-sprite-card,.qmai-hub-terrain-card{min-width:5rem;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.qmai-hub-sprite-card:hover,.qmai-hub-terrain-card:hover{transform:translateY(-4px);border-color:rgba(251,191,36,.4);box-shadow:0 16px 30px rgba(0,0,0,.5);background:rgba(0,0,0,.42)}.qmai-hub-sprite-card .unit-sprite-token{transition:transform .2s ease,box-shadow .2s ease}.qmai-hub-sprite-card:hover .unit-sprite-token{transform:translateY(-2px) scale(1.05);box-shadow:0 10px 22px rgba(0,0,0,.5)}.qmai-hub-sprite-card:hover .unit-sprite-token img{animation-duration:1.6s}.qmai-hub-sprite-card figcaption .name{font-size:.62rem;font-weight:650}.qmai-hub-link{position:relative;overflow:hidden;transition:border-color .18s,background .18s,transform .18s,box-shadow .18s}.qmai-hub-link:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(0,0,0,.45)}.qmai-hub-link.is-primary:after{content:"";position:absolute;top:0;left:-60%;width:55%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,234,160,.22),transparent);transform:skewX(-18deg);animation:hubSheen 3.6s ease-in-out infinite;pointer-events:none}@keyframes hubSheen{0%{left:-60%}55%,to{left:130%}}:root[data-motion=reduced] .cell-hover,:root[data-motion=reduced] .cell:hover:not(.cell-inactive),:root[data-motion=reduced] .floating-number,:root[data-motion=reduced] .qmai-hub-link.is-primary:after,:root[data-motion=reduced] .qmai-hub-sprite-card,:root[data-motion=reduced] .qmai-hub-sprite-card:hover .unit-sprite-token,:root[data-motion=reduced] .turn-banner,:root[data-motion=reduced] .unit-ground-shadow{animation:none!important;transition:none!important}:root[data-motion=reduced] .cell-hover,:root[data-motion=reduced] .cell:hover:not(.cell-inactive){transform:none!important}:root[data-motion=reduced] .turn-banner{opacity:1}@media (prefers-reduced-motion:reduce){.cell-hover,.cell:hover:not(.cell-inactive),.floating-number:not(.floating-static),.qmai-hub-link.is-primary:after,.qmai-hub-sprite-card,.qmai-hub-sprite-card:hover .unit-sprite-token,.turn-banner,.unit-ground-shadow{animation:none!important;transition:none!important}.cell-hover,.cell:hover:not(.cell-inactive){transform:none!important}.turn-banner{opacity:1}}:root[data-motion=full] .unit-ground-shadow{animation:unitGroundShadow 2.6s ease-in-out infinite!important}:root[data-motion=full] .unit.unit-selected .unit-ground-shadow{animation:unitGroundShadowSelected 2.6s ease-in-out infinite!important}.hover\:border-amber-300\/45:hover{border-color:rgba(252,211,77,.45)}.hover\:bg-amber-500\/20:hover{background-color:rgba(245,158,11,.2)}.hover\:bg-white\/10:hover{background-color:hsla(0,0%,100%,.1)}.hover\:opacity-100:hover{opacity:1}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-45:disabled{opacity:.45}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:1024px){.lg\:grid-cols-\[minmax\(0\2c 1fr\)_360px\]{grid-template-columns:minmax(0,1fr) 360px}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_420px\]{grid-template-columns:minmax(0,1fr) 420px}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}