@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;600&family=Nunito:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;600;700;800;900&family=Noto+Serif+SC:wght@700;900&display=swap";@font-face{font-family:JiangXiZhuoKai;src:url(https://resource-static.bj.bcebos.com/fonts-skill/JiangXiZhuoKai.woff2)format("woff2");font-weight:400;font-display:swap}*,:before,:after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,: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:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;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:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,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}.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}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.bottom-0{bottom:0}.bottom-2{bottom:.5rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-4{left:1rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.list-item{display:list-item}.hidden{display:none}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:16/9}.size-3{width:.75rem;height:.75rem}.size-4{width:1rem;height:1rem}.size-\[--cell-size\]{width:var(--cell-size);height:var(--cell-size)}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[--cell-size\]{height:var(--cell-size)}.h-\[1px\]{height:1px}.h-\[46px\]{height:46px}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\[--radix-context-menu-content-available-height\]{max-height:var(--radix-context-menu-content-available-height)}.max-h-\[--radix-select-content-available-height\]{max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.min-h-0{min-height:0}.min-h-28{min-height:7rem}.min-h-\[200px\]{min-height:200px}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-0{width:0}.w-1{width:.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[--cell-size\]{width:var(--cell-size)}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[100px\]{width:100px}.w-\[1px\]{width:1px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-5{min-width:1.25rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\[--cell-size\]{min-width:var(--cell-size)}.min-w-\[100px\]{min-width:100px}.min-w-\[120px\]{min-width:120px}.min-w-\[12rem\]{min-width:12rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-\[--skeleton-width\]{max-width:var(--skeleton-width)}.max-w-\[242px\]{max-width:242px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-max{max-width:max-content}.flex-1{flex:1}.flex-auto{flex:auto}.flex-initial{flex:0 auto}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\[--radix-context-menu-content-transform-origin\]{transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\[--radix-dropdown-menu-content-transform-origin\]{transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\[--radix-hover-card-content-transform-origin\]{transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\[--radix-menubar-content-transform-origin\]{transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\[--radix-popover-content-transform-origin\]{transform-origin:var(--radix-popover-content-transform-origin)}.origin-\[--radix-select-content-transform-origin\]{transform-origin:var(--radix-select-content-transform-origin)}.origin-\[--radix-tooltip-content-transform-origin\]{transform-origin:var(--radix-tooltip-content-transform-origin)}.origin-center{transform-origin:50%}.-translate-x-1\/2{--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-x-px{--tw-translate-x:-1px;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-1\/2{--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))}.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-x-px{--tw-translate-x:1px;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-45{--tw-rotate:45deg;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-90{--tw-rotate:90deg;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 pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{appearance:none}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-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(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--border))}.justify-self-end{justify-self:end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.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-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-\[0\.7px\]{border-width:.7px}.border-\[1\.5px\]{border-width:1.5px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-\[--color-border\]{border-color:var(--color-border)}.border-border{border-color:hsl(var(--border))}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-current{border-color:currentColor}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\/50{border-color:hsl(var(--destructive) / .5)}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-input{border-color:hsl(var(--input))}.border-muted-foreground\/30{border-color:hsl(var(--muted-foreground) / .3)}.border-primary{border-color:hsl(var(--primary))}.border-primary\/50{border-color:hsl(var(--primary) / .5)}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:#0000}.border-l-transparent{border-left-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-accent{background-color:hsl(var(--accent))}.bg-background{background-color:hsl(var(--background))}.bg-background\/90{background-color:hsl(var(--background) / .9)}.bg-background\/95{background-color:hsl(var(--background) / .95)}.bg-black\/10{background-color:#0000001a}.bg-black\/80{background-color:#000c}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\/10{background-color:hsl(var(--destructive) / .1)}.bg-foreground{background-color:hsl(var(--foreground))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/40{background-color:hsl(var(--muted) / .4)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-muted\/80{background-color:hsl(var(--muted) / .8)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/20{background-color:hsl(var(--primary) / .2)}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar-background))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-transparent{background-color:#0000}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops))}.from-amber-50{--tw-gradient-from:#fffbeb var(--tw-gradient-from-position);--tw-gradient-to:#fffbeb00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.to-orange-100{--tw-gradient-to:#ffedd5 var(--tw-gradient-to-position)}.fill-current{fill:currentColor}.fill-primary{fill:hsl(var(--primary))}.stroke-current{stroke:currentColor}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[--cell-size\]{padding-left:var(--cell-size);padding-right:var(--cell-size)}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-1{padding-left:.25rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-3{padding-right:.75rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.8rem\]{font-size:.8rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.lowercase{text-transform:lowercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground) / .7)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow: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-0{--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(0px + 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)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.ring-ring{--tw-ring-color:hsl(var(--ring))}.ring-sidebar-ring{--tw-ring-color:hsl(var(--sidebar-ring))}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[width\]{transition-property:width;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-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@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-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.duration-1000{animation-duration:1s}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{animation-timing-function:linear}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\[--cell-size\:2rem\]{--cell-size:2rem}.\[counter-increment\:line_0\]{counter-increment:line 0}.\[counter-reset\:line\]{counter-reset:line}:root{--forest:#1d5a47;--forest-dark:#173e33;--mint:#b9dac8;--paper:#fff7e7;--paper-deep:#f3ead7;--sun:#f5be45;--coral:#ef714e;--ink:#20332b;--muted:#697770;--white:#fffdf8;--line:#ded6c3;--shadow:0 24px 60px #2f433921}*{box-sizing:border-box}html{background:var(--paper)}body{min-width:320px;color:var(--ink);background:var(--paper);margin:0;font-family:Noto Sans SC,Source Han Sans SC,Microsoft YaHei,sans-serif}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #f5be45a6}.mono{font-family:IBM Plex Mono,SFMono-Regular,monospace}.paper-noise{pointer-events:none;opacity:.25;background-image:radial-gradient(#20332b33 .6px,#0000 .6px);background-size:6px 6px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 70%);mask-image:linear-gradient(#000,#0000 70%)}.brand{letter-spacing:-.04em;align-items:center;gap:10px;font-weight:900;display:flex}.brand small{color:var(--muted);letter-spacing:0;margin-left:4px;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:10px;font-weight:500}.brand-mark{width:39px;height:39px;color:var(--paper);background:var(--forest);border-radius:13px 13px 18px 10px;place-items:center;display:grid;transform:rotate(-4deg)}.brand-mark svg{width:21px}.primary-button,.ghost-button{cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;font-weight:800;display:inline-flex}.primary-button{color:var(--white);background:var(--forest);box-shadow:0 11px 0 var(--forest-dark);border-radius:15px 15px 20px 13px;transition:transform .18s,box-shadow .18s}.primary-button:hover{box-shadow:0 8px 0 var(--forest-dark);transform:translateY(2px)}.primary-button:active{box-shadow:0 2px 0 var(--forest-dark);transform:translateY(8px)}.primary-button:disabled{cursor:not-allowed;opacity:.4;transform:none;box-shadow:0 7px #9ca9a2}.primary-button.large{min-height:54px;padding:0 24px}.ghost-button{border:1px solid var(--line);background:#fffdf8b8;border-radius:13px;padding:10px 16px}.eyebrow,.tiny-label{color:var(--forest);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;font-size:12px;font-weight:900;display:inline-flex}.welcome-shell{background:radial-gradient(circle at 72% 36%, #f5be453b, transparent 24%), var(--paper);min-height:100vh;position:relative;overflow:hidden}.welcome-header{z-index:2;justify-content:space-between;align-items:center;max-width:1280px;margin:auto;padding:27px 34px;display:flex;position:relative}.welcome-grid{z-index:1;grid-template-columns:minmax(360px,.9fr) minmax(440px,1.15fr) 210px;align-items:center;max-width:1260px;min-height:calc(100vh - 100px);margin:auto;padding:20px 34px 70px;display:grid;position:relative}.hero-copy{z-index:3;padding-left:4vw;position:relative}.hero-copy h1,.setup-copy h1,.mission-panel h1,.tutor-story h1,.result-copy h1{letter-spacing:-.06em;margin:22px 0;font-family:Noto Serif SC,Source Han Serif SC,STSong,serif;font-weight:900}.hero-copy h1{max-width:570px;font-size:clamp(46px,5.1vw,78px);line-height:1.08}.hero-copy h1 em{color:var(--coral);font-style:normal;display:block}.hero-copy>p{max-width:500px;color:var(--muted);margin:0 0 29px;font-size:16px;line-height:1.9}.trust-row{color:var(--muted);gap:22px;margin-top:27px;font-size:12px;font-weight:700;display:flex}.trust-row span{align-items:center;gap:7px;display:flex}.egg-stage,.naming-stage,.pet-home-stage{place-items:center;min-height:620px;display:grid;position:relative}.egg-stage:before,.naming-stage:before{content:"";border:1px dashed #1d5a4740;border-radius:48% 52% 49% 51%;width:480px;height:480px;position:absolute;transform:rotate(7deg)}.orbit{z-index:3;color:var(--forest);border:1px solid var(--mint);background:var(--white);box-shadow:var(--shadow);border-radius:50%;place-items:center;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:11px;display:grid;position:absolute}.orbit-one{width:83px;height:83px;top:15%;right:13%}.orbit-two{width:94px;height:94px;bottom:21%;left:12%}.stage-note{border:1px solid var(--line);width:260px;box-shadow:var(--shadow);background:#fffdf8e0;border-radius:18px 18px 25px 14px;gap:14px;padding:16px;display:flex;position:absolute;bottom:9%;right:0}.stage-note span{color:var(--coral);font-size:25px;font-weight:700}.stage-note p{margin:0;font-size:12px;line-height:1.6}.journey-peek{border:1px solid var(--line);background:var(--sun);border-radius:24px 16px 28px 18px;align-self:end;margin-bottom:10vh;padding:21px;transform:rotate(2deg)}.journey-peek svg{margin:24px 0 13px;display:block}.journey-peek strong{font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:20px;display:block}.journey-peek p{margin:9px 0 0;font-size:11px;line-height:1.5}.pet-wrap{z-index:2;width:310px;height:370px;position:relative}.pet-wrap.small{width:150px;height:180px;transform:scale(.95)}.egg{background:radial-gradient(circle at 36% 29%,#fffffff0,#0000 15%),radial-gradient(circle at 63% 70%,#f5be45b3,#0000 28%),linear-gradient(135deg,#a7d7bd,#ecf3d5 42%,#f5c759);border:4px solid #fffc;border-radius:50% 50% 46% 46%/61% 61% 39% 39%;width:220px;height:290px;animation:3.2s ease-in-out infinite egg-breathe;position:absolute;top:16px;left:45px;overflow:hidden;box-shadow:inset -24px -18px 30px #1d5a471f,0 35px 45px #20332b33}.small .egg{width:110px;height:145px;top:6px;left:20px}.egg-glow{filter:blur(12px);background:#fffdd6e0;border-radius:50%;animation:1.8s ease-in-out infinite alternate glow-pulse;position:absolute;inset:38% 28%}.egg-speckle{background:#1d5a4733;border-radius:70% 30%;width:23px;height:12px;position:absolute;transform:rotate(-24deg)}.egg-speckle.one{top:64px;left:34px}.egg-speckle.two{width:16px;top:94px;right:31px}.egg-speckle.three{width:28px;bottom:55px;right:42px}.egg-crack{opacity:0;border-bottom:4px solid #1d5a478c;border-left:4px solid #1d5a478c;width:35px;height:45px;position:absolute;top:109px;left:95px;transform:skew(-25deg)rotate(-17deg)}.ground-shadow{filter:blur(9px);background:#20332b2e;border-radius:50%;width:200px;height:34px;position:absolute;bottom:33px;left:54px}.small .ground-shadow{width:100px;height:18px;bottom:10px;left:28px}.creature{width:230px;height:260px;animation:2.7s ease-in-out infinite creature-bob;position:absolute;top:50px;left:42px}.small .creature{transform-origin:0 0;top:20px;left:18px;transform:scale(.5)}.pet-body{background:linear-gradient(135deg,#9fd5b9,#5bac82 68%,#3a7c62);border:4px solid #173e3333;border-radius:47% 53% 43% 45%;width:174px;height:206px;position:absolute;top:24px;left:28px;box-shadow:inset -16px -13px 20px #173e332e,0 24px 36px #20332b33}.belly{z-index:2;background:#d9edce;border-radius:50%;width:80px;height:96px;position:absolute;top:119px;left:74px}.ear{z-index:-1;background:#77bc97;border:4px solid #173e332e;width:70px;height:93px;position:absolute;top:0}.ear.left{border-radius:90% 20% 60% 40%;left:23px;transform:rotate(-27deg)}.ear.right{border-radius:20% 90% 40% 60%;right:23px;transform:rotate(27deg)}.eye{z-index:3;border:8px solid var(--ink);background:#fff;border-radius:50%;width:28px;height:35px;position:absolute;top:84px}.eye:after{content:"";background:#fff;border-radius:50%;width:6px;height:6px;position:absolute;top:-4px;left:2px}.eye.left{left:65px}.eye.right{right:65px}.cheek{z-index:3;background:#ef714e6e;border-radius:50%;width:27px;height:13px;position:absolute;top:126px}.cheek.left{left:53px}.cheek.right{right:53px}.mouth{z-index:3;border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);border-radius:0 0 12px;width:22px;height:18px;position:absolute;top:122px;left:105px;transform:rotate(42deg)}.arm{z-index:4;background:#6db68f;border-radius:50%;width:40px;height:83px;position:absolute;top:145px}.arm.left{left:20px;transform:rotate(22deg)}.arm.right{right:20px;transform:rotate(-34deg)}.is-happy .arm.right{transform-origin:bottom;top:104px;transform:rotate(-65deg)}.tail{border-top:18px solid #4c916f;border-right:18px solid #4c916f;border-radius:50%;width:76px;height:76px;position:absolute;bottom:17px;right:2px;transform:rotate(23deg)}.leaf-hat{z-index:5;background:var(--forest);border-radius:100% 0;width:46px;height:27px;position:absolute;top:10px;left:95px;transform:rotate(-26deg)}@keyframes egg-breathe{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-10px)rotate(1.5deg)}}@keyframes glow-pulse{0%{opacity:.6;transform:scale(.78)}to{opacity:1;transform:scale(1.25)}}@keyframes creature-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.course-shell{background:radial-gradient(circle at 92% 3%, #b9dac88c, transparent 25%), var(--paper);min-height:100vh;padding:0 34px 60px}.course-header{grid-template-columns:44px 1fr auto;align-items:center;gap:20px;max-width:1320px;height:92px;margin:auto;display:grid}.course-step{color:var(--muted);font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:11px;font-weight:700}.course-heading{justify-content:space-between;align-items:end;gap:36px;max-width:1320px;margin:35px auto 34px;display:flex}.course-heading h1{letter-spacing:-.06em;margin:12px 0 8px;font-family:Noto Serif SC,Source Han Serif SC,STSong,serif;font-size:clamp(38px,4vw,61px)}.course-heading p{color:var(--muted);margin:0}.course-process{border:1px solid var(--line);background:#fffdf8b8;border-radius:18px;gap:5px;min-width:350px;padding:12px;display:flex}.course-process span{color:var(--muted);flex:1;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.course-process strong{background:var(--paper-deep);border-radius:9px;place-items:center;width:25px;height:25px;font-family:IBM Plex Mono,SFMono-Regular,monospace;display:grid}.course-process .active{color:var(--forest)}.course-process .active strong{color:#fff;background:var(--forest)}.course-workspace{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:26px;max-width:1320px;margin:auto;display:grid}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.course-option{text-align:left;border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:24px 18px 27px;min-height:215px;padding:23px;transition:border-color .18s,transform .18s,box-shadow .18s;position:relative;overflow:hidden}.course-option:after{content:"";background:var(--card-accent,var(--mint));opacity:.25;border-radius:50%;width:125px;height:125px;position:absolute;bottom:-35px;right:-20px}.course-option:hover{transform:translateY(-2px);box-shadow:0 15px 35px #2f43391a}.course-option.selected{border:2px solid var(--forest);box-shadow:0 0 0 4px #1d5a4717}.course-option.sun{--card-accent:var(--sun)}.course-option.leaf{--card-accent:#70af72}.course-option.coral{--card-accent:var(--coral)}.course-option.sky{--card-accent:#6cb4d7}.course-option.violet{--card-accent:#947bd1}.course-option.navy{--card-accent:#315a84}.course-option.clay{--card-accent:#b6795f}.course-option.ink{--card-accent:var(--ink)}.course-check{width:35px;height:35px;color:var(--forest);background:var(--paper-deep);border-radius:12px;place-items:center;display:grid;position:absolute;top:18px;right:18px}.course-option.selected .course-check{color:#fff;background:var(--forest)}.course-check svg{width:17px}.course-option>small{color:var(--forest);letter-spacing:.08em;font-size:11px;font-weight:900}.course-option h2{max-width:calc(100% - 32px);margin:9px 0;font-size:19px;line-height:1.35}.course-option>p{min-height:45px;color:var(--muted);margin:0;font-size:13px;line-height:1.7}.course-option>div{flex-wrap:wrap;gap:8px 13px;margin-top:15px;display:flex}.course-option>div span{align-items:center;gap:5px;font-size:10px;font-weight:700;display:flex}.course-option>div svg{width:13px}.course-summary{color:var(--white);background:var(--forest-dark);box-shadow:var(--shadow);border-radius:29px 20px 34px;padding:28px;position:sticky;top:24px}.course-summary .tiny-label{color:var(--mint)}.course-summary>h2{margin:10px 0;font-family:Noto Serif SC,Source Han Serif SC,STSong,serif;font-size:26px;line-height:1.4}.course-summary>p{color:#ffffffb3;margin:0 0 20px;font-size:13px;line-height:1.7}.sample-mission,.teacher-match{background:#ffffff12;border:1px solid #ffffff21;border-radius:17px;align-items:center;gap:13px;padding:15px;display:flex}.sample-mission>svg{color:var(--sun)}.sample-mission span,.teacher-match p{gap:3px;margin:0;display:grid}.sample-mission small,.teacher-match small{color:#ffffff8c;font-size:10px}.sample-mission strong,.teacher-match strong{font-size:12px}.teacher-match{margin-top:10px}.teacher-face{width:42px;height:42px;color:var(--forest-dark);background:var(--sun);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.teacher-match p>span{color:var(--mint);align-items:center;gap:4px;font-size:10px;display:flex}.teacher-match p svg{fill:currentColor;width:11px}.lesson-loop{gap:10px;margin:20px 0;display:grid}.lesson-loop span{align-items:center;gap:9px;font-size:11px;display:flex}.lesson-loop svg{width:15px;color:var(--sun)}.course-summary .primary-button{width:100%;color:var(--forest-dark);background:var(--sun);box-shadow:0 8px #bf8a20}.course-summary .safe-note{color:#ffffff80;text-align:center;margin-top:14px;font-size:9px;display:block}.setup-shell{background:linear-gradient(90deg, var(--paper) 0 56%, #e5f0df 56% 100%);grid-template-columns:100px minmax(400px,.85fr) minmax(500px,1.15fr);min-height:100vh;display:grid}.round-back{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:50%;place-items:center;width:44px;height:44px;margin:31px;display:grid}.setup-copy{align-self:center;max-width:530px;padding:60px 5vw 80px 1vw}.setup-copy h1{font-size:clamp(42px,4.6vw,66px);line-height:1.15}.setup-copy>p{color:var(--muted);line-height:1.8}.name-field{margin:35px 0 25px;display:block;position:relative}.name-field>span,.personality-picker>span{color:var(--muted);margin-bottom:10px;font-size:12px;font-weight:800;display:block}.name-field input{width:100%;height:62px;color:var(--ink);border:2px solid var(--forest);background:var(--white);border-radius:16px;padding:0 55px 0 18px;font-size:22px;font-weight:800}.name-field small{color:var(--muted);position:absolute;bottom:21px;right:17px}.personality-picker{margin-bottom:34px}.personality-picker div{gap:10px;display:flex}.personality-picker button{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:20px;min-width:88px;padding:11px 17px;font-weight:700}.personality-picker button.selected{color:#fff;border-color:var(--forest);background:var(--forest)}.naming-stage{min-height:100vh}.name-tag{z-index:4;background:var(--sun);width:150px;box-shadow:var(--shadow);border-radius:18px 18px 24px 13px;padding:14px;position:absolute;top:15%;right:9%;transform:rotate(3deg)}.name-tag span,.name-tag small{font-size:10px;display:block}.name-tag strong{margin:3px 0;font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:24px;display:block}.speech-note,.speech-bubble,.mini-speech{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);border-radius:18px 18px 18px 4px;padding:13px 16px;font-size:13px;font-weight:700}.speech-note{position:absolute;bottom:17%;left:10%}.app-shell{background:#f5f0e5;grid-template-columns:92px minmax(0,1fr);min-height:100vh;display:grid}.side-rail{z-index:10;color:#fff;background:var(--forest-dark);flex-direction:column;align-items:center;height:100vh;padding:22px 10px;display:flex;position:sticky;top:0}.brand.compact>span:not(.brand-mark){display:none}.brand.compact .brand-mark{color:var(--forest-dark);background:var(--sun)}.side-rail nav{flex-direction:column;flex:1;justify-content:center;gap:14px;display:flex}.side-rail nav button,.reset-link{color:#ffffff94;cursor:pointer;background:0 0;border:0;border-radius:14px;flex-direction:column;align-items:center;gap:5px;width:70px;padding:10px 5px;font-size:10px;display:flex}.side-rail nav button svg,.reset-link svg{width:20px}.side-rail nav button.active{color:var(--forest-dark);background:var(--sun)}.reset-link{color:#ffffff8c}.learning-canvas{min-width:0}.app-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffdf8d1;justify-content:space-between;align-items:center;height:82px;padding:0 32px;display:flex}.app-header strong{margin-top:4px;font-size:14px;display:block}.energy-pill{background:#fff4c6;border:1px solid #e5c56a;border-radius:20px;align-items:center;gap:7px;padding:9px 13px;font-size:11px;font-weight:700;display:flex}.energy-pill .mono{font-size:17px}.home-layout{grid-template-columns:minmax(420px,.9fr) minmax(400px,1.1fr) 245px;min-height:calc(100vh - 82px);display:grid}.mission-panel{align-self:center;max-width:590px;padding:45px 4vw 70px 5vw}.mission-panel h1{font-size:clamp(38px,4.1vw,61px);line-height:1.15}.mission-panel>p{color:var(--muted)}.text-map-link{color:var(--forest);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin-top:12px;padding:0;font-size:12px;font-weight:800;display:inline-flex}.text-map-link svg{width:17px}.task-list{gap:9px;margin:29px 0;display:grid}.task-list>div{border:1px solid var(--line);background:var(--white);border-radius:15px;grid-template-columns:31px 28px 1fr 20px;align-items:center;gap:11px;padding:14px;display:grid}.task-list>div>span{color:var(--coral);font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:11px;font-weight:700}.task-list>div>svg{width:20px;color:var(--forest)}.task-list p{margin:0}.task-list p strong,.task-list p small{display:block}.task-list p strong{font-size:13px}.task-list p small{color:var(--muted);margin-top:3px;font-size:10px}.task-list .locked{opacity:.54}.pet-home-stage{background:radial-gradient(circle at 50% 40%,#ffffffd9,#0000 27%),linear-gradient(148deg,#dcebd6,#f4e9c9);min-height:calc(100vh - 82px);overflow:hidden}.pet-home-stage:before{content:"";background:#fffdf88c;border-radius:50% 50% 0 0;width:140%;height:38%;position:absolute;bottom:0}.speech-bubble{z-index:5;position:absolute;top:22%;right:9%}.floating-word{color:var(--forest);border:1px solid var(--mint);background:#fffdf8bf;border-radius:18px;padding:8px 12px;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:10px;position:absolute}.word-one{top:17%;left:14%;transform:rotate(-5deg)}.word-two{bottom:25%;right:15%;transform:rotate(6deg)}.growth-panel{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);border-radius:26px 17px 28px 19px;align-self:center;margin:25px;padding:23px}.growth-panel strong{margin:9px 0 16px;font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:21px;display:block}.growth-panel>p{color:var(--muted);margin:18px 0 0;font-size:11px;line-height:1.7}.meter{background:#e9e3d8;border-radius:10px;height:7px;overflow:hidden}.meter span{border-radius:inherit;background:var(--forest);height:100%;transition:width .4s;display:block}.growth-line{justify-content:space-between;margin-top:10px;display:flex}.growth-line span{border:2px solid var(--line);background:var(--white);border-radius:50%;width:11px;height:11px}.growth-line span.active{border-color:var(--forest);background:var(--forest)}.lesson-layout{grid-template-columns:minmax(560px,1fr) 330px;min-height:calc(100vh - 82px);display:grid}.lesson-main,.practice-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:20px 6vw 45px;display:flex}.lesson-topline{text-align:left;grid-template-columns:40px minmax(220px,390px) 50px;align-items:center;gap:18px;width:100%;max-width:720px;margin-bottom:20px;display:grid}.lesson-topline>button{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:50%;place-items:center;width:39px;height:39px;display:grid}.lesson-topline>div>span{color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:700;display:block}.lesson-topline>span{font-size:12px}.word-visual{border-radius:45% 55% 48% 52%;place-items:center;width:190px;height:190px;margin:6px 0 12px;display:grid;position:relative;transform:rotate(-3deg)}.word-visual.sun{background:#ffe1a0}.word-visual.coral{background:#ffc7b6}.word-visual.leaf{background:#cbe8cc}.word-visual.clay{background:#e8c8a9}.word-visual.sky{background:#c4e3e7}.food-shape{background:#fffdf8bf;border:8px solid #20332b24;border-radius:50% 30% 50% 25%;width:105px;height:75px;transform:rotate(9deg)}.food-mark{width:54px;height:54px;color:var(--white);background:var(--forest);border-radius:50%;place-items:center;display:grid;position:absolute}.word-cn{color:var(--muted);font-size:13px;font-weight:700}.english-word{letter-spacing:-.04em;margin:4px 0 8px;font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:clamp(45px,6vw,70px)}.sound-button{color:var(--forest);border:1px solid var(--mint);cursor:pointer;background:#e9f4ea;border-radius:20px;align-items:center;gap:8px;padding:8px 13px;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:11px;display:inline-flex}.sound-button svg{width:17px}.example{color:var(--muted);margin:22px 0}.example strong{color:var(--coral)}.lesson-companion{background:#e5efdd;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.mini-speech{margin-top:-5px}.word-dots{gap:8px;margin-top:35px;display:flex}.word-dots span{width:34px;height:34px;color:var(--muted);border:1px solid var(--line);background:var(--white);border-radius:50%;place-items:center;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:10px;display:grid}.word-dots span.done{color:#fff;border-color:var(--forest);background:var(--forest)}.word-dots svg{width:15px}.practice-screen{background:radial-gradient(circle at 85% 25%,#f5be452e,#0000 18%),#f8f4eb;min-height:calc(100vh - 82px)}.practice-copy h1{margin:12px 0 35px;font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:clamp(33px,4.4vw,55px)}.sentence-board{background:#fffdf899;border:2px dashed #c8beaa;border-radius:26px;flex-wrap:wrap;justify-content:center;gap:13px;max-width:760px;padding:35px;display:flex}.sentence-board button{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:12px;padding:15px 20px;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:17px;font-weight:600;box-shadow:0 5px #d8d0c0}.sentence-board.correct{border-color:var(--forest);background:#e7f1e5}.sentence-board.correct button{color:#fff;border-color:var(--forest);background:var(--forest);box-shadow:0 5px 0 var(--forest-dark)}.correct-note{max-width:560px;color:var(--forest);text-align:left;background:#e3f1e7;border-radius:14px;align-items:center;gap:12px;margin:25px 0;padding:13px 17px;display:flex}.correct-note svg{flex:none}.correct-note p,.correct-note strong{margin:0}.correct-note strong{display:block}.hint{color:var(--muted);margin:24px 0;font-size:12px}.dialogue-layout{background:#f8f3e8;min-height:calc(100vh - 82px);padding:26px 5vw 50px}.dialogue-layout .lesson-topline{margin:0 auto 22px}.cafe-scene{border:1px solid var(--line);background:linear-gradient(#fffdf82e,#fffdf82e),#dcebd4;border-radius:30px 20px;max-width:900px;height:270px;margin:auto;position:relative;overflow:hidden}.awning{background:repeating-linear-gradient(90deg, var(--coral) 0 65px, var(--paper) 65px 130px);clip-path:polygon(0 0,100% 0,100% 75%,97% 100%,94% 75%,91% 100%,88% 75%,85% 100%,82% 75%,79% 100%,76% 75%,73% 100%,70% 75%,67% 100%,64% 75%,61% 100%,58% 75%,55% 100%,52% 75%,49% 100%,46% 75%,43% 100%,40% 75%,37% 100%,34% 75%,31% 100%,28% 75%,25% 100%,22% 75%,19% 100%,16% 75%,13% 100%,10% 75%,7% 100%,4% 75%,0 100%);width:100%;height:58px;position:absolute;top:0;left:0}.table-line{background:#c79b68;border-radius:50%;width:60%;height:120px;position:absolute;bottom:-34px;right:-5%}.cafe-scene .pet-wrap{position:absolute;bottom:5px;left:16%}.scene-label{align-items:center;gap:8px;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:13px;font-weight:600;display:flex;position:absolute;top:88px;right:9%}.dialogue-card{z-index:3;border:1px solid var(--line);background:var(--white);max-width:770px;box-shadow:var(--shadow);border-radius:24px;margin:-28px auto 0;padding:23px;position:relative}.speaker{grid-template-columns:45px 1fr 42px;align-items:center;gap:12px;display:grid}.speaker>span,.speaker>button{border:0;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.speaker>span{color:#fff;background:var(--forest)}.speaker>button{color:var(--forest);cursor:pointer;background:#e6f1e7}.speaker p,.speaker small,.speaker strong{margin:0;display:block}.speaker small{color:var(--muted);margin-bottom:4px;font-size:10px}.answer-list{gap:8px;margin-top:19px;display:grid}.answer-list button{border:1px solid var(--line);background:var(--white);cursor:pointer;text-align:left;border-radius:13px;grid-template-columns:32px 1fr 20px;align-items:center;gap:11px;padding:11px 13px;display:grid}.answer-list button:hover{border-color:var(--forest);background:#eef6eb}.answer-list button>span{background:var(--paper-deep);border-radius:50%;place-items:center;width:29px;height:29px;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:10px;display:grid}.answer-list button>svg{width:16px}.mic-hint{color:var(--muted);background:0 0;border:0;align-items:center;gap:7px;margin:15px auto 0;font-size:10px;display:flex}.mic-hint svg{width:15px}.result-layout,.tutor-layout{grid-template-columns:minmax(430px,.9fr) minmax(430px,1.1fr);min-height:calc(100vh - 82px);display:grid}.result-copy,.tutor-story{z-index:2;align-self:center;max-width:670px;padding:50px 5vw;position:relative}.result-copy h1,.tutor-story h1{font-size:clamp(40px,4.4vw,64px);line-height:1.16}.result-copy>p,.tutor-story>p{color:var(--muted);line-height:1.8}.result-stats{gap:11px;margin:26px 0 15px;display:flex}.result-stats>div{border:1px solid var(--line);background:var(--white);border-radius:15px;min-width:105px;padding:14px}.result-stats strong,.result-stats span{display:block}.result-stats strong{color:var(--forest);font-size:25px}.result-stats span{color:var(--muted);margin-top:4px;font-size:10px}.energy-earned{background:#fff0b3;border-radius:18px;align-items:center;gap:12px;width:max-content;margin-bottom:25px;padding:11px 17px;display:flex}.energy-earned>svg{color:#a16c00}.energy-earned p,.energy-earned small,.energy-earned strong{margin:0;display:block}.energy-earned small{font-size:9px}.energy-earned strong{color:#a16c00;font-size:24px}.result-stage{background:radial-gradient(circle,#ffffffe6,#0000 33%),#e1edda;place-items:center;display:grid}.result-stage>span{color:var(--muted);margin-top:-160px;font-size:12px}.confetti{background:var(--coral);border-radius:4px;width:11px;height:27px;animation:2.6s ease-in-out infinite fall;position:absolute}.confetti.c1{top:20%;left:15%}.confetti.c2{background:var(--sun);animation-delay:.5s;top:13%;left:46%}.confetti.c3{background:var(--forest);animation-delay:.9s;top:25%;left:72%}@keyframes fall{0%,to{transform:translateY(-8px)rotate(0)}50%{transform:translateY(22px)rotate(110deg)}}.hatch-screen{background:var(--forest-dark);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 82px);padding:25px;display:flex;position:relative;overflow:hidden}.hatch-light{background:radial-gradient(circle,#ffeea3a3,#ffeea31f 47%,#0000 70%);border-radius:50%;width:600px;height:600px;animation:2s ease-in-out infinite alternate hatch-light;position:absolute}.hatch-copy,.hatch-screen>.pet-wrap,.hatch-summary,.hatch-screen>button{z-index:2;position:relative}.hatch-copy .eyebrow{color:var(--sun)}.hatch-copy h1{color:var(--paper);margin:8px 0;font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:clamp(42px,5vw,67px)}.hatch-copy p{color:var(--mint);margin:0;font-family:IBM Plex Mono,SFMono-Regular,monospace}.hatch-screen .pet-wrap{margin:-5px 0 -25px}.hatch-screen .ground-shadow{background:#0000003d}.hatch-summary{gap:10px;margin:0 0 20px;display:flex}.hatch-summary span{color:var(--paper);background:#ffffff14;border:1px solid #ffffff2e;border-radius:20px;align-items:center;gap:6px;padding:8px 11px;font-size:10px;display:flex}.hatch-summary svg{width:15px}@keyframes hatch-light{0%{opacity:.7;transform:scale(.9)}to{opacity:1;transform:scale(1.12)}}.tutor-layout{background:radial-gradient(circle at 75% 30%,#f5be4529,#0000 20%),#f8f3e8}.ready-list{gap:9px;margin:28px 0;display:grid}.ready-list span{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.ready-list svg{width:18px;color:var(--forest)}.primary-button.success{background:#347b5d}.safe-note{color:var(--muted);margin-top:19px;display:block}.tutor-card{width:min(520px,85%);min-height:570px;box-shadow:var(--shadow);background:#fff3ca;border:1px solid #d7c69c;border-radius:34px 22px 38px 24px;align-self:center;margin:35px auto;padding:37px;position:relative;overflow:hidden}.tutor-avatar{color:#fff;background:var(--coral);border:7px solid #fff;border-radius:50%;place-items:center;width:74px;height:74px;display:grid;box-shadow:0 10px 25px #20332b26}.live-dot{color:var(--forest);background:#dcebd7;border-radius:20px;padding:7px 11px;font-size:10px;font-weight:800;position:absolute;top:44px;right:32px}.tutor-card h2{margin:25px 0 4px;font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:31px}.tutor-card>p{color:var(--muted);margin:0;font-size:12px}.lesson-brief{background:#fffdf8a6;border:1px dashed #c9ae71;border-radius:18px;margin-top:25px;padding:17px}.lesson-brief span,.lesson-brief strong{display:block}.lesson-brief span{color:var(--muted);font-size:9px}.lesson-brief strong{margin:5px 0}.lesson-brief p{color:var(--muted);margin:0;font-size:11px}.tutor-card>.pet-wrap{position:absolute;bottom:0;right:12px}.journey-screen{background:radial-gradient(circle at 88% 8%,#f5be4533,#0000 17%),#f8f3e8;min-height:calc(100vh - 82px);padding:45px clamp(22px,5vw,78px) 70px;overflow:hidden}.journey-heading{grid-template-columns:minmax(420px,1fr) 250px;align-items:end;gap:60px;max-width:1250px;margin:0 auto 34px;display:grid}.journey-heading h1{letter-spacing:-.055em;max-width:760px;margin:12px 0;font-family:Noto Serif SC,Source Han Serif SC,STSong,serif;font-size:clamp(37px,4.6vw,64px);line-height:1.16}.journey-heading p{max-width:720px;color:var(--muted);margin:0;line-height:1.8}.book-progress{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);border-radius:24px 16px 26px 18px;padding:20px}.book-progress>span,.book-progress>strong,.book-progress>small{display:block}.book-progress>span{color:var(--forest);font-size:35px;font-weight:700}.book-progress>strong{margin:2px 0 13px;font-size:12px}.book-progress>small{color:var(--muted);margin-top:9px;font-size:9px}.stage-ribbon{grid-template-columns:repeat(8,1fr);max-width:1250px;margin:0 auto 35px;display:grid;position:relative}.stage-ribbon:before{content:"";background:linear-gradient(90deg, var(--forest) 0 58%, var(--line) 58%);border-radius:3px;height:3px;position:absolute;top:17px;left:5%;right:5%}.stage-ribbon div{z-index:2;justify-items:center;gap:6px;display:grid;position:relative}.stage-ribbon span{width:35px;height:35px;color:var(--muted);border:3px solid var(--line);background:#f8f3e8;border-radius:50%;place-items:center;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:10px;font-weight:700;display:grid}.stage-ribbon .reached span{color:#fff;border-color:var(--forest);background:var(--forest)}.stage-ribbon small{color:var(--muted);text-align:center;font-size:9px;font-weight:700}.unit-map{grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;max-width:1250px;margin:auto;display:grid}.unit-node{border:1px solid var(--line);background:var(--white);border-radius:23px 16px 26px 18px;min-height:210px;padding:19px;transition:transform .18s;position:relative;overflow:hidden}.unit-node:nth-child(3n+2){transform:translateY(15px)rotate(.7deg)}.unit-node:nth-child(3n){transform:rotate(-.8deg)}.unit-node.done{background:#edf5e9}.unit-node.current{color:var(--paper);border-color:var(--forest);background:var(--forest);box-shadow:0 16px 35px #1d5a4740}.unit-node.locked{opacity:.62}.node-number{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.node-number>span{width:39px;height:39px;color:var(--forest);border:1px solid var(--mint);background:var(--white);border-radius:13px 13px 17px 10px;place-items:center;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:11px;font-weight:700;display:grid}.node-number svg{width:18px;color:var(--forest)}.current .node-number svg{color:var(--sun)}.unit-node>small{letter-spacing:.08em;font-size:9px;font-weight:800}.unit-node h2{min-height:47px;margin:6px 0;font-family:Noto Serif SC,Source Han Serif SC,STSong,serif;font-size:18px;line-height:1.35}.unit-node p{color:var(--muted);margin:0;font-size:10px;font-weight:700}.unit-node.current p{color:var(--mint)}.unit-node>button{color:var(--forest-dark);background:var(--sun);cursor:pointer;border:0;border-radius:18px;align-items:center;gap:6px;margin-top:14px;padding:8px 11px;font-size:10px;font-weight:900;display:inline-flex}.unit-node>button svg{width:14px}.map-index{color:#20332b14;font-size:49px;font-weight:700;position:absolute;bottom:3px;right:11px}.current .map-index{color:#ffffff17}.graduation-note{background:#fff0ba;border:1px solid #d8b968;border-radius:28px 18px 30px 20px;justify-content:space-between;align-items:center;max-width:1250px;min-height:145px;margin:38px auto 0;padding:20px 25px;display:flex}.graduation-note>div{align-items:center;gap:13px;display:flex}.graduation-note>div>svg{color:#9b6b00;width:33px}.graduation-note p,.graduation-note strong{margin:0;display:block}.graduation-note p{color:#705a2b;font-size:11px;line-height:1.7}.graduation-note strong{color:var(--ink);font-size:15px}.graduation-note .pet-wrap{margin-bottom:-30px}.mobile-nav{display:none}@media (max-width:1100px){.course-workspace{grid-template-columns:minmax(0,1fr) 310px}.course-grid{grid-template-columns:1fr}.welcome-grid{grid-template-columns:1fr 1fr}.journey-peek{display:none}.home-layout{grid-template-columns:minmax(380px,1fr) minmax(400px,1fr)}.growth-panel{width:220px;position:absolute;bottom:10px;right:20px}.setup-shell{grid-template-columns:80px 1fr 1fr}}@media (max-width:760px){.course-shell{padding:0 16px 38px}.course-header{height:72px}.course-header .round-back{margin:0;position:static}.course-step{font-size:9px}.course-heading{margin:24px auto;display:block}.course-heading h1{font-size:36px}.course-heading p{font-size:13px;line-height:1.7}.course-process{min-width:0;margin-top:20px}.course-process span{justify-items:center;font-size:9px;display:grid}.course-workspace{flex-direction:column;display:flex}.course-grid{width:100%}.course-option{min-height:200px;padding:20px}.course-summary{width:100%;position:static}.welcome-header{padding:18px}.welcome-header .ghost-button,.brand small{display:none}.welcome-grid{flex-direction:column;min-height:auto;padding:20px 19px 55px;display:flex}.hero-copy{text-align:center;order:2;padding:0}.hero-copy h1{margin:13px 0;font-size:39px}.hero-copy>p{font-size:14px}.egg-stage{order:1;min-height:375px;margin:-45px 0 -50px;transform:scale(.78)}.stage-note,.trust-row,.orbit-two{display:none}.setup-shell{background:linear-gradient(var(--paper) 0 58%, #e5f0df 58%);flex-direction:column;min-height:100vh;display:flex}.round-back{z-index:5;margin:18px;position:absolute}.setup-copy{order:2;padding:25px 19px 45px}.setup-copy h1{margin:12px 0;font-size:37px}.naming-stage{order:1;min-height:410px}.naming-stage:before{width:320px;height:320px}.naming-stage .pet-wrap{transform:scale(.72)}.name-tag{top:14%;right:7%}.speech-note{bottom:7%}.app-shell{min-height:100vh;padding-bottom:68px;display:block}.side-rail{display:none}.app-header{height:66px;padding:0 16px}.home-layout{flex-direction:column;min-height:auto;display:flex}.mission-panel{order:2;padding:26px 17px 35px}.mission-panel h1{margin:12px 0;font-size:36px}.pet-home-stage{order:1;min-height:350px}.pet-home-stage .pet-wrap{transform:scale(.72)}.speech-bubble{top:13%}.growth-panel{order:3;width:auto;margin:0 17px 25px;position:relative;bottom:auto;right:auto}.lesson-layout{flex-direction:column;min-height:auto;display:flex}.lesson-main,.practice-screen{min-height:calc(100vh - 134px);padding:18px}.lesson-companion{display:none}.lesson-topline{grid-template-columns:38px 1fr 38px;gap:10px}.word-visual{width:160px;height:160px}.english-word{font-size:48px}.sentence-board{gap:9px;padding:22px 14px}.sentence-board button{padding:12px 13px;font-size:14px}.practice-copy h1{font-size:31px}.dialogue-layout{min-height:auto;padding:18px 13px 30px}.cafe-scene{height:230px}.dialogue-card{padding:17px}.speaker strong{font-size:13px}.result-layout,.tutor-layout{flex-direction:column;min-height:auto;display:flex}.result-copy,.tutor-story{order:2;padding:30px 18px 45px}.result-copy h1,.tutor-story h1{font-size:37px}.result-stage{order:1;min-height:360px}.result-stage .pet-wrap{transform:scale(.76)}.result-stage>span{margin-top:-100px}.result-stats>div{flex:1;min-width:0}.hatch-screen{min-height:calc(100vh - 134px)}.hatch-screen .pet-wrap{margin:-45px 0 -65px;transform:scale(.78)}.hatch-summary{flex-wrap:wrap;justify-content:center}.tutor-card{order:1;width:calc(100% - 30px);min-height:480px;margin:18px auto 0;padding:25px}.tutor-card>.pet-wrap{transform-origin:100% 100%;transform:scale(.78)}.journey-screen{padding:27px 16px 40px}.journey-heading{flex-direction:column;align-items:stretch;gap:20px;display:flex}.journey-heading h1{font-size:36px}.book-progress{width:100%}.stage-ribbon{grid-template-columns:repeat(4,1fr);gap:17px 0}.stage-ribbon:before{display:none}.unit-map{grid-template-columns:1fr}.unit-node,.unit-node:nth-child(3n+2),.unit-node:nth-child(3n){min-height:185px;transform:none}.graduation-note{min-height:150px}.graduation-note .pet-wrap{display:none}.live-dot{top:27px;right:22px}.mobile-nav{z-index:30;height:68px;padding-bottom:max(5px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f2;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:var(--muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:9px;display:flex}.mobile-nav svg{width:19px}.mobile-nav button.active{color:var(--forest);font-weight:800}}.pet-room .mascot-v2{scale:.86}.challenge-companion .mascot-v2{scale:.7}.feedback-pet .mascot-v2{scale:1.05}.feed-room .mascot-v2{scale:1}.teacher-profile .mascot-v2{scale:.52}@media (max-width:760px){.pet-room .mascot-v2{margin-bottom:-58px;scale:.62}.feedback-pet .mascot-v2{margin:-30px 0 -60px;scale:.65}.feed-room .mascot-v2{margin-bottom:-45px;scale:.68}.teacher-profile .mascot-v2{scale:.43}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.speaking-app{color:#173e33;background:#fff8e9;min-height:100vh}.speaking-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8e0;border-bottom:1px solid #e4dbc8;justify-content:space-between;align-items:center;height:82px;padding:0 clamp(20px,4vw,64px);display:flex;position:relative}.speaking-brand{cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;display:flex}.speaking-brand>span{color:#fff8e9;background:#1d5a47;border-radius:13px 13px 17px 10px;place-items:center;width:38px;height:38px;display:grid;transform:rotate(-4deg)}.speaking-brand svg{width:20px}.speaking-brand strong{font-size:17px;font-weight:900}.speaking-brand small{color:#76827b;font-size:10px}.speaking-stats{gap:10px;display:flex}.speaking-stats>span{color:#68756e;background:#fffdf8;border:1px solid #e4dbc8;border-radius:13px;align-items:center;gap:5px;padding:9px 13px;font-size:11px;display:flex}.speaking-stats svg{color:#ee754e;width:15px}.speaking-stats strong{color:#173e33;font-family:IBM Plex Mono,monospace}.speak-home{grid-template-columns:minmax(420px,.9fr) minmax(440px,1.1fr) 235px;align-items:center;gap:25px;max-width:1320px;min-height:calc(100vh - 82px);margin:auto;padding:35px 28px 70px;display:grid}.today-card{z-index:3;background:#fffdf8;border:1px solid #e4dbc8;border-radius:32px 22px 38px 23px;padding:clamp(25px,3vw,45px);position:relative;box-shadow:0 24px 60px #2f43391c}.today-topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.speak-tag,.time-chip{color:#1d5a47;letter-spacing:.05em;align-items:center;gap:6px;font-size:11px;font-weight:900;display:inline-flex}.speak-tag svg,.time-chip svg{width:15px}.time-chip{color:#68756e;letter-spacing:0;background:#f3ead7;border-radius:10px;padding:7px 10px;font-weight:700}.hello-line{color:#68756e;margin:27px 0 5px;font-size:13px}.today-card h1{letter-spacing:-.06em;margin:0;font-family:Noto Serif SC,serif;font-size:clamp(43px,4.5vw,67px);line-height:1.15}.today-card h1 span{color:#ef714e}.today-desc{color:#68756e;line-height:1.8}.three-missions{gap:8px;margin:24px 0;display:grid}.three-missions>div{background:#f7f1e4;border-radius:14px;grid-template-columns:32px 1fr 25px;align-items:center;padding:10px 12px;display:grid}.three-missions>div>span{background:#fffdf8;border-radius:9px;place-items:center;width:25px;height:25px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:700;display:grid}.three-missions p{gap:2px;margin:0;display:grid}.three-missions strong{font-size:12px}.three-missions small{color:#76827b;font-size:9px}.three-missions svg{color:#b9c2bd;width:15px}.speak-primary{color:#fff;cursor:pointer;background:#1d5a47;border:0;border-radius:16px 16px 21px 13px;justify-content:center;align-items:center;gap:10px;min-height:55px;padding:0 24px;font-weight:900;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 9px #173e33}.speak-primary:hover{transform:translateY(2px);box-shadow:0 7px #173e33}.speak-primary svg{width:18px}.today-card .speak-primary{width:100%}.demo-note{color:#8a928d;text-align:center;margin-top:14px;font-size:9px;display:block}.pet-room{background:radial-gradient(circle at 48% 25%,#fff6bd 0 8%,#0000 28%),linear-gradient(#dff0d8 0 67%,#e6c996 67%);border-radius:50% 46% 42% 48%;place-items:center;min-height:610px;display:grid;position:relative;overflow:hidden}.pet-room:after,.feed-room:after{content:"";background:#58684921;height:6px;position:absolute;bottom:31%;left:0;right:0}.room-sun{background:#f5be4561;border-radius:50%;width:85px;height:85px;position:absolute;top:70px;right:85px}.room-plant{color:#4e7b56;font-size:100px;position:absolute;bottom:29%;left:12%;transform:rotate(-10deg)}.pet-message{z-index:4;white-space:nowrap;box-shadow:none;color:#1d5a47;text-shadow:0 1px 4px #fff9;background:0 0;border:0;border-radius:0;padding:0;font-size:13px;font-weight:800;position:absolute;top:8%;left:50%;transform:translate(-50%)}.pet-status{z-index:5;width:100%;color:inherit;text-align:center;-webkit-backdrop-filter:none;backdrop-filter:none;cursor:pointer;box-shadow:none;background:0 0;border:0;border-radius:0;margin-top:0;padding:10px 20px 8px;position:relative}.pet-status>div:first-child{color:#76827b;flex-direction:column;align-items:center;gap:3px;font-size:11px;display:flex}.pet-status>div:first-child>span{color:#1d5a47;font-size:13px;font-weight:800}.pet-status strong{color:#5a7a6e;font-size:11px;font-weight:600;line-height:1.4}.status-bar{background:#ded8c9;border-radius:10px;height:7px;margin-top:9px;overflow:hidden}.status-bar span{border-radius:inherit;background:#f5be45;width:72%;height:100%;display:block}.week-card{background:#fffdf8;border:1px solid #e4dbc8;border-radius:25px 17px 29px 18px;align-self:end;margin-bottom:60px;padding:21px}.week-days{grid-template-columns:repeat(7,1fr);gap:5px;margin:18px 0 14px;display:grid}.week-days>span{color:#a6aca8;justify-items:center;gap:5px;font-size:13px;display:grid}.week-days small{font-size:8px}.week-days svg{width:13px}.week-days .done{color:#1d5a47}.week-days .today{color:#ef714e}.week-card p{color:#76827b;gap:3px;margin:0 0 15px;font-size:10px;display:grid}.week-card p strong{color:#173e33;font-size:13px}.week-card button,.teacher-link{color:#1d5a47;cursor:pointer;background:#e8f0df;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:7px;width:100%;padding:11px;font-size:9px;font-weight:800;text-decoration:none;display:flex}.teacher-link.unlocked{color:#fff;background:linear-gradient(135deg,#5a8c6f,#3d6b52);box-shadow:0 8px 20px #3d6b5238}.teacher-link.unlocked:hover{transform:translateY(-2px);box-shadow:0 12px 26px #3d6b5247}.teacher-link.locked{cursor:not-allowed;color:#9c9184;background:#f1ece3}.teacher-link.locked small{font-size:8px;font-weight:600}.auth-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1d2e2b8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.auth-card{background:#fffdf8;border-radius:24px;width:100%;max-width:420px;padding:28px;position:relative;box-shadow:0 24px 60px #1d2e2b40}.auth-close{color:#76827b;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:16px;right:16px}.auth-tag{color:#1d5a47;background:#e8f0df;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800;display:inline-flex}.auth-card h1{color:#1d5a47;margin:12px 0 8px;font-size:22px}.auth-card>p{color:#76827b;margin:0 0 20px;font-size:14px;line-height:1.5}.auth-card form{gap:14px;display:grid}.auth-card label{color:#20332b;gap:6px;font-size:13px;font-weight:700;display:grid}.auth-card label input[type=text],.auth-card label input[type=password]{color:#20332b;background:#fff;border:1px solid #d8e0d5;border-radius:12px;outline:none;width:100%;padding:12px 14px;font-size:15px}.auth-card label input:focus{border-color:#1d5a47;box-shadow:0 0 0 3px #1d5a471a}.auth-agree{align-items:flex-start;gap:10px;color:#76827b!important;flex-direction:row!important;font-size:12px!important;font-weight:500!important;display:flex!important}.auth-agree input{margin-top:2px}.auth-agree a{color:#1d5a47;text-decoration:underline}.auth-error{color:#d14d4d;background:#e65e5e1a;border-radius:10px;padding:10px 12px;font-size:13px}.auth-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d5a47,#2a7a60);border:0;border-radius:12px;padding:14px;font-size:15px;font-weight:800;transition:opacity .15s}.auth-submit:disabled{opacity:.65;cursor:wait}.auth-switch{text-align:center;color:#76827b;margin-top:16px;font-size:13px}.auth-switch button{color:#1d5a47;cursor:pointer;background:0 0;border:0;margin-left:4px;font-weight:800;text-decoration:underline}.speaking-header .auth-pill{color:#1d5a47;cursor:pointer;background:#e8f0df;border:0;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.speaking-header .auth-pill.logout{color:#76827b;background:#f1ece3}.week-card button svg{width:14px}.week-learning-path{background:#fffdf8;border:1px solid #e4dbc8;border-radius:28px 19px 32px 21px;grid-column:1/-1;width:100%;padding:25px 27px 28px;box-shadow:0 16px 42px #2f433912}.week-path-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:19px;display:flex}.week-path-heading h2{letter-spacing:-.045em;margin:7px 0 0;font-family:Noto Serif SC,serif;font-size:clamp(23px,2.5vw,33px)}.week-path-heading>span{color:#607269;background:#f3ead7;border-radius:10px;padding:8px 11px;font-size:9px;font-weight:800}.week-lesson-grid{grid-template-columns:repeat(7,1fr);gap:10px;display:grid}.week-lesson-grid>button{text-align:left;color:#173e33;cursor:pointer;background:#f8f3e8;border:1px solid #e5ddce;border-radius:17px;align-content:start;min-height:150px;padding:15px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;position:relative}.week-lesson-grid>button:hover{border-color:#9bb89d;transform:translateY(-2px)}.week-lesson-grid>button.current{background:#eaf3e4;border:2px solid #4f8665;box-shadow:0 10px 24px #36664b1f}.week-lesson-grid>button.completed{background:#f1f5e9}.week-lesson-grid>button.locked{opacity:.55;cursor:not-allowed;background:#f7f4ee}.week-lesson-grid>button.locked>span{color:#8f8474;background:#e4ddd3}.week-lesson-grid>button.locked strong,.week-lesson-grid>button.locked p,.week-lesson-grid>button.locked b{color:#9c9184}.week-lesson-grid>button:disabled:hover{box-shadow:none;transform:none}.week-lesson-grid>button>span{color:#fff;background:#1d5a47;border-radius:9px;place-items:center;width:27px;height:27px;margin-bottom:11px;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:900;display:grid}.week-lesson-grid>button>span svg{width:13px}.week-lesson-grid small{color:#829087;letter-spacing:.13em;font-size:7px}.week-lesson-grid strong{margin:4px 0;font-size:12px}.week-lesson-grid p{color:#76827b;margin:0;font-size:8px;line-height:1.5}.week-lesson-grid b{color:#6e796f;font-family:IBM Plex Mono,monospace;font-size:8px;position:absolute;top:14px;right:13px}.home-growth-map{background:linear-gradient(115deg,#fffdf8,#edf5e7);border:1px solid #dce4d6;border-radius:27px 20px 31px;grid-column:1/-1;width:100%;padding:24px 27px 28px;overflow:hidden;box-shadow:0 16px 42px #2f433914}.map-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:21px;display:flex}.map-heading h2{letter-spacing:-.04em;margin:7px 0 0;font-family:Noto Serif SC,serif;font-size:clamp(22px,2.4vw,32px)}.map-heading>button{color:#1d5a47;white-space:nowrap;cursor:pointer;background:#dfead7;border:0;border-radius:11px;align-items:center;gap:6px;padding:9px 12px;font-size:9px;font-weight:900;display:inline-flex}.map-heading>button svg{width:14px}.map-route{grid-template-columns:repeat(9,minmax(86px,1fr));min-width:900px;display:grid;position:relative}.map-line,.map-line-progress{z-index:0;background:#d4d8ce;border-radius:4px;width:90%;height:4px;position:absolute;top:35px;left:5%}.map-line-progress{z-index:1;background:linear-gradient(90deg,#3c7659,#8fbd6e,#f1be4e);width:0;transition:width .5s}.map-route>button{z-index:2;color:#173e33;cursor:pointer;background:0 0;border:0;justify-items:center;padding:0 4px;display:grid;position:relative}.map-route>button>span{background:#e5eee0;border:5px solid #fffdf8;border-radius:50%;place-items:center;width:72px;height:72px;display:grid;position:relative;overflow:visible;box-shadow:0 7px 17px #33493c1f}.map-route>button>span img{-o-object-fit:cover;object-fit:cover;border-radius:50%}.map-route>button.future>span img{filter:grayscale();opacity:.28}.map-route>button.future>span{box-shadow:none;background:#e7e5de}.map-route>button.current>span{border-color:#f5c55a;transform:scale(1.05);box-shadow:0 0 0 6px #f5c55a38,0 9px 20px #33493c26}.map-route>button>span>svg{z-index:3;color:#fff;background:#3d7659;border-radius:50%;width:20px;height:20px;padding:4px;position:absolute;bottom:-2px;right:-3px}.map-route>button em{z-index:4;color:#6e4e08;white-space:nowrap;background:#f8d875;border-radius:7px;padding:4px 7px;font-size:7px;font-style:normal;font-weight:900;position:absolute;top:-15px}.map-route>button strong{margin-top:9px;font-size:10px}.map-route>button small{color:#8a928d;margin-top:2px;font-size:7px}.map-route>button.current strong{color:#1d5a47}.speaking-pet{z-index:3;transform-origin:bottom;width:280px;height:320px;animation:3.2s ease-in-out infinite sp-float;position:relative}.sp-body{background:linear-gradient(145deg,#79b980,#4b8861);border:5px solid #f9f1d7;border-radius:50% 50% 45% 45%;width:170px;height:205px;position:absolute;bottom:42px;left:57px;box-shadow:inset 12px 5px 25px #ffffff4d,0 22px 30px #2f433938}.sp-belly{z-index:2;background:#bfe0ad;border-radius:50%;width:100px;height:115px;position:absolute;bottom:55px;left:93px}.sp-ear{z-index:0;background:#5f9d6b;border:5px solid #f9f1d7;width:80px;height:105px;position:absolute;top:42px}.sp-ear.left{border-radius:80% 30% 50%;left:42px;transform:rotate(-22deg)}.sp-ear.right{border-radius:30% 80% 50%;right:39px;transform:rotate(22deg)}.sp-eye{z-index:5;background:#173e33;border-radius:50%;width:14px;height:18px;position:absolute;top:135px;box-shadow:inset 3px 3px #fff}.sp-eye.left{left:102px}.sp-eye.right{right:100px}.sp-cheek{z-index:4;opacity:.75;background:#ef8f78;border-radius:50%;width:25px;height:11px;position:absolute;top:167px}.sp-cheek.left{left:78px}.sp-cheek.right{right:77px}.sp-mouth{z-index:5;border-bottom:3px solid #173e33;border-radius:50%;width:20px;height:10px;position:absolute;top:173px;left:133px}.sp-paw{z-index:4;background:#579566;border:4px solid #f9f1d7;border-radius:50%;width:50px;height:75px;position:absolute;bottom:40px}.sp-paw.left{left:48px;transform:rotate(14deg)}.sp-paw.right{right:46px;transform:rotate(-14deg)}.sp-tail{z-index:0;border:14px solid #579566;border-left-color:#0000;border-radius:50%;width:105px;height:75px;position:absolute;bottom:75px;right:0;transform:rotate(20deg)}.sp-leaf{z-index:6;background:#2d6b49;border-radius:95% 10%;width:43px;height:69px;position:absolute;top:26px;left:124px;transform:rotate(35deg)}.sp-shadow{filter:blur(4px);background:#2f43392b;border-radius:50%;width:205px;height:28px;position:absolute;bottom:27px;left:45px}.speaking-pet.happy .sp-mouth{border:3px solid #173e33;border-top:0;border-radius:0 0 50% 50%;height:16px}.speaking-pet.eating{animation:.45s ease-in-out infinite alternate sp-eat}.sp-snack{z-index:10;font-size:54px;position:absolute;bottom:65px;right:35px;transform:rotate(-24deg)}.speaking-pet.mascot-v2{isolation:isolate;filter:drop-shadow(0 28px 22px #1f3f322e);width:330px;height:420px;animation:4s cubic-bezier(.45,0,.55,1) infinite mascot-breathe}.mascot-art{z-index:3;border-radius:46% 46% 43% 43%;position:absolute;inset:0}.mascot-stage-art{-o-object-fit:contain;object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}.mascot-glow{z-index:1;filter:blur(16px);opacity:.6;background:radial-gradient(circle,#f5be4557,#0000 64%);border-radius:50%;width:80%;height:80%;animation:3.2s ease-in-out infinite alternate mascot-glow;position:absolute;top:9%;left:10%}.voice-wave{z-index:6;opacity:0;border-top:3px solid #ef714e;border-right:3px solid #ef714e;border-radius:0 100% 0 0;width:20px;height:20px;position:absolute;top:38%;right:-2%;transform:rotate(45deg)}.voice-wave.w2{width:34px;height:34px;animation-delay:.16s;top:35%;right:-8%}.voice-wave.w3{width:50px;height:50px;animation-delay:.32s;top:31%;right:-15%}.mascot-v2.happy .voice-wave{animation:1.25s ease-out infinite voice-listen}.mascot-spark{z-index:7;color:#f5be45;opacity:0;font-size:25px;position:absolute}.mascot-spark.s1{top:18%;left:5%}.mascot-spark.s2{animation-delay:.28s;top:7%;right:8%}.mascot-v2.happy .mascot-spark{animation:1.4s ease-in-out infinite mascot-spark}.mascot-snack{z-index:8;filter:drop-shadow(0 8px 10px #503a192e);font-size:64px;animation:.55s ease-in-out infinite alternate snack-bob;position:absolute;bottom:17%;right:2%}.mascot-v2.eating .mascot-art{animation:.42s ease-in-out infinite alternate mascot-chew}@keyframes mascot-breathe{0%,to{transform:translateY(0)scale(1)}48%{transform:translateY(-7px)scale(1.012)}55%{transform:translateY(-7px)scale(1.009)}}@keyframes mascot-glow{to{opacity:1;transform:scale(1.07)}}@keyframes voice-listen{0%{opacity:0;transform:rotate(45deg)scale(.55)}30%{opacity:.9}to{opacity:0;transform:rotate(45deg)scale(1.15)}}@keyframes mascot-spark{0%,to{opacity:0;transform:translateY(8px)scale(.5)rotate(0)}45%,70%{opacity:1;transform:translateY(0)scale(1)rotate(18deg)}}@keyframes mascot-chew{to{transform:translateY(2px)scale(1.012,.987)rotate(.4deg)}}@keyframes snack-bob{to{transform:translateY(-8px)rotate(8deg)}}@keyframes sp-float{50%{transform:translateY(-8px)rotate(1deg)}}@keyframes sp-eat{to{transform:rotate(2deg)scale(1.02)}}.challenge-screen{background:linear-gradient(90deg,#fffaf0 0 72%,#e3f0dc 72%);grid-template-columns:minmax(0,1fr) 340px;min-height:calc(100vh - 82px);display:grid}.challenge-nav{border-bottom:1px solid #e4dbc8;grid-column:1/-1;grid-template-columns:50px 1fr auto;align-items:center;height:85px;padding:0 clamp(20px,5vw,70px);display:grid}.challenge-nav>button,.screen-back{color:#173e33;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;display:inline-flex}.challenge-nav>button{background:#fffdf8;border:1px solid #e4dbc8;border-radius:12px;justify-content:center;width:38px;height:38px}.challenge-nav>div{gap:8px;max-width:420px;font-size:11px;font-weight:800;display:grid}.challenge-nav>small{color:#76827b}.speak-progress{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.speak-progress span{background:#ded8c9;border-radius:5px;height:5px}.speak-progress .done{background:#1d5a47}.prompt-stage{text-align:center;align-content:center;justify-items:center;min-height:calc(100vh - 167px);padding:40px;display:grid}.prompt-label{color:#1d5a47;background:#e3f0dc;border-radius:10px;padding:7px 12px;font-size:11px;font-weight:900}.prompt-stage h1{letter-spacing:-.045em;max-width:700px;margin:18px 0 27px;font-family:Noto Serif SC,serif;font-size:clamp(38px,5vw,72px);line-height:1.1}.model-sentence{text-align:left;cursor:pointer;background:#fffdf8;border:1px solid #e4dbc8;border-radius:18px;grid-template-columns:35px 1fr 35px;align-items:center;min-width:min(620px,90%);padding:17px 20px;display:grid}.model-sentence>svg:first-child{color:#1d5a47}.model-sentence span{gap:3px;display:grid}.model-sentence small{color:#76827b;font-size:9px}.model-sentence strong{font-size:15px}.prompt-hint{color:#76827b;font-size:12px}.scaffold-switch{background:#ece7da;border-radius:13px;margin-top:18px;padding:4px;display:flex}.scaffold-switch button{color:#6e7772;cursor:pointer;background:0 0;border:0;border-radius:10px;min-height:34px;padding:0 13px;font-size:9px;font-weight:800}.scaffold-switch button.active{color:#173e33;background:#fffdf8;box-shadow:0 3px 10px #2d3d331a}.speaking-scaffold{text-align:left;background:#edf5e9b8;border:1px dashed #b9c7b6;border-radius:15px;align-content:center;width:min(620px,90%);min-height:82px;margin-top:10px;padding:13px 17px;display:grid}.speaking-scaffold small{color:#6c7d73;font-size:8px;font-weight:900}.speaking-scaffold p{color:#53665b;margin:5px 0 0;font-size:11px}.speaking-scaffold strong{color:#173e33;margin-top:6px;font-size:14px}.speaking-scaffold>div{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.speaking-scaffold>div span{background:#fffdf8;border-radius:8px;padding:6px 8px;font-size:9px;font-weight:800}.speaking-scaffold.challenge{background:#fff3cf;border-color:#e6b65a}.record-button{cursor:pointer;background:0 0;border:0;justify-items:center;margin-top:30px;padding:0;display:grid}.record-button>span{color:#fff;background:#ef714e;border:10px solid #f7d2c7;border-radius:50%;place-items:center;width:102px;height:102px;margin-bottom:13px;display:grid;box-shadow:0 12px #b95339}.record-button>span svg{width:35px;height:35px}.record-button strong{font-size:14px}.record-button small{color:#8a928d;margin-top:4px;font-size:9px}.record-button.recording>span{animation:.8s ease-in-out infinite alternate pulse-record}@keyframes pulse-record{to{transform:scale(1.1);box-shadow:0 0 0 18px #ef714e21,0 8px #b95339}}.challenge-companion{align-content:center;justify-items:center;display:grid;position:relative;overflow:hidden}.challenge-companion .speaking-pet{margin:-30px;transform:scale(.78)}.challenge-companion>div:last-child{z-index:3;background:#fffdf8;border-radius:14px;padding:12px 16px;font-size:11px;font-weight:800}.feedback-screen,.feed-screen,.teacher-screen{grid-template-columns:1fr 1fr;min-height:calc(100vh - 82px);display:grid}.feedback-copy,.feed-panel,.teacher-copy{align-self:center;max-width:650px;padding:clamp(30px,6vw,85px)}.feedback-copy h1,.feed-panel h1,.teacher-copy h1{letter-spacing:-.055em;margin:14px 0;font-family:Noto Serif SC,serif;font-size:clamp(40px,5vw,68px);line-height:1.12}.feedback-copy>p,.feed-panel>p,.teacher-copy>p{color:#68756e;line-height:1.8}.score-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0 15px;display:grid}.content-feedback{color:#315f4d;background:#e4f0dc;border-radius:15px;align-items:center;gap:11px;margin-top:18px;padding:14px;display:flex}.content-feedback>svg{color:#d49a25;width:20px}.content-feedback p{gap:3px;margin:0;display:grid}.content-feedback small{color:#6f7d74;font-size:8px}.content-feedback strong{font-size:11px}.score-grid>div{background:#fffdf8;border:1px solid #e4dbc8;border-radius:17px;padding:17px;display:grid}.score-grid strong{color:#1d5a47;font-family:IBM Plex Mono,monospace;font-size:31px}.score-grid span{font-size:11px;font-weight:800}.score-grid small{color:#8a928d;margin-top:4px;font-size:8px}.one-tip{background:#fff0ca;border-radius:17px;grid-template-columns:35px 1fr 36px;align-items:center;margin-bottom:23px;padding:15px;display:grid}.one-tip>p{gap:2px;margin:0;display:grid}.one-tip small{color:#8a6c31;font-size:8px}.one-tip strong{font-size:19px}.one-tip span{font-size:10px}.one-tip b{color:#ef714e}.one-tip button{cursor:pointer;background:#fffdf8;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.feedback-pet{background:radial-gradient(circle,#fff0b9,#dbeed7 72%);align-content:center;justify-items:center;display:grid}.feedback-pet .speaking-pet{margin:40px 0;transform:scale(1.2)}.feedback-pet>div{z-index:3;background:#fffdf8;border-radius:16px;padding:13px 18px;font-weight:900}.reward-screen{text-align:center;background:radial-gradient(circle at 50% 40%,#fff2b9,#0000 31%),#e4f0dc;align-content:center;justify-items:center;min-height:calc(100vh - 82px);padding:35px;display:grid;position:relative;overflow:hidden}.reward-light{border:1px dashed #1d5a474d;border-radius:50%;width:530px;height:530px;animation:18s linear infinite spin;position:absolute}.reward-icon{z-index:2;background:#f5be45;border:7px solid #fffdf8;border-radius:50%;place-items:center;width:155px;height:155px;margin-bottom:25px;font-size:80px;display:grid;position:relative;box-shadow:0 25px 50px #785a1933}.reward-screen h1{z-index:2;letter-spacing:-.06em;margin:12px 0;font-family:Noto Serif SC,serif;font-size:clamp(42px,5vw,70px)}.reward-screen>p{z-index:2;color:#68756e}.reward-proof{z-index:2;gap:9px;margin:25px 0;display:flex}.reward-proof span{background:#fffdf8cc;border-radius:11px;align-items:center;gap:6px;padding:9px 12px;font-size:10px;font-weight:800;display:flex}.reward-proof svg{width:14px}.reward-screen .speak-primary{z-index:2}.feed-room{background:linear-gradient(#dff0d8 0 67%,#e6c996 67%);place-items:center;display:grid;position:relative;overflow:hidden}.feed-room .speaking-pet{transform:scale(1.12)}.feed-room .pet-message{top:13%;left:17%}.feed-action{text-align:left;cursor:pointer;background:#fffdf8;border:1px solid #e4dbc8;border-radius:18px;grid-template-columns:55px 1fr 25px;align-items:center;width:100%;margin-top:25px;padding:15px;display:grid}.feed-action>span{font-size:38px}.feed-action strong{font-size:12px}.growth-toast{background:#e3f0dc;border-radius:17px;align-items:center;gap:12px;margin:24px 0;padding:15px;display:flex}.growth-toast span{gap:2px;display:grid}.growth-toast small{color:#68756e;font-size:8px}.growth-toast strong{font-size:12px}.teacher-screen{background:radial-gradient(circle at 80% 25%,#f5be4538,#0000 25%),#fff8e9;align-items:center;gap:50px;padding:40px clamp(20px,5vw,70px);position:relative}.screen-back{font-size:11px;position:absolute;top:30px;left:40px}.unlock-card{background:#fffdf8;border:1px solid #e4dbc8;border-radius:18px;margin:26px 0;padding:17px}.unlock-card>div:first-child{justify-content:space-between;align-items:end;display:flex}.unlock-card strong{font-family:IBM Plex Mono,monospace;font-size:28px}.unlock-card span,.unlock-card small{color:#68756e;font-size:9px}.speak-primary.success{background:#4e8a65}.teacher-profile{color:#fff;background:#173e33;border-radius:38px 24px 45px 25px;width:min(470px,100%);min-height:570px;padding:40px;position:relative;overflow:hidden;box-shadow:0 30px 70px #173e333d}.teacher-photo{color:#173e33;background:#f5be45;border:5px solid #fff3;border-radius:50%;place-items:center;width:95px;height:95px;font-size:38px;font-weight:900;display:grid}.available-dot{color:#b9dac8;background:#ffffff1a;border-radius:10px;padding:7px 10px;font-size:9px;font-weight:800;position:absolute;top:48px;right:35px}.teacher-profile h2{margin:18px 0 3px;font-size:35px}.teacher-profile>p{color:#fff9;margin:0;font-size:11px}.teacher-profile>div:not(.teacher-task){gap:8px;margin-top:15px;display:flex}.teacher-profile>div span{background:#ffffff14;border-radius:9px;align-items:center;gap:5px;padding:7px 9px;font-size:9px;display:flex}.teacher-profile svg{color:#f5be45;width:12px}.teacher-task{background:#ffffff0f;border:1px dashed #ffffff40;border-radius:17px;margin-top:25px;padding:17px}.teacher-task small,.teacher-task strong{display:block}.teacher-task small{color:#ffffff80;font-size:8px}.teacher-task strong{margin:5px 0}.teacher-task p{color:#ffffffa6;margin:0;font-size:10px;line-height:1.6}.teacher-profile .speaking-pet{transform-origin:100% 100%;position:absolute;bottom:-55px;right:-25px;transform:scale(.58)}.speaking-mobile-nav{display:none}.voice-goal{background:#eef6e8;border:1px solid #d8e5d3;border-radius:16px;margin:20px 0 4px;padding:14px}.voice-goal>div:first-child{justify-content:space-between;align-items:center;gap:12px;font-size:10px;display:flex}.voice-goal>div:first-child span{color:#1d5a47;align-items:center;gap:6px;font-weight:900;display:flex}.voice-goal svg{width:14px}.voice-goal>div:first-child strong{font-family:IBM Plex Mono,monospace;font-size:11px}.voice-goal-bar{background:#d7dfd1;border-radius:8px;height:8px;margin:9px 0 6px;overflow:hidden}.voice-goal-bar span{border-radius:inherit;background:linear-gradient(90deg,#1d5a47,#79b980);min-width:2%;height:100%;transition:width .45s;display:block}.voice-goal small{color:#76827b;font-size:8px}.speaking-encouragement{color:#1d5a47;opacity:0;justify-content:center;align-items:center;gap:7px;min-height:34px;font-size:12px;font-weight:900;transition:opacity .2s,transform .2s;display:flex;transform:translateY(8px)}.speaking-encouragement.show{opacity:1;transform:translateY(0)}.speaking-encouragement svg{color:#f5a928;width:16px}.feedback-actions{align-items:center;gap:12px;display:flex}.speak-secondary{color:#1d5a47;cursor:pointer;background:#edf5e9;border:1px solid #b9dac8;border-radius:16px;justify-content:center;align-items:center;gap:8px;min-height:55px;padding:0 18px;font-weight:900;display:inline-flex}.speak-secondary svg{width:17px}.bonus-screen{background:linear-gradient(90deg,#fffaf0 0 72%,#e3f0dc 72%);grid-template-columns:minmax(0,1fr) 380px;min-height:calc(100vh - 82px);display:grid;position:relative}.bonus-copy{text-align:center;align-content:center;justify-items:center;padding:65px 30px;display:grid}.bonus-copy h1{letter-spacing:-.06em;max-width:780px;margin:14px 0;font-family:Noto Serif SC,serif;font-size:clamp(45px,6vw,78px)}.bonus-copy>p{color:#68756e;margin:0 0 22px;font-size:18px}.bonus-starters{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.bonus-starters span{color:#1d5a47;background:#fffdf8;border:1px solid #cdddc7;border-radius:12px;padding:9px 12px;font-size:11px;font-weight:800}.bonus-copy .record-button{margin-top:18px}.bonus-pet{align-content:center;justify-items:center;display:grid;overflow:hidden}.bonus-pet .mascot-v2{margin:-15px;scale:.78}.bonus-pet>div:last-child{z-index:3;background:#fffdf8;border-radius:14px;padding:12px 15px;font-size:11px;font-weight:800}.growth-screen{background:#f8f3e7;min-height:calc(100vh - 82px)}.growth-hero{background:radial-gradient(circle at 23% 48%,#7cc19659,#0000 27%),linear-gradient(135deg,#eef5dc,#fff7e9 68%);padding:68px clamp(22px,6vw,90px) 46px;position:relative;overflow:hidden}.growth-hero:after{content:"";border:1px solid #1d5a4724;border-radius:50%;width:480px;height:480px;position:absolute;bottom:-60%;right:-7%}.growth-back{top:24px;left:clamp(22px,6vw,90px)}.growth-current{z-index:2;grid-template-columns:minmax(320px,520px) minmax(300px,540px);align-items:center;gap:clamp(30px,6vw,80px);max-width:1160px;margin:18px auto 0;display:grid;position:relative}.current-pet-image{aspect-ratio:1;background:#e0efd8;border:12px solid #ffffff94;border-radius:50%;position:relative;overflow:hidden;box-shadow:0 30px 65px #32533f2e}.current-pet-image img{-o-object-fit:cover;object-fit:cover;mix-blend-mode:multiply}.current-stage-copy>small{color:#6f7d72;letter-spacing:.12em;font-size:10px;font-weight:900}.current-stage-copy h1{letter-spacing:-.07em;margin:7px 0 11px;font-family:Noto Serif SC,serif;font-size:clamp(52px,7vw,86px);line-height:1}.current-stage-copy>p{color:#647269;max-width:430px;line-height:1.8}.growth-number{align-items:end;gap:10px;margin-top:24px;display:flex}.growth-number strong{font-family:IBM Plex Mono,monospace;font-size:40px;line-height:1}.growth-number span{color:#728078;padding-bottom:4px;font-size:10px}.growth-meter{background:#1d5a4721;border-radius:10px;height:10px;margin:14px 0 9px;overflow:hidden}.growth-meter span{border-radius:inherit;background:linear-gradient(90deg,#2f7257,#87be68,#efc35d);height:100%;transition:width .5s;display:block}.current-stage-copy>b{color:#315f4d;margin-bottom:23px;font-size:11px;display:block}.growth-collection{max-width:1280px;margin:auto;padding:48px 28px 100px}.collection-heading{justify-content:space-between;align-items:end;margin-bottom:22px;display:flex}.collection-heading small{color:#7d8a81;letter-spacing:.18em;font-size:9px}.collection-heading h2{margin:4px 0 0;font-family:Noto Serif SC,serif;font-size:34px}.collection-heading>span{color:#315f4d;background:#dfead7;border-radius:10px;padding:8px 11px;font-size:10px;font-weight:900}.stage-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.stage-grid article{background:#fffdf8;border:1px solid #e0d9ca;border-radius:20px;grid-template-columns:116px 1fr;align-items:center;min-height:134px;padding:9px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 24px #424b430d}.stage-grid article.current{border:2px solid #6da379;box-shadow:0 14px 35px #3f6d4c26}.stage-image{background:#e5eedf;border-radius:15px;width:116px;height:116px;position:relative;overflow:hidden}.stage-image img{-o-object-fit:cover;object-fit:cover}.stage-grid article.locked .stage-image img{filter:grayscale(.9)blur(2px);opacity:.34}.stage-grid article.locked .stage-image:after{content:"";background:#eeebe140;position:absolute;inset:0}.stage-image>span{z-index:2;text-align:center;color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#173e33bf;border-radius:7px;padding:5px;font-size:7px;font-weight:800;position:absolute;bottom:7px;left:7px;right:7px}.stage-grid article>div:nth-child(2){gap:3px;padding:10px 12px;display:grid}.stage-grid article small{color:#8a938c;letter-spacing:.14em;font-size:7px}.stage-grid article strong{font-family:Noto Serif SC,serif;font-size:19px}.stage-grid article p{color:#7a837d;margin:3px 0 0;font-size:8px;line-height:1.55}.stage-grid article em{color:#fff;background:#3d7659;border-radius:7px;padding:5px 7px;font-size:7px;font-style:normal;font-weight:900;position:absolute;top:9px;right:9px}.stage-grid article>svg{color:#4b8665;width:16px;position:absolute;top:12px;right:12px}@media (max-width:1050px){.speak-home{grid-template-columns:minmax(390px,1fr) minmax(420px,1fr)}.week-card{display:none}.challenge-screen{grid-template-columns:1fr 260px}.stage-grid{grid-template-columns:repeat(2,1fr)}.home-growth-map{grid-column:1/-1}.week-lesson-grid{grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto}}@media (max-width:760px){.speaking-header{gap:8px;height:56px;padding:0 12px}.speaking-brand{gap:6px}.speaking-brand small{display:none}.speaking-brand strong{font-size:15px}.speaking-stats{flex-shrink:0;gap:4px}.speaking-stats>span{padding:5px 7px;font-size:11px}.speaking-stats>span:first-child{display:none}.speaking-header .auth-pill{padding:5px 9px;font-size:11px}.speak-home{flex-direction:column;min-height:auto;padding:12px 14px 96px;display:flex}.today-card{order:2;width:100%;padding:20px 16px 24px}.today-card h1{font-size:38px}.today-card .speak-primary{min-height:52px;font-size:15px}.pet-room{border-radius:24px 18px 28px;order:1;width:100%;min-height:300px}.pet-room .speaking-pet{margin-bottom:-55px;transform:scale(.62)}.pet-message{white-space:nowrap;font-size:12px;top:6%;left:50%;transform:translate(-50%)}.pet-status{padding:8px 14px 6px}.room-sun{width:58px;height:58px;top:28px;right:30px}.how-it-works-banner{grid-template-columns:1fr;padding:20px 16px}.how-it-works-copy h1{font-size:20px}.how-it-works-pet{order:-1}.how-it-works-pet .speaking-pet{width:110px;height:110px}.week-learning-path{border-radius:22px;order:3;padding:20px 16px 22px;overflow:hidden}.week-path-heading{align-items:start}.week-path-heading h2{font-size:21px}.week-path-heading>span{display:none}.week-lesson-grid{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin-right:-16px;padding-right:16px;display:flex;overflow-x:auto}.week-lesson-grid>button{scroll-snap-align:start;min-width:140px}.home-growth-map{border-radius:22px;order:0;padding:20px 16px 22px;overflow-x:auto}.map-heading{min-width:calc(100vw - 60px);position:sticky;left:0}.map-heading h2{font-size:21px}.map-heading>button{display:none}.map-route{min-width:860px}.scaffold-switch{width:100%}.scaffold-switch button{flex:1;min-height:40px;padding:0 5px}.speaking-scaffold{width:100%}.challenge-screen{background:#fffaf0;min-height:calc(100dvh - 56px);padding-bottom:75px;display:block}.challenge-nav{grid-template-columns:44px 1fr;height:68px;padding:0 12px}.challenge-nav>small{display:none}.prompt-stage{min-height:calc(100dvh - 124px);padding:24px 14px}.prompt-stage h1{font-size:36px}.model-sentence{min-width:100%}.record-button{margin-top:18px}.record-button>span{width:82px;height:82px}.challenge-companion{display:none}.feedback-screen,.feed-screen,.teacher-screen{flex-direction:column;min-height:auto;padding-bottom:80px;display:flex}.feedback-copy,.feed-panel,.teacher-copy{order:2;padding:24px 16px 36px}.feedback-copy h1,.feed-panel h1,.teacher-copy h1{font-size:36px}.score-grid{gap:5px}.score-grid>div{padding:11px 8px}.score-grid strong{font-size:24px}.feedback-pet{order:1;min-height:300px}.feedback-pet .speaking-pet{margin:-30px 0 -50px;transform:scale(.7)}.feedback-actions{flex-direction:column;align-items:stretch}.feedback-actions>button{width:100%;min-height:50px}.reward-screen{min-height:calc(100dvh - 56px);padding:24px 16px 88px}.reward-icon{width:110px;height:110px;font-size:58px}.reward-screen h1{font-size:38px}.reward-proof{flex-wrap:wrap;justify-content:center}.feed-room{order:1;min-height:340px}.feed-room .speaking-pet{margin-bottom:-48px;transform:scale(.7)}.feed-room .pet-message{top:9%;left:7%}.teacher-screen{gap:14px;padding:68px 14px 80px}.screen-back{top:22px;left:16px}.teacher-copy{padding:22px 2px 32px}.teacher-profile{order:1;min-height:460px;padding:24px}.teacher-profile .speaking-pet{transform:scale(.46)}.bonus-screen{background:#fffaf0;min-height:calc(100dvh - 56px);padding:66px 16px 88px;display:block}.bonus-copy{padding:22px 0}.bonus-copy h1{font-size:38px}.bonus-copy>p{font-size:14px}.bonus-pet{display:none}.growth-screen{min-height:calc(100dvh - 56px);padding-bottom:66px}.growth-hero{padding:60px 14px 28px}.growth-back{left:16px}.growth-current{flex-direction:column;gap:20px;display:flex}.current-pet-image{width:min(88vw,360px)}.current-stage-copy{width:100%}.current-stage-copy h1{font-size:48px}.current-stage-copy .speak-primary{width:100%;min-height:50px}.growth-collection{padding:30px 12px 56px}.collection-heading h2{font-size:25px}.stage-grid{grid-template-columns:1fr}.stage-grid article{grid-template-columns:100px 1fr}.stage-image{width:100px;height:100px}.analysis-scores{grid-template-columns:repeat(2,1fr)}.speaking-mobile-nav{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);height:62px;padding-bottom:env(safe-area-inset-bottom,0px);background:#fffdf8f7;border-top:1px solid #e4dbc8;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.speaking-mobile-nav button{color:#76827b;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:44px;font-size:9px;display:flex}.speaking-mobile-nav svg{width:18px;height:18px}.speaking-mobile-nav .active{color:#1d5a47;font-weight:900}}.feed-toast{background:var(--sun);color:var(--ink);border-radius:14px;align-items:center;gap:10px;margin-bottom:14px;padding:12px 14px;font-size:14px;font-weight:700;animation:.3s ease-out toastIn;display:flex}.feed-toast svg{flex-shrink:0;width:18px;height:18px}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.how-it-works-banner{background:linear-gradient(115deg,#fffdf8,#f3f8ef);border:1px solid #e2eadc;border-radius:26px;grid-column:1/-1;grid-template-columns:1fr 220px;align-items:center;gap:28px;padding:28px 30px;display:grid;box-shadow:0 16px 42px #2f433914}.how-it-works-copy h1{color:var(--forest);margin:10px 0 12px;font-size:26px;line-height:1.25}.how-it-works-copy>p{color:var(--leaf);max-width:620px;margin:0 0 16px;font-size:15px;line-height:1.7}.how-it-works-copy>small{color:#8a9b87;margin-top:14px;font-size:13px;display:block}.how-it-works-steps{flex-wrap:wrap;gap:10px;display:flex}.how-it-works-steps>span{color:#2e5a42;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #2f43390f}.how-it-works-steps>span svg{width:16px;height:16px;color:var(--sun)}.how-it-works-pet{flex-direction:column;align-items:center;gap:12px;display:flex}.how-it-works-pet .speaking-pet{width:160px;height:160px}.pet-bubble{background:var(--sun);color:#3d2e12;text-align:center;border-radius:16px 16px 16px 4px;padding:10px 14px;font-size:13px;font-weight:700}@media (max-width:760px){.how-it-works-banner{grid-template-columns:1fr;padding:24px 20px}.how-it-works-copy h1{font-size:22px}.how-it-works-pet{order:-1}.how-it-works-pet .speaking-pet{width:130px;height:130px}}.record-error{color:#d14d4d;text-align:center;background:#e65e5e1a;border-radius:12px;margin-bottom:12px;padding:10px 12px;font-size:13px}.record-button.processing{cursor:wait;background:linear-gradient(135deg,#f3c05d 0%,#e6a93b 100%)}.record-button:disabled{opacity:.9}.speech-analysis{background:#fff;border-radius:22px;margin-bottom:20px;padding:22px;box-shadow:0 8px 24px #7d5f4614}.analysis-header{align-items:center;gap:12px;margin-bottom:14px;display:flex}.analysis-header svg{width:24px;height:24px;color:var(--sun);flex-shrink:0}.analysis-header strong{color:var(--forest);font-size:18px;font-weight:800;display:block}.analysis-header small{color:var(--leaf);font-size:13px;display:block}.analysis-transcript{color:var(--ink);background:#f7f4ee;border-radius:12px;margin:0 0 16px;padding:10px 12px;font-size:14px;line-height:1.5}.analysis-scores{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.analysis-scores>div{background:#fffaf0;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:12px 6px;display:flex}.analysis-scores strong{color:var(--forest);font-size:22px;font-weight:800}.analysis-scores span{color:var(--leaf);font-size:12px}@media (max-width:760px){.analysis-scores{grid-template-columns:repeat(2,1fr)}}.qr-promo-screen{background:linear-gradient(#fffaf0 0%,#f5efe5 100%);justify-content:center;align-items:center;padding:48px 18px 110px;display:flex}.qr-promo-card{text-align:center;background:#fff;border-radius:28px;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:360px;padding:28px 24px;display:flex;box-shadow:0 12px 34px #7d5f461a}.qr-promo-image{-o-object-fit:cover;object-fit:cover;border-radius:18px;width:160px;height:160px}.qr-promo-text h2{color:var(--forest);margin:0 0 8px;font-family:Noto Sans SC,JiangXiZhuoKai,sans-serif;font-size:22px;font-weight:800;line-height:1.3}.qr-promo-text p{color:var(--leaf);margin:0;font-size:15px;line-height:1.5}@media (max-width:760px){.qr-promo-screen{padding:34px 16px 92px}.qr-promo-card{padding:22px 18px}.qr-promo-image{width:140px;height:140px}.qr-promo-text h2{font-size:19px}.qr-promo-text p{font-size:14px}}.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:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-gray-800::placeholder{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.before\:mr-4:before{content:var(--tw-content);margin-right:1rem}.before\:inline-block:before{content:var(--tw-content);display:inline-block}.before\:w-4:before{content:var(--tw-content);width:1rem}.before\:w-6:before{content:var(--tw-content);width:1.5rem}.before\:select-none:before{content:var(--tw-content);-webkit-user-select:none;user-select:none}.before\:text-right:before{content:var(--tw-content);text-align:right}.before\:font-mono:before{content:var(--tw-content);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.before\:text-\[13px\]:before{content:var(--tw-content);font-size:13px}.before\:text-muted-foreground\/50:before{content:var(--tw-content);color:hsl(var(--muted-foreground) / .5)}.before\:content-\[counter\(line\)\]:before{--tw-content:counter(line);content:var(--tw-content)}.before\:\[counter-increment\:line\]:before{content:var(--tw-content);counter-increment:line}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:-.5rem}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--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))}.first\:mt-4:first-child{margin-top:1rem}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-width:1px}.\*\:first\:mt-0:first-child>*{margin-top:0}.last\:mb-4:last-child{margin-bottom:1rem}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\*\:last\:mb-0:last-child>*{margin-bottom:0}.\*\:last\:after\:inline:last-child>:after{content:var(--tw-content);display:inline}.\*\:last\:after\:align-baseline:last-child>:after{content:var(--tw-content);vertical-align:baseline}.hover\:border-gray-200:hover{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-background:hover{background-color:hsl(var(--background))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/40:hover{background-color:hsl(var(--muted) / .4)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/5:hover{background-color:hsl(var(--primary) / .05)}.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\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}.focus\:border-0:focus{border-width:0}.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-0: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(0px + 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-1: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(1px + 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-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\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #0000}.focus-visible\:ring-1: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(1px + 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-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-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-sidebar-ring:focus-visible{--tw-ring-color:hsl(var(--sidebar-ring))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:hsl(var(--background))}.active\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(var(--sidebar-accent-foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100{opacity:1}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.group\/menu-item:hover .group-hover\/menu-item\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group.toaster .group-\[\.toaster\]\:border-border{border-color:hsl(var(--border))}.group.toast .group-\[\.toast\]\:bg-muted{background-color:hsl(var(--muted))}.group.toast .group-\[\.toast\]\:bg-primary{background-color:hsl(var(--primary))}.group.toaster .group-\[\.toaster\]\:bg-background{background-color:hsl(var(--background))}.group.toast .group-\[\.toast\]\:text-muted-foreground{color:hsl(var(--muted-foreground))}.group.toast .group-\[\.toast\]\:text-primary-foreground{color:hsl(var(--primary-foreground))}.group.toaster .group-\[\.toaster\]\:text-foreground{color:hsl(var(--foreground))}.group.toaster .group-\[\.toaster\]\:shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar-background))}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8{padding-right:2rem}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:.25rem;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:-.25rem;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:.25rem;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:-.25rem;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\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;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\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:.2s ease-out accordion-up}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:.2s ease-out accordion-down}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:hsl(var(--primary))}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:hsl(var(--accent))}.data-\[range-start\=true\]\:bg-primary[data-range-start=true],.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:hsl(var(--primary))}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:hsl(var(--accent) / .5)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:hsl(var(--primary-foreground))}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:hsl(var(--accent-foreground))}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true],.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:hsl(var(--primary-foreground))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=on\]\:text-accent-foreground[data-state=on],.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-],.data-\[state\=open\]\:animate-in[data-state=open],.data-\[state\=visible\]\:animate-in[data-state=visible]{--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-\[motion\^\=to-\]\:animate-out[data-motion^=to-],.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[state\=hidden\]\:animate-out[data-state=hidden]{--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-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-],.data-\[state\=closed\]\:fade-out-0[data-state=closed],.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open],.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:13rem}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:-13rem}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:13rem}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:-13rem}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:.5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--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))}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=open\]\:hover\:bg-accent:hover[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.data-\[state\=open\]\:focus\:bg-accent:focus[data-state=open]{background-color:hsl(var(--accent))}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:relative{position:relative}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\[side\=left\]\:-right-4{right:-1rem}.group[data-side=right] .group-data-\[side\=right\]\:left-0{left:0}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:z-10{z-index:10}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8{width:2rem!important;height:2rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\]{width:var(--sidebar-width-icon)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]{width:calc(var(--sidebar-width-icon) + 1rem)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]{width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0{width:0}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-side=right] .group-data-\[side\=right\]\:rotate-180,.group[data-state=open] .group-data-\[state\=open\]\: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))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg{border-radius:var(--radius)}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border{border-width:1px}.group[data-side=left] .group-data-\[side\=left\]\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\[side\=right\]\:border-l{border-left-width:1px}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:border-ring{border-color:hsl(var(--ring))}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border{border-color:hsl(var(--sidebar-border))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0{padding:0!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2{padding:.5rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-\[3px\]{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-ring\/50{--tw-ring-color:hsl(var(--ring) / .5)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover{background-color:hsl(var(--sidebar-background))}.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5{top:.375rem}.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5{top:.625rem}.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1{top:.25rem}.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.dark\:block:is(.dark *){display:block}.dark\:hidden:is(.dark *){display:none}.dark\:border-destructive:is(.dark *){border-color:hsl(var(--destructive))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.dark\:text-white\/90:is(.dark *){color:#ffffffe6}.dark\:placeholder\:text-white\/90:is(.dark *)::-moz-placeholder{color:#ffffffe6}.dark\:placeholder\:text-white\/90:is(.dark *)::placeholder{color:#ffffffe6}.dark\:hover\:border-gray-800:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.dark\:hover\:bg-white\/\[0\.03\]:hover:is(.dark *){background-color:#ffffff08}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:mt-0{margin-top:0}.sm\:flex{display:flex}.sm\:max-w-\[472px\]{max-width:472px}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:.625rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:768px){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:flex-row{flex-direction:row}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:opacity-0{opacity:0}.after\:md\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;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))}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>div\]\:h-full>div{height:100%}.\[\&\>div\]\:overflow-hidden>div{overflow:hidden}.\[\&\>p\]\:inline>p{display:inline}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\>span\]\:text-xs>span{font-size:.75rem;line-height:1rem}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;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))}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:size-3\.5>svg{width:.875rem;height:.875rem}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:h-3\.5>svg{height:.875rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:w-3\.5>svg{width:.875rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate:90deg;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\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--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))}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:hsl(var(--border) / .5)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline-offset:2px;outline:2px solid #0000}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc]{stroke:hsl(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc]{stroke:hsl(var(--border))}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline-offset:2px;outline:2px solid #0000}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:.75rem;height:.75rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:h-auto svg{height:auto}.\[\&_svg\]\:w-auto svg{width:auto}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:hsl(var(--background) / .2)}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:hsl(var(--background))}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:hsl(var(--background) / .1)}li .\[li_\&\]\:pl-6{padding-left:1.5rem}
