@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-900:oklch(41.4% .112 45.904);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-800:oklch(42.4% .199 265.638);--color-indigo-600:oklch(51.1% .262 276.966);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--blur-md:12px;--blur-2xl:40px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:#f8fafc;--color-foreground:#0f1729;--color-card:#fff;--color-card-foreground:#0f1729;--color-primary:#3c83f6;--color-primary-foreground:#f8fafc;--color-secondary:#f1f5f9;--color-secondary-foreground:#0f1729;--color-muted:#f1f5f9;--color-muted-foreground:#65758b;--color-accent:#fbbd23;--color-accent-foreground:#0f1729;--color-destructive:#ef4343;--color-destructive-foreground:#f8fafc;--color-border:#e1e7ef;--color-input:#e1e7ef;--color-ring:#3c83f6;--animate-accordion-down:accordion-down .2s ease-out;--animate-accordion-up:accordion-up .2s ease-out}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing)*4)}.top-14{top:calc(var(--spacing)*14)}.top-20{top:calc(var(--spacing)*20)}.top-full{top:100%}.right-0{right:calc(var(--spacing)*0)}.right-3{right:calc(var(--spacing)*3)}.right-4{right:calc(var(--spacing)*4)}.right-10{right:calc(var(--spacing)*10)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-20{bottom:calc(var(--spacing)*20)}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing)*3)}.left-10{left:calc(var(--spacing)*10)}.-z-10{z-index:-10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-mx-2{margin-inline:calc(var(--spacing)*-2)}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-12{margin-top:calc(var(--spacing)*12)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.ml-2{margin-left:calc(var(--spacing)*2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-11{height:calc(var(--spacing)*11)}.h-14{height:calc(var(--spacing)*14)}.h-16{height:calc(var(--spacing)*16)}.h-48{height:calc(var(--spacing)*48)}.h-64{height:calc(var(--spacing)*64)}.h-72{height:calc(var(--spacing)*72)}.h-96{height:calc(var(--spacing)*96)}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing)*1)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-48{width:calc(var(--spacing)*48)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-96{width:calc(var(--spacing)*96)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.min-w-\[140px\]{min-width:140px}.min-w-\[180px\]{min-width:180px}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{-moz-column-gap:calc(var(--spacing)*6);column-gap:calc(var(--spacing)*6)}.gap-y-1{row-gap:calc(var(--spacing)*1)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-amber-400{border-color:var(--color-amber-400)}.border-background\/10{border-color:#f8fafc1a}@supports (color:color-mix(in lab,red,red)){.border-background\/10{border-color:color-mix(in oklab,var(--color-background)10%,transparent)}}.border-border{border-color:var(--color-border)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-input{border-color:var(--color-input)}.border-primary\/30{border-color:#3c83f64d}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--color-primary)30%,transparent)}}.border-purple-600{border-color:var(--color-purple-600)}.border-red-200{border-color:var(--color-red-200)}.border-white\/30{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.border-white\/30{border-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.bg-accent{background-color:var(--color-accent)}.bg-accent\/10{background-color:#fbbd231a}@supports (color:color-mix(in lab,red,red)){.bg-accent\/10{background-color:color-mix(in oklab,var(--color-accent)10%,transparent)}}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/10{background-color:color-mix(in oklab,var(--color-amber-500)10%,transparent)}}.bg-background{background-color:var(--color-background)}.bg-background\/10{background-color:#f8fafc1a}@supports (color:color-mix(in lab,red,red)){.bg-background\/10{background-color:color-mix(in oklab,var(--color-background)10%,transparent)}}.bg-background\/80{background-color:#f8fafccc}@supports (color:color-mix(in lab,red,red)){.bg-background\/80{background-color:color-mix(in oklab,var(--color-background)80%,transparent)}}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.bg-card{background-color:var(--color-card)}.bg-destructive{background-color:var(--color-destructive)}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500)10%,transparent)}}.bg-foreground{background-color:var(--color-foreground)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-muted-foreground{background-color:var(--color-muted-foreground)}.bg-muted\/30{background-color:#f1f5f94d}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--color-muted)30%,transparent)}}.bg-primary{background-color:var(--color-primary)}.bg-primary\/10{background-color:#3c83f61a}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.bg-purple-500\/10{background-color:#ac4bff1a}@supports (color:color-mix(in lab,red,red)){.bg-purple-500\/10{background-color:color-mix(in oklab,var(--color-purple-500)10%,transparent)}}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-secondary{background-color:var(--color-secondary)}.bg-secondary\/30{background-color:#f1f5f94d}@supports (color:color-mix(in lab,red,red)){.bg-secondary\/30{background-color:color-mix(in oklab,var(--color-secondary)30%,transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.bg-white\/5{background-color:color-mix(in oklab,var(--color-white)5%,transparent)}}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-amber-500{--tw-gradient-from:var(--color-amber-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-primary{--tw-gradient-from:var(--color-primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-purple-600{--tw-gradient-from:var(--color-purple-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-amber-600{--tw-gradient-to:var(--color-amber-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-indigo-600{--tw-gradient-to:var(--color-indigo-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-primary\/80{--tw-gradient-to:#3c83f6cc}@supports (color:color-mix(in lab,red,red)){.to-primary\/80{--tw-gradient-to:color-mix(in oklab,var(--color-primary)80%,transparent)}}.to-primary\/80{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.fill-accent{fill:var(--color-accent)}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-24{padding-top:calc(var(--spacing)*24)}.pr-10{padding-right:calc(var(--spacing)*10)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-10{padding-left:calc(var(--spacing)*10)}.text-center{text-align:center}.text-end{text-align:end}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.whitespace-nowrap{white-space:nowrap}.text-accent{color:var(--color-accent)}.text-amber-500{color:var(--color-amber-500)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-background{color:var(--color-background)}.text-background\/60{color:#f8fafc99}@supports (color:color-mix(in lab,red,red)){.text-background\/60{color:color-mix(in oklab,var(--color-background)60%,transparent)}}.text-background\/70{color:#f8fafcb3}@supports (color:color-mix(in lab,red,red)){.text-background\/70{color:color-mix(in oklab,var(--color-background)70%,transparent)}}.text-blue-600{color:var(--color-blue-600)}.text-card-foreground{color:var(--color-card-foreground)}.text-destructive-foreground{color:var(--color-destructive-foreground)}.text-emerald-600{color:var(--color-emerald-600)}.text-foreground{color:var(--color-foreground)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-900{color:var(--color-gray-900)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-800{color:var(--color-green-800)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-primary-foreground\/90{color:#f8fafce6}@supports (color:color-mix(in lab,red,red)){.text-primary-foreground\/90{color:color-mix(in oklab,var(--color-primary-foreground)90%,transparent)}}.text-primary\/30{color:#3c83f64d}@supports (color:color-mix(in lab,red,red)){.text-primary\/30{color:color-mix(in oklab,var(--color-primary)30%,transparent)}}.text-purple-600{color:var(--color-purple-600)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-secondary-foreground{color:var(--color-secondary-foreground)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.accent-foreground{accent-color:var(--color-foreground)}.opacity-60{opacity:.6}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-3{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-amber-100\/50{--tw-shadow-color:#fef3c680}@supports (color:color-mix(in lab,red,red)){.shadow-amber-100\/50{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-amber-100)50%,transparent)var(--tw-shadow-alpha),transparent)}}.shadow-primary\/30{--tw-shadow-color:#3c83f64d}@supports (color:color-mix(in lab,red,red)){.shadow-primary\/30{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-primary)30%,transparent)var(--tw-shadow-alpha),transparent)}}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-2xl{--tw-blur:blur(var(--blur-2xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-filter{-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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}@media(hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\/btn\:translate-x-1:is(:where(.group\/btn):hover *){--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:border-primary:hover{border-color:var(--color-primary)}.hover\:border-primary\/30:hover{border-color:#3c83f64d}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/30:hover{border-color:color-mix(in oklab,var(--color-primary)30%,transparent)}}.hover\:border-primary\/50:hover{border-color:#3c83f680}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab,var(--color-primary)50%,transparent)}}.hover\:bg-accent:hover{background-color:var(--color-accent)}.hover\:bg-destructive\/90:hover{background-color:#ef4343e6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--color-destructive)90%,transparent)}}.hover\:bg-green-100:hover{background-color:var(--color-green-100)}.hover\:bg-primary:hover{background-color:var(--color-primary)}.hover\:bg-primary\/10:hover{background-color:#3c83f61a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/10:hover{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.hover\:bg-primary\/90:hover{background-color:#3c83f6e6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--color-primary)90%,transparent)}}.hover\:bg-secondary:hover{background-color:var(--color-secondary)}.hover\:bg-secondary\/80:hover{background-color:#f1f5f9cc}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--color-secondary)80%,transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\:bg-white\/90:hover{background-color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/90:hover{background-color:color-mix(in oklab,var(--color-white)90%,transparent)}}.hover\:from-amber-600:hover{--tw-gradient-from:var(--color-amber-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-amber-700:hover{--tw-gradient-to:var(--color-amber-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:text-accent-foreground:hover{color:var(--color-accent-foreground)}.hover\:text-background:hover{color:var(--color-background)}.hover\:text-blue-800:hover{color:var(--color-blue-800)}.hover\:text-foreground:hover{color:var(--color-foreground)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:text-primary\/80:hover{color:#3c83f6cc}@supports (color:color-mix(in lab,red,red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab,var(--color-primary)80%,transparent)}}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-primary\/25:hover{--tw-shadow-color:#3c83f640}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-primary\/25:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-primary)25%,transparent)var(--tw-shadow-alpha),transparent)}}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-purple-500:focus{--tw-ring-color:var(--color-purple-500)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:var(--animate-accordion-up)}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:var(--animate-accordion-down)}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}}@media(min-width:48rem){.md\:col-span-1{grid-column:span 1/span 1}.md\:mb-16{margin-bottom:calc(var(--spacing)*16)}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-20{height:calc(var(--spacing)*20)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:p-12{padding:calc(var(--spacing)*12)}.md\:py-12{padding-block:calc(var(--spacing)*12)}.md\:py-16{padding-block:calc(var(--spacing)*16)}.md\:py-24{padding-block:calc(var(--spacing)*24)}.md\:pt-32{padding-top:calc(var(--spacing)*32)}.md\:pb-8{padding-bottom:calc(var(--spacing)*8)}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media(min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-inline:calc(var(--spacing)*8)}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}@media(prefers-color-scheme:dark){.dark\:border-amber-500{border-color:var(--color-amber-500)}.dark\:border-green-800{border-color:var(--color-green-800)}.dark\:bg-amber-900\/30{background-color:#7b33064d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-900\/30{background-color:color-mix(in oklab,var(--color-amber-900)30%,transparent)}}.dark\:bg-green-900\/30{background-color:#0d542b4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-900\/30{background-color:color-mix(in oklab,var(--color-green-900)30%,transparent)}}.dark\:text-amber-400{color:var(--color-amber-400)}.dark\:text-green-200{color:var(--color-green-200)}.dark\:text-green-300{color:var(--color-green-300)}.dark\:text-green-400{color:var(--color-green-400)}.dark\:shadow-amber-900\/30{--tw-shadow-color:#7b33064d}@supports (color:color-mix(in lab,red,red)){.dark\:shadow-amber-900\/30{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-amber-900)30%,transparent)var(--tw-shadow-alpha),transparent)}}@media(hover:hover){.dark\:hover\:bg-green-800:hover{background-color:var(--color-green-800)}}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.dark{--color-background:#0f1729;--color-foreground:#f8fafc;--color-card:#141f38;--color-card-foreground:#f8fafc;--color-popover:#141f38;--color-popover-foreground:#f8fafc;--color-primary:#3c83f6;--color-primary-foreground:#f8fafc;--color-secondary:#1b294b;--color-secondary-foreground:#f8fafc;--color-muted:#1b294b;--color-muted-foreground:#94a3b8;--color-accent:#fbbd23;--color-accent-foreground:#0f1729;--color-destructive:#ef4343;--color-destructive-foreground:#f8fafc;--color-border:#22345e;--color-input:#22345e;--color-ring:#3c83f6}html{scroll-behavior:smooth}*{border-color:var(--color-border)}body{background-color:var(--color-background);color:var(--color-foreground);-webkit-font-smoothing:antialiased;font-feature-settings:"rlig" 1,"calt" 1}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.7}}.animate-float{animation:6s ease-in-out infinite float}.animate-pulse-soft{animation:3s ease-in-out infinite pulse-soft}.gradient-text{-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#3c83f6,#fbbd23 40%,#85b2f9 50%,#fcd269,#3c83f6 60%,#fbbd23) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:3s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}50%{background-position:0 0}to{background-position:100% 0}}:root{--tcf-bg:#1a5276;--tcf-header-bg:#f5f7fa;--tcf-nav-blue:#3498db;--tcf-nav-light:#5dade2;--tcf-white:#fff;--tcf-text:#1d1d1f;--tcf-text-secondary:#6e6e73;--tcf-text-blue:#2980b9;--tcf-pink:#e91e8c;--tcf-red:#ff3b30;--tcf-green:#34c759;--tcf-yellow:#fc0;--tcf-border:#d2d2d7}.app-container{background:var(--tcf-bg);-webkit-font-smoothing:antialiased;flex-direction:column;height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;display:flex}.header{background:var(--tcf-header-bg);border-bottom:1px solid var(--tcf-border);align-items:center;gap:12px;padding:10px 20px;display:flex}.header-icon{-o-object-fit:cover;object-fit:cover;border-radius:50%;width:40px;height:40px}.header-title{color:var(--tcf-text);letter-spacing:-.2px;font-size:17px;font-weight:600}.header-logo.clickable,.header-text.clickable{cursor:pointer;transition:opacity .2s}.header-logo.clickable:hover,.header-text.clickable:hover{opacity:.7}.subtitle-bar{background:linear-gradient(180deg,var(--tcf-nav-light)0%,var(--tcf-nav-blue)100%);color:#fff;padding:8px 20px;font-size:15px;font-weight:600}.main-content{flex:1;align-items:stretch;gap:16px;min-height:0;padding:16px;display:flex}.question-nav{flex-direction:column;width:200px;min-width:200px;display:flex}.nav-header-row{background:var(--tcf-white);border-radius:var(--radius-lg)var(--radius-lg)0 0;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex}.nav-prev-num,.nav-next-num{color:var(--tcf-text-blue);text-align:center;min-width:28px;font-size:16px;font-weight:500}.nav-current-num{color:var(--tcf-text);text-align:center;min-width:40px;font-size:28px;font-weight:700}.nav-arrow-btn{background:var(--tcf-green);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:32px;height:28px;transition:transform .15s,opacity .15s;display:flex}.nav-arrow-btn:hover{transform:scale(1.05)}.nav-arrow-btn:active{transform:scale(.95)}.nav-arrow-btn.disabled{background:var(--tcf-border);cursor:not-allowed;opacity:.6}.nav-arrow-btn .arrow-icon{color:#1f2937;font-size:18px;font-weight:900}.question-list{background:linear-gradient(180deg,var(--tcf-nav-light)0%,var(--tcf-nav-blue)100%);flex-direction:column;flex:1;gap:4px;padding:10px;display:flex;overflow-y:auto}.question-list-full{border-radius:0 0 var(--radius-md)var(--radius-md)}.question-list::-webkit-scrollbar{width:6px}.question-list::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.question-item{cursor:pointer;color:#1a1a1a;background:#ffffff40;border-radius:6px;justify-content:center;align-items:center;min-height:28px;padding:6px 12px;font-size:15px;font-weight:700;transition:all .15s;display:flex;position:relative}.question-item:hover{background:#fff6}.question-item.active{color:#000;background:#ffffff59}.question-item.answered{color:#fff;background:#1a5276bf}.item-number{z-index:1;position:relative}.item-arrow{color:#fff;font-size:14px;font-weight:700;position:absolute}.item-arrow.left{left:10px}.item-arrow.right{right:10px}.nav-section-label{background:linear-gradient(180deg,var(--tcf-nav-blue)0%,#2980b9 100%);text-align:center;color:#fff;border-radius:0 0 var(--radius-md)var(--radius-md);padding:10px;font-size:12px;font-weight:600}.question-area{background:var(--tcf-white);border-radius:var(--radius-lg);flex-direction:column;flex:1;padding:24px;display:flex;overflow-y:auto}.instruction-box{color:#fff;border-radius:var(--radius-sm);background:linear-gradient(135deg,#ff6b6b,#ee5252);margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500}.question-image-container{border-radius:var(--radius-md)var(--radius-md)0 0;background:#f5f5f7;justify-content:center;align-items:flex-start;min-height:100px;max-height:500px;padding:24px 28px;display:flex;position:relative;overflow:auto}.question-image-container::-webkit-scrollbar{width:10px;height:10px}.question-image-container::-webkit-scrollbar-track{background:#e5e5ea;border-radius:5px}.question-image-container::-webkit-scrollbar-thumb{background:#999;border-radius:5px}.question-image-container::-webkit-scrollbar-thumb:hover{background:#666}.resize-divider{cursor:ns-resize;border-radius:0 0 var(--radius-sm)var(--radius-sm);background:linear-gradient(#e5e5ea,#f5f5f7);justify-content:center;align-items:center;height:12px;margin:0 0 12px;transition:background .15s;display:flex}.resize-divider:hover{background:linear-gradient(#d5d5da,#e5e5ea)}.resize-handle{color:#999;letter-spacing:4px;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:14px;line-height:1}.resize-divider:hover .resize-handle{color:#666}.question-image{-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-sm);width:auto;max-width:none;height:auto;transition:transform .2s,filter .3s}.question-image.enhanced{filter:contrast(1.15)saturate(1.1)brightness(1.02);image-rendering:-webkit-optimize-contrast}.question-content{background:var(--tcf-white);border:2px solid var(--tcf-nav-blue);border-radius:var(--radius-md);padding:16px 20px}.question-header-row{align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.question-number-label{color:var(--tcf-text);flex-shrink:0;font-size:28px;font-weight:700}.question-text{color:var(--tcf-text);font-size:15px;font-weight:600;line-height:1.5}.options-container{flex-direction:column;gap:4px;display:flex}.option-item{border-radius:var(--radius-sm);cursor:pointer;background:#f5f5f7;border:2px solid #0000;align-items:center;padding:6px 12px;transition:all .15s;display:flex}.option-item:hover{border-color:var(--tcf-nav-blue);background:#e8f4fd}.option-item.selected{border-color:var(--tcf-nav-blue);background:#d1e7fd}.option-item.correct{border-color:var(--tcf-green);background:#d1f2d9}.option-item.incorrect{border-color:var(--tcf-red);background:#fdd}.option-radio{cursor:pointer;width:16px;height:16px;accent-color:var(--tcf-nav-blue);margin-right:10px}.option-label{color:var(--tcf-text);margin-right:10px;font-size:16px;font-weight:700}.option-text{color:var(--tcf-text);flex:1;font-size:15px}.submit-button{background:var(--tcf-green);color:#fff;cursor:pointer;border:none;border-radius:980px;margin:20px auto 0;padding:12px 48px;font-size:17px;font-weight:600;transition:all .2s;display:block}.submit-button:hover{filter:brightness(1.05);transform:scale(1.02)}.submit-button:active{transform:scale(.98)}.submit-button:disabled{background:var(--tcf-border);cursor:not-allowed;transform:none}.user-info{background:var(--tcf-header-bg);border:1px solid var(--tcf-border);border-radius:var(--radius-md);flex-direction:column;gap:8px;width:200px;min-width:200px;padding:16px;display:flex}.user-avatar-box{background:var(--tcf-nav-blue);border-radius:var(--radius-sm);justify-content:center;padding:12px;display:flex}.user-avatar{border-radius:var(--radius-sm);background:#fff;width:72px;height:72px}.user-field{padding:4px 0}.user-field-label{color:var(--tcf-text-blue);font-size:12px;font-weight:500}.user-field-value{color:var(--tcf-text);min-height:20px;font-size:15px;font-weight:600}.datetime-box{background:var(--tcf-white);border:1px solid var(--tcf-nav-blue);border-radius:var(--radius-sm);text-align:center;color:var(--tcf-text);margin-top:auto;padding:8px 10px;font-size:13px}.timer-container{background:var(--tcf-white);border:1px solid var(--tcf-nav-blue);border-radius:var(--radius-sm);text-align:center;padding:10px 12px}.timer-label{color:var(--tcf-text-blue);margin-bottom:4px;font-size:12px}.timer-value{color:var(--tcf-text);margin-bottom:8px;font-size:14px;font-weight:600}.timer-progress{background:#e5e5ea;border-radius:7px;height:14px;overflow:hidden}.progress-bar{border-radius:7px;height:100%;transition:width 1s linear,background-color .3s}.progress-bar.green{background:var(--tcf-green)}.progress-bar.yellow{background:var(--tcf-yellow)}.progress-bar.red{background:var(--tcf-red)}.bottom-bar{background:var(--tcf-header-bg);border-top:1px solid var(--tcf-border);justify-content:center;align-items:center;gap:24px;padding:8px 20px;display:flex}.bottom-info{color:var(--tcf-text);text-align:center;font-size:15px;font-weight:500}.answer-count{font-weight:700}.exit-button{border-radius:var(--radius-sm);cursor:pointer;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s}.exit-button.pink{background:var(--tcf-white);color:var(--tcf-nav-blue);border:2px solid var(--tcf-nav-blue)}.exit-button.pink:hover{background:var(--tcf-nav-blue);color:#fff}.exit-button.red{color:var(--tcf-pink);border:2px solid var(--tcf-pink);background:#fff0f5}.exit-button.red:hover{background:var(--tcf-pink);color:#fff}.analysis-view{padding-bottom:20px}.result-badge{border-radius:980px;margin-bottom:16px;padding:10px 24px;font-size:15px;font-weight:600;display:inline-block}.result-badge.correct{background:var(--tcf-green);color:#fff}.result-badge.incorrect{background:var(--tcf-red);color:#fff}.answer-summary{background:#f5f5f7;border-radius:8px;gap:16px;margin-top:12px;padding:10px;font-size:14px;display:flex}.answer-correct{color:#34c759;font-weight:700}.answer-incorrect{color:#ff3b30;font-weight:700}.passage-section{border:2px solid var(--tcf-nav-blue);border-radius:var(--radius-md);margin-top:10px;overflow:hidden}.passage-header{background:linear-gradient(135deg,var(--tcf-nav-blue)0%,var(--tcf-nav-light)100%);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex}.passage-header.clickable{cursor:pointer;transition:filter .2s}.passage-header.clickable:hover{filter:brightness(1.1)}.collapse-arrow{opacity:.8;margin-left:8px;font-size:12px;transition:transform .3s}.collapse-arrow.expanded{transform:rotate(180deg)}.passage-title{align-items:center;gap:6px;font-size:16px;font-weight:600;display:flex}.passage-title.clickable{cursor:pointer}.passage-title.clickable:hover{opacity:.9}.passage-title .title-icon{filter:drop-shadow(0 2px 3px #0003);font-size:22px}.passage-title .word-count-badge{background:#fff3;border-radius:12px;margin-left:12px;padding:3px 10px;font-size:12px;font-weight:500}.passage-actions{gap:10px;display:flex}.analysis-toggle{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.analysis-toggle input{display:none}.toggle-slider{background:#f5d76e;border-radius:12px;width:44px;height:24px;transition:all .3s;position:relative}.toggle-slider:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.analysis-toggle input:checked+.toggle-slider{background:var(--tcf-green)}.analysis-toggle input:checked+.toggle-slider:after{background:#fff;left:22px}.toggle-label{color:#fff;text-shadow:0 1px 3px #0000004d;font-size:15px;font-weight:800}.analysis-toggle input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.passage-content{background:#fff;min-height:60px;padding:12px 16px}.passage-plain{color:var(--tcf-text);white-space:pre-wrap;font-size:15px;line-height:1.8}.passage-content .translation-box{border-radius:var(--radius-sm);color:#2e7d32;background:#e8f5e9;border-left:4px solid #4caf50;margin-top:10px;padding:10px 14px;font-size:14px;line-height:1.7}.passage-content .translation-box h4{margin:0 0 8px;font-size:13px;font-weight:600}.passage-empty{color:#999;text-align:center;padding:40px}.passage-loading{color:#666;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.passage-immersive{flex-direction:column;display:flex}.immersive-line{background:linear-gradient(90deg,#fffdf5,#fffefa);border-radius:8px;margin:8px -20px;padding:16px 20px}.immersive-line.key-line{background:linear-gradient(90deg,#fff8f0,#fffcfa)}.line-original{color:#1a1a1a;font-size:16px;font-weight:500;line-height:1.7}.key-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#ff6b00,#ff8c00);border-radius:12px;margin-left:10px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block;box-shadow:0 2px 4px #ff6b004d}.line-translation{color:#2e7d32;background:linear-gradient(90deg,#f1f8e9,#fafff7);border-left:3px solid #66bb6a;border-radius:0 6px 6px 0;margin-top:8px;padding:8px 12px;font-size:16px;line-height:1.6}.line-annotation{color:#333;background:#f8f9fa;border-radius:6px;align-items:center;gap:8px;margin-top:10px;padding:8px 12px;font-size:15px;display:inline-flex}.annotation-icon{font-size:16px;line-height:1}.keyword-highlight{cursor:help;border-radius:2px;padding:0 2px;transition:all .2s}.keyword-highlight:hover{background:#0000000d}.line-keywords{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.keyword-item{background:#fff;border:1px solid #e0e0e0;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:all .2s;display:inline-flex;box-shadow:0 1px 3px #0000000d}.keyword-item:hover{border-color:#06c;box-shadow:0 2px 6px #0066cc26}.keyword-item strong{color:#06c;font-weight:600}.keyword-meaning{color:#666}.keyword-meaning:before{content:"→ ";color:#999}.analysis-card-content .section-title{color:var(--tcf-nav-blue);margin-top:12px;margin-bottom:6px;font-weight:700}.analysis-card-content.loading{color:var(--tcf-text-secondary);justify-content:center;align-items:center;padding:24px;display:flex}.loading-dots{gap:6px;display:flex}.loading-dots span{background:var(--tcf-nav-blue);border-radius:50%;width:10px;height:10px;animation:1.4s ease-in-out infinite both bounce}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.typing-cursor{color:var(--tcf-nav-blue);font-weight:700;animation:.8s infinite blink;display:inline-block}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.error-text{color:var(--tcf-red);border-radius:var(--radius-sm);background:#fff0f0;padding:10px;font-size:13px}.navigation-buttons{justify-content:center;gap:16px;margin-top:20px;display:flex}.nav-button{background:var(--tcf-nav-blue);color:#fff;cursor:pointer;border:none;border-radius:980px;padding:12px 28px;font-size:15px;font-weight:600;transition:all .2s}.nav-button:hover{filter:brightness(1.05);transform:scale(1.02)}.nav-button:active{transform:scale(.98)}.nav-button:disabled{background:var(--tcf-border);cursor:not-allowed;transform:none}.language-selector{justify-content:flex-end;align-items:center;gap:8px;margin-bottom:12px;display:flex}.language-selector select{border-radius:var(--radius-sm);border:1px solid var(--tcf-border);cursor:pointer;color:#333;background:#fff;padding:6px 12px;font-size:13px}.language-selector select option{color:#333;background:#fff}@media(max-width:1024px){.main-content{flex-direction:column;gap:12px;padding:12px}.question-nav,.user-info{width:100%;min-width:auto}.question-list{flex-flow:wrap;gap:6px;padding:8px}.question-item{flex:none;min-width:40px;padding:8px 12px}.user-info{flex-flow:wrap;gap:12px}.user-avatar-box{width:auto}.user-field{flex:1;min-width:120px}}.subtitle-bar.listening{background:linear-gradient(180deg,var(--tcf-nav-light)0%,var(--tcf-nav-blue)100%)}.audio-player-container{margin:8px 0;padding:0}.audio-player{border-radius:var(--radius-md);background:linear-gradient(135deg,#667eea,#764ba2);align-items:center;gap:12px;padding:10px 16px;display:flex;box-shadow:0 2px 10px #667eea40}.audio-player.played{background:linear-gradient(135deg,#a8a8a8,#888)}.play-button{cursor:pointer;background:#fff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;box-shadow:0 2px 6px #00000026}.play-button:hover:not(.disabled){transform:scale(1.05);box-shadow:0 4px 12px #0003}.play-button.disabled{cursor:not-allowed;opacity:.7}.play-button.playing{animation:1.5s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.play-icon{color:#667eea;margin-left:2px;font-size:18px}.pause-icon{color:#667eea;font-size:16px}.check-icon{color:#34c759;font-size:18px}.audio-info{flex-direction:column;flex:1;gap:4px;display:flex}.audio-label{color:#fff;font-size:13px;font-weight:500}.audio-progress-bar{background:#ffffff4d;border-radius:2px;height:4px;overflow:hidden}.audio-progress-fill{background:#fff;border-radius:2px;height:100%;transition:width .1s linear}.audio-time{color:#fffc;font-family:monospace;font-size:11px}.sound-wave{align-items:center;gap:4px;min-width:80px;height:28px;margin-left:auto;padding-left:16px;display:flex}.sound-wave .bar{background:#ffffffe6;border-radius:2px;width:4px;height:10px}.sound-wave.playing .bar{animation:.6s ease-in-out infinite soundWave}.sound-wave .bar:first-child{animation-delay:0s}.sound-wave .bar:nth-child(2){animation-delay:80ms}.sound-wave .bar:nth-child(3){animation-delay:.16s}.sound-wave .bar:nth-child(4){animation-delay:.24s}.sound-wave .bar:nth-child(5){animation-delay:.32s}.sound-wave .bar:nth-child(6){animation-delay:.4s}.sound-wave .bar:nth-child(7){animation-delay:.48s}@keyframes soundWave{0%,to{opacity:.5;height:10px}50%{opacity:1;height:26px}}.audio-player-container.no-image-below{margin-bottom:24px}.options-container.compact{gap:1px}.options-container.compact .option-item{min-height:24px;padding:2px 8px}.options-container.compact .option-label{font-size:14px}.options-container.compact .option-text{font-size:13px}.options-container.compact .option-radio{width:14px;height:14px;margin-right:6px}.question-content.with-image{margin-top:0;padding:8px 12px}.question-content.with-image .question-header-row{margin-bottom:4px}.question-content.with-image .question-number-label{font-size:20px}.question-content.with-image .question-text{font-size:13px}.question-image-container+.resize-divider{height:8px;margin:0 0 4px}.question-content.with-image+.submit-button{margin:8px auto 0;padding:8px 36px;font-size:15px}.question-content.no-image{margin-top:8px;padding:20px 24px}.question-content.no-image .options-container{gap:8px}.question-content.no-image .option-item{padding:10px 16px}.dialogue-format{flex-direction:column;gap:8px;display:flex}.dialogue-line{align-items:flex-start;line-height:1.6;display:flex}.dialogue-dash{color:#667eea;white-space:pre;flex-shrink:0}.dialogue-line.option-line{padding-left:0}.dialogue-line.option-line:before{content:none}.home-page-v2{background:#0a0a1a;min-height:100vh;overflow-x:hidden}.home-header-v2{z-index:1000;padding:16px 24px;transition:all .3s;position:fixed;top:0;left:0;right:0}.home-header-v2.scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a1af2;border-bottom:1px solid #ffffff1a}.header-content{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.logo-container-v2{cursor:pointer;align-items:center;gap:12px;display:flex}.logo-icon-v2{background:linear-gradient(135deg,#4a90e2,#9c27b0);border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 4px 20px #4a90e266}.logo-icon-v2.small{width:32px;height:32px}.logo-icon-v2 span{color:#fff;font-size:24px;font-weight:700}.logo-icon-v2.small span{font-size:18px}.logo-text-v2{flex-direction:column;display:flex}.logo-title-v2{color:#fff;letter-spacing:-.3px;font-size:16px;font-weight:600}.logo-subtitle-v2{-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#4a90e2,#9c27b0);-webkit-background-clip:text;background-clip:text;font-size:12px;font-weight:600}.header-right{align-items:center;gap:16px;display:flex}.language-switch-v2{background:#ffffff1a;border-radius:8px;gap:2px;padding:4px;display:flex}.language-switch-v2 button{color:#ffffff80;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:600;transition:all .2s}.language-switch-v2 button:hover{color:#fff}.language-switch-v2 button.active{color:#fff;background:#fff3}.user-menu{background:#ffffff1a;border-radius:30px;align-items:center;gap:10px;padding:6px 12px 6px 6px;display:flex}.user-avatar{-o-object-fit:cover;object-fit:cover;border-radius:50%;width:32px;height:32px}.user-name{color:#fff;font-size:14px;font-weight:500}.logout-btn{color:#fff9;cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;transition:color .2s}.logout-btn:hover{color:#ff6b6b}.auth-buttons{gap:10px;display:flex}.hero-section-v2{justify-content:center;align-items:center;min-height:100vh;padding:100px 24px 60px;display:flex;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;overflow:hidden}.hero-gradient{background:radial-gradient(80% 50% at 50% -20%,#4a90e24d,#0000),radial-gradient(60% 40% at 80% 60%,#9c27b033,#0000),radial-gradient(50% 30% at 20% 80%,#4a90e226,#0000);position:absolute;inset:0}.hero-pattern{background-image:radial-gradient(#ffffff08 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0}.hero-content{text-align:center;z-index:10;max-width:700px;position:relative}.hero-badge-v2{background:linear-gradient(135deg,#4a90e233,#9c27b033);border:1px solid #4a90e24d;border-radius:30px;align-items:center;gap:8px;margin-bottom:24px;padding:8px 16px;display:inline-flex}.badge-dot{background:#4a90e2;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}.hero-badge-v2 span:last-child{color:#fffc;font-size:13px;font-weight:500}.hero-title-v2{color:#fff;letter-spacing:-1px;margin-bottom:20px;font-size:48px;font-weight:700;line-height:1.15}.hero-title-v2 span{display:inline}.hero-subtitle-v2{color:#fff9;margin-bottom:32px;font-size:18px;line-height:1.6}.hero-cta-buttons{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:48px;display:flex}.cta-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4a90e2,#9c27b0);border:none;border-radius:12px;align-items:center;gap:8px;padding:16px 32px;font-size:16px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 20px #4a90e266}.cta-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px #4a90e280}.cta-arrow{transition:transform .3s}.cta-primary:hover .cta-arrow{transform:translate(4px)}.cta-secondary{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:12px;padding:16px 32px;font-size:16px;font-weight:500;transition:all .3s}.cta-secondary:hover{background:#ffffff1a;border-color:#ffffff4d}.hero-stats{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;display:flex}.stat-item{flex-direction:column;align-items:center;gap:4px;display:flex}.stat-number{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#4a90e2,#9c27b0);-webkit-background-clip:text;background-clip:text;font-size:28px;font-weight:700}.stat-label{color:#ffffff80;font-size:13px}.stat-divider{background:#ffffff1a;width:1px;height:40px}.hero-visual{display:none}@media(min-width:1024px){.hero-section-v2{flex-direction:row;gap:60px;padding:120px 60px 80px}.hero-content{text-align:left;flex:1}.hero-cta-buttons,.hero-stats{justify-content:flex-start}.hero-visual{flex:1;max-width:480px;display:block}.hero-title-v2{font-size:56px}}.demo-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;transition:transform .5s;overflow:hidden;transform:perspective(1000px)rotateY(-5deg)rotateX(5deg);box-shadow:0 20px 60px #0000004d}.demo-card:hover{transform:perspective(1000px)rotateY(0)rotateX(0)}.demo-header{background:#ffffff0d;border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:12px 16px;display:flex}.demo-dots{gap:6px;display:flex}.demo-dots span{background:#fff3;border-radius:50%;width:10px;height:10px}.demo-dots span:first-child{background:#ff5f57}.demo-dots span:nth-child(2){background:#ffbd2e}.demo-dots span:last-child{background:#28ca42}.demo-title{color:#fff9;font-size:12px}.demo-content{padding:20px}.demo-question{margin-bottom:16px}.demo-q-num{color:#4a90e2;margin-bottom:6px;font-size:11px;font-weight:600}.demo-q-text{color:#fffc;font-size:14px}.demo-options{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.demo-option{color:#ffffffb3;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:10px 14px;font-size:13px;transition:all .2s}.demo-option.selected{color:#fff;background:linear-gradient(135deg,#4a90e233,#9c27b033);border-color:#4a90e2}.demo-ai-hint{background:linear-gradient(135deg,#4a90e21a,#9c27b01a);border:1px solid #4a90e233;border-radius:8px;align-items:center;gap:8px;padding:12px;display:flex}.demo-ai-hint .ai-icon{font-size:18px}.demo-ai-hint span:last-child{color:#ffffffb3;font-size:12px}.section-container{max-width:1200px;margin:0 auto;padding:0 24px}.section-title-v2{color:#fff;text-align:center;margin-bottom:16px;font-size:32px;font-weight:700}.section-subtitle{color:#ffffff80;text-align:center;margin-bottom:48px;font-size:16px}.features-section-v2{background:linear-gradient(#0a0a1a,#0f0f2a);padding:80px 24px}.features-grid{grid-template-columns:1fr;gap:20px;display:grid}@media(min-width:768px){.features-grid{grid-template-columns:repeat(3,1fr);gap:24px}}.feature-card-v2{text-align:center;background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;padding:32px 24px;transition:all .3s;position:relative;overflow:hidden}.feature-card-v2:hover{background:#ffffff0f;border-color:#ffffff26;transform:translateY(-4px)}.feature-card-v2.highlight{background:linear-gradient(135deg,#4a90e21a,#9c27b01a);border-color:#4a90e24d}.feature-icon-v2{border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;display:flex}.feature-icon-v2 span{font-size:32px}.feature-icon-v2.blue{background:linear-gradient(135deg,#4a90e233,#4a90e21a)}.feature-icon-v2.purple{background:linear-gradient(135deg,#9c27b033,#9c27b01a)}.feature-icon-v2.gradient{background:linear-gradient(135deg,#4a90e2,#9c27b0);box-shadow:0 8px 24px #4a90e266}.feature-card-v2 h3{color:#fff;margin-bottom:12px;font-size:18px;font-weight:600}.feature-card-v2 p{color:#ffffff80;font-size:14px;line-height:1.6}.feature-badge{color:#fff;background:linear-gradient(135deg,#4a90e2,#9c27b0);border-radius:12px;padding:4px 10px;font-size:11px;font-weight:600;position:absolute;top:16px;right:16px}.modules-section{background:#0a0a1a;padding:80px 24px}@media(min-width:768px){.modules-grid{grid-template-columns:repeat(2,1fr);gap:20px}}.module-card{cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;align-items:center;gap:16px;padding:24px;transition:all .3s;display:flex}.module-card:hover{background:#ffffff0f;transform:translateY(-2px)}.module-card.reading{border-left:4px solid #4a90e2}.module-card.listening{border-left:4px solid #9c27b0}.module-card.speaking{border-left:4px solid #00bfa5}.module-card.writing{border-left:4px solid #ff7043}.module-card.coming-soon{opacity:.6;cursor:default}.module-card.coming-soon:hover{transform:none}.module-icon{flex-shrink:0;font-size:36px}.module-info{flex:1}.module-info h3{color:#fff;margin-bottom:6px;font-size:18px;font-weight:600}.module-info p{color:#ffffff80;margin-bottom:8px;font-size:13px}.module-meta{align-items:center;gap:8px;display:flex}.module-count{color:#fff6;font-size:12px}.coming-badge{color:#fff9;background:#ffffff1a;border-radius:12px;padding:4px 10px;font-size:11px;display:inline-block}.module-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.module-btn:hover{background:#fff3}.module-btn.disabled{opacity:.5;cursor:default}.module-btn.disabled:hover{background:#ffffff1a}.testimonials-section{background:linear-gradient(#0f0f2a,#0a0a1a);padding:80px 24px}.testimonials-grid{grid-template-columns:1fr;gap:20px;display:grid}@media(min-width:768px){.testimonials-grid{grid-template-columns:repeat(3,1fr)}}.testimonial-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;padding:24px;transition:all .3s}.testimonial-card:hover{background:#ffffff0f;transform:translateY(-2px)}.testimonial-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.testimonial-avatar{font-size:36px}.testimonial-info{flex-direction:column;flex:1;gap:2px;display:flex}.testimonial-name{color:#fff;font-size:15px;font-weight:600}.testimonial-score{color:#4a90e2;font-size:12px;font-weight:500}.testimonial-rating{color:gold;font-size:14px}.testimonial-text{color:#fff9;font-size:14px;font-style:italic;line-height:1.7}.faq-section{background:#0a0a1a;padding:80px 24px}.faq-list{flex-direction:column;gap:12px;max-width:700px;margin:0 auto;display:flex}.faq-item:hover{background:#ffffff0d}.faq-question{color:#fff;justify-content:space-between;align-items:center;padding:20px 24px;font-size:15px;font-weight:500;display:flex}.faq-toggle{color:#4a90e2;font-size:20px;transition:transform .3s}.faq-item.expanded .faq-toggle{transform:rotate(180deg)}.faq-answer{max-height:0;transition:max-height .3s;overflow:hidden}.faq-item.expanded .faq-answer{max-height:200px}.faq-answer p{color:#ffffff80;padding:0 24px 20px;font-size:14px;line-height:1.7}.cta-section{padding:100px 24px;position:relative;overflow:hidden}.cta-bg{position:absolute;inset:0}.cta-gradient{background:linear-gradient(135deg,#4a90e233,#9c27b033);position:absolute;inset:0}.cta-content{z-index:10;text-align:center;position:relative}.cta-content h2{color:#fff;margin-bottom:12px;font-size:36px;font-weight:700}.cta-content p{color:#fff9;margin-bottom:32px;font-size:18px}.cta-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4a90e2,#9c27b0);border:none;border-radius:14px;align-items:center;gap:8px;padding:18px 40px;font-size:18px;font-weight:600;transition:all .3s;display:inline-flex;box-shadow:0 8px 30px #4a90e266}.cta-button:hover{transform:translateY(-3px);box-shadow:0 12px 40px #4a90e280}.home-footer-v2{background:#050510;border-top:1px solid #ffffff0d;padding:60px 24px 30px}.footer-content{max-width:1200px;margin:0 auto}.footer-brand{text-align:center;margin-bottom:32px}.footer-logo{align-items:center;gap:10px;margin-bottom:12px;display:inline-flex}.footer-logo span{color:#fff;font-size:18px;font-weight:600}.footer-desc{color:#fff6;font-size:14px}.footer-bottom{text-align:center;border-top:1px solid #ffffff0d;padding-top:24px}.footer-bottom p{color:#ffffff4d;font-size:12px}.apple-home{color:#1d1d1f;-webkit-font-smoothing:antialiased;background:#fafafa;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif}.apple-nav{z-index:1000;-webkit-backdrop-filter:saturate(180%)blur(20px);background:#fffc;border-bottom:1px solid #00000014;height:52px;transition:all .3s;position:fixed;top:0;left:0;right:0}.apple-nav.scrolled{background:#fffffff2;box-shadow:0 1px 3px #0000000d}.nav-content{justify-content:space-between;align-items:center;max-width:1200px;height:100%;margin:0 auto;padding:0 24px;display:flex}.nav-logo{cursor:pointer;align-items:center;gap:8px;display:flex}.logo-mark{color:#3498db;letter-spacing:-.5px;font-size:20px;font-weight:700}.logo-text{color:#1d1d1f;letter-spacing:-.3px;font-size:16px;font-weight:500}.nav-right{align-items:center;gap:16px;display:flex}.lang-switcher{background:#f5f5f7;border-radius:8px;gap:2px;padding:3px;display:flex}.lang-switcher button{color:#6e6e73;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s}.lang-switcher button:hover{color:#1d1d1f}.lang-switcher button.active{color:#3498db;background:#fff;box-shadow:0 1px 3px #0000001a}.apple-nav .user-info{background:#f5f5f7;border:none;border-radius:20px;align-items:center;gap:8px;width:auto;min-width:auto;padding:4px 12px 4px 4px;display:flex}.apple-nav .user-pic{border-radius:50%;width:28px;height:28px}.apple-nav .user-info span{color:#1d1d1f;font-size:13px;font-weight:500}.apple-nav .logout{color:#86868b;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:16px;line-height:1}.apple-nav .logout:hover{color:#ff3b30}.signin-btn{min-width:100px}.apple-hero{background:linear-gradient(#f5f5f7,#fff);justify-content:center;align-items:center;min-height:100vh;padding:100px 24px 80px;display:flex;position:relative;overflow:hidden}.apple-hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 30% 20%,#3498db14,#0000 50%),radial-gradient(circle at 70% 80%,#34c7590f,#0000 40%);width:200%;height:200%;position:absolute;top:-50%;left:-50%}.hero-inner{text-align:center;z-index:1;max-width:800px;position:relative}.hero-brand{color:#1d1d1f;letter-spacing:-2px;margin-bottom:16px;font-size:56px;font-weight:700;line-height:1.1}@media(min-width:768px){.hero-brand{font-size:72px}}.hero-slogan{color:#6e6e73;margin-bottom:40px;font-size:24px;font-weight:400;line-height:1.4}@media(min-width:768px){.hero-slogan{font-size:28px}}.hero-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.btn-primary{color:#fff;cursor:pointer;background:#3498db;border:none;border-radius:980px;align-items:center;gap:8px;padding:16px 32px;font-size:17px;font-weight:500;transition:all .3s;display:inline-flex}.btn-primary:hover{background:#2980b9;transform:scale(1.02)}.btn-primary.large{padding:18px 40px;font-size:18px}.btn-secondary{color:#3498db;cursor:pointer;background:0 0;border:none;border-radius:980px;align-items:center;gap:8px;padding:16px 32px;font-size:17px;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover{color:#2980b9;background:#3498db14}.apple-section{background:#fff;padding:100px 24px}.apple-section.alt{background:#f5f5f7}.section-inner{max-width:1200px;margin:0 auto}.section-inner.narrow{max-width:700px}.section-heading{color:#1d1d1f;text-align:center;letter-spacing:-1px;margin-bottom:16px;font-size:40px;font-weight:600}.section-subheading{color:#6e6e73;text-align:center;margin-bottom:60px;font-size:18px}.features-row{grid-template-columns:1fr;gap:24px;display:grid}@media(min-width:768px){.features-row{grid-template-columns:repeat(3,1fr)}}.feature-item{text-align:center;background:#f5f5f7;border-radius:20px;padding:40px 24px;transition:all .3s;position:relative}.feature-item:hover{transform:translateY(-4px);box-shadow:0 12px 40px #00000014}.feature-item.highlight{background:linear-gradient(135deg,#ff3b300d,#ff3b3005);border:1px solid #ff3b301a}.feature-icon{border-radius:16px;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 20px;display:flex}.feature-icon svg{width:28px;height:28px}.feature-icon.blue{color:#fff;background:linear-gradient(135deg,#3498db,#5dade2);box-shadow:0 8px 20px #3498db4d}.feature-icon.green{color:#fff;background:linear-gradient(135deg,#34c759,#4cd964);box-shadow:0 8px 20px #34c7594d}.feature-icon.red{color:#fff;background:linear-gradient(135deg,#ff3b30,#ff6b6b);box-shadow:0 8px 20px #ff3b304d}.feature-item h3{color:#1d1d1f;margin-bottom:10px;font-size:20px;font-weight:600}.feature-item p{color:#6e6e73;font-size:15px;line-height:1.6}.ai-badge{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#ff3b30,#ff6b6b);border-radius:12px;padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:16px;right:16px}.modules-grid{grid-template-columns:1fr;gap:16px;display:grid}@media(min-width:768px){.modules-grid{grid-template-columns:repeat(2,1fr)}}.module-item{cursor:pointer;background:#fff;border:1px solid #0000000a;border-radius:16px;align-items:center;gap:16px;padding:20px 24px;transition:all .3s;display:flex;box-shadow:0 2px 8px #0000000a}.module-item:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.module-item.disabled{opacity:.6;cursor:default}.module-item.disabled:hover{transform:none;box-shadow:0 2px 8px #0000000a}.module-badge{color:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:16px;font-weight:700;display:flex}.module-badge.reading{background:linear-gradient(135deg,#3498db,#5dade2);box-shadow:0 4px 12px #3498db4d}.module-badge.listening{background:linear-gradient(135deg,#2980b9,#3498db);box-shadow:0 4px 12px #2980b94d}.module-badge.speaking{background:linear-gradient(135deg,#34c759,#4cd964);box-shadow:0 4px 12px #34c7594d}.module-badge.writing{background:linear-gradient(135deg,#ff3b30,#ff6b6b);box-shadow:0 4px 12px #ff3b304d}.module-body{flex:1}.module-body h3{color:#1d1d1f;margin-bottom:4px;font-size:17px;font-weight:600}.module-body p{color:#6e6e73;margin-bottom:6px;font-size:14px}.module-count{color:#3498db;font-size:12px;font-weight:500}.coming-soon{color:#86868b;background:#f5f5f7;border-radius:10px;padding:3px 10px;font-size:11px;font-weight:500;display:inline-block}.module-arrow{color:#c7c7cc;font-size:20px;transition:transform .2s}.module-item:hover .module-arrow{color:#3498db;transform:translate(4px)}.testimonials-row{grid-template-columns:1fr;gap:24px;display:grid}@media(min-width:768px){.testimonials-row{grid-template-columns:repeat(3,1fr)}}.testimonial-item{background:#f5f5f7;border-radius:20px;padding:28px;transition:all .3s}.testimonial-item:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000000f}.testimonial-top{align-items:center;gap:12px;margin-bottom:16px;display:flex}.testimonial-item .avatar{color:#fff;background:linear-gradient(135deg,#3498db,#5dade2);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:600;display:flex}.testimonial-item .name{color:#1d1d1f;font-size:15px;font-weight:600;display:block}.testimonial-item .score{color:#34c759;font-size:12px;font-weight:600}.testimonial-item p{color:#6e6e73;font-size:15px;font-style:italic;line-height:1.7}.faq-list{flex-direction:column;gap:8px;display:flex}.faq-item{cursor:pointer;background:#fff;border:1px solid #0000000a;border-radius:12px;transition:all .3s;overflow:hidden}.faq-item:hover{box-shadow:0 4px 16px #0000000f}.faq-q{color:#1d1d1f;justify-content:space-between;align-items:center;padding:20px 24px;font-size:16px;font-weight:500;display:flex}.faq-icon{color:#3498db;font-size:22px;font-weight:300;transition:transform .3s}.faq-item.open .faq-icon{transform:rotate(180deg)}.faq-a{max-height:0;transition:max-height .3s;overflow:hidden}.faq-item.open .faq-a{max-height:200px}.faq-a p{color:#6e6e73;padding:0 24px 20px;font-size:15px;line-height:1.7}.apple-cta{text-align:center;background:linear-gradient(#fff,#f5f5f7);padding:100px 24px;position:relative;overflow:hidden}.apple-cta:before{content:"";pointer-events:none;background:radial-gradient(circle,#3498db14,#0000 70%);width:800px;height:800px;position:absolute;top:0;left:50%;transform:translate(-50%)}.cta-inner{z-index:1;position:relative}.apple-cta h2{color:#1d1d1f;letter-spacing:-1px;margin-bottom:12px;font-size:40px;font-weight:600}.apple-cta p{color:#6e6e73;margin-bottom:32px;font-size:18px}.apple-footer{background:#f5f5f7;border-top:1px solid #0000000f;padding:48px 24px}.footer-inner{text-align:center;max-width:1200px;margin:0 auto}.footer-brand{justify-content:center;align-items:center;gap:8px;margin-bottom:20px;display:flex}.footer-brand .logo-mark{font-size:18px}.footer-brand span:last-child{color:#6e6e73;font-size:15px}.footer-links{flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:24px;display:flex}.footer-links a{color:#6e6e73;font-size:13px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#3498db}.copyright{color:#86868b;font-size:12px}.question-item .item-content{flex-direction:column;align-items:center;gap:1px;width:100%;display:flex;overflow:visible}.question-item .item-task{opacity:.8;white-space:nowrap;font-size:9px;font-weight:500}.writing-nav .question-item{min-height:42px;padding:6px 8px}.loading-container{flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100%;display:flex}.loading-text{color:var(--tcf-text-secondary);font-size:16px;animation:1.5s infinite pulse-soft}.writing-question-view{flex-direction:column;height:100%;padding-bottom:10px;display:flex;overflow-y:auto}.task-badge{background:linear-gradient(135deg,var(--tcf-nav-blue)0%,var(--tcf-nav-light)100%);border-radius:var(--radius-md);color:#fff;align-items:center;gap:12px;margin-bottom:16px;padding:10px 16px;display:flex}.task-number{font-size:18px;font-weight:700}.task-type{opacity:.9;font-size:14px}.instruction-section{margin-bottom:16px}.instruction-toggle{border:1px solid var(--tcf-border);border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--tcf-text);background:#f5f5f7;justify-content:space-between;align-items:center;padding:10px 14px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.instruction-toggle:hover{background:#eee}.toggle-icon{color:var(--tcf-text-secondary);font-size:12px}.instruction-content{border:1px solid var(--tcf-border);border-radius:0 0 var(--radius-sm)var(--radius-sm);color:var(--tcf-text-secondary);background:#fafafa;border-top:none;padding:12px 14px;font-size:13px;line-height:1.6}.topic-section{border:2px solid var(--tcf-nav-blue);border-radius:var(--radius-md);background:#fff;margin-bottom:16px;padding:16px 20px}.topic-title{color:var(--tcf-nav-blue);margin-bottom:10px;font-size:16px;font-weight:600}.topic-content{color:var(--tcf-text);font-size:15px;line-height:1.7}.topic-content p{margin-bottom:8px}.topic-content p:last-child{margin-bottom:0}.word-requirements{border-radius:var(--radius-sm);background:#e8f4fd;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;display:flex}.requirement-label{color:var(--tcf-text-secondary);font-size:13px}.requirement-value{color:var(--tcf-nav-blue);font-size:14px;font-weight:600}.writing-input-section{flex-direction:column;flex:1;margin-bottom:12px;display:flex}.writing-textarea{border:2px solid var(--tcf-border);border-radius:var(--radius-md);resize:none;width:100%;min-height:200px;color:var(--tcf-text);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;flex:1;padding:16px;font-family:inherit;font-size:15px;line-height:1.8;transition:border-color .2s}.writing-textarea:focus{border-color:var(--tcf-nav-blue);background:#fff;outline:none}.writing-textarea::-moz-placeholder{color:#999}.writing-textarea::placeholder{color:#999}.writing-textarea:not(:disabled){pointer-events:auto;cursor:text}.word-count-display{border-radius:var(--radius-sm);background:#f5f5f7;align-items:center;gap:4px;margin-top:8px;padding:6px 12px;font-size:14px;font-weight:500;display:flex}.word-count-display.valid{color:var(--tcf-green);background:#d1f2d9}.word-count-display.under{color:#856404;background:#fff3cd}.word-count-display.over{color:var(--tcf-red);background:#fdd}.count-number{font-size:18px;font-weight:700}.count-warning{font-size:12px;font-weight:400}.count-valid{font-size:16px}.submit-section{text-align:center;flex-shrink:0;margin-top:12px;padding-bottom:10px}.submit-warning{color:#856404;margin-top:8px;font-size:13px}.writing-analysis-view{padding-bottom:20px}.writing-analysis-view .passage-section{margin-bottom:10px}.translation-toggle{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;padding:6px 12px;font-size:12px;font-weight:500;transition:all .2s}.translation-toggle:hover{background:#ffffff4d}.word-count-badge{background:#fff3;border-radius:12px;padding:4px 10px;font-size:12px;font-weight:500}.score-section .score-overview{background:#fff;justify-content:center;align-items:center;gap:20px;padding:24px;display:flex}.score-main{align-items:baseline;display:flex}.score-number{color:var(--tcf-text);font-size:48px;font-weight:700}.score-max{color:var(--tcf-text-secondary);font-size:24px}.level-badge{color:#fff;border-radius:20px;padding:8px 20px;font-size:18px;font-weight:700}.dimensions-grid{background:#f5f5f7;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;display:grid}.dimension-card{border-radius:var(--radius-md);text-align:center;background:#fff;padding:16px}.dimension-header{justify-content:center;align-items:center;gap:8px;margin-bottom:8px;display:flex}.dimension-icon{font-size:20px}.dimension-title{color:var(--tcf-text);font-size:14px;font-weight:600}.dimension-score{color:var(--tcf-nav-blue);margin-bottom:8px;font-size:24px;font-weight:700}.dimension-comment{color:var(--tcf-text-secondary);margin:0;font-size:12px;line-height:1.5}.legend-section{background:#fff;padding:12px 16px}.error-legend{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.legend-title{color:var(--tcf-text);font-size:13px;font-weight:600}.legend-item{font-size:12px;font-weight:500}.annotated-section .annotated-text{background:#fff;padding:16px 20px;font-size:15px;line-height:2}.annotated-text .error-grammar{background:#ef444426;border-bottom:2px solid #ef4444;border-radius:2px;padding:2px 4px}.annotated-text .error-spelling{background:#f59e0b26;border-bottom:2px solid #f59e0b;border-radius:2px;padding:2px 4px}.annotated-text .error-logic{background:#3b82f626;border-bottom:2px solid #3b82f6;border-radius:2px;padding:2px 4px}.annotated-text .error-expression{background:#8b5cf626;border-bottom:2px solid #8b5cf6;border-radius:2px;padding:2px 4px}.annotated-text .error-vocabulary{background:#10b98126;border-bottom:2px solid #10b981;border-radius:2px;padding:2px 4px}.error-details{background:#f5f5f7;flex-direction:column;gap:12px;padding:16px;display:flex}.error-item{border-radius:var(--radius-md);background:#fff;border-left:4px solid;padding:12px 16px}.error-header{margin-bottom:8px}.error-type-badge{color:#fff;border-radius:12px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.error-original,.error-correction,.error-explanation{gap:8px;margin-bottom:6px;font-size:14px;display:flex}.error-original .label,.error-correction .label,.error-explanation .label{color:var(--tcf-text-secondary);min-width:80px;font-weight:600}.error-original .strikethrough{color:var(--tcf-red);text-decoration:line-through}.error-correction .correct{color:var(--tcf-green);font-weight:500}.error-explanation .text{color:var(--tcf-text);line-height:1.5}.comment-section .general-comment{background:#fff;margin:0;padding:16px 20px;font-size:15px;line-height:1.7}.comment-section .suggestions{border-top:1px dashed var(--tcf-border);background:#f0fff4;padding:12px 20px}.comment-section .suggestions h4{color:var(--tcf-green);margin-bottom:8px;font-size:14px;font-weight:600}.comment-section .suggestions ul{margin:0;padding-left:20px}.comment-section .suggestions li{color:var(--tcf-text);margin-bottom:4px;font-size:13px;line-height:1.6}@media(max-width:768px){.dimensions-grid{grid-template-columns:1fr}}.translate-btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;padding:6px 14px;font-size:12px;font-weight:500;transition:all .2s}.translate-btn:hover:not(:disabled){background:#ffffff4d}.translate-btn:disabled{opacity:.6;cursor:not-allowed}.original-text{border-radius:var(--radius-sm);border-left:4px solid var(--tcf-nav-blue);color:#333;background:#fff;margin-bottom:16px;padding:14px 16px;font-size:15px;line-height:1.7}.original-text p{margin-bottom:6px}.original-text p:last-child{margin-bottom:0}.translation-box{border-radius:var(--radius-sm);color:#2e7d32;background:#e8f5e9;border-left:4px solid #4caf50;padding:14px 16px;font-size:14px;line-height:1.7}.translation-box h4{margin:0 0 8px;font-size:13px;font-weight:600}.translation-box p{margin-bottom:6px}.translation-box p:last-child{margin-bottom:0}.loading-text{color:#666;align-items:center;gap:8px;font-style:italic;display:flex}.section-content.user-text{white-space:pre-wrap;color:#333;border-radius:var(--radius-sm);background:#fafafa;border:1px solid #e0e0e0;min-height:100px;font-family:inherit}.header-actions{align-items:center;gap:12px;display:flex}.smart-analysis-btn{color:#fff;cursor:pointer;background:#fff3;border:1px solid #fff6;border-radius:20px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.smart-analysis-btn:hover:not(:disabled){background:#ffffff4d;transform:scale(1.02)}.smart-analysis-btn:disabled{opacity:.6;cursor:not-allowed}.smart-analysis-btn .btn-icon{font-size:14px}.user-text-display{white-space:pre-wrap;color:#333;border-radius:var(--radius-sm);background:#fafafa;border:1px solid #e8e8e8;padding:16px;font-size:15px;line-height:1.8}.sentence-correction-content{padding:16px!important}.sentence-correction-content .error-legend{border-radius:var(--radius-sm);background:#f5f5f5;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:12px 16px;display:flex}.sentence-correction-content .legend-item{font-size:12px;font-weight:500}.sentences-list{flex-direction:column;gap:16px;display:flex}.sentence-block{border-radius:var(--radius-md);border:1px solid #e0e0e0;overflow:hidden}.sentence-block.correct{background:#f0fdf4;border-color:#86efac}.sentence-block.has-error{background:#fef2f2;border-color:#fecaca}.sentence-block.streaming{animation:.3s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.sentence-loading{border-radius:var(--radius-md);color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;align-items:center;gap:10px;padding:16px;font-size:14px;display:flex}.sentence-original{background:#fff;border-left:4px solid #10b981;padding:12px 16px;font-size:15px;line-height:1.6;position:relative}.sentence-block.has-error .sentence-original{border-left-color:#ef4444}.sentence-text{color:#333}.error-type-tag{color:#fff;border-radius:10px;margin-right:8px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.sentence-feedback{background:#00000005;gap:12px;padding:12px 16px;display:flex}.teacher-icon{flex-shrink:0;font-size:24px}.feedback-content{flex:1}.feedback-content p{color:#555;margin:0;font-size:14px;line-height:1.6}.correction-suggestion{border-radius:var(--radius-sm);background:#ecfdf5;border-left:3px solid #10b981;margin-top:10px;padding:10px 12px}.suggestion-label{color:#059669;margin-right:8px;font-size:12px;font-weight:600}.suggestion-text{color:#065f46;font-size:14px;font-style:italic}.overall-feedback-section{border-top:2px dashed #e0e0e0;margin-top:24px;padding-top:20px}.overall-feedback{border-radius:var(--radius-md);background:linear-gradient(135deg,#e0f2fe,#f0f9ff);border-left:4px solid #0ea5e9;margin-bottom:16px;padding:16px}.overall-feedback h4{color:#0369a1;margin:0 0 10px;font-size:15px;font-weight:600}.overall-feedback p{color:#334155;margin:0;font-size:14px;line-height:1.7}.highlights-section,.suggestions-section{border-radius:var(--radius-sm);background:#fafafa;margin-bottom:12px;padding:14px 16px}.highlights-section{background:#fffbeb;border-left:3px solid #f59e0b}.suggestions-section{background:#f0fdf4;border-left:3px solid #22c55e}.highlights-section h4,.suggestions-section h4{color:#333;margin:0 0 8px;font-size:14px;font-weight:600}.highlights-section ul,.suggestions-section ul{margin:0;padding-left:20px}.highlights-section li,.suggestions-section li{color:#555;margin-bottom:4px;font-size:13px;line-height:1.6}.correction-trigger{text-align:center;padding:24px}.correction-btn{background:linear-gradient(135deg,var(--tcf-nav-blue)0%,var(--tcf-nav-light)100%);color:#fff;cursor:pointer;border:none;border-radius:980px;align-items:center;gap:8px;padding:14px 36px;font-size:16px;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #3498db4d}.correction-btn:hover:not(:disabled){transform:scale(1.02);box-shadow:0 6px 16px #3498db66}.correction-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading-spinner-small{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-legend-section{border:1px solid var(--tcf-border)!important;background:#fff!important;padding:12px 16px!important}.error-legend-section .error-legend{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.error-legend-section .legend-item{padding:4px 0;font-size:13px;font-weight:500}.annotated-text-content{white-space:pre-wrap;background:#fff;padding:16px 20px;font-size:15px;line-height:2}.annotated-text-content .error-grammar{cursor:help;background:#ef444426;border-bottom:2px solid #ef4444;border-radius:2px;padding:2px 4px}.annotated-text-content .error-spelling{cursor:help;background:#f59e0b26;border-bottom:2px solid #f59e0b;border-radius:2px;padding:2px 4px}.annotated-text-content .error-expression{cursor:help;background:#8b5cf626;border-bottom:2px solid #8b5cf6;border-radius:2px;padding:2px 4px}.annotated-text-content .error-logic{cursor:help;background:#3b82f626;border-bottom:2px solid #3b82f6;border-radius:2px;padding:2px 4px}.annotated-text-content .error-vocabulary{cursor:help;background:#10b98126;border-bottom:2px solid #10b981;border-radius:2px;padding:2px 4px}.error-list{border-top:1px solid var(--tcf-border);background:#f5f5f7;flex-direction:column;gap:12px;padding:16px;display:flex}.error-list .error-item{border-radius:var(--radius-md);background:#fff;border-left:4px solid;padding:12px 16px}.error-list .error-row{gap:8px;margin-bottom:6px;font-size:14px;display:flex}.error-list .error-row:last-child{margin-bottom:0}.error-list .error-label{color:var(--tcf-text-secondary);flex-shrink:0;min-width:50px;font-weight:600}.error-list .error-original{color:var(--tcf-red);text-decoration:line-through}.error-list .error-correction{color:var(--tcf-green);font-weight:500}.error-list .error-explanation{color:var(--tcf-text);line-height:1.5}.writing-guide{background:#fff;padding:16px 20px}.writing-guide .guide-item{margin-bottom:20px}.writing-guide .guide-item:last-child{margin-bottom:0}.writing-guide .guide-item h4{color:var(--tcf-nav-blue);align-items:center;gap:8px;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.writing-guide .guide-item h4:before{content:"•";color:var(--tcf-nav-blue)}.writing-guide .guide-item p{color:var(--tcf-text);margin:0;padding-left:16px;font-size:14px;line-height:1.7}.writing-guide .guide-item ul{margin:0;padding-left:32px}.writing-guide .guide-item li{color:var(--tcf-text);margin-bottom:4px;font-size:14px;line-height:1.6}.expressions-grid{background:#fff;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:16px 20px;display:grid}.expression-group{border-radius:var(--radius-md);border:1px solid var(--tcf-border);background:#f8fafc;padding:14px}.expression-group h4{color:var(--tcf-nav-blue);border-bottom:1px solid var(--tcf-border);margin-bottom:10px;padding-bottom:8px;font-size:13px;font-weight:600}.expression-group ul{margin:0;padding:0;list-style:none}.expression-group li{color:var(--tcf-text);padding:4px 0 4px 12px;font-size:13px;line-height:1.6;position:relative}.expression-group li:before{content:"›";color:var(--tcf-nav-blue);font-weight:700;position:absolute;left:0}.model-answer-text{color:var(--tcf-text);font-size:15px;line-height:1.8}.model-answer-text p{margin-bottom:10px}.loading-placeholder{color:var(--tcf-text-secondary);justify-content:center;align-items:center;gap:12px;padding:40px;font-size:14px;display:flex}.navigation-buttons{border-top:1px solid var(--tcf-border);justify-content:space-between;gap:16px;margin-top:24px;padding-top:20px;display:flex}.nav-button{border:2px solid var(--tcf-nav-blue);border-radius:var(--radius-md);color:var(--tcf-nav-blue);cursor:pointer;background:#fff;padding:12px 24px;font-size:14px;font-weight:600;transition:all .2s}.nav-button:hover:not(:disabled){background:var(--tcf-nav-blue);color:#fff}.nav-button:disabled{opacity:.4;cursor:not-allowed}.nav-button.next{background:var(--tcf-nav-blue);color:#fff}.nav-button.next:hover:not(:disabled){background:var(--tcf-nav-light)}.level-prediction-card{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);margin-bottom:20px;padding:20px;box-shadow:0 4px 15px #667eea4d}.prediction-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.prediction-icon{font-size:24px}.prediction-title{font-size:18px;font-weight:700}.prediction-content{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;display:flex}.level-item{flex-direction:column;align-items:center;gap:6px;display:flex}.level-label{opacity:.9;font-size:12px}.level-value{font-size:28px;font-weight:800}.level-value.current{color:#fbbf24}.level-value.target{color:#34d399}.level-value.prob{color:#60a5fa}.level-arrow{opacity:.7;font-size:24px}.level-item.probability{border-left:2px solid #ffffff4d;padding-left:20px}.error-section .passage-header.grammar-header{background:linear-gradient(135deg,#ef4444,#f87171)}.error-section .passage-header.logic-header{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.error-count{background:#ffffff4d;border-radius:12px;justify-content:center;align-items:center;min-width:24px;height:24px;margin-left:10px;padding:0 8px;font-size:13px;font-weight:700;display:inline-flex}.error-list{flex-direction:column;gap:16px;display:flex}.error-card{border-radius:var(--radius-sm);background:#fff;border-left:4px solid #ef4444;overflow:hidden;box-shadow:0 2px 8px #00000014}.error-card-header{background:#fafafa;border-bottom:1px solid #eee;align-items:center;gap:12px;padding:12px 16px;display:flex}.severity-badge{color:#fff;border-radius:12px;padding:4px 10px;font-size:12px;font-weight:600}.error-text-snippet{color:#333;flex:1;font-size:14px;font-style:italic}.error-card-body{padding:16px}.error-explanation{gap:12px;margin-bottom:12px;display:flex}.error-explanation .teacher-icon{flex-shrink:0;font-size:20px}.error-explanation p{color:#444;margin:0;font-size:14px;line-height:1.7}.error-correction{border-radius:var(--radius-sm);background:#f0fdf4;border-left:3px solid #22c55e;padding:12px}.correction-label{color:#166534;margin-right:8px;font-size:13px;font-weight:600}.correction-text{color:#166534;font-size:14px;font-weight:500}.no-errors{text-align:center;color:#22c55e;padding:24px;font-size:15px;font-weight:500}.analyzing-placeholder{color:#666;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.b2-upgrade-section .passage-header.b2-header{background:linear-gradient(135deg,#10b981,#34d399)}.b2-rewritten-text{border-radius:var(--radius-sm);color:#166534;white-space:pre-wrap;background:#f0fdf4;border:1px solid #86efac;padding:16px;font-size:15px;line-height:1.8}.key-upgrades{border-radius:var(--radius-sm);background:#fffbeb;border-left:4px solid #f59e0b;margin-top:16px;padding:16px}.key-upgrades h4{color:#92400e;margin:0 0 12px;font-size:15px;font-weight:600}.key-upgrades ul{margin:0;padding-left:20px}.key-upgrades li{color:#78350f;margin-bottom:6px;font-size:14px;line-height:1.6}.key-upgrades li:last-child{margin-bottom:0}.correction-panel{border:2px solid var(--tcf-nav-blue);border-radius:var(--radius-md);background:#fff;margin-top:12px;overflow:hidden}.correction-header{color:#fff;background:linear-gradient(135deg,#1e3a5f,#2563eb);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.correction-title{align-items:center;gap:10px;font-size:16px;font-weight:600;display:flex}.correction-title .title-icon{font-size:22px}.start-correction-btn{color:#1f2937;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#fbbf24);border:none;border-radius:20px;align-items:center;gap:8px;padding:8px 20px;font-size:14px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 2px 8px #f59e0b66}.start-correction-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #f59e0b80}.start-correction-btn:disabled{opacity:.5;cursor:not-allowed}.start-correction-btn .btn-icon{font-size:16px}.error-summary{align-items:center;gap:8px;font-size:14px;display:flex}.error-count-badge{background:#ef4444;border-radius:14px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 8px;font-weight:700;display:inline-flex}.correction-body-split{border-top:1px solid #e2e8f0;grid-template-columns:1fr 1fr;min-height:300px;display:grid}.correction-left-panel{border-right:1px solid #e2e8f0;flex-direction:column;display:flex}.correction-right-panel{background:#fafafa;flex-direction:column;display:flex}.panel-header{color:#64748b;background:#f1f5f9;border-bottom:1px solid #e2e8f0;align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.label-icon{font-size:16px}.original-text-full{color:#1f2937;flex:1;padding:16px;font-size:15px;line-height:2;position:relative;overflow-y:auto}.original-text-full .sentence-block{background:0 0;border:none;border-radius:0;display:block;overflow:visible}.error-highlight-text{cursor:pointer;border-radius:3px;padding:2px 4px;transition:all .3s;display:inline;position:relative}.error-highlight-text:hover{filter:brightness(.92);transform:scale(1.02)}.error-highlight-text.selected{filter:brightness(.85);outline-offset:1px;outline:2px solid;box-shadow:0 2px 12px #00000040}.error-number{color:#fff;vertical-align:super;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:2px;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex}.diagnosis-cards-list{flex-direction:column;flex:1;gap:8px;padding:12px 12px 12px 20px;display:flex;overflow-y:auto}.diagnosis-cards-list.diagnosis-cards-aligned{position:relative}.diagnosis-card-item{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #ef4444;border-radius:8px;gap:12px;padding:12px;transition:all .3s;display:flex;position:relative}.diagnosis-card-item:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#cbd5e1);width:12px;height:2px;transition:opacity .3s;position:absolute;top:50%;left:-16px}.diagnosis-card-item:hover:before,.diagnosis-card-item.selected:before{opacity:1}.diagnosis-card-item:hover{box-shadow:0 2px 8px #00000014}.diagnosis-card-item.selected{background:#f0f9ff;box-shadow:0 4px 12px #0000001a}.card-number{color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:flex}.card-body{flex:1;min-width:0}.card-type-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.error-type-tag{border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.severity-dot{font-size:12px}.card-grammar-point{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:3px solid #f59e0b;border-radius:4px;align-items:center;gap:6px;margin:6px 0;padding:4px 8px;font-size:12px;display:flex}.grammar-point-label{font-size:11px}.grammar-point-text{color:#92400e;font-weight:600}.card-correction-row{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;line-height:1.6;display:flex}.wrong-text{color:#dc2626;text-decoration:line-through}.arrow-icon{color:#22c55e;font-size:14px;font-weight:700}.correct-text{color:#16a34a;font-weight:500}.card-explanation-row{color:#0369a1;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:3px solid #0ea5e9;border-radius:6px;margin-top:8px;padding:10px 12px;font-size:13px;line-height:1.7}.scan-overlay{pointer-events:none;z-index:10;position:absolute;inset:0}.scanned-area{pointer-events:none;background:linear-gradient(#3b82f608,#3b82f60f);transition:height .15s ease-out;position:absolute;top:0;left:0;right:0}.scan-line{background:linear-gradient(90deg,#0000,#3b82f666 10%,#3b82f6,#60a5fa,#3b82f6,#3b82f666 90%,#0000);height:4px;transition:top .2s ease-out;animation:1s ease-in-out infinite scanPulse;position:absolute;left:0;right:0;box-shadow:0 0 10px #3b82f6cc,0 0 20px #3b82f680,0 0 30px #3b82f64d}@keyframes scanPulse{0%,to{opacity:.9;box-shadow:0 0 10px #3b82f6cc,0 0 20px #3b82f680}50%{opacity:1;box-shadow:0 0 15px #3b82f6,0 0 30px #3b82f6b3,0 0 45px #3b82f666}}.error-highlight{cursor:pointer;border-radius:3px;padding:2px 4px;transition:all .2s;display:inline;position:relative}.error-highlight:hover,.error-highlight.selected{filter:brightness(.95);box-shadow:0 2px 8px #00000026}.error-highlight.selected:after{content:"";opacity:.5;background:currentColor;width:16px;height:2px;position:absolute;top:50%;right:-16px}.error-marker{vertical-align:super;margin-left:2px;font-size:10px}.scanning-animation{flex-direction:column;gap:20px;padding:20px;display:flex}.scan-progress{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden}.scan-progress .progress-bar{background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:3px;height:100%;transition:width .1s linear}.scan-text{color:#3b82f6;align-items:center;gap:10px;font-size:14px;font-weight:500;display:flex}.pulse-dot{background:#3b82f6;border-radius:50%;width:10px;height:10px;animation:1s infinite pulse}.scan-items{flex-direction:column;gap:12px;display:flex}.scan-item{opacity:.5;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;transition:all .3s;display:flex}.scan-item.done{opacity:1;background:#f0fdf4;border-color:#86efac}.scan-item .item-icon{font-size:20px}.scan-item .item-label{color:#1f2937;flex:1;font-size:14px;font-weight:500}.scan-item .check-icon{color:#22c55e;font-weight:700}.diagnosis-list{flex-direction:column;flex:1;gap:12px;display:flex;overflow-y:auto}.diagnosis-list.aligned{gap:0;padding-top:0;position:relative}.diagnosis-list.aligned .diagnosis-card{margin-bottom:12px}.diagnosis-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #ef4444;border-radius:8px;padding:12px;transition:all .2s;position:relative}.diagnosis-card:hover,.diagnosis-card.selected{box-shadow:0 4px 12px #0000001a}.diagnosis-list:not(.aligned) .diagnosis-card:hover,.diagnosis-list:not(.aligned) .diagnosis-card.selected{transform:translate(4px)}.diagnosis-list.aligned .diagnosis-card.selected:before{content:"";background:var(--card-border-color,#ef4444);opacity:.5;width:16px;height:2px;position:absolute;top:20px;left:-16px}.diagnosis-card .card-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.error-type-badge{border-radius:12px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.severity-indicator{font-size:14px}.diagnosis-card .card-content{background:#f8fafc;border-radius:6px;align-items:center;gap:10px;margin-bottom:10px;padding:10px;display:flex}.error-original{flex:1}.strike-text{color:#dc2626;font-size:14px;text-decoration:line-through}.error-arrow{color:#22c55e;font-size:18px;font-weight:700}.error-fix{flex:1}.fix-text{color:#16a34a;font-size:14px;font-weight:500}.diagnosis-card .card-explanation{color:#64748b;border-top:1px dashed #e2e8f0;padding:8px 0;font-size:13px;line-height:1.6}.no-errors-message,.empty-state{color:#64748b;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.success-icon,.empty-icon{font-size:40px}.b2-section .passage-header.b2-header{background:linear-gradient(135deg,#10b981,#34d399)}.b2-content{padding:0}.b2-sentences{flex-direction:column;gap:0;display:flex}.b2-sentence-block{border-bottom:1px solid #e2e8f0;padding:16px 20px}.b2-sentence-block:last-child{border-bottom:none}.b2-french{color:#166534;margin-bottom:8px;font-size:15px;font-weight:500;line-height:1.8}.b2-translation{color:#64748b;border-left:3px solid #86efac;padding-left:12px;font-size:14px;line-height:1.7}.b2-highlight{cursor:help;border-radius:3px;padding:2px 4px;font-weight:600;transition:all .2s}.b2-highlight:hover{filter:brightness(.9);transform:scale(1.02)}.highlight-legend{background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap;gap:12px;padding:12px 20px;display:flex}.legend-item{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.legend-dot{border-radius:50%;width:8px;height:8px}.b2-text{color:#166534;white-space:pre-wrap;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:16px;font-size:15px;line-height:1.8}.upgrade-tags{background:#fffbeb;border-top:1px solid #fde68a;flex-wrap:wrap;gap:10px;padding:16px 20px;display:flex}.upgrade-tag{color:#92400e;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:16px;align-items:center;padding:6px 14px;font-size:13px;font-weight:500;display:inline-flex}@media(max-width:768px){.correction-body-split{grid-template-columns:1fr}.correction-left-panel{border-bottom:1px solid #e2e8f0;border-right:none;max-height:300px}.correction-right-panel{max-height:400px}.panel-header{padding:10px 12px;font-size:12px}.original-text-full{padding:12px;font-size:14px;line-height:1.8}.diagnosis-cards-list{gap:8px;padding:10px}.diagnosis-card-item{padding:10px}.card-number{width:20px;height:20px;font-size:11px}}.model-essay-section .passage-header.model-essay-header{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.model-essay-content{padding:0}.generating-state{color:#8b5cf6;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.generating-icon{font-size:40px;animation:1.5s ease-in-out infinite pulse}.model-essay-headers{background:#f8fafc;border-bottom:1px solid #e2e8f0;grid-template-columns:1fr 1fr;display:grid}.model-header-cell{color:#64748b;align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.model-header-cell.french-header{border-right:1px solid #e2e8f0}.model-header-cell .label-icon{font-size:16px}.model-essay-rows{flex-direction:column;display:flex}.model-sentence-row{opacity:0;border-bottom:1px solid #e2e8f0;grid-template-columns:1fr 1fr;display:grid}.model-sentence-row:last-child{border-bottom:none}.model-cell{padding:14px 16px;font-size:15px;line-height:1.8}.model-cell.french-cell{color:#1e293b;background:#fefefe;border-right:1px solid #e2e8f0}.model-cell.translation-cell{color:#475569;background:#fafafa}.model-highlight{cursor:help;transition:all .2s}.model-highlight:hover{filter:brightness(.95);transform:scale(1.02)}.model-essay-tips{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:12px;margin-top:16px;padding:20px 24px;box-shadow:0 2px 8px #f59e0b26}.model-essay-tips .tips-header{border-bottom:1px dashed #b453094d;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:12px;display:flex}.model-essay-tips .tips-icon{font-size:22px}.model-essay-tips .tips-title{color:#92400e;font-size:16px;font-weight:700}.model-essay-tips .tips-content{color:#78350f;white-space:pre-wrap;font-size:14px;line-height:1.8}.model-essay-summary{color:#5b21b6;background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-top:1px solid #ddd6fe;align-items:flex-start;gap:10px;padding:16px 20px;font-size:14px;line-height:1.6;display:flex}.model-essay-summary .summary-icon{flex-shrink:0;font-size:18px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cardSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.streaming-indicator{background:linear-gradient(135deg,#f0f4ff,#e8f0fe);border:1px dashed #a5b4fc;border-radius:12px;margin-top:16px;padding:16px}.streaming-indicator .scan-progress{background:#6366f133;border-radius:2px;height:4px;margin-bottom:10px;overflow:hidden}.streaming-indicator .scan-progress .progress-bar{background:linear-gradient(90deg,#6366f1,#818cf8);border-radius:2px;height:100%;transition:width .2s}.streaming-indicator .scan-text{color:#6366f1;align-items:center;gap:8px;font-size:13px;display:flex}@media(max-width:768px){.model-essay-headers{grid-template-columns:1fr}.model-header-cell.french-header{border-bottom:1px solid #e2e8f0;border-right:none}.model-sentence-row{grid-template-columns:1fr}.model-cell.french-cell{border-bottom:1px dashed #e2e8f0;border-right:none}.model-cell{padding:12px;font-size:14px}}.polished-headers{background:#f8fafc;border-bottom:1px solid #e2e8f0;border-radius:8px 8px 0 0;grid-template-columns:1fr 1fr;display:grid}.polished-header-cell{align-items:center;gap:6px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.polished-header-cell.original-header{color:#64748b;border-right:1px solid #e2e8f0}.polished-header-cell.polished-header{color:#7c3aed;background:linear-gradient(135deg,#faf5ff,#f3e8ff)}.polished-rows{border:1px solid #e2e8f0;border-top:none;border-radius:0 0 8px 8px;overflow:hidden}.polished-sentence-row{border-bottom:1px solid #e2e8f0;grid-template-columns:1fr 1fr;display:grid}.polished-sentence-row:last-child{border-bottom:none}.polished-cell{padding:14px 16px;font-size:15px;line-height:1.8}.polished-cell.original-cell{color:#64748b;background:#fafafa;border-right:1px solid #e2e8f0}.polished-cell.polished-cell-content{color:#1e293b;background:#fefefe}.polished-highlight{cursor:help;transition:all .2s}.polished-highlight:hover{filter:brightness(.95);transform:scale(1.02)}@media(max-width:768px){.polished-headers{grid-template-columns:1fr}.polished-header-cell.original-header{border-bottom:1px solid #e2e8f0;border-right:none}.polished-sentence-row{grid-template-columns:1fr}.polished-cell.original-cell{border-bottom:1px dashed #e2e8f0;border-right:none}.polished-cell{padding:12px;font-size:14px}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
