*,:before,:after,::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: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:SF Mono,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,ui-monospace,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family: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:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:28 52% 94%;--foreground:20 21% 14%;--card-foreground:20 21% 14%;--popover-foreground:20 21% 14%;--card:30 100% 97%;--popover:30 100% 97%;--secondary:26 45% 85%;--muted:26 45% 85%;--accent:26 45% 85%;--secondary-foreground:21 15% 31%;--accent-foreground:21 15% 31%;--muted-foreground:23 10% 49%;--border:27 31% 79%;--input:27 31% 79%;--primary:20 44% 49%;--ring:20 44% 49%;--primary-foreground:0 0% 100%;--destructive-foreground:0 0% 100%;--destructive:0 43% 51%;--radius:var(--radius-md);--space-1:4px;--space-12:48px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-lg:34px;--radius-md:22px;--radius-pill:9999px;--radius-sm:14px;--elev-flat:none;--focus-ring:0 0 0 4px #b46a463d;--elev-raised:8px 10px 24px #805c462e, -8px -8px 20px #ffffffb3;--elev-ring:0 0 0 1px var(--border);--text-2xl:36px;--text-3xl:54px;--text-4xl:76px;--text-base:16px;--text-lg:18px;--text-sm:14px;--text-xl:24px;--text-xs:12px;--leading-body:1.52;--leading-tight:1.06;--font-display:Inter, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--font-body:Inter, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--font-mono:"SF Mono", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", ui-monospace, Menlo, monospace;--cjk-latin-shift:-.15em}body{font-family:var(--font-body)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-bottom-20{bottom:-5rem}.-left-24{left:-6rem}.-right-16{right:-4rem}.-right-20{right:-5rem}.-right-8{right:calc(var(--space-8) * -1)}.-top-10{top:-2.5rem}.-top-16{top:-4rem}.bottom-4{bottom:var(--space-4)}.bottom-8{bottom:var(--space-8)}.left-12{left:var(--space-12)}.left-2{left:var(--space-2)}.left-5{left:var(--space-5)}.left-\[50\%\]{left:50%}.right-0{right:0}.right-4{right:var(--space-4)}.right-5{right:var(--space-5)}.top-0{top:0}.top-24{top:6rem}.top-4{top:var(--space-4)}.top-5{top:var(--space-5)}.top-\[50\%\]{top:50%}.top-\[calc\(100\%\+0\.5rem\)\]{top:calc(100% + .5rem)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-\[100\]{z-index:100}.-mx-1{margin-left:calc(var(--space-1) * -1);margin-right:calc(var(--space-1) * -1)}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:var(--space-1);margin-bottom:var(--space-1)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:var(--space-1)}.mt-16{margin-top:4rem}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-2{height:var(--space-2)}.h-2\.5{height:.625rem}.h-28{height:7rem}.h-3{height:var(--space-3)}.h-3\.5{height:.875rem}.h-4{height:var(--space-4)}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:var(--space-5)}.h-6{height:var(--space-6)}.h-64{height:16rem}.h-72{height:18rem}.h-8{height:var(--space-8)}.h-9{height:2.25rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.max-h-\[--radix-select-content-available-height\]{max-height:var(--radix-select-content-available-height)}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-2{width:var(--space-2)}.w-2\.5{width:.625rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:var(--space-3)}.w-3\.5{width:.875rem}.w-4{width:var(--space-4)}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:var(--space-5)}.w-6{width:var(--space-6)}.w-60{width:15rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:var(--space-8)}.w-9{width:2.25rem}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-40{max-width:10rem}.max-w-48{max-width:12rem}.max-w-7xl{max-width:80rem}.max-w-\[8rem\]{max-width:8rem}.max-w-\[calc\(100\%-2\.5rem\)\]{max-width:calc(100% - 2.5rem)}.max-w-lg{max-width:32rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\[--radix-select-content-transform-origin\]{transform-origin:var(--radix-select-content-transform-origin)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;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))}.translate-y-\[-50\%\]{--tw-translate-y:-50%;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))}.rotate-180{--tw-rotate:180deg;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))}.rotate-\[-6deg\]{--tw-rotate:-6deg;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))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.animate-ping{animation:1s cubic-bezier(0,0,.2,1) infinite ping}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-1\.5{gap:.375rem}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-2) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-2) * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-3) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-3) * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-4) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-4) * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-5) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-5) * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-6) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-6) * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-border{border-color:hsl(var(--border))}.border-border\/60{border-color:hsl(var(--border) / .6)}.border-border\/70{border-color:hsl(var(--border) / .7)}.border-destructive\/35{border-color:hsl(var(--destructive) / .35)}.border-destructive\/50{border-color:hsl(var(--destructive) / .5)}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/20{border-color:hsl(var(--primary) / .2)}.border-primary\/30{border-color:hsl(var(--primary) / .3)}.border-primary\/40{border-color:hsl(var(--primary) / .4)}.border-transparent{border-color:#0000}.border-l-transparent{border-left-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-background{background-color:hsl(var(--background))}.bg-background\/50{background-color:hsl(var(--background) / .5)}.bg-background\/70{background-color:hsl(var(--background) / .7)}.bg-background\/80{background-color:hsl(var(--background) / .8)}.bg-black\/50{background-color:#00000080}.bg-black\/80{background-color:#000c}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-card\/60{background-color:hsl(var(--card) / .6)}.bg-card\/70{background-color:hsl(var(--card) / .7)}.bg-card\/80{background-color:hsl(var(--card) / .8)}.bg-card\/90{background-color:hsl(var(--card) / .9)}.bg-card\/95{background-color:hsl(var(--card) / .95)}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\/10{background-color:hsl(var(--destructive) / .1)}.bg-destructive\/15{background-color:hsl(var(--destructive) / .15)}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground\/40{background-color:hsl(var(--muted-foreground) / .4)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary-foreground\/15{background-color:hsl(var(--primary-foreground) / .15)}.bg-primary-foreground\/20{background-color:hsl(var(--primary-foreground) / .2)}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/5{background-color:hsl(var(--primary) / .05)}.bg-secondary{background-color:hsl(var(--secondary))}.bg-secondary-foreground\/10{background-color:hsl(var(--secondary-foreground) / .1)}.bg-secondary\/70{background-color:hsl(var(--secondary) / .7)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops))}.from-background{--tw-gradient-from:hsl(var(--background)) var(--tw-gradient-from-position);--tw-gradient-to:hsl(var(--background) / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-secondary{--tw-gradient-from:hsl(var(--secondary)) var(--tw-gradient-from-position);--tw-gradient-to:hsl(var(--secondary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-background{--tw-gradient-to:hsl(var(--background) / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), hsl(var(--background)) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-secondary{--tw-gradient-to:hsl(var(--secondary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), hsl(var(--secondary)) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-card{--tw-gradient-to:hsl(var(--card)) var(--tw-gradient-to-position)}.fill-destructive{fill:hsl(var(--destructive))}.fill-destructive-foreground{fill:hsl(var(--destructive-foreground))}.fill-destructive-foreground\/80{fill:hsl(var(--destructive-foreground) / .8)}.fill-destructive\/15{fill:hsl(var(--destructive) / .15)}.fill-destructive\/20{fill:hsl(var(--destructive) / .2)}.fill-destructive\/75{fill:hsl(var(--destructive) / .75)}.fill-destructive\/85{fill:hsl(var(--destructive) / .85)}.fill-foreground\/15{fill:hsl(var(--foreground) / .15)}.fill-primary{fill:hsl(var(--primary))}.fill-primary-foreground{fill:hsl(var(--primary-foreground))}.fill-primary-foreground\/80{fill:hsl(var(--primary-foreground) / .8)}.fill-primary\/15{fill:hsl(var(--primary) / .15)}.fill-primary\/20{fill:hsl(var(--primary) / .2)}.fill-primary\/80{fill:hsl(var(--primary) / .8)}.fill-secondary-foreground{fill:hsl(var(--secondary-foreground))}.fill-secondary-foreground\/70{fill:hsl(var(--secondary-foreground) / .7)}.stroke-destructive{stroke:hsl(var(--destructive))}.stroke-destructive-foreground{stroke:hsl(var(--destructive-foreground))}.stroke-destructive-foreground\/55{stroke:hsl(var(--destructive-foreground) / .55)}.stroke-destructive-foreground\/70{stroke:hsl(var(--destructive-foreground) / .7)}.stroke-destructive\/80{stroke:hsl(var(--destructive) / .8)}.stroke-foreground{stroke:hsl(var(--foreground))}.stroke-muted-foreground\/70{stroke:hsl(var(--muted-foreground) / .7)}.stroke-primary{stroke:hsl(var(--primary))}.stroke-primary-foreground{stroke:hsl(var(--primary-foreground))}.stroke-primary-foreground\/70{stroke:hsl(var(--primary-foreground) / .7)}.stroke-primary-foreground\/80{stroke:hsl(var(--primary-foreground) / .8)}.stroke-primary\/70{stroke:hsl(var(--primary) / .7)}.stroke-primary\/80{stroke:hsl(var(--primary) / .8)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:var(--space-1)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-\[1px\]{padding:1px}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-5{padding-left:var(--space-5);padding-right:var(--space-5)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-5{padding-top:var(--space-5);padding-bottom:var(--space-5)}.pb-16{padding-bottom:4rem}.pl-8{padding-left:var(--space-8)}.pr-2{padding-right:var(--space-2)}.pt-0{padding-top:0}.pt-1\.5{padding-top:.375rem}.pt-3{padding-top:var(--space-3)}.pt-6{padding-top:var(--space-6)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-display{font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif}.font-mono{font-family:SF Mono,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,ui-monospace,Menlo,monospace}.text-2xl{font-size:var(--text-2xl);line-height:var(--leading-tight)}.text-4xl{font-size:var(--text-4xl);line-height:var(--leading-tight)}.text-\[1\.45px\]{font-size:1.45px}.text-\[1\.5px\]{font-size:1.5px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[2\.2px\]{font-size:2.2px}.text-\[3\.5px\]{font-size:3.5px}.text-\[3\.6px\]{font-size:3.6px}.text-\[4px\]{font-size:4px}.text-\[6px\]{font-size:6px}.text-base{font-size:var(--text-base);line-height:var(--leading-body)}.text-lg{font-size:var(--text-lg);line-height:var(--leading-body)}.text-sm{font-size:var(--text-sm);line-height:var(--leading-body)}.text-xl{font-size:var(--text-xl);line-height:var(--leading-tight)}.text-xs{font-size:var(--text-xs);line-height:var(--leading-body)}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.24em\]{letter-spacing:.24em}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-primary\/80{color:hsl(var(--primary) / .8)}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.underline-offset-4{text-underline-offset:4px}.accent-primary{accent-color:hsl(var(--primary))}.opacity-45{opacity:.45}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 #0000000d;--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg,.shadow-md{--tw-shadow:var(--elev-raised);--tw-shadow-colored:var(--elev-raised);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:var(--elev-ring);--tw-shadow-colored:var(--elev-ring);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:var(--elev-raised);--tw-shadow-colored:var(--elev-raised);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline-none{outline-offset:2px;outline:2px solid #0000}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.blur-2xl{--tw-blur:blur(40px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-3xl{--tw-blur:blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0) scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0) scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.animate-in{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.fade-in,.fade-in-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.slide-in-from-bottom-2{--tw-enter-translate-y:var(--space-2)}.slide-in-from-bottom-4{--tw-enter-translate-y:var(--space-4)}.duration-200{animation-duration:.2s}.duration-500{animation-duration:.5s}.running{animation-play-state:running}.\[stop-color\:hsl\(var\(--card\)\)\]{stop-color:hsl(var(--card))}.\[stop-color\:hsl\(var\(--primary\)\)\]{stop-color:hsl(var(--primary))}.\[stop-color\:hsl\(var\(--secondary\)\)\]{stop-color:hsl(var(--secondary))}.\[stop-color\:hsl\(var\(--secondary-foreground\)\)\]{stop-color:hsl(var(--secondary-foreground))}@keyframes battle-shake{0%,to{transform:translate(0)rotate(0)}20%{transform:translate(-3px,2px)rotate(-.25deg)}40%{transform:translate(3px,-2px)rotate(.25deg)}60%{transform:translate(-2px,1px)rotate(-.18deg)}80%{transform:translate(2px,-1px)rotate(.18deg)}}.battle-shake{animation:.42s ease-out battle-shake}@keyframes damage-number-rise{0%{opacity:0;filter:blur(1px);transform:translateY(7px)scale(.55)}22%{opacity:1;filter:blur();transform:translateY(-2px)scale(1.18)}58%{transform:translateY(-5px)scale(.98)}to{opacity:0;transform:translateY(-16px)scale(.92)}}@keyframes damage-number-critical{0%{opacity:0;filter:brightness(1.3)blur(1.2px);transform:translateY(8px)scale(.42)rotate(-5deg)}24%{opacity:1;filter:brightness(1.6)blur();transform:translateY(-3px)scale(1.28)rotate(2deg)}52%{transform:translateY(-6px)scale(1.05)rotate(-1deg)}to{opacity:0;filter:brightness();transform:translateY(-19px)scale(.95)rotate(0)}}@keyframes damage-critical-label-pop{0%{opacity:0;transform:translateY(5px)scale(.6)}45%{opacity:1;transform:translateY(0)scale(1.12)}to{opacity:0;transform:translateY(-7px)scale(1)}}.damage-number,.damage-critical-label{transform-box:fill-box;transform-origin:50%;paint-order:stroke fill;stroke:hsl(var(--card));stroke-linejoin:round}.damage-number{stroke-width:.9px}.damage-critical-label{stroke-width:.65px}.damage-number-hit{fill:hsl(var(--destructive));stroke:hsl(var(--card));filter:drop-shadow(0 2px 2px hsl(var(--destructive) / .3));animation:.65s cubic-bezier(.22,1,.36,1) both damage-number-rise}.damage-number-critical{fill:hsl(var(--primary));stroke:hsl(var(--card));filter:drop-shadow(0 0 2.5px hsl(var(--primary) / .78)) drop-shadow(0 2px 2px hsl(var(--primary) / .35));animation:.76s cubic-bezier(.22,1,.36,1) both damage-number-critical}.damage-number-finisher{fill:hsl(var(--secondary-foreground));stroke:hsl(var(--card));filter:drop-shadow(0 0 2px hsl(var(--secondary-foreground) / .58))}.damage-number-skill{fill:hsl(var(--primary));stroke:hsl(var(--card));filter:drop-shadow(0 0 2px hsl(var(--primary) / .62))}@keyframes damage-detail-label-fade{0%{opacity:0;transform:translateY(4px)scale(.8)}30%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-5px)scale(.96)}}.damage-critical-label{animation:.7s cubic-bezier(.22,1,.36,1) 55ms both damage-critical-label-pop}.damage-detail-label,.damage-skill-label{paint-order:stroke fill;stroke:hsl(var(--card));stroke-linejoin:round;stroke-width:.6px;transform-box:fill-box;transform-origin:50%;animation:.76s ease-out .12s both damage-detail-label-fade}.damage-skill-label{filter:drop-shadow(0 0 2px hsl(var(--primary) / .6));animation-delay:.17s}@keyframes battle-spark-shoot{0%{opacity:0;stroke-dashoffset:8px;transform:scale(.55)}18%{opacity:1}to{opacity:0;stroke-dashoffset:0;transform:scale(1.08)}}.battle-sparks{pointer-events:none}.battle-spark,.battle-spark-dot{fill:none;stroke:hsl(var(--primary));stroke-width:.85px;stroke-linecap:round;stroke-dasharray:8;transform-box:fill-box;transform-origin:50%;animation:.42s cubic-bezier(.18,.8,.24,1) both battle-spark-shoot}.battle-spark-1{animation-delay:20ms}.battle-spark-2{animation-delay:45ms}.battle-spark-3{animation-delay:70ms}.battle-spark-4{animation-delay:95ms}.battle-spark-5{animation-delay:55ms}.battle-spark-dot{fill:hsl(var(--primary));stroke:none;animation-duration:.52s}.battle-spark-dot-1{animation-delay:80ms}.battle-spark-dot-2{fill:hsl(var(--destructive));animation-delay:.125s}@keyframes turn-cue-enter{0%{opacity:0;transform:translateY(7px)scale(.96)}52%{opacity:1;transform:translateY(-1px)scale(1.015)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes turn-cue-icon-pulse{0%,to{transform:scale(1)rotate(0)}50%{transform:scale(1.13)rotate(-4deg)}}@keyframes turn-cue-sweep{0%{opacity:0;transform:translate(-140%)skew(-16deg)}18%{opacity:.56}to{opacity:0;transform:translate(260%)skew(-16deg)}}.turn-cue{border:1px solid hsl(var(--primary) / .22);background:hsl(var(--muted));box-shadow:inset 0 0 18px hsl(var(--primary) / .05);border-radius:12px;grid-template-columns:auto minmax(0,1fr);gap:3px 10px;padding:10px 12px;animation:.42s cubic-bezier(.22,1,.36,1) both turn-cue-enter;display:grid;position:relative;overflow:hidden}.turn-cue-icon{background:hsl(var(--primary) / .14);width:32px;height:32px;color:hsl(var(--primary));border-radius:9999px;grid-row:1/span 2;justify-content:center;align-self:center;align-items:center;font-size:16px;font-weight:800;animation:.76s ease-in-out 2 turn-cue-icon-pulse;display:flex}.turn-cue-copy{align-items:baseline;gap:7px;min-width:0;display:flex}.turn-cue-copy strong{color:hsl(var(--card-foreground));font-family:var(--font-display);flex:none;font-size:13px}.turn-cue-copy>span{color:hsl(var(--muted-foreground));text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.turn-cue-message{min-width:0;color:hsl(var(--muted-foreground));text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.turn-cue-sweep{background:linear-gradient(90deg, transparent, hsl(var(--primary-foreground) / .34), transparent);width:26%;animation:.82s ease-out 80ms both turn-cue-sweep;position:absolute;inset:-20% auto -20% -25%}.turn-cue-enemy{border-color:hsl(var(--destructive) / .28);box-shadow:inset 0 0 18px hsl(var(--destructive) / .06)}.turn-cue-enemy .turn-cue-icon{background:hsl(var(--destructive) / .14);color:hsl(var(--destructive))}.turn-cue-enemy .turn-cue-sweep{background:linear-gradient(90deg, transparent, hsl(var(--destructive) / .24), transparent)}.turn-cue-flying .turn-cue-icon{animation-duration:.42s;animation-iteration-count:infinite}.turn-cue-won{border-color:hsl(var(--primary) / .42);background:hsl(var(--primary) / .08)}.turn-cue-lost{border-color:hsl(var(--destructive) / .34);background:hsl(var(--destructive) / .06)}.turn-cue-lost .turn-cue-icon{background:hsl(var(--destructive) / .14);color:hsl(var(--destructive))}@keyframes npc-difficulty-panel-change{0%{box-shadow:0 0 0 0 hsl(var(--primary) / 0);transform:scale(.985)}45%{box-shadow:0 0 0 3px hsl(var(--primary) / .14), 0 8px 22px hsl(var(--primary) / .12);transform:scale(1.012)}to{box-shadow:0 0 0 0 hsl(var(--primary) / 0);transform:scale(1)}}@keyframes npc-difficulty-option-active{0%{transform:scale(.92)}55%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes npc-difficulty-detail-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.npc-difficulty-panel-changed{animation:.44s cubic-bezier(.22,1,.36,1) both npc-difficulty-panel-change}.npc-difficulty-option-active{animation:.36s cubic-bezier(.22,1,.36,1) both npc-difficulty-option-active}.npc-difficulty-detail{animation:.28s ease-out both npc-difficulty-detail-in}@media (prefers-reduced-motion:reduce){.npc-difficulty-panel-changed,.npc-difficulty-option-active,.npc-difficulty-detail{animation:none}}@keyframes continuous-transition-enter{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes continuous-transition-progress{0%{transform-origin:0;transform:scaleX(0)}to{transform-origin:0;transform:scaleX(1)}}.continuous-transition{z-index:40;pointer-events:none;justify-content:center;animation:.36s cubic-bezier(.22,1,.36,1) both continuous-transition-enter;display:flex;position:fixed;inset:74px 16px auto}.continuous-transition-card{border:1px solid hsl(var(--primary) / .38);background:hsl(var(--card) / .94);width:min(100%,440px);box-shadow:0 14px 38px hsl(var(--foreground) / .16), inset 0 0 22px hsl(var(--primary) / .07);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:16px;align-items:center;gap:12px;padding:12px 16px;display:flex;position:relative;overflow:hidden}.continuous-transition-mark{background:hsl(var(--primary));width:34px;height:34px;color:hsl(var(--primary-foreground));border-radius:9999px;flex:none;justify-content:center;align-items:center;font-size:17px;animation:.76s ease-in-out 2 turn-cue-icon-pulse;display:flex}.continuous-transition-copy{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.continuous-transition-kicker{color:hsl(var(--primary));font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.continuous-transition-copy strong{color:hsl(var(--card-foreground));font-family:var(--font-display);font-size:15px}.continuous-transition-copy>span:last-child{color:hsl(var(--muted-foreground));text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.continuous-transition-progress{background:hsl(var(--primary) / .12);height:3px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.continuous-transition-progress span{background:hsl(var(--primary));height:100%;animation:1.5s linear both continuous-transition-progress;display:block}@media (width<=639px){.continuous-transition{inset:68px 12px auto}.continuous-transition-card{padding:11px 13px}}@media (prefers-reduced-motion:reduce){.continuous-transition,.continuous-transition-mark,.continuous-transition-progress span{animation:none}}@keyframes charge-meter-shine{0%{opacity:0;transform:translate(-140%)skew(-16deg)}22%{opacity:.72}to{opacity:0;transform:translate(220%)skew(-16deg)}}@keyframes charge-meter-orb-pulse{0%,to{box-shadow:0 0 0 2px hsl(var(--primary) / .14), 0 0 6px hsl(var(--primary) / .28);transform:translate(-50%,-50%)scale(.88)}50%{box-shadow:0 0 0 4px hsl(var(--primary) / .1), 0 0 11px hsl(var(--primary) / .5);transform:translate(-50%,-50%)scale(1.12)}}@keyframes charge-meter-maximum-pulse{0%,to{filter:brightness()}50%{filter:brightness(1.35)}}.charge-meter{gap:8px;display:grid}.charge-meter-track{border:1px solid hsl(var(--border));background:hsl(var(--muted));height:11px;box-shadow:inset 0 1px 3px hsl(var(--foreground) / .12);border-radius:9999px;position:relative;overflow:visible}.charge-meter-fill{border-radius:inherit;background:linear-gradient(90deg, hsl(var(--primary) / .68), hsl(var(--primary)));transition:width .16s ease-out;position:absolute;inset:1px auto 1px 1px;overflow:hidden}.charge-meter-shine{background:linear-gradient(90deg, transparent, hsl(var(--primary-foreground) / .62), transparent);width:28%;animation:1.35s ease-in-out infinite charge-meter-shine;position:absolute;inset:-2px auto -2px -20%}.charge-meter-orb{z-index:2;border:2px solid hsl(var(--card));background:hsl(var(--primary));border-radius:9999px;width:12px;height:12px;transition:left .16s ease-out;animation:.92s ease-in-out infinite charge-meter-orb-pulse;position:absolute;top:50%;transform:translate(-50%,-50%)}.charge-meter-threshold{z-index:1;background:hsl(var(--border));width:1px;height:15px;position:absolute;top:-3px}.charge-meter-threshold-steady{left:47%}.charge-meter-threshold-maximum{left:80%}.charge-meter-copy{justify-content:space-between;align-items:center;gap:8px;display:flex}.charge-meter-tier{font-family:var(--font-mono);color:hsl(var(--primary));flex:none;font-size:11px;font-weight:800}.charge-meter-detail{color:hsl(var(--muted-foreground));text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.2;overflow:hidden}.charge-meter-light .charge-meter-fill{opacity:.72}.charge-meter-steady .charge-meter-track{border-color:hsl(var(--primary) / .32);box-shadow:inset 0 1px 3px hsl(var(--foreground) / .12), 0 0 0 2px hsl(var(--primary) / .05)}.charge-meter-maximum .charge-meter-track{border-color:hsl(var(--primary) / .6);box-shadow:inset 0 1px 3px hsl(var(--foreground) / .12), 0 0 9px hsl(var(--primary) / .22);animation:.72s ease-in-out infinite charge-meter-maximum-pulse}.charge-meter-maximum .charge-meter-fill{background:linear-gradient(90deg, hsl(var(--primary) / .72), hsl(var(--primary)), hsl(var(--primary-foreground) / .68))}.charge-meter-maximum .charge-meter-tier:before{content:"✦ "}@keyframes launch-charge-aura-pulse{0%{opacity:0;filter:blur(1.5px);transform:scale(.38)}38%{opacity:.68;filter:blur(.4px);transform:scale(.92)}to{opacity:0;filter:blur(1.2px);transform:scale(1.34)}}@keyframes launch-charge-ring-lock{0%{opacity:0;stroke-dashoffset:14px;transform:rotate(-26deg)scale(1.38)}42%{opacity:.92;transform:rotate(8deg)scale(.94)}to{opacity:0;stroke-dashoffset:0;transform:rotate(22deg)scale(.68)}}@keyframes launch-charge-core-build{0%{opacity:0;transform:scale(.18)}56%{opacity:.88;transform:scale(.9)}82%{opacity:1;transform:scale(1.34)}to{opacity:0;transform:scale(.72)}}@keyframes launch-charge-rays-contract{0%{opacity:0;stroke-dashoffset:8px;transform:scale(1.55)}48%{opacity:.72}to{opacity:0;stroke-dashoffset:0;transform:scale(.58)}}@keyframes launch-charge-particle-in{0%{opacity:0;transform:translate(var(--charge-x), var(--charge-y)) scale(.5)}64%{opacity:.86}to{opacity:0;transform:translate(0)scale(1.18)}}@keyframes launch-charge-label-pop{0%{opacity:0;transform:translateY(3px)scale(.72)}46%{opacity:1;transform:translateY(0)scale(1.05)}to{opacity:0;transform:translateY(-2px)scale(.94)}}.launch-charge-effect{pointer-events:none}.launch-charge-aura,.launch-charge-ring,.launch-charge-core,.launch-charge-rays,.launch-charge-particle,.launch-charge-label{transform-box:fill-box;transform-origin:50%}.launch-charge-aura{fill:hsl(var(--primary) / .2);animation:.3s ease-out both launch-charge-aura-pulse}.launch-charge-ring{fill:none;stroke:hsl(var(--primary));stroke-width:.72px;stroke-dasharray:2.2 1.1;filter:drop-shadow(0 0 1.5px hsl(var(--primary) / .5));animation:.3s cubic-bezier(.22,1,.36,1) both launch-charge-ring-lock}.launch-charge-ring-inner{animation-duration:.27s;animation-delay:24ms}.launch-charge-core{fill:hsl(var(--primary));filter:drop-shadow(0 0 3px hsl(var(--primary) / .72));animation:.3s ease-in both launch-charge-core-build}.launch-charge-rays{fill:none;stroke:hsl(var(--primary));stroke-width:.75px;stroke-linecap:round;stroke-dasharray:8;animation:.3s ease-in both launch-charge-rays-contract}.launch-charge-particle{fill:hsl(var(--primary));animation:.3s ease-in both launch-charge-particle-in}.launch-charge-particle-1{--charge-x:-7px;--charge-y:-5px}.launch-charge-particle-2{--charge-x:8px;--charge-y:-4px;animation-delay:20ms}.launch-charge-particle-3{--charge-x:5px;--charge-y:7px;animation-delay:38ms}.launch-charge-particle-4{--charge-x:-6px;--charge-y:6px;animation-delay:54ms}.launch-charge-label{fill:hsl(var(--primary));paint-order:stroke fill;stroke:hsl(var(--card));stroke-width:.5px;font-family:var(--font-mono);font-size:3px;font-weight:800;animation:.3s ease-out both launch-charge-label-pop}.launch-charge-effect-foe .launch-charge-aura{fill:hsl(var(--destructive) / .2)}.launch-charge-effect-foe .launch-charge-ring,.launch-charge-effect-foe .launch-charge-rays{stroke:hsl(var(--destructive))}.launch-charge-effect-foe .launch-charge-core,.launch-charge-effect-foe .launch-charge-particle,.launch-charge-effect-foe .launch-charge-label{fill:hsl(var(--destructive))}.launch-charge-effect-foe .launch-charge-core{filter:drop-shadow(0 0 3px hsl(var(--destructive) / .68))}@keyframes launch-charge-foe-aura{0%{opacity:0;transform:scale(.42)}28%{opacity:.42;transform:scale(.78)}68%{opacity:.8;transform:scale(1.06)}to{opacity:.2;transform:scale(1.24)}}@keyframes launch-charge-foe-core{0%{opacity:.18;transform:scale(.55)}42%{opacity:.7;transform:scale(.86)}78%{opacity:1;transform:scale(1.18)}to{opacity:.92;transform:scale(1)}}@keyframes launch-charge-foe-ring{0%{opacity:.18;transform:rotate(-18deg)scale(1.16)}45%{opacity:.72;transform:rotate(4deg)scale(.94)}78%{opacity:1;transform:rotate(12deg)scale(1.02)}to{opacity:.82;transform:rotate(18deg)scale(.96)}}.launch-charge-effect-foe .launch-charge-aura{animation:.82s ease-out both launch-charge-foe-aura}.launch-charge-effect-foe .launch-charge-ring{animation:.82s cubic-bezier(.22,1,.36,1) both launch-charge-foe-ring}.launch-charge-effect-foe .launch-charge-ring-inner{animation-duration:.7s;animation-delay:90ms}.launch-charge-effect-foe .launch-charge-core{animation:.82s cubic-bezier(.22,1,.36,1) both launch-charge-foe-core}.launch-charge-effect-foe .launch-charge-rays,.launch-charge-effect-foe .launch-charge-particle,.launch-charge-effect-foe .launch-charge-label{animation-duration:.82s}@keyframes landing-warning-zone-pulse{0%,to{opacity:.12;transform:scaleX(.78)scaleY(.74)}50%{opacity:.38;transform:scaleX(1.08)scaleY(1)}}@keyframes landing-warning-ring-pulse{0%{opacity:0;stroke-width:1.2px;transform:scale(.54)}22%{opacity:.88}to{opacity:0;stroke-width:.28px;transform:scale(1.34)}}@keyframes landing-warning-crosshair-lock{0%,to{opacity:.5;transform:scale(1.12)}50%{opacity:1;transform:scale(.88)}}@keyframes landing-warning-label-alert{0%,to{opacity:.58;transform:translateY(1px)scale(.96)}50%{opacity:1;transform:translateY(0)scale(1.04)}}.landing-warning{pointer-events:none}.landing-warning-zone,.landing-warning-ring,.landing-warning-crosshair,.landing-warning-label{transform-box:fill-box;transform-origin:50%}.landing-warning-zone{fill:hsl(var(--primary) / .16);animation:.88s ease-in-out infinite landing-warning-zone-pulse}.landing-warning-ring{fill:none;stroke:hsl(var(--primary) / .82);stroke-width:.75px;stroke-dasharray:1.5 1;animation:.9s ease-out infinite landing-warning-ring-pulse}.landing-warning-ring-outer{animation-delay:.18s}.landing-warning-crosshair{fill:none;stroke:hsl(var(--primary));stroke-width:.72px;stroke-linecap:round;animation:.64s ease-in-out infinite landing-warning-crosshair-lock}.landing-warning-label{fill:hsl(var(--primary));paint-order:stroke fill;stroke:hsl(var(--card));stroke-width:.55px;stroke-linejoin:round;font-family:var(--font-mono);font-size:3.1px;font-weight:700;animation:.72s ease-in-out infinite landing-warning-label-alert}.landing-warning-tracking .landing-warning-zone{animation-duration:1.06s}.landing-warning-tracking .landing-warning-ring{animation-duration:1.12s}.landing-warning-tracking .landing-warning-crosshair,.landing-warning-tracking .landing-warning-label{animation-duration:.92s}.landing-warning-near .landing-warning-zone{fill:hsl(var(--secondary-foreground) / .2);animation-duration:.76s}.landing-warning-near .landing-warning-ring,.landing-warning-near .landing-warning-crosshair{stroke:hsl(var(--secondary-foreground) / .9);animation-duration:.74s}.landing-warning-near .landing-warning-label{fill:hsl(var(--secondary-foreground));animation-duration:.76s}.landing-warning-danger .landing-warning-zone{fill:hsl(var(--destructive) / .28);animation-duration:.47s}.landing-warning-danger .landing-warning-ring,.landing-warning-danger .landing-warning-crosshair{stroke:hsl(var(--destructive));filter:drop-shadow(0 0 1.5px hsl(var(--destructive) / .58));animation-duration:.48s}.landing-warning-danger .landing-warning-label{fill:hsl(var(--destructive));filter:drop-shadow(0 0 1.5px hsl(var(--destructive) / .48));animation-duration:.5s}.landing-warning-impact .landing-warning-zone{fill:hsl(var(--destructive) / .4);filter:drop-shadow(0 0 2px hsl(var(--destructive) / .5));animation-duration:.24s}.landing-warning-impact .landing-warning-ring,.landing-warning-impact .landing-warning-crosshair{stroke:hsl(var(--destructive));filter:drop-shadow(0 0 2px hsl(var(--destructive) / .7));animation-duration:.245s}.landing-warning-impact .landing-warning-ring-impact{stroke-width:1.15px;stroke-dasharray:none;animation-duration:.21s;animation-direction:reverse}.landing-warning-impact .landing-warning-label{fill:hsl(var(--destructive));filter:drop-shadow(0 0 2px hsl(var(--destructive) / .64));font-size:3.5px;animation-duration:.26s}@keyframes battle-smoke-rise{0%{opacity:0;filter:blur(.2px);transform:translateY(5px)scale(.42)}14%{opacity:.72;transform:translate(0)scale(.84)}46%{opacity:.52}to{opacity:0;transform:translate(var(--smoke-x), var(--smoke-y)) scale(var(--smoke-scale,1.85));filter:blur(1.15px)}}@keyframes battle-smoke-ground-spread{0%{opacity:0;transform:scaleX(.18)scaleY(.5)}18%{opacity:.56;transform:scaleX(.68)scaleY(1)}52%{opacity:.34}to{opacity:0;transform:scaleX(1.78)scaleY(.34)}}@keyframes battle-smoke-core-flash{0%{opacity:0;transform:scale(.2)}12%{opacity:.9;transform:scale(1.18)}38%{opacity:.46;transform:scale(.84)}to{opacity:0;transform:scale(1.5)}}@keyframes battle-smoke-heatwave{0%{opacity:0;stroke-dashoffset:16px;transform:translateY(2px)scaleX(.62)}24%{opacity:.48}to{opacity:0;stroke-dashoffset:0;transform:translateY(-7px)scaleX(1.22)}}.battle-smoke{pointer-events:none}.battle-smoke-puff,.battle-smoke-ground-cloud,.battle-smoke-core,.battle-smoke-heatwave{transform-box:fill-box;transform-origin:50%}.battle-smoke-puff{fill:hsl(var(--secondary-foreground) / .44);filter:blur(.65px);animation:1.12s ease-out both battle-smoke-rise}.battle-smoke-puff-1{--smoke-x:-8px;--smoke-y:-11px;--smoke-scale:1.72;animation-delay:35ms}.battle-smoke-puff-2{--smoke-x:1px;--smoke-y:-16px;--smoke-scale:2;animation-delay:0s}.battle-smoke-puff-3{--smoke-x:9px;--smoke-y:-9px;--smoke-scale:1.78;animation-delay:75ms}.battle-smoke-puff-4{--smoke-x:-3px;--smoke-y:-20px;--smoke-scale:1.68;animation-delay:.105s}.battle-smoke-puff-5{--smoke-x:6px;--smoke-y:-17px;--smoke-scale:1.58;animation-delay:.145s}.battle-smoke-ground-cloud{fill:hsl(var(--secondary-foreground) / .28);filter:blur(.52px);animation:.98s ease-out both battle-smoke-ground-spread}.battle-smoke-ground-cloud-2{fill:hsl(var(--primary) / .18);animation-duration:1.08s;animation-delay:90ms}.battle-smoke-core{fill:hsl(var(--primary) / .82);filter:drop-shadow(0 0 3px hsl(var(--primary) / .62));animation:.62s ease-out both battle-smoke-core-flash}.battle-smoke-heatwave{fill:none;stroke:hsl(var(--primary) / .42);stroke-width:.55px;stroke-dasharray:16;stroke-linecap:round;filter:blur(.25px);animation:.92s ease-out 70ms both battle-smoke-heatwave}.battle-smoke-critical .battle-smoke-puff{fill:hsl(var(--foreground) / .52);animation-duration:1.36s}.battle-smoke-critical .battle-smoke-ground-cloud{fill:hsl(var(--primary) / .28)}.battle-smoke-miss .battle-smoke-puff{fill:hsl(var(--muted-foreground) / .34);animation-duration:.86s}.battle-smoke-miss .battle-smoke-core{fill:hsl(var(--muted-foreground) / .56);filter:none}.battle-smoke-5 .battle-smoke-puff,.battle-smoke-2 .battle-smoke-puff{fill:hsl(var(--secondary-foreground) / .5)}.battle-smoke-6 .battle-smoke-puff{fill:hsl(var(--primary-foreground) / .42)}.battle-smoke-8 .battle-smoke-puff,.battle-smoke-8 .battle-smoke-core{fill:hsl(var(--destructive) / .6);filter:drop-shadow(0 0 2px hsl(var(--destructive) / .42))}.battle-smoke-8 .battle-smoke-heatwave{stroke:hsl(var(--destructive) / .62)}@keyframes battle-debris-burst{0%{opacity:0;transform:translate(0)rotate(0)scale(.35)}18%{opacity:1}to{opacity:0;transform:translate(var(--debris-x), var(--debris-y)) rotate(var(--debris-rotate)) scale(1)}}.battle-debris{pointer-events:none;transform-origin:50%}.battle-debris-piece,.battle-debris-dot{fill:hsl(var(--primary));transform-box:fill-box;transform-origin:50%;animation:.52s cubic-bezier(.18,.8,.24,1) both battle-debris-burst}.battle-debris-piece-1{--debris-x:-10px;--debris-y:-13px;--debris-rotate:-35deg;animation-delay:15ms}.battle-debris-piece-2{--debris-x:11px;--debris-y:-12px;--debris-rotate:48deg;animation-delay:45ms}.battle-debris-piece-3{--debris-x:13px;--debris-y:8px;--debris-rotate:92deg;animation-delay:70ms}.battle-debris-piece-4{--debris-x:-11px;--debris-y:9px;--debris-rotate:-72deg;animation-delay:35ms}.battle-debris-dot-1{--debris-x:7px;--debris-y:-7px;--debris-rotate:0deg;animation-delay:20ms}.battle-debris-dot-2{--debris-x:-7px;--debris-y:6px;--debris-rotate:0deg;fill:hsl(var(--destructive));animation-delay:85ms}@keyframes battle-debris-fall{0%{opacity:0;transform:translate(0)rotate(0)scale(.35)}12%{opacity:1;transform:translate(var(--fall-x), var(--rise-y)) rotate(calc(var(--fall-rotate) * .35)) scale(1)}48%{opacity:.92;transform:translate(calc(var(--fall-x) * .72), calc(var(--rise-y) * .24)) rotate(calc(var(--fall-rotate) * .72)) scale(.94)}78%{opacity:.76;transform:translate(calc(var(--fall-x) * .48), var(--fall-y)) rotate(var(--fall-rotate)) scale(.86)}88%{opacity:.5;transform:translate(calc(var(--fall-x) * .44), calc(var(--fall-y) - 1.6px)) rotate(calc(var(--fall-rotate) * 1.08)) scale(.78)}to{opacity:0;transform:translate(calc(var(--fall-x) * .4), var(--fall-y)) rotate(calc(var(--fall-rotate) * 1.16)) scale(.7)}}@keyframes battle-debris-land-dust{0%,48%{opacity:0;transform:scaleX(.28)scaleY(.7)}68%{opacity:.44;transform:scaleX(.84)scaleY(1)}to{opacity:0;transform:scaleX(1.5)scaleY(.45)}}.battle-debris-fall{pointer-events:none}.battle-debris-fall-piece{--fall-y:13px;fill:hsl(var(--secondary-foreground));transform-box:fill-box;transform-origin:50%;animation:1.18s cubic-bezier(.18,.72,.2,1) both battle-debris-fall}.battle-debris-fall-piece-1{--fall-x:-8px;--rise-y:-12px;--fall-rotate:-150deg;animation-delay:25ms}.battle-debris-fall-piece-2{--fall-x:9px;--rise-y:-14px;--fall-rotate:172deg;animation-delay:55ms}.battle-debris-fall-piece-3{--fall-x:3px;--rise-y:-17px;--fall-rotate:116deg;animation-delay:85ms}.battle-debris-fall-piece-4{--fall-x:-11px;--rise-y:-9px;--fall-rotate:-74deg;animation-delay:.12s}.battle-debris-fall-piece-5{--fall-x:12px;--rise-y:-10px;--fall-rotate:82deg;animation-delay:.145s}.battle-debris-fall-piece-6{--fall-x:-2px;--rise-y:-19px;--fall-rotate:48deg;animation-delay:.175s}.battle-debris-land-dust{fill:hsl(var(--secondary-foreground) / .28);filter:blur(.5px);transform-box:fill-box;transform-origin:50%;animation:1.18s ease-out 70ms both battle-debris-land-dust}.battle-debris-fall-5 .battle-debris-fall-piece,.battle-debris-fall-2 .battle-debris-fall-piece{fill:hsl(var(--secondary-foreground) / .82)}.battle-debris-fall-6 .battle-debris-fall-piece{fill:hsl(var(--primary-foreground) / .82);filter:drop-shadow(0 0 1px hsl(var(--primary) / .42))}.battle-debris-fall-8 .battle-debris-fall-piece{fill:hsl(var(--destructive));filter:drop-shadow(0 0 1.5px hsl(var(--destructive) / .6))}.battle-debris-fall-9 .battle-debris-fall-piece{fill:hsl(var(--foreground) / .82)}@keyframes battle-impact-glow-pulse{0%{opacity:0;filter:blur();transform:scale(.18)}20%{opacity:.82;filter:blur(.5px);transform:scale(.72)}58%{opacity:.34;filter:blur(1.2px);transform:scale(1.12)}to{opacity:0;filter:blur(2px);transform:scale(1.48)}}@keyframes battle-impact-ring-expand{0%{opacity:0;stroke-width:1.8px;transform:scale(.16)}24%{opacity:1;transform:scale(.62)}to{opacity:0;stroke-width:.25px;transform:scale(1.55)}}@keyframes battle-impact-core-flash{0%{opacity:0;transform:scale(.2)}18%{opacity:1;transform:scale(1.36)}42%{opacity:.82;transform:scale(.82)}to{opacity:0;transform:scale(1.14)}}@keyframes battle-impact-rays-shoot{0%{opacity:0;stroke-dashoffset:8px;transform:scale(.42)}22%{opacity:1}to{opacity:0;stroke-dashoffset:0;transform:scale(1.28)}}@keyframes battle-impact-marker-drop{0%{opacity:0;transform:translateY(-4px)scale(.74)}32%{opacity:1;transform:translateY(0)scale(1.08)}68%{opacity:.9;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-3px)scale(.96)}}.battle-impact-burst{pointer-events:none}.battle-impact-glow,.battle-impact-ring,.battle-impact-core,.battle-impact-rays,.battle-impact-marker{transform-box:fill-box;transform-origin:50%}.battle-impact-glow{fill:hsl(var(--primary) / .24);animation:.68s cubic-bezier(.16,1,.3,1) both battle-impact-glow-pulse}.battle-impact-ring{fill:none;stroke:hsl(var(--primary));animation:.62s cubic-bezier(.16,1,.3,1) both battle-impact-ring-expand}.battle-impact-ring-inner{stroke-width:1.1px;animation-delay:45ms}.battle-impact-ring-outer{stroke-width:.7px;opacity:.78;animation-delay:90ms}.battle-impact-core{fill:hsl(var(--primary));filter:drop-shadow(0 0 3px hsl(var(--primary) / .82));animation:.46s ease-out both battle-impact-core-flash}.battle-impact-rays{fill:none;stroke:hsl(var(--primary));stroke-width:.9px;stroke-linecap:round;stroke-dasharray:8;animation:.52s cubic-bezier(.18,.8,.24,1) 35ms both battle-impact-rays-shoot}.battle-impact-rays-diagonal{stroke-width:.6px;animation-delay:80ms}.battle-impact-marker{fill:hsl(var(--primary));stroke:hsl(var(--primary));stroke-width:.8px;stroke-linecap:round;font-family:var(--font-mono);paint-order:stroke fill;font-size:4px;font-weight:700;animation:.82s cubic-bezier(.22,1,.36,1) .12s both battle-impact-marker-drop}.battle-impact-marker text{stroke:hsl(var(--card));stroke-width:.55px;stroke-linejoin:round}.battle-impact-burst-hit .battle-impact-glow{fill:hsl(var(--destructive) / .24)}.battle-impact-burst-hit .battle-impact-ring,.battle-impact-burst-hit .battle-impact-rays{stroke:hsl(var(--destructive))}.battle-impact-burst-hit .battle-impact-core{fill:hsl(var(--destructive));filter:drop-shadow(0 0 3px hsl(var(--destructive) / .82))}.battle-impact-burst-critical .battle-impact-glow{fill:hsl(var(--primary) / .42);animation-duration:.82s}.battle-impact-burst-critical .battle-impact-ring-outer{stroke-width:1.1px;animation-duration:.76s}.battle-impact-burst-critical .battle-impact-core{filter:drop-shadow(0 0 4px hsl(var(--primary))) drop-shadow(0 0 7px hsl(var(--primary) / .54))}.battle-impact-burst-critical .battle-impact-rays{stroke-width:1.15px;animation-duration:.62s}.battle-impact-burst-miss .battle-impact-glow{fill:hsl(var(--muted-foreground) / .16)}.battle-impact-burst-miss .battle-impact-ring,.battle-impact-burst-miss .battle-impact-rays{stroke:hsl(var(--muted-foreground) / .72)}.battle-impact-burst-miss .battle-impact-core{fill:hsl(var(--muted-foreground));filter:drop-shadow(0 0 2px hsl(var(--muted-foreground) / .48))}@keyframes battlefield-impact-hit{0%{filter:brightness();box-shadow:inset 0 0 0 0 hsl(var(--primary) / 0);transform:scale(1)}5%{filter:brightness(1.24);box-shadow:inset 0 0 0 3px hsl(var(--primary) / .2);transform:scale(1.018)translate(-2px,1px)}16%{filter:brightness(1.24);box-shadow:inset 0 0 0 3px hsl(var(--primary) / .2);transform:scale(1.018)translate(-2px,1px)}28%{filter:brightness(1.1);box-shadow:inset 0 0 0 1px hsl(var(--primary) / .1);transform:scale(.994)translate(2px,-1px)}52%{filter:brightness(1.05);transform:scale(1.006)translate(-1px,1px)}to{filter:brightness();box-shadow:inset 0 0 0 0 hsl(var(--primary) / 0);transform:scale(1)}}@keyframes battlefield-impact-critical{0%{filter:brightness()saturate();box-shadow:inset 0 0 0 0 hsl(var(--primary) / 0);transform:translate(0,0)scale(1)rotate(0)}7%{filter:brightness(1.46)saturate(1.35);box-shadow:inset 0 0 0 5px hsl(var(--primary) / .3);transform:translate(-5px,3px)scale(1.034)rotate(-.5deg)}14%{filter:brightness(1.32)saturate(1.24);box-shadow:inset 0 0 0 3px hsl(var(--primary) / .22);transform:translate(5px,-4px)scale(1.022)rotate(.55deg)}22%{filter:brightness(1.2)saturate(1.16);transform:translate(-4px,-1px)scale(1.012)rotate(-.34deg)}31%{filter:brightness(1.14)saturate(1.1);box-shadow:inset 0 0 0 2px hsl(var(--primary) / .15);transform:translate(4px,3px)scale(.992)rotate(.3deg)}42%{filter:brightness(1.1)saturate(1.07);transform:translate(-3px,1px)scale(1.009)rotate(-.22deg)}54%{filter:brightness(1.07)saturate(1.04);transform:translate(2px,-2px)scale(.997)rotate(.16deg)}68%{filter:brightness(1.04)saturate(1.02);box-shadow:inset 0 0 0 1px hsl(var(--primary) / .08);transform:translate(-1px,1px)scale(1.004)rotate(-.09deg)}84%{filter:brightness(1.02)saturate(1.01);transform:translate(1px)scale(.999)rotate(.04deg)}to{filter:brightness()saturate();box-shadow:inset 0 0 0 0 hsl(var(--primary) / 0);transform:translate(0,0)scale(1)rotate(0)}}@keyframes battlefield-impact-miss{0%{filter:brightness();transform:translate(0)}30%{filter:brightness(1.04);transform:translate(1px)}60%{filter:brightness(.98);transform:translate(-1px)}to{filter:brightness();transform:translate(0)}}.battlefield-impact-hit{animation:.46s cubic-bezier(.22,1,.36,1) both battlefield-impact-hit}.battlefield-impact-critical{will-change:transform, filter;animation:.78s cubic-bezier(.2,.78,.24,1) both battlefield-impact-critical}@keyframes battle-miss-overlay-drift{0%{opacity:0;transform:translate(-16%)skew(-14deg)}18%{opacity:.62}to{opacity:0;transform:translate(28%)skew(-14deg)}}@keyframes battle-miss-vignette-fade{0%{opacity:0}20%{opacity:.4}to{opacity:0}}@keyframes battle-miss-label-slide{0%{opacity:0;transform:translate(-50%,7px)scale(.82)skew(-8deg)}28%{opacity:1;transform:translate(-50%)scale(1.05)skew(2deg)}to{opacity:0;transform:translate(-50%,-7px)scale(.96)skew(0)}}@keyframes battle-miss-arc-sweep{0%{opacity:0;stroke-dashoffset:22px;transform:translate(-3px)}24%{opacity:.8}to{opacity:0;stroke-dashoffset:0;transform:translate(5px)}}@keyframes battle-miss-dust-spread{0%{opacity:0;stroke-dashoffset:18px;transform:scaleX(.45)}28%{opacity:.58}to{opacity:0;stroke-dashoffset:0;transform:scaleX(1.45)}}@keyframes battle-miss-impact-label{0%{opacity:0;transform:translateY(4px)scale(.78)}34%{opacity:1;transform:translateY(0)scale(1.06)}to{opacity:0;transform:translateY(-6px)scale(.94)}}.battle-miss-overlay{border-radius:inherit;overflow:hidden}.battle-miss-wind-line,.battle-miss-vignette,.battle-miss-label{display:block;position:absolute}.battle-miss-wind-line{background:linear-gradient(90deg, transparent, hsl(var(--muted-foreground) / .62), transparent);filter:blur(.15px);border-radius:9999px;height:2px;animation:.62s ease-out both battle-miss-overlay-drift;left:16%;right:-12%}.battle-miss-wind-line-1{top:29%;rotate:-5deg}.battle-miss-wind-line-2{animation-delay:55ms;top:51%;rotate:2deg}.battle-miss-wind-line-3{animation-delay:.105s;top:72%;rotate:8deg}.battle-miss-vignette{background:radial-gradient(circle at 68% 52%, transparent 22%, hsl(var(--muted-foreground) / .08) 56%, hsl(var(--foreground) / .2) 100%);animation:.68s ease-out both battle-miss-vignette-fade;inset:0}.battle-miss-label{min-width:130px;color:hsl(var(--muted-foreground));font-family:var(--font-display);letter-spacing:.08em;text-align:center;text-shadow:0 2px 0 hsl(var(--card)), 0 0 8px hsl(var(--muted-foreground) / .25);font-size:clamp(16px,3.6vw,28px);font-weight:800;animation:.76s cubic-bezier(.22,1,.36,1) both battle-miss-label-slide;top:22%;left:50%}.battle-miss-impact{pointer-events:none}.battle-miss-arc,.battle-miss-dust-line,.battle-miss-impact-label{transform-box:fill-box;transform-origin:50%}.battle-miss-arc{fill:none;stroke:hsl(var(--muted-foreground) / .72);stroke-width:.72px;stroke-dasharray:22;stroke-linecap:round;animation:.62s ease-out both battle-miss-arc-sweep}.battle-miss-dust-line{fill:none;stroke:hsl(var(--secondary-foreground) / .52);stroke-width:.58px;stroke-dasharray:18;stroke-linecap:round;animation:.76s ease-out 55ms both battle-miss-dust-spread}.battle-miss-dust-line-2{animation-duration:.88s;animation-delay:.12s}.battle-miss-impact-label{fill:hsl(var(--muted-foreground));paint-order:stroke fill;stroke:hsl(var(--card));stroke-width:.58px;stroke-linejoin:round;font-family:var(--font-mono);font-size:3.6px;font-weight:800;animation:.78s ease-out 70ms both battle-miss-impact-label}@keyframes battle-hit-stop-flash{0%{opacity:0}4%,16%{opacity:.48}22%,to{opacity:0}}@keyframes battle-hit-stop-frame{0%{opacity:0;border-width:0;transform:scale(1.08)}6%,18%{opacity:.7;border-width:4px;transform:scale(1)}30%,to{opacity:0;border-width:1px;transform:scale(1.015)}}@keyframes battle-hit-stop-focus{0%{opacity:0;transform:scale(1.24)}5%,19%{opacity:.44;transform:scale(1)}34%,to{opacity:0;transform:scale(1.08)}}.battle-hit-stop-overlay{border-radius:inherit;overflow:hidden}.battle-hit-stop-flash,.battle-hit-stop-frame,.battle-hit-stop-focus{display:block;position:absolute}.battle-hit-stop-flash{background:hsl(var(--primary) / .18);mix-blend-mode:screen;animation:.42s steps(2,end) both battle-hit-stop-flash;inset:0}.battle-hit-stop-frame{border:3px solid hsl(var(--primary) / .48);border-radius:inherit;box-shadow:inset 0 0 24px hsl(var(--primary) / .2);animation:.46s steps(2,end) both battle-hit-stop-frame;inset:1%}.battle-hit-stop-focus{border-radius:inherit;background:radial-gradient(circle at 68% 52%, transparent 16%, hsl(var(--foreground) / .08) 48%, hsl(var(--foreground) / .36) 100%);animation:.52s steps(2,end) both battle-hit-stop-focus;inset:-3%}.battle-hit-stop-critical .battle-hit-stop-flash{background:hsl(var(--primary) / .34);animation-duration:.56s}.battle-hit-stop-critical .battle-hit-stop-frame{border-color:hsl(var(--primary) / .74);box-shadow:inset 0 0 34px hsl(var(--primary) / .3);animation-duration:.6s}.battle-hit-stop-critical .battle-hit-stop-focus{background:radial-gradient(circle at 68% 52%, transparent 12%, hsl(var(--foreground) / .12) 42%, hsl(var(--foreground) / .5) 100%);animation-duration:.64s}@keyframes battle-critical-camera-flash{0%{opacity:0}5%{opacity:.82}13%{opacity:.12}22%{opacity:.42}38%,to{opacity:0}}@keyframes battle-critical-camera-vignette{0%{opacity:0;transform:scale(1.16)}10%{opacity:.74;transform:scale(1)}36%{opacity:.28}to{opacity:0;transform:scale(1.05)}}@keyframes battle-critical-camera-line{0%{opacity:0;transform:translate(-24%)scaleX(.3)}12%{opacity:.62}56%{opacity:.2}to{opacity:0;transform:translate(38%)scaleX(1.3)}}.battle-critical-camera-overlay{border-radius:inherit;overflow:hidden}.battle-critical-camera-flash,.battle-critical-camera-vignette,.battle-critical-camera-line{display:block;position:absolute}.battle-critical-camera-flash{background:radial-gradient(circle at 68% 52%, hsl(var(--primary) / .54), hsl(var(--primary) / .16) 24%, transparent 62%);mix-blend-mode:screen;animation:.62s ease-out both battle-critical-camera-flash;inset:0}.battle-critical-camera-vignette{border:5px solid hsl(var(--primary) / .2);border-radius:inherit;background:radial-gradient(circle at 68% 52%, transparent 18%, hsl(var(--foreground) / .08) 48%, hsl(var(--foreground) / .48) 100%);box-shadow:inset 0 0 28px hsl(var(--foreground) / .34);animation:.76s ease-out both battle-critical-camera-vignette;inset:-5%}.battle-critical-camera-line{background:linear-gradient(90deg, transparent, hsl(var(--primary) / .72), transparent);height:1px;filter:drop-shadow(0 0 3px hsl(var(--primary) / .46));transform-origin:100%;border-radius:9999px;animation:.54s ease-out both battle-critical-camera-line;left:38%;right:-12%}.battle-critical-camera-line-1{top:20%;rotate:-11deg}.battle-critical-camera-line-2{animation-delay:35ms;top:39%;rotate:-4deg}.battle-critical-camera-line-3{animation-delay:65ms;top:62%;rotate:5deg}.battle-critical-camera-line-4{animation-delay:90ms;top:80%;rotate:12deg}.battlefield-impact-miss{animation:.32s ease-out both battlefield-impact-miss}@keyframes battle-weather-drift{0%{opacity:.2;transform:translate(-12px,-4px)rotate(-2deg)}50%{opacity:.72}to{opacity:.16;transform:translate(18px,7px)rotate(3deg)}}@keyframes battle-weather-fall{0%{opacity:0;transform:translate(-8px,-14px)rotate(-12deg)}18%{opacity:.8}to{opacity:0;transform:translate(18px,38px)rotate(18deg)}}@keyframes battle-weather-flash{0%,72%,to{opacity:0}76%{opacity:.74}79%{opacity:.08}83%{opacity:.48}}.battle-weather{isolation:isolate;border-radius:inherit;background:linear-gradient(145deg, hsl(var(--primary) / .05), transparent 58%);overflow:hidden}.battle-weather-haze{background:hsl(var(--primary) / .12);filter:blur(18px);border-radius:50%;width:124%;height:38%;animation:5.8s ease-in-out infinite alternate battle-weather-drift;position:absolute;top:18%;left:-12%}.battle-weather-particle{background:hsl(var(--primary) / .42);width:28px;height:2px;box-shadow:0 0 7px hsl(var(--primary) / .26);border-radius:9999px;animation:2.8s linear infinite battle-weather-fall;position:absolute;top:13%;left:18%}.battle-weather-particle-1{animation-delay:-.4s;left:12%}.battle-weather-particle-2{width:18px;animation-delay:-1.5s;top:5%;left:34%}.battle-weather-particle-3{width:24px;animation-delay:-2.2s;top:22%;left:58%}.battle-weather-particle-4{width:14px;animation-delay:-.9s;top:8%;left:76%}.battle-weather-particle-5{width:20px;animation-delay:-2.7s;top:30%;left:88%}.battle-weather-ground{background:hsl(var(--primary) / .08);height:24%;box-shadow:0 -1px 0 hsl(var(--primary) / .2), inset 0 12px 18px hsl(var(--background) / .08);opacity:.72;border-radius:50% 50% 0 0;position:absolute;bottom:7%;left:-8%;right:-8%;transform:skew(-8deg)}.battlefield-stage{isolation:isolate}.battlefield-stage:before{content:"";pointer-events:none;z-index:1;background:linear-gradient(180deg, transparent 54%, hsl(var(--primary) / .06) 100%);position:absolute;inset:0}.battlefield-distant-ridge{fill:hsl(var(--foreground) / .08);pointer-events:none}.battlefield-distant-ridge-back{opacity:.62}.battlefield-distant-ridge-front{fill:hsl(var(--primary) / .1);opacity:.72}.battlefield-landmark{fill:none;stroke:hsl(var(--foreground) / .3);stroke-width:.8px;stroke-linecap:round;stroke-linejoin:round;opacity:.62;pointer-events:none}.landmark-glyph{filter:drop-shadow(0 1px 1px hsl(var(--background) / .24))}.landmark-dot{fill:hsl(var(--primary-foreground) / .56);stroke:none}.landmark-ice-glyph{stroke:hsl(var(--primary-foreground) / .72);filter:drop-shadow(0 0 2px hsl(var(--primary) / .4))}.landmark-lava-glyph{stroke:hsl(var(--destructive) / .86);filter:drop-shadow(0 0 2px hsl(var(--destructive) / .54))}.battlefield-landmark-1{stroke:hsl(var(--primary-foreground) / .56)}.battlefield-landmark-2{stroke:hsl(var(--secondary-foreground) / .62)}.battlefield-landmark-3{stroke:hsl(var(--foreground) / .48)}.battlefield-landmark-4{stroke:hsl(var(--secondary-foreground) / .72)}.battlefield-landmark-5{stroke:hsl(var(--secondary-foreground) / .58)}.battlefield-landmark-6{stroke:hsl(var(--primary-foreground) / .74)}.battlefield-landmark-7{stroke:hsl(var(--primary-foreground) / .5)}.battlefield-landmark-8{stroke:hsl(var(--destructive) / .74)}.battlefield-landmark-9{stroke:hsl(var(--foreground) / .58)}.battlefield-map-guides,.battlefield-engagement-zone{pointer-events:none}.battlefield-map-guide-line{stroke:hsl(var(--foreground) / .11);stroke-width:.35px;stroke-dasharray:1 3}.battlefield-map-guide-label{fill:hsl(var(--muted-foreground) / .72);font-family:var(--font-display);font-size:2.3px;font-weight:700}.battlefield-position-line{stroke-width:.45px;stroke-dasharray:1 2.5;opacity:.34}.battlefield-position-line-player{stroke:hsl(var(--primary))}.battlefield-position-line-foe{stroke:hsl(var(--destructive))}.battlefield-stage-sandstorm .battlefield-distant-ridge,.battlefield-stage-pineMist .battlefield-distant-ridge{opacity:.42}.battlefield-stage-thunderstorm .battlefield-distant-ridge,.battlefield-stage-crownStorm .battlefield-distant-ridge{fill:hsl(var(--foreground) / .14)}.battlefield-stage-lavaAsh .battlefield-distant-ridge-front{fill:hsl(var(--destructive) / .15)}.battlefield-stage-warmBreeze{background-image:linear-gradient(145deg, hsl(var(--primary) / .16), hsl(var(--secondary)) 48%, hsl(var(--card)))}.battlefield-stage-slopeDust{background-image:linear-gradient(145deg, hsl(var(--secondary-foreground) / .13), hsl(var(--secondary)) 48%, hsl(var(--card)))}.battlefield-stage-pineMist{background-image:linear-gradient(145deg, hsl(var(--muted-foreground) / .16), hsl(var(--muted)) 52%, hsl(var(--card)))}.battlefield-stage-meteorGale{background-image:linear-gradient(145deg, hsl(var(--primary) / .12), hsl(var(--secondary)) 45%, hsl(var(--secondary-foreground) / .12))}.battlefield-stage-sandstorm{background-image:linear-gradient(145deg, hsl(var(--secondary-foreground) / .2), hsl(var(--secondary)) 50%, hsl(var(--card)))}.battlefield-stage-auroraSnow{background-image:linear-gradient(145deg, hsl(var(--foreground) / .18), hsl(var(--primary) / .12) 52%, hsl(var(--card)))}.battlefield-stage-thunderstorm{background-image:linear-gradient(145deg, hsl(var(--foreground) / .25), hsl(var(--primary) / .14) 50%, hsl(var(--card)))}.battlefield-stage-lavaAsh{background-image:linear-gradient(145deg, hsl(var(--destructive) / .2), hsl(var(--secondary)) 50%, hsl(var(--card)))}.battlefield-stage-crownStorm{background-image:linear-gradient(145deg, hsl(var(--foreground) / .25), hsl(var(--primary) / .16) 50%, hsl(var(--card)))}.battle-weather-warmBreeze .battle-weather-ground{background:hsl(var(--primary) / .1)}.battle-weather-slopeDust .battle-weather-ground{background:hsl(var(--secondary-foreground) / .14);transform:skew(-16deg)}.battle-weather-pineMist .battle-weather-ground{background:hsl(var(--muted-foreground) / .12);filter:blur(3px)}.battle-weather-meteorGale .battle-weather-ground{background:hsl(var(--primary) / .1);transform:skew(-22deg)}.battle-weather-sandstorm .battle-weather-ground{background:hsl(var(--secondary-foreground) / .18);transform:skew(-18deg)}.battle-weather-auroraSnow .battle-weather-ground{background:hsl(var(--foreground) / .12);box-shadow:0 -1px 0 hsl(var(--primary) / .4), inset 0 12px 18px hsl(var(--primary) / .08)}.battle-weather-thunderstorm .battle-weather-ground{background:hsl(var(--foreground) / .16);box-shadow:0 -1px 0 hsl(var(--primary) / .34), inset 0 12px 18px hsl(var(--primary) / .1)}.battle-weather-lavaAsh .battle-weather-ground{background:hsl(var(--destructive) / .16);box-shadow:0 -1px 0 hsl(var(--destructive) / .46), inset 0 12px 18px hsl(var(--destructive) / .08)}.battle-weather-crownStorm .battle-weather-ground{background:hsl(var(--foreground) / .16);transform:skew(-14deg)}.battle-weather-warmBreeze .battle-weather-haze{background:hsl(var(--primary) / .16)}.battle-weather-warmBreeze .battle-weather-particle{opacity:.3;animation-duration:4.6s}.battle-weather-slopeDust .battle-weather-haze{background:hsl(var(--secondary-foreground) / .14);filter:blur(12px)}.battle-weather-slopeDust .battle-weather-particle{width:34px;height:1px;animation-duration:2.1s}.battle-weather-pineMist .battle-weather-haze{background:hsl(var(--muted-foreground) / .2);filter:blur(22px);height:56%;top:30%}.battle-weather-pineMist .battle-weather-particle{opacity:.22;filter:blur(1.5px);animation-duration:5.2s}.battle-weather-meteorGale .battle-weather-particle{border-radius:0;width:3px;height:3px;animation-duration:1.7s;transform:rotate(45deg)}.battle-weather-sandstorm .battle-weather-haze{background:hsl(var(--secondary-foreground) / .2);filter:blur(10px)}.battle-weather-sandstorm .battle-weather-particle{width:30px;height:1px;animation-duration:1.45s}.battle-weather-auroraSnow .battle-weather-haze{background:hsl(var(--primary) / .15);filter:blur(24px)}.battle-weather-auroraSnow .battle-weather-particle{border-radius:1px;width:4px;height:4px;animation-duration:3.8s}.battle-weather-thunderstorm{background:linear-gradient(145deg, hsl(var(--foreground) / .2), hsl(var(--primary) / .08) 58%, transparent)}.battle-weather-thunderstorm .battle-weather-haze{background:hsl(var(--foreground) / .18)}.battle-weather-thunderstorm .battle-weather-particle{width:22px;height:1px;animation-duration:1.1s}.battle-weather-lightning{background:hsl(var(--primary) / .5);clip-path:polygon(58% 0,100% 0,63% 39%,91% 39%,18% 100%,39% 53%,9% 53%);width:18px;height:62%;filter:drop-shadow(0 0 8px hsl(var(--primary) / .6));opacity:0;animation:4.6s ease-in-out infinite battle-weather-flash;position:absolute;top:7%;right:18%}.battle-weather-lavaAsh .battle-weather-haze{background:hsl(var(--destructive) / .18)}.battle-weather-lavaAsh .battle-weather-particle{background:hsl(var(--destructive) / .58);box-shadow:0 0 7px hsl(var(--destructive) / .42);border-radius:9999px;width:4px;height:4px;animation-duration:2.4s}.battle-weather-crownStorm .battle-weather-haze{background:hsl(var(--foreground) / .18);filter:blur(20px)}.battle-weather-crownStorm .battle-weather-particle{width:38px;height:1px;animation-duration:1.6s}.battle-terrain{isolation:isolate;position:relative}.npc-behavior-card{border:1px solid hsl(var(--destructive) / .3);background:hsl(var(--card) / .86);max-width:150px;color:hsl(var(--destructive));box-shadow:0 4px 14px hsl(var(--foreground) / .1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:11px;align-items:center;gap:7px;padding:7px 9px;animation:.3s ease-out both npc-behavior-enter;display:inline-flex}.npc-behavior-card>span:last-child{flex-direction:column;gap:1px;min-width:0;display:flex}.npc-behavior-card strong{font-family:var(--font-display);white-space:nowrap;font-size:11px}.npc-behavior-card small{color:hsl(var(--muted-foreground));text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.npc-behavior-dot{background:hsl(var(--destructive));width:7px;height:7px;box-shadow:0 0 0 3px hsl(var(--destructive) / .12);border-radius:9999px;flex:none;animation:.76s ease-in-out infinite npc-behavior-dot-pulse}@keyframes npc-behavior-enter{0%{opacity:0;transform:translateY(-5px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes npc-behavior-dot-pulse{0%,to{opacity:.5;transform:scale(.82)}50%{opacity:1;transform:scale(1.12)}}.npc-behavior-card-move{border-color:hsl(var(--secondary-foreground) / .36)}.npc-behavior-card-move .npc-behavior-dot{background:hsl(var(--secondary-foreground));box-shadow:0 0 0 3px hsl(var(--secondary-foreground) / .12)}.npc-behavior-card-aim{border-color:hsl(var(--destructive) / .42)}.npc-behavior-card-charge{border-color:hsl(var(--primary) / .42);color:hsl(var(--primary))}.npc-behavior-card-charge .npc-behavior-dot{background:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .12)}.npc-behavior-card-flight{border-color:hsl(var(--destructive) / .52)}.npc-behavior-card-impact{border-color:hsl(var(--primary) / .5);color:hsl(var(--primary))}.npc-behavior-card-impact .npc-behavior-dot{background:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .12)}@media (prefers-reduced-motion:reduce){.npc-behavior-card,.npc-behavior-dot{animation:none}}.computer-aim-line{fill:none;stroke:hsl(var(--destructive) / .72);filter:drop-shadow(0 0 1.5px hsl(var(--destructive) / .4));pointer-events:none}@keyframes computer-aim-adjust{0%{opacity:.22;stroke-dashoffset:9px}50%{opacity:.82}to{opacity:.38;stroke-dashoffset:0}}.computer-aim-line-adjusting{animation:.56s ease-in-out infinite alternate computer-aim-adjust}.computer-aim-presentation{pointer-events:none}.computer-aim-target{fill:none;pointer-events:none;transform-box:fill-box;transform-origin:50%}.computer-aim-target-outer{stroke:hsl(var(--destructive) / .78);stroke-width:.58px;stroke-dasharray:1.4 1.6;animation:1.15s ease-in-out infinite computer-aim-target-pulse}.computer-aim-target-core{fill:hsl(var(--destructive) / .72);stroke:hsl(var(--destructive) / .9);stroke-width:.35px}.computer-aim-crosshair{fill:none;stroke:hsl(var(--destructive) / .86);stroke-width:.58px;stroke-linecap:round;animation:1.4s ease-in-out infinite alternate computer-aim-crosshair-drift}.computer-aim-label{fill:hsl(var(--destructive));font-family:var(--font-display);paint-order:stroke;stroke:hsl(var(--background) / .9);stroke-width:.8px;font-size:2.7px;font-weight:800;animation:1.15s ease-in-out infinite computer-aim-label-breathe}@keyframes computer-aim-target-pulse{0%,to{opacity:.34;transform:scale(.88)rotate(0)}50%{opacity:.9;transform:scale(1.08)rotate(12deg)}}@keyframes computer-aim-crosshair-drift{0%{opacity:.42;transform:translate(-.8px,.6px)}to{opacity:.94;transform:translate(.8px,-.6px)}}@keyframes computer-aim-label-breathe{0%,to{opacity:.48}50%{opacity:1}}.terrain-ridge{fill:none;stroke:hsl(var(--primary) / .56);stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 1px hsl(var(--primary) / .24))}.terrain-ridge-highlight{stroke:hsl(var(--primary-foreground) / .76);filter:drop-shadow(0 0 1.8px hsl(var(--primary) / .34))}.terrain-contour{fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.terrain-contour-near{stroke:hsl(var(--primary-foreground) / .2);stroke-width:.7px;stroke-dasharray:2.4 2.2}.terrain-contour-deep{stroke:hsl(var(--secondary-foreground) / .26);stroke-width:.85px;stroke-dasharray:1.4 3.1}.terrain-contour-basement{stroke:hsl(var(--foreground) / .16);stroke-width:.62px;stroke-dasharray:.8 4.2;opacity:.72}.terrain-micro-details{pointer-events:none;opacity:.68}.terrain-micro-glyph{fill:none;stroke:hsl(var(--secondary-foreground) / .7);stroke-width:.62px;stroke-linecap:round;stroke-linejoin:round}.terrain-micro-dot{fill:hsl(var(--secondary-foreground) / .62);stroke:hsl(var(--primary-foreground) / .36);stroke-width:.28px}.terrain-micro-details-1 .terrain-micro-glyph{stroke:hsl(var(--primary-foreground) / .72)}.terrain-micro-details-2 .terrain-micro-glyph{stroke:hsl(var(--foreground) / .58)}.terrain-micro-details-3 .terrain-micro-glyph{stroke:hsl(var(--secondary-foreground) / .82)}.terrain-micro-details-5 .terrain-micro-glyph,.terrain-micro-details-6 .terrain-micro-glyph{stroke:hsl(var(--primary-foreground) / .86)}.terrain-micro-details-8 .terrain-micro-glyph,.terrain-micro-details-8 .terrain-micro-dot{stroke:hsl(var(--destructive) / .92);fill:hsl(var(--destructive) / .66)}.terrain-micro-details-9 .terrain-micro-glyph{stroke:hsl(var(--foreground) / .78)}.terrain-interaction-markers{pointer-events:none}.terrain-interaction-marker{opacity:.78}.terrain-marker-halo{fill:hsl(var(--card) / .18);stroke:hsl(var(--primary-foreground) / .22);stroke-width:.42px;stroke-dasharray:.8 1.8;transform-origin:50%;animation:2.8s ease-in-out infinite terrain-marker-pulse}.terrain-marker-glyph{fill:none;stroke:hsl(var(--primary-foreground) / .88);stroke-width:.85px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 1px hsl(var(--primary) / .44))}.terrain-interaction-marker-valley .terrain-marker-glyph{stroke:hsl(var(--secondary-foreground) / .88)}.terrain-interaction-marker-steep .terrain-marker-glyph{stroke:hsl(var(--destructive) / .9);stroke-width:.95px}@keyframes terrain-marker-pulse{0%,to{opacity:.35;transform:scale(.88)}50%{opacity:.78;transform:scale(1.05)}}.battlefield-stage-lavaAsh .terrain-interaction-marker-steep .terrain-marker-glyph{filter:drop-shadow(0 0 2px hsl(var(--destructive) / .66))}.terrain-steep-edge path{fill:none;stroke:hsl(var(--secondary-foreground) / .54);stroke-linecap:round;stroke-width:.75px}.terrain-steep-edge path+path{stroke:hsl(var(--primary-foreground) / .32);stroke-width:.55px}.battlefield-stage-slopeDust .terrain-contour,.battlefield-stage-sandstorm .terrain-contour{stroke:hsl(var(--secondary-foreground) / .38)}.battlefield-stage-auroraSnow .terrain-ridge-highlight,.battlefield-stage-pineMist .terrain-ridge-highlight{stroke:hsl(var(--primary-foreground) / .9)}.battlefield-stage-lavaAsh .terrain-contour-deep{stroke:hsl(var(--destructive) / .62);filter:drop-shadow(0 0 1.5px hsl(var(--destructive) / .38))}.terrain-material-fill{filter:saturate(1.04)}.terrain-material-fill-1{opacity:.94}.terrain-material-fill-2{filter:saturate(.82)contrast(1.08)}.terrain-material-fill-3{filter:saturate(.72)brightness(.96)}.terrain-material-fill-4{filter:saturate(.86)contrast(1.14)}.terrain-material-fill-5{filter:saturate(1.18)brightness(1.03)}.terrain-material-fill-6{filter:saturate(.72)brightness(1.12)}.terrain-material-fill-7{filter:saturate(.9)contrast(1.12)}.terrain-material-fill-8{filter:saturate(1.38)contrast(1.12)}.terrain-material-fill-9{filter:saturate(.72)contrast(1.2)}.terrain-material-surface,.terrain-material-texture{fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.terrain-material-surface{stroke:hsl(var(--primary-foreground) / .18);stroke-width:.8px}.terrain-material-surface-strata{stroke:hsl(var(--secondary-foreground) / .28);stroke-width:.72px;stroke-dasharray:2.2 1.8}.terrain-material-texture{stroke-width:.82px;opacity:.68}.terrain-texture-grass{stroke:hsl(var(--primary-foreground) / .72)}.terrain-texture-rock{stroke:hsl(var(--secondary-foreground) / .78);stroke-width:1px}.terrain-texture-pine{stroke:hsl(var(--foreground) / .56)}.terrain-texture-bridge{stroke:hsl(var(--secondary-foreground) / .82);stroke-width:.92px}.terrain-texture-sand{stroke:hsl(var(--secondary-foreground) / .62);stroke-dasharray:3 1.4}.terrain-texture-ice{stroke:hsl(var(--primary-foreground) / .86);stroke-width:.72px}.terrain-texture-island{stroke:hsl(var(--primary-foreground) / .58)}.terrain-texture-lava{stroke:hsl(var(--destructive) / .9);stroke-width:1.08px;filter:drop-shadow(0 0 1.8px hsl(var(--destructive) / .55))}.terrain-texture-storm{stroke:hsl(var(--foreground) / .7);stroke-dasharray:1.2 1.8}.battlefield-stage-auroraSnow .terrain-texture-ice,.battlefield-stage-pineMist .terrain-texture-pine{opacity:.9}.battlefield-stage-lavaAsh .terrain-material-surface{stroke:hsl(var(--destructive) / .36)}.terrain-detail{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:.7px;opacity:.72}.terrain-detail-soft{stroke:hsl(var(--primary-foreground) / .42);stroke-width:.9px}.terrain-detail-slope{stroke:hsl(var(--secondary-foreground) / .62);stroke-width:.85px}.terrain-detail-pine{stroke:hsl(var(--foreground) / .52);stroke-width:.8px}.terrain-detail-bridge{stroke:hsl(var(--secondary-foreground) / .7);stroke-width:.9px}.terrain-detail-dune{stroke:hsl(var(--secondary-foreground) / .58);stroke-width:.8px}.terrain-detail-ice{stroke:hsl(var(--primary-foreground) / .76);stroke-width:.75px}.terrain-detail-island{stroke:hsl(var(--primary-foreground) / .56);stroke-width:.8px}.terrain-detail-lava{stroke:hsl(var(--destructive) / .86);stroke-width:1.05px;filter:drop-shadow(0 0 2px hsl(var(--destructive) / .42))}.terrain-detail-crown{stroke:hsl(var(--primary-foreground) / .7);stroke-width:.85px}@keyframes terrain-scar-settle{0%{opacity:0;filter:blur(.8px)}6%{opacity:1;filter:blur()}18%{opacity:.86}68%{opacity:.64;filter:blur()}88%{opacity:.28}to{opacity:0;filter:blur(1.2px)}}@keyframes terrain-scar-crater-fade{0%{stroke-width:.74px;transform:scaleX(.58)scaleY(.7)}9%{transform:scaleX(1.08)scaleY(1.15)}22%{transform:scale(1)}70%{transform:scaleX(1.03)scaleY(.92)}to{stroke-width:.12px;transform:scaleX(1.36)scaleY(.32)}}@keyframes terrain-scar-cracks-fade{0%{opacity:0;stroke-dashoffset:10px;transform:scale(.58)}10%{opacity:.9;stroke-dashoffset:0;transform:scale(1.06)}24%{opacity:.72;transform:scale(1)}78%{opacity:.38}to{opacity:0;stroke-dashoffset:-5px;transform:scale(1.28)}}@keyframes terrain-scar-core-cool{0%,10%{opacity:.86;transform:scale(1.22)}42%{opacity:.54;transform:scale(.94)}to{opacity:0;transform:scale(.38)}}.terrain-scar-field{pointer-events:none}.terrain-scar{transform-box:fill-box;transform-origin:50%;animation:7.2s ease-out both terrain-scar-settle}.terrain-scar-crater,.terrain-scar-cracks,.terrain-scar-core{transform-box:fill-box;transform-origin:50%}.terrain-scar-crater{fill:hsl(var(--foreground) / .22);stroke:hsl(var(--primary-foreground) / .46);stroke-width:.42px;filter:drop-shadow(0 .8px .8px hsl(var(--foreground) / .24));animation:7.2s ease-out both terrain-scar-crater-fade}.terrain-scar-cracks{fill:none;stroke:hsl(var(--foreground) / .54);stroke-width:.48px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:10;animation:7.2s ease-out both terrain-scar-cracks-fade}.terrain-scar-core{fill:hsl(var(--foreground) / .34);animation:7.2s ease-out both terrain-scar-core-cool}.terrain-scar-critical .terrain-scar-crater{fill:hsl(var(--primary) / .2);stroke:hsl(var(--primary) / .74);filter:drop-shadow(0 0 2px hsl(var(--primary) / .42))}.terrain-scar-critical .terrain-scar-cracks{stroke:hsl(var(--primary) / .72);stroke-width:.62px}.terrain-scar-critical .terrain-scar-core{fill:hsl(var(--primary) / .6)}.terrain-scar-hit .terrain-scar-crater{fill:hsl(var(--destructive) / .14);stroke:hsl(var(--destructive) / .52)}.terrain-scar-miss .terrain-scar-crater{fill:hsl(var(--muted-foreground) / .14);stroke:hsl(var(--muted-foreground) / .44);stroke-dasharray:1.2 .8}.terrain-scar-miss .terrain-scar-cracks{opacity:.55}.terrain-scar-enemy .terrain-scar-crater{fill:hsl(var(--destructive) / .2);stroke:hsl(var(--destructive) / .6)}.battle-terrain-5 .terrain-scar-crater{fill:hsl(var(--secondary-foreground) / .16);stroke:hsl(var(--secondary-foreground) / .52)}.battle-terrain-6 .terrain-scar-cracks{stroke:hsl(var(--primary-foreground) / .82);filter:drop-shadow(0 0 1px hsl(var(--primary) / .38))}.battle-terrain-8 .terrain-scar-crater{fill:hsl(var(--destructive) / .28);stroke:hsl(var(--destructive) / .82);filter:drop-shadow(0 0 2px hsl(var(--destructive) / .48))}.battle-terrain-8 .terrain-scar-core{fill:hsl(var(--destructive) / .72)}@keyframes terrain-impact-ripple{0%{opacity:0;stroke-width:1.35px;transform:scaleX(.22)scaleY(.55)}20%{opacity:.94;transform:scaleX(.72)scaleY(1)}58%{opacity:.56}to{opacity:0;stroke-width:.3px;transform:scaleX(2.15)scaleY(.72)}}@keyframes terrain-impact-mark{0%{opacity:0;stroke-dashoffset:12px;transform:translateY(3px)scaleX(.4)scaleY(.35)}24%{opacity:.95;transform:translateY(-.8px)scaleX(1.08)scaleY(1.18)}56%{opacity:.78;transform:translateY(0)scale(1)}to{opacity:0;stroke-dashoffset:0;transform:translateY(-3px)scaleX(1.28)scaleY(.92)}}@keyframes terrain-impact-label{0%{opacity:0;transform:translateY(3px)scale(.8)}28%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-5px)scale(.96)}}.terrain-impact{pointer-events:none}.terrain-impact-ripple{fill:none;stroke:hsl(var(--primary) / .78);stroke-width:.7px;transform-box:fill-box;transform-origin:50%;animation:.76s cubic-bezier(.16,1,.3,1) both terrain-impact-ripple}.terrain-impact-ripple-secondary{opacity:.72;animation-duration:.86s;animation-delay:.105s}.terrain-impact-mark{fill:none;stroke:hsl(var(--primary-foreground) / .7);stroke-width:.75px;stroke-linecap:round;stroke-dasharray:12;transform-box:fill-box;transform-origin:50%;animation:.82s cubic-bezier(.16,1,.3,1) 55ms both terrain-impact-mark}.terrain-impact-label{fill:hsl(var(--primary));paint-order:stroke fill;stroke:hsl(var(--card));stroke-width:.55px;stroke-linejoin:round;font-family:var(--font-mono);transform-box:fill-box;transform-origin:50%;font-size:3.1px;font-weight:700;animation:.76s ease-out 70ms both terrain-impact-label}.terrain-impact-2 .terrain-impact-mark{stroke:hsl(var(--secondary-foreground) / .86)}.terrain-impact-5 .terrain-impact-mark{stroke:hsl(var(--secondary-foreground) / .82);stroke-dasharray:1.6 1}.terrain-impact-6 .terrain-impact-mark{stroke:hsl(var(--primary-foreground) / .9);stroke-dasharray:2 1}.terrain-impact-8 .terrain-impact-ripple{stroke:hsl(var(--destructive) / .9);filter:drop-shadow(0 0 2px hsl(var(--destructive) / .5))}.terrain-impact-8 .terrain-impact-label{fill:hsl(var(--destructive))}.terrain-impact-9 .terrain-impact-ripple{stroke:hsl(var(--foreground) / .84)}@keyframes terrain-collision-flash{0%{opacity:0;stroke-width:.5px;transform:scale(.55)}18%{opacity:1;stroke-width:2.2px;transform:scale(1.08)}58%{opacity:.72;stroke-width:1.1px;transform:scale(1)}to{opacity:0;stroke-width:.4px;transform:scale(1.2)}}@keyframes terrain-collision-crack{0%{opacity:0;stroke-dashoffset:13px}24%{opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-4px}}@keyframes terrain-collision-rock{0%{opacity:0;transform:translate(0)scale(.35)rotate(0)}22%{opacity:1}to{opacity:0;transform:translateY(8px)scale(.72)rotate(90deg)}}@keyframes terrain-collision-label{0%{opacity:0;transform:translateY(3px)scale(.8)}20%{opacity:1;transform:translateY(0)scale(1)}72%{opacity:1}to{opacity:0;transform:translateY(-4px)scale(1.04)}}.terrain-collision-burst{pointer-events:none;transform-origin:50%}.terrain-collision-flash{fill:none;stroke:hsl(var(--primary-foreground) / .95);stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 2.5px hsl(var(--primary) / .9));transform-origin:50%;animation:.62s cubic-bezier(.16,1,.3,1) both terrain-collision-flash}.terrain-collision-crack{fill:none;stroke:hsl(var(--secondary-foreground) / .9);stroke-width:.85px;stroke-linecap:round;stroke-dasharray:13 2;animation:.76s ease-out both terrain-collision-crack}.terrain-collision-rock{fill:hsl(var(--secondary-foreground) / .88);stroke:hsl(var(--primary-foreground) / .64);stroke-width:.35px;transform-box:fill-box;transform-origin:50%;animation:.78s cubic-bezier(.2,.75,.3,1) both terrain-collision-rock}.terrain-collision-rock-2{animation-delay:45ms}.terrain-collision-label{fill:hsl(var(--secondary-foreground));font-family:var(--font-display);paint-order:stroke;stroke:hsl(var(--background) / .9);stroke-width:.9px;transform-box:fill-box;transform-origin:50%;font-size:3px;font-weight:800;animation:.82s ease-out both terrain-collision-label}.terrain-collision-burst-6 .terrain-collision-flash,.terrain-collision-burst-8 .terrain-collision-flash{stroke:hsl(var(--destructive));filter:drop-shadow(0 0 3px hsl(var(--destructive) / .9))}.terrain-collision-burst-6 .terrain-collision-rock,.terrain-collision-burst-8 .terrain-collision-rock{fill:hsl(var(--destructive) / .86)}.battlefield-stage-slopeDust .terrain-ridge,.battlefield-stage-sandstorm .terrain-ridge{stroke:hsl(var(--secondary-foreground) / .74)}.battlefield-stage-pineMist .terrain-ridge{stroke:hsl(var(--muted-foreground) / .6);opacity:.78}.battlefield-stage-auroraSnow .terrain-ridge{stroke:hsl(var(--primary-foreground) / .78)}.battlefield-stage-thunderstorm .terrain-ridge,.battlefield-stage-crownStorm .terrain-ridge{stroke:hsl(var(--foreground) / .7)}.battlefield-stage-lavaAsh .terrain-ridge{stroke:hsl(var(--destructive) / .8);filter:drop-shadow(0 0 2px hsl(var(--destructive) / .4))}.battlefield-shell,.battlefield-shell-weather-warmBreeze{--weather-accent:var(--primary)}.battlefield-shell-weather-slopeDust{--weather-accent:var(--secondary-foreground)}.battlefield-shell-weather-pineMist{--weather-accent:var(--muted-foreground)}.battlefield-shell-weather-meteorGale{--weather-accent:var(--primary)}.battlefield-shell-weather-sandstorm{--weather-accent:var(--secondary-foreground)}.battlefield-shell-weather-auroraSnow{--weather-accent:var(--foreground)}.battlefield-shell-weather-thunderstorm{--weather-accent:var(--primary)}.battlefield-shell-weather-lavaAsh{--weather-accent:var(--destructive)}.battlefield-shell-weather-crownStorm{--weather-accent:var(--foreground)}.battlefield-shell:after{content:"";pointer-events:none;border:1px solid hsl(var(--weather-accent) / .16);border-radius:inherit;box-shadow:inset 0 0 34px hsl(var(--weather-accent) / .06);position:absolute;inset:0}@keyframes level-skill-trigger{0%{box-shadow:0 0 0 0 hsl(var(--skill-hsl) / .32);transform:translateY(6px)scale(.975)}38%{box-shadow:0 0 0 7px hsl(var(--skill-hsl) / .08), 0 12px 30px hsl(var(--skill-hsl) / .2);transform:translateY(-2px)scale(1.012)}to{box-shadow:0 0 0 0 hsl(var(--skill-hsl) / 0), 0 6px 16px hsl(var(--skill-hsl) / .1);transform:translateY(0)scale(1)}}@keyframes level-skill-icon-trigger{0%{filter:brightness(.85);transform:scale(.58)rotate(-24deg)}48%{filter:brightness(1.18);transform:scale(1.34)rotate(14deg)}76%{transform:scale(.92)rotate(-5deg)}to{filter:brightness();transform:scale(1)rotate(0)}}@keyframes level-skill-particle-burst{0%{transform:translate(-50%, -50%) rotate(var(--particle-rotate,0deg)) scale(.2);opacity:0}18%{opacity:1}to{transform:translate(calc(-50% + var(--particle-x)), calc(-50% + var(--particle-y))) rotate(calc(var(--particle-rotate,0deg) + 110deg)) scale(1);opacity:0}}@keyframes level-skill-wave-expand{0%{opacity:0;transform:translate(-50%,-50%)scale(.22)}24%{opacity:.72}to{opacity:0;transform:translate(-50%,-50%)scale(1.55)}}@keyframes level-skill-label-in{0%{opacity:0;transform:translateY(8px)scale(.82)}45%{opacity:1;transform:translateY(-2px)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes level-skill-emblem-drift{0%{opacity:0;transform:translateY(8px)rotate(-8deg)scale(.8)}35%{opacity:.13}to{opacity:0;transform:translateY(-5px)rotate(8deg)scale(1.16)}}.level-skill-panel,[data-skill]{--skill-hsl:var(--primary);--skill-symbol-radius:9999px}[data-skill=warmShield]{--skill-hsl:var(--primary);--skill-symbol-radius:34%}[data-skill=slopeBoost]{--skill-hsl:var(--secondary-foreground);--skill-symbol-radius:4px}[data-skill=mistSight]{--skill-hsl:var(--muted-foreground);--skill-symbol-radius:9999px}[data-skill=bridgeShock]{--skill-hsl:var(--primary);--skill-symbol-radius:2px}[data-skill=sandDrift]{--skill-hsl:var(--secondary-foreground);--skill-symbol-radius:9999px}[data-skill=frostGuard]{--skill-hsl:var(--foreground);--skill-symbol-radius:2px}[data-skill=thunderStrike]{--skill-hsl:var(--primary);--skill-symbol-radius:1px}[data-skill=lavaBurn]{--skill-hsl:var(--destructive);--skill-symbol-radius:48% 48% 48% 12%}[data-skill=stormCrown]{--skill-hsl:var(--foreground);--skill-symbol-radius:3px}.level-skill-panel{border-color:hsl(var(--skill-hsl) / .34)}.level-skill-accent{color:hsl(var(--skill-hsl))}.level-skill-icon-wrap{isolation:isolate}.level-skill-icon-ring{border:1px solid hsl(var(--skill-hsl) / .34);opacity:.72;border-radius:9999px;position:absolute;inset:3px}.level-skill-icon-ring-inner{opacity:.48;border-style:dashed;inset:5px;transform:rotate(-18deg)}.level-skill-icon{z-index:1;color:hsl(var(--primary-foreground));background:hsl(var(--skill-hsl));box-shadow:0 5px 12px hsl(var(--skill-hsl) / .24), inset 0 1px 0 hsl(var(--primary-foreground) / .18);position:relative}.level-skill-icon-check{z-index:2;border:2px solid hsl(var(--card));background:hsl(var(--skill-hsl));width:16px;height:16px;color:hsl(var(--primary-foreground));border-radius:9999px;justify-content:center;align-items:center;font-size:10px;font-weight:800;line-height:1;display:flex;position:absolute;top:-2px;right:-1px}.level-skill-icon-wrap-active .level-skill-icon-ring-outer{animation:1.8s linear infinite level-skill-ring-spin}.level-skill-icon-wrap-active .level-skill-icon-ring-inner{animation:1.2s linear infinite level-skill-ring-spin-reverse}.level-skill-icon-wrap-active .level-skill-icon-check{animation:.42s cubic-bezier(.22,1,.36,1) both level-skill-check-pop}.level-skill-icon-wrap-depleted .level-skill-icon{background:hsl(var(--muted));color:hsl(var(--muted-foreground));filter:grayscale(.7);opacity:.72}.level-skill-icon-wrap-depleted .level-skill-icon-ring{border-color:hsl(var(--muted-foreground) / .24)}.skill-charge-meter{border:1px solid hsl(var(--skill-hsl) / .22);background:hsl(var(--skill-hsl) / .08);min-width:106px}.skill-charge-meter-depleted{border-color:hsl(var(--border));background:hsl(var(--muted) / .72)}.skill-cooldown-dot{background:hsl(var(--skill-hsl));width:6px;height:6px;box-shadow:0 0 0 3px hsl(var(--skill-hsl) / .12);border-radius:9999px}.skill-charge-track{background:hsl(var(--background) / .7);border-radius:9999px;height:4px;overflow:hidden}.skill-charge-fill{border-radius:inherit;background:hsl(var(--skill-hsl));height:100%;box-shadow:0 0 8px hsl(var(--skill-hsl) / .58);transition:width .36s cubic-bezier(.22,1,.36,1),background-color .24s;display:block}.skill-charge-meter-depleted .skill-charge-fill{background:hsl(var(--muted-foreground));box-shadow:none}@keyframes level-skill-ring-spin{to{transform:rotate(360deg)}}@keyframes level-skill-ring-spin-reverse{to{transform:rotate(-360deg)}}@keyframes level-skill-check-pop{0%{opacity:0;transform:scale(.45)}70%{opacity:1;transform:scale(1.16)}to{opacity:1;transform:scale(1)}}.level-skill-panel-active{animation:.76s cubic-bezier(.22,1,.36,1) both level-skill-trigger}@keyframes level-skill-upgrade-banner-in{0%{opacity:0;transform:translateY(-8px)scale(.82)}45%{opacity:1;transform:translateY(2px)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes level-skill-upgrade-star{0%{opacity:0;transform:scale(.4)rotate(-35deg)}55%{opacity:1;transform:scale(1.28)rotate(18deg)}to{opacity:1;transform:scale(1)rotate(0)}}.level-skill-upgrade-banner{z-index:4;border:1px solid hsl(var(--skill-hsl) / .42);background:hsl(var(--card) / .96);min-width:156px;color:hsl(var(--skill-hsl));box-shadow:0 8px 20px hsl(var(--skill-hsl) / .18), inset 0 1px 0 hsl(var(--primary-foreground) / .16);border-radius:12px;align-items:center;gap:8px;padding:7px 11px;animation:.62s cubic-bezier(.22,1,.36,1) both level-skill-upgrade-banner-in;display:inline-flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.level-skill-upgrade-banner strong,.level-skill-upgrade-banner span span{display:block}.level-skill-upgrade-banner strong{font-family:var(--font-mono);letter-spacing:.08em;font-size:10px}.level-skill-upgrade-banner span span{color:hsl(var(--muted-foreground));margin-top:2px;font-size:9px;font-weight:600}.level-skill-upgrade-star{font-family:var(--font-display);text-shadow:0 0 8px hsl(var(--skill-hsl) / .62);font-size:19px;line-height:1;animation:.56s cubic-bezier(.22,1,.36,1) 80ms both level-skill-upgrade-star}@media (width<=640px){.level-skill-upgrade-banner{left:auto;right:12px;transform:none}}@keyframes level-skill-recovery-panel{0%{box-shadow:0 0 0 0 hsl(var(--skill-hsl) / 0)}35%{box-shadow:0 0 0 7px hsl(var(--skill-hsl) / .16), 0 10px 28px hsl(var(--skill-hsl) / .18)}to{box-shadow:0 0 0 0 hsl(var(--skill-hsl) / 0)}}@keyframes level-skill-recovery-wave{0%{opacity:0;transform:translate(-50%,-50%)scale(.25)}28%{opacity:.8}to{opacity:0;transform:translate(-50%,-50%)scale(1.4)}}@keyframes level-skill-recovery-spark{0%{opacity:0;transform:translate(-50%,-50%)scale(.35)rotate(0)}24%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--recovery-x)), calc(-50% + var(--recovery-y))) scale(1) rotate(100deg)}}@keyframes level-skill-recovery-label{0%{opacity:0;transform:translate(-50%,5px)scale(.7)}35%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-7px)scale(.96)}}.level-skill-panel-recovery{animation:.72s ease-out both level-skill-recovery-panel}.level-skill-recovery-burst{z-index:3}.level-skill-recovery-wave{border:2px solid hsl(var(--skill-hsl) / .62);width:46px;height:46px;box-shadow:0 0 16px hsl(var(--skill-hsl) / .28);border-radius:9999px;animation:.7s ease-out both level-skill-recovery-wave;position:absolute;top:38px;left:29px}.level-skill-recovery-spark{background:hsl(var(--skill-hsl));width:2px;height:6px;box-shadow:0 0 5px hsl(var(--skill-hsl) / .7);border-radius:9999px;animation:.56s ease-out both level-skill-recovery-spark;position:absolute;top:38px;left:29px}.level-skill-recovery-spark-1{--recovery-x:-21px;--recovery-y:-18px;animation-delay:30ms}.level-skill-recovery-spark-2{--recovery-x:20px;--recovery-y:-14px;animation-delay:75ms}.level-skill-recovery-spark-3{--recovery-x:24px;--recovery-y:18px;animation-delay:.11s}.level-skill-recovery-label{color:hsl(var(--skill-hsl));font-family:var(--font-mono);paint-order:stroke fill;text-shadow:0 1px 0 hsl(var(--card));font-size:10px;font-weight:700;animation:.72s ease-out 80ms both level-skill-recovery-label;position:absolute;top:82px;left:29px;transform:translate(-50%)}@media (width<=640px){.level-skill-recovery-label{left:27px}}.level-skill-icon-active{animation:.66s cubic-bezier(.22,1,.36,1) both level-skill-icon-trigger}.level-skill-aura{background:hsl(var(--skill-hsl) / .12);opacity:.65;transition:opacity .24s,transform .24s}.level-skill-panel-active .level-skill-aura{opacity:1;transform:scale(1.48)}.level-skill-emblem{color:hsl(var(--skill-hsl));opacity:.035;font-size:70px;line-height:1;position:absolute;top:12px;right:26px}.level-skill-panel-active .level-skill-emblem{animation:.92s ease-out both level-skill-emblem-drift}.level-skill-burst{overflow:hidden}.level-skill-wave{border:2px solid hsl(var(--skill-hsl) / .56);border-radius:var(--skill-symbol-radius);width:150px;height:64px;animation:.82s ease-out both level-skill-wave-expand;position:absolute;top:50%;left:50%}.level-skill-wave-2{border-width:1px;width:210px;height:92px;animation-delay:.11s}.level-skill-particle{border-radius:var(--skill-symbol-radius);background:hsl(var(--skill-hsl));width:6px;height:6px;box-shadow:0 0 11px hsl(var(--skill-hsl) / .56);animation:.79s ease-out both level-skill-particle-burst;position:absolute;top:50%;left:50%}.level-skill-particle-1{--particle-x:-124px;--particle-y:-30px;--particle-rotate:12deg;animation-delay:25ms}.level-skill-particle-2{--particle-x:132px;--particle-y:-48px;--particle-rotate:42deg;width:4px;height:4px;animation-delay:75ms}.level-skill-particle-3{--particle-x:-92px;--particle-y:48px;--particle-rotate:75deg;width:3px;height:9px;animation-delay:.125s}.level-skill-particle-4{--particle-x:106px;--particle-y:42px;--particle-rotate:110deg;width:7px;height:7px;animation-delay:.17s}.level-skill-particle-5{--particle-x:-36px;--particle-y:-72px;--particle-rotate:145deg;width:4px;height:10px;animation-delay:.105s}.level-skill-particle-6{--particle-x:42px;--particle-y:70px;--particle-rotate:180deg;width:5px;height:8px;animation-delay:.205s}[data-skill=warmShield] .level-skill-wave{width:92px;height:92px}[data-skill=slopeBoost] .level-skill-wave{width:180px;height:40px;transform:translate(-50%,-50%)skew(-20deg)}[data-skill=mistSight] .level-skill-particle{filter:blur(1.5px)}[data-skill=bridgeShock] .level-skill-particle{width:9px;height:4px}[data-skill=sandDrift] .level-skill-wave{border-style:dashed}[data-skill=frostGuard] .level-skill-particle{transform:rotate(45deg)}[data-skill=thunderStrike] .level-skill-particle{width:3px;height:13px}[data-skill=lavaBurn] .level-skill-particle{width:7px;height:10px}[data-skill=stormCrown] .level-skill-wave{border-radius:50% 50% 22% 22%}@keyframes level-skill-trigger-label-in{0%{opacity:0;transform:translateY(8px)scale(.86)}45%{opacity:1;transform:translateY(-2px)scale(1.03)}to{opacity:1;transform:translateY(0)scale(1)}}.level-skill-trigger-label{border:1px solid hsl(var(--skill-hsl) / .42);background:hsl(var(--card) / .96);min-width:112px;color:hsl(var(--skill-hsl));font-family:var(--font-mono);box-shadow:0 8px 18px hsl(var(--skill-hsl) / .16), inset 0 1px 0 hsl(var(--primary-foreground) / .15);border-radius:12px;align-items:center;gap:8px;padding:7px 10px;font-size:10px;font-weight:700;animation:.58s cubic-bezier(.22,1,.36,1) .12s both level-skill-trigger-label-in;display:inline-flex;position:absolute;bottom:56px;right:16px}.level-skill-trigger-icon{background:hsl(var(--skill-hsl) / .16);width:24px;height:24px;color:hsl(var(--skill-hsl));font-family:var(--font-display);border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:14px;line-height:1;display:flex}.level-skill-trigger-title,.level-skill-trigger-cue{display:block}.level-skill-trigger-title{letter-spacing:.08em;font-size:10px}.level-skill-trigger-cue{color:hsl(var(--muted-foreground));margin-top:2px;font-size:9px;font-weight:600}@keyframes character-walk-player{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(.45px,-.45px)rotate(-1.8deg)}50%{transform:translate(.9px)rotate(0)}75%{transform:translate(.45px,-.45px)rotate(1.8deg)}}@keyframes character-walk-foe{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-.5px,-.35px)rotate(1.5deg)}50%{transform:translate(-1px)rotate(0)}75%{transform:translate(-.5px,-.35px)rotate(-1.5deg)}}.character-walk-player{animation:1.15s ease-in-out infinite character-walk-player}.character-walk-foe{animation:.72s ease-in-out infinite character-walk-foe}.npc-movement-dust{pointer-events:none}@keyframes npc-movement-dust{0%{opacity:0;transform:translateY(1px)scale(.72)}35%{opacity:.72}to{opacity:0;transform:translateY(-2.5px)scale(1.2)}}.npc-movement-dust-puff,.npc-movement-dust-dot{fill:hsl(var(--secondary-foreground) / .48);animation:.62s ease-out infinite npc-movement-dust}.npc-movement-dust-puff-2{animation-delay:.12s}.npc-movement-dust-dot{animation-delay:.22s}@keyframes character-charge-player{0%,to{transform:rotate(-2deg)translate(0)}50%{transform:rotate(-12deg)translate(-.8px,.7px)}}@keyframes character-aim-foe{0%,to{transform:rotate(0)translate(0)}45%{transform:rotate(5deg)translate(-.35px,-.25px)}75%{transform:rotate(2deg)translate(.2px)}}@keyframes character-attack-foe{0%,to{transform:rotate(2deg)translate(0)}42%{transform:rotate(12deg)translate(.9px,.8px)}70%{transform:rotate(8deg)translate(.5px,.3px)}}@keyframes character-release-foe-body{0%{transform:translate(0)rotate(4deg)}18%{transform:translate(-1.2px,.2px)rotate(14deg)}42%{transform:translate(1.8px,-.7px)rotate(-13deg)}68%{transform:translate(.5px)rotate(-5deg)}to{transform:translate(0)rotate(0)}}.character-aim-foe{animation:.52s ease-in-out infinite alternate character-aim-foe}.character-attack-foe{animation:.68s ease-in-out infinite character-attack-foe}.character-release-foe-body{animation:.42s cubic-bezier(.16,1,.3,1) both character-release-foe-body}.npc-muzzle-flash{fill:hsl(var(--primary-foreground) / .96);filter:drop-shadow(0 0 2.5px hsl(var(--primary) / .92));animation:.18s ease-out both npc-muzzle-flash}@keyframes npc-muzzle-flash{0%{opacity:0;transform:scale(.2)}28%{opacity:1;transform:scale(1.4)}to{opacity:0;transform:scale(.45)}}@keyframes character-release-player{0%{transform:rotate(-12deg)translate(-.8px,.7px)}32%{transform:rotate(10deg)translate(1.7px,-.5px)}62%{transform:rotate(4deg)translate(.8px)}to{transform:rotate(0)translate(0)}}@keyframes character-release-foe{0%{transform:rotate(12deg)translate(.8px,.7px)}32%{transform:rotate(-10deg)translate(-1.7px,-.5px)}62%{transform:rotate(-4deg)translate(-.8px)}to{transform:rotate(0)translate(0)}}.character-charge-player,.character-charge-foe,.character-release-player,.character-release-foe{transform-box:fill-box;transform-origin:100%}.character-charge-player{animation:.68s ease-in-out infinite character-charge-player}.character-charge-foe{transform-origin:0;animation:.74s ease-in-out infinite character-charge-foe}.character-release-player{animation:.42s cubic-bezier(.22,1,.36,1) both character-release-player}.character-release-foe{transform-origin:0;animation:.42s cubic-bezier(.22,1,.36,1) both character-release-foe}@keyframes shot-trail-fade{0%{opacity:.85;stroke-width:1.2px}to{opacity:.12;stroke-width:.25px}}@keyframes shot-release-burst{0%{opacity:.75;transform:scale(.7)}to{opacity:0;transform:scale(1.8)}}.shot-trail{stroke:hsl(var(--primary));opacity:.62;filter:drop-shadow(0 0 1.4px hsl(var(--primary) / .65));animation:.42s ease-out both shot-trail-fade}.shot-trail-foe{stroke:hsl(var(--destructive));opacity:.82;stroke-dasharray:2.6 1.1;filter:drop-shadow(0 0 1.8px hsl(var(--destructive) / .74));animation-duration:.56s}.shot-release-burst-foe{stroke:hsl(var(--destructive));filter:drop-shadow(0 0 2px hsl(var(--destructive) / .72))}.shot-foe-warning-ring{fill:none;stroke:hsl(var(--destructive) / .68);stroke-width:.55px;stroke-dasharray:1.2 1.6;transform-box:fill-box;transform-origin:50%;animation:.65s ease-out infinite landing-warning-ring-pulse}.shot-release-burst{fill:none;stroke:hsl(var(--primary));stroke-width:.8px;transform-box:fill-box;transform-origin:50%;animation:.36s ease-out infinite shot-release-burst}@keyframes character-victory-player{0%,to{transform:translateY(0)rotate(0)scale(1)}18%{transform:translateY(-2px)rotate(-4deg)scale(1.04,.97)}36%{transform:translateY(0)rotate(4deg)scale(.98,1.04)}54%{transform:translateY(-1.5px)rotate(-2deg)scale(1.02,.99)}72%{transform:translateY(0)rotate(2deg)scale(.99,1.02)}}@keyframes character-defeat-foe{0%,to{opacity:1;transform:translateY(0)rotate(0)scale(1)}28%{opacity:.9;transform:translateY(2px)rotate(7deg)scale(.98,1.03)}58%{opacity:.76;transform:translateY(1px)rotate(-5deg)scale(1.01,.98)}}.character-victory-player{animation:.86s ease-in-out infinite character-victory-player}.character-defeat-foe{animation:1.25s ease-in-out infinite character-defeat-foe}@keyframes character-victory-arms{0%,to{transform:translateY(0)rotate(0)}35%{transform:translateY(-1px)rotate(-4deg)}70%{transform:translateY(0)rotate(4deg)}}@keyframes character-defeat-arms{0%,to{opacity:.8;transform:translateY(0)rotate(0)}50%{opacity:.48;transform:translateY(1px)rotate(-5deg)}}.character-victory-arms{transform-box:fill-box;transform-origin:bottom;animation:.86s ease-in-out infinite character-victory-arms}.character-defeat-arms{transform-box:fill-box;transform-origin:top;animation:1.25s ease-in-out infinite character-defeat-arms}@keyframes character-hit-recoil{0%{filter:brightness();transform:translate(0)rotate(0)scale(1)}18%{filter:brightness(1.35);transform:translate(-1.8px)rotate(-7deg)scale(1.04,.96)}42%{filter:brightness(1.08);transform:translate(2.8px)rotate(8deg)scale(.96,1.04)}68%{filter:brightness(.9);transform:translate(-1px)rotate(-3deg)scale(1.015,.985)}to{filter:brightness();transform:translate(0)rotate(0)scale(1)}}.character-hit-reaction .character-idle-body{animation:.56s cubic-bezier(.22,1,.36,1) both character-hit-recoil}.character-hit-reaction:after{content:"✦";color:hsl(var(--destructive));font-family:var(--font-display);pointer-events:none;font-size:9px;line-height:1;animation:.56s ease-out both character-hit-spark;position:absolute;top:18%;left:50%}@keyframes character-hit-spark{0%{opacity:0;transform:translate(-50%,4px)scale(.5)rotate(-20deg)}28%{opacity:1;transform:translate(-50%,-2px)scale(1.15)rotate(12deg)}to{opacity:0;transform:translate(-50%,-12px)scale(.7)rotate(35deg)}}@keyframes character-idle-breathe{0%,to{transform:translateY(0)scaleY(1)}50%{transform:translateY(-.7px)scaleY(1.018)}}@keyframes character-idle-gear{0%,to{transform:rotate(-1deg)}50%{transform:rotate(2deg)}}.character-idle-body{transform-box:fill-box;transform-origin:bottom;animation:2.6s ease-in-out infinite character-idle-breathe}.character-idle-player{animation-delay:-.85s}.character-idle-foe{animation-duration:2.9s;animation-delay:-1.55s}.character-idle-body path:nth-of-type(3),.character-idle-body circle:last-of-type{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out infinite character-idle-gear}.character-idle-foe path:nth-of-type(3),.character-idle-foe circle:last-of-type{animation-duration:2.9s;animation-delay:-1.55s}@keyframes battle-skill-flash{0%{opacity:0;transform:scale(.76)}32%{opacity:.3}to{opacity:0;transform:scale(1.16)}}@keyframes battle-skill-symbol{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(-24deg)}38%{opacity:.94;transform:translate(-50%,-50%)scale(1.24)rotate(8deg)}to{opacity:0;transform:translate(-50%,-58%)scale(1)rotate(0)}}@keyframes battle-thunder-bolt{0%{opacity:0;transform:translate(-50%,-54%)translateY(-34%)scale(.5)}22%{opacity:1;transform:translate(-50%,-54%)translateY(-8%)scale(1.04)}30%{opacity:.35}38%{opacity:1}62%{opacity:.8;transform:translate(-50%,-54%)translateY(4%)scale(1)}to{opacity:0;transform:translate(-50%,-54%)translateY(12%)scale(.92)}}@keyframes battle-thunder-impact{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}28%{opacity:.95;transform:translate(-50%,-50%)scale(.7)}to{opacity:0;transform:translate(-50%,-50%)scale(1.8)}}@keyframes battle-burn-impact{0%{opacity:0;transform:scale(.55)}35%{opacity:1;transform:scale(1.08)}72%{opacity:.82;transform:scale(.96)}to{opacity:0;transform:scale(1.18)}}.battle-burn-impact{transform-origin:50%;animation:.9s ease-out both battle-burn-impact}@keyframes battle-skill-orbit{0%{opacity:0;transform:translate(-50%,-50%)scale(.22)rotate(0)}30%{opacity:.72}to{opacity:0;transform:translate(-50%,-50%)scale(1.48)rotate(120deg)}}@keyframes battle-skill-ray{0%{opacity:0;transform:translate(-50%, -50%) rotate(var(--ray-angle)) scaleX(.2)}34%{opacity:.85}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--ray-angle)) scaleX(1.3)}}.battle-skill-flash{border-radius:var(--skill-symbol-radius);background:radial-gradient(circle, hsl(var(--skill-hsl) / .32), transparent 68%);animation:.82s ease-out both battle-skill-flash;position:absolute;inset:14%}.battle-skill-symbol{color:hsl(var(--skill-hsl));font-family:var(--font-display);text-shadow:0 0 22px hsl(var(--skill-hsl) / .46);font-size:clamp(44px,8vw,82px);line-height:1;animation:.86s cubic-bezier(.22,1,.36,1) both battle-skill-symbol;position:absolute;top:44%;left:50%}.battle-thunder-bolt{width:clamp(54px,10vw,96px);height:clamp(82px,15vw,138px);fill:hsl(var(--skill-hsl) / .12);stroke:hsl(var(--skill-hsl));stroke-width:2.2px;filter:drop-shadow(0 0 7px hsl(var(--skill-hsl) / .65));animation:.82s cubic-bezier(.22,1,.36,1) both battle-thunder-bolt;position:absolute;top:44%;left:50%;overflow:visible}.battle-skill-orbit{border:2px solid hsl(var(--skill-hsl) / .52);border-radius:var(--skill-symbol-radius);width:120px;height:120px;animation:.9s ease-out both battle-skill-orbit;position:absolute;top:44%;left:50%}.battle-skill-orbit-2{border-style:dashed;width:170px;height:92px;animation-delay:.1s}.battle-skill-ray{transform-origin:50%;background:linear-gradient(90deg, transparent, hsl(var(--skill-hsl) / .82), transparent);width:160px;height:2px;animation:.72s ease-out both battle-skill-ray;position:absolute;top:44%;left:50%}.battle-skill-ray-1{--ray-angle:0deg}.battle-skill-ray-2{--ray-angle:45deg;animation-delay:45ms}.battle-skill-ray-3{--ray-angle:90deg;animation-delay:90ms}.battle-skill-ray-4{--ray-angle:135deg;animation-delay:.135s}[data-skill=warmShield] .battle-skill-orbit{border-width:4px}[data-skill=slopeBoost] .battle-skill-orbit{height:48px;transform:skew(-20deg)}[data-skill=mistSight] .battle-skill-flash{filter:blur(10px)}[data-skill=bridgeShock] .battle-skill-orbit{border-style:dotted}[data-skill=sandDrift] .battle-skill-orbit{border-style:dashed}[data-skill=frostGuard] .battle-skill-orbit{transform:rotate(45deg)}[data-skill=thunderStrike] .battle-skill-ray{width:210px;height:3px}[data-skill=thunderStrike] .battle-skill-flash{background:radial-gradient(circle, hsl(var(--skill-hsl) / .42), transparent 64%);inset:5%}[data-skill=thunderStrike] .battle-skill-orbit{border-width:3px;width:210px;height:72px;transform:rotate(-12deg)}[data-skill=thunderStrike] .battle-skill-orbit-2{width:242px;height:100px;transform:rotate(24deg)}[data-skill=lavaBurn] .battle-skill-flash{border-radius:48% 48% 24% 24%}[data-skill=stormCrown] .battle-skill-orbit{border-width:3px}@keyframes battle-combo-callout-pop{0%{opacity:0;transform:translateY(4px)scale(.45)}35%{opacity:1;transform:translateY(-1px)scale(1.12)}68%{transform:translateY(0)scale(.98)}to{opacity:0;transform:translateY(-8px)scale(1)}}@keyframes battle-combo-ring-pulse{0%{opacity:.8;transform:scale(.45)}to{opacity:0;transform:scale(1.65)}}.battle-combo-callout{pointer-events:none;animation:.82s cubic-bezier(.22,1,.36,1) 70ms both battle-combo-callout-pop}.battle-combo-ring{fill:hsl(var(--primary) / .12);stroke:hsl(var(--primary));stroke-width:.65px;transform-box:fill-box;transform-origin:50%;animation:.76s ease-out 70ms both battle-combo-ring-pulse}.battle-combo-count,.battle-combo-bonus{fill:hsl(var(--primary));paint-order:stroke fill;stroke:hsl(var(--card));stroke-linejoin:round;stroke-width:.55px;font-family:var(--font-mono);font-weight:700}.battle-combo-count{font-size:3.2px}.battle-combo-bonus{font-size:2.7px}@keyframes combo-pop{0%{opacity:0;transform:scale(.72)rotate(-4deg)}55%{opacity:1;transform:scale(1.12)rotate(2deg)}78%{transform:scale(.96)rotate(-1deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes combo-glow{0%,to{box-shadow:0 6px 14px #805c462e, 0 0 0 0 hsl(var(--primary) / .35)}50%{box-shadow:0 8px 20px #805c463d, 0 0 0 8px hsl(var(--primary) / .08)}}@keyframes combo-spark{0%,to{opacity:.55;transform:scale(.7)rotate(0)}50%{opacity:1;transform:scale(1.35)rotate(90deg)}}.combo-badge{animation:.42s cubic-bezier(.22,1,.36,1) combo-pop,1.6s ease-in-out .42s infinite combo-glow}.combo-spark{animation:.9s ease-in-out infinite combo-spark;display:inline-block}.combo-reward{background:hsl(var(--primary-foreground) / .18);letter-spacing:.04em;border-radius:9999px;padding:2px 6px;font-size:10px;line-height:1;animation:.52s cubic-bezier(.22,1,.36,1) combo-reward-pop}@keyframes combo-reward-pop{0%{opacity:0;transform:translateY(4px)scale(.7)}55%{opacity:1;transform:translateY(-2px)scale(1.12)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes level-unlock-banner-in{0%{opacity:0;transform:translateY(-8px)scale(.88)}45%{opacity:1;transform:translateY(2px)scale(1.03)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes level-unlock-icon-burst{0%{opacity:0;transform:scale(.4)rotate(-30deg)}55%{opacity:1;transform:scale(1.28)rotate(18deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes level-map-item-unlocked{0%{box-shadow:0 0 0 0 hsl(var(--primary) / 0)}35%{box-shadow:0 0 0 6px hsl(var(--primary) / .16), 0 8px 18px hsl(var(--primary) / .16)}to{box-shadow:0 0 0 0 hsl(var(--primary) / 0)}}.level-unlock-banner{border:1px solid hsl(var(--primary) / .38);background:hsl(var(--primary) / .1);color:hsl(var(--primary));box-shadow:0 6px 16px hsl(var(--primary) / .1);border-radius:12px;align-items:center;gap:9px;margin-top:12px;padding:8px 10px;animation:.56s cubic-bezier(.22,1,.36,1) both level-unlock-banner-in;display:flex}.level-unlock-banner strong,.level-unlock-banner span span{display:block}.level-unlock-banner strong{font-family:var(--font-mono);letter-spacing:.08em;font-size:10px}.level-unlock-banner span span{color:hsl(var(--muted-foreground));margin-top:2px;font-size:9px;font-weight:600}.level-unlock-banner-icon{font-family:var(--font-display);text-shadow:0 0 8px hsl(var(--primary) / .6);font-size:20px;line-height:1;animation:.52s cubic-bezier(.22,1,.36,1) 70ms both level-unlock-icon-burst}.level-map-item-unlocked{animation:.7s ease-out both level-map-item-unlocked}.level-preview-card{border:1px solid hsl(var(--primary) / .24);background:linear-gradient(135deg, hsl(var(--card) / .96), hsl(var(--primary) / .08));box-shadow:0 6px 16px hsl(var(--foreground) / .08), inset 0 1px 0 hsl(var(--primary-foreground) / .14);border-radius:14px;gap:12px;margin-top:16px;padding:10px;display:flex;position:relative;overflow:hidden}.level-preview-art{border:1px solid hsl(var(--primary) / .3);background:linear-gradient(160deg, hsl(var(--secondary)), hsl(var(--primary) / .22));border-radius:11px;flex:none;justify-content:center;align-items:center;width:76px;height:76px;display:flex;position:relative;overflow:hidden}.level-preview-art:after{content:"";background:hsl(var(--primary) / .34);border-radius:50%;width:110px;height:18px;position:absolute;bottom:12px;left:-8px;transform:rotate(-8deg)}.level-preview-art:before{content:"";background:hsl(var(--primary) / .28);width:54px;height:1px;box-shadow:12px 13px 0 hsl(var(--primary) / .2), -3px 27px 0 hsl(var(--primary) / .16);position:absolute;top:12px;left:10px;transform:rotate(-12deg)}.level-preview-scene-detail{z-index:1;background:hsl(var(--primary) / .46);box-shadow:0 0 8px hsl(var(--primary) / .34);border-radius:9999px;display:block;position:absolute}.level-preview-scene-detail-1{width:5px;height:5px;top:22px;right:12px}.level-preview-scene-detail-2{width:3px;height:3px;top:31px;left:15px}.level-preview-scene-warmShield{--preview-haze:var(--primary)}.level-preview-scene-slopeBoost{background:linear-gradient(145deg, hsl(var(--secondary)), hsl(var(--primary) / .24))}.level-preview-scene-mistSight{background:linear-gradient(145deg, hsl(var(--muted)), hsl(var(--primary) / .14))}.level-preview-scene-bridgeShock{background:linear-gradient(145deg, hsl(var(--secondary-foreground) / .2), hsl(var(--primary) / .26))}.level-preview-scene-sandDrift{background:linear-gradient(145deg, hsl(var(--secondary-foreground) / .26), hsl(var(--primary) / .2))}.level-preview-scene-frostGuard{background:linear-gradient(145deg, hsl(var(--foreground) / .14), hsl(var(--primary) / .18))}.level-preview-scene-thunderStrike{background:linear-gradient(145deg, hsl(var(--primary) / .3), hsl(var(--secondary)))}.level-preview-scene-lavaBurn{background:linear-gradient(145deg, hsl(var(--destructive) / .3), hsl(var(--primary) / .18))}.level-preview-scene-stormCrown{background:linear-gradient(145deg, hsl(var(--foreground) / .22), hsl(var(--primary) / .22))}.level-preview-scene-mistSight .level-preview-scene-detail{opacity:.45;filter:blur(2px)}.level-preview-scene-thunderStrike .level-preview-scene-detail-1{border-radius:0;width:3px;height:13px;transform:rotate(28deg)}.level-preview-scene-lavaBurn .level-preview-scene-detail{background:hsl(var(--destructive));box-shadow:0 0 8px hsl(var(--destructive) / .6)}.level-preview-scene-frostGuard .level-preview-scene-detail{border-radius:2px;transform:rotate(45deg)}.level-preview-scene-stormCrown .level-preview-scene-detail-1{width:7px;height:7px}.level-preview-scene-warmShield .level-preview-art-glow,.level-preview-scene-slopeBoost .level-preview-art-glow,.level-preview-scene-mistSight .level-preview-art-glow,.level-preview-scene-bridgeShock .level-preview-art-glow,.level-preview-scene-sandDrift .level-preview-art-glow,.level-preview-scene-frostGuard .level-preview-art-glow,.level-preview-scene-thunderStrike .level-preview-art-glow,.level-preview-scene-lavaBurn .level-preview-art-glow,.level-preview-scene-stormCrown .level-preview-art-glow{background:hsl(var(--skill-hsl) / .22)}.level-preview-scene-warmShield,.level-preview-scene-slopeBoost{--skill-hsl:var(--primary)}.level-preview-scene-mistSight{--skill-hsl:var(--muted-foreground)}.level-preview-scene-bridgeShock{--skill-hsl:var(--primary)}.level-preview-scene-sandDrift{--skill-hsl:var(--secondary-foreground)}.level-preview-scene-frostGuard{--skill-hsl:var(--foreground)}.level-preview-scene-thunderStrike{--skill-hsl:var(--primary)}.level-preview-scene-lavaBurn{--skill-hsl:var(--destructive)}.level-preview-scene-stormCrown{--skill-hsl:var(--foreground)}.level-preview-art-glow{background:hsl(var(--primary) / .2);filter:blur(10px);border-radius:9999px;width:40px;height:40px;position:absolute}.level-preview-art-mark{z-index:1;color:hsl(var(--primary));font-family:var(--font-display);text-shadow:0 2px 0 hsl(var(--card)), 0 0 10px hsl(var(--primary) / .42);font-size:30px;font-weight:800;line-height:1;position:relative}.level-preview-art-spark{z-index:1;color:hsl(var(--primary));font-size:13px;position:absolute;top:7px;right:8px}.level-preview-copy{min-width:0;padding:2px 2px 1px 0}.level-preview-kicker{color:hsl(var(--primary));font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:700}.level-preview-copy h3{color:hsl(var(--card-foreground));font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:15px;font-weight:800;overflow:hidden}.level-preview-copy>p:last-of-type{color:hsl(var(--muted-foreground));text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;overflow:hidden}.level-preview-tags{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.level-preview-tags span{border:1px solid hsl(var(--primary) / .2);background:hsl(var(--primary) / .08);color:hsl(var(--secondary-foreground));font-family:var(--font-mono);border-radius:9999px;padding:3px 6px;font-size:9px;line-height:1}@media (width<=640px){.level-preview-art{width:68px;height:68px}.level-preview-art-mark{font-size:26px}}.level-map-node{position:relative}.level-map-icon{border:1px solid hsl(var(--border));box-shadow:0 4px 10px hsl(var(--foreground) / .08), inset 0 1px 0 hsl(var(--primary-foreground) / .16);transition:transform .22s,box-shadow .22s,border-color .22s;position:relative}.level-map-item:hover .level-map-icon-open,.level-map-item:focus-visible .level-map-icon-open{border-color:hsl(var(--primary) / .42);box-shadow:0 6px 14px hsl(var(--primary) / .14), inset 0 1px 0 hsl(var(--primary-foreground) / .18);transform:translateY(-1px)scale(1.04)}.level-map-icon-current{border-color:hsl(var(--primary) / .52);box-shadow:0 0 0 4px hsl(var(--primary) / .12), 0 6px 14px hsl(var(--primary) / .22), inset 0 1px 0 hsl(var(--primary-foreground) / .22)}.level-map-icon-locked{opacity:.72;border-style:dashed}.level-map-icon-number{z-index:1;position:relative}.level-map-icon-star{color:hsl(var(--primary));opacity:.76;font-size:8px;line-height:1;position:absolute;top:1px;right:3px}.level-map-icon-current .level-map-icon-star{color:hsl(var(--primary-foreground));opacity:.9}.level-map-item-unlocked .level-map-icon-open{animation:.7s cubic-bezier(.22,1,.36,1) both level-map-icon-unlock}@keyframes level-map-icon-unlock{0%{transform:scale(.72)rotate(-12deg)}55%{transform:scale(1.14)rotate(5deg)}to{transform:scale(1)rotate(0)}}.level-map-connector{background:hsl(var(--border));border-radius:9999px;width:2px;height:8px;position:absolute;top:-8px;left:21px}.level-map-connector-open{background:hsl(var(--primary) / .5);box-shadow:0 0 6px hsl(var(--primary) / .24)}.level-map-route-open:before{content:"";background:hsl(var(--primary));transform-origin:top;border-radius:9999px;width:2px;height:8px;animation:.52s ease-out both level-map-route-draw;position:absolute;top:-8px;left:21px}@keyframes level-map-route-draw{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@media (width<=640px){.level-map-connector,.level-map-route-open:before{left:20px}}@keyframes level-settlement-card-in{0%{opacity:0;transform:translateY(10px)scale(.96)}45%{opacity:1;transform:translateY(-2px)scale(1.01)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes level-settlement-details-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes level-settlement-stamp-in{0%{opacity:0;transform:scale(.7)rotate(-12deg)}65%{opacity:1;transform:scale(1.08)rotate(4deg)}to{opacity:1;transform:scale(1)rotate(0)}}.level-settlement-card{border-color:hsl(var(--primary) / .32);box-shadow:0 8px 22px hsl(var(--primary) / .1);animation:.62s cubic-bezier(.22,1,.36,1) both level-settlement-card-in;position:relative;overflow:hidden}.level-settlement-card:before{content:"";background:linear-gradient(90deg, hsl(var(--primary)), hsl(var(--secondary-foreground)), hsl(var(--primary)));transform-origin:0;height:3px;animation:.7s ease-out both level-settlement-details-in;position:absolute;inset:0 0 auto}.level-settlement-heading,.level-settlement-details{z-index:1;position:relative}.level-settlement-details{animation:.52s ease-out .16s both level-settlement-details-in}.level-settlement-stamp{font-family:var(--font-mono);letter-spacing:.08em;border:1px solid;border-radius:7px;flex:none;padding:4px 6px;font-size:9px;font-weight:800;animation:.46s cubic-bezier(.22,1,.36,1) .18s both level-settlement-stamp-in}.level-settlement-stamp-win{color:hsl(var(--primary));background:hsl(var(--primary) / .1)}.level-settlement-stamp-loss{color:hsl(var(--destructive));background:hsl(var(--destructive) / .08)}@keyframes finisher-screen-flash{0%{opacity:0}4%{opacity:.92}12%{opacity:.12}20%{opacity:.48}34%,to{opacity:0}}@keyframes finisher-vignette-focus{0%{opacity:0;transform:scale(1.16)}12%{opacity:.8;transform:scale(1)}56%{opacity:.38}to{opacity:0;transform:scale(1.08)}}@keyframes finisher-shockwave-expand{0%{opacity:0;border-width:5px;transform:scale(.08)}18%{opacity:.9}to{opacity:0;border-width:1px;transform:scale(1.8)}}@keyframes finisher-ray-sweep{0%{opacity:0;transform:translate(-35%)scaleX(.18)}16%{opacity:.72}to{opacity:0;transform:translate(45%)scaleX(1.42)}}@keyframes finisher-title-strike{0%{opacity:0;filter:blur(3px);transform:translateY(-14px)scale(1.6)skew(-8deg)}18%{opacity:1;filter:blur();transform:translateY(2px)scale(.92)skew(2deg)}34%{transform:translateY(0)scale(1.08)skew(0)}68%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-8px)scale(1.04)}}.victory-celebration-finisher{overflow:hidden}.finisher-screen-flash,.finisher-vignette,.finisher-shockwave,.finisher-ray{display:block;position:absolute}.finisher-screen-flash{z-index:1;background:radial-gradient(circle at 68% 52%, hsl(var(--primary) / .84), hsl(var(--primary) / .22) 34%, transparent 72%);mix-blend-mode:screen;animation:.82s ease-out both finisher-screen-flash;inset:0}.finisher-vignette{z-index:1;border-radius:inherit;background:radial-gradient(circle at 68% 52%, transparent 13%, hsl(var(--foreground) / .16) 45%, hsl(var(--foreground) / .74) 100%);box-shadow:inset 0 0 48px hsl(var(--foreground) / .54);animation:1.2s ease-out both finisher-vignette-focus;inset:-8%}.finisher-shockwave{z-index:2;aspect-ratio:1;border:3px solid hsl(var(--primary) / .72);transform-origin:50%;width:42%;filter:drop-shadow(0 0 6px hsl(var(--primary) / .52));border-radius:9999px;animation:.92s cubic-bezier(.16,1,.3,1) both finisher-shockwave-expand;top:52%;left:68%;transform:translate(-50%,-50%)}.finisher-shockwave-2{animation-duration:1.08s;animation-delay:.13s}.finisher-ray{z-index:2;background:linear-gradient(90deg, transparent, hsl(var(--primary) / .82), transparent);height:2px;filter:drop-shadow(0 0 4px hsl(var(--primary) / .54));transform-origin:100%;border-radius:9999px;animation:.72s ease-out both finisher-ray-sweep;left:22%;right:-12%}.finisher-ray-1{top:19%;rotate:-12deg}.finisher-ray-2{animation-delay:50ms;top:37%;rotate:-4deg}.finisher-ray-3{animation-delay:90ms;top:65%;rotate:6deg}.finisher-ray-4{animation-delay:.13s;top:82%;rotate:14deg}.finisher-title{z-index:5;min-width:210px;color:hsl(var(--primary));text-align:center;paint-order:stroke fill;filter:drop-shadow(0 3px 8px hsl(var(--foreground) / .34));flex-direction:column;align-items:center;animation:1.35s cubic-bezier(.22,1,.36,1) both finisher-title-strike;display:flex;position:absolute;top:22%;left:50%;transform:translate(-50%)}.finisher-title-kicker,.finisher-title-bonus{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:800}.finisher-title strong{font-family:var(--font-display);letter-spacing:.08em;text-shadow:0 0 12px hsl(var(--primary) / .52), 0 2px 0 hsl(var(--card));margin-top:3px;font-size:clamp(28px,6vw,48px);line-height:1}.finisher-title-bonus{background:hsl(var(--card) / .88);letter-spacing:.08em;border-radius:9999px;margin-top:7px;padding:5px 10px}.victory-celebration-finisher .victory-banner{animation-delay:.82s}.victory-celebration-finisher .victory-confetti{animation-delay:calc(var(--finisher-confetti-delay,0s) + .72s)}.victory-celebration-finisher .confetti-1{--finisher-confetti-delay:80ms}.victory-celebration-finisher .confetti-2{--finisher-confetti-delay:.16s}.victory-celebration-finisher .confetti-3{--finisher-confetti-delay:40ms}.victory-celebration-finisher .confetti-4{--finisher-confetti-delay:.2s}.victory-celebration-finisher .confetti-5{--finisher-confetti-delay:.12s}.victory-celebration-finisher .confetti-6{--finisher-confetti-delay:.26s}@keyframes victory-banner-pop{0%{opacity:0;transform:translateY(14px)scale(.72)rotate(-2deg)}55%{opacity:1;transform:translateY(-4px)scale(1.06)rotate(1deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes victory-confetti-fall{0%{opacity:0;transform:translateY(-42px)rotate(0)scale(.6)}18%{opacity:1}to{opacity:0;transform:translateY(170px)rotate(420deg)scale(1)}}@keyframes victory-rating-star-pop{0%{opacity:0;filter:brightness(.7);transform:translateY(8px)scale(.3)rotate(-20deg)}58%{opacity:1;filter:brightness(1.45);transform:translateY(-2px)scale(1.2)rotate(6deg)}to{opacity:1;filter:brightness();transform:translateY(0)scale(1)rotate(0)}}@keyframes victory-rating-glow{0%,to{filter:drop-shadow(0 0 2px hsl(var(--primary) / .3))}50%{filter:drop-shadow(0 0 7px hsl(var(--primary) / .68))}}@keyframes victory-rating-copy-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.victory-rating{justify-items:center;gap:3px;display:grid}.victory-rating-stars{justify-content:center;align-items:center;gap:7px;display:flex}.victory-rating-star{color:hsl(var(--muted-foreground) / .28);text-shadow:0 1px 0 hsl(var(--card));transform-origin:50%;font-size:24px;line-height:1;animation:.52s cubic-bezier(.22,1,.36,1) both victory-rating-star-pop;display:inline-block}.victory-rating-star:first-child{animation-delay:.24s}.victory-rating-star:nth-child(2){animation-delay:.39s}.victory-rating-star:nth-child(3){animation-delay:.54s}.victory-rating-star-earned{color:hsl(var(--primary));text-shadow:0 0 6px hsl(var(--primary) / .52), 0 1px 0 hsl(var(--card));animation-name:victory-rating-star-pop,victory-rating-glow;animation-duration:.52s,.86s;animation-timing-function:cubic-bezier(.22,1,.36,1),ease-in-out;animation-iteration-count:1,2}.victory-rating-star-empty{opacity:.55}.victory-rating-label{color:hsl(var(--primary));font-family:var(--font-display);letter-spacing:.08em;margin-top:2px;font-size:13px;font-weight:800;animation:.42s ease-out .62s both victory-rating-copy-in}.victory-rating-detail{max-width:210px;color:hsl(var(--muted-foreground));font-size:10px;line-height:1.3;animation:.42s ease-out .72s both victory-rating-copy-in}@keyframes victory-reward-pop{0%{opacity:0;transform:translateY(6px)scale(.82)}48%{opacity:1;transform:translateY(-1px)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes victory-reward-count-pulse{0%,to{filter:brightness();transform:scale(1)}48%{filter:brightness(1.35);transform:scale(1.1)}}@keyframes victory-reward-shine{0%{opacity:0;transform:translate(-150%)skew(-18deg)}18%{opacity:.7}60%,to{opacity:0;transform:translate(190%)skew(-18deg)}}.victory-banner{animation:.62s cubic-bezier(.22,1,.36,1) both victory-banner-pop}.victory-reward{border:1px solid hsl(var(--primary) / .24);background:hsl(var(--primary) / .08);min-width:150px;color:hsl(var(--primary));box-shadow:inset 0 0 14px hsl(var(--primary) / .08);border-radius:12px;justify-content:center;align-items:baseline;gap:4px;padding:8px 12px;animation:.52s cubic-bezier(.22,1,.36,1) .28s both victory-reward-pop;display:inline-flex;position:relative;overflow:hidden}.victory-reward-label{font-family:var(--font-mono);letter-spacing:.08em;color:hsl(var(--muted-foreground));margin-right:5px;font-size:9px;font-weight:700}.victory-reward-count{min-width:3ch;font-family:var(--font-display);font-variant-numeric:tabular-nums;text-align:right;text-shadow:0 0 7px hsl(var(--primary) / .34);font-size:24px;font-weight:800;line-height:1;animation:.42s ease-in-out .46s 2 victory-reward-count-pulse}.victory-reward-unit{font-family:var(--font-mono);font-size:10px;font-weight:700}.victory-reward-shine{background:linear-gradient(90deg, transparent, hsl(var(--primary-foreground) / .5), transparent);width:34%;animation:1.15s ease-out .52s both victory-reward-shine;position:absolute;inset:-30% auto -30% -25%}.victory-confetti{background:hsl(var(--primary));border-radius:2px;width:7px;height:12px;animation:1.25s ease-out both victory-confetti-fall;position:absolute;top:18%}.confetti-1{animation-delay:80ms;left:18%;transform:rotate(18deg)}.confetti-2{background:hsl(var(--destructive));animation-delay:.16s;left:31%}.confetti-3{height:8px;animation-delay:40ms;left:44%}.confetti-4{background:hsl(var(--destructive));animation-delay:.2s;right:30%}.confetti-5{animation-delay:.12s;right:18%}.confetti-6{background:hsl(var(--secondary-foreground));height:9px;animation-delay:.26s;right:42%}@keyframes defeat-banner-pop{0%{opacity:0;transform:translateY(10px)scale(.86)}45%{opacity:1;transform:translateY(-2px)scale(1.03)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes defeat-pulse{0%{opacity:0;transform:scale(.7)}35%{opacity:.55}to{opacity:0;transform:scale(1.55)}}@keyframes defeat-vignette{0%,to{opacity:.08}50%{opacity:.22}}.defeat-banner{animation:.52s cubic-bezier(.22,1,.36,1) both defeat-banner-pop}.defeat-vignette{background:radial-gradient(circle, transparent 28%, hsl(var(--destructive) / .18) 100%);animation:1.8s ease-in-out infinite defeat-vignette}.defeat-pulse{border:2px solid hsl(var(--destructive) / .6);border-radius:9999px;width:92px;height:92px;animation:.9s ease-out infinite defeat-pulse;position:absolute}@media (prefers-reduced-motion:reduce){.victory-banner,.victory-confetti,.victory-rating-star,.victory-rating-star-earned,.victory-rating-label,.victory-rating-detail,.victory-reward,.victory-reward-count,.victory-reward-shine,.finisher-screen-flash,.finisher-vignette,.finisher-shockwave,.finisher-ray,.finisher-title,.defeat-banner,.defeat-vignette,.defeat-pulse,.level-skill-panel-active,.level-settlement-card,.level-settlement-details,.level-settlement-stamp,.level-unlock-banner,.level-unlock-banner-icon,.level-map-item-unlocked,.level-map-route-open:before,.level-map-icon,.level-map-icon-star,.level-skill-upgrade-banner,.level-skill-upgrade-star,.level-skill-icon-active,.level-skill-icon-wrap-active .level-skill-icon-ring,.level-skill-icon-wrap-active .level-skill-icon-check,.skill-charge-fill,.skill-cooldown-dot,.level-skill-emblem,.level-skill-wave,.level-skill-particle,.level-skill-trigger-label,.battle-skill-flash,.battle-skill-symbol,.battle-thunder-bolt,.battle-burn-impact,.battle-skill-orbit,.battle-skill-ray,.battle-weather-haze,.battle-weather-particle,.battle-weather-lightning,.terrain-detail,.terrain-scar,.terrain-scar-crater,.terrain-scar-cracks,.terrain-scar-core,.terrain-impact-ripple,.terrain-impact-mark,.terrain-impact-label,.character-idle-body,.character-walk-player,.character-walk-foe,.character-charge-player,.character-charge-foe,.character-release-player,.character-release-foe,.character-victory-player,.character-defeat-foe,.character-victory-arms,.character-defeat-arms,.shot-trail,.shot-release-burst,.turn-cue,.turn-cue-icon,.turn-cue-sweep,.charge-meter-shine,.charge-meter-orb,.charge-meter-maximum .charge-meter-track,.launch-charge-aura,.launch-charge-ring,.launch-charge-core,.launch-charge-rays,.launch-charge-particle,.launch-charge-label,.landing-warning-zone,.landing-warning-ring,.landing-warning-crosshair,.landing-warning-label,.battle-smoke-puff,.battle-smoke-ground-cloud,.battle-smoke-core,.battle-smoke-heatwave,.battle-spark,.battle-spark-dot,.battle-debris-fall-piece,.battle-debris-land-dust,.battle-impact-glow,.battle-impact-ring,.battle-impact-core,.battle-impact-rays,.battle-impact-marker,.battle-miss-wind-line,.battle-miss-vignette,.battle-miss-label,.battle-miss-arc,.battle-miss-dust-line,.battle-miss-impact-label,.battle-hit-stop-flash,.battle-hit-stop-frame,.battle-hit-stop-focus,.battle-critical-camera-flash,.battle-critical-camera-vignette,.battle-critical-camera-line,.damage-number,.damage-critical-label,.damage-detail-label,.damage-skill-label,.battle-combo-callout,.battle-combo-ring,.character-idle-body path:nth-of-type(3),.character-idle-body circle:last-of-type,.character-hit-reaction .character-idle-body,.character-hit-reaction:after{animation:none}.character-hit-reaction{filter:brightness()}.level-skill-panel-active{box-shadow:0 0 0 3px hsl(var(--skill-hsl) / .14), 0 6px 16px hsl(var(--skill-hsl) / .08)}.level-skill-wave,.level-skill-particle,.battle-skill-effect{display:none}.level-skill-trigger-label{opacity:1}.victory-confetti{opacity:.8}.defeat-vignette{opacity:.16}.battle-shake,.battlefield-impact-hit,.battlefield-impact-critical,.battlefield-impact-miss{animation:none}}html,body,#root{background-color:#08090a;min-height:100%}@media (prefers-color-scheme:light){html,body,#root{background-color:#fff}}body{background-color:hsl(var(--background));color:hsl(var(--foreground));margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.cjk-latin{font-size-adjust:.56;vertical-align:var(--cjk-latin-shift,-.15em)}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--leading-body)}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-.125rem;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-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\: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\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-card\/70:hover{background-color:hsl(var(--card) / .7)}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-primary\/10:hover{background-color:hsl(var(--primary) / .1)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-lg:hover,.hover\:shadow-md:hover{--tw-shadow:var(--elev-raised);--tw-shadow-colored:var(--elev-raised);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:shadow-\[var\(--focus-ring\)\]:focus-visible{--tw-shadow-color:var(--focus-ring);--tw-shadow:var(--tw-shadow-colored)}.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #0000}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-primary:focus-visible{--tw-ring-color:hsl(var(--primary))}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.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))}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--space-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))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--space-1) * -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))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--space-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))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--space-1) * -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))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:var(--elev-ring);--tw-shadow-colored:var(--elev-ring);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.data-\[state\=open\]\:animate-in[data-state=open]{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.data-\[state\=closed\]\:animate-out[data-state=closed]{--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial;animation-name:exit;animation-duration:.15s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-var(--space-2)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:var(--space-2)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-var(--space-2)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:var(--space-2)}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}@media (width>=640px){.sm\:flex{display:flex}.sm\:aspect-\[16\/9\]{aspect-ratio:16/9}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(var(--space-2) * var(--tw-space-x-reverse));margin-left:calc(var(--space-2) * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:p-6{padding:var(--space-6)}.sm\:px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.sm\:py-20{padding-top:5rem;padding-bottom:5rem}.sm\:text-left{text-align:left}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--leading-body)}}@media (width>=768px){.md\:text-sm{font-size:var(--text-sm);line-height:var(--leading-body)}}@media (width>=1024px){.lg\:aspect-\[2\/1\]{aspect-ratio:2}.lg\:grid-cols-\[3fr_2fr\]{grid-template-columns:3fr 2fr}.lg\:pt-10{padding-top:2.5rem}}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:var(--space-4);height:var(--space-4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
