@import"https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&display=swap";@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-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight: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-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@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-white:#fff;--spacing:.25rem;--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 ;--font-weight-medium:500;--font-weight-semibold:600;--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)}}@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%;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}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.absolute{position:absolute}.relative{position:relative}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.z-10{z-index:10}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.mt-4{margin-top:calc(var(--spacing) * 4)}.flex{display:flex}.grid{display:grid}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-full{width:100%;height:100%}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.min-h-16{min-height:calc(var(--spacing) * 16)}.w-fit{width:fit-content}.w-full{width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.auto-rows-min{grid-auto-rows:min-content}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * -2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * -2) * calc(1 - var(--tw-space-x-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.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-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--background)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.p-2{padding:calc(var(--spacing) * 2)}.p-\[3px\]{padding:3px}.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-6{padding-inline:calc(var(--spacing) * 6)}.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-6{padding-block:calc(var(--spacing) * 6)}.text-left{text-align:left}.align-middle{vertical-align:middle}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--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}.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)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--card-foreground)}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/60{color:color-mix(in oklab,var(--foreground) 60%,transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.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)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);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-background{--tw-ring-color:var(--background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;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))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.group-has-data-\[size\=lg\]\/avatar-group\:size-10:is(:where(.group\/avatar-group):has([data-size=lg]) *){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.group-has-data-\[size\=sm\]\/avatar-group\:size-6:is(:where(.group\/avatar-group):has([data-size=sm]) *){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(:where(.group\/tabs)[data-orientation=horizontal] *){height:calc(var(--spacing) * 9)}.group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(:where(.group\/tabs)[data-orientation=vertical] *){height:fit-content}.group-data-\[orientation\=vertical\]\/tabs\:w-full:is(:where(.group\/tabs)[data-orientation=vertical] *){width:100%}.group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(:where(.group\/tabs)[data-orientation=vertical] *){flex-direction:column}.group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(:where(.group\/tabs)[data-orientation=vertical] *){justify-content:flex-start}.group-data-\[size\=default\]\/avatar\:size-2\.5:is(:where(.group\/avatar)[data-size=default] *){width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.group-data-\[size\=lg\]\/avatar\:size-3:is(:where(.group\/avatar)[data-size=lg] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\[size\=sm\]\/avatar\:size-2:is(:where(.group\/avatar)[data-size=sm] *){width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.group-data-\[size\=sm\]\/avatar\:text-xs:is(:where(.group\/avatar)[data-size=sm] *){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);inset-inline:calc(var(--spacing) * 0)}.group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}@media(hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary) 80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--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)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}.data-\[size\=lg\]\:size-10[data-size=lg]{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.data-\[size\=sm\]\:size-6[data-size=sm]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}:is(.\*\:data-\[slot\=avatar\]\:ring-2>*)[data-slot=avatar]{--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)}:is(.\*\:data-\[slot\=avatar\]\:ring-background>*)[data-slot=avatar]{--tw-ring-color:var(--background)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{--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)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}@media(min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive) 60%,transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media(hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input) 50%,transparent)}}.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-has-data-\[size\=lg\]\/avatar-group\:\[\&\>svg\]\:size-5:is(:where(.group\/avatar-group):has([data-size=lg]) *)>svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.group-has-data-\[size\=sm\]\/avatar-group\:\[\&\>svg\]\:size-3:is(:where(.group\/avatar-group):has([data-size=sm]) *)>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\[size\=default\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=default] *)>svg,.group-data-\[size\=lg\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=lg] *)>svg{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.group-data-\[size\=sm\]\/avatar\:\[\&\>svg\]\:hidden:is(:where(.group\/avatar)[data-size=sm] *)>svg{display:none}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary) 90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--secondary) 90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}a.\[a\&\]\:hover\:underline:hover{text-decoration-line:underline}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{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-content{syntax:"*";inherits:false;initial-value:""}@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}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);position:relative;overflow:hidden;padding:24px}.orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.orb-1{width:500px;height:500px;background:radial-gradient(circle,rgba(124,58,237,.18) 0%,transparent 70%);top:-15%;left:-10%}.orb-2{width:400px;height:400px;background:radial-gradient(circle,rgba(6,182,212,.12) 0%,transparent 70%);bottom:-10%;right:5%}.orb-3{width:300px;height:300px;background:radial-gradient(circle,rgba(168,85,247,.1) 0%,transparent 70%);top:40%;right:20%}.login-container{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:24px;position:relative;z-index:1}.brand{display:flex;align-items:center;gap:10px}.brand-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 0 20px var(--accent-glow)}.brand-name{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--text-1);letter-spacing:-.5px}.login-card{width:100%;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r-xl);padding:36px 32px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 0 0 1px #ffffff08,0 40px 80px #0006}.card-header{margin-bottom:28px}.card-header h1{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--text-1);margin-bottom:6px;letter-spacing:-.5px}.card-header p{font-size:14px;color:var(--text-2);line-height:1.5}.field-group{margin-bottom:16px}.field-group label{display:block;font-size:13px;font-weight:500;color:var(--text-2);margin-bottom:8px;letter-spacing:.2px}.field-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.field-label-row label{margin-bottom:0}.forgot-link{font-size:12px;color:var(--accent-2);text-decoration:none;transition:opacity .2s}.forgot-link:hover{opacity:.7}.lf-field{display:block;width:100%;padding:13px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);font-family:var(--font-body);font-size:15px;outline:none;transition:all .2s var(--ease)}.lf-field::placeholder{color:var(--text-3)}.lf-field:focus{border-color:var(--accent-2);background:#7c3aed0f;box-shadow:0 0 0 3px var(--accent-glow)}.submit-btn{width:100%;padding:14px;margin-top:8px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;border:none;border-radius:var(--r-md);font-family:var(--font-display);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s var(--ease);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 0 24px var(--accent-glow)}.submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 36px var(--accent-glow),0 12px 28px #0000004d}.submit-btn:active:not(:disabled){transform:scale(.99)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.btn-arrow{display:inline-block;transition:transform .2s var(--ease)}.submit-btn:hover .btn-arrow{transform:translate(4px)}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--text-3);font-size:12px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}.register-link{text-align:center;font-size:14px;color:var(--text-2)}.register-link a{color:var(--accent-2);text-decoration:none;font-weight:500}.register-link a:hover{text-decoration:underline}.footer-note{font-size:12px;color:var(--text-3);text-align:center}.animate-up-3{animation:fadeUp .5s .16s cubic-bezier(.16,1,.3,1) both}.role-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px}.role-btn{padding:11px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:all .18s var(--ease)}.role-btn:hover{border-color:var(--border-hover);color:var(--text-1)}.role-btn.active{background:#7c3aed26;border-color:var(--accent-2);color:var(--accent-2);box-shadow:0 0 12px var(--accent-glow)}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}.mc-root{display:flex;flex-direction:column;gap:32px}.mc-section{display:flex;flex-direction:column;gap:16px}.mc-section-header{display:flex;align-items:center;justify-content:space-between}.mc-section-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-1);display:flex;align-items:center;gap:8px}.mc-empty{text-align:center;padding:40px 24px;background:var(--surface);border:1px dashed var(--border-hover);border-radius:var(--r-lg)}.mc-empty-icon{font-size:40px;margin-bottom:10px}.mc-empty p{font-size:14px;color:var(--text-3)}.mc-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.mc-course-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;transition:all .25s var(--ease)}.mc-course-card:hover{border-color:var(--border-hover);transform:translateY(-3px);box-shadow:0 16px 40px #0000004d}.mc-course-thumb{position:relative;height:130px;overflow:hidden;background:var(--bg-3)}.mc-course-thumb img{width:100%;height:100%;object-fit:cover}.mc-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:48px;font-weight:800;color:var(--accent-2);background:linear-gradient(135deg,#7c3aed26,#06b6d41a)}.mc-course-overlay{position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(to top,var(--surface),transparent)}.mc-course-body{padding:16px;display:flex;flex-direction:column;gap:10px}.mc-course-title{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text-1);line-height:1.3}.mc-course-desc{font-size:12px;color:var(--text-3);line-height:1.5}.mc-progress-row{display:flex;align-items:center;gap:10px}.mc-progress-pct{font-size:12px;font-weight:600;color:var(--accent-2);flex-shrink:0}.mc-continue-btn{width:100%;padding:10px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;border-radius:var(--r-sm);color:#fff;font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s var(--ease)}.mc-continue-btn:hover{box-shadow:0 0 20px var(--accent-glow);transform:translateY(-1px)}.mc-batch-list{display:flex;flex-direction:column;gap:10px}.mc-batch-card{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#06b6d40a;border:1px solid rgba(6,182,212,.15);border-radius:var(--r-md);transition:all .2s}.mc-batch-card:hover{background:#06b6d414;border-color:#06b6d44d}.mc-batch-info{display:flex;align-items:center;gap:12px}.mc-batch-dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);flex-shrink:0}.mc-batch-name{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text-1);display:block}.mc-batch-course{font-size:12px;color:var(--cyan);display:block}.mc-chat-btn{padding:9px 18px;background:#06b6d41a;border:1px solid rgba(6,182,212,.25);border-radius:var(--r-full);color:var(--cyan);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.mc-chat-btn:hover{background:#06b6d433;border-color:var(--cyan)}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}.sd-page{min-height:100vh;background:var(--bg);position:relative;overflow-x:hidden}.sd-orb{position:fixed;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:0}.sd-orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(124,58,237,.12) 0%,transparent 70%);top:-20%;left:-15%}.sd-orb-2{width:500px;height:500px;background:radial-gradient(circle,rgba(6,182,212,.08) 0%,transparent 70%);bottom:-10%;right:-10%}.sd-topbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:16px;padding:14px 32px;background:#0a0a0fcc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.sd-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.sd-brand-icon{width:34px;height:34px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:17px}.sd-brand-name{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-1)}.sd-nav{display:flex;gap:4px;flex:1;justify-content:center}.sd-nav-btn{padding:8px 18px;background:transparent;border:1px solid transparent;border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s var(--ease)}.sd-nav-btn:hover{background:var(--surface);color:var(--text-1)}.sd-nav-btn.active{background:#7c3aed26;border-color:#7c3aed4d;color:var(--accent-2)}.sd-user{display:flex;align-items:center;gap:10px;flex-shrink:0}.sd-avatar{width:34px;height:34px;background:linear-gradient(135deg,var(--accent),var(--cyan));border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:15px;color:#fff}.sd-user-info{display:flex;flex-direction:column}.sd-user-name{font-size:13px;font-weight:500;color:var(--text-1)}.sd-user-role{font-size:11px;color:var(--text-3)}.sd-logout{padding:7px 14px;background:var(--red-bg);border:1px solid rgba(239,68,68,.2);border-radius:var(--r-sm);color:var(--red);font-size:13px;cursor:pointer;transition:all .2s}.sd-logout:hover{background:#ef444433}.sd-main{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:32px 24px 48px;display:flex;flex-direction:column;gap:24px}.sd-stats{display:flex;gap:12px;flex-wrap:wrap}.sd-stat-card{flex:1;min-width:100px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:16px 20px;display:flex;flex-direction:column;gap:4px;transition:border-color .2s}.sd-stat-card:hover{border-color:var(--border-hover)}.sd-stat-cert{background:#f59e0b14;border-color:#f59e0b33}.sd-stat-num{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--text-1);line-height:1}.sd-stat-label{font-size:12px;color:var(--text-3);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.sd-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:768px){.sd-grid{grid-template-columns:1fr}}.sd-task-card{padding:28px}.sd-day-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.sd-day-btn{width:36px;height:36px;background:var(--surface-2);border:1px solid var(--border);border-radius:50%;color:var(--text-1);font-size:16px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.sd-day-btn:hover{border-color:var(--accent-2);color:var(--accent-2)}.sd-day-label{display:flex;align-items:baseline;gap:6px}.sd-day-badge{font-size:12px;color:var(--text-3);text-transform:uppercase;letter-spacing:1px}.sd-day-num{font-family:var(--font-display);font-size:32px;font-weight:800;color:var(--text-1)}.sd-task-box{background:#7c3aed0f;border:1px solid rgba(124,58,237,.2);border-radius:var(--r-md);padding:20px;margin-bottom:20px}.sd-task-tag{font-size:11px;font-weight:600;color:var(--accent-2);text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.sd-task-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-1);margin-bottom:8px}.sd-task-desc{font-size:14px;color:var(--text-2);line-height:1.6}.sd-due{display:inline-block;margin-top:10px;font-size:12px;color:var(--amber);background:var(--amber-bg);padding:4px 10px;border-radius:var(--r-full)}.sd-submitted{text-align:center;padding:24px;background:var(--green-bg);border:1px solid rgba(16,185,129,.2);border-radius:var(--r-md)}.sd-submitted-check{width:48px;height:48px;background:var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;margin:0 auto 12px}.sd-submitted-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-1)}.sd-pending{font-size:13px;color:var(--text-3);margin-top:8px}.sd-feedback-box{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:var(--r-sm);padding:12px;margin-top:12px;text-align:left}.sd-feedback-grade{background:var(--accent);color:#fff;font-family:var(--font-display);font-size:20px;font-weight:700;width:48px;height:48px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sd-feedback-text{font-size:13px;color:var(--text-2)}.sd-submit-form{display:flex;flex-direction:column;gap:12px}.sd-textarea{width:100%;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);font-family:var(--font-body);font-size:14px;resize:vertical;outline:none;transition:border-color .2s}.sd-textarea::placeholder{color:var(--text-3)}.sd-textarea:focus{border-color:var(--accent-2)}.sd-file-label{cursor:pointer}.sd-file-btn{display:block;padding:11px 16px;background:var(--surface);border:1px dashed var(--border-hover);border-radius:var(--r-md);font-size:13px;color:var(--text-2);text-align:center;transition:all .2s}.sd-file-btn:hover{border-color:var(--accent-2);color:var(--accent-2)}.sd-submit-btn{padding:14px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;border-radius:var(--r-md);color:#fff;font-family:var(--font-display);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s var(--ease);box-shadow:0 0 20px var(--accent-glow);display:flex;align-items:center;justify-content:center}.sd-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 32px var(--accent-glow)}.sd-submit-btn:disabled{opacity:.6;cursor:not-allowed}.sd-no-task{text-align:center;padding:48px 24px;color:var(--text-2)}.sd-no-task-icon{font-size:48px;margin-bottom:12px}.sd-no-task p{font-size:18px;font-weight:500;color:var(--text-1);margin-bottom:6px}.sd-no-task span{font-size:13px;color:var(--text-3)}.sd-cert-card{text-align:center;background:linear-gradient(135deg,#f59e0b14,#7c3aed14);border-color:#f59e0b33;padding:32px;display:flex;flex-direction:column;align-items:center;gap:12px}.sd-cert-icon{font-size:56px}.sd-cert-card h3{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--text-1)}.sd-cert-card p{font-size:14px;color:var(--text-2)}.sd-cert-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--amber);color:#000;border-radius:var(--r-md);font-family:var(--font-display);font-weight:600;text-decoration:none;margin-top:8px;transition:all .2s}.sd-cert-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px #f59e0b4d}.sd-section-title{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-1);margin-bottom:16px}.sd-empty{color:var(--text-3);font-size:14px;text-align:center;padding:32px}.sd-history-list{display:flex;flex-direction:column}.sd-history-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:14px 0;border-bottom:1px solid var(--border)}.sd-history-item:last-child{border-bottom:none}.sd-history-left{display:flex;align-items:center;gap:10px}.sd-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sd-status-dot.green{background:var(--green);box-shadow:0 0 6px var(--green)}.sd-status-dot.amber{background:var(--amber);box-shadow:0 0 6px var(--amber)}.sd-history-left strong{font-size:14px;color:var(--text-1);display:block}.sd-history-day{font-size:12px;color:var(--text-3)}.sd-history-right{display:flex;align-items:center;gap:8px}.sd-grade-badge{font-family:var(--font-display);font-size:13px;font-weight:700;color:var(--accent-2);background:#7c3aed1f;padding:2px 10px;border-radius:var(--r-full)}.sd-history-feedback{width:100%;font-size:13px;color:var(--text-2);padding:8px 12px;background:var(--surface);border-radius:var(--r-sm);margin-top:4px}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.animate-up{animation:fadeUp .5s cubic-bezier(.16,1,.3,1) both}.animate-up-2{animation:fadeUp .5s .08s cubic-bezier(.16,1,.3,1) both}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}.acm-root{display:flex;flex-direction:column;gap:20px}.acm-tabs{display:flex;gap:6px}.acm-tab{padding:10px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:all .18s var(--ease)}.acm-tab:hover{background:var(--surface-2);color:var(--text-1)}.acm-tab.active{background:#7c3aed1f;border-color:#7c3aed4d;color:var(--accent-2)}.acm-grid{display:grid;grid-template-columns:420px 1fr;gap:20px;align-items:start}.acm-full{max-width:640px}.acm-form{padding:24px}.acm-form-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text-1);margin-bottom:18px}.acm-section-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text-1);margin-bottom:16px;display:flex;align-items:center;gap:8px}.acm-count{font-size:12px;font-weight:400;background:var(--surface-2);color:var(--text-3);padding:2px 8px;border-radius:var(--r-full)}.acm-sub-title{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--text-2);margin-bottom:10px}.acm-divider{height:1px;background:var(--border);margin:20px 0}.acm-input{display:block;width:100%;padding:11px 14px;margin-bottom:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);font-family:var(--font-body);font-size:14px;outline:none;transition:border-color .2s}.acm-input::placeholder{color:var(--text-3)}.acm-input:focus{border-color:var(--accent-2)}.acm-textarea{display:block;width:100%;padding:11px 14px;margin-bottom:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);font-family:var(--font-body);font-size:14px;outline:none;min-height:90px;resize:vertical;transition:border-color .2s}.acm-textarea::placeholder{color:var(--text-3)}.acm-textarea:focus{border-color:var(--accent-2)}.acm-file-label{display:block;font-size:13px;color:var(--text-3);margin-bottom:6px}.acm-file-input{display:block;margin-top:6px;margin-bottom:10px;font-size:13px;color:var(--text-2)}.acm-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.acm-two-col .acm-input{margin-bottom:0}.acm-btn-primary{width:100%;padding:13px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;border-radius:var(--r-md);color:#fff;font-family:var(--font-display);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s var(--ease);box-shadow:0 0 20px var(--accent-glow)}.acm-btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 28px var(--accent-glow)}.acm-course-list{display:flex;flex-direction:column}.acm-course-item{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--border)}.acm-course-item:last-child{border-bottom:none}.acm-course-thumb{width:60px;height:42px;object-fit:cover;border-radius:var(--r-sm);flex-shrink:0}.acm-course-thumb-placeholder{width:60px;height:42px;border-radius:var(--r-sm);background:#7c3aed26;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:22px;font-weight:800;color:var(--accent-2);flex-shrink:0}.acm-course-info{flex:1}.acm-course-info strong{font-size:14px;color:var(--text-1);display:block;margin-bottom:3px}.acm-course-info p{font-size:12px;color:var(--text-3)}.acm-view-btn{padding:7px 14px;background:#7c3aed1a;border:1px solid rgba(124,58,237,.2);border-radius:var(--r-sm);color:var(--accent-2);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.acm-view-btn:hover{background:#7c3aed33}.acm-empty{color:var(--text-3);font-size:14px;text-align:center;padding:24px}.acm-batch-list{display:flex;flex-direction:column;gap:10px}.acm-batch-item{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color .2s}.acm-batch-item:hover{border-color:var(--border-hover)}.acm-batch-dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan);flex-shrink:0}.acm-batch-info{flex:1}.acm-batch-info strong{font-size:14px;color:var(--text-1);font-family:var(--font-display)}.acm-batch-info span{font-size:12px;color:var(--text-3);display:block}.acm-batch-course{color:var(--cyan)!important}.acm-batch-actions{display:flex;gap:6px}.acm-action-btn{padding:7px 12px;border:1px solid;border-radius:var(--r-sm);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.acm-add{background:#7c3aed1a;border-color:#7c3aed33;color:var(--accent-2)}.acm-add:hover{background:#7c3aed33}.acm-chat{background:#06b6d414;border-color:#06b6d433;color:var(--cyan)}.acm-chat:hover{background:#06b6d426}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}.ad-page{display:flex;min-height:100vh;background:var(--bg);position:relative;overflow:hidden}.ad-orb{position:fixed;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:0}.ad-orb-1{width:500px;height:500px;background:radial-gradient(circle,rgba(124,58,237,.1) 0%,transparent 70%);top:-20%;left:5%}.ad-orb-2{width:400px;height:400px;background:radial-gradient(circle,rgba(6,182,212,.07) 0%,transparent 70%);bottom:-10%;right:0%}.ad-sidebar{width:240px;flex-shrink:0;background:var(--bg-2);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:10}.ad-sidebar-brand{padding:24px 20px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border);flex-wrap:wrap}.ad-brand-icon{width:32px;height:32px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.ad-brand-name{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text-1)}.ad-admin-badge{font-size:10px;font-weight:600;background:#7c3aed33;color:var(--accent-2);padding:2px 8px;border-radius:var(--r-full);letter-spacing:.5px}.ad-nav{padding:16px 10px;flex:1;display:flex;flex-direction:column;gap:4px}.ad-nav-item{display:flex;align-items:center;gap:10px;padding:12px 14px;background:transparent;border:1px solid transparent;border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:all .18s var(--ease);text-align:left;width:100%}.ad-nav-item:hover{background:var(--surface);color:var(--text-1)}.ad-nav-item.active{background:#7c3aed1f;border-color:#7c3aed40;color:var(--accent-2)}.ad-nav-icon{font-size:18px}.ad-nav-badge{margin-left:auto;background:var(--accent);color:#fff;font-size:11px;font-weight:600;min-width:20px;height:20px;border-radius:var(--r-full);display:flex;align-items:center;justify-content:center;padding:0 5px}.ad-sidebar-footer{padding:16px 12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.ad-user-card{display:flex;align-items:center;gap:10px}.ad-user-avatar{width:34px;height:34px;background:linear-gradient(135deg,var(--accent),var(--cyan));border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:14px;color:#fff;flex-shrink:0}.ad-user-name{font-size:13px;font-weight:500;color:var(--text-1)}.ad-user-email{font-size:11px;color:var(--text-3)}.ad-logout{padding:9px;background:var(--red-bg);border:1px solid rgba(239,68,68,.2);border-radius:var(--r-sm);color:var(--red);font-size:13px;font-weight:500;cursor:pointer;text-align:center;transition:all .2s}.ad-logout:hover{background:#ef444433}.ad-main{flex:1;position:relative;z-index:1;overflow-y:auto;display:flex;flex-direction:column}.ad-main-header{padding:28px 32px 20px;border-bottom:1px solid var(--border);background:#0a0a0f80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:5}.ad-page-title{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--text-1);margin-bottom:4px;letter-spacing:-.5px}.ad-page-sub{font-size:13px;color:var(--text-3)}.ad-content{padding:28px 32px 48px}.ad-grid{display:grid;grid-template-columns:400px 1fr;gap:20px;align-items:start}.ad-form-card{padding:24px}.ad-card-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text-1);margin-bottom:16px;display:flex;align-items:center;gap:8px}.ad-count{font-size:13px;background:var(--surface-2);color:var(--text-3);padding:2px 8px;border-radius:var(--r-full);font-weight:400}.ad-input{display:block;width:100%;padding:11px 14px;margin-bottom:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);font-family:var(--font-body);font-size:14px;outline:none;transition:border-color .2s}.ad-input::placeholder{color:var(--text-3)}.ad-input:focus{border-color:var(--accent-2)}.ad-textarea{display:block;width:100%;padding:11px 14px;margin-bottom:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);font-family:var(--font-body);font-size:14px;outline:none;min-height:90px;resize:vertical;transition:border-color .2s}.ad-textarea::placeholder{color:var(--text-3)}.ad-textarea:focus{border-color:var(--accent-2)}.ad-primary-btn{width:100%;padding:13px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;border-radius:var(--r-md);color:#fff;font-family:var(--font-display);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s var(--ease);box-shadow:0 0 20px var(--accent-glow)}.ad-primary-btn:hover{transform:translateY(-1px);box-shadow:0 0 30px var(--accent-glow)}.ad-task-list{display:flex;flex-direction:column}.ad-empty{color:var(--text-3);font-size:14px;text-align:center;padding:24px}.ad-task-item{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid var(--border)}.ad-task-item:last-child{border-bottom:none}.ad-task-day{flex-shrink:0;padding:6px 10px;background:#7c3aed1f;border:1px solid rgba(124,58,237,.2);border-radius:var(--r-sm);font-family:var(--font-display);font-size:12px;font-weight:700;color:var(--accent-2);white-space:nowrap}.ad-task-info{flex:1}.ad-task-info strong{font-size:14px;color:var(--text-1);display:block;margin-bottom:4px}.ad-task-info p{font-size:12px;color:var(--text-3)}.ad-del-btn{flex-shrink:0;padding:6px 10px;background:var(--red-bg);border:1px solid rgba(239,68,68,.15);border-radius:var(--r-sm);cursor:pointer;font-size:15px;transition:all .2s}.ad-del-btn:hover{background:#ef444433}.ad-sub-list{display:flex;flex-direction:column;gap:16px}.ad-empty-state{text-align:center;padding:64px;color:var(--text-3);font-size:18px}.ad-empty-state div{font-size:48px;margin-bottom:12px}.ad-student-block{padding:0;overflow:hidden}.ad-student-header{display:flex;align-items:center;gap:14px;padding:18px 20px;background:var(--surface-2);border-bottom:1px solid var(--border);flex-wrap:wrap}.ad-student-avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:16px;color:#fff;flex-shrink:0}.ad-student-info{flex:1}.ad-student-info strong{font-size:15px;color:var(--text-1);display:block}.ad-student-info span{font-size:12px;color:var(--text-3)}.ad-student-meta{display:flex;gap:6px;flex-wrap:wrap}.ad-cert-btn{padding:8px 14px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.25);border-radius:var(--r-sm);color:var(--amber);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.ad-cert-btn:hover{background:#f59e0b33}.ad-sub-items{padding:0 20px}.ad-sub-item{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.ad-sub-item:last-child{border-bottom:none}.ad-sub-left{display:flex;gap:12px;flex:1;align-items:flex-start}.ad-sub-status{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}.ad-sub-status.reviewed{background:var(--green);box-shadow:0 0 6px var(--green)}.ad-sub-status.pending{background:var(--amber);box-shadow:0 0 6px var(--amber)}.ad-sub-left strong{font-size:14px;color:var(--text-1);display:block;margin-bottom:2px}.ad-sub-day{font-size:12px;color:var(--text-3)}.ad-sub-content{font-size:13px;color:var(--text-2);margin-top:6px}.ad-sub-file{font-size:13px;color:var(--accent-2);text-decoration:none;display:block;margin-top:6px}.ad-sub-reviewed{font-size:13px;color:var(--green);margin-top:6px}.ad-feedback-form{display:flex;flex-direction:column;gap:6px;min-width:200px}.ad-fb-btn{padding:9px;background:var(--green-bg);border:1px solid rgba(16,185,129,.25);border-radius:var(--r-sm);color:var(--green);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.ad-fb-btn:hover{background:#10b98133}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-up{animation:fadeUp .45s cubic-bezier(.16,1,.3,1) both}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}.cp-page{min-height:100vh;background:var(--bg);position:relative;overflow-x:hidden}.cp-orb{position:fixed;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:0}.cp-orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(124,58,237,.14) 0%,transparent 70%);top:-20%;left:-10%}.cp-orb-2{width:400px;height:400px;background:radial-gradient(circle,rgba(6,182,212,.09) 0%,transparent 70%);bottom:0;right:-5%}.cp-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:16px;color:var(--text-3);font-family:var(--font-body);background:var(--bg)}.cp-topbar{position:sticky;top:0;z-index:50;padding:14px 32px;background:#0a0a0fbf;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.cp-back{padding:8px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-body);font-size:14px;cursor:pointer;transition:all .2s var(--ease)}.cp-back:hover{border-color:var(--border-hover);color:var(--text-1)}.cp-hero{position:relative;z-index:1;padding:40px 32px 32px;background:linear-gradient(180deg,rgba(124,58,237,.07) 0%,transparent 100%);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:24px}.cp-hero-content{display:flex;gap:28px;align-items:flex-start}.cp-thumbnail{width:200px;height:130px;object-fit:cover;border-radius:var(--r-lg);flex-shrink:0;border:1px solid var(--border)}.cp-hero-text{flex:1}.cp-hero-tag{font-size:11px;font-weight:600;color:var(--accent-2);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.cp-title{font-family:var(--font-display);font-size:32px;font-weight:800;color:var(--text-1);line-height:1.15;letter-spacing:-.8px;margin-bottom:10px}.cp-desc{font-size:15px;color:var(--text-2);line-height:1.6;margin-bottom:14px;max-width:600px}.cp-teacher{display:flex;align-items:center;gap:10px}.cp-teacher-avatar{width:30px;height:30px;background:linear-gradient(135deg,var(--accent),var(--cyan));border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:13px;color:#fff;flex-shrink:0}.cp-teacher span{font-size:13px;color:var(--text-2)}.cp-progress-block{display:flex;flex-direction:column;gap:8px;max-width:480px}.cp-progress-top{display:flex;justify-content:space-between;align-items:center}.cp-progress-label{font-size:13px;font-weight:500;color:var(--text-2)}.cp-progress-pct{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--accent-2)}.cp-progress-track{width:100%;height:8px;background:var(--surface-2);border-radius:var(--r-full);overflow:hidden}.cp-progress-fill{height:100%;border-radius:var(--r-full);background:linear-gradient(90deg,var(--accent),var(--cyan));transition:width .6s var(--ease);position:relative}.cp-progress-fill:after{content:"";position:absolute;right:0;top:0;bottom:0;width:20px;background:#ffffff40;border-radius:var(--r-full);filter:blur(4px)}.cp-progress-meta{font-size:12px;color:var(--text-3)}.cp-main{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:36px 24px 64px}.cp-lectures-title{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--text-1);margin-bottom:20px;display:flex;align-items:center;gap:10px}.cp-lectures-count{font-size:13px;font-weight:400;background:var(--surface-2);color:var(--text-3);padding:3px 10px;border-radius:var(--r-full)}.cp-lecture-list{display:flex;flex-direction:column;gap:12px}.cp-lecture-card{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-lg);transition:all .22s var(--ease)}.cp-lecture-card:hover{border-color:var(--border-hover);border-left-color:var(--accent-2);background:var(--surface-2);transform:translate(3px)}.cp-lecture-card.done{border-left-color:var(--green);background:#10b9810a}.cp-lecture-num{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:14px;font-weight:700;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);transition:all .2s}.cp-lecture-card.done .cp-lecture-num{background:var(--green-bg);border-color:#10b9814d;color:var(--green)}.cp-lecture-body{flex:1}.cp-lecture-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text-1);margin-bottom:6px}.cp-lecture-notes{font-size:13px;color:var(--text-3);line-height:1.5;margin-bottom:10px}.cp-materials{display:flex;flex-wrap:wrap;gap:6px}.cp-material-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:#7c3aed1a;border:1px solid rgba(124,58,237,.2);border-radius:var(--r-full);color:var(--accent-2);font-size:12px;font-weight:500;text-decoration:none;transition:all .2s}.cp-material-chip:hover{background:#7c3aed33;border-color:var(--accent-2)}.cp-lecture-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.cp-view-btn{padding:9px 18px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;border-radius:var(--r-md);color:#fff;font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s var(--ease);white-space:nowrap;box-shadow:0 0 14px var(--accent-glow)}.cp-view-btn:hover{transform:translateY(-1px);box-shadow:0 0 22px var(--accent-glow)}.cp-done-btn{padding:9px 18px;background:var(--surface-2);border:1px solid var(--border-hover);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.cp-done-btn:hover{background:var(--green-bg);border-color:#10b9814d;color:var(--green)}@media(max-width:640px){.cp-hero-content{flex-direction:column}.cp-thumbnail{width:100%;height:180px}.cp-title{font-size:24px}.cp-lecture-card{flex-wrap:wrap}.cp-lecture-actions{flex-direction:row;width:100%}.cp-view-btn,.cp-done-btn{flex:1}}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}.lp-page{min-height:100vh;background:var(--bg);display:flex;flex-direction:column;position:relative;overflow-x:hidden}.lp-orb{position:fixed;border-radius:50%;filter:blur(110px);pointer-events:none;z-index:0}.lp-orb-1{width:500px;height:500px;background:radial-gradient(circle,rgba(124,58,237,.13) 0%,transparent 70%);top:-15%;left:-8%}.lp-orb-2{width:380px;height:380px;background:radial-gradient(circle,rgba(6,182,212,.09) 0%,transparent 70%);bottom:5%;right:-5%}.lp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:100vh;background:var(--bg);color:var(--text-3);font-family:var(--font-body);font-size:15px}.lp-loading-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent-2);border-radius:50%;animation:lp-spin .8s linear infinite}@keyframes lp-spin{to{transform:rotate(360deg)}}.lp-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 28px;background:#0a0a0fd1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.lp-back{padding:8px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-body);font-size:13px;cursor:pointer;transition:all .2s var(--ease);white-space:nowrap;flex-shrink:0}.lp-back:hover{border-color:var(--border-hover);color:var(--text-1)}.lp-topbar-center{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1;overflow:hidden}.lp-topbar-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--accent-2)}.lp-topbar-title{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:400px}.lp-topbar-right{flex-shrink:0}.lp-order-badge{padding:5px 12px;background:#7c3aed1f;border:1px solid rgba(124,58,237,.25);border-radius:var(--r-full);font-size:12px;font-weight:600;color:var(--accent-2)}.lp-body{position:relative;z-index:1;flex:1;display:grid;grid-template-columns:1fr 320px;gap:0;align-items:start}.lp-left{padding:28px 24px 48px;display:flex;flex-direction:column;gap:20px}.lp-player-wrap{width:100%;aspect-ratio:16 / 9;background:#000;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--border);box-shadow:0 24px 64px #00000080,0 0 0 1px #ffffff08;position:relative}.lp-player{position:absolute;inset:0}.lp-no-video{width:100%;aspect-ratio:16 / 9;background:var(--surface);border:1px dashed var(--border-hover);border-radius:var(--r-xl);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.lp-no-video-icon{font-size:52px}.lp-no-video p{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-2)}.lp-no-video span{font-size:13px;color:var(--text-3)}.lp-notes-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}.lp-notes-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:transparent;border:none;color:var(--text-1);font-family:var(--font-display);font-size:15px;font-weight:700;cursor:pointer;transition:background .2s}.lp-notes-toggle:hover{background:var(--surface-2)}.lp-chevron{font-size:20px;color:var(--text-3);transition:transform .25s var(--ease);display:inline-block}.lp-chevron.open{transform:rotate(180deg)}.lp-notes-body{padding:0 20px 20px;border-top:1px solid var(--border)}.lp-notes-body p{font-size:14px;color:var(--text-2);line-height:1.8;white-space:pre-wrap;padding-top:16px}.lp-sidebar{position:sticky;top:57px;height:calc(100vh - 57px);overflow-y:auto;background:var(--bg-2);border-left:1px solid var(--border);display:flex;flex-direction:column;gap:0;padding-bottom:32px}.lp-sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:20px 20px 16px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-2);z-index:2}.lp-sidebar-title{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--text-1)}.lp-sidebar-count{font-size:12px;color:var(--text-3);background:var(--surface-2);padding:2px 8px;border-radius:var(--r-full)}.lp-material-list{padding:16px;display:flex;flex-direction:column;gap:10px}.lp-material-card{display:flex;align-items:center;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);text-decoration:none;transition:all .2s var(--ease);cursor:pointer}.lp-material-card:hover{border-color:var(--border-hover);background:var(--surface-2);transform:translate(-2px)}.lp-mat-red{border-left:3px solid #ef4444}.lp-mat-blue{border-left:3px solid var(--cyan)}.lp-mat-purple{border-left:3px solid var(--accent-2)}.lp-mat-icon{font-size:28px;flex-shrink:0}.lp-mat-info{flex:1;overflow:hidden}.lp-mat-name{display:block;font-size:13px;font-weight:500;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.lp-mat-type{font-size:10px;font-weight:600;color:var(--text-3);letter-spacing:.5px}.lp-mat-arrow{font-size:16px;color:var(--text-3);flex-shrink:0;transition:all .2s}.lp-material-card:hover .lp-mat-arrow{color:var(--accent-2);transform:translate(2px,-2px)}.lp-no-materials{padding:40px 20px;text-align:center;color:var(--text-3);font-size:14px;display:flex;flex-direction:column;align-items:center;gap:10px}.lp-no-materials div{font-size:36px}.lp-info-block{margin:4px 16px 0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.lp-info-row{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-bottom:1px solid var(--border)}.lp-info-row:last-child{border-bottom:none}.lp-info-label{font-size:12px;color:var(--text-3);font-weight:500}.lp-info-value{font-size:13px;font-weight:600;color:var(--text-2)}.lp-info-value.green{color:var(--green)}.lp-info-value.muted{color:var(--text-3)}.lp-player{position:absolute;inset:0;width:100%;height:100%;border:none}@media(max-width:900px){.lp-body{grid-template-columns:1fr}.lp-sidebar{position:static;height:auto;border-left:none;border-top:1px solid var(--border)}}:root{--bg: #0a0a0f;--bg-2: #111118;--bg-3: #1a1a26;--surface: rgba(255, 255, 255, .04);--surface-2: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .16);--accent: #7c3aed;--accent-2: #a855f7;--accent-glow: rgba(124, 58, 237, .35);--accent-light: #ede9fe;--cyan: #06b6d4;--cyan-glow: rgba(6, 182, 212, .25);--green: #10b981;--green-bg: rgba(16, 185, 129, .12);--red: #ef4444;--red-bg: rgba(239, 68, 68, .12);--amber: #f59e0b;--amber-bg: rgba(245, 158, 11, .12);--text-1: #f1f0ff;--text-2: #a09ab8;--text-3: #5c5875;--font-display: "Syne", sans-serif;--font-body: "DM Sans", sans-serif;--r-sm: 8px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-full: 9999px;--ease: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);background:var(--bg);color:var(--text-1);min-height:100vh}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:var(--r-full)}.lf-input{display:block;width:100%;padding:12px 16px;margin-bottom:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);font-family:var(--font-body);font-size:14px;outline:none;transition:border-color .2s var(--ease),background .2s var(--ease)}.lf-input::placeholder{color:var(--text-3)}.lf-input:focus{border-color:var(--accent-2);background:#7c3aed0f;box-shadow:0 0 0 3px var(--accent-glow)}.lf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;border:none;border-radius:var(--r-md);font-family:var(--font-display);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s var(--ease);text-decoration:none}.lf-btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;box-shadow:0 0 20px var(--accent-glow)}.lf-btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 32px var(--accent-glow),0 8px 24px #0000004d}.lf-btn-primary:active{transform:scale(.98)}.lf-btn-ghost{background:var(--surface);color:var(--text-2);border:1px solid var(--border)}.lf-btn-ghost:hover{background:var(--surface-2);border-color:var(--border-hover);color:var(--text-1)}.lf-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;transition:border-color .2s}.lf-card:hover{border-color:var(--border-hover)}.lf-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--r-full);font-size:12px;font-weight:500}.lf-badge-purple{background:#7c3aed26;color:var(--accent-2)}.lf-badge-green{background:var(--green-bg);color:var(--green)}.lf-badge-amber{background:var(--amber-bg);color:var(--amber)}.lf-badge-cyan{background:var(--cyan-glow);color:var(--cyan)}.lf-progress-track{width:100%;height:6px;background:var(--surface-2);border-radius:var(--r-full);overflow:hidden}.lf-progress-fill{height:100%;border-radius:var(--r-full);background:linear-gradient(90deg,var(--accent),var(--cyan));transition:width .5s var(--ease)}.lf-noise:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.animate-up{animation:fadeUp .5s var(--ease) both}.animate-up-2{animation:fadeUp .5s .1s var(--ease) both}.animate-up-3{animation:fadeUp .5s .2s var(--ease) both}.bc-page{display:flex;height:100vh;background:var(--bg);overflow:hidden;font-family:var(--font-body)}.bc-sidebar{display:flex;flex-direction:column;background:var(--bg-2);border-right:1px solid var(--border);transition:width .3s cubic-bezier(.16,1,.3,1);overflow:hidden;flex-shrink:0}.bc-sidebar.open{width:240px}.bc-sidebar.closed{width:60px}.bc-sidebar-top{display:flex;align-items:center;justify-content:space-between;padding:16px 14px;border-bottom:1px solid var(--border);gap:8px;flex-shrink:0}.bc-sidebar-brand{display:flex;align-items:center;gap:10px;overflow:hidden}.bc-brand-icon{width:30px;height:30px;background:linear-gradient(135deg,var(--accent),var(--accent-2));border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.bc-brand-name{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text-1);white-space:nowrap}.bc-sidebar-toggle{width:26px;height:26px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text-3);font-size:12px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.bc-sidebar-toggle:hover{border-color:var(--border-hover);color:var(--text-1)}.bc-batch-info{padding:16px 14px 12px;border-bottom:1px solid var(--border)}.bc-batch-name{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--text-1);margin-bottom:3px}.bc-batch-course{font-size:11px;color:var(--cyan);margin-bottom:8px}.bc-online-count{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-3)}.bc-online-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);flex-shrink:0;display:inline-block}.bc-members-label{padding:12px 14px 6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-3)}.bc-members{flex:1;overflow-y:auto;padding:4px 10px 10px;display:flex;flex-direction:column;gap:2px}.bc-member{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:var(--r-sm);transition:background .15s}.bc-member:hover{background:var(--surface)}.bc-member-avatar-wrap{position:relative;flex-shrink:0}.bc-member-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:12px;color:#fff}.bc-member-status{position:absolute;bottom:0;right:0;width:8px;height:8px;border-radius:50%;border:2px solid var(--bg-2)}.bc-member-status.online{background:var(--green)}.bc-member-status.offline{background:var(--text-3)}.bc-member-info{overflow:hidden}.bc-member-name{font-size:13px;font-weight:500;color:var(--text-1);display:flex;align-items:center;gap:5px;white-space:nowrap}.bc-you-tag{font-size:9px;font-weight:600;background:#7c3aed33;color:var(--accent-2);padding:1px 5px;border-radius:var(--r-full)}.bc-member-status-text{font-size:11px;color:var(--text-3);display:block}.bc-sidebar-footer{padding:12px 10px;border-top:1px solid var(--border);flex-shrink:0}.bc-back-btn{width:100%;padding:9px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-body);font-size:13px;cursor:pointer;transition:all .2s;text-align:center;white-space:nowrap;overflow:hidden}.bc-back-btn:hover{border-color:var(--border-hover);color:var(--text-1)}.bc-chat{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.bc-chat-header{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:#0a0a0fb3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);flex-shrink:0}.bc-chat-header-left{display:flex;align-items:center;gap:14px}.bc-chat-avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--cyan));display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:16px;color:#fff;flex-shrink:0}.bc-chat-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--text-1)}.bc-chat-sub{font-size:12px;color:var(--text-3);display:flex;align-items:center;gap:4px}.bc-chat-online{display:inline-flex;align-items:center;gap:4px;color:var(--green)}.bc-messages{flex:1;overflow-y:auto;padding:20px 24px 8px;display:flex;flex-direction:column;gap:2px;scroll-behavior:smooth}.bc-date-divider{display:flex;align-items:center;gap:12px;padding:16px 0 10px}.bc-date-line{flex:1;height:1px;background:var(--border)}.bc-date-label{font-size:11px;font-weight:600;color:var(--text-3);padding:4px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-full);white-space:nowrap}.bc-msg-row{display:flex;align-items:flex-end;gap:10px;margin-bottom:10px}.bc-msg-row.me{flex-direction:row-reverse}.bc-msg-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#4f46e5,#7c3aed);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:13px;color:#fff;flex-shrink:0}.bc-msg-avatar.me{background:linear-gradient(135deg,var(--accent),var(--accent-2))}.bc-msg-avatar.admin{background:linear-gradient(135deg,#f59e0b,#ef4444)}.bc-msg-content{max-width:62%;display:flex;flex-direction:column;gap:3px}.bc-msg-row.me .bc-msg-content{align-items:flex-end}.bc-msg-sender{font-size:11px;font-weight:600;color:var(--text-3);padding-left:4px;display:flex;align-items:center;gap:5px}.bc-teacher-badge{font-size:9px;font-weight:700;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;padding:1px 6px;border-radius:var(--r-full);letter-spacing:.3px}.bc-reply-preview{display:flex;align-items:flex-start;gap:8px;background:var(--surface-2);border-radius:var(--r-sm);padding:6px 10px;font-size:12px;color:var(--text-3);max-width:100%}.bc-reply-preview .bc-reply-bar{width:3px;border-radius:2px;background:var(--accent-2);flex-shrink:0;align-self:stretch}.bc-reply-preview.me .bc-reply-bar{background:#fff6}.bc-bubble{padding:11px 15px;border-radius:18px 18px 18px 4px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-1);font-size:14px;line-height:1.55;word-break:break-word;transition:background .15s}.bc-bubble.me{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:transparent;border-radius:18px 18px 4px;color:#fff;box-shadow:0 4px 16px var(--accent-glow)}.bc-msg-meta{display:flex;align-items:center;gap:8px;padding:0 4px}.bc-msg-meta.me{flex-direction:row-reverse}.bc-msg-time{font-size:10px;color:var(--text-3)}.bc-reply-btn{font-size:11px;color:var(--text-3);background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.bc-reply-btn:hover{color:var(--accent-2)}.bc-delete-btn{font-size:11px;color:var(--text-3);background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.bc-delete-btn:hover{color:var(--red)}.bc-typing{display:flex;align-items:center;gap:10px;padding:8px 4px;font-size:12px;color:var(--text-3);font-style:italic}.bc-typing-dots{display:flex;gap:3px}.bc-typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--text-3);animation:bc-bounce 1.2s infinite ease-in-out}.bc-typing-dots span:nth-child(2){animation-delay:.2s}.bc-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes bc-bounce{0%,80%,to{transform:scale(.7);opacity:.4}40%{transform:scale(1);opacity:1}}.bc-reply-bar-full{display:flex;align-items:center;gap:0;background:#7c3aed14;border-top:1px solid rgba(124,58,237,.2);padding:10px 16px;flex-shrink:0}.bc-reply-bar-accent{width:3px;border-radius:2px;background:var(--accent-2);align-self:stretch;margin-right:12px;flex-shrink:0}.bc-reply-bar-content{flex:1;overflow:hidden}.bc-reply-bar-label{font-size:11px;font-weight:600;color:var(--accent-2);display:block;margin-bottom:2px}.bc-reply-bar-text{font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.bc-reply-close{background:none;border:none;color:var(--text-3);font-size:14px;cursor:pointer;padding:4px;transition:color .15s;flex-shrink:0}.bc-reply-close:hover{color:var(--red)}.bc-input-row{display:flex;align-items:flex-end;gap:10px;padding:12px 16px 8px;background:var(--bg-2);border-top:1px solid var(--border);flex-shrink:0}.bc-input-wrap{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:22px;transition:border-color .2s;overflow:hidden}.bc-input-wrap:focus-within{border-color:var(--accent-2);box-shadow:0 0 0 3px var(--accent-glow)}.bc-textarea{display:block;width:100%;padding:12px 18px;background:transparent;border:none;outline:none;color:var(--text-1);font-family:var(--font-body);font-size:14px;line-height:1.5;resize:none;max-height:120px;overflow-y:auto}.bc-textarea::placeholder{color:var(--text-3)}.bc-send-btn{width:44px;height:44px;border-radius:50%;border:none;background:var(--surface-2);color:var(--text-3);font-size:18px;cursor:pointer;transition:all .2s var(--ease);display:flex;align-items:center;justify-content:center;flex-shrink:0}.bc-send-btn.active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 0 16px var(--accent-glow)}.bc-send-btn.active:hover{transform:scale(1.08);box-shadow:0 0 24px var(--accent-glow)}.bc-send-btn:disabled{cursor:default}.bc-input-hint{text-align:center;font-size:10px;color:var(--text-3);padding:0 16px 10px;flex-shrink:0}@media(max-width:640px){.bc-sidebar{display:none}.bc-msg-content{max-width:80%}}
