*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left: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}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-3{left:.75rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-3{top:.75rem}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.my-0{margin-top:0;margin-bottom:0}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.\!mt-0{margin-top:0!important}.-ml-4{margin-left:-1rem}.-ml-\[1px\]{margin-left:-1px}.-mt-2{margin-top:-.5rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-24{margin-bottom:6rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.contents{display:contents}.\!hidden{display:none!important}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.size-10{width:2.5rem;height:2.5rem}.size-2{width:.5rem;height:.5rem}.size-2\.5{width:.625rem;height:.625rem}.size-4{width:1rem;height:1rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-full{width:100%;height:100%}.h-10{height:2.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[1\.15rem\]{height:1.15rem}.h-\[80px\]{height:80px}.h-auto{height:auto}.h-px{height:1px}.h-screen{height:100vh}.max-h-0{max-height:0px}.max-h-96{max-height:24rem}.max-h-\[300px\]{max-height:300px}.min-h-0{min-height:0px}.min-h-\[200px\]{min-height:200px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-0{width:0px}.w-1{width:.25rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-72{width:18rem}.w-8{width:2rem}.w-\[100px\]{width:100px}.w-auto{width:auto}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-5{min-width:1.25rem}.min-w-\[8rem\]{min-width:8rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-\[500px\]{max-width:500px}.max-w-\[80\%\]{max-width:80%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-px{--tw-translate-x: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-px{--tw-translate-x: 1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.scroll-py-1{scroll-padding-top:.25rem;scroll-padding-bottom:.25rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-stretch{align-items:stretch}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-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}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[2px\]{border-radius:2px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-b-8{border-bottom-width:8px}.border-b-\[3px\]{border-bottom-width:3px}.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-t-4{border-top-width:4px}.border-t-\[3px\]{border-top-width:3px}.border-dashed{border-style:dashed}.border-\[var\(--primary\)\]{border-color:var(--primary)}.border-aduffy-teal\/20{border-color:#1db5a333}.border-aduffy-yellow\/20{border-color:#ffb84c33}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity))}.border-current{border-color:currentColor}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity))}.border-green-400{--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity))}.border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity))}.border-yellow-500{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity))}.border-t-blue-600{--tw-border-opacity: 1;border-top-color:rgb(37 99 235 / var(--tw-border-opacity))}.border-t-transparent{border-top-color:transparent}.bg-\[\#b4b4b4\]{--tw-bg-opacity: 1;background-color:rgb(180 180 180 / var(--tw-bg-opacity))}.bg-\[\#c8e7ce\]{--tw-bg-opacity: 1;background-color:rgb(200 231 206 / var(--tw-bg-opacity))}.bg-\[\#fee8c5\]{--tw-bg-opacity: 1;background-color:rgb(254 232 197 / var(--tw-bg-opacity))}.bg-\[var\(--primary\)\]{background-color:var(--primary)}.bg-aduffy-teal{--tw-bg-opacity: 1;background-color:rgb(29 181 163 / var(--tw-bg-opacity))}.bg-aduffy-teal\/10{background-color:#1db5a31a}.bg-aduffy-yellow{--tw-bg-opacity: 1;background-color:rgb(255 184 76 / var(--tw-bg-opacity))}.bg-aduffy-yellow\/10{background-color:#ffb84c1a}.bg-aduffy-yellow\/30{background-color:#ffb84c4d}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))}.bg-black\/50{background-color:#00000080}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))}.bg-pink-300{--tw-bg-opacity: 1;background-color:rgb(249 168 212 / var(--tw-bg-opacity))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-aduffy-yellow\/5{--tw-gradient-from: rgb(255 184 76 / .05) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 184 76 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-2{padding:.5rem!important}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-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-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pl-10{padding-left:2.5rem}.pl-4{padding-left:1rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[1rem\]{font-size:1rem}.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-light{font-weight:300}.capitalize{text-transform:capitalize}.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-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-widest{letter-spacing:.1em}.\!text-\[\#28a745\]{--tw-text-opacity: 1 !important;color:rgb(40 167 69 / var(--tw-text-opacity))!important}.text-\[\#17A2B8\]{--tw-text-opacity: 1;color:rgb(23 162 184 / var(--tw-text-opacity))}.text-\[\#28A745\],.text-\[\#28a745\]{--tw-text-opacity: 1;color:rgb(40 167 69 / var(--tw-text-opacity))}.text-\[\#FFC400\]{--tw-text-opacity: 1;color:rgb(255 196 0 / var(--tw-text-opacity))}.text-\[\#f8a725\]{--tw-text-opacity: 1;color:rgb(248 167 37 / var(--tw-text-opacity))}.text-\[--primary\]{color:var(--primary)}.text-\[var\(--font-size-sm\)\]{color:var(--font-size-sm)}.text-\[var\(--primary\)\]{color:var(--primary)}.text-aduffy-navy{--tw-text-opacity: 1;color:rgb(45 55 72 / var(--tw-text-opacity))}.text-aduffy-orange{--tw-text-opacity: 1;color:rgb(255 159 62 / var(--tw-text-opacity))}.text-aduffy-teal{--tw-text-opacity: 1;color:rgb(29 181 163 / var(--tw-text-opacity))}.text-aduffy-yellow{--tw-text-opacity: 1;color:rgb(255 184 76 / var(--tw-text-opacity))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity))}.text-green-900{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity))}.text-red-900{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-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 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.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)}.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;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-4)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.badge-primary{background-color:var(--primary-light);color:var(--primary)}.badge-success{background-color:#e6f7ed;color:var(--success)}.card{background:var(--background);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-6);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.progress-container{width:100%;height:8px;background-color:var(--background-alt);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background-color:var(--primary);border-radius:var(--radius-full);transition:width var(--transition-base)}.button{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-md);font-weight:500;transition:all var(--transition-base);cursor:pointer;border:none}.button-primary{background-color:var(--primary);color:#fff}.button-primary:hover{opacity:.9}.button-secondary{background-color:var(--secondary);color:#fff}.stats-card{display:flex;flex-direction:column;gap:var(--spacing-2)}.stats-value{font-size:var(--font-size-2xl);font-weight:600;color:var(--text-primary)}.stats-label{font-size:var(--font-size-sm);color:var(--text-secondary)}body{font-family:var(--font-family);color:var(--text-primary);background-color:var(--bg-secondary);line-height:1.5}.app-container{display:flex;min-height:100vh;background:var(--bg-secondary)}.main-content{flex:1;margin-left:280px;padding:var(--space-8) var(--space-6);background:var(--bg-secondary);min-height:100vh;max-width:calc(100vw - 280px)}.card{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6);transition:var(--transition-all)}.card-hover:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.course-card{border:1px solid var(--bg-muted);margin-bottom:var(--space-4)}.course-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.course-title{font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:var(--space-1)}.course-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary)}.course-progress{margin:var(--space-4) 0}.progress-bar{width:100%;height:8px;background:var(--bg-muted);border-radius:var(--radius-full);overflow:hidden}.progress-fill{height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width var(--transition-all)}.instructor-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-top:var(--space-4)}.instructor-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);font-weight:600}.instructor-info h4{font-size:var(--font-size-base);color:var(--text-primary);margin-bottom:var(--space-1)}.instructor-info p{font-size:var(--font-size-sm);color:var(--text-secondary)}.schedule-table{width:100%;border-spacing:0;margin-top:var(--space-4)}.schedule-row{transition:var(--transition-all)}.schedule-row:hover{background:var(--bg-secondary)}.schedule-cell{padding:var(--space-4);border-bottom:1px solid var(--bg-muted)}.schedule-time{font-size:var(--font-size-sm);color:var(--text-secondary);display:flex;align-items:center;gap:var(--space-2)}.welcome-section{text-align:center;margin-bottom:var(--space-8)}.welcome-subtitle{font-size:var(--font-size-lg);color:var(--text-secondary);max-width:600px;margin:0 auto}.stat-card{text-align:center;padding:var(--space-2)}.stat-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-2)}.stat-label{font-size:11px;color:var(--text-primary);font-weight:600;margin-bottom:var(--space-3);white-space:nowrap;display:flex;align-items:center;flex-wrap:nowrap;line-height:1.3;justify-content:space-between}@media (max-width: 768px){.schedule-table{display:block;overflow-x:auto}.course-header{flex-direction:column;align-items:flex-start}}.nav-tabs{display:flex;gap:var(--space-4);margin-bottom:var(--space-6);border-bottom:1px solid var(--bg-muted);padding-bottom:var(--space-2)}.nav-tab{padding:var(--space-2) var(--space-4);font-weight:500;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-all);background:transparent;border:none}.nav-tab.active{background:var(--secondary);color:#fff}.nav-tab:hover:not(.active){background:var(--bg-muted)}.activities-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.activities-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--text-primary)}.activity-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.activity-icon{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl)}.activity-info h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.activity-info p{color:var(--text-secondary);font-size:var(--font-size-sm)}.activity-status{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4)}.progress-label{display:flex;justify-content:space-between;font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-2)}.continue-button{width:100%;padding:var(--space-4);background:var(--secondary);color:#fff;border:none;border-radius:var(--radius-xl);font-weight:500;cursor:pointer;transition:var(--transition-all);margin-top:var(--space-4)}.top-nav{display:none}@media (min-width: 768px){.top-nav{display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-2) var(--space-4);background:#fff;border-bottom:1px solid var(--bg-muted)}}.nav-desktop{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-6)}.nav-left{display:flex;align-items:center;justify-content:space-between;width:100%}.nav-brand{display:flex;align-items:center;text-decoration:none;justify-content:space-between;width:100%}.nav-brand-text{display:flex;flex-direction:column}.nav-brand-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.nav-brand-subtitle{font-size:var(--font-size-xs);color:var(--text-secondary)}@media (max-width:700px){.nav-brand-title,.nav-brand-subtitle{display:none}}.nav-right{display:flex}.nav-icon-btn{background:none;border:none;cursor:pointer;font-size:var(--font-size-xl);color:var(--text-secondary)}@media (max-width:700px){.nav-icon-btn{display:none}}.nav-level-badge{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--primary-light);border-radius:var(--radius-md);color:var(--primary);font-size:var(--font-size-sm);font-weight:500}.user-menu-container{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:var(--space-3);background:none;border:1px solid var(--bg-muted);border-radius:var(--radius-full);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);cursor:pointer}.user-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}.user-info{display:flex;flex-direction:column;align-items:flex-start}.user-name{font-weight:600;color:var(--text-primary);font-size:var(--font-size-sm)}.user-role{color:var(--text-secondary);font-size:var(--font-size-xs)}.user-menu{position:absolute;top:calc(100% + var(--space-2));right:0;width:280px;background:#fff;border-radius:var(--radius-lg);border:1px solid var(--bg-muted);box-shadow:var(--shadow-lg);padding:var(--space-2);display:flex;flex-direction:column;z-index:80}.user-menu-header{padding:var(--space-3) var(--space-4)}.user-menu-header .user-name{font-size:var(--font-size-base)}.user-details{font-size:var(--font-size-sm);color:var(--text-secondary)}.user-menu-divider{height:1px;background:var(--bg-muted);margin:var(--space-2) 0}.user-menu-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);transition:background-color .2s}.user-menu-item:hover{background:var(--bg-secondary)}.app-container-column{min-height:100vh;background:var(--bg-secondary)}.welcome-section .card{padding:var(--space-6);text-align:center;border:1px solid #F3EAD3;background:#fffcf5;border-radius:var(--radius-xl);position:relative}.welcome-section .welcome-avatar{width:64px;height:64px;border-radius:var(--radius-full);background:#fbe6b8;color:#d59a2c;display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto var(--space-4);position:absolute;top:-32px;left:50%;transform:translate(-50%);border:4px solid white}.welcome-title{font-size:var(--font-size-2xl)}.sidebar{width:280px;height:100vh;position:fixed;left:0;top:0;background:var(--bg-primary);border-right:1px solid var(--bg-muted);padding:var(--space-6) var(--space-4);display:flex;flex-direction:column;gap:var(--space-6);z-index:50;overflow-y:auto}.sidebar-header{padding:0 var(--space-2)}.sidebar-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1);line-height:1.2}.sidebar-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-1)}.sidebar-nav{display:flex;flex-direction:column;gap:var(--space-2)}.sidebar-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);transition:var(--transition-all);cursor:pointer;font-size:var(--font-size-sm)}.sidebar-item:hover{background:var(--bg-secondary)}.sidebar-item.active{background:var(--bg-secondary);color:var(--primary)}.sidebar-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg)}.sidebar-item-text{font-weight:500}.sidebar-divider{height:1px;background:var(--bg-muted);margin:var(--space-2) 0}.sidebar-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--bg-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);margin:var(--space-1) var(--space-3);width:-moz-fit-content;width:fit-content}.container{max-width:960px;margin:0 auto}.welcome-section{margin-bottom:var(--space-6)}.welcome-section .card{padding:var(--space-8);text-align:center;border:1px solid var(--primary-light);background:linear-gradient(180deg,rgba(255,255,255,0) 0%,var(--primary-light) 100%)}.welcome-title{font-size:var(--font-size-3xl);font-weight:600;margin-bottom:var(--space-3);color:var(--text-primary)}.welcome-subtitle{font-size:var(--font-size-lg);color:var(--text-secondary);max-width:600px;margin:0 auto var(--space-4)}.welcome-section .badge{margin:var(--space-1)}.course-card{margin-bottom:var(--space-6);padding:var(--space-6)}.course-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.course-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary)}.course-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-1)}.course-progress{margin-bottom:var(--space-6)}.instructor-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg)}.instructor-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-lg)}.instructor-info h4{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.instructor-info p{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-1)}.instructor-info .badge{font-size:var(--font-size-xs)}.stat-value{font-size:var(--font-size-4xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.schedule-table{width:100%;border-collapse:collapse}.schedule-table tr{border-bottom:1px solid var(--bg-muted)}.schedule-table tr:last-child{border-bottom:none}.schedule-table td{padding:var(--space-4) 0}.schedule-day{font-weight:600;color:var(--text-primary)}.schedule-date,.schedule-time{font-size:var(--font-size-sm);color:var(--text-secondary)}.schedule-topic{font-weight:500;color:var(--text-primary)}.schedule-type{font-size:var(--font-size-sm)}.activities-section{margin-top:var(--space-8)}.tabs{display:flex;gap:var(--space-2);border-bottom:1px solid var(--bg-muted);margin-bottom:var(--space-6)}.tab-button{padding:var(--space-3) var(--space-4);cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-weight:500;transition:var(--transition-all)}.tab-button.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.activity-card{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.activity-header{display:flex;align-items:flex-start;gap:var(--space-4)}.activity-icon{font-size:var(--font-size-2xl);background:var(--bg-secondary);width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.activity-info h3{font-weight:600;color:var(--text-primary);font-size:var(--font-size-lg)}.activity-info p{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--space-1)}.activity-status{margin-top:auto}.continue-button{width:100%;margin-top:var(--space-4)}.storytelling-container{max-width:1000px;margin:0 auto;padding:100px 0}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-6)}.breadcrumb-separator{color:var(--text-secondary);margin:0 var(--space-2)}.progress-section{margin-bottom:var(--space-8)}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.progress-text{color:var(--text-secondary);font-size:var(--font-size-sm)}.progress-step{background:var(--warning-light);color:var(--warning);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-sm)}.progress-bar-container{height:4px;background:var(--warning-light);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:var(--warning);width:0%;transition:width .3s ease}.learning-nav{display:flex;gap:var(--space-8);margin:var(--space-8) 0;border-bottom:1px solid var(--bg-muted)}.learning-nav-item{padding:var(--space-3) 0;color:var(--text-secondary);border-bottom:2px solid transparent;cursor:pointer;font-weight:500;position:relative;font-size:var(--font-size-sm)}.learning-nav-item.active{color:var(--warning);border-bottom-color:var(--warning)}.learning-nav-item:first-child{display:flex;align-items:center;gap:var(--space-2)}.learning-nav-item:first-child:before{content:"🟡";font-size:var(--font-size-base)}.vocabulary-header{text-align:center;margin-bottom:var(--space-8);padding:0 var(--space-8)}.vocabulary-header-icon{width:64px;height:64px;background:var(--warning-light);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);font-size:var(--font-size-2xl);color:var(--warning)}.vocabulary-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-4)}.vocabulary-subtitle{color:var(--text-secondary);font-size:var(--font-size-base);max-width:600px;margin:0 auto var(--space-4);line-height:1.6}.vocabulary-count{display:flex;align-items:center;gap:var(--space-2);justify-content:center;color:var(--text-secondary);font-size:var(--font-size-sm)}.learning-focus{background:#fff;border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-8);text-align:center;box-shadow:var(--shadow-sm)}.learning-focus-title{display:flex;align-items:center;gap:var(--space-2);justify-content:center;color:var(--primary);font-weight:500;margin-bottom:var(--space-2);font-size:var(--font-size-sm)}.learning-focus-description{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.field-select{width:100%;max-width:400px;margin:0 auto;padding:0;border:none;background:none;position:relative}.field-select select{width:100%;padding:12px 40px 12px 16px;border-radius:12px;border:1px solid #e5e7eb;background:#f8fafc;color:#222b3a;font-size:1rem;font-weight:500;box-shadow:0 2px 8px #0000000a;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;transition:border .2s}.field-select select:focus{border:1.5px solid #00bcd4;background:#fff}.field-select:after{content:"";position:absolute;right:18px;top:50%;width:0;height:0;pointer-events:none;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #b0b8c1;transform:translateY(-50%)}.audio-learning{background:var(--warning-light);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-8)}.audio-learning-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.audio-icon{color:var(--warning);font-size:var(--font-size-xl)}.audio-description{color:var(--text-secondary);font-size:var(--font-size-sm)}.play-all-button{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--warning);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:none;cursor:pointer;font-weight:500;font-size:var(--font-size-sm)}.continue-button{display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--warning);color:#fff;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);border:none;cursor:pointer;font-weight:500;font-size:var(--font-size-sm);margin:0 auto;transition:background-color .2s}.continue-button:hover{background:var(--warning-dark)}.custom-select{position:relative;width:100%;max-width:400px}.custom-select-trigger{width:100%;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;border:1px solid #e5e7eb;background:#f8fafc;color:#222b3a;font-size:1rem;font-weight:500;box-shadow:0 2px 8px #0000000a;cursor:pointer;transition:border .2s;outline:none;position:relative}.custom-select-trigger:focus{border:1.5px solid #00bcd4;background:#fff}.custom-select-icon{font-size:1.2em;display:flex;align-items:center}.custom-select-arrow{margin-left:auto;color:#b0b8c1;font-size:1em}.custom-select-dropdown{position:absolute;top:110%;left:0;width:100%;background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001a;z-index:10;padding:6px 0}.custom-select-option{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:1rem;color:#222b3a;transition:background .15s}.custom-select-option.selected,.custom-select-option:hover{background:#f8fafc}.custom-select-check{margin-left:auto;color:#00bcd4;font-size:1em}.orange-action-btn{background:var(--primary);color:#000;border-radius:.75rem;padding:.5rem 1.5rem;display:flex;align-items:center;gap:.5rem;border:none;box-shadow:none;font-weight:500;font-size:1rem;cursor:pointer;transition:background .2s}.orange-action-btn:hover{background:var(--accent)}.soft-yellow-btn{background:var(--primary);color:#888;border-radius:1.2em;padding:.7em 1.5em;font-size:1.1em;font-weight:500;border:none;box-shadow:none;display:flex;align-items:center;justify-content:center;gap:.5em;transition:background .2s,color .2s;cursor:pointer}.soft-yellow-btn:disabled{opacity:.6;cursor:not-allowed}.soft-yellow-arrow{margin-right:8px;display:inline-block;vertical-align:middle;font-size:1.1em}.teal-outline-btn{background:#fff;color:#00b3c6;border:1.5px solid #00b3c6;border-radius:1.2em;padding:.6em 1.4em;font-size:1.08em;font-weight:500;box-shadow:0 1px 4px #00000008;display:flex;align-items:center;gap:.5em;transition:background .2s,color .2s,border .2s;cursor:pointer}.teal-outline-btn:hover{background:#e6fafd;border-color:#0097a7;color:#0097a7}.teal-outline-icon{margin-right:8px;display:inline-block;vertical-align:middle}.soft-yellow-outline-btn{background:#fff;color:#222;border:1.5px solid #fdd995;border-radius:1.2em;padding:.6em 1.4em;font-size:1.08em;font-weight:500;box-shadow:none;display:flex;align-items:center;gap:.5em;transition:background .2s,color .2s,border .2s;cursor:pointer}.soft-yellow-outline-btn:disabled{opacity:.6;cursor:not-allowed}.soft-yellow-outline-arrow{margin-right:8px;display:inline-block;vertical-align:middle}.communication-challenges-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1rem;width:-moz-fit-content;width:fit-content;white-space:normal;margin-bottom:1rem}.communication-challenge-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;line-height:1.3;color:#1a1a1a;cursor:pointer;position:relative}.communication-challenge-item input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:18px;height:18px;border:2px solid #000;border-radius:2px;background:#fff;cursor:pointer;display:grid;place-content:center;flex-shrink:0}.communication-challenge-item input[type=checkbox]:checked{background-color:var(--primary);border:2px solid var(--primary);background-image:url(/icon.svg);background-repeat:no-repeat;background-position:center}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.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)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.last\:border-b-0:last-child{border-bottom-width:0px}.focus-within\:relative:focus-within{position:relative}.focus-within\:z-20:focus-within{z-index:20}.hover\:bg-aduffy-yellow\/10:hover{background-color:#ffb84c1a}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.hover\:bg-yellow-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity))}.hover\:bg-yellow-600:hover{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity))}.hover\:bg-opacity-90:hover{--tw-bg-opacity: .9}.hover\:text-aduffy-navy:hover{--tw-text-opacity: 1;color:rgb(45 55 72 / var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:ring-4:hover{--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(4px + 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\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[var\(--accent\)\]:focus{--tw-ring-color: var(--accent)}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.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-4: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(4px + 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-\[3px\]: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(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)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.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\/menu-item:hover .group-hover\/menu-item\:opacity-100{opacity:1}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-50{opacity:.5}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[orientation\=horizontal\]\:h-4[data-orientation=horizontal]{height:1rem}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal],.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:11rem}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:.375rem}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical],.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x: calc(100% - 2px) ;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.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)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical],.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.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\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-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)) skew(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)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-disabled=true] .group-data-\[disabled\=true\]\:pointer-events-none{pointer-events:none}.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[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group\/drawer-content[data-vaul-drawer-direction=bottom] .group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block{display:block}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.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)) skew(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-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group[data-disabled=true] .group-data-\[disabled\=true\]\:opacity-50{opacity:.5}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.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}@media (min-width: 640px){.sm\:block{display:block}.sm\:flex{display:flex}.sm\:h-16{height:4rem}.sm\:h-8{height:2rem}.sm\:w-16{width:4rem}.sm\:w-8{width:2rem}.sm\:max-w-lg{max-width:32rem}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2{gap:.5rem}.sm\:gap-2\.5{gap:.625rem}.sm\:pl-2{padding-left:.5rem}.sm\:pl-2\.5{padding-left:.625rem}.sm\:pr-2{padding-right:.5rem}.sm\:pr-2\.5{padding-right:.625rem}.sm\:text-left{text-align:left}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}}@media (min-width: 768px){.md\:block{display:block}.md\:hidden{display:none}.md\:h-10{height:2.5rem}.md\:h-20{height:5rem}.md\:w-10{width:2.5rem}.md\:w-20{width:5rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:opacity-0{opacity:0}.md\:after\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset][data-state=collapsed]~.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2{margin-left:.5rem}.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 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}.\[\&\:has\(\>\.day-range-end\)\]\:rounded-r-md:has(>.day-range-end){border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.\[\&\:has\(\>\.day-range-start\)\]\:rounded-l-md:has(>.day-range-start){border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.\[\&\:has\(\[aria-selected\]\)\]\:rounded-md:has([aria-selected]){border-radius:.375rem}.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:has([aria-selected]):first-child{border-top-left-radius:.375rem;border-bottom-left-radius:.375rem}.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:has([aria-selected]):last-child{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end){border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\[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)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>span\:last-child\]\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\[\&\>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\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&\[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)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"],.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\[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\]\: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}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_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=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}:root{--primary: #ffc813;--primary-light: #E6F7F9;--secondary: #FF9F3E;--accent: #FFB84C;--aduffy-teal: #1db5a3;--aduffy-yellow: #ffb84c;--aduffy-orange: #ff9f3e;--aduffy-navy: #2d3748;--text-primary: #1A1A1A;--text-secondary: #718096;--text-muted: #A0AEC0;--bg-primary: #FFFFFF;--bg-secondary: #F7FAFC;--bg-muted: #EDF2F7;--muted-rgb: 237, 242, 247;--success: #48BB78;--warning: #F6AD55;--error: #F56565;--info: #4299E1;--font-family: Sarabun, system-ui, -apple-system, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--transition-all: all .2s ease-in-out;--header-height: 4rem;--sidebar-width: 16rem;--container-max-width: 1280px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-family);color:var(--text-primary);background-color:var(--background-alt);line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root{isolation:isolate}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.ml-4{margin-left:var(--space-4)}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.mr-3{margin-right:var(--space-3)}.mr-4{margin-right:var(--space-4)}.pt-1{padding-top:var(--space-1)}.pt-2{padding-top:var(--space-2)}.pt-3{padding-top:var(--space-3)}.pt-4{padding-top:var(--space-4)}.pt-6{padding-top:var(--space-6)}.pt-8{padding-top:var(--space-8)}.pb-1{padding-bottom:var(--space-1)}.pb-2{padding-bottom:var(--space-2)}.pb-3{padding-bottom:var(--space-3)}.pb-4{padding-bottom:var(--space-4)}.pb-6{padding-bottom:var(--space-6)}.pb-8{padding-bottom:var(--space-8)}.pl-1{padding-left:var(--space-1)}.pl-2{padding-left:var(--space-2)}.pl-3{padding-left:var(--space-3)}.pl-4{padding-left:var(--space-4)}.pr-1{padding-right:var(--space-1)}.pr-2{padding-right:var(--space-2)}.pr-3{padding-right:var(--space-3)}.pr-4{padding-right:var(--space-4)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-extrabold{font-weight:800}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.w-full{width:100%}.h-full{height:100%}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.mx-auto{margin-left:auto;margin-right:auto}ml-auto{margin-left:auto}.my-auto{margin-top:auto;margin-bottom:auto}.rounded{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-muted{background-color:var(--bg-muted)}.bg-white{background-color:#fff}.storytelling-welcome-title{text-align:center;font-size:var(--font-size-2xl);font-weight:600;color:var(--text-primary)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.words-vocabulary-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.words-vocabulary-word-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--primary);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600}.words-vocabulary-word-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.words-vocabulary-word-type{font-size:var(--font-size-sm);color:var(--text-secondary);font-style:italic}.words-vocabulary-difficulty-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.words-vocabulary-difficulty-beginner{background:#e6f7ed;color:var(--success)}.words-vocabulary-difficulty-intermediate{background:#fff3e0;color:#f57c00}.words-vocabulary-difficulty-advanced{background:#ffebee;color:var(--error)}.words-vocabulary-audio-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-all);margin-left:var(--space-2)}.words-vocabulary-audio-button:hover{background:var(--primary-dark);transform:scale(1.05)}.words-vocabulary-audio-button:disabled{opacity:.5;cursor:not-allowed}.words-vocabulary-audio-button.playing{animation:pulse 1.5s infinite}.words-vocabulary-content{display:flex;flex-direction:column;gap:var(--space-4)}.words-vocabulary-section{display:flex;flex-direction:column;gap:var(--space-2)}.words-vocabulary-section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.words-vocabulary-definition{font-size:var(--font-size-base);color:var(--text-primary);line-height:1.6}.words-vocabulary-example{font-size:var(--font-size-sm);color:var(--text-secondary);font-style:italic;padding:var(--space-2);background:var(--bg-muted);border-radius:var(--radius-md);border-left:3px solid var(--primary)}.vocab-checklist-card{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6);border:1px solid var(--bg-muted)}.vocab-checklist-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.vocab-checklist-desc{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-4)}.vocab-checklist-list{display:flex;flex-direction:column;gap:var(--space-2)}.vocab-checklist-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-full);border:1px solid var(--bg-muted);transition:var(--transition-all)}.vocab-checklist-word{font-weight:600;color:var(--text-primary)}.vocab-checklist-pos{font-size:var(--font-size-sm);color:var(--text-secondary);font-style:italic;margin-left:var(--space-2)}.vocab-checklist-indicator{width:20px;height:20px;border-radius:var(--radius-full);border:2px solid var(--bg-muted);background:transparent;transition:var(--transition-all)}.vocab-checklist-indicator.checked{background:var(--primary);border-color:var(--primary)}.story-main-grid{display:grid;grid-template-columns:1fr 320px;gap:var(--space-6);align-items:start}@media (max-width: 700px){.story-main-grid{grid-template-columns:1fr;gap:0px}}.back-to-dashboard-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:transparent;color:var(--text-secondary);border:1px solid var(--bg-muted);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;transition:var(--transition-all);cursor:pointer}.back-to-dashboard-btn:hover,.back-to-dashboard-btn:focus{background:var(--bg-muted);color:var(--text-primary);border-color:var(--primary)}.back-to-dashboard-btn .arrow{transition:transform var(--transition-all)}.back-to-dashboard-btn:hover .arrow{transform:translate(-2px)}.step-badge{background:#ffe9c7;color:#222b3a;border-radius:999px;padding:.3em 1.2em;font-size:1rem;display:inline-block;border:none;box-shadow:none}.progress-header-label{align-items:center;justify-content:space-between;margin-bottom:var(--space-2);font-size:var(--font-size-sm);color:var(--text-secondary)}.inline-flex{display:inline-flex}.progress-bar-container{width:100%;height:8px;background:var(--bg-muted);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-4)}.progress-bar-fill{height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width var(--transition-all)}.progress-percentage{font-size:var(--font-size-sm);font-weight:600;color:var(--primary);text-align:right}.story-card{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6);border:1px solid var(--bg-muted)}.story-card-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2);text-align:center}.story-card-scenario{font-size:var(--font-size-base);color:var(--text-secondary);margin-bottom:var(--space-4);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg);border-left:4px solid var(--primary)}.story-card-instructions{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-4);padding:var(--space-3);background:var(--bg-muted);border-radius:var(--radius-md)}.story-card-writing{display:flex;flex-direction:column;gap:var(--space-4)}.story-card-writing-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.story-card-writing-desc{font-size:var(--font-size-sm);color:var(--text-secondary)}.story-textarea{width:100%;min-height:200px;padding:var(--space-4);border:1px solid var(--bg-muted);border-radius:var(--radius-lg);font-size:var(--font-size-base);line-height:1.6;resize:vertical;transition:var(--transition-all)}.story-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.ai-story-card{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6);border:1px solid var(--bg-muted)}.ai-story-card-title{padding:1.1rem 1.5rem .7rem;display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}@media (max-width:700px){.ai-story-card-title{padding-left:0;padding-right:0}}.ai-story-card-desc{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-4)}.ai-story-card-inner{padding:1.2rem 1.5rem;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--bg-muted)}.ai-story-card-instructions{padding-left:1.5rem;padding-right:1.5rem;font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-3);padding:var(--space-3);background:var(--bg-muted);border-radius:var(--radius-md)}.ai-guided-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--primary-light);color:var(--primary);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600}.ai-guided-badge .ai-guided-icon{width:12px;height:12px}.ai-story-new-topic-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:var(--transition-all)}@media (max-width:700px){ai-story-new-topic-btn{padding:.25em 1em;font-size:.8rem}}.ai-story-new-topic-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.ai-story-new-topic-btn:disabled{opacity:.5;cursor:not-allowed}.drop-shadow-lg{filter:drop-shadow(0 4px 24px rgba(0,0,0,.12))}.hero-heading{letter-spacing:.01em;background:linear-gradient(90deg,var(--aduffy-yellow),var(--aduffy-teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent}.hero-title{font-size:3.5rem;font-weight:700;color:var(--aduffy-navy);text-align:center;filter:drop-shadow(0 4px 24px rgba(0,0,0,.1));margin-top:2.5rem;line-height:1.1}@media (min-width: 768px){.hero-title{font-size:2.231rem}}@media (max-width: 769px){.hero-title{display:none}}.hero-title-mobile{display:flex;justify-content:center;align-items:center;margin-bottom:6px}@media (min-width: 700px){.hero-title-mobile{display:none}}.hero-subtitle{font-size:1.5rem;font-weight:500;color:#6c757d;text-align:center;margin-bottom:2rem;line-height:1.3}@media (min-width: 768px){.hero-subtitle{font-size:1rem}}@media (max-width: 769px){.hero-subtitle{display:none}}.ai-analysis-card{background:linear-gradient(135deg,#fffbe6,#fff);border-radius:18px;box-shadow:0 4px 24px #ffc1071a;padding:2rem 1.5rem;margin-top:1.5rem;border:none}.ai-analysis-header{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:500;color:#b8860b;margin-bottom:1.2rem}.ai-analysis-trophy{width:1.5em;height:1.5em;color:#ffc107}.ai-analysis-divider{border:none;border-top:1px solid #f0e6d2;margin:1.5rem 0}.ai-analysis-score{font-size:2rem;font-weight:700;margin-bottom:.2rem}.ai-analysis-score-creativity{color:#1db5a3}.ai-analysis-score-grammar{color:#2ecc40}.ai-analysis-score-coherence{color:#ff9800}.ai-analysis-score-topic{color:#00bcd4}.ai-analysis-label{font-size:1rem;color:#8c98a4;font-weight:400;margin-top:.1rem}.ai-analysis-scores-row{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:2.5rem;margin-bottom:1.5rem}@media (max-width: 700px){.ai-analysis-scores-row{gap:0px}}.aduffy-tabs{width:100%}.aduffy-tab-active{background-color:var(--aduffy-teal);color:#fff;font-weight:500}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.bg-muted\/50{background-color:rgba(var(--muted-rgb),.5)}.h-12{height:3rem}.space-y-6>*+*{margin-top:var(--space-6)}.space-y-8>*+*{margin-top:var(--space-8)}.mt-8{margin-top:var(--space-8)}.data-\[state\=active\]\:bg-aduffy-teal[data-state=active]{background-color:var(--aduffy-teal)}.data-\[state\=active\]\:text-white[data-state=active]{color:#fff}.tabs-list-pill{background-color:rgba(var(--muted-rgb),.5);border-radius:9999px;padding:.25rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));height:3rem}.tabs-trigger{background:transparent;color:var(--aduffy-navy);border-radius:9999px;font-weight:500;border:none;outline:none;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s;height:2.5rem}.tabs-trigger:hover:not(.aduffy-tab-active){background:#00000008;cursor:pointer}.aduffy-tab-active{background-color:var(--aduffy-teal)!important;color:#fff!important;font-weight:600;border-radius:9999px;box-shadow:none}.quiz-option{display:flex;align-items:center;background:#fff;border:1.5px solid #f0f0f0;border-radius:16px;margin-bottom:1rem;padding:.9rem 1.5rem;font-size:1rem;font-weight:500;color:#22223b;cursor:pointer;transition:background .2s,border-color .2s;box-shadow:0 1px 4px #00000008}@media (max-width:700px){.quiz-option{font-size:.9rem;padding:.4rem .6rem;line-height:1.1em}.quiz-option .option-letter{margin-right:1rem}}.quiz-option:last-child{margin-bottom:0}.quiz-option.selected{background:#fff7e6;border-color:#ffe0b2}.quiz-option .option-letter{width:2.2rem;height:2.2rem;background:#f7f7fa;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;color:#22223b;margin-right:1.25rem;border:1.5px solid #ececec;flex-shrink:0;transition:background .2s,color .2s}.quiz-option.selected .option-letter{background:#ffe0b2;color:#b26a00;border-color:#ffd699}.quiz-feedback{background:#eafaf1;border-radius:18px;padding:1.5rem 1.5rem 1.25rem;margin-top:1.5rem;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:1rem}.quiz-feedback.correct{background:#eafaf1;color:#217a4a}.quiz-feedback-header{display:flex;align-items:center;font-weight:700;font-size:1.1rem;gap:.5rem;color:#22b573}.quiz-feedback-explanation{color:#444;font-size:1rem;font-weight:400}.quiz-feedback-btn{background:#ffb84c;color:#22223b;border:none;border-radius:9999px;padding:.7rem 1.5rem;font-weight:600;font-size:1rem;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;transition:background .2s;margin-top:.5rem}.quiz-feedback-btn:hover{background:#ff9f3e}.aduffy-card.progress-summary-card{padding:1.2rem 2rem 1.5rem 1.5rem;margin-bottom:2rem}.example-story-card{background:#fff;border-radius:18px;box-shadow:0 1px 8px #0000000a;border:1.5px solid #f0f0f0;padding-bottom:1.5rem;padding:1.2rem 1.5rem}.example-story-box{background:linear-gradient(90deg,#fff7e6,#fff);border-left:5px solid #ffb84c;border-radius:12px;padding:1.5rem 1.5rem 1.5rem 2rem;margin-bottom:1.5rem;margin-top:.5rem}.example-story-text{color:#444;font-size:1.08rem;line-height:1.7}.vocab-badge-success{display:inline-flex;align-items:center;background:#eafaf1;color:#22b573;font-weight:600;border-radius:9999px;padding:.4rem 1.1rem .4rem .8rem;font-size:1rem;box-shadow:0 1px 4px #00000008;border:1.5px solid #d1fae5;margin-right:.25rem}.listen-story-btn{border:1.5px solid #ffb84c;color:#22223b;background:#fff;border-radius:9999px;padding:.5rem 1.2rem;font-weight:600;font-size:1rem;transition:background .2s,border-color .2s;box-shadow:none}.listen-story-btn:hover{background:#fff7e6;border-color:#ffb84c}.word-usage-card{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-radius:1rem;background:#fafbfc;margin-bottom:.5rem;min-height:56px;box-shadow:0 1px 2px #3c3c3c05}.word-usage-title{font-weight:700;font-size:1rem;color:#222b3a}.word-usage-def{font-size:.75rem;color:#6b7280}.word-usage-indicator{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:9999px;border:2px solid #e5e7eb;background:#fff;transition:background .2s,border-color .2s}.word-usage-indicator.checked{border-color:#facc15;background:#facc15}.conversation-main-grid{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:start}@media (max-width:700px){.conversation-main-grid{grid-template-columns:1fr}}.conversation-panel .aduffy-card{padding:2rem 1.5rem!important}.word-usage-panel .aduffy-card{padding:1.3rem 1rem!important;max-width:420px;width:100%}.speaking-badge{display:inline-flex;align-items:center;background:#e6f6fa;color:#0097a7;border-radius:9999px;padding:.25rem 1rem;font-size:1rem;font-weight:500;gap:.5rem;border:none;box-shadow:none}.speaking-badge .speaking-icon{width:1.1em;height:1.1em;color:#0097a7;display:flex;align-items:center;justify-content:center}.speaking-badge-center{display:flex;justify-content:center;margin-top:.5rem}.hide-content-btn{display:inline-flex;align-items:center;background:transparent;border:none;border-radius:9999px;padding:.25rem .75rem;font-size:.8rem;color:#222b3a;font-weight:400;cursor:pointer;transition:background .15s;gap:.5rem}.hide-content-btn:hover{background:#f3f4f6}.hide-content-btn .hide-content-icon{width:1.2em;height:1.2em;color:#222b3a;display:flex;align-items:center;justify-content:center}.learning-header-center{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:.5rem}.skip-learning-btn{background:#fff;border:1.5px solid #ffe6b0;color:#222b3a;border-radius:.75rem;padding:.5rem 1.5rem;font-size:1rem;font-weight:400;cursor:pointer;transition:border-color .15s,background .15s;box-shadow:none}.skip-learning-btn:hover,.skip-learning-btn:focus{border-color:#ffd580;background:#fff}.start-writing-btn{display:inline-flex;align-items:center;background:#fbb025;color:#222b3a;border:none;border-radius:9999px;padding:.5rem 1.75rem;font-size:1.1rem;font-weight:500;cursor:pointer;gap:.75rem;box-shadow:none;transition:background .15s}.start-writing-btn:disabled{opacity:.6;cursor:not-allowed}.start-writing-btn:hover,.start-writing-btn:focus{background:#e09e1a}.start-writing-btn .start-writing-icon{font-size:1.2em;color:#222b3a;display:flex;align-items:center;justify-content:center}@media (max-width:700px){.start-writing-btn{padding:8px}.start-writing-btn .start-writing-icon{display:none}}.continue-voice-btn{display:flex;align-items:center;justify-content:center;width:100%;background:var(--primary);color:#222b3a;border:none;border-radius:999px;padding:.5rem 1.5rem;font-size:1rem;font-weight:500;cursor:pointer;gap:1rem;box-shadow:none;transition:background .15s;margin-top:.5rem}.continue-voice-btn:disabled{opacity:.6;cursor:not-allowed}.continue-voice-btn:hover,.continue-voice-btn:focus{background:#e09e1a}.continue-voice-btn .continue-voice-icon{font-size:1.3em;color:#222b3a;display:flex;align-items:center;justify-content:center}.badge-soft-yellow{background:#fdf0dc!important;color:#222b3a!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;font-size:1rem!important;font-weight:500!important;padding:.25em 1em!important;border:none!important;gap:.5em!important;box-shadow:none!important}.badge-soft-yellow svg{display:inline!important;vertical-align:middle!important;margin-right:.5em!important;align-self:center!important}.aduffy-card.card-glass-soft{background:linear-gradient(135deg,#f8fcff 80%,#eaf6fb)!important;border:1.5px solid #e3eaf1!important;border-radius:18px!important;box-shadow:0 2px 12px #1e50a012!important;padding:2rem 1.5rem!important;max-width:370px!important;margin:0 auto!important}.aduffy-card.card-soft-yellow-glass{background:linear-gradient(135deg,#fffefb 80%,#fff7e0)!important;border:1.5px solid #f6e7c1!important;border-radius:18px!important;box-shadow:0 2px 12px #c8961e12!important;padding:2rem 1.5rem!important;max-width:100%!important;margin:0 auto 2rem!important}.audio-icon-yellow{color:#f6a700!important;font-size:1.5em!important;display:inline-flex!important;align-items:center!important;vertical-align:middle!important}.aduffy-card.card-glass-welcome{background:linear-gradient(135deg,#fafdff 80%,#eaf6fb)!important;border:1.5px solid #e3eaf1!important;border-radius:22px!important;box-shadow:0 2px 16px #1e50a014!important;padding:2.5rem 2rem!important;max-width:600px!important;margin:3.5rem auto 2rem!important}.aduffy-card.card-glass-professional{background:linear-gradient(135deg,#fafdff 80%,#f9f6ee)!important;border:1.5px solid #e3eaf1!important;border-radius:22px!important;box-shadow:0 2px 16px #1e50a014!important;padding:2.5rem 2rem!important;max-width:700px!important;margin:3.5rem auto 2rem!important}.aduffy-input.input-soft-glass{background:#f8f9fa!important;border-radius:12px!important;border:none!important;box-shadow:0 1px 4px #1e50a00a!important;padding:.75rem 1rem!important;font-size:1rem!important;color:#222b3a!important;outline:none!important;transition:box-shadow .2s!important}.aduffy-input.input-soft-glass:focus{box-shadow:0 2px 8px #1e50a01a!important;background:#f4f7fa!important}.aduffy-card.card-glass-assessment{background:linear-gradient(135deg,#fffdfa 80%,#fff7e0)!important;border:1.5px solid #f6e7c1!important;border-radius:22px!important;box-shadow:0 2px 16px #f0b43c14!important;padding:2.5rem 2rem!important;max-width:900px!important;margin:3.5rem auto 2rem!important}.aduffy-card.card-glass-goals{background:linear-gradient(135deg,#fafdff 80%,#f9f6ee)!important;border:1.5px solid #e3eaf1!important;border-radius:22px!important;box-shadow:0 2px 16px #1e50a014!important;padding:2.5rem 2rem!important;max-width:900px!important;margin:3.5rem auto 2rem!important}.aduffy-card.card-glass-preferences{background:linear-gradient(135deg,#fafdff 80%,#eafbf6)!important;border:1.5px solid #d6ece6!important;border-radius:22px!important;box-shadow:0 2px 16px #1ea07814!important;padding:2.5rem 2rem!important;max-width:900px!important;margin:3.5rem auto 2rem!important}.learning-focus-card{background:linear-gradient(135deg,#1db5a30d,#fffc);border:1px solid rgba(29,181,163,.15);border-radius:16px;padding:1.5rem;margin:2rem auto;max-width:28rem;box-shadow:0 4px 20px #1db5a314;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.learning-focus-card .card-header{text-align:center;margin-bottom:1.5rem}.learning-focus-card .card-title{display:flex;align-items:center;justify-content:center;gap:.75rem;color:#222b3a;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.learning-focus-card .card-title .focus-icon{width:20px;height:20px;color:#1db5a3;flex-shrink:0}.learning-focus-card .card-description{color:#4a4e69;font-size:.875rem;line-height:1.5;margin:0}.learning-focus-card .card-content{display:flex;flex-direction:column;gap:1rem}.learning-focus-card .field-change-notice{font-size:.75rem;color:#6b7280;text-align:center;margin-top:.5rem;padding:.5rem;background:#f9a8250d;border-radius:8px;border:1px solid rgba(249,168,37,.1)}.play-all-words-btn{background:var(--primary);color:#222b3a;border:none;border-radius:999px;padding:.4em 1.2em;font-size:.95rem;font-weight:500;display:inline-flex;align-items:center;gap:.7em;box-shadow:none;transition:background .18s;margin-top:1rem}.play-all-words-btn:hover:enabled{background:orange}.play-all-words-btn:disabled{opacity:.5;cursor:not-allowed}.play-all-words-btn .play-icon{display:inline-flex;align-items:center;margin-right:.5em}.vocab-badge-professional{background:#fdf0dc!important;color:#222b3a!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;font-size:.8rem!important;font-weight:400!important;padding:.35em 1.2em!important;border:none!important;gap:.5em!important;box-shadow:none!important;line-height:1.1!important}.vocab-badge-professional svg{display:inline!important;vertical-align:middle!important;margin-right:.5em!important;align-self:center!important}.view-only-badge{background:#eaf7fa!important;color:#1793b6!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;font-size:1rem!important;font-weight:600!important;padding:.35em 1.2em!important;border:none!important;gap:.5em!important;box-shadow:none!important;line-height:1.1!important}.view-only-badge svg{display:inline!important;vertical-align:middle!important;margin-right:.5em!important;align-self:center!important}.view-mode-alert{background:#eaf7fa!important;border:1.5px solid #b6e0ef!important;border-radius:16px!important;color:#1793b6!important;padding:1.2rem 1.5rem!important;display:flex!important;align-items:center!important;justify-content:space-between!important;font-size:1.05rem!important;gap:1.5rem!important;margin:1.5rem 0!important}.view-mode-alert .alert-content{display:flex!important;align-items:center!important;gap:.75rem!important;color:#1793b6!important;font-size:1.05rem!important}@media (max-width:700px){.view-mode-alert .alert-content{font-size:.8rem!important}}.view-mode-alert .alert-lock-icon{display:flex!important;align-items:center!important;font-size:1.3em!important;color:#1793b6!important}.view-mode-alert .alert-action-btn{background:#fff!important;color:#1793b6!important;border:1.5px solid #b6e0ef!important;border-radius:12px!important;padding:.5em 1.2em!important;font-size:1rem!important;font-weight:500!important;display:inline-flex!important;align-items:center!important;gap:.5em!important;cursor:pointer!important;transition:background .15s,border .15s!important}@media (max-width:700px){.view-mode-alert .alert-action-btn{display:none!important}}.view-mode-alert .alert-action-btn:hover{background:#eaf7fa!important;border-color:#1793b6!important}.confidence-radio-group{display:flex!important;flex-direction:row!important;align-items:flex-end!important;gap:2.5rem!important;margin-top:.5rem!important}.confidence-radio-item{display:flex!important;flex-direction:column!important;align-items:center!important;gap:.2em!important;min-width:36px!important}.confidence-radio-label{font-size:.95em!important;color:#222b3a!important;margin-top:.2em!important;text-align:center!important}.confidence-radio-helper{font-size:.95em!important;color:#888!important;margin-top:.2em!important;text-align:center!important;min-width:70px!important}.confidence-radio-dot{width:1em;height:1em;border:2.5px solid #f3f3f3;background:#fff;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #f3f3f3;cursor:pointer;transition:border-color .2s,box-shadow .2s}.confidence-radio-dot.checked{border-color:#ffc107;box-shadow:0 2px 8px #ffe9c7}.confidence-radio-dot .confidence-radio-dot-inner{width:.4em;height:.4em;background:#ffc107;border-radius:50%;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.5em;line-height:1em;text-align:center;color:#ffc107}.skills-checkbox-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1.2rem!important}@media (max-width:700px){.skills-checkbox-grid{grid-template-columns:1fr!important}}.skill-checkbox-label{display:flex!important;align-items:center!important;background:#fff!important;border:1.5px solid #e6f0f3!important;border-radius:16px!important;box-shadow:0 2px 8px #1db5a30a!important;padding:.4rem!important;font-size:1rem!important;font-weight:500!important;color:#222b3a!important;cursor:pointer!important;transition:border .15s,background .15s;gap:.9em!important}.skill-checkbox-label .skill-icon{font-size:1.3em!important;color:#1db5a3!important;display:flex!important;align-items:center!important}.skill-checkbox-label .skill-checkbox{accent-color:var(--primary)!important;width:1.2em!important;height:1.2em!important;margin-right:.7em!important;border-radius:6px!important;border:1.5px solid #e6f0f3!important;background:#fff!important;flex-shrink:0!important}.skill-checkbox-label.selected{background:#fff7e6!important;border:1.5px solid var(--primary)!important;box-shadow:0 2px 8px #fbb04014!important}.skill-checkbox-label.selected .skill-checkbox{accent-color:var(--primary)!important;border-color:var(--primary)!important}.almost-ready-box{background:#fdf7ee;border:1.5px solid #ffe3b3;border-radius:18px;box-shadow:0 4px 24px #fbb0400f;padding:2rem 2.5rem;margin:2rem 0;color:#222b3a}.almost-ready-header{display:flex;align-items:center;gap:.7em;font-size:1.2rem;font-weight:700;color:var(--primary);margin-bottom:.3em}.almost-ready-desc{color:#4a4e69;font-size:1rem;margin-bottom:1.2em}.almost-ready-list{list-style:none;padding:0;margin:0}.almost-ready-list li{display:flex;align-items:center;gap:.6em;color:#1793b6;font-size:1rem;margin-bottom:.5em}.almost-ready-list li:last-child{margin-bottom:0}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.sr-only[type=radio]{-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important}.final-score-badge{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,gold,#ffed4e);border:2px solid #e6c200;border-radius:12px;padding:8px 16px;box-shadow:0 4px 12px #ffd7004d;margin-top:8px;transition:all .3s ease}.final-score-badge:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ffd70066}.final-score-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ffffffe6;border-radius:50%;color:gold;flex-shrink:0}.final-score-content{display:flex;flex-direction:column;gap:1px}.final-score-label{font-size:12px;font-weight:600;color:#ae914e;text-transform:uppercase;letter-spacing:.5px}.final-score-value{font-size:16px;font-weight:800;color:#222b3a;line-height:1}@media (max-width: 700px){.final-score-badge{padding:6px 12px;gap:6px}.final-score-icon{width:20px;height:20px}.final-score-label{font-size:10px}.final-score-value{font-size:14px}}.aduffy-card{background:#fff;border-radius:18px;box-shadow:0 2px 12px #1e3c5a12;padding:0;border:none;transition:box-shadow .2s}.aduffy-card .pt-6{padding-top:2.5rem}.card-icon-circle{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;margin:0 auto 18px;font-size:2.2rem}.card-icon-learning,.card-icon-speaking{background:#e6f6fa;color:#13b0c7}.card-icon-writing{background:#fff4e6;color:#ff9800}.card-title-learning,.card-title-speaking{color:#13b0c7;font-weight:700;font-size:1.35rem;margin-bottom:.2em}.card-title-writing{color:#ff9800;font-weight:700;font-size:1.35rem;margin-bottom:.2em}.card-subtitle{color:#8a99a8;font-size:1rem;font-weight:500;margin-bottom:0}@media (max-width: 900px){.aduffy-card .pt-6{padding-top:1.5rem}.card-icon-circle{width:48px;height:48px;font-size:1.5rem}.card-title-learning,.card-title-writing,.card-title-speaking{font-size:1.1rem}.card-subtitle{font-size:.95rem}}.daily-achievement-card{background:#fff;border-radius:22px;box-shadow:0 4px 24px #f0b43c1a,0 1.5px #f6e7c1;border:1.5px solid #f6e7c1;padding:2.5rem 2rem;max-width:900px;margin:2.5rem auto 2rem;display:flex;flex-direction:column;align-items:center}.daily-achievement-card .confetti-icon{font-size:2.2rem;margin-bottom:.5rem;color:#fbb025;display:flex;justify-content:center;align-items:center}.daily-achievement-card .achievement-title{font-size:1.5rem;font-weight:700;color:#e09e1a;margin-bottom:.5rem;text-align:center}.daily-achievement-card .score-section{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem}.daily-achievement-card .score-number{font-size:4.5rem;font-weight:800;color:#fbb025;margin-bottom:.2rem;line-height:1}.daily-achievement-card .score-label{font-size:1.2rem;color:#888;margin-bottom:.5rem}.daily-achievement-card .soft-progress-bar{width:100%;max-width:340px;height:10px;background:#fff7e0;border-radius:8px;margin:.5rem auto 1.5rem;overflow:hidden;position:relative}.daily-achievement-card .soft-progress-bar-fill{height:100%;background:linear-gradient(90deg,#ffe6b0,#fbb025);border-radius:8px;transition:width .5s cubic-bezier(.4,1,.4,1)}.daily-achievement-card .achievement-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 2rem;width:100%;margin-top:1.5rem}@media (max-width: 900px){.daily-achievement-card .achievement-grid{grid-template-columns:1fr;gap:1.5rem 0}}.daily-achievement-card .achievement-list{list-style:none;padding:0;margin:0}.daily-achievement-card .achievement-list li{display:flex;align-items:center;gap:.7em;font-size:1rem;color:#1db56a;margin-bottom:.5em}.daily-achievement-card .achievement-list li .checkmark{color:#22b573;font-size:1.2em;display:flex;align-items:center}.daily-achievement-card .topic-mastered{display:flex;flex-direction:column;gap:12px;border-radius:12px;margin-top:.2em}.daily-achievement-card .topic-title{font-weight:600;color:#222b3a;font-size:1.05rem}.daily-achievement-card .topic-desc{font-size:.92rem;color:#888;margin-top:.2em}.try-again-btn{display:inline-flex;align-items:center;gap:.6em;background:#fff;border:1.5px solid #ffe6b0;color:#222b3a;border-radius:.9em;padding:.6em 1.4em;font-size:1.08rem;font-weight:600;cursor:pointer;box-shadow:none;transition:box-shadow .13s,border-color .13s}@media (max-width:700px){.try-again-btn{padding:.4rem .8rem}}.try-again-btn:hover,.try-again-btn:focus{box-shadow:0 2px 8px #f0b43c1a;border-color:#ffd580}.try-again-btn .try-again-icon{font-size:1.25em;display:flex;align-items:center;color:#222b3a;margin-right:.2em}.send-response-btn{display:inline-flex;align-items:center;gap:.7em;background:#fff;border:1.5px solid #e5e7eb;color:#222b3a;border-radius:.9em;padding:.45em 1.05em;font-size:.98rem;font-weight:600;cursor:pointer;box-shadow:none;transition:box-shadow .13s,border-color .13s;margin-top:.5rem;margin-bottom:.7rem}.send-response-btn:hover,.send-response-btn:focus{box-shadow:0 2px 8px #1e293b14;border-color:#bdbdbd}.send-response-btn .send-response-icon{font-size:1.08em;display:flex;align-items:center;color:#222b3a;margin-right:.2em}.orange-action-btn{margin-bottom:.7rem}.quiz-question-card-header{padding:1.1rem 1.5rem .7rem}.quiz-question-card-title{padding:0rem}.aduffy-card.quiz-question-card{padding:1.2rem 1.5rem}.return-btn{display:flex;align-items:center;border:1.5px solid #ffe0b2;border-radius:12px;background:#fff;color:#222b3a;font-weight:500;font-size:1.1em;padding:.5em 1.5em;transition:background .15s,border-color .15s;box-shadow:none;cursor:pointer}.return-btn:hover{background:#fff8f0;border-color:#ffd699}.return-btn .arrow{font-size:1.2em;margin-right:.7em;color:#222b3a}.scrollable-fixed{height:24rem;overflow-y:auto;background:var(--color-muted, #f5f5f5);padding:1rem;border-radius:.75rem;display:flex;flex-direction:column;gap:1rem}.chat-bubble{max-width:70%;padding:1rem;border-radius:1rem;margin-bottom:.75rem;word-break:break-word;font-size:1rem;box-sizing:border-box;display:flex;flex-direction:column}.chat-bubble-ai{background:#fff;color:#222b3a;border:1px solid #e0e0e0;border-bottom-left-radius:.25rem;margin-right:auto;margin-left:0}.chat-bubble-user{background:#ffe9c7;color:#222b3a;border:none;border-bottom-right-radius:.25rem;margin-left:auto;margin-right:0}.chat-timestamp{font-size:.85em;color:#888;margin-top:.5em;align-self:flex-end}.aduffy-special-box{background:#fefaf4;border:1px solid #efd0a1;border-radius:16px;padding:1.5rem;margin-top:1.5rem}.aduffy-special-flex{display:flex;align-items:flex-start;gap:1rem}.aduffy-special-sparkle{font-size:1.5rem;color:#fbbf24;margin-top:.25rem;flex-shrink:0}.aduffy-special-title{font-weight:600;color:#222b3a;margin-bottom:.5rem}.aduffy-special-list{list-style:none;padding:0;margin:0}.aduffy-special-list li{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#4b5563;margin-bottom:.25rem}.aduffy-special-check{color:#14b8a6;font-size:1.1em;flex-shrink:0}.input-neutral-bg{background:#f7f7fa;border:none;border-radius:12px;color:#222b3a;padding:.75em 1em;outline:none;font-size:1rem;transition:box-shadow .2s}.input-neutral-bg:focus{box-shadow:0 0 0 2px #e0e7ef}.btn-outline-teal{background:#fff;color:#14b8a6;border:1.5px solid #14b8a6;border-radius:12px;padding:.6em 1.5em;font-weight:500;font-size:1.1rem;display:inline-flex;align-items:center;gap:.5em;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn-outline-teal:disabled,.btn-outline-teal[aria-disabled=true]{opacity:.6;cursor:not-allowed}.btn-outline-teal:hover,.btn-outline-teal:focus{background:#f0fdfa;border-color:#0ea5e9;color:#0ea5e9}.quiz-feedback-incorrect{background:#fde8e8;border-radius:16px;padding:1.5rem 1.5rem 1rem;color:#b91c1c;margin-top:.5rem;margin-bottom:.5rem}.quiz-feedback-incorrect .quiz-feedback-explanation{color:#374151;margin-top:.5rem}.text-error{color:#b91c1c;font-weight:500}.quiz-option.correct{background:#e6f9ed;border:1.5px solid #22b573;color:#14532d}.quiz-option.correct .option-letter{background:#22b573;color:#fff}.quiz-option.incorrect{background:#fde8e8;border:1.5px solid #f87171;color:#b91c1c}.soft-yellow-badge{background:#ffe9c7;color:#222b3a;border-radius:999px;padding:.3em 1.2em;font-weight:700;font-size:1rem;display:inline-block;border:none;box-shadow:none}.quickstart-box{background:#f3fbfc;border:1.5px solid #b6e6ef;border-radius:16px;padding:1.5rem;margin-top:1.5rem}.quickstart-flex{display:flex;align-items:flex-start;gap:1rem}.quickstart-icon{font-size:2rem;color:#00b3c6;margin-top:.2em;flex-shrink:0}.quickstart-title{font-weight:600;color:#222b3a;margin-bottom:.5rem;font-size:1.15rem}.quickstart-desc{color:#64748b;font-size:1rem;margin-bottom:1.2rem}.btn-outline-teal{background:#fff;color:#00b3c6;border:1.5px solid #00b3c6;border-radius:999px;padding:.6em 1.5em;font-weight:500;font-size:1.1rem;display:inline-flex;align-items:center;gap:.5em;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn-outline-teal:hover,.btn-outline-teal:focus{background:#e0f7fa;border-color:#00b3c6;color:#0097a7}.btn-outline-teal svg{margin-right:.5em}.soft-yellow-btn{background:var(--primary)!important;color:#000}.custom-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1em;height:1em;border-radius:50%;border:2.5px solid #f3f3f3;background:#fff;display:inline-block;position:relative;margin-right:.7em;vertical-align:middle;transition:border-color .2s;box-shadow:0 0 0 2px #f3f3f3}.custom-radio:checked{border-color:#ffd166;box-shadow:0 0 0 2px #fff8ec}.custom-radio:checked:after{content:"";display:block;width:.4em;height:.4em;background:#ffc107;border-radius:50%;position:absolute;top:.21em;left:.14em}.radio-label{display:flex;align-items:center;font-weight:light;color:#111;font-size:1em;gap:.5em}.radio-icon{font-size:1.3em;margin-right:.2em;vertical-align:middle}.info-badge{background:#eaf8fa;color:#14b8a6;border-radius:999px;padding:.25em 1.1em .25em .9em;font-weight:500;font-size:.8rem;display:inline-flex;align-items:center;gap:.5em;border:none;box-shadow:none}.info-badge .info-badge-icon{font-size:1.1em;margin-right:.4em;display:flex;align-items:center}.practice-badge{background:#ffe9c7;color:#222b3a;border-radius:999px;padding:.25em 1.1em .25em .9em;font-size:.8rem;display:inline-flex;align-items:center;gap:.5em;border:none;box-shadow:none}.practice-badge .practice-badge-icon{font-size:1.1em;margin-right:.4em;display:flex;align-items:center}.quiz-progress-bar{width:100%;height:10px;background:#fff8ec;border-radius:8px;overflow:hidden;margin-top:1em}.writing-instructions-box{background:#fff8ec;border-radius:16px;padding:1.2em 1.5em;margin-top:1em;margin-bottom:1em;display:flex;align-items:flex-start;gap:.7em}@media (max-width:700px){.writing-instructions-box{display:none}}.writing-instructions-icon{color:#fbbf24;font-size:1.4em;margin-top:.1em;flex-shrink:0}.writing-instructions-content{display:flex;flex-direction:column}.writing-instructions-title{font-weight:700;color:#222b3a;margin-bottom:.1em;font-size:1.08em}.writing-instructions-desc{color:#444;font-size:1em;margin-top:.1em}.ai-story-card-content{padding:1rem}.ai-story-new-topic-btn{background:#fff;color:#222b3a;border:1.5px solid #ffd166;border-radius:999px;padding:.45em 1.3em;font-weight:500;font-size:1rem;margin-left:auto;gap:.5em;box-shadow:none;transition:border-color .15s,color .15s,background .15s;cursor:pointer}.ai-story-new-topic-btn:disabled{opacity:.6;cursor:not-allowed}.ai-story-new-topic-btn svg{margin-right:.5em;width:1.1em;height:1.1em;display:inline-block;vertical-align:middle}.story-context-box{background:linear-gradient(90deg,#fff 80%,#f9f7f3);border-left:5px solid #222b3a;border-radius:16px 0 0 16px;padding:1.3em 2em 1.3em 1.5em;margin-bottom:1.2em;box-shadow:none}.story-context-title{font-weight:700;color:#222b3a;margin-bottom:.3em;font-size:1.15em}.story-context-scenario{color:#64748b;margin-bottom:.7em;font-size:1.05em}.story-context-label{font-weight:700;color:#222b3a}.story-context-value{color:#374151;font-weight:400}.professional-story-card{background:#fff;border-radius:16px;border:1.5px solid #f3f3f3;padding:2rem 2rem 1.5rem;box-shadow:none;margin-bottom:2em}.professional-story-title{font-weight:700;color:#222b3a;font-size:1.18em;margin-bottom:.2em}.professional-story-desc{color:#64748b;font-size:1.08em;margin-bottom:1.1em}.professional-story-textarea{width:100%;min-height:180px;background:#f7f7fa;border:none;border-radius:12px;padding:1.1em 1.2em;font-size:1.05em;color:#222b3a;margin-bottom:.7em;resize:vertical;outline:none;transition:box-shadow .2s}.professional-story-textarea::-moz-placeholder{color:#94a3b8;font-size:1em}.professional-story-textarea::placeholder{color:#94a3b8;font-size:1em}.professional-story-footer{display:flex;justify-content:space-between;color:#94a3b8;font-size:.98em;margin-top:.2em}.step-nav{display:flex;align-items:center;justify-content:space-evenly;width:100%;gap:3.5em;margin-bottom:.8rem}@media (max-width:700px){.step-nav{gap:.4rem;flex-wrap:wrap;width:100%;overflow-x:hidden}.step-nav-item{font-size:.5rem;gap:.1rem;flex:0 1 auto}}.step-nav-item{display:flex;align-items:center;gap:.4em;font-size:1.08em;font-weight:500;cursor:pointer;opacity:1;transition:color .2s,opacity .2s}.step-nav-item.completed{color:#14b8a6}.step-nav-item.current{color:#fbbf24}.step-nav-item.upcoming{color:#d1d5db;cursor:default;opacity:.7}.step-nav-icon{display:flex;align-items:center;justify-content:center;width:1em;height:1.3em;border-radius:50%;background:transparent}.step-nav-item.completed .step-nav-icon{color:#14b8a6}.step-nav-item.current .step-nav-icon{color:#fbbf24;background:#fef3c7}.step-nav-item.upcoming .step-nav-icon{color:#e5e7eb;background:#f9fafb}.ai-guided-badge{background:#fff8ec;color:#222b3a;border-radius:999px;font-size:.8rem;display:inline-flex;align-items:center;gap:.5em;border:none;box-shadow:none;margin:0}.ai-guided-badge .ai-guided-icon{font-size:1.2em;margin-right:.5em;display:flex;align-items:center}.analyze-story-btn{background:var(--primary);color:#212121;border:none;border-radius:999px;padding:.5em 5.4em;font-size:1rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:.7em;box-shadow:none;cursor:pointer;transition:background .15s,color .15s}@media (max-width:700px){.analyze-story-btn{font-size:.978rem;width:100%}}.analyze-story-btn:disabled{opacity:.7;cursor:not-allowed}.analyze-story-btn .analyze-icon{color:#222b3a;margin-right:.7em;width:1.2em;height:1.2em;display:inline-block;vertical-align:middle}.final-score-pill{background:#fff2dc;color:#222b3a;border-radius:999px;padding:.3em 1em;font-size:1rem;display:inline-flex;align-items:center;gap:.6em;border:none;box-shadow:none}.final-score-pill .final-score-star{font-size:1.1em;margin-right:.5em;display:flex;align-items:center}.back-to-dashboard-btn-result{background:var(--primary);color:#212121;border:none;border-radius:999px;padding:10px 20px!important;font-size:clamp(.9rem,1vw,1rem);font-weight:500;display:inline-flex;align-items:center;gap:.7em;box-shadow:none;cursor:pointer;transition:background .15s,color .15s}.back-to-dashboard-btn-result:disabled{opacity:.7;cursor:not-allowed}.back-to-dashboard-btn-result .arrow{font-size:1.2em;margin-right:.3em;display:flex;align-items:center}@media (max-width:700px){.back-to-dashboard-btn-result{padding:.2rem}.back-to-dashboard-btn-result .arrow{display:none}}.text-red{color:#ab2f2f!important}.text-orange{color:orange!important}.text-green{color:green!important}.accuracy-badge-soft,.correct-answers-badge-soft{background:#ffefd5;color:#222b3a;border-radius:999px;padding:.25em 1em;display:inline-flex;align-items:center;font-size:.8em;border:none;box-shadow:none}.badges-column{display:flex;flex-direction:column;gap:1rem;align-items:end}.badges-row{display:flex;flex-direction:row;gap:1rem}@media (max-width:700px){.badges-row{flex-direction:column;gap:.5rem}}.vocabulary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}@media (max-width: 700px){.vocabulary-grid{grid-template-columns:1fr}}.vocabulary-card{background:#fff;border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm)}.vocabulary-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.word-number{background:var(--warning-light);color:var(--warning);width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:500}.word-level{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);text-transform:lowercase}.word-level.intermediate{background:var(--warning-light);color:var(--warning)}.word-level.advanced{background:var(--info-light);color:var(--info)}.word-level.beginner{background:var(--success-light);color:var(--success)}.vocabulary-word{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.word-type{color:var(--text-secondary);font-size:var(--font-size-sm);font-style:italic;margin-bottom:var(--space-4)}.definition-label,.example-label{font-weight:600;color:var(--text-primary);font-size:var(--font-size-sm);margin-bottom:var(--space-2)}.word-definition,.word-example{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.6;margin-bottom:var(--space-4)}.word-example{font-style:italic}.audio-button{background:none;border:none;cursor:pointer;color:var(--warning);padding:0;font-size:var(--font-size-lg)}@media (max-width: 700px){.vocab-checklist-card{display:none}}.mobile-vocab-row{display:none}@media (max-width: 700px){.mobile-vocab-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;justify-content:flex-start}.mobile-vocab-pill{display:flex;align-items:center;padding:6px 14px;border-radius:20px;background:#f3f4f6;font-size:1em;border:1px solid #e5e7eb;color:#222b3a;margin-bottom:4px;gap:6px}.mobile-vocab-pill.used{background:#1793b6;color:#fff;font-weight:700;border-color:#1793b6}.mobile-vocab-word{margin-right:4px}.mobile-vocab-check{display:flex;align-items:center}}@media (max-width:700px){.mobile-logo-img{width:auto;height:40px}}.ai-guided-title{display:flex;align-items:center;gap:.5em}.ai-analysis-desktop{display:block}.ai-analysis-mobile{display:none}@media (max-width: 767px){.ai-analysis-desktop{display:none}.ai-analysis-mobile{display:block}.modal-overlay{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center}.modal-content{background:#fff;border-radius:12px;padding:1.5rem 1rem;max-width:95vw;width:100%;max-height:90vh;overflow-y:auto;position:relative}.modal-close-btn{position:absolute;top:.5rem;right:1rem;background:none;border:none;font-size:2rem;color:#222b3a;cursor:pointer}}.ai-analysis-popup-btn{display:flex;align-items:center;justify-content:center;width:100%;background:#fbb025;color:#222b3a;border:none;border-radius:999px;padding:.5rem 1.5rem;font-size:1rem;font-weight:500;cursor:pointer;gap:1rem;box-shadow:none;transition:background .15s;margin-top:.5rem}.form-fields-row{display:flex;flex-direction:column;gap:1rem}@media (min-width: 700px){.form-fields-row{flex-direction:row;gap:2rem}}.mobile-word-usage-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.mobile-word-pill{display:flex;align-items:center;border:1px solid #ddd;border-radius:999px;padding:6px 14px;background:#fff;font-size:1rem;color:#222b3a;transition:background .2s}.mobile-word-pill.used{background:#22b573;color:#fff;font-weight:700}.mobile-word-check{margin-left:6px;display:flex;align-items:center}@media (min-width: 768px){.mobile-word-usage-row{display:none}}@media (max-width: 767px){.word-usage-panel{display:none}}@media (min-width: 768px){.mobile-only-btn{display:none}}@media (width:700px){.mobile-padding-feedback{padding:4px}}.words-learned-card{background:#f8fafc;border-radius:16px;padding:18px 20px;min-height:60px;display:flex;align-items:center;gap:16px;margin-top:4px}.words-learned-badge{background:#e0f7fa;color:#00796b;border-radius:12px;padding:6px 14px;font-weight:600;font-size:1rem;letter-spacing:.01em;box-shadow:0 1px 2px #00000008}.result-words-learned{color:#22b573}@media (max-width:700px){.progress-bar-responsive{width:96%;margin-left:7px}}.challenge-label{white-space:normal;word-break:break-word;max-width:100%;flex-wrap:wrap}.dashboard-container{padding:0;margin:0 auto;background:#fff;min-height:(100vh - 60px);overflow-x:hidden;width:100%;box-sizing:border-box}@media (min-width: 700px){.dashboard-container{max-width:900px;padding:2rem 0 0}}.mobile-status-bar{display:flex;align-items:center;justify-content:space-between;height:32px;padding:0 16px;font-size:1rem;color:#222}.status-notch{width:40px;height:8px;background:#222;border-radius:8px;margin:0 8px}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 0;background:#fff}.header-left{display:flex;flex-direction:column;gap:2px}.app-brand{display:flex;align-items:center;gap:8px}.app-icon{width:16px;height:16px;background:var(--primary);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1rem}.app-name{font-size:.95rem;color:#888;font-weight:500}.user-greeting{font-size:1.1rem;font-weight:600;color:#222}.header-actions{display:flex;gap:8px}.header-btn{background:none;border:none;font-size:1.3rem;color:#222;cursor:pointer}.dashboard-section{background:#fff;margin:18px 12px 0;padding:0;overflow:hidden;width:calc(100% - 24px);box-sizing:border-box}.section-header{display:flex;align-items:center;justify-content:space-between;padding:6px 0;cursor:pointer}.section-header h2{font-size:1.18rem;font-weight:700;margin:0}.section-chevron{font-size:1.2rem;transition:transform .2s}.section-chevron.up{transform:rotate(180deg)}.section-content{padding:10px 0;overflow-x:hidden;width:100%;word-wrap:break-word}.course-info-grid{display:flex;flex-direction:column;gap:18px}@media (min-width: 700px){.course-info-grid{flex-direction:row;gap:32px}}.course-info-item{display:flex;align-items:flex-start;width:100%}.info-icon{font-size:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.info-label{font-size:1rem;color:#1a1a1a;font-weight:600;display:flex;align-items:center;gap:8px}.info-label-icon{width:20px;height:20px}.info-value{font-size:.9rem;font-weight:400;color:#1a1a1a}.level-progress{display:flex;align-items:center;width:100%;margin-top:8px;overflow-x:hidden;padding:8px 0}.level-progress::-webkit-scrollbar{display:none}.level-item{display:flex;position:relative;flex-direction:column;align-items:center;gap:4px}.level-circle{width:36px;height:36px;border-radius:50%;background:#eee;display:flex;align-items:center;justify-content:center;font-weight:500;font-size:.9rem;color:#888;margin-bottom:2px;z-index:1}.level-item.completed .level-circle{background:#2ecc40;color:#fff}.level-item.current .level-circle{background:var(--primary);color:#fff}.level-item.locked .level-circle{background:#e0e0e0;color:#bbb}.level-label{font-size:.65rem;font-weight:500;color:#888}.level-item.completed .level-circle{background:#22c55e;color:#fff;margin-left:-5px}.level-item.completed .level-label{color:#22c55e}.level-item.current .level-circle{background:var(--primary);color:#000}.level-item.current .level-label{color:var(--primary)}.level-item.locked .level-circle{background:#e5e5e5;color:#6b7280}.level-item.locked .level-label{color:#6b7280}.level-connector{height:3px;flex:1;background-color:#e5e5e5;transform:translateY(-100%);position:relative;top:-5px;margin:0 -16px}.level-item.completed+.level-connector{background:#bfe4c6;opacity:.5}.shield-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--primary);color:#fff;border-radius:50%;font-size:12px;font-weight:700}.level-item.current+.level-connector{background:#fee4bc;opacity:.5}.level-item.locked+.level-connector{background:#e5e5e5}.stats-grid{display:flex;flex-direction:row;gap:12px;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}@media (min-width: 700px){.stats-grid{gap:8px}}@media (max-width: 700px){.stats-grid{gap:3px}}@media (max-width: 768px){.stats-grid{align-items:stretch}}@media (max-width: 480px){.stats-grid{padding:0}}.stat-card{flex:1;border-radius:12px;box-shadow:0 1px 4px #00000005;display:flex;flex-direction:column;align-items:flex-start;min-width:0;position:relative;overflow:hidden;min-height:105px;min-width:122px}.dashboardIco{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:100%;font-size:14px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 4px #0000001a;margin-left:10px;vertical-align:middle}.dashboardIco>svg:only-child{height:12px;width:12px}@media (max-width:700px){.stat-card{height:-moz-min-content;height:min-content;padding:6px;min-width:0;flex-shrink:1}.dashboardIco{width:20px;height:20px;font-size:12px;margin-left:6px;border-radius:100%;flex-shrink:0}}@media (max-width: 360px){.dashboard-section{margin:12px 8px 0;width:calc(100% - 16px)}.section-content{padding:8px 0 12px}.stat-card{padding:3px}.stat-value{font-size:var(--font-size-base)}.stat-sub{font-size:8px;font-weight:400;color:var(--text-primary)}.dashboardIco{width:14px;height:14px;border-radius:100%;font-size:8px;margin-left:1px}}.stat-words{background:#fef6e9}.stat-streak{background:#ecf6ec}.stat-score{background:#ebeae8}@media (max-width: 768px){.stat-card{flex:1;padding:8px;min-width:0}.stat-value{font-size:var(--font-size-xl)}.stat-sub{font-size:var(--font-size-xs)}.stat-icon{font-size:16px}}.stat-card{flex:1;padding:4px;min-width:0}.stat-value{font-size:var(--font-size-lg)}.stat-sub{font-size:9px}.dashboardIco{width:24px;height:24px;font-size:9px;margin-left:2px;border-radius:100%}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-header{display:flex;align-items:center;gap:8px}.activity-icon{font-size:1.3rem}.activity-title{font-weight:600;font-size:1.1rem;flex:1}.activity-duration{font-size:.85rem;color:#888;background:#fff3cd;border-radius:8px;padding:2px 8px;margin-left:8px}.activity-desc{font-size:.98rem;color:#444}.activity-btn{background:#ffd600;color:#000;border:none;border-radius:8px;padding:10px 0;font-size:1rem;margin-top:8px;cursor:pointer;transition:background .2s}.activity-btn:hover{background:var(--primary)}.bottom-nav{display:flex;justify-content:space-around;align-items:center;position:fixed;bottom:10px;left:50%;transform:translate(-50%);width:95vw;background:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:30px;border:2px solid rgba(0,0,0,.1);box-shadow:0 .8px .8px #0000001a;padding:12px 24px;z-index:100}@media (max-width: 1024px){.bottom-nav{display:flex}}@media (min-width: 1025px){.bottom-nav{display:none}}@media (max-width: 480px){.bottom-nav{padding:10px 20px;bottom:16px}.nav-btn{min-width:50px;font-size:.7rem}.nav-icon{width:1.25rem;height:1.25rem}}.nav-btn{background:none;border:none;color:#37474f;width:100vw;font-size:.6rem;display:flex;flex-direction:column;align-items:center;gap:2px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:60px}.nav-btn.active{color:var(--primary)}.nav-btn span{color:inherit}.nav-btn:hover{color:var(--primary)}.nav-icon{width:1.4rem;height:1.5rem;stroke-width:2px;color:inherit}.nav-btn.active .nav-icon{stroke-width:2.5px}.info-icon-small{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:var(--primary);color:#fff;border-radius:50%;font-size:12px;font-weight:700;margin-right:8px}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.onboarding-wrapper{min-height:100vh;background:#fff}.onboarding-mobile-container{max-width:480px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding:0 10px;background:#fff}@media (min-width: 768px){.onboarding-mobile-container{max-width:400px;border-radius:20px;box-shadow:0 20px 40px #0000001a}}.onboarding-header{padding:18px 0 10px;flex-shrink:0;display:flex;flex-direction:column;align-items:start;justify-content:center}.back-button{background:none;border:none;padding:2px 0;color:#333;cursor:pointer;margin:7px 0}.back-button-signup{background-color:#fff5d5;border-radius:8px;padding:4px 4px 4px 14px;margin-bottom:20px}.onboarding-title{font-size:1.4rem;font-weight:700;color:#333;line-height:1.3;margin-top:3px 0 1px 0}.onboarding-subtitle{font-size:1rem;color:#666;margin:0;line-height:1.5}.onboarding-form{flex:1;display:flex;flex-direction:column;justify-content:start;gap:18px}.form-field{display:flex;flex-direction:column;gap:4px}.field-label{font-size:1rem;font-weight:600;color:#333;margin:1px 0}.mobile-input{background:#f5f5f5;border:none;border-radius:12px;padding:16px;font-size:1rem;color:#333;transition:all .2s ease}.mobile-input::-moz-placeholder{color:#999}.mobile-input::placeholder{color:#999}.mobile-input:focus{outline:none;background:#f0f0f0;box-shadow:0 0 0 2px #fbb04033}.select-wrapper{position:relative}.mobile-select{background:#f5f5f5;border:none;border-radius:12px;padding:16px;font-size:1rem;color:#333;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.mobile-select:focus{outline:none;background:#f0f0f0;box-shadow:0 0 0 2px #fbb04033}.select-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#666;pointer-events:none}.onboarding-actions{padding:2px 0;flex-shrink:0}.continue-button{width:100%;background:var(--primary);color:#333;border:none;border-radius:12px;padding:16px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.continue-button:disabled{background:#e0e0e0;color:#999;cursor:not-allowed}.continue-button:not(:disabled):hover{background:#f9a825;transform:translateY(-1px)}.assessment-question{display:flex;flex-direction:column;gap:12px}.question-label{font-size:1rem;font-weight:600;color:#333;margin:0}.rating-buttons{display:flex;gap:12px;align-self:flex-start;justify-content:center;margin-top:16px}.rating-btn{display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:none;cursor:pointer;transition:all .2s ease;padding:8px;border-radius:8px}.rating-btn:before{content:"";width:24px;height:24px;border:2px solid #ddd;border-radius:50%;background:#fff;transition:all .2s ease}.rating-btn.selected:before{border-color:var(--primary);background:var(--primary);position:relative}.rating-btn.selected:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%;z-index:1}.rating-btn span{font-size:14px;font-weight:500;color:#333;margin-top:4px}.skill-level-options{display:flex;flex-direction:row;flex-wrap:wrap}.skill-level-options-level{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;width:100%;row-gap:0}.skill-level-option{display:flex;align-items:center;gap:12px;cursor:pointer;padding:12px;border-radius:8px;transition:background .2s ease}.skill-level-option:hover{background:#f5f5f5}.skill-level-option input[type=radio]{display:none}.radio-custom{width:20px;height:20px;border:2px solid #ddd;border-radius:50%;position:relative;transition:all .2s ease}.skill-level-option input[type=radio]:checked+.radio-custom{border-color:var(--primary);background:#fff}.skill-level-option input[type=radio]:checked+.radio-custom:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:var(--primary);border-radius:50%}.option-label{font-size:1rem;color:#333}.section-question{margin-bottom:16px}.question-hint{font-size:.9rem;color:#666;margin:4px 0 0}.challenges-grid,.goals-grid{display:grid;grid-template-columns:1fr 1fr;row-gap:28px;padding:10px 0}.onboarding-form-challenge{padding:10px 0}@media (max-width: 480px){.challenges-grid,.goals-grid{grid-template-rows:1fr}}.challenge-option,.goal-option{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .2s ease;background:#fff}.challenge-option:hover,.goal-option:hover,.challenge-option.selected,.goal-option.selected{border-color:var(--primary)}.challenge-option input[type=checkbox],.goal-option input[type=checkbox]{display:none}.challenge-icon,.goal-icon{font-size:1.5rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f5f5f5;color:var(--primary);transition:all .2s ease}.challenge-option.selected .challenge-icon,.goal-option.selected .goal-icon{background:var(--primary);color:#fff}.challenge-label,.goal-label{font-size:.75rem;color:#333;text-align:center;line-height:1.3;font-weight:500;white-space:normal}.complete-setup-button:disabled{background:#e0e0e0;color:#999;cursor:not-allowed}.complete-setup-button:not(:disabled):hover{background:#f9a825;transform:translateY(-1px);box-shadow:0 4px 12px #fbb0404d}.complete-setup-button{width:100%;background:var(--primary);color:#333;border:none;border-radius:12px;padding:16px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.splash-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--primary);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease}.splash-screen.fade-out{opacity:0}.splash-content{text-align:center}.splash-logo{display:flex;flex-direction:column;align-items:center;height:10rem;width:10rem}.logo-text{display:flex;align-items:center;gap:8px}.logo-main{font-size:3rem;font-weight:700;color:#1a1a1a}.logo-sparkle{font-size:2rem}.logo-subtitle{font-size:1.5rem;font-weight:500;color:#1a1a1a;margin-left:2rem}.welcome-container{overflow:hidden;height:100vh;display:flex;flex-direction:column;position:relative}.welcome-hero{height:50vh;width:100%;position:relative}.welcome-hero img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.welcome-content{background:#fff5d5;padding:0 1.5rem 1.5rem;border-radius:30px 30px 0 0;position:absolute;bottom:0;width:100%;min-height:58vh;display:flex;flex-direction:column;justify-content:space-evenly;align-items:center;text-align:center}.welcome-text{text-align:center;max-width:400px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding-top:15px}.welcome-text img{height:60px;margin-bottom:20px}.welcome-title{font-size:1.8rem;font-weight:700;color:#1a1a1a;display:inline-block;width:-moz-fit-content;width:fit-content;line-height:1.2}.welcome-description{font-size:1rem;color:#666;line-height:1.5}.welcome-progress{display:flex;justify-content:center;gap:.5rem;margin-bottom:.8rem}.progress-dot{width:8px;height:8px;border-radius:50%;background:#e0e0e0;transition:all .3s ease;cursor:pointer}.progress-dot.active{background:var(--primary);transform:scale(1.2)}.welcome-actions{display:flex;flex-direction:column;align-items:center;gap:1rem}.welcome-primary-btn{background:var(--primary);color:#1a1a1a;border:none;padding:1rem 2rem;border-radius:12px;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px #fbb0404d;cursor:pointer;width:100%;max-width:280px}.welcome-primary-btn:hover{background:#f9a825;transform:translateY(-2px);box-shadow:0 6px 16px #fbb04066}.welcome-secondary-btn{background:transparent;color:#1a1a1a;border:2px solid var(--primary);padding:1rem 2rem;border-radius:12px;font-weight:600;font-size:1rem;transition:all .3s ease;cursor:pointer;width:100%;max-width:280px}.welcome-secondary-btn:hover{background:var(--primary);color:#1a1a1a}@media (min-width: 768px){.welcome-container{max-width:400px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 20px 40px #0000001a}.welcome-hero{height:250px}.welcome-content{border-radius:20px 20px 0 0;padding:2rem 2rem 1.5rem}}.top-nav-mobile{background:#fff;border-bottom:1px solid var(--bg-muted)}.nav-mobile{display:none;align-items:center;justify-content:space-between;padding:var(--space-3)}.nav-mobile .nav-left{display:flex;align-items:center;width:100%;justify-content:space-between;flex:1}.nav-black-bar{width:4px;height:40px;background:#000;margin-right:var(--space-3);border-radius:2px}.nav-mobile .nav-brand{display:flex;align-items:center;text-decoration:none;color:inherit}.nav-avatar{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-lg);margin-right:var(--space-3)}.nav-mobile .nav-brand-text{display:flex;flex-direction:column}.nav-mobile .nav-brand-title{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:400}.nav-mobile .nav-brand-subtitle{font-size:var(--font-size-lg);color:var(--text-primary);font-weight:600}.nav-mobile .nav-right{display:flex;align-items:center;gap:var(--space-3)}.nav-mobile .nav-icon-btn{width:40px;height:40px;border:none;background:transparent;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.nav-mobile .nav-icon-btn:hover{background:var(--bg-muted)}@media (max-width: 768px){.nav-desktop{display:none}.nav-mobile{display:flex}.nav-black-bar{width:3px;height:36px}.nav-avatar{width:36px;height:36px;font-size:var(--font-size-base)}.nav-mobile .nav-brand-title{font-size:var(--font-size-xs)}.nav-mobile .nav-brand-subtitle{font-size:var(--font-size-base)}.nav-mobile .nav-icon-btn{width:36px;height:36px}}.nav-mobile-brand-text{font-weight:700;font-size:large}.userProfileLabel{color:var(--text-primary);font-size:var(--font-size-base);font-weight:700}.challengesDiv{background:#fff;padding:5px;overflow:hidden;box-sizing:border-box;width:100%}.divIconContainer{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;width:100%;height:-moz-fit-content;height:fit-content;gap:10px;padding-bottom:10px}.otp-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease}.otp-overlay.show{opacity:1;visibility:visible}.otp-modal{background:#fff;border-radius:20px 20px 0 0;padding:0;width:100%;max-width:100%;box-shadow:0 -4px 20px #00000026;position:relative;min-height:550px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.otp-modal.expanded{border-radius:0;max-height:100vh;min-height:100vh}.otp-drag-handle{width:40px;height:4px;background:#d1d5db;border-radius:2px;margin:12px auto 0;cursor:grab}.otp-drag-handle:active{cursor:grabbing}.otp-content{padding:24px;height:100%;display:flex;flex-direction:column;justify-content:space-between;min-height:0;overflow-y:auto}.otp-header{text-align:center;margin-bottom:32px;flex-shrink:0}.otp-back-btn{position:absolute;top:20px;left:20px;background:none;border:none;font-size:24px;color:#000;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s;z-index:10}.otp-back-btn:hover{background-color:#f3f4f6}.otp-header h2{font-size:28px;font-weight:700;color:#000;margin:0 0 12px}.otp-header p{font-size:16px;color:#000;margin:0;line-height:1.5}.otp-input-group{display:flex;gap:16px;justify-content:center;margin-bottom:32px;flex-shrink:0}.otp-input{width:60px;height:60px;border:2px solid var(--primary);border-radius:12px;text-align:center;font-size:24px;font-weight:700;color:#000;transition:all .2s ease;outline:none}.otp-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #f59e0b1a}.otp-input.filled{border-color:var(--primary)}.otp-verify-btn{width:100%;background:var(--primary);color:#000;border:none;border-radius:12px;padding:18px;font-size:18px;font-weight:700;cursor:pointer;transition:all .2s ease;margin-bottom:16px}.otp-verify-btn:hover:not(:disabled){background:var(--primary);transform:translateY(-1px)}.otp-verify-btn:disabled{background:#e5e7eb;cursor:not-allowed;transform:none}.otp-resend-btn{width:100%;background:none;color:#000;border:2px solid var(--primary);border-radius:12px;padding:16px;font-size:18px;font-weight:700;cursor:pointer;transition:all .2s ease}.otp-resend-btn:hover{background:var(--primary);color:#fff}.otp-resend-btn:disabled{background:#e5e7eb;color:#9ca3af;border-color:#e5e7eb;cursor:not-allowed}.otp-buttons-container{margin-top:auto;flex-shrink:0}.otp-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px;border-radius:8px;font-size:14px;margin-bottom:16px;text-align:center}.otp-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a;padding:12px;border-radius:8px;font-size:14px;margin-bottom:16px;text-align:center}.otp-loading{display:flex;align-items:center;justify-content:center;gap:8px;color:#6b7280;font-size:14px;margin-bottom:16px}.otp-loading-spinner{width:16px;height:16px;border:2px solid #e5e7eb;border-top:2px solid var(--primary, #3b82f6);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 480px){.otp-content{padding:20px}.otp-input{width:50px;height:50px;font-size:20px}.otp-input-group{gap:12px;margin-bottom:24px}.otp-header{margin-bottom:24px}.otp-header h2{font-size:24px}.otp-header p{font-size:14px}.otp-modal{max-height:90vh}}.activity-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:10px;transition:all .2s ease;box-shadow:0 1px 3px #0000000d}.activity-card:hover{border-color:var(--primay);box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.activity-card-disabled{opacity:.6;cursor:not-allowed;background:#f9fafb}.activity-card-disabled:hover{border-color:#e5e7eb;box-shadow:0 1px 3px #0000000d;transform:none}.activity-header{display:flex;gap:16px;margin-bottom:16px}.activity-iconword{flex-shrink:0;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.activity-info{flex:1}.activity-title{font-size:18px;font-weight:600;color:var(--text-primary, #111827);margin-bottom:8px}.activity-description{font-size:14px;color:var(--text-secondary);line-height:1.5;margin-bottom:10px}.activity-features{display:flex;flex-wrap:wrap;gap:8px}.feature-tag{background:var(--primary, #3b82f6);background:linear-gradient(135deg,var(--primary, #3b82f6) 0%,var(--accent, #06b6d4) 100%);color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.activity-footer{display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid #f3f4f6}.activity-duration{font-size:14px;color:var(--text-secondary, #6b7280);font-weight:500}.activity-btn{background:var(--primary, #3b82f6);background:linear-gradient(135deg,var(--primary, #3b82f6) 0%,var(--accent, #06b6d4) 100%);color:#000;border:none;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.activity-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.activity-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 480px){.activity-card{padding:16px}.activity-header{gap:12px}.activity-icon{width:40px;height:40px}.activity-title{font-size:16px}.activity-description{font-size:13px}.activity-footer{flex-direction:column;gap:12px;align-items:stretch}.activity-btn{width:100%;padding:12px}}.otp-handler button{opacity:.5;position:absolute;top:0;right:90%;left:0;font-size:small}.titleContainer{font-size:1rem;font-weight:700}
